diff --git a/src/grammar.json b/src/grammar.json index bfbe77b..db2b3db 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -6,20 +6,48 @@ "type": "CHOICE", "members": [ { - "type": "REPEAT", - "content": { - "type": "SYMBOL", - "name": "cairo_0_statement" - } + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "cairo_0_file" + }, + { + "type": "SYMBOL", + "name": "cairo_1_file" + } + ] + }, + { + "type": "BLANK" } ] }, - "cairo_0_statement": { + "cairo_0_file": { + "type": "REPEAT1", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_statement" + } + }, + "cairo_1_file": { + "type": "REPEAT1", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_statement" + } + }, + "_cairo_0_statement": { "type": "CHOICE", "members": [ { - "type": "SYMBOL", - "name": "import_statement" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_import_statement" + }, + "named": true, + "value": "import_statement" }, { "type": "SYMBOL", @@ -34,40 +62,80 @@ "name": "lang_directive" }, { - "type": "SYMBOL", - "name": "decorated_definition" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_decorated_definition" + }, + "named": true, + "value": "decorated_definition" }, { - "type": "SYMBOL", - "name": "namespace_definition" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_namespace_definition" + }, + "named": true, + "value": "namespace_definition" }, { - "type": "SYMBOL", - "name": "struct_definition" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_struct_definition" + }, + "named": true, + "value": "struct_definition" }, { - "type": "SYMBOL", - "name": "function_definition" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_function_definition" + }, + "named": true, + "value": "function_definition" }, { - "type": "SYMBOL", - "name": "expression_statement" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_expression_statement" + }, + "named": true, + "value": "expression_statement" }, { "type": "SYMBOL", "name": "alloc_locals" }, { - "type": "SYMBOL", - "name": "assert_statement" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_assert_statement" + }, + "named": true, + "value": "assert_statement" }, { - "type": "SYMBOL", - "name": "static_assert_statement" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_static_assert_statement" + }, + "named": true, + "value": "static_assert_statement" }, { - "type": "SYMBOL", - "name": "let_binding" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_let_binding" + }, + "named": true, + "value": "let_binding" }, { "type": "SYMBOL", @@ -94,24 +162,44 @@ "name": "label" }, { - "type": "SYMBOL", - "name": "attribute_statement" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_attribute_statement" + }, + "named": true, + "value": "attribute_statement" }, { - "type": "SYMBOL", - "name": "if_statement" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_if_statement" + }, + "named": true, + "value": "if_statement" }, { - "type": "SYMBOL", - "name": "with_statement" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_with_statement" + }, + "named": true, + "value": "with_statement" }, { - "type": "SYMBOL", - "name": "return_statement" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_return_statement" + }, + "named": true, + "value": "return_statement" } ] }, - "import_statement": { + "_cairo_0_import_statement": { "type": "SEQ", "members": [ { @@ -271,12 +359,17 @@ "value": "=" }, { - "type": "SYMBOL", - "name": "type" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_type" + }, + "named": true, + "value": "type" }, { - "type": "STRING", - "value": ";" + "type": "SYMBOL", + "name": "_separator" } ] }, @@ -313,7 +406,7 @@ } ] }, - "decorated_definition": { + "_cairo_0_decorated_definition": { "type": "SEQ", "members": [ { @@ -330,16 +423,31 @@ "type": "CHOICE", "members": [ { - "type": "SYMBOL", - "name": "namespace_definition" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_namespace_definition" + }, + "named": true, + "value": "namespace_definition" }, { - "type": "SYMBOL", - "name": "struct_definition" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_struct_definition" + }, + "named": true, + "value": "struct_definition" }, { - "type": "SYMBOL", - "name": "function_definition" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_function_definition" + }, + "named": true, + "value": "function_definition" } ] } @@ -359,7 +467,7 @@ } ] }, - "namespace_definition": { + "_cairo_0_namespace_definition": { "type": "SEQ", "members": [ { @@ -378,7 +486,7 @@ "type": "REPEAT", "content": { "type": "SYMBOL", - "name": "cairo_0_statement" + "name": "_cairo_0_statement" } }, { @@ -387,7 +495,7 @@ } ] }, - "struct_definition": { + "_cairo_0_struct_definition": { "type": "SEQ", "members": [ { @@ -458,7 +566,7 @@ } ] }, - "function_definition": { + "_cairo_0_function_definition": { "type": "SEQ", "members": [ { @@ -498,17 +606,8 @@ { "type": "ALIAS", "content": { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "type" - }, - { - "type": "SYMBOL", - "name": "arguments" - } - ] + "type": "SYMBOL", + "name": "_cairo_0_type" }, "named": true, "value": "return_type" @@ -521,19 +620,49 @@ ] }, { - "type": "STRING", - "value": "{" - }, - { - "type": "REPEAT", - "content": { - "type": "SYMBOL", - "name": "cairo_0_statement" - } - }, - { - "type": "STRING", - "value": "}" + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "{" + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_statement" + } + }, + { + "type": "STRING", + "value": "}" + } + ] + }, + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": ":" + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_statement" + } + }, + { + "type": "STRING", + "value": "end" + } + ] + } + ] } ] }, @@ -614,24 +743,41 @@ "type": "SEQ", "members": [ { - "type": "SYMBOL", - "name": "typed_identifier" + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "typed_identifier" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "typed_identifier" + } + ] + } + } + ] }, { - "type": "REPEAT", - "content": { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "," - }, - { - "type": "SYMBOL", - "name": "typed_identifier" - } - ] - } + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] } ] }, @@ -658,16 +804,16 @@ } ] }, - "expression_statement": { + "_cairo_0_expression_statement": { "type": "SEQ", "members": [ { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" }, { - "type": "STRING", - "value": ";" + "type": "SYMBOL", + "name": "_separator" } ] }, @@ -679,12 +825,12 @@ "value": "alloc_locals" }, { - "type": "STRING", - "value": ";" + "type": "SYMBOL", + "name": "_separator" } ] }, - "assert_statement": { + "_cairo_0_assert_statement": { "type": "SEQ", "members": [ { @@ -693,7 +839,7 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" }, { "type": "STRING", @@ -701,15 +847,15 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" }, { - "type": "STRING", - "value": ";" + "type": "SYMBOL", + "name": "_separator" } ] }, - "static_assert_statement": { + "_cairo_0_static_assert_statement": { "type": "SEQ", "members": [ { @@ -718,7 +864,7 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" }, { "type": "STRING", @@ -726,15 +872,15 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" }, { - "type": "STRING", - "value": ";" + "type": "SYMBOL", + "name": "_separator" } ] }, - "let_binding": { + "_cairo_0_let_binding": { "type": "SEQ", "members": [ { @@ -765,14 +911,14 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } ] } }, { - "type": "STRING", - "value": ";" + "type": "SYMBOL", + "name": "_separator" } ] }, @@ -793,11 +939,11 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" }, { - "type": "STRING", - "value": ";" + "type": "SYMBOL", + "name": "_separator" } ] }, @@ -824,7 +970,7 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } ] }, @@ -834,8 +980,8 @@ ] }, { - "type": "STRING", - "value": ";" + "type": "SYMBOL", + "name": "_separator" } ] }, @@ -862,7 +1008,7 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } ] }, @@ -872,8 +1018,8 @@ ] }, { - "type": "STRING", - "value": ";" + "type": "SYMBOL", + "name": "_separator" } ] }, @@ -888,8 +1034,8 @@ "name": "_instruction_body" }, { - "type": "STRING", - "value": ";" + "type": "SYMBOL", + "name": "_separator" } ] }, @@ -913,8 +1059,8 @@ "value": "++" }, { - "type": "STRING", - "value": ";" + "type": "SYMBOL", + "name": "_separator" } ] } @@ -970,7 +1116,7 @@ "members": [ { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" }, { "type": "STRING", @@ -978,7 +1124,7 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } ] }, @@ -995,7 +1141,7 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } ] }, @@ -1012,7 +1158,7 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } ] }, @@ -1045,7 +1191,7 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" }, { "type": "STRING", @@ -1053,7 +1199,7 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" }, { "type": "STRING", @@ -1086,7 +1232,7 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" }, { "type": "STRING", @@ -1116,7 +1262,7 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } ] }, @@ -1129,7 +1275,7 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } ] }, @@ -1146,11 +1292,11 @@ }, { "type": "SYMBOL", - "name": "cairo_0_statement" + "name": "_cairo_0_statement" } ] }, - "attribute_statement": { + "_cairo_0_attribute_statement": { "type": "SEQ", "members": [ { @@ -1197,7 +1343,7 @@ "type": "REPEAT", "content": { "type": "SYMBOL", - "name": "cairo_0_statement" + "name": "_cairo_0_statement" } }, { @@ -1206,7 +1352,7 @@ } ] }, - "if_statement": { + "_cairo_0_if_statement": { "type": "SEQ", "members": [ { @@ -1219,7 +1365,7 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" }, { "type": "STRING", @@ -1233,7 +1379,7 @@ "type": "REPEAT", "content": { "type": "SYMBOL", - "name": "cairo_0_statement" + "name": "_cairo_0_statement" } }, { @@ -1258,7 +1404,7 @@ "type": "REPEAT", "content": { "type": "SYMBOL", - "name": "cairo_0_statement" + "name": "_cairo_0_statement" } } ] @@ -1274,7 +1420,7 @@ } ] }, - "with_statement": { + "_cairo_0_with_statement": { "type": "SEQ", "members": [ { @@ -1314,7 +1460,7 @@ "type": "REPEAT", "content": { "type": "SYMBOL", - "name": "cairo_0_statement" + "name": "_cairo_0_statement" } }, { @@ -1323,7 +1469,7 @@ } ] }, - "return_statement": { + "_cairo_0_return_statement": { "type": "SEQ", "members": [ { @@ -1332,152 +1478,214 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" }, { - "type": "STRING", - "value": ";" + "type": "SYMBOL", + "name": "_separator" } ] }, - "non_identifier_type": { + "_non_identifier_type": { "type": "CHOICE", "members": [ { - "type": "STRING", - "value": "felt" - }, - { - "type": "STRING", - "value": "codeoffset" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_builtin_type" + }, + "named": true, + "value": "builtin_type" }, { - "type": "SEQ", - "members": [ - { - "type": "SYMBOL", - "name": "type" - }, - { - "type": "STRING", - "value": "*" - } - ] + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_pointer_type" + }, + "named": true, + "value": "pointer_type" }, { - "type": "SEQ", + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_tuple_type" + }, + "named": true, + "value": "tuple_type" + }, + { + "type": "SYMBOL", + "name": "hint" + } + ] + }, + "_cairo_0_builtin_type": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "felt" + }, + { + "type": "STRING", + "value": "codeoffset" + } + ] + }, + "_cairo_0_pointer_type": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", "members": [ { "type": "SYMBOL", - "name": "type" + "name": "_non_identifier_type" }, { - "type": "STRING", - "value": "**" + "type": "SYMBOL", + "name": "identifier" } ] }, { - "type": "SEQ", + "type": "CHOICE", "members": [ { "type": "STRING", - "value": "(" + "value": "*" }, + { + "type": "STRING", + "value": "**" + } + ] + } + ] + }, + "_cairo_0_tuple_type": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "CHOICE", + "members": [ { "type": "SEQ", "members": [ { - "type": "SYMBOL", - "name": "named_type" + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_cairo_0_type" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "_cairo_0_type" + } + ] + } + } + ] }, { - "type": "REPEAT", - "content": { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "," - }, - { - "type": "SYMBOL", - "name": "named_type" - } - ] - } + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] } ] }, { - "type": "STRING", - "value": ")" + "type": "BLANK" } ] }, { - "type": "SYMBOL", - "name": "hint" + "type": "STRING", + "value": ")" } ] }, - "type": { + "_cairo_0_type": { "type": "CHOICE", "members": [ { "type": "SYMBOL", - "name": "non_identifier_type" + "name": "_non_identifier_type" }, { "type": "SYMBOL", "name": "named_type" + }, + { + "type": "SYMBOL", + "name": "identifier" } ] }, "named_type": { - "type": "PREC", + "type": "PREC_RIGHT", "value": 1, "content": { - "type": "CHOICE", + "type": "SEQ", "members": [ { - "type": "SEQ", + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "CHOICE", "members": [ { - "type": "SYMBOL", - "name": "identifier" - }, - { - "type": "CHOICE", + "type": "SEQ", "members": [ { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": ":" - }, - { - "type": "SYMBOL", - "name": "type" - } - ] + "type": "STRING", + "value": ":" }, { - "type": "BLANK" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_type" + }, + "named": true, + "value": "type" } ] + }, + { + "type": "BLANK" } ] - }, - { - "type": "SYMBOL", - "name": "non_identifier_type" } ] } }, - "expression": { + "_cairo_0_expression": { "type": "CHOICE", "members": [ { @@ -1529,8 +1737,13 @@ "name": "register" }, { - "type": "SYMBOL", - "name": "call_expression" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_call_expression" + }, + "named": true, + "value": "call_expression" }, { "type": "SYMBOL", @@ -1544,7 +1757,7 @@ }, "unary_expression": { "type": "PREC_LEFT", - "value": 10, + "value": 14, "content": { "type": "SEQ", "members": [ @@ -1574,7 +1787,7 @@ "name": "operand", "content": { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } } ] @@ -1594,7 +1807,7 @@ "name": "left", "content": { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } }, { @@ -1610,7 +1823,7 @@ "name": "right", "content": { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } } ] @@ -1627,7 +1840,7 @@ "name": "left", "content": { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } }, { @@ -1643,7 +1856,7 @@ "name": "right", "content": { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } } ] @@ -1660,7 +1873,7 @@ "name": "left", "content": { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } }, { @@ -1676,7 +1889,7 @@ "name": "right", "content": { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } } ] @@ -1693,7 +1906,7 @@ "name": "left", "content": { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } }, { @@ -1709,7 +1922,7 @@ "name": "right", "content": { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } } ] @@ -1726,7 +1939,7 @@ "name": "left", "content": { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } }, { @@ -1742,7 +1955,7 @@ "name": "right", "content": { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } } ] @@ -1750,7 +1963,7 @@ }, { "type": "PREC_RIGHT", - "value": 11, + "value": 15, "content": { "type": "SEQ", "members": [ @@ -1759,7 +1972,7 @@ "name": "left", "content": { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } }, { @@ -1775,7 +1988,7 @@ "name": "right", "content": { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } } ] @@ -1792,7 +2005,7 @@ "name": "left", "content": { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } }, { @@ -1808,7 +2021,7 @@ "name": "right", "content": { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } } ] @@ -1825,7 +2038,7 @@ "name": "left", "content": { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } }, { @@ -1841,7 +2054,7 @@ "name": "right", "content": { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } } ] @@ -1860,7 +2073,7 @@ "name": "left", "content": { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } }, { @@ -1876,7 +2089,7 @@ "name": "right", "content": { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } } ] @@ -1903,6 +2116,38 @@ } ] }, + "hint": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "%{" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "python_code" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": "%}" + } + ] + }, + "python_code": { + "type": "REPEAT1", + "content": { + "type": "SYMBOL", + "name": "code_line" + } + }, "register": { "type": "CHOICE", "members": [ @@ -1925,7 +2170,7 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" }, { "type": "STRING", @@ -1935,13 +2180,13 @@ }, "subscript_expression": { "type": "PREC", - "value": 13, + "value": 17, "content": { "type": "SEQ", "members": [ { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" }, { "type": "STRING", @@ -1949,7 +2194,7 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" }, { "type": "STRING", @@ -1960,13 +2205,13 @@ }, "member_expression": { "type": "PREC", - "value": 13, + "value": 17, "content": { "type": "SEQ", "members": [ { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" }, { "type": "STRING", @@ -1992,15 +2237,20 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" }, { "type": "STRING", "value": "," }, { - "type": "SYMBOL", - "name": "type" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_type" + }, + "named": true, + "value": "type" }, { "type": "STRING", @@ -2010,7 +2260,7 @@ }, "tuple_expression": { "type": "PREC", - "value": 12, + "value": 16, "content": { "type": "SEQ", "members": [ @@ -2029,7 +2279,7 @@ "members": [ { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" }, { "type": "REPEAT", @@ -2042,7 +2292,7 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } ] } @@ -2075,15 +2325,19 @@ ] } }, - "call_expression": { + "_cairo_0_call_expression": { "type": "PREC", - "value": 12, + "value": 16, "content": { "type": "SEQ", "members": [ { - "type": "SYMBOL", - "name": "expression" + "type": "FIELD", + "name": "function", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_expression" + } }, { "type": "CHOICE", @@ -2102,24 +2356,41 @@ "type": "SEQ", "members": [ { - "type": "SYMBOL", - "name": "assignment_expression" + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "assignment_expression" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "assignment_expression" + } + ] + } + } + ] }, { - "type": "REPEAT", - "content": { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "," - }, - { - "type": "SYMBOL", - "name": "assignment_expression" - } - ] - } + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] } ] }, @@ -2179,24 +2450,41 @@ "type": "SEQ", "members": [ { - "type": "SYMBOL", - "name": "typed_identifier" + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "typed_identifier" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "typed_identifier" + } + ] + } + } + ] }, { - "type": "REPEAT", - "content": { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "," - }, - { - "type": "SYMBOL", - "name": "typed_identifier" - } - ] - } + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] } ] }, @@ -2229,7 +2517,7 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } ] }, @@ -2246,7 +2534,7 @@ }, { "type": "SYMBOL", - "name": "expression" + "name": "_cairo_0_expression" } ] }, @@ -2295,8 +2583,13 @@ "value": ":" }, { - "type": "SYMBOL", - "name": "type" + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_0_type" + }, + "named": true, + "value": "type" } ] }, @@ -2339,72 +2632,5289 @@ "number": { "type": "TOKEN", "content": { - "type": "CHOICE", + "type": "SEQ", "members": [ { - "type": "PATTERN", - "value": "0x[a-f|A-F|0-9]+" + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "-" + }, + { + "type": "BLANK" + } + ] }, { - "type": "PATTERN", - "value": "\\d+" - } - ] - } - }, - "comment": { - "type": "TOKEN", - "content": { - "type": "SEQ", - "members": [ - { - "type": "STRING", - "value": "//" + "type": "CHOICE", + "members": [ + { + "type": "PATTERN", + "value": "[0-9][0-9_]*" + }, + { + "type": "PATTERN", + "value": "0x[0-9a-fA-F_]+" + }, + { + "type": "PATTERN", + "value": "0b[01_]+" + }, + { + "type": "PATTERN", + "value": "0o[0-7_]+" + } + ] }, { - "type": "PATTERN", - "value": ".*" - } - ] - } + "type": "CHOICE", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "u8" + }, + { + "type": "STRING", + "value": "i8" + }, + { + "type": "STRING", + "value": "u16" + }, + { + "type": "STRING", + "value": "i16" + }, + { + "type": "STRING", + "value": "u32" + }, + { + "type": "STRING", + "value": "i32" + }, + { + "type": "STRING", + "value": "u64" + }, + { + "type": "STRING", + "value": "i64" + }, + { + "type": "STRING", + "value": "u128" + }, + { + "type": "STRING", + "value": "i128" + }, + { + "type": "STRING", + "value": "u256" + }, + { + "type": "STRING", + "value": "i256" + }, + { + "type": "STRING", + "value": "isize" + }, + { + "type": "STRING", + "value": "usize" + }, + { + "type": "STRING", + "value": "f32" + }, + { + "type": "STRING", + "value": "f64" + }, + { + "type": "STRING", + "value": "felt252" + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + } + }, + "_separator": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": ";" + }, + { + "type": "STRING", + "value": "\n" + } + ] + }, + "comment": { + "type": "TOKEN", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "//" + }, + { + "type": "PATTERN", + "value": ".*" + } + ] + } + }, + "_cairo_1_statement": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "use_declaration" + }, + { + "type": "SYMBOL", + "name": "extern_type_statement" + }, + { + "type": "SYMBOL", + "name": "extern_function_statement" + }, + { + "type": "SYMBOL", + "name": "let_declaration" + }, + { + "type": "SYMBOL", + "name": "attribute_item" + }, + { + "type": "SYMBOL", + "name": "impl_item" + }, + { + "type": "SYMBOL", + "name": "trait_item" + }, + { + "type": "SYMBOL", + "name": "mod_item" + }, + { + "type": "SYMBOL", + "name": "struct_item" + }, + { + "type": "SYMBOL", + "name": "enum_item" + }, + { + "type": "SYMBOL", + "name": "const_item" + }, + { + "type": "SYMBOL", + "name": "type_item" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_function_definition" + }, + "named": true, + "value": "function_definition" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_function_signature" + }, + "named": true, + "value": "function_signature" + } + ] + }, + "use_declaration": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "use" + }, + { + "type": "FIELD", + "name": "argument", + "content": { + "type": "SYMBOL", + "name": "_use_clause" + } + }, + { + "type": "STRING", + "value": ";" + } + ] + }, + "extern_type_statement": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "extern" + }, + { + "type": "STRING", + "value": "type" + }, + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "type_parameters" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ";" + } + ] + }, + "_use_clause": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_path" + }, + { + "type": "SYMBOL", + "name": "use_as_clause" + }, + { + "type": "SYMBOL", + "name": "use_list" + }, + { + "type": "SYMBOL", + "name": "scoped_use_list" + } + ] + }, + "scoped_use_list": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "path", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_path" + }, + { + "type": "BLANK" + } + ] + } + }, + { + "type": "STRING", + "value": "::" + }, + { + "type": "FIELD", + "name": "list", + "content": { + "type": "SYMBOL", + "name": "use_list" + } + } + ] + }, + "use_list": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "{" + }, + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_use_clause" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "_use_clause" + } + ] + } + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": "}" + } + ] + }, + "use_as_clause": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "path", + "content": { + "type": "SYMBOL", + "name": "_path" + } + }, + { + "type": "STRING", + "value": "as" + }, + { + "type": "FIELD", + "name": "alias", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + } + ] + }, + "extern_function_statement": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "extern" + }, + { + "type": "STRING", + "value": "fn" + }, + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "type_parameters" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "SYMBOL", + "name": "_function_signature" + }, + { + "type": "STRING", + "value": ";" + } + ] + }, + "attribute_item": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "#" + }, + { + "type": "STRING", + "value": "[" + }, + { + "type": "SYMBOL", + "name": "_path" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "attribute_arguments" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": "]" + } + ] + }, + "attribute_arguments": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "STRING", + "value": ":" + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + ] + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "STRING", + "value": ":" + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + ] + } + ] + } + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "mod_item": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "mod" + }, + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": ";" + }, + { + "type": "FIELD", + "name": "body", + "content": { + "type": "SYMBOL", + "name": "declaration_list" + } + } + ] + } + ] + }, + "struct_item": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "struct" + }, + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_type_identifier" + } + }, + { + "type": "FIELD", + "name": "type_parameters", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "type_parameters" + }, + { + "type": "BLANK" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "body", + "content": { + "type": "SYMBOL", + "name": "field_declaration_list" + } + } + ] + }, + { + "type": "STRING", + "value": ";" + } + ] + } + ] + }, + "enum_item": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "enum" + }, + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_type_identifier" + } + }, + { + "type": "FIELD", + "name": "type_parameters", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "type_parameters" + }, + { + "type": "BLANK" + } + ] + } + }, + { + "type": "FIELD", + "name": "body", + "content": { + "type": "SYMBOL", + "name": "enum_variant_list" + } + } + ] + }, + "enum_variant_list": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "{" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute_item" + } + }, + { + "type": "SYMBOL", + "name": "enum_variant" + } + ] + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute_item" + } + }, + { + "type": "SYMBOL", + "name": "enum_variant" + } + ] + } + ] + } + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": "}" + } + ] + }, + "enum_variant": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + }, + { + "type": "STRING", + "value": ":" + }, + { + "type": "FIELD", + "name": "body", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_cairo_1_type" + } + ] + }, + { + "type": "BLANK" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "=" + }, + { + "type": "FIELD", + "name": "value", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + "field_declaration_list": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "{" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute_item" + } + }, + { + "type": "SYMBOL", + "name": "field_declaration" + } + ] + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute_item" + } + }, + { + "type": "SYMBOL", + "name": "field_declaration" + } + ] + } + ] + } + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": "}" + } + ] + }, + "field_declaration": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_field_identifier" + } + }, + { + "type": "STRING", + "value": ":" + }, + { + "type": "FIELD", + "name": "type", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_type" + } + } + ] + }, + "ordered_field_declaration_list": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute_item" + } + }, + { + "type": "FIELD", + "name": "type", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_type" + } + } + ] + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute_item" + } + }, + { + "type": "FIELD", + "name": "type", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_type" + } + } + ] + } + ] + } + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "const_item": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "const" + }, + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + }, + { + "type": "STRING", + "value": ":" + }, + { + "type": "FIELD", + "name": "type", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_type" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "=" + }, + { + "type": "FIELD", + "name": "value", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ";" + } + ] + }, + "type_item": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "type" + }, + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_type_identifier" + } + }, + { + "type": "FIELD", + "name": "type_parameters", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "type_parameters" + }, + { + "type": "BLANK" + } + ] + } + }, + { + "type": "STRING", + "value": "=" + }, + { + "type": "FIELD", + "name": "type", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_type" + } + }, + { + "type": "STRING", + "value": ";" + } + ] + }, + "block": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "{" + }, + { + "type": "REPEAT", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_cairo_1_statement" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression_statement" + }, + "named": true, + "value": "expression_statement" + } + ] + } + }, + { + "type": "STRING", + "value": "}" + } + ] + }, + "_cairo_1_function_definition": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "fn" + }, + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "type_parameters" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "SYMBOL", + "name": "_function_signature" + }, + { + "type": "SYMBOL", + "name": "block" + } + ] + }, + "_function_signature": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "parameter" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "parameter" + } + ] + } + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ")" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "->" + }, + { + "type": "FIELD", + "name": "returns", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_type" + } + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "implicits" + }, + { + "type": "STRING", + "value": "(" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "identifier" + } + ] + } + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "nopanic" + }, + { + "type": "BLANK" + } + ] + } + ] + }, + "_cairo_1_function_signature": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "fn" + }, + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "type_parameters" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": "(" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "parameter" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "parameter" + } + ] + } + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ")" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "->" + }, + { + "type": "FIELD", + "name": "returns", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_type" + } + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "nopanic" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ";" + } + ] + }, + "parameter": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "ref" + }, + { + "type": "STRING", + "value": "mut" + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "SYMBOL", + "name": "self" + } + ] + }, + { + "type": "STRING", + "value": ":" + }, + { + "type": "SYMBOL", + "name": "_cairo_1_type" + } + ] + }, + "impl_item": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "impl" + }, + { + "type": "SYMBOL", + "name": "_cairo_1_type" + }, + { + "type": "STRING", + "value": "of" + }, + { + "type": "SYMBOL", + "name": "_cairo_1_type" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "block" + }, + { + "type": "STRING", + "value": ";" + } + ] + } + ] + }, + "trait_item": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "trait" + }, + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_type_identifier" + } + }, + { + "type": "FIELD", + "name": "type_parameters", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "type_parameters" + }, + { + "type": "BLANK" + } + ] + } + }, + { + "type": "FIELD", + "name": "bounds", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "trait_bounds" + }, + { + "type": "BLANK" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "FIELD", + "name": "body", + "content": { + "type": "SYMBOL", + "name": "declaration_list" + } + }, + { + "type": "STRING", + "value": ";" + } + ] + } + ] + }, + "let_declaration": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "let" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "mut" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "FIELD", + "name": "pattern", + "content": { + "type": "SYMBOL", + "name": "_pattern" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": ":" + }, + { + "type": "FIELD", + "name": "type", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_type" + } + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "=" + }, + { + "type": "FIELD", + "name": "value", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ";" + } + ] + }, + "declaration_list": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "{" + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_statement" + } + }, + { + "type": "STRING", + "value": "}" + } + ] + }, + "_cairo_1_type": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_cairo_1_type_identifier" + }, + { + "type": "SYMBOL", + "name": "scoped_type_identifier" + }, + { + "type": "SYMBOL", + "name": "at_type" + }, + { + "type": "SYMBOL", + "name": "generic_type" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_tuple_type" + }, + "named": true, + "value": "tuple_type" + }, + { + "type": "SYMBOL", + "name": "abstract_type" + }, + { + "type": "ALIAS", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "u8" + }, + { + "type": "STRING", + "value": "i8" + }, + { + "type": "STRING", + "value": "u16" + }, + { + "type": "STRING", + "value": "i16" + }, + { + "type": "STRING", + "value": "u32" + }, + { + "type": "STRING", + "value": "i32" + }, + { + "type": "STRING", + "value": "u64" + }, + { + "type": "STRING", + "value": "i64" + }, + { + "type": "STRING", + "value": "u128" + }, + { + "type": "STRING", + "value": "i128" + }, + { + "type": "STRING", + "value": "u256" + }, + { + "type": "STRING", + "value": "i256" + }, + { + "type": "STRING", + "value": "isize" + }, + { + "type": "STRING", + "value": "usize" + }, + { + "type": "STRING", + "value": "f32" + }, + { + "type": "STRING", + "value": "f64" + }, + { + "type": "STRING", + "value": "felt252" + }, + { + "type": "STRING", + "value": "bool" + }, + { + "type": "STRING", + "value": "str" + }, + { + "type": "STRING", + "value": "char" + } + ] + }, + "named": true, + "value": "primitive_type" + }, + { + "type": "SYMBOL", + "name": "unit_type" + } + ] + }, + "at_type": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "@" + }, + { + "type": "SYMBOL", + "name": "_cairo_1_type" + } + ] + }, + "_cairo_1_generic_function": { + "type": "PREC", + "value": 1, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "function", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "SYMBOL", + "name": "scoped_identifier" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_field_expression" + }, + "named": true, + "value": "field_expression" + } + ] + } + }, + { + "type": "STRING", + "value": "::" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_type_arguments" + }, + "named": true, + "value": "type_arguments" + } + ] + } + }, + "generic_type": { + "type": "PREC", + "value": 1, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "type", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_cairo_1_type_identifier" + }, + { + "type": "SYMBOL", + "name": "scoped_type_identifier" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "::" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_type_arguments" + }, + "named": true, + "value": "type_arguments" + } + ] + } + }, + "generic_type_with_turbofish": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "type", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_cairo_1_type_identifier" + }, + { + "type": "SYMBOL", + "name": "scoped_identifier" + } + ] + } + }, + { + "type": "STRING", + "value": "::" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_type_arguments" + }, + "named": true, + "value": "type_arguments" + } + ] + }, + "_cairo_1_type_arguments": { + "type": "SEQ", + "members": [ + { + "type": "TOKEN", + "content": { + "type": "PREC", + "value": 1, + "content": { + "type": "STRING", + "value": "<" + } + } + }, + { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_cairo_1_type" + }, + { + "type": "SYMBOL", + "name": "_literal" + }, + { + "type": "SYMBOL", + "name": "block" + } + ] + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_cairo_1_type" + }, + { + "type": "SYMBOL", + "name": "_literal" + }, + { + "type": "SYMBOL", + "name": "block" + } + ] + } + ] + } + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ">" + } + ] + }, + "_cairo_1_tuple_type": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_cairo_1_type" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "_cairo_1_type" + } + ] + } + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "unit_type": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "abstract_type": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "impl" + }, + { + "type": "FIELD", + "name": "trait", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_cairo_1_type_identifier" + }, + { + "type": "SYMBOL", + "name": "scoped_type_identifier" + }, + { + "type": "SYMBOL", + "name": "generic_type" + } + ] + } + }, + { + "type": "SYMBOL", + "name": "trait_bounds" + } + ] + }, + "_cairo_1_expression_statement": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_cairo_1_expression" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": ";" + }, + { + "type": "BLANK" + } + ] + } + ] + }, + "_cairo_1_expression": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "SYMBOL", + "name": "_keyword_identifier" + }, + { + "type": "SYMBOL", + "name": "scoped_identifier" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_short_string" + }, + "named": true, + "value": "short_string" + }, + { + "type": "SYMBOL", + "name": "self" + }, + { + "type": "SYMBOL", + "name": "_literal" + }, + { + "type": "SYMBOL", + "name": "boolean" + }, + { + "type": "ALIAS", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "u8" + }, + { + "type": "STRING", + "value": "i8" + }, + { + "type": "STRING", + "value": "u16" + }, + { + "type": "STRING", + "value": "i16" + }, + { + "type": "STRING", + "value": "u32" + }, + { + "type": "STRING", + "value": "i32" + }, + { + "type": "STRING", + "value": "u64" + }, + { + "type": "STRING", + "value": "i64" + }, + { + "type": "STRING", + "value": "u128" + }, + { + "type": "STRING", + "value": "i128" + }, + { + "type": "STRING", + "value": "u256" + }, + { + "type": "STRING", + "value": "i256" + }, + { + "type": "STRING", + "value": "isize" + }, + { + "type": "STRING", + "value": "usize" + }, + { + "type": "STRING", + "value": "f32" + }, + { + "type": "STRING", + "value": "f64" + }, + { + "type": "STRING", + "value": "felt252" + }, + { + "type": "STRING", + "value": "bool" + }, + { + "type": "STRING", + "value": "str" + }, + { + "type": "STRING", + "value": "char" + } + ] + }, + "named": true, + "value": "identifier" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_call_expression" + }, + "named": true, + "value": "call_expression" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_field_expression" + }, + "named": true, + "value": "field_expression" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_unit_expression" + }, + "named": true, + "value": "unit_expression" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_parenthesized_expression" + }, + "named": true, + "value": "parenthesized_expression" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_tuple_expression" + }, + "named": true, + "value": "tuple_expression" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_unary_expression" + }, + "named": true, + "value": "unary_expression" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_binary_expression" + }, + "named": true, + "value": "binary_expression" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_assignment_expression" + }, + "named": true, + "value": "assignment_expression" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_compound_assignment_expression" + }, + "named": true, + "value": "compound_assignment_expression" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_struct_expression" + }, + "named": true, + "value": "struct_expression" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_try_expression" + }, + "named": true, + "value": "try_expression" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_return_expression" + }, + "named": true, + "value": "return_expression" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_loop_expression" + }, + "named": true, + "value": "loop_expression" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_generic_function" + }, + "named": true, + "value": "generic_function" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_at_expression" + }, + "named": true, + "value": "at_expression" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_index_expression" + }, + "named": true, + "value": "index_expression" + }, + { + "type": "SYMBOL", + "name": "_cairo_1_expression_ending_with_block" + } + ] + }, + "_cairo_1_expression_ending_with_block": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "block" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_if_expression" + }, + "named": true, + "value": "if_expression" + }, + { + "type": "SYMBOL", + "name": "match_expression" + } + ] + }, + "_cairo_1_return_expression": { + "type": "CHOICE", + "members": [ + { + "type": "PREC_LEFT", + "value": 0, + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "return" + }, + { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + ] + } + }, + { + "type": "PREC", + "value": -1, + "content": { + "type": "STRING", + "value": "return" + } + } + ] + }, + "_cairo_1_if_expression": { + "type": "PREC_RIGHT", + "value": 0, + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "if" + }, + { + "type": "FIELD", + "name": "condition", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + }, + { + "type": "FIELD", + "name": "consequence", + "content": { + "type": "SYMBOL", + "name": "block" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "FIELD", + "name": "alternative", + "content": { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_else_clause" + }, + "named": true, + "value": "else_clause" + } + }, + { + "type": "BLANK" + } + ] + } + ] + } + }, + "_cairo_1_else_clause": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "else" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "block" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_if_expression" + }, + "named": true, + "value": "if_expression" + } + ] + } + ] + }, + "match_expression": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "match" + }, + { + "type": "FIELD", + "name": "value", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + }, + { + "type": "FIELD", + "name": "body", + "content": { + "type": "SYMBOL", + "name": "match_block" + } + } + ] + }, + "match_block": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "{" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "match_arm" + } + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "last_match_arm" + }, + "named": true, + "value": "match_arm" + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": "}" + } + ] + }, + "match_arm": { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute_item" + } + }, + { + "type": "FIELD", + "name": "pattern", + "content": { + "type": "SYMBOL", + "name": "match_pattern" + } + }, + { + "type": "STRING", + "value": "=>" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "value", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + }, + { + "type": "STRING", + "value": "," + } + ] + }, + { + "type": "FIELD", + "name": "value", + "content": { + "type": "PREC", + "value": 1, + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression_ending_with_block" + } + } + } + ] + } + ] + }, + "last_match_arm": { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute_item" + } + }, + { + "type": "FIELD", + "name": "pattern", + "content": { + "type": "SYMBOL", + "name": "match_pattern" + } + }, + { + "type": "STRING", + "value": "=>" + }, + { + "type": "FIELD", + "name": "value", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + } + ] + }, + "match_pattern": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_pattern" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "if" + }, + { + "type": "FIELD", + "name": "condition", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + }, + "_cairo_1_loop_expression": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "loop" + }, + { + "type": "FIELD", + "name": "body", + "content": { + "type": "SYMBOL", + "name": "block" + } + } + ] + }, + "_cairo_1_at_expression": { + "type": "PREC_RIGHT", + "value": 0, + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "@" + }, + { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + ] + } + }, + "_pattern": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_literal_pattern" + }, + { + "type": "ALIAS", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "u8" + }, + { + "type": "STRING", + "value": "i8" + }, + { + "type": "STRING", + "value": "u16" + }, + { + "type": "STRING", + "value": "i16" + }, + { + "type": "STRING", + "value": "u32" + }, + { + "type": "STRING", + "value": "i32" + }, + { + "type": "STRING", + "value": "u64" + }, + { + "type": "STRING", + "value": "i64" + }, + { + "type": "STRING", + "value": "u128" + }, + { + "type": "STRING", + "value": "i128" + }, + { + "type": "STRING", + "value": "u256" + }, + { + "type": "STRING", + "value": "i256" + }, + { + "type": "STRING", + "value": "isize" + }, + { + "type": "STRING", + "value": "usize" + }, + { + "type": "STRING", + "value": "f32" + }, + { + "type": "STRING", + "value": "f64" + }, + { + "type": "STRING", + "value": "felt252" + }, + { + "type": "STRING", + "value": "bool" + }, + { + "type": "STRING", + "value": "str" + }, + { + "type": "STRING", + "value": "char" + } + ] + }, + "named": true, + "value": "identifier" + }, + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "SYMBOL", + "name": "scoped_identifier" + }, + { + "type": "SYMBOL", + "name": "tuple_pattern" + }, + { + "type": "SYMBOL", + "name": "tuple_struct_pattern" + }, + { + "type": "SYMBOL", + "name": "struct_pattern" + }, + { + "type": "STRING", + "value": "_" + } + ] + }, + "tuple_pattern": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_pattern" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "_pattern" + } + ] + } + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "tuple_struct_pattern": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "type", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "SYMBOL", + "name": "scoped_identifier" + } + ] + } + }, + { + "type": "STRING", + "value": "(" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_pattern" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "_pattern" + } + ] + } + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "struct_pattern": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "type", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_cairo_1_type_identifier" + }, + { + "type": "SYMBOL", + "name": "scoped_type_identifier" + }, + { + "type": "ALIAS", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "u8" + }, + { + "type": "STRING", + "value": "i8" + }, + { + "type": "STRING", + "value": "u16" + }, + { + "type": "STRING", + "value": "i16" + }, + { + "type": "STRING", + "value": "u32" + }, + { + "type": "STRING", + "value": "i32" + }, + { + "type": "STRING", + "value": "u64" + }, + { + "type": "STRING", + "value": "i64" + }, + { + "type": "STRING", + "value": "u128" + }, + { + "type": "STRING", + "value": "i128" + }, + { + "type": "STRING", + "value": "u256" + }, + { + "type": "STRING", + "value": "i256" + }, + { + "type": "STRING", + "value": "isize" + }, + { + "type": "STRING", + "value": "usize" + }, + { + "type": "STRING", + "value": "f32" + }, + { + "type": "STRING", + "value": "f64" + }, + { + "type": "STRING", + "value": "felt252" + }, + { + "type": "STRING", + "value": "bool" + }, + { + "type": "STRING", + "value": "str" + }, + { + "type": "STRING", + "value": "char" + } + ] + }, + "named": true, + "value": "primitive_type" + } + ] + } + }, + { + "type": "STRING", + "value": "{" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "field_pattern" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "field_pattern" + } + ] + } + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": "}" + } + ] + }, + "field_pattern": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "ref" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "mut" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "FIELD", + "name": "name", + "content": { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "identifier" + }, + "named": true, + "value": "shorthand_field_identifier" + } + }, + { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_field_identifier" + } + }, + { + "type": "STRING", + "value": ":" + }, + { + "type": "FIELD", + "name": "pattern", + "content": { + "type": "SYMBOL", + "name": "_pattern" + } + } + ] + } + ] + } + ] + }, + "remaining_field_pattern": { + "type": "STRING", + "value": ".." + }, + "_cairo_1_unary_expression": { + "type": "PREC", + "value": 14, + "content": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "-" + }, + { + "type": "STRING", + "value": "*" + }, + { + "type": "STRING", + "value": "!" + }, + { + "type": "STRING", + "value": "~" + } + ] + }, + { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + ] + } + }, + "_cairo_1_binary_expression": { + "type": "CHOICE", + "members": [ + { + "type": "PREC_LEFT", + "value": 4, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + }, + { + "type": "FIELD", + "name": "operator", + "content": { + "type": "STRING", + "value": "&&" + } + }, + { + "type": "FIELD", + "name": "right", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + } + ] + } + }, + { + "type": "PREC_LEFT", + "value": 3, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + }, + { + "type": "FIELD", + "name": "operator", + "content": { + "type": "STRING", + "value": "||" + } + }, + { + "type": "FIELD", + "name": "right", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + } + ] + } + }, + { + "type": "PREC_LEFT", + "value": 11, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + }, + { + "type": "FIELD", + "name": "operator", + "content": { + "type": "STRING", + "value": "&" + } + }, + { + "type": "FIELD", + "name": "right", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + } + ] + } + }, + { + "type": "PREC_LEFT", + "value": 13, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + }, + { + "type": "FIELD", + "name": "operator", + "content": { + "type": "STRING", + "value": "|" + } + }, + { + "type": "FIELD", + "name": "right", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + } + ] + } + }, + { + "type": "PREC_LEFT", + "value": 12, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + }, + { + "type": "FIELD", + "name": "operator", + "content": { + "type": "STRING", + "value": "^" + } + }, + { + "type": "FIELD", + "name": "right", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + } + ] + } + }, + { + "type": "PREC_LEFT", + "value": 7, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + }, + { + "type": "FIELD", + "name": "operator", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "==" + }, + { + "type": "STRING", + "value": "!=" + }, + { + "type": "STRING", + "value": "<" + }, + { + "type": "STRING", + "value": "<=" + }, + { + "type": "STRING", + "value": ">" + }, + { + "type": "STRING", + "value": ">=" + } + ] + } + }, + { + "type": "FIELD", + "name": "right", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + } + ] + } + }, + { + "type": "PREC_LEFT", + "value": 10, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + }, + { + "type": "FIELD", + "name": "operator", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "<<" + }, + { + "type": "STRING", + "value": ">>" + } + ] + } + }, + { + "type": "FIELD", + "name": "right", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + } + ] + } + }, + { + "type": "PREC_LEFT", + "value": 8, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + }, + { + "type": "FIELD", + "name": "operator", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "+" + }, + { + "type": "STRING", + "value": "-" + } + ] + } + }, + { + "type": "FIELD", + "name": "right", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + } + ] + } + }, + { + "type": "PREC_LEFT", + "value": 9, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + }, + { + "type": "FIELD", + "name": "operator", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "*" + }, + { + "type": "STRING", + "value": "/" + }, + { + "type": "STRING", + "value": "%" + } + ] + } + }, + { + "type": "FIELD", + "name": "right", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + } + ] + } + } + ] + }, + "_cairo_1_assignment_expression": { + "type": "PREC_LEFT", + "value": 1, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + }, + { + "type": "STRING", + "value": "=" + }, + { + "type": "FIELD", + "name": "right", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + } + ] + } + }, + "_cairo_1_compound_assignment_expression": { + "type": "PREC_LEFT", + "value": 1, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + }, + { + "type": "FIELD", + "name": "operator", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "+=" + }, + { + "type": "STRING", + "value": "-=" + }, + { + "type": "STRING", + "value": "*=" + }, + { + "type": "STRING", + "value": "/=" + }, + { + "type": "STRING", + "value": "%=" + }, + { + "type": "STRING", + "value": "&=" + }, + { + "type": "STRING", + "value": "|=" + }, + { + "type": "STRING", + "value": "^=" + }, + { + "type": "STRING", + "value": "<<=" + }, + { + "type": "STRING", + "value": ">>=" + } + ] + } + }, + { + "type": "FIELD", + "name": "right", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + } + ] + } + }, + "_cairo_1_try_expression": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_cairo_1_expression" + }, + { + "type": "STRING", + "value": "?" + } + ] + }, + "_cairo_1_call_expression": { + "type": "PREC", + "value": 16, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "function", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + }, + { + "type": "STRING", + "value": "(" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "ref" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ":" + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + ] + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "ref" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ":" + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + ] + } + ] + } + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ")" + } + ] + } + }, + "_cairo_1_index_expression": { + "type": "PREC", + "value": 16, + "content": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_cairo_1_expression" + }, + { + "type": "STRING", + "value": "[" + }, + { + "type": "SYMBOL", + "name": "_cairo_1_expression" + }, + { + "type": "STRING", + "value": "]" + } + ] + } + }, + "_cairo_1_field_expression": { + "type": "PREC", + "value": 17, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "value", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + }, + { + "type": "STRING", + "value": "." + }, + { + "type": "FIELD", + "name": "field", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_field_identifier" + } + } + ] + } + }, + "_cairo_1_parenthesized_expression": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "SYMBOL", + "name": "_cairo_1_expression" + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "_cairo_1_tuple_expression": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute_item" + } + }, + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_cairo_1_expression" + }, + { + "type": "STRING", + "value": "," + } + ] + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_cairo_1_expression" + }, + { + "type": "STRING", + "value": "," + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_cairo_1_expression" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "_cairo_1_unit_expression": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "_cairo_1_struct_expression": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "name", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_cairo_1_type_identifier" + }, + { + "type": "ALIAS", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "u8" + }, + { + "type": "STRING", + "value": "i8" + }, + { + "type": "STRING", + "value": "u16" + }, + { + "type": "STRING", + "value": "i16" + }, + { + "type": "STRING", + "value": "u32" + }, + { + "type": "STRING", + "value": "i32" + }, + { + "type": "STRING", + "value": "u64" + }, + { + "type": "STRING", + "value": "i64" + }, + { + "type": "STRING", + "value": "u128" + }, + { + "type": "STRING", + "value": "i128" + }, + { + "type": "STRING", + "value": "u256" + }, + { + "type": "STRING", + "value": "i256" + }, + { + "type": "STRING", + "value": "isize" + }, + { + "type": "STRING", + "value": "usize" + }, + { + "type": "STRING", + "value": "f32" + }, + { + "type": "STRING", + "value": "f64" + }, + { + "type": "STRING", + "value": "felt252" + }, + { + "type": "STRING", + "value": "bool" + }, + { + "type": "STRING", + "value": "str" + }, + { + "type": "STRING", + "value": "char" + } + ] + }, + "named": true, + "value": "primitive_type" + } + ] + } + }, + { + "type": "FIELD", + "name": "body", + "content": { + "type": "SYMBOL", + "name": "field_initializer_list" + } + } + ] + }, + "field_initializer_list": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "{" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "shorthand_field_initializer" + }, + { + "type": "SYMBOL", + "name": "field_initializer" + }, + { + "type": "SYMBOL", + "name": "base_field_initializer" + } + ] + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "shorthand_field_initializer" + }, + { + "type": "SYMBOL", + "name": "field_initializer" + }, + { + "type": "SYMBOL", + "name": "base_field_initializer" + } + ] + } + ] + } + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": "}" + } + ] + }, + "shorthand_field_initializer": { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute_item" + } + }, + { + "type": "SYMBOL", + "name": "identifier" + } + ] + }, + "field_initializer": { + "type": "SEQ", + "members": [ + { + "type": "REPEAT", + "content": { + "type": "SYMBOL", + "name": "attribute_item" + } + }, + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_field_identifier" + } + }, + { + "type": "STRING", + "value": ":" + }, + { + "type": "FIELD", + "name": "value", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + } + ] + }, + "base_field_initializer": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": ".." + }, + { + "type": "SYMBOL", + "name": "_cairo_1_expression" + } + ] + }, + "trait_bounds": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": ":" + }, + { + "type": "SYMBOL", + "name": "_cairo_1_type" + } + ] + }, + "type_parameters": { + "type": "PREC", + "value": 1, + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "<" + }, + { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_cairo_1_type_identifier" + }, + { + "type": "SYMBOL", + "name": "constrained_type_parameter" + }, + { + "type": "SYMBOL", + "name": "abstract_type" + } + ] + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_cairo_1_type_identifier" + }, + { + "type": "SYMBOL", + "name": "constrained_type_parameter" + }, + { + "type": "SYMBOL", + "name": "abstract_type" + } + ] + } + ] + } + } + ] + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "STRING", + "value": ">" + } + ] + } + }, + "constrained_type_parameter": { + "type": "SEQ", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "const" + }, + { + "type": "BLANK" + } + ] + }, + { + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_type_identifier" + } + }, + { + "type": "FIELD", + "name": "bounds", + "content": { + "type": "SYMBOL", + "name": "trait_bounds" + } + } + ] + }, + "_literal": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "number" + } + ] + }, + "_literal_pattern": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "number" + } + ] + }, + "_cairo_1_short_string": { + "type": "TOKEN", + "content": { + "type": "SEQ", + "members": [ + { + "type": "PATTERN", + "value": "'(.*?)'" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "_" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "u8" + }, + { + "type": "STRING", + "value": "i8" + }, + { + "type": "STRING", + "value": "u16" + }, + { + "type": "STRING", + "value": "i16" + }, + { + "type": "STRING", + "value": "u32" + }, + { + "type": "STRING", + "value": "i32" + }, + { + "type": "STRING", + "value": "u64" + }, + { + "type": "STRING", + "value": "i64" + }, + { + "type": "STRING", + "value": "u128" + }, + { + "type": "STRING", + "value": "i128" + }, + { + "type": "STRING", + "value": "u256" + }, + { + "type": "STRING", + "value": "i256" + }, + { + "type": "STRING", + "value": "isize" + }, + { + "type": "STRING", + "value": "usize" + }, + { + "type": "STRING", + "value": "f32" + }, + { + "type": "STRING", + "value": "f64" + }, + { + "type": "STRING", + "value": "felt252" + } + ] + } + ] + }, + { + "type": "BLANK" + } + ] + } + ] + } + }, + "namespace_name": { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "::" + }, + { + "type": "SYMBOL", + "name": "identifier" + } + ] + } + } + ] + }, + "scoped_identifier": { + "type": "PREC", + "value": 1, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "path", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_path" + }, + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "generic_type_with_turbofish" + }, + "named": true, + "value": "generic_type" + } + ] + }, + { + "type": "BLANK" + } + ] + } + }, + { + "type": "STRING", + "value": "::" + }, + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "identifier" + } + } + ] + } + }, + "scoped_type_identifier": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "path", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_path" + }, + { + "type": "SYMBOL", + "name": "generic_type" + } + ] + }, + { + "type": "BLANK" + } + ] + } + }, + { + "type": "STRING", + "value": "::" + }, + { + "type": "FIELD", + "name": "name", + "content": { + "type": "SYMBOL", + "name": "_cairo_1_type_identifier" + } + } + ] + }, + "_path": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "self" + }, + { + "type": "ALIAS", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "u8" + }, + { + "type": "STRING", + "value": "i8" + }, + { + "type": "STRING", + "value": "u16" + }, + { + "type": "STRING", + "value": "i16" + }, + { + "type": "STRING", + "value": "u32" + }, + { + "type": "STRING", + "value": "i32" + }, + { + "type": "STRING", + "value": "u64" + }, + { + "type": "STRING", + "value": "i64" + }, + { + "type": "STRING", + "value": "u128" + }, + { + "type": "STRING", + "value": "i128" + }, + { + "type": "STRING", + "value": "u256" + }, + { + "type": "STRING", + "value": "i256" + }, + { + "type": "STRING", + "value": "isize" + }, + { + "type": "STRING", + "value": "usize" + }, + { + "type": "STRING", + "value": "f32" + }, + { + "type": "STRING", + "value": "f64" + }, + { + "type": "STRING", + "value": "felt252" + }, + { + "type": "STRING", + "value": "bool" + }, + { + "type": "STRING", + "value": "str" + }, + { + "type": "STRING", + "value": "char" + } + ] + }, + "named": true, + "value": "identifier" + }, + { + "type": "SYMBOL", + "name": "identifier" + }, + { + "type": "SYMBOL", + "name": "scoped_identifier" + } + ] + }, + "_cairo_1_type_identifier": { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "identifier" + }, + "named": true, + "value": "type_identifier" + }, + "_cairo_1_field_identifier": { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "identifier" + }, + "named": true, + "value": "field_identifier" + }, + "_keyword_identifier": { + "type": "PREC", + "value": -3, + "content": { + "type": "ALIAS", + "content": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "u8" + }, + { + "type": "STRING", + "value": "i8" + }, + { + "type": "STRING", + "value": "u16" + }, + { + "type": "STRING", + "value": "i16" + }, + { + "type": "STRING", + "value": "u32" + }, + { + "type": "STRING", + "value": "i32" + }, + { + "type": "STRING", + "value": "u64" + }, + { + "type": "STRING", + "value": "i64" + }, + { + "type": "STRING", + "value": "u128" + }, + { + "type": "STRING", + "value": "i128" + }, + { + "type": "STRING", + "value": "u256" + }, + { + "type": "STRING", + "value": "i256" + }, + { + "type": "STRING", + "value": "isize" + }, + { + "type": "STRING", + "value": "usize" + }, + { + "type": "STRING", + "value": "f32" + }, + { + "type": "STRING", + "value": "f64" + }, + { + "type": "STRING", + "value": "felt252" + }, + { + "type": "STRING", + "value": "bool" + }, + { + "type": "STRING", + "value": "str" + }, + { + "type": "STRING", + "value": "char" + } + ] + }, + "named": true, + "value": "identifier" + } + }, + "boolean": { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "true" + }, + { + "type": "STRING", + "value": "false" + } + ] + }, + "self": { + "type": "STRING", + "value": "self" } }, "extras": [ - { - "type": "PATTERN", - "value": "\\s" - }, { "type": "SYMBOL", "name": "comment" + }, + { + "type": "PATTERN", + "value": "\\s" } ], - "conflicts": [], + "conflicts": [ + [ + "typed_identifier", + "_pattern" + ], + [ + "_cairo_1_expression", + "_cairo_1_struct_expression" + ], + [ + "tuple_pattern", + "_ref_binding" + ], + [ + "_cairo_0_struct_definition", + "field_declaration_list" + ], + [ + "_cairo_0_tuple_type", + "unit_type" + ] + ], "precedences": [], "externals": [ + { + "type": "STRING", + "value": "%{" + }, + { + "type": "SYMBOL", + "name": "code_line" + }, { "type": "SYMBOL", - "name": "hint" + "name": "_failure" } ], "inline": [ - "_instruction_body" + "_path", + "_cairo_1_type_identifier", + "_cairo_1_field_identifier", + "_cairo_1_expression_ending_with_block", + "_instruction_body", + "_keyword_identifier" ], "supertypes": [ - "cairo_0_statement", - "_instruction_body" + "_instruction_body", + "_cairo_0_statement", + "_cairo_1_expression", + "_pattern" ], "PREC": { "PAREN": -1, "ASSIGN": 1, + "LOGICAL_OR": 3, "LOGICAL_AND": 4, "EQUALITY": 7, "ADDITIVE": 8, "MULTIPLICATIVE": 9, - "UNARY": 10, - "POWER": 11, - "CALL": 12, - "MEMBER": 13 + "SHIFT": 10, + "BITAND": 11, + "BITXOR": 12, + "BITOR": 13, + "UNARY": 14, + "POWER": 15, + "CALL": 16, + "MEMBER": 17 } } diff --git a/src/node-types.json b/src/node-types.json index f3e0777..fff1a52 100644 --- a/src/node-types.json +++ b/src/node-types.json @@ -1,148 +1,322 @@ [ { - "type": "_instruction_body", + "type": "_cairo_0_statement", "named": true, "subtypes": [ { - "type": "call_instruction", + "type": "alloc_locals", "named": true }, { - "type": "inst_add_ap", + "type": "assert_statement", "named": true }, { - "type": "inst_assert_eq", + "type": "attribute_statement", "named": true }, { - "type": "inst_data_word", + "type": "builtin_directive", "named": true }, { - "type": "inst_jmp_abs", + "type": "const_var_declaration", "named": true }, { - "type": "inst_jmp_rel", + "type": "decorated_definition", "named": true }, { - "type": "inst_jmp_to_label", + "type": "expression_statement", "named": true }, { - "type": "inst_jnz", + "type": "function_definition", "named": true }, { - "type": "inst_jnz_to_label", + "type": "hint", "named": true }, { - "type": "inst_ret", + "type": "if_statement", + "named": true + }, + { + "type": "import_statement", + "named": true + }, + { + "type": "instruction", + "named": true + }, + { + "type": "label", + "named": true + }, + { + "type": "lang_directive", + "named": true + }, + { + "type": "let_binding", + "named": true + }, + { + "type": "local_var_declaration", + "named": true + }, + { + "type": "namespace_definition", + "named": true + }, + { + "type": "return_statement", + "named": true + }, + { + "type": "static_assert_statement", + "named": true + }, + { + "type": "struct_definition", + "named": true + }, + { + "type": "temp_var_declaration", + "named": true + }, + { + "type": "type_definition", + "named": true + }, + { + "type": "with_statement", "named": true } ] }, { - "type": "cairo_0_statement", + "type": "_cairo_1_expression", "named": true, "subtypes": [ { - "type": "alloc_locals", + "type": "assignment_expression", "named": true }, { - "type": "assert_statement", + "type": "at_expression", "named": true }, { - "type": "attribute_statement", + "type": "binary_expression", "named": true }, { - "type": "builtin_directive", + "type": "block", "named": true }, { - "type": "const_var_declaration", + "type": "boolean", "named": true }, { - "type": "decorated_definition", + "type": "call_expression", "named": true }, { - "type": "expression_statement", + "type": "compound_assignment_expression", "named": true }, { - "type": "function_definition", + "type": "field_expression", "named": true }, { - "type": "hint", + "type": "generic_function", "named": true }, { - "type": "if_statement", + "type": "identifier", "named": true }, { - "type": "import_statement", + "type": "if_expression", "named": true }, { - "type": "instruction", + "type": "index_expression", "named": true }, { - "type": "label", + "type": "loop_expression", "named": true }, { - "type": "lang_directive", + "type": "match_expression", "named": true }, { - "type": "let_binding", + "type": "number", "named": true }, { - "type": "local_var_declaration", + "type": "parenthesized_expression", "named": true }, { - "type": "namespace_definition", + "type": "return_expression", "named": true }, { - "type": "return_statement", + "type": "scoped_identifier", "named": true }, { - "type": "static_assert_statement", + "type": "self", "named": true }, { - "type": "struct_definition", + "type": "short_string", "named": true }, { - "type": "temp_var_declaration", + "type": "struct_expression", "named": true }, { - "type": "type_definition", + "type": "try_expression", "named": true }, { - "type": "with_statement", + "type": "tuple_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + }, + { + "type": "unit_expression", + "named": true + } + ] + }, + { + "type": "_instruction_body", + "named": true, + "subtypes": [ + { + "type": "call_instruction", + "named": true + }, + { + "type": "inst_add_ap", + "named": true + }, + { + "type": "inst_assert_eq", + "named": true + }, + { + "type": "inst_data_word", + "named": true + }, + { + "type": "inst_jmp_abs", + "named": true + }, + { + "type": "inst_jmp_rel", + "named": true + }, + { + "type": "inst_jmp_to_label", + "named": true + }, + { + "type": "inst_jnz", + "named": true + }, + { + "type": "inst_jnz_to_label", + "named": true + }, + { + "type": "inst_ret", + "named": true + } + ] + }, + { + "type": "_pattern", + "named": true, + "subtypes": [ + { + "type": "_", + "named": false + }, + { + "type": "identifier", + "named": true + }, + { + "type": "number", + "named": true + }, + { + "type": "scoped_identifier", + "named": true + }, + { + "type": "struct_pattern", + "named": true + }, + { + "type": "tuple_pattern", + "named": true + }, + { + "type": "tuple_struct_pattern", "named": true } ] }, + { + "type": "abstract_type", + "named": true, + "fields": { + "trait": { + "multiple": false, + "required": true, + "types": [ + { + "type": "generic_type", + "named": true + }, + { + "type": "scoped_type_identifier", + "named": true + }, + { + "type": "type_identifier", + "named": true + } + ] + } + }, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "trait_bounds", + "named": true + } + ] + } + }, { "type": "aliased_import", "named": true, @@ -198,7 +372,59 @@ "required": true, "types": [ { - "type": "expression", + "type": "assignment_expression", + "named": true + }, + { + "type": "binary_expression", + "named": true + }, + { + "type": "call_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "number", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "short_string", + "named": true + }, + { + "type": "subscript_expression", + "named": true + }, + { + "type": "tuple_expression", + "named": true + }, + { + "type": "unary_expression", "named": true } ] @@ -213,14 +439,38 @@ "required": true, "types": [ { - "type": "expression", + "type": "_cairo_1_expression", "named": true - } - ] + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "subscript_expression", + "named": true + } + ] }, "operator": { "multiple": false, - "required": true, + "required": false, "types": [ { "type": "=", @@ -233,13 +483,137 @@ "required": true, "types": [ { - "type": "expression", + "type": "_cairo_1_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "subscript_expression", "named": true } ] } } }, + { + "type": "at_expression", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "_cairo_1_expression", + "named": true + } + ] + } + }, + { + "type": "at_type", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "abstract_type", + "named": true + }, + { + "type": "at_type", + "named": true + }, + { + "type": "generic_type", + "named": true + }, + { + "type": "primitive_type", + "named": true + }, + { + "type": "scoped_type_identifier", + "named": true + }, + { + "type": "tuple_type", + "named": true + }, + { + "type": "type_identifier", + "named": true + }, + { + "type": "unit_type", + "named": true + } + ] + } + }, + { + "type": "attribute_arguments", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "_cairo_1_expression", + "named": true + } + ] + } + }, + { + "type": "attribute_item", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "attribute_arguments", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "scoped_identifier", + "named": true + }, + { + "type": "self", + "named": true + } + ] + } + }, { "type": "attribute_statement", "named": true, @@ -249,7 +623,7 @@ "required": true, "types": [ { - "type": "cairo_0_statement", + "type": "_cairo_0_statement", "named": true }, { @@ -263,6 +637,21 @@ ] } }, + { + "type": "base_field_initializer", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "_cairo_1_expression", + "named": true + } + ] + } + }, { "type": "binary_expression", "named": true, @@ -272,7 +661,31 @@ "required": true, "types": [ { - "type": "expression", + "type": "_cairo_1_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "subscript_expression", "named": true } ] @@ -285,6 +698,18 @@ "type": "!=", "named": false }, + { + "type": "%", + "named": false + }, + { + "type": "&", + "named": false + }, + { + "type": "&&", + "named": false + }, { "type": "*", "named": false @@ -305,13 +730,49 @@ "type": "/", "named": false }, + { + "type": "<", + "named": false + }, + { + "type": "<<", + "named": false + }, + { + "type": "<=", + "named": false + }, { "type": "==", "named": false }, + { + "type": ">", + "named": false + }, + { + "type": ">=", + "named": false + }, + { + "type": ">>", + "named": false + }, + { + "type": "^", + "named": false + }, { "type": "and", "named": false + }, + { + "type": "|", + "named": false + }, + { + "type": "||", + "named": false } ] }, @@ -320,7 +781,31 @@ "required": true, "types": [ { - "type": "expression", + "type": "_cairo_1_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "subscript_expression", "named": true } ] @@ -328,181 +813,245 @@ } }, { - "type": "builtin_directive", + "type": "block", "named": true, "fields": {}, "children": { "multiple": true, - "required": true, + "required": false, "types": [ { - "type": "identifier", + "type": "attribute_item", "named": true - } - ] - } - }, - { - "type": "call_expression", - "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": true, - "types": [ + }, { - "type": "assignment_expression", + "type": "const_item", "named": true }, { - "type": "expression", + "type": "enum_item", "named": true }, { - "type": "tuple_expression", + "type": "expression_statement", "named": true - } - ] - } - }, - { - "type": "call_instruction", - "named": true, - "fields": {}, - "children": { - "multiple": false, - "required": true, - "types": [ + }, { - "type": "expression", + "type": "extern_function_statement", "named": true }, { - "type": "identifier", + "type": "extern_type_statement", "named": true - } - ] - } - }, - { - "type": "cast_expression", - "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": true, - "types": [ + }, { - "type": "expression", + "type": "function_definition", "named": true }, { - "type": "type", + "type": "function_signature", "named": true - } - ] - } - }, - { - "type": "const_var_declaration", - "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": true, - "types": [ + }, { - "type": "expression", + "type": "impl_item", "named": true }, { - "type": "identifier", + "type": "let_declaration", + "named": true + }, + { + "type": "mod_item", + "named": true + }, + { + "type": "struct_item", + "named": true + }, + { + "type": "trait_item", + "named": true + }, + { + "type": "type_item", + "named": true + }, + { + "type": "use_declaration", "named": true } ] } }, { - "type": "decorated_definition", + "type": "boolean", "named": true, - "fields": { - "definition": { - "multiple": false, - "required": true, - "types": [ - { - "type": "function_definition", - "named": true - }, - { - "type": "namespace_definition", - "named": true - }, - { - "type": "struct_definition", - "named": true - } - ] - } - }, + "fields": {} + }, + { + "type": "builtin_directive", + "named": true, + "fields": {}, "children": { "multiple": true, "required": true, "types": [ { - "type": "decorator", + "type": "identifier", "named": true } ] } }, { - "type": "decorator", + "type": "builtin_type", + "named": true, + "fields": {} + }, + { + "type": "cairo_0_file", "named": true, "fields": {}, "children": { - "multiple": false, + "multiple": true, "required": true, "types": [ { - "type": "identifier", + "type": "_cairo_0_statement", "named": true } ] } }, { - "type": "deref_expression", + "type": "cairo_1_file", "named": true, "fields": {}, "children": { - "multiple": false, + "multiple": true, "required": true, "types": [ { - "type": "expression", + "type": "attribute_item", + "named": true + }, + { + "type": "const_item", + "named": true + }, + { + "type": "enum_item", + "named": true + }, + { + "type": "extern_function_statement", + "named": true + }, + { + "type": "extern_type_statement", + "named": true + }, + { + "type": "function_definition", + "named": true + }, + { + "type": "function_signature", + "named": true + }, + { + "type": "impl_item", + "named": true + }, + { + "type": "let_declaration", + "named": true + }, + { + "type": "mod_item", + "named": true + }, + { + "type": "struct_item", + "named": true + }, + { + "type": "trait_item", + "named": true + }, + { + "type": "type_item", + "named": true + }, + { + "type": "use_declaration", "named": true } ] } }, { - "type": "dotted_name", + "type": "call_expression", "named": true, - "fields": {}, + "fields": { + "function": { + "multiple": false, + "required": true, + "types": [ + { + "type": "_cairo_1_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "subscript_expression", + "named": true + } + ] + }, + "name": { + "multiple": true, + "required": false, + "types": [ + { + "type": "identifier", + "named": true + } + ] + } + }, "children": { "multiple": true, - "required": true, + "required": false, "types": [ { - "type": "identifier", + "type": "_cairo_1_expression", "named": true } ] } }, { - "type": "expression", + "type": "call_instruction", "named": true, "fields": {}, "children": { @@ -569,34 +1118,35 @@ } }, { - "type": "expression_statement", + "type": "cast_expression", "named": true, "fields": {}, "children": { - "multiple": false, + "multiple": true, "required": true, "types": [ { - "type": "expression", + "type": "assignment_expression", "named": true - } - ] - } - }, - { - "type": "function_definition", - "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": true, - "types": [ + }, { - "type": "arguments", + "type": "binary_expression", + "named": true + }, + { + "type": "call_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", "named": true }, { - "type": "cairo_0_statement", + "type": "hint_expression", "named": true }, { @@ -604,127 +1154,372 @@ "named": true }, { - "type": "implicit_arguments", + "type": "member_expression", "named": true }, { - "type": "return_type", + "type": "number", "named": true - } - ] - } - }, - { - "type": "hint_expression", - "named": true, - "fields": {}, - "children": { - "multiple": false, - "required": true, - "types": [ + }, { - "type": "hint", + "type": "register", "named": true - } - ] - } - }, - { - "type": "if_statement", - "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": true, - "types": [ + }, { - "type": "cairo_0_statement", + "type": "short_string", "named": true }, { - "type": "expression", + "type": "subscript_expression", "named": true - } - ] - } - }, - { - "type": "implicit_arguments", - "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": false, - "types": [ + }, { - "type": "typed_identifier", + "type": "tuple_expression", + "named": true + }, + { + "type": "type", + "named": true + }, + { + "type": "unary_expression", "named": true } ] } }, { - "type": "import_statement", + "type": "compound_assignment_expression", "named": true, "fields": { - "module_name": { + "left": { "multiple": false, "required": true, "types": [ { - "type": "dotted_name", + "type": "_cairo_1_expression", "named": true } ] }, - "name": { - "multiple": true, + "operator": { + "multiple": false, "required": true, "types": [ { - "type": "aliased_import", - "named": true + "type": "%=", + "named": false }, { - "type": "dotted_name", - "named": true - } - ] + "type": "&=", + "named": false + }, + { + "type": "*=", + "named": false + }, + { + "type": "+=", + "named": false + }, + { + "type": "-=", + "named": false + }, + { + "type": "/=", + "named": false + }, + { + "type": "<<=", + "named": false + }, + { + "type": ">>=", + "named": false + }, + { + "type": "^=", + "named": false + }, + { + "type": "|=", + "named": false + } + ] + }, + "right": { + "multiple": false, + "required": true, + "types": [ + { + "type": "_cairo_1_expression", + "named": true + } + ] } } }, { - "type": "inst_add_ap", + "type": "const_item", + "named": true, + "fields": { + "name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + }, + "type": { + "multiple": false, + "required": true, + "types": [ + { + "type": "abstract_type", + "named": true + }, + { + "type": "at_type", + "named": true + }, + { + "type": "generic_type", + "named": true + }, + { + "type": "primitive_type", + "named": true + }, + { + "type": "scoped_type_identifier", + "named": true + }, + { + "type": "tuple_type", + "named": true + }, + { + "type": "type_identifier", + "named": true + }, + { + "type": "unit_type", + "named": true + } + ] + }, + "value": { + "multiple": false, + "required": false, + "types": [ + { + "type": "_cairo_1_expression", + "named": true + } + ] + } + } + }, + { + "type": "const_var_declaration", "named": true, "fields": {}, "children": { - "multiple": false, + "multiple": true, "required": true, "types": [ { - "type": "expression", + "type": "assignment_expression", + "named": true + }, + { + "type": "binary_expression", + "named": true + }, + { + "type": "call_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "number", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "short_string", + "named": true + }, + { + "type": "subscript_expression", + "named": true + }, + { + "type": "tuple_expression", + "named": true + }, + { + "type": "unary_expression", "named": true } ] } }, { - "type": "inst_assert_eq", + "type": "constrained_type_parameter", + "named": true, + "fields": { + "bounds": { + "multiple": false, + "required": true, + "types": [ + { + "type": "trait_bounds", + "named": true + } + ] + }, + "left": { + "multiple": false, + "required": true, + "types": [ + { + "type": "type_identifier", + "named": true + } + ] + } + } + }, + { + "type": "declaration_list", "named": true, "fields": {}, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "attribute_item", + "named": true + }, + { + "type": "const_item", + "named": true + }, + { + "type": "enum_item", + "named": true + }, + { + "type": "extern_function_statement", + "named": true + }, + { + "type": "extern_type_statement", + "named": true + }, + { + "type": "function_definition", + "named": true + }, + { + "type": "function_signature", + "named": true + }, + { + "type": "impl_item", + "named": true + }, + { + "type": "let_declaration", + "named": true + }, + { + "type": "mod_item", + "named": true + }, + { + "type": "struct_item", + "named": true + }, + { + "type": "trait_item", + "named": true + }, + { + "type": "type_item", + "named": true + }, + { + "type": "use_declaration", + "named": true + } + ] + } + }, + { + "type": "decorated_definition", + "named": true, + "fields": { + "definition": { + "multiple": false, + "required": true, + "types": [ + { + "type": "function_definition", + "named": true + }, + { + "type": "namespace_definition", + "named": true + }, + { + "type": "struct_definition", + "named": true + } + ] + } + }, "children": { "multiple": true, "required": true, "types": [ { - "type": "expression", + "type": "decorator", "named": true } ] } }, { - "type": "inst_data_word", + "type": "decorator", "named": true, "fields": {}, "children": { @@ -732,101 +1527,2812 @@ "required": true, "types": [ { - "type": "expression", + "type": "identifier", + "named": true + } + ] + } + }, + { + "type": "deref_expression", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "assignment_expression", + "named": true + }, + { + "type": "binary_expression", + "named": true + }, + { + "type": "call_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "number", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "short_string", + "named": true + }, + { + "type": "subscript_expression", + "named": true + }, + { + "type": "tuple_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + } + }, + { + "type": "dotted_name", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + } + }, + { + "type": "else_clause", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "block", + "named": true + }, + { + "type": "if_expression", + "named": true + } + ] + } + }, + { + "type": "enum_item", + "named": true, + "fields": { + "body": { + "multiple": false, + "required": true, + "types": [ + { + "type": "enum_variant_list", + "named": true + } + ] + }, + "name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "type_identifier", + "named": true + } + ] + }, + "type_parameters": { + "multiple": false, + "required": false, + "types": [ + { + "type": "type_parameters", + "named": true + } + ] + } + } + }, + { + "type": "enum_variant", + "named": true, + "fields": { + "body": { + "multiple": false, + "required": false, + "types": [ + { + "type": "abstract_type", + "named": true + }, + { + "type": "at_type", + "named": true + }, + { + "type": "generic_type", + "named": true + }, + { + "type": "primitive_type", + "named": true + }, + { + "type": "scoped_type_identifier", + "named": true + }, + { + "type": "tuple_type", + "named": true + }, + { + "type": "type_identifier", + "named": true + }, + { + "type": "unit_type", + "named": true + } + ] + }, + "name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + }, + "value": { + "multiple": false, + "required": false, + "types": [ + { + "type": "_cairo_1_expression", + "named": true + } + ] + } + } + }, + { + "type": "enum_variant_list", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "attribute_item", + "named": true + }, + { + "type": "enum_variant", + "named": true + } + ] + } + }, + { + "type": "expression_statement", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "_cairo_1_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "subscript_expression", + "named": true + } + ] + } + }, + { + "type": "extern_function_statement", + "named": true, + "fields": { + "returns": { + "multiple": false, + "required": false, + "types": [ + { + "type": "abstract_type", + "named": true + }, + { + "type": "at_type", + "named": true + }, + { + "type": "generic_type", + "named": true + }, + { + "type": "primitive_type", + "named": true + }, + { + "type": "scoped_type_identifier", + "named": true + }, + { + "type": "tuple_type", + "named": true + }, + { + "type": "type_identifier", + "named": true + }, + { + "type": "unit_type", + "named": true + } + ] + } + }, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + }, + { + "type": "parameter", + "named": true + }, + { + "type": "type_parameters", + "named": true + } + ] + } + }, + { + "type": "extern_type_statement", + "named": true, + "fields": { + "name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + } + }, + "children": { + "multiple": false, + "required": false, + "types": [ + { + "type": "type_parameters", + "named": true + } + ] + } + }, + { + "type": "field_declaration", + "named": true, + "fields": { + "name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "field_identifier", + "named": true + } + ] + }, + "type": { + "multiple": false, + "required": true, + "types": [ + { + "type": "abstract_type", + "named": true + }, + { + "type": "at_type", + "named": true + }, + { + "type": "generic_type", + "named": true + }, + { + "type": "primitive_type", + "named": true + }, + { + "type": "scoped_type_identifier", + "named": true + }, + { + "type": "tuple_type", + "named": true + }, + { + "type": "type_identifier", + "named": true + }, + { + "type": "unit_type", + "named": true + } + ] + } + } + }, + { + "type": "field_declaration_list", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "attribute_item", + "named": true + }, + { + "type": "field_declaration", + "named": true + } + ] + } + }, + { + "type": "field_expression", + "named": true, + "fields": { + "field": { + "multiple": false, + "required": true, + "types": [ + { + "type": "field_identifier", + "named": true + } + ] + }, + "value": { + "multiple": false, + "required": true, + "types": [ + { + "type": "_cairo_1_expression", + "named": true + } + ] + } + } + }, + { + "type": "field_initializer", + "named": true, + "fields": { + "name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "field_identifier", + "named": true + } + ] + }, + "value": { + "multiple": false, + "required": true, + "types": [ + { + "type": "_cairo_1_expression", + "named": true + } + ] + } + }, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "attribute_item", + "named": true + } + ] + } + }, + { + "type": "field_initializer_list", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "base_field_initializer", + "named": true + }, + { + "type": "field_initializer", + "named": true + }, + { + "type": "shorthand_field_initializer", + "named": true + } + ] + } + }, + { + "type": "field_pattern", + "named": true, + "fields": { + "name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "field_identifier", + "named": true + }, + { + "type": "shorthand_field_identifier", + "named": true + } + ] + }, + "pattern": { + "multiple": false, + "required": false, + "types": [ + { + "type": "_pattern", + "named": true + } + ] + } + } + }, + { + "type": "function_definition", + "named": true, + "fields": { + "returns": { + "multiple": false, + "required": false, + "types": [ + { + "type": "abstract_type", + "named": true + }, + { + "type": "at_type", + "named": true + }, + { + "type": "generic_type", + "named": true + }, + { + "type": "primitive_type", + "named": true + }, + { + "type": "scoped_type_identifier", + "named": true + }, + { + "type": "tuple_type", + "named": true + }, + { + "type": "type_identifier", + "named": true + }, + { + "type": "unit_type", + "named": true + } + ] + } + }, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "_cairo_0_statement", + "named": true + }, + { + "type": "arguments", + "named": true + }, + { + "type": "block", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "implicit_arguments", + "named": true + }, + { + "type": "parameter", + "named": true + }, + { + "type": "return_type", + "named": true + }, + { + "type": "type_parameters", + "named": true + } + ] + } + }, + { + "type": "function_signature", + "named": true, + "fields": { + "returns": { + "multiple": false, + "required": false, + "types": [ + { + "type": "abstract_type", + "named": true + }, + { + "type": "at_type", + "named": true + }, + { + "type": "generic_type", + "named": true + }, + { + "type": "primitive_type", + "named": true + }, + { + "type": "scoped_type_identifier", + "named": true + }, + { + "type": "tuple_type", + "named": true + }, + { + "type": "type_identifier", + "named": true + }, + { + "type": "unit_type", + "named": true + } + ] + } + }, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + }, + { + "type": "parameter", + "named": true + }, + { + "type": "type_parameters", + "named": true + } + ] + } + }, + { + "type": "generic_function", + "named": true, + "fields": { + "function": { + "multiple": false, + "required": true, + "types": [ + { + "type": "field_expression", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "scoped_identifier", + "named": true + } + ] + } + }, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "type_arguments", + "named": true + } + ] + } + }, + { + "type": "generic_type", + "named": true, + "fields": { + "type": { + "multiple": false, + "required": true, + "types": [ + { + "type": "scoped_identifier", + "named": true + }, + { + "type": "scoped_type_identifier", + "named": true + }, + { + "type": "type_identifier", + "named": true + } + ] + } + }, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "type_arguments", + "named": true + } + ] + } + }, + { + "type": "hint", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": false, + "types": [ + { + "type": "python_code", + "named": true + } + ] + } + }, + { + "type": "hint_expression", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "hint", + "named": true + } + ] + } + }, + { + "type": "if_expression", + "named": true, + "fields": { + "alternative": { + "multiple": false, + "required": false, + "types": [ + { + "type": "else_clause", + "named": true + } + ] + }, + "condition": { + "multiple": false, + "required": true, + "types": [ + { + "type": "_cairo_1_expression", + "named": true + } + ] + }, + "consequence": { + "multiple": false, + "required": true, + "types": [ + { + "type": "block", + "named": true + } + ] + } + } + }, + { + "type": "if_statement", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "_cairo_0_statement", + "named": true + }, + { + "type": "assignment_expression", + "named": true + }, + { + "type": "binary_expression", + "named": true + }, + { + "type": "call_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "number", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "short_string", + "named": true + }, + { + "type": "subscript_expression", + "named": true + }, + { + "type": "tuple_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + } + }, + { + "type": "impl_item", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "abstract_type", + "named": true + }, + { + "type": "at_type", + "named": true + }, + { + "type": "block", + "named": true + }, + { + "type": "generic_type", + "named": true + }, + { + "type": "primitive_type", + "named": true + }, + { + "type": "scoped_type_identifier", + "named": true + }, + { + "type": "tuple_type", + "named": true + }, + { + "type": "type_identifier", + "named": true + }, + { + "type": "unit_type", + "named": true + } + ] + } + }, + { + "type": "implicit_arguments", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "typed_identifier", + "named": true + } + ] + } + }, + { + "type": "import_statement", + "named": true, + "fields": { + "module_name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "dotted_name", + "named": true + } + ] + }, + "name": { + "multiple": true, + "required": true, + "types": [ + { + "type": "aliased_import", + "named": true + }, + { + "type": "dotted_name", + "named": true + } + ] + } + } + }, + { + "type": "index_expression", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "_cairo_1_expression", + "named": true + } + ] + } + }, + { + "type": "inst_add_ap", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "assignment_expression", + "named": true + }, + { + "type": "binary_expression", + "named": true + }, + { + "type": "call_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "number", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "short_string", + "named": true + }, + { + "type": "subscript_expression", + "named": true + }, + { + "type": "tuple_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + } + }, + { + "type": "inst_assert_eq", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "assignment_expression", + "named": true + }, + { + "type": "binary_expression", + "named": true + }, + { + "type": "call_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "number", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "short_string", + "named": true + }, + { + "type": "subscript_expression", + "named": true + }, + { + "type": "tuple_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + } + }, + { + "type": "inst_data_word", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "assignment_expression", + "named": true + }, + { + "type": "binary_expression", + "named": true + }, + { + "type": "call_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "number", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "short_string", + "named": true + }, + { + "type": "subscript_expression", + "named": true + }, + { + "type": "tuple_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + } + }, + { + "type": "inst_jmp_abs", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "assignment_expression", + "named": true + }, + { + "type": "binary_expression", + "named": true + }, + { + "type": "call_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "number", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "short_string", + "named": true + }, + { + "type": "subscript_expression", + "named": true + }, + { + "type": "tuple_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + } + }, + { + "type": "inst_jmp_rel", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "assignment_expression", + "named": true + }, + { + "type": "binary_expression", + "named": true + }, + { + "type": "call_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "number", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "short_string", + "named": true + }, + { + "type": "subscript_expression", + "named": true + }, + { + "type": "tuple_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + } + }, + { + "type": "inst_jmp_to_label", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + } + }, + { + "type": "inst_jnz", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "assignment_expression", + "named": true + }, + { + "type": "binary_expression", + "named": true + }, + { + "type": "call_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "number", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "short_string", + "named": true + }, + { + "type": "subscript_expression", + "named": true + }, + { + "type": "tuple_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + } + }, + { + "type": "inst_jnz_to_label", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "assignment_expression", + "named": true + }, + { + "type": "binary_expression", + "named": true + }, + { + "type": "call_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "number", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "short_string", + "named": true + }, + { + "type": "subscript_expression", + "named": true + }, + { + "type": "tuple_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + } + }, + { + "type": "instruction", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "_instruction_body", + "named": true + } + ] + } + }, + { + "type": "label", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "_cairo_0_statement", + "named": true + }, + { + "type": "identifier", + "named": true + } + ] + } + }, + { + "type": "lang_directive", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + } + }, + { + "type": "let_binding", + "named": true, + "fields": { + "left": { + "multiple": true, + "required": true, + "types": [ + { + "type": "(", + "named": false + }, + { + "type": ")", + "named": false + }, + { + "type": ",", + "named": false + }, + { + "type": "typed_identifier", + "named": true + } + ] + }, + "right": { + "multiple": false, + "required": true, + "types": [ + { + "type": "assignment_expression", + "named": true + }, + { + "type": "binary_expression", + "named": true + }, + { + "type": "call_expression", + "named": true + }, + { + "type": "call_instruction", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "number", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "short_string", + "named": true + }, + { + "type": "subscript_expression", + "named": true + }, + { + "type": "tuple_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + } + } + }, + { + "type": "let_declaration", + "named": true, + "fields": { + "pattern": { + "multiple": false, + "required": true, + "types": [ + { + "type": "_pattern", + "named": true + } + ] + }, + "type": { + "multiple": false, + "required": false, + "types": [ + { + "type": "abstract_type", + "named": true + }, + { + "type": "at_type", + "named": true + }, + { + "type": "generic_type", + "named": true + }, + { + "type": "primitive_type", + "named": true + }, + { + "type": "scoped_type_identifier", + "named": true + }, + { + "type": "tuple_type", + "named": true + }, + { + "type": "type_identifier", + "named": true + }, + { + "type": "unit_type", + "named": true + } + ] + }, + "value": { + "multiple": false, + "required": false, + "types": [ + { + "type": "_cairo_1_expression", + "named": true + } + ] + } + } + }, + { + "type": "local_var_declaration", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "assignment_expression", + "named": true + }, + { + "type": "binary_expression", + "named": true + }, + { + "type": "call_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "number", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "short_string", + "named": true + }, + { + "type": "subscript_expression", + "named": true + }, + { + "type": "tuple_expression", + "named": true + }, + { + "type": "typed_identifier", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + } + }, + { + "type": "loop_expression", + "named": true, + "fields": { + "body": { + "multiple": false, + "required": true, + "types": [ + { + "type": "block", + "named": true + } + ] + } + } + }, + { + "type": "match_arm", + "named": true, + "fields": { + "pattern": { + "multiple": false, + "required": true, + "types": [ + { + "type": "match_pattern", + "named": true + } + ] + }, + "value": { + "multiple": false, + "required": true, + "types": [ + { + "type": "_cairo_1_expression", + "named": true + } + ] + } + }, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "attribute_item", + "named": true + } + ] + } + }, + { + "type": "match_block", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "match_arm", + "named": true + } + ] + } + }, + { + "type": "match_expression", + "named": true, + "fields": { + "body": { + "multiple": false, + "required": true, + "types": [ + { + "type": "match_block", + "named": true + } + ] + }, + "value": { + "multiple": false, + "required": true, + "types": [ + { + "type": "_cairo_1_expression", + "named": true + } + ] + } + } + }, + { + "type": "match_pattern", + "named": true, + "fields": { + "condition": { + "multiple": false, + "required": false, + "types": [ + { + "type": "_cairo_1_expression", + "named": true + } + ] + } + }, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "_pattern", + "named": true + } + ] + } + }, + { + "type": "member_expression", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "assignment_expression", + "named": true + }, + { + "type": "binary_expression", + "named": true + }, + { + "type": "call_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "number", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "short_string", + "named": true + }, + { + "type": "subscript_expression", + "named": true + }, + { + "type": "tuple_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + } + }, + { + "type": "mod_item", + "named": true, + "fields": { + "body": { + "multiple": false, + "required": false, + "types": [ + { + "type": "declaration_list", + "named": true + } + ] + }, + "name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + } + } + }, + { + "type": "named_type", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + }, + { + "type": "type", + "named": true + } + ] + } + }, + { + "type": "namespace_definition", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "_cairo_0_statement", + "named": true + }, + { + "type": "identifier", + "named": true + } + ] + } + }, + { + "type": "parameter", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "abstract_type", + "named": true + }, + { + "type": "at_type", + "named": true + }, + { + "type": "generic_type", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "primitive_type", + "named": true + }, + { + "type": "scoped_type_identifier", + "named": true + }, + { + "type": "self", + "named": true + }, + { + "type": "tuple_type", + "named": true + }, + { + "type": "type_identifier", + "named": true + }, + { + "type": "unit_type", + "named": true + } + ] + } + }, + { + "type": "parenthesized_expression", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "_cairo_1_expression", + "named": true + } + ] + } + }, + { + "type": "pointer_type", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "builtin_type", + "named": true + }, + { + "type": "hint", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "pointer_type", + "named": true + }, + { + "type": "tuple_type", + "named": true + } + ] + } + }, + { + "type": "program", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": false, + "types": [ + { + "type": "cairo_0_file", + "named": true + }, + { + "type": "cairo_1_file", + "named": true + } + ] + } + }, + { + "type": "python_code", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "code_line", + "named": true + } + ] + } + }, + { + "type": "register", + "named": true, + "fields": {} + }, + { + "type": "return_expression", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": false, + "types": [ + { + "type": "_cairo_1_expression", + "named": true + } + ] + } + }, + { + "type": "return_statement", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "assignment_expression", + "named": true + }, + { + "type": "binary_expression", + "named": true + }, + { + "type": "call_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "number", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "short_string", + "named": true + }, + { + "type": "subscript_expression", + "named": true + }, + { + "type": "tuple_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + } + }, + { + "type": "return_type", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "builtin_type", + "named": true + }, + { + "type": "hint", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "named_type", + "named": true + }, + { + "type": "pointer_type", + "named": true + }, + { + "type": "tuple_type", + "named": true + } + ] + } + }, + { + "type": "scoped_identifier", + "named": true, + "fields": { + "name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + } + ] + }, + "path": { + "multiple": false, + "required": false, + "types": [ + { + "type": "generic_type", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "scoped_identifier", + "named": true + }, + { + "type": "self", + "named": true + } + ] + } + } + }, + { + "type": "scoped_type_identifier", + "named": true, + "fields": { + "name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "type_identifier", + "named": true + } + ] + }, + "path": { + "multiple": false, + "required": false, + "types": [ + { + "type": "generic_type", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "scoped_identifier", + "named": true + }, + { + "type": "self", + "named": true + } + ] + } + } + }, + { + "type": "scoped_use_list", + "named": true, + "fields": { + "list": { + "multiple": false, + "required": true, + "types": [ + { + "type": "use_list", + "named": true + } + ] + }, + "path": { + "multiple": false, + "required": false, + "types": [ + { + "type": "identifier", + "named": true + }, + { + "type": "scoped_identifier", + "named": true + }, + { + "type": "self", + "named": true + } + ] + } + } + }, + { + "type": "shorthand_field_initializer", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "attribute_item", + "named": true + }, + { + "type": "identifier", + "named": true + } + ] + } + }, + { + "type": "static_assert_statement", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "assignment_expression", + "named": true + }, + { + "type": "binary_expression", + "named": true + }, + { + "type": "call_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "number", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "short_string", + "named": true + }, + { + "type": "subscript_expression", + "named": true + }, + { + "type": "tuple_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + } + }, + { + "type": "struct_definition", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + }, + { + "type": "typed_identifier", + "named": true + } + ] + } + }, + { + "type": "struct_expression", + "named": true, + "fields": { + "body": { + "multiple": false, + "required": true, + "types": [ + { + "type": "field_initializer_list", + "named": true + } + ] + }, + "name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "primitive_type", + "named": true + }, + { + "type": "type_identifier", + "named": true + } + ] + } + } + }, + { + "type": "struct_item", + "named": true, + "fields": { + "body": { + "multiple": false, + "required": false, + "types": [ + { + "type": "field_declaration_list", + "named": true + } + ] + }, + "name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "type_identifier", + "named": true + } + ] + }, + "type_parameters": { + "multiple": false, + "required": false, + "types": [ + { + "type": "type_parameters", + "named": true + } + ] + } + } + }, + { + "type": "struct_pattern", + "named": true, + "fields": { + "type": { + "multiple": false, + "required": true, + "types": [ + { + "type": "primitive_type", + "named": true + }, + { + "type": "scoped_type_identifier", + "named": true + }, + { + "type": "type_identifier", + "named": true + } + ] + } + }, + "children": { + "multiple": true, + "required": false, + "types": [ + { + "type": "field_pattern", + "named": true + } + ] + } + }, + { + "type": "subscript_expression", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "assignment_expression", + "named": true + }, + { + "type": "binary_expression", + "named": true + }, + { + "type": "call_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "number", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "short_string", + "named": true + }, + { + "type": "subscript_expression", + "named": true + }, + { + "type": "tuple_expression", + "named": true + }, + { + "type": "unary_expression", "named": true } ] } }, { - "type": "inst_jmp_abs", + "type": "temp_var_declaration", "named": true, "fields": {}, "children": { - "multiple": false, + "multiple": true, "required": true, "types": [ { - "type": "expression", + "type": "assignment_expression", "named": true - } - ] - } - }, - { - "type": "inst_jmp_rel", - "named": true, - "fields": {}, - "children": { - "multiple": false, - "required": true, - "types": [ + }, { - "type": "expression", + "type": "binary_expression", "named": true - } - ] - } - }, - { - "type": "inst_jmp_to_label", - "named": true, - "fields": {}, - "children": { - "multiple": false, - "required": true, - "types": [ + }, + { + "type": "call_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, { "type": "identifier", "named": true - } - ] - } - }, - { - "type": "inst_jnz", - "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": true, - "types": [ + }, { - "type": "expression", + "type": "member_expression", "named": true }, { "type": "number", "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "short_string", + "named": true + }, + { + "type": "subscript_expression", + "named": true + }, + { + "type": "tuple_expression", + "named": true + }, + { + "type": "typed_identifier", + "named": true + }, + { + "type": "unary_expression", + "named": true } ] } }, { - "type": "inst_jnz_to_label", + "type": "trait_bounds", "named": true, "fields": {}, "children": { - "multiple": true, + "multiple": false, "required": true, "types": [ { - "type": "expression", + "type": "abstract_type", "named": true }, { - "type": "identifier", + "type": "at_type", "named": true }, { - "type": "number", + "type": "generic_type", + "named": true + }, + { + "type": "primitive_type", + "named": true + }, + { + "type": "scoped_type_identifier", + "named": true + }, + { + "type": "tuple_type", + "named": true + }, + { + "type": "type_identifier", + "named": true + }, + { + "type": "unit_type", "named": true } ] } }, { - "type": "instruction", + "type": "trait_item", + "named": true, + "fields": { + "body": { + "multiple": false, + "required": false, + "types": [ + { + "type": "declaration_list", + "named": true + } + ] + }, + "bounds": { + "multiple": false, + "required": false, + "types": [ + { + "type": "trait_bounds", + "named": true + } + ] + }, + "name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "type_identifier", + "named": true + } + ] + }, + "type_parameters": { + "multiple": false, + "required": false, + "types": [ + { + "type": "type_parameters", + "named": true + } + ] + } + } + }, + { + "type": "try_expression", "named": true, "fields": {}, "children": { @@ -834,178 +4340,181 @@ "required": true, "types": [ { - "type": "_instruction_body", + "type": "_cairo_1_expression", "named": true } ] } }, { - "type": "label", + "type": "tuple_expression", "named": true, "fields": {}, "children": { "multiple": true, - "required": true, + "required": false, "types": [ { - "type": "cairo_0_statement", + "type": "_cairo_1_expression", "named": true }, { - "type": "identifier", + "type": "attribute_item", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "subscript_expression", "named": true } ] } }, { - "type": "lang_directive", + "type": "tuple_pattern", "named": true, "fields": {}, "children": { - "multiple": false, - "required": true, + "multiple": true, + "required": false, "types": [ { - "type": "identifier", + "type": "_pattern", "named": true } ] } }, { - "type": "let_binding", + "type": "tuple_struct_pattern", "named": true, "fields": { - "left": { - "multiple": true, - "required": true, - "types": [ - { - "type": "(", - "named": false - }, - { - "type": ")", - "named": false - }, - { - "type": ",", - "named": false - }, - { - "type": "typed_identifier", - "named": true - } - ] - }, - "right": { + "type": { "multiple": false, "required": true, "types": [ { - "type": "call_instruction", + "type": "identifier", "named": true }, { - "type": "expression", + "type": "scoped_identifier", "named": true } ] } - } - }, - { - "type": "local_var_declaration", - "named": true, - "fields": {}, + }, "children": { "multiple": true, - "required": true, + "required": false, "types": [ { - "type": "expression", - "named": true - }, - { - "type": "typed_identifier", + "type": "_pattern", "named": true } ] } }, { - "type": "member_expression", + "type": "tuple_type", "named": true, "fields": {}, "children": { "multiple": true, - "required": true, + "required": false, "types": [ { - "type": "expression", + "type": "abstract_type", + "named": true + }, + { + "type": "at_type", + "named": true + }, + { + "type": "builtin_type", + "named": true + }, + { + "type": "generic_type", + "named": true + }, + { + "type": "hint", "named": true }, { "type": "identifier", "named": true - } - ] - } - }, - { - "type": "named_type", - "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": true, - "types": [ + }, + { + "type": "named_type", + "named": true + }, + { + "type": "pointer_type", + "named": true + }, + { + "type": "primitive_type", + "named": true + }, { - "type": "identifier", + "type": "scoped_type_identifier", "named": true }, { - "type": "non_identifier_type", + "type": "tuple_type", "named": true }, { - "type": "type", + "type": "type_identifier", + "named": true + }, + { + "type": "unit_type", "named": true } ] } }, { - "type": "namespace_definition", + "type": "type", "named": true, "fields": {}, "children": { - "multiple": true, + "multiple": false, "required": true, "types": [ { - "type": "cairo_0_statement", + "type": "builtin_type", "named": true }, { - "type": "identifier", + "type": "hint", "named": true - } - ] - } - }, - { - "type": "non_identifier_type", - "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": false, - "types": [ + }, { - "type": "hint", + "type": "identifier", "named": true }, { @@ -1013,121 +4522,69 @@ "named": true }, { - "type": "type", + "type": "pointer_type", "named": true - } - ] - } - }, - { - "type": "program", - "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": false, - "types": [ + }, { - "type": "cairo_0_statement", + "type": "tuple_type", "named": true } ] } }, { - "type": "register", - "named": true, - "fields": {} - }, - { - "type": "return_statement", + "type": "type_arguments", "named": true, "fields": {}, "children": { - "multiple": false, + "multiple": true, "required": true, "types": [ { - "type": "expression", + "type": "abstract_type", "named": true - } - ] - } - }, - { - "type": "return_type", - "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": false, - "types": [ + }, { - "type": "named_type", + "type": "at_type", "named": true }, { - "type": "non_identifier_type", + "type": "block", "named": true }, { - "type": "typed_identifier", + "type": "generic_type", "named": true - } - ] - } - }, - { - "type": "static_assert_statement", - "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": true, - "types": [ + }, { - "type": "expression", + "type": "number", "named": true - } - ] - } - }, - { - "type": "struct_definition", - "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": true, - "types": [ + }, { - "type": "identifier", + "type": "primitive_type", "named": true }, { - "type": "typed_identifier", + "type": "scoped_type_identifier", "named": true - } - ] - } - }, - { - "type": "subscript_expression", - "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": true, - "types": [ + }, + { + "type": "tuple_type", + "named": true + }, + { + "type": "type_identifier", + "named": true + }, { - "type": "expression", + "type": "unit_type", "named": true } ] } }, { - "type": "temp_var_declaration", + "type": "type_definition", "named": true, "fields": {}, "children": { @@ -1135,52 +4592,105 @@ "required": true, "types": [ { - "type": "expression", + "type": "identifier", "named": true }, { - "type": "typed_identifier", + "type": "type", "named": true } ] } }, { - "type": "tuple_expression", + "type": "type_item", "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": false, - "types": [ - { - "type": "expression", - "named": true - } - ] + "fields": { + "name": { + "multiple": false, + "required": true, + "types": [ + { + "type": "type_identifier", + "named": true + } + ] + }, + "type": { + "multiple": false, + "required": true, + "types": [ + { + "type": "abstract_type", + "named": true + }, + { + "type": "at_type", + "named": true + }, + { + "type": "generic_type", + "named": true + }, + { + "type": "primitive_type", + "named": true + }, + { + "type": "scoped_type_identifier", + "named": true + }, + { + "type": "tuple_type", + "named": true + }, + { + "type": "type_identifier", + "named": true + }, + { + "type": "unit_type", + "named": true + } + ] + }, + "type_parameters": { + "multiple": false, + "required": false, + "types": [ + { + "type": "type_parameters", + "named": true + } + ] + } } }, { - "type": "type", + "type": "type_parameters", "named": true, "fields": {}, "children": { - "multiple": false, + "multiple": true, "required": true, "types": [ { - "type": "named_type", + "type": "abstract_type", + "named": true + }, + { + "type": "constrained_type_parameter", "named": true }, { - "type": "non_identifier_type", + "type": "type_identifier", "named": true } ] } }, { - "type": "type_definition", + "type": "typed_identifier", "named": true, "fields": {}, "children": { @@ -1199,58 +4709,216 @@ } }, { - "type": "typed_identifier", + "type": "unary_expression", "named": true, - "fields": {}, + "fields": { + "operand": { + "multiple": false, + "required": false, + "types": [ + { + "type": "assignment_expression", + "named": true + }, + { + "type": "binary_expression", + "named": true + }, + { + "type": "call_expression", + "named": true + }, + { + "type": "cast_expression", + "named": true + }, + { + "type": "deref_expression", + "named": true + }, + { + "type": "hint_expression", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "member_expression", + "named": true + }, + { + "type": "number", + "named": true + }, + { + "type": "register", + "named": true + }, + { + "type": "short_string", + "named": true + }, + { + "type": "subscript_expression", + "named": true + }, + { + "type": "tuple_expression", + "named": true + }, + { + "type": "unary_expression", + "named": true + } + ] + }, + "operator": { + "multiple": false, + "required": false, + "types": [ + { + "type": "&", + "named": false + }, + { + "type": "-", + "named": false + }, + { + "type": "new", + "named": false + } + ] + } + }, "children": { - "multiple": true, - "required": true, + "multiple": false, + "required": false, "types": [ { - "type": "identifier", - "named": true - }, - { - "type": "type", + "type": "_cairo_1_expression", "named": true } ] } }, { - "type": "unary_expression", + "type": "unit_expression", + "named": true, + "fields": {} + }, + { + "type": "unit_type", + "named": true, + "fields": {} + }, + { + "type": "use_as_clause", "named": true, "fields": { - "operand": { + "alias": { "multiple": false, "required": true, "types": [ { - "type": "expression", + "type": "identifier", "named": true } ] }, - "operator": { + "path": { "multiple": false, "required": true, "types": [ { - "type": "&", - "named": false + "type": "identifier", + "named": true }, { - "type": "-", - "named": false + "type": "scoped_identifier", + "named": true }, { - "type": "new", - "named": false + "type": "self", + "named": true + } + ] + } + } + }, + { + "type": "use_declaration", + "named": true, + "fields": { + "argument": { + "multiple": false, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + }, + { + "type": "scoped_identifier", + "named": true + }, + { + "type": "scoped_use_list", + "named": true + }, + { + "type": "self", + "named": true + }, + { + "type": "use_as_clause", + "named": true + }, + { + "type": "use_list", + "named": true } ] } } }, + { + "type": "use_list", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + }, + { + "type": "scoped_identifier", + "named": true + }, + { + "type": "scoped_use_list", + "named": true + }, + { + "type": "self", + "named": true + }, + { + "type": "use_as_clause", + "named": true + }, + { + "type": "use_list", + "named": true + } + ] + } + }, { "type": "with_statement", "named": true, @@ -1260,7 +4928,7 @@ "required": true, "types": [ { - "type": "cairo_0_statement", + "type": "_cairo_0_statement", "named": true }, { @@ -1270,10 +4938,30 @@ ] } }, + { + "type": "\n", + "named": false + }, + { + "type": "!", + "named": false + }, { "type": "!=", "named": false }, + { + "type": "#", + "named": false + }, + { + "type": "%", + "named": false + }, + { + "type": "%=", + "named": false + }, { "type": "%builtins", "named": false @@ -1282,10 +4970,26 @@ "type": "%lang", "named": false }, + { + "type": "%{", + "named": false + }, + { + "type": "%}", + "named": false + }, { "type": "&", "named": false }, + { + "type": "&&", + "named": false + }, + { + "type": "&=", + "named": false + }, { "type": "(", "named": false @@ -1302,6 +5006,10 @@ "type": "**", "named": false }, + { + "type": "*=", + "named": false + }, { "type": "+", "named": false @@ -1322,6 +5030,10 @@ "type": "-", "named": false }, + { + "type": "-=", + "named": false + }, { "type": "->", "named": false @@ -1330,18 +5042,46 @@ "type": ".", "named": false }, + { + "type": "..", + "named": false + }, { "type": "/", "named": false }, + { + "type": "/=", + "named": false + }, { "type": ":", "named": false }, + { + "type": "::", + "named": false + }, { "type": ";", "named": false }, + { + "type": "<", + "named": false + }, + { + "type": "<<", + "named": false + }, + { + "type": "<<=", + "named": false + }, + { + "type": "<=", + "named": false + }, { "type": "=", "named": false @@ -1350,6 +5090,30 @@ "type": "==", "named": false }, + { + "type": "=>", + "named": false + }, + { + "type": ">", + "named": false + }, + { + "type": ">=", + "named": false + }, + { + "type": ">>", + "named": false + }, + { + "type": ">>=", + "named": false + }, + { + "type": "?", + "named": false + }, { "type": "@", "named": false @@ -1362,6 +5126,18 @@ "type": "]", "named": false }, + { + "type": "^", + "named": false + }, + { + "type": "^=", + "named": false + }, + { + "type": "_", + "named": false + }, { "type": "abs", "named": false @@ -1394,6 +5170,10 @@ "type": "cast", "named": false }, + { + "type": "code_line", + "named": true + }, { "type": "codeoffset", "named": false @@ -1414,10 +5194,34 @@ "type": "else", "named": false }, + { + "type": "end", + "named": false + }, + { + "type": "enum", + "named": false + }, + { + "type": "extern", + "named": false + }, + { + "type": "false", + "named": false + }, { "type": "felt", "named": false }, + { + "type": "field_identifier", + "named": true + }, + { + "type": "fn", + "named": false + }, { "type": "fp", "named": false @@ -1430,10 +5234,6 @@ "type": "func", "named": false }, - { - "type": "hint", - "named": true - }, { "type": "identifier", "named": true @@ -1442,6 +5242,14 @@ "type": "if", "named": false }, + { + "type": "impl", + "named": false + }, + { + "type": "implicits", + "named": false + }, { "type": "import", "named": false @@ -1462,6 +5270,22 @@ "type": "local", "named": false }, + { + "type": "loop", + "named": false + }, + { + "type": "match", + "named": false + }, + { + "type": "mod", + "named": false + }, + { + "type": "mut", + "named": false + }, { "type": "namespace", "named": false @@ -1474,10 +5298,26 @@ "type": "nondet", "named": false }, + { + "type": "nopanic", + "named": false + }, { "type": "number", "named": true }, + { + "type": "of", + "named": false + }, + { + "type": "primitive_type", + "named": true + }, + { + "type": "ref", + "named": false + }, { "type": "rel", "named": false @@ -1486,10 +5326,18 @@ "type": "return", "named": false }, + { + "type": "self", + "named": true + }, { "type": "short_string", "named": true }, + { + "type": "shorthand_field_identifier", + "named": true + }, { "type": "static_assert", "named": false @@ -1506,6 +5354,26 @@ "type": "tempvar", "named": false }, + { + "type": "trait", + "named": false + }, + { + "type": "true", + "named": false + }, + { + "type": "type", + "named": false + }, + { + "type": "type_identifier", + "named": true + }, + { + "type": "use", + "named": false + }, { "type": "using", "named": false @@ -1522,8 +5390,24 @@ "type": "{", "named": false }, + { + "type": "|", + "named": false + }, + { + "type": "|=", + "named": false + }, + { + "type": "||", + "named": false + }, { "type": "}", "named": false + }, + { + "type": "~", + "named": false } ] \ No newline at end of file diff --git a/src/parser.c b/src/parser.c index 8757ac3..8327090 100644 --- a/src/parser.c +++ b/src/parser.c @@ -6,15 +6,15 @@ #endif #define LANGUAGE_VERSION 14 -#define STATE_COUNT 522 -#define LARGE_STATE_COUNT 59 -#define SYMBOL_COUNT 132 -#define ALIAS_COUNT 1 -#define TOKEN_COUNT 65 -#define EXTERNAL_TOKEN_COUNT 1 -#define FIELD_COUNT 8 -#define MAX_ALIAS_SEQUENCE_LENGTH 11 -#define PRODUCTION_ID_COUNT 14 +#define STATE_COUNT 1953 +#define LARGE_STATE_COUNT 210 +#define SYMBOL_COUNT 309 +#define ALIAS_COUNT 5 +#define TOKEN_COUNT 138 +#define EXTERNAL_TOKEN_COUNT 3 +#define FIELD_COUNT 24 +#define MAX_ALIAS_SEQUENCE_LENGTH 14 +#define PRODUCTION_ID_COUNT 114 enum { sym_identifier = 1, @@ -26,35 +26,35 @@ enum { anon_sym_as = 7, anon_sym_using = 8, anon_sym_EQ = 9, - anon_sym_SEMI = 10, - anon_sym_PERCENTbuiltins = 11, - anon_sym_PERCENTlang = 12, - anon_sym_AT = 13, - anon_sym_namespace = 14, - anon_sym_LBRACE = 15, - anon_sym_RBRACE = 16, - anon_sym_struct = 17, - anon_sym_func = 18, - anon_sym_DASH_GT = 19, - anon_sym_alloc_locals = 20, - anon_sym_assert = 21, - anon_sym_static_assert = 22, - anon_sym_EQ_EQ = 23, - anon_sym_let = 24, - anon_sym_const = 25, - anon_sym_local = 26, - anon_sym_tempvar = 27, - anon_sym_ap = 28, - anon_sym_PLUS_PLUS = 29, - anon_sym_jmp = 30, - anon_sym_rel = 31, - anon_sym_abs = 32, - anon_sym_if = 33, - anon_sym_BANG_EQ = 34, - sym_inst_ret = 35, - anon_sym_PLUS_EQ = 36, - anon_sym_dw = 37, - anon_sym_COLON = 38, + anon_sym_PERCENTbuiltins = 10, + anon_sym_PERCENTlang = 11, + anon_sym_AT = 12, + anon_sym_namespace = 13, + anon_sym_LBRACE = 14, + anon_sym_RBRACE = 15, + anon_sym_struct = 16, + anon_sym_func = 17, + anon_sym_DASH_GT = 18, + anon_sym_COLON = 19, + anon_sym_end = 20, + anon_sym_alloc_locals = 21, + anon_sym_assert = 22, + anon_sym_static_assert = 23, + anon_sym_EQ_EQ = 24, + anon_sym_let = 25, + anon_sym_const = 26, + anon_sym_local = 27, + anon_sym_tempvar = 28, + anon_sym_ap = 29, + anon_sym_PLUS_PLUS = 30, + anon_sym_jmp = 31, + anon_sym_rel = 32, + anon_sym_abs = 33, + anon_sym_if = 34, + anon_sym_BANG_EQ = 35, + sym_inst_ret = 36, + anon_sym_PLUS_EQ = 37, + anon_sym_dw = 38, anon_sym_with_attr = 39, anon_sym_else = 40, anon_sym_with = 41, @@ -72,83 +72,264 @@ enum { sym_string = 53, sym_short_string = 54, anon_sym_nondet = 55, - anon_sym_fp = 56, - anon_sym_LBRACK = 57, - anon_sym_RBRACK = 58, - anon_sym_DOT = 59, - anon_sym_cast = 60, - anon_sym_call = 61, - sym_number = 62, - sym_comment = 63, - sym_hint = 64, - sym_program = 65, - sym_cairo_0_statement = 66, - sym_import_statement = 67, - sym__import_list = 68, - sym_aliased_import = 69, - sym_type_definition = 70, - sym_builtin_directive = 71, - sym_lang_directive = 72, - sym_decorated_definition = 73, - sym_decorator = 74, - sym_namespace_definition = 75, - sym_struct_definition = 76, - sym_function_definition = 77, - sym_implicit_arguments = 78, - sym_arguments = 79, - sym_expression_statement = 80, - sym_alloc_locals = 81, - sym_assert_statement = 82, - sym_static_assert_statement = 83, - sym_let_binding = 84, - sym_const_var_declaration = 85, - sym_local_var_declaration = 86, - sym_temp_var_declaration = 87, - sym_instruction = 88, - sym_inst_assert_eq = 89, - sym_inst_jmp_rel = 90, - sym_inst_jmp_abs = 91, - sym_inst_jmp_to_label = 92, - sym_inst_jnz = 93, - sym_inst_jnz_to_label = 94, - sym_inst_add_ap = 95, - sym_inst_data_word = 96, - sym_label = 97, - sym_attribute_statement = 98, - sym_if_statement = 99, - sym_with_statement = 100, - sym_return_statement = 101, - sym_non_identifier_type = 102, - sym_type = 103, - sym_named_type = 104, - sym_expression = 105, - sym_unary_expression = 106, - sym_binary_expression = 107, - sym_assignment_expression = 108, - sym_hint_expression = 109, - sym_register = 110, - sym_deref_expression = 111, - sym_subscript_expression = 112, - sym_member_expression = 113, - sym_cast_expression = 114, - sym_tuple_expression = 115, - sym_call_expression = 116, - sym__ref_binding = 117, - sym_call_instruction = 118, - sym_typed_identifier = 119, - sym_dotted_name = 120, - aux_sym_program_repeat1 = 121, - aux_sym__import_list_repeat1 = 122, - aux_sym_builtin_directive_repeat1 = 123, - aux_sym_decorated_definition_repeat1 = 124, - aux_sym_struct_definition_repeat1 = 125, - aux_sym_attribute_statement_repeat1 = 126, - aux_sym_with_statement_repeat1 = 127, - aux_sym_non_identifier_type_repeat1 = 128, - aux_sym_tuple_expression_repeat1 = 129, - aux_sym_call_expression_repeat1 = 130, - aux_sym_dotted_name_repeat1 = 131, - alias_sym_return_type = 132, + anon_sym_PERCENT_LBRACE = 56, + anon_sym_PERCENT_RBRACE = 57, + anon_sym_fp = 58, + anon_sym_LBRACK = 59, + anon_sym_RBRACK = 60, + anon_sym_DOT = 61, + anon_sym_cast = 62, + anon_sym_call = 63, + sym_number = 64, + anon_sym_SEMI = 65, + anon_sym_LF = 66, + sym_comment = 67, + anon_sym_use = 68, + anon_sym_extern = 69, + anon_sym_type = 70, + anon_sym_COLON_COLON = 71, + anon_sym_fn = 72, + anon_sym_POUND = 73, + anon_sym_mod = 74, + anon_sym_enum = 75, + anon_sym_implicits = 76, + anon_sym_nopanic = 77, + anon_sym_ref = 78, + anon_sym_mut = 79, + anon_sym_impl = 80, + anon_sym_of = 81, + anon_sym_trait = 82, + anon_sym_u8 = 83, + anon_sym_i8 = 84, + anon_sym_u16 = 85, + anon_sym_i16 = 86, + anon_sym_u32 = 87, + anon_sym_i32 = 88, + anon_sym_u64 = 89, + anon_sym_i64 = 90, + anon_sym_u128 = 91, + anon_sym_i128 = 92, + anon_sym_u256 = 93, + anon_sym_i256 = 94, + anon_sym_isize = 95, + anon_sym_usize = 96, + anon_sym_f32 = 97, + anon_sym_f64 = 98, + anon_sym_felt252 = 99, + anon_sym_bool = 100, + anon_sym_str = 101, + anon_sym_char = 102, + anon_sym_LT = 103, + anon_sym_GT = 104, + anon_sym_match = 105, + anon_sym_EQ_GT = 106, + anon_sym_loop = 107, + anon_sym__ = 108, + anon_sym_DOT_DOT = 109, + anon_sym_BANG = 110, + anon_sym_TILDE = 111, + anon_sym_AMP_AMP = 112, + anon_sym_PIPE_PIPE = 113, + anon_sym_PIPE = 114, + anon_sym_CARET = 115, + anon_sym_LT2 = 116, + anon_sym_LT_EQ = 117, + anon_sym_GT_EQ = 118, + anon_sym_LT_LT = 119, + anon_sym_GT_GT = 120, + anon_sym_PERCENT = 121, + anon_sym_DASH_EQ = 122, + anon_sym_STAR_EQ = 123, + anon_sym_SLASH_EQ = 124, + anon_sym_PERCENT_EQ = 125, + anon_sym_AMP_EQ = 126, + anon_sym_PIPE_EQ = 127, + anon_sym_CARET_EQ = 128, + anon_sym_LT_LT_EQ = 129, + anon_sym_GT_GT_EQ = 130, + anon_sym_QMARK = 131, + sym__cairo_1_short_string = 132, + anon_sym_true = 133, + anon_sym_false = 134, + sym_self = 135, + sym_code_line = 136, + sym__failure = 137, + sym_program = 138, + sym_cairo_0_file = 139, + sym_cairo_1_file = 140, + sym__cairo_0_statement = 141, + sym__cairo_0_import_statement = 142, + sym__import_list = 143, + sym_aliased_import = 144, + sym_type_definition = 145, + sym_builtin_directive = 146, + sym_lang_directive = 147, + sym__cairo_0_decorated_definition = 148, + sym_decorator = 149, + sym__cairo_0_namespace_definition = 150, + sym__cairo_0_struct_definition = 151, + sym__cairo_0_function_definition = 152, + sym_implicit_arguments = 153, + sym_arguments = 154, + sym__cairo_0_expression_statement = 155, + sym_alloc_locals = 156, + sym__cairo_0_assert_statement = 157, + sym__cairo_0_static_assert_statement = 158, + sym__cairo_0_let_binding = 159, + sym_const_var_declaration = 160, + sym_local_var_declaration = 161, + sym_temp_var_declaration = 162, + sym_instruction = 163, + sym_inst_assert_eq = 164, + sym_inst_jmp_rel = 165, + sym_inst_jmp_abs = 166, + sym_inst_jmp_to_label = 167, + sym_inst_jnz = 168, + sym_inst_jnz_to_label = 169, + sym_inst_add_ap = 170, + sym_inst_data_word = 171, + sym_label = 172, + sym__cairo_0_attribute_statement = 173, + sym__cairo_0_if_statement = 174, + sym__cairo_0_with_statement = 175, + sym__cairo_0_return_statement = 176, + sym__non_identifier_type = 177, + sym__cairo_0_builtin_type = 178, + sym__cairo_0_pointer_type = 179, + sym__cairo_0_tuple_type = 180, + sym__cairo_0_type = 181, + sym_named_type = 182, + sym__cairo_0_expression = 183, + sym_unary_expression = 184, + sym_binary_expression = 185, + sym_assignment_expression = 186, + sym_hint_expression = 187, + sym_hint = 188, + sym_python_code = 189, + sym_register = 190, + sym_deref_expression = 191, + sym_subscript_expression = 192, + sym_member_expression = 193, + sym_cast_expression = 194, + sym_tuple_expression = 195, + sym__cairo_0_call_expression = 196, + sym__ref_binding = 197, + sym_call_instruction = 198, + sym_typed_identifier = 199, + sym_dotted_name = 200, + sym__separator = 201, + sym__cairo_1_statement = 202, + sym_use_declaration = 203, + sym_extern_type_statement = 204, + sym__use_clause = 205, + sym_scoped_use_list = 206, + sym_use_list = 207, + sym_use_as_clause = 208, + sym_extern_function_statement = 209, + sym_attribute_item = 210, + sym_attribute_arguments = 211, + sym_mod_item = 212, + sym_struct_item = 213, + sym_enum_item = 214, + sym_enum_variant_list = 215, + sym_enum_variant = 216, + sym_field_declaration_list = 217, + sym_field_declaration = 218, + sym_const_item = 219, + sym_type_item = 220, + sym_block = 221, + sym__cairo_1_function_definition = 222, + sym__function_signature = 223, + sym__cairo_1_function_signature = 224, + sym_parameter = 225, + sym_impl_item = 226, + sym_trait_item = 227, + sym_let_declaration = 228, + sym_declaration_list = 229, + sym__cairo_1_type = 230, + sym_at_type = 231, + sym__cairo_1_generic_function = 232, + sym_generic_type = 233, + sym_generic_type_with_turbofish = 234, + sym__cairo_1_type_arguments = 235, + sym__cairo_1_tuple_type = 236, + sym_unit_type = 237, + sym_abstract_type = 238, + sym__cairo_1_expression_statement = 239, + sym__cairo_1_expression = 240, + sym__cairo_1_return_expression = 241, + sym__cairo_1_if_expression = 242, + sym__cairo_1_else_clause = 243, + sym_match_expression = 244, + sym_match_block = 245, + sym_match_arm = 246, + sym_last_match_arm = 247, + sym_match_pattern = 248, + sym__cairo_1_loop_expression = 249, + sym__cairo_1_at_expression = 250, + sym__pattern = 251, + sym_tuple_pattern = 252, + sym_tuple_struct_pattern = 253, + sym_struct_pattern = 254, + sym_field_pattern = 255, + sym__cairo_1_unary_expression = 256, + sym__cairo_1_binary_expression = 257, + sym__cairo_1_assignment_expression = 258, + sym__cairo_1_compound_assignment_expression = 259, + sym__cairo_1_try_expression = 260, + sym__cairo_1_call_expression = 261, + sym__cairo_1_index_expression = 262, + sym__cairo_1_field_expression = 263, + sym__cairo_1_parenthesized_expression = 264, + sym__cairo_1_tuple_expression = 265, + sym__cairo_1_unit_expression = 266, + sym__cairo_1_struct_expression = 267, + sym_field_initializer_list = 268, + sym_shorthand_field_initializer = 269, + sym_field_initializer = 270, + sym_base_field_initializer = 271, + sym_trait_bounds = 272, + sym_type_parameters = 273, + sym_constrained_type_parameter = 274, + sym__literal = 275, + sym__literal_pattern = 276, + sym_scoped_identifier = 277, + sym_scoped_type_identifier = 278, + sym_boolean = 279, + aux_sym_cairo_0_file_repeat1 = 280, + aux_sym_cairo_1_file_repeat1 = 281, + aux_sym__import_list_repeat1 = 282, + aux_sym_builtin_directive_repeat1 = 283, + aux_sym__cairo_0_decorated_definition_repeat1 = 284, + aux_sym__cairo_0_struct_definition_repeat1 = 285, + aux_sym__cairo_0_attribute_statement_repeat1 = 286, + aux_sym__cairo_0_with_statement_repeat1 = 287, + aux_sym__cairo_0_tuple_type_repeat1 = 288, + aux_sym_python_code_repeat1 = 289, + aux_sym_tuple_expression_repeat1 = 290, + aux_sym__cairo_0_call_expression_repeat1 = 291, + aux_sym_dotted_name_repeat1 = 292, + aux_sym_use_list_repeat1 = 293, + aux_sym_attribute_arguments_repeat1 = 294, + aux_sym_enum_variant_list_repeat1 = 295, + aux_sym_enum_variant_list_repeat2 = 296, + aux_sym_field_declaration_list_repeat1 = 297, + aux_sym_block_repeat1 = 298, + aux_sym__function_signature_repeat1 = 299, + aux_sym__cairo_1_type_arguments_repeat1 = 300, + aux_sym__cairo_1_tuple_type_repeat1 = 301, + aux_sym_match_block_repeat1 = 302, + aux_sym_tuple_pattern_repeat1 = 303, + aux_sym_struct_pattern_repeat1 = 304, + aux_sym__cairo_1_call_expression_repeat1 = 305, + aux_sym__cairo_1_tuple_expression_repeat1 = 306, + aux_sym_field_initializer_list_repeat1 = 307, + aux_sym_type_parameters_repeat1 = 308, + alias_sym_field_identifier = 309, + alias_sym_return_type = 310, + alias_sym_shorthand_field_identifier = 311, + alias_sym_type = 312, + alias_sym_type_identifier = 313, }; static const char * const ts_symbol_names[] = { @@ -162,7 +343,6 @@ static const char * const ts_symbol_names[] = { [anon_sym_as] = "as", [anon_sym_using] = "using", [anon_sym_EQ] = "=", - [anon_sym_SEMI] = ";", [anon_sym_PERCENTbuiltins] = "%builtins", [anon_sym_PERCENTlang] = "%lang", [anon_sym_AT] = "@", @@ -172,6 +352,8 @@ static const char * const ts_symbol_names[] = { [anon_sym_struct] = "struct", [anon_sym_func] = "func", [anon_sym_DASH_GT] = "->", + [anon_sym_COLON] = ":", + [anon_sym_end] = "end", [anon_sym_alloc_locals] = "alloc_locals", [anon_sym_assert] = "assert", [anon_sym_static_assert] = "static_assert", @@ -190,7 +372,6 @@ static const char * const ts_symbol_names[] = { [sym_inst_ret] = "inst_ret", [anon_sym_PLUS_EQ] = "+=", [anon_sym_dw] = "dw", - [anon_sym_COLON] = ":", [anon_sym_with_attr] = "with_attr", [anon_sym_else] = "else", [anon_sym_with] = "with", @@ -208,6 +389,8 @@ static const char * const ts_symbol_names[] = { [sym_string] = "string", [sym_short_string] = "short_string", [anon_sym_nondet] = "nondet", + [anon_sym_PERCENT_LBRACE] = "%{", + [anon_sym_PERCENT_RBRACE] = "%}", [anon_sym_fp] = "fp", [anon_sym_LBRACK] = "[", [anon_sym_RBRACK] = "]", @@ -215,28 +398,101 @@ static const char * const ts_symbol_names[] = { [anon_sym_cast] = "cast", [anon_sym_call] = "call", [sym_number] = "number", + [anon_sym_SEMI] = ";", + [anon_sym_LF] = "\n", [sym_comment] = "comment", - [sym_hint] = "hint", + [anon_sym_use] = "use", + [anon_sym_extern] = "extern", + [anon_sym_type] = "type", + [anon_sym_COLON_COLON] = "::", + [anon_sym_fn] = "fn", + [anon_sym_POUND] = "#", + [anon_sym_mod] = "mod", + [anon_sym_enum] = "enum", + [anon_sym_implicits] = "implicits", + [anon_sym_nopanic] = "nopanic", + [anon_sym_ref] = "ref", + [anon_sym_mut] = "mut", + [anon_sym_impl] = "impl", + [anon_sym_of] = "of", + [anon_sym_trait] = "trait", + [anon_sym_u8] = "primitive_type", + [anon_sym_i8] = "primitive_type", + [anon_sym_u16] = "primitive_type", + [anon_sym_i16] = "primitive_type", + [anon_sym_u32] = "primitive_type", + [anon_sym_i32] = "primitive_type", + [anon_sym_u64] = "primitive_type", + [anon_sym_i64] = "primitive_type", + [anon_sym_u128] = "primitive_type", + [anon_sym_i128] = "primitive_type", + [anon_sym_u256] = "primitive_type", + [anon_sym_i256] = "primitive_type", + [anon_sym_isize] = "primitive_type", + [anon_sym_usize] = "primitive_type", + [anon_sym_f32] = "primitive_type", + [anon_sym_f64] = "primitive_type", + [anon_sym_felt252] = "primitive_type", + [anon_sym_bool] = "primitive_type", + [anon_sym_str] = "primitive_type", + [anon_sym_char] = "primitive_type", + [anon_sym_LT] = "<", + [anon_sym_GT] = ">", + [anon_sym_match] = "match", + [anon_sym_EQ_GT] = "=>", + [anon_sym_loop] = "loop", + [anon_sym__] = "_", + [anon_sym_DOT_DOT] = "..", + [anon_sym_BANG] = "!", + [anon_sym_TILDE] = "~", + [anon_sym_AMP_AMP] = "&&", + [anon_sym_PIPE_PIPE] = "||", + [anon_sym_PIPE] = "|", + [anon_sym_CARET] = "^", + [anon_sym_LT2] = "<", + [anon_sym_LT_EQ] = "<=", + [anon_sym_GT_EQ] = ">=", + [anon_sym_LT_LT] = "<<", + [anon_sym_GT_GT] = ">>", + [anon_sym_PERCENT] = "%", + [anon_sym_DASH_EQ] = "-=", + [anon_sym_STAR_EQ] = "*=", + [anon_sym_SLASH_EQ] = "/=", + [anon_sym_PERCENT_EQ] = "%=", + [anon_sym_AMP_EQ] = "&=", + [anon_sym_PIPE_EQ] = "|=", + [anon_sym_CARET_EQ] = "^=", + [anon_sym_LT_LT_EQ] = "<<=", + [anon_sym_GT_GT_EQ] = ">>=", + [anon_sym_QMARK] = "\?", + [sym__cairo_1_short_string] = "short_string", + [anon_sym_true] = "true", + [anon_sym_false] = "false", + [sym_self] = "self", + [sym_code_line] = "code_line", + [sym__failure] = "_failure", [sym_program] = "program", - [sym_cairo_0_statement] = "cairo_0_statement", - [sym_import_statement] = "import_statement", + [sym_cairo_0_file] = "cairo_0_file", + [sym_cairo_1_file] = "cairo_1_file", + [sym__cairo_0_statement] = "_cairo_0_statement", + [sym__cairo_0_import_statement] = "import_statement", [sym__import_list] = "_import_list", [sym_aliased_import] = "aliased_import", [sym_type_definition] = "type_definition", [sym_builtin_directive] = "builtin_directive", [sym_lang_directive] = "lang_directive", - [sym_decorated_definition] = "decorated_definition", + [sym__cairo_0_decorated_definition] = "decorated_definition", [sym_decorator] = "decorator", - [sym_namespace_definition] = "namespace_definition", - [sym_struct_definition] = "struct_definition", - [sym_function_definition] = "function_definition", + [sym__cairo_0_namespace_definition] = "namespace_definition", + [sym__cairo_0_struct_definition] = "struct_definition", + [sym__cairo_0_function_definition] = "function_definition", [sym_implicit_arguments] = "implicit_arguments", [sym_arguments] = "arguments", - [sym_expression_statement] = "expression_statement", + [sym__cairo_0_expression_statement] = "expression_statement", [sym_alloc_locals] = "alloc_locals", - [sym_assert_statement] = "assert_statement", - [sym_static_assert_statement] = "static_assert_statement", - [sym_let_binding] = "let_binding", + [sym__cairo_0_assert_statement] = "assert_statement", + [sym__cairo_0_static_assert_statement] = "static_assert_statement", + [sym__cairo_0_let_binding] = "let_binding", [sym_const_var_declaration] = "const_var_declaration", [sym_local_var_declaration] = "local_var_declaration", [sym_temp_var_declaration] = "temp_var_declaration", @@ -250,41 +506,147 @@ static const char * const ts_symbol_names[] = { [sym_inst_add_ap] = "inst_add_ap", [sym_inst_data_word] = "inst_data_word", [sym_label] = "label", - [sym_attribute_statement] = "attribute_statement", - [sym_if_statement] = "if_statement", - [sym_with_statement] = "with_statement", - [sym_return_statement] = "return_statement", - [sym_non_identifier_type] = "non_identifier_type", - [sym_type] = "type", + [sym__cairo_0_attribute_statement] = "attribute_statement", + [sym__cairo_0_if_statement] = "if_statement", + [sym__cairo_0_with_statement] = "with_statement", + [sym__cairo_0_return_statement] = "return_statement", + [sym__non_identifier_type] = "_non_identifier_type", + [sym__cairo_0_builtin_type] = "builtin_type", + [sym__cairo_0_pointer_type] = "pointer_type", + [sym__cairo_0_tuple_type] = "tuple_type", + [sym__cairo_0_type] = "_cairo_0_type", [sym_named_type] = "named_type", - [sym_expression] = "expression", + [sym__cairo_0_expression] = "_cairo_0_expression", [sym_unary_expression] = "unary_expression", [sym_binary_expression] = "binary_expression", [sym_assignment_expression] = "assignment_expression", [sym_hint_expression] = "hint_expression", + [sym_hint] = "hint", + [sym_python_code] = "python_code", [sym_register] = "register", [sym_deref_expression] = "deref_expression", [sym_subscript_expression] = "subscript_expression", [sym_member_expression] = "member_expression", [sym_cast_expression] = "cast_expression", [sym_tuple_expression] = "tuple_expression", - [sym_call_expression] = "call_expression", + [sym__cairo_0_call_expression] = "call_expression", [sym__ref_binding] = "_ref_binding", [sym_call_instruction] = "call_instruction", [sym_typed_identifier] = "typed_identifier", [sym_dotted_name] = "dotted_name", - [aux_sym_program_repeat1] = "program_repeat1", + [sym__separator] = "_separator", + [sym__cairo_1_statement] = "_cairo_1_statement", + [sym_use_declaration] = "use_declaration", + [sym_extern_type_statement] = "extern_type_statement", + [sym__use_clause] = "_use_clause", + [sym_scoped_use_list] = "scoped_use_list", + [sym_use_list] = "use_list", + [sym_use_as_clause] = "use_as_clause", + [sym_extern_function_statement] = "extern_function_statement", + [sym_attribute_item] = "attribute_item", + [sym_attribute_arguments] = "attribute_arguments", + [sym_mod_item] = "mod_item", + [sym_struct_item] = "struct_item", + [sym_enum_item] = "enum_item", + [sym_enum_variant_list] = "enum_variant_list", + [sym_enum_variant] = "enum_variant", + [sym_field_declaration_list] = "field_declaration_list", + [sym_field_declaration] = "field_declaration", + [sym_const_item] = "const_item", + [sym_type_item] = "type_item", + [sym_block] = "block", + [sym__cairo_1_function_definition] = "function_definition", + [sym__function_signature] = "_function_signature", + [sym__cairo_1_function_signature] = "function_signature", + [sym_parameter] = "parameter", + [sym_impl_item] = "impl_item", + [sym_trait_item] = "trait_item", + [sym_let_declaration] = "let_declaration", + [sym_declaration_list] = "declaration_list", + [sym__cairo_1_type] = "_cairo_1_type", + [sym_at_type] = "at_type", + [sym__cairo_1_generic_function] = "generic_function", + [sym_generic_type] = "generic_type", + [sym_generic_type_with_turbofish] = "generic_type", + [sym__cairo_1_type_arguments] = "type_arguments", + [sym__cairo_1_tuple_type] = "tuple_type", + [sym_unit_type] = "unit_type", + [sym_abstract_type] = "abstract_type", + [sym__cairo_1_expression_statement] = "expression_statement", + [sym__cairo_1_expression] = "_cairo_1_expression", + [sym__cairo_1_return_expression] = "return_expression", + [sym__cairo_1_if_expression] = "if_expression", + [sym__cairo_1_else_clause] = "else_clause", + [sym_match_expression] = "match_expression", + [sym_match_block] = "match_block", + [sym_match_arm] = "match_arm", + [sym_last_match_arm] = "match_arm", + [sym_match_pattern] = "match_pattern", + [sym__cairo_1_loop_expression] = "loop_expression", + [sym__cairo_1_at_expression] = "at_expression", + [sym__pattern] = "_pattern", + [sym_tuple_pattern] = "tuple_pattern", + [sym_tuple_struct_pattern] = "tuple_struct_pattern", + [sym_struct_pattern] = "struct_pattern", + [sym_field_pattern] = "field_pattern", + [sym__cairo_1_unary_expression] = "unary_expression", + [sym__cairo_1_binary_expression] = "binary_expression", + [sym__cairo_1_assignment_expression] = "assignment_expression", + [sym__cairo_1_compound_assignment_expression] = "compound_assignment_expression", + [sym__cairo_1_try_expression] = "try_expression", + [sym__cairo_1_call_expression] = "call_expression", + [sym__cairo_1_index_expression] = "index_expression", + [sym__cairo_1_field_expression] = "field_expression", + [sym__cairo_1_parenthesized_expression] = "parenthesized_expression", + [sym__cairo_1_tuple_expression] = "tuple_expression", + [sym__cairo_1_unit_expression] = "unit_expression", + [sym__cairo_1_struct_expression] = "struct_expression", + [sym_field_initializer_list] = "field_initializer_list", + [sym_shorthand_field_initializer] = "shorthand_field_initializer", + [sym_field_initializer] = "field_initializer", + [sym_base_field_initializer] = "base_field_initializer", + [sym_trait_bounds] = "trait_bounds", + [sym_type_parameters] = "type_parameters", + [sym_constrained_type_parameter] = "constrained_type_parameter", + [sym__literal] = "_literal", + [sym__literal_pattern] = "_literal_pattern", + [sym_scoped_identifier] = "scoped_identifier", + [sym_scoped_type_identifier] = "scoped_type_identifier", + [sym_boolean] = "boolean", + [aux_sym_cairo_0_file_repeat1] = "cairo_0_file_repeat1", + [aux_sym_cairo_1_file_repeat1] = "cairo_1_file_repeat1", [aux_sym__import_list_repeat1] = "_import_list_repeat1", [aux_sym_builtin_directive_repeat1] = "builtin_directive_repeat1", - [aux_sym_decorated_definition_repeat1] = "decorated_definition_repeat1", - [aux_sym_struct_definition_repeat1] = "struct_definition_repeat1", - [aux_sym_attribute_statement_repeat1] = "attribute_statement_repeat1", - [aux_sym_with_statement_repeat1] = "with_statement_repeat1", - [aux_sym_non_identifier_type_repeat1] = "non_identifier_type_repeat1", + [aux_sym__cairo_0_decorated_definition_repeat1] = "_cairo_0_decorated_definition_repeat1", + [aux_sym__cairo_0_struct_definition_repeat1] = "_cairo_0_struct_definition_repeat1", + [aux_sym__cairo_0_attribute_statement_repeat1] = "_cairo_0_attribute_statement_repeat1", + [aux_sym__cairo_0_with_statement_repeat1] = "_cairo_0_with_statement_repeat1", + [aux_sym__cairo_0_tuple_type_repeat1] = "_cairo_0_tuple_type_repeat1", + [aux_sym_python_code_repeat1] = "python_code_repeat1", [aux_sym_tuple_expression_repeat1] = "tuple_expression_repeat1", - [aux_sym_call_expression_repeat1] = "call_expression_repeat1", + [aux_sym__cairo_0_call_expression_repeat1] = "_cairo_0_call_expression_repeat1", [aux_sym_dotted_name_repeat1] = "dotted_name_repeat1", + [aux_sym_use_list_repeat1] = "use_list_repeat1", + [aux_sym_attribute_arguments_repeat1] = "attribute_arguments_repeat1", + [aux_sym_enum_variant_list_repeat1] = "enum_variant_list_repeat1", + [aux_sym_enum_variant_list_repeat2] = "enum_variant_list_repeat2", + [aux_sym_field_declaration_list_repeat1] = "field_declaration_list_repeat1", + [aux_sym_block_repeat1] = "block_repeat1", + [aux_sym__function_signature_repeat1] = "_function_signature_repeat1", + [aux_sym__cairo_1_type_arguments_repeat1] = "_cairo_1_type_arguments_repeat1", + [aux_sym__cairo_1_tuple_type_repeat1] = "_cairo_1_tuple_type_repeat1", + [aux_sym_match_block_repeat1] = "match_block_repeat1", + [aux_sym_tuple_pattern_repeat1] = "tuple_pattern_repeat1", + [aux_sym_struct_pattern_repeat1] = "struct_pattern_repeat1", + [aux_sym__cairo_1_call_expression_repeat1] = "_cairo_1_call_expression_repeat1", + [aux_sym__cairo_1_tuple_expression_repeat1] = "_cairo_1_tuple_expression_repeat1", + [aux_sym_field_initializer_list_repeat1] = "field_initializer_list_repeat1", + [aux_sym_type_parameters_repeat1] = "type_parameters_repeat1", + [alias_sym_field_identifier] = "field_identifier", [alias_sym_return_type] = "return_type", + [alias_sym_shorthand_field_identifier] = "shorthand_field_identifier", + [alias_sym_type] = "type", + [alias_sym_type_identifier] = "type_identifier", }; static const TSSymbol ts_symbol_map[] = { @@ -298,7 +660,6 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_as] = anon_sym_as, [anon_sym_using] = anon_sym_using, [anon_sym_EQ] = anon_sym_EQ, - [anon_sym_SEMI] = anon_sym_SEMI, [anon_sym_PERCENTbuiltins] = anon_sym_PERCENTbuiltins, [anon_sym_PERCENTlang] = anon_sym_PERCENTlang, [anon_sym_AT] = anon_sym_AT, @@ -308,6 +669,8 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_struct] = anon_sym_struct, [anon_sym_func] = anon_sym_func, [anon_sym_DASH_GT] = anon_sym_DASH_GT, + [anon_sym_COLON] = anon_sym_COLON, + [anon_sym_end] = anon_sym_end, [anon_sym_alloc_locals] = anon_sym_alloc_locals, [anon_sym_assert] = anon_sym_assert, [anon_sym_static_assert] = anon_sym_static_assert, @@ -326,7 +689,6 @@ static const TSSymbol ts_symbol_map[] = { [sym_inst_ret] = sym_inst_ret, [anon_sym_PLUS_EQ] = anon_sym_PLUS_EQ, [anon_sym_dw] = anon_sym_dw, - [anon_sym_COLON] = anon_sym_COLON, [anon_sym_with_attr] = anon_sym_with_attr, [anon_sym_else] = anon_sym_else, [anon_sym_with] = anon_sym_with, @@ -344,6 +706,8 @@ static const TSSymbol ts_symbol_map[] = { [sym_string] = sym_string, [sym_short_string] = sym_short_string, [anon_sym_nondet] = anon_sym_nondet, + [anon_sym_PERCENT_LBRACE] = anon_sym_PERCENT_LBRACE, + [anon_sym_PERCENT_RBRACE] = anon_sym_PERCENT_RBRACE, [anon_sym_fp] = anon_sym_fp, [anon_sym_LBRACK] = anon_sym_LBRACK, [anon_sym_RBRACK] = anon_sym_RBRACK, @@ -351,28 +715,101 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_cast] = anon_sym_cast, [anon_sym_call] = anon_sym_call, [sym_number] = sym_number, + [anon_sym_SEMI] = anon_sym_SEMI, + [anon_sym_LF] = anon_sym_LF, [sym_comment] = sym_comment, - [sym_hint] = sym_hint, + [anon_sym_use] = anon_sym_use, + [anon_sym_extern] = anon_sym_extern, + [anon_sym_type] = anon_sym_type, + [anon_sym_COLON_COLON] = anon_sym_COLON_COLON, + [anon_sym_fn] = anon_sym_fn, + [anon_sym_POUND] = anon_sym_POUND, + [anon_sym_mod] = anon_sym_mod, + [anon_sym_enum] = anon_sym_enum, + [anon_sym_implicits] = anon_sym_implicits, + [anon_sym_nopanic] = anon_sym_nopanic, + [anon_sym_ref] = anon_sym_ref, + [anon_sym_mut] = anon_sym_mut, + [anon_sym_impl] = anon_sym_impl, + [anon_sym_of] = anon_sym_of, + [anon_sym_trait] = anon_sym_trait, + [anon_sym_u8] = anon_sym_u8, + [anon_sym_i8] = anon_sym_u8, + [anon_sym_u16] = anon_sym_u8, + [anon_sym_i16] = anon_sym_u8, + [anon_sym_u32] = anon_sym_u8, + [anon_sym_i32] = anon_sym_u8, + [anon_sym_u64] = anon_sym_u8, + [anon_sym_i64] = anon_sym_u8, + [anon_sym_u128] = anon_sym_u8, + [anon_sym_i128] = anon_sym_u8, + [anon_sym_u256] = anon_sym_u8, + [anon_sym_i256] = anon_sym_u8, + [anon_sym_isize] = anon_sym_u8, + [anon_sym_usize] = anon_sym_u8, + [anon_sym_f32] = anon_sym_u8, + [anon_sym_f64] = anon_sym_u8, + [anon_sym_felt252] = anon_sym_u8, + [anon_sym_bool] = anon_sym_u8, + [anon_sym_str] = anon_sym_u8, + [anon_sym_char] = anon_sym_u8, + [anon_sym_LT] = anon_sym_LT, + [anon_sym_GT] = anon_sym_GT, + [anon_sym_match] = anon_sym_match, + [anon_sym_EQ_GT] = anon_sym_EQ_GT, + [anon_sym_loop] = anon_sym_loop, + [anon_sym__] = anon_sym__, + [anon_sym_DOT_DOT] = anon_sym_DOT_DOT, + [anon_sym_BANG] = anon_sym_BANG, + [anon_sym_TILDE] = anon_sym_TILDE, + [anon_sym_AMP_AMP] = anon_sym_AMP_AMP, + [anon_sym_PIPE_PIPE] = anon_sym_PIPE_PIPE, + [anon_sym_PIPE] = anon_sym_PIPE, + [anon_sym_CARET] = anon_sym_CARET, + [anon_sym_LT2] = anon_sym_LT, + [anon_sym_LT_EQ] = anon_sym_LT_EQ, + [anon_sym_GT_EQ] = anon_sym_GT_EQ, + [anon_sym_LT_LT] = anon_sym_LT_LT, + [anon_sym_GT_GT] = anon_sym_GT_GT, + [anon_sym_PERCENT] = anon_sym_PERCENT, + [anon_sym_DASH_EQ] = anon_sym_DASH_EQ, + [anon_sym_STAR_EQ] = anon_sym_STAR_EQ, + [anon_sym_SLASH_EQ] = anon_sym_SLASH_EQ, + [anon_sym_PERCENT_EQ] = anon_sym_PERCENT_EQ, + [anon_sym_AMP_EQ] = anon_sym_AMP_EQ, + [anon_sym_PIPE_EQ] = anon_sym_PIPE_EQ, + [anon_sym_CARET_EQ] = anon_sym_CARET_EQ, + [anon_sym_LT_LT_EQ] = anon_sym_LT_LT_EQ, + [anon_sym_GT_GT_EQ] = anon_sym_GT_GT_EQ, + [anon_sym_QMARK] = anon_sym_QMARK, + [sym__cairo_1_short_string] = sym_short_string, + [anon_sym_true] = anon_sym_true, + [anon_sym_false] = anon_sym_false, + [sym_self] = sym_self, + [sym_code_line] = sym_code_line, + [sym__failure] = sym__failure, [sym_program] = sym_program, - [sym_cairo_0_statement] = sym_cairo_0_statement, - [sym_import_statement] = sym_import_statement, + [sym_cairo_0_file] = sym_cairo_0_file, + [sym_cairo_1_file] = sym_cairo_1_file, + [sym__cairo_0_statement] = sym__cairo_0_statement, + [sym__cairo_0_import_statement] = sym__cairo_0_import_statement, [sym__import_list] = sym__import_list, [sym_aliased_import] = sym_aliased_import, [sym_type_definition] = sym_type_definition, [sym_builtin_directive] = sym_builtin_directive, [sym_lang_directive] = sym_lang_directive, - [sym_decorated_definition] = sym_decorated_definition, + [sym__cairo_0_decorated_definition] = sym__cairo_0_decorated_definition, [sym_decorator] = sym_decorator, - [sym_namespace_definition] = sym_namespace_definition, - [sym_struct_definition] = sym_struct_definition, - [sym_function_definition] = sym_function_definition, + [sym__cairo_0_namespace_definition] = sym__cairo_0_namespace_definition, + [sym__cairo_0_struct_definition] = sym__cairo_0_struct_definition, + [sym__cairo_0_function_definition] = sym__cairo_0_function_definition, [sym_implicit_arguments] = sym_implicit_arguments, [sym_arguments] = sym_arguments, - [sym_expression_statement] = sym_expression_statement, + [sym__cairo_0_expression_statement] = sym__cairo_0_expression_statement, [sym_alloc_locals] = sym_alloc_locals, - [sym_assert_statement] = sym_assert_statement, - [sym_static_assert_statement] = sym_static_assert_statement, - [sym_let_binding] = sym_let_binding, + [sym__cairo_0_assert_statement] = sym__cairo_0_assert_statement, + [sym__cairo_0_static_assert_statement] = sym__cairo_0_static_assert_statement, + [sym__cairo_0_let_binding] = sym__cairo_0_let_binding, [sym_const_var_declaration] = sym_const_var_declaration, [sym_local_var_declaration] = sym_local_var_declaration, [sym_temp_var_declaration] = sym_temp_var_declaration, @@ -386,41 +823,147 @@ static const TSSymbol ts_symbol_map[] = { [sym_inst_add_ap] = sym_inst_add_ap, [sym_inst_data_word] = sym_inst_data_word, [sym_label] = sym_label, - [sym_attribute_statement] = sym_attribute_statement, - [sym_if_statement] = sym_if_statement, - [sym_with_statement] = sym_with_statement, - [sym_return_statement] = sym_return_statement, - [sym_non_identifier_type] = sym_non_identifier_type, - [sym_type] = sym_type, + [sym__cairo_0_attribute_statement] = sym__cairo_0_attribute_statement, + [sym__cairo_0_if_statement] = sym__cairo_0_if_statement, + [sym__cairo_0_with_statement] = sym__cairo_0_with_statement, + [sym__cairo_0_return_statement] = sym__cairo_0_return_statement, + [sym__non_identifier_type] = sym__non_identifier_type, + [sym__cairo_0_builtin_type] = sym__cairo_0_builtin_type, + [sym__cairo_0_pointer_type] = sym__cairo_0_pointer_type, + [sym__cairo_0_tuple_type] = sym__cairo_0_tuple_type, + [sym__cairo_0_type] = sym__cairo_0_type, [sym_named_type] = sym_named_type, - [sym_expression] = sym_expression, + [sym__cairo_0_expression] = sym__cairo_0_expression, [sym_unary_expression] = sym_unary_expression, [sym_binary_expression] = sym_binary_expression, [sym_assignment_expression] = sym_assignment_expression, [sym_hint_expression] = sym_hint_expression, + [sym_hint] = sym_hint, + [sym_python_code] = sym_python_code, [sym_register] = sym_register, [sym_deref_expression] = sym_deref_expression, [sym_subscript_expression] = sym_subscript_expression, [sym_member_expression] = sym_member_expression, [sym_cast_expression] = sym_cast_expression, [sym_tuple_expression] = sym_tuple_expression, - [sym_call_expression] = sym_call_expression, + [sym__cairo_0_call_expression] = sym__cairo_0_call_expression, [sym__ref_binding] = sym__ref_binding, [sym_call_instruction] = sym_call_instruction, [sym_typed_identifier] = sym_typed_identifier, [sym_dotted_name] = sym_dotted_name, - [aux_sym_program_repeat1] = aux_sym_program_repeat1, + [sym__separator] = sym__separator, + [sym__cairo_1_statement] = sym__cairo_1_statement, + [sym_use_declaration] = sym_use_declaration, + [sym_extern_type_statement] = sym_extern_type_statement, + [sym__use_clause] = sym__use_clause, + [sym_scoped_use_list] = sym_scoped_use_list, + [sym_use_list] = sym_use_list, + [sym_use_as_clause] = sym_use_as_clause, + [sym_extern_function_statement] = sym_extern_function_statement, + [sym_attribute_item] = sym_attribute_item, + [sym_attribute_arguments] = sym_attribute_arguments, + [sym_mod_item] = sym_mod_item, + [sym_struct_item] = sym_struct_item, + [sym_enum_item] = sym_enum_item, + [sym_enum_variant_list] = sym_enum_variant_list, + [sym_enum_variant] = sym_enum_variant, + [sym_field_declaration_list] = sym_field_declaration_list, + [sym_field_declaration] = sym_field_declaration, + [sym_const_item] = sym_const_item, + [sym_type_item] = sym_type_item, + [sym_block] = sym_block, + [sym__cairo_1_function_definition] = sym__cairo_0_function_definition, + [sym__function_signature] = sym__function_signature, + [sym__cairo_1_function_signature] = sym__cairo_1_function_signature, + [sym_parameter] = sym_parameter, + [sym_impl_item] = sym_impl_item, + [sym_trait_item] = sym_trait_item, + [sym_let_declaration] = sym_let_declaration, + [sym_declaration_list] = sym_declaration_list, + [sym__cairo_1_type] = sym__cairo_1_type, + [sym_at_type] = sym_at_type, + [sym__cairo_1_generic_function] = sym__cairo_1_generic_function, + [sym_generic_type] = sym_generic_type, + [sym_generic_type_with_turbofish] = sym_generic_type, + [sym__cairo_1_type_arguments] = sym__cairo_1_type_arguments, + [sym__cairo_1_tuple_type] = sym__cairo_0_tuple_type, + [sym_unit_type] = sym_unit_type, + [sym_abstract_type] = sym_abstract_type, + [sym__cairo_1_expression_statement] = sym__cairo_0_expression_statement, + [sym__cairo_1_expression] = sym__cairo_1_expression, + [sym__cairo_1_return_expression] = sym__cairo_1_return_expression, + [sym__cairo_1_if_expression] = sym__cairo_1_if_expression, + [sym__cairo_1_else_clause] = sym__cairo_1_else_clause, + [sym_match_expression] = sym_match_expression, + [sym_match_block] = sym_match_block, + [sym_match_arm] = sym_match_arm, + [sym_last_match_arm] = sym_match_arm, + [sym_match_pattern] = sym_match_pattern, + [sym__cairo_1_loop_expression] = sym__cairo_1_loop_expression, + [sym__cairo_1_at_expression] = sym__cairo_1_at_expression, + [sym__pattern] = sym__pattern, + [sym_tuple_pattern] = sym_tuple_pattern, + [sym_tuple_struct_pattern] = sym_tuple_struct_pattern, + [sym_struct_pattern] = sym_struct_pattern, + [sym_field_pattern] = sym_field_pattern, + [sym__cairo_1_unary_expression] = sym_unary_expression, + [sym__cairo_1_binary_expression] = sym_binary_expression, + [sym__cairo_1_assignment_expression] = sym_assignment_expression, + [sym__cairo_1_compound_assignment_expression] = sym__cairo_1_compound_assignment_expression, + [sym__cairo_1_try_expression] = sym__cairo_1_try_expression, + [sym__cairo_1_call_expression] = sym__cairo_0_call_expression, + [sym__cairo_1_index_expression] = sym__cairo_1_index_expression, + [sym__cairo_1_field_expression] = sym__cairo_1_field_expression, + [sym__cairo_1_parenthesized_expression] = sym__cairo_1_parenthesized_expression, + [sym__cairo_1_tuple_expression] = sym_tuple_expression, + [sym__cairo_1_unit_expression] = sym__cairo_1_unit_expression, + [sym__cairo_1_struct_expression] = sym__cairo_1_struct_expression, + [sym_field_initializer_list] = sym_field_initializer_list, + [sym_shorthand_field_initializer] = sym_shorthand_field_initializer, + [sym_field_initializer] = sym_field_initializer, + [sym_base_field_initializer] = sym_base_field_initializer, + [sym_trait_bounds] = sym_trait_bounds, + [sym_type_parameters] = sym_type_parameters, + [sym_constrained_type_parameter] = sym_constrained_type_parameter, + [sym__literal] = sym__literal, + [sym__literal_pattern] = sym__literal_pattern, + [sym_scoped_identifier] = sym_scoped_identifier, + [sym_scoped_type_identifier] = sym_scoped_type_identifier, + [sym_boolean] = sym_boolean, + [aux_sym_cairo_0_file_repeat1] = aux_sym_cairo_0_file_repeat1, + [aux_sym_cairo_1_file_repeat1] = aux_sym_cairo_1_file_repeat1, [aux_sym__import_list_repeat1] = aux_sym__import_list_repeat1, [aux_sym_builtin_directive_repeat1] = aux_sym_builtin_directive_repeat1, - [aux_sym_decorated_definition_repeat1] = aux_sym_decorated_definition_repeat1, - [aux_sym_struct_definition_repeat1] = aux_sym_struct_definition_repeat1, - [aux_sym_attribute_statement_repeat1] = aux_sym_attribute_statement_repeat1, - [aux_sym_with_statement_repeat1] = aux_sym_with_statement_repeat1, - [aux_sym_non_identifier_type_repeat1] = aux_sym_non_identifier_type_repeat1, + [aux_sym__cairo_0_decorated_definition_repeat1] = aux_sym__cairo_0_decorated_definition_repeat1, + [aux_sym__cairo_0_struct_definition_repeat1] = aux_sym__cairo_0_struct_definition_repeat1, + [aux_sym__cairo_0_attribute_statement_repeat1] = aux_sym__cairo_0_attribute_statement_repeat1, + [aux_sym__cairo_0_with_statement_repeat1] = aux_sym__cairo_0_with_statement_repeat1, + [aux_sym__cairo_0_tuple_type_repeat1] = aux_sym__cairo_0_tuple_type_repeat1, + [aux_sym_python_code_repeat1] = aux_sym_python_code_repeat1, [aux_sym_tuple_expression_repeat1] = aux_sym_tuple_expression_repeat1, - [aux_sym_call_expression_repeat1] = aux_sym_call_expression_repeat1, + [aux_sym__cairo_0_call_expression_repeat1] = aux_sym__cairo_0_call_expression_repeat1, [aux_sym_dotted_name_repeat1] = aux_sym_dotted_name_repeat1, + [aux_sym_use_list_repeat1] = aux_sym_use_list_repeat1, + [aux_sym_attribute_arguments_repeat1] = aux_sym_attribute_arguments_repeat1, + [aux_sym_enum_variant_list_repeat1] = aux_sym_enum_variant_list_repeat1, + [aux_sym_enum_variant_list_repeat2] = aux_sym_enum_variant_list_repeat2, + [aux_sym_field_declaration_list_repeat1] = aux_sym_field_declaration_list_repeat1, + [aux_sym_block_repeat1] = aux_sym_block_repeat1, + [aux_sym__function_signature_repeat1] = aux_sym__function_signature_repeat1, + [aux_sym__cairo_1_type_arguments_repeat1] = aux_sym__cairo_1_type_arguments_repeat1, + [aux_sym__cairo_1_tuple_type_repeat1] = aux_sym__cairo_1_tuple_type_repeat1, + [aux_sym_match_block_repeat1] = aux_sym_match_block_repeat1, + [aux_sym_tuple_pattern_repeat1] = aux_sym_tuple_pattern_repeat1, + [aux_sym_struct_pattern_repeat1] = aux_sym_struct_pattern_repeat1, + [aux_sym__cairo_1_call_expression_repeat1] = aux_sym__cairo_1_call_expression_repeat1, + [aux_sym__cairo_1_tuple_expression_repeat1] = aux_sym__cairo_1_tuple_expression_repeat1, + [aux_sym_field_initializer_list_repeat1] = aux_sym_field_initializer_list_repeat1, + [aux_sym_type_parameters_repeat1] = aux_sym_type_parameters_repeat1, + [alias_sym_field_identifier] = alias_sym_field_identifier, [alias_sym_return_type] = alias_sym_return_type, + [alias_sym_shorthand_field_identifier] = alias_sym_shorthand_field_identifier, + [alias_sym_type] = alias_sym_type, + [alias_sym_type_identifier] = alias_sym_type_identifier, }; static const TSSymbolMetadata ts_symbol_metadata[] = { @@ -464,10 +1007,6 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [anon_sym_SEMI] = { - .visible = true, - .named = false, - }, [anon_sym_PERCENTbuiltins] = { .visible = true, .named = false, @@ -504,6 +1043,14 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, + [anon_sym_COLON] = { + .visible = true, + .named = false, + }, + [anon_sym_end] = { + .visible = true, + .named = false, + }, [anon_sym_alloc_locals] = { .visible = true, .named = false, @@ -576,10 +1123,6 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [anon_sym_COLON] = { - .visible = true, - .named = false, - }, [anon_sym_with_attr] = { .visible = true, .named = false, @@ -648,6 +1191,14 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, + [anon_sym_PERCENT_LBRACE] = { + .visible = true, + .named = false, + }, + [anon_sym_PERCENT_RBRACE] = { + .visible = true, + .named = false, + }, [anon_sym_fp] = { .visible = true, .named = false, @@ -676,397 +1227,1586 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [anon_sym_SEMI] = { + .visible = true, + .named = false, + }, + [anon_sym_LF] = { + .visible = true, + .named = false, + }, [sym_comment] = { .visible = true, .named = true, }, - [sym_hint] = { + [anon_sym_use] = { .visible = true, - .named = true, + .named = false, }, - [sym_program] = { + [anon_sym_extern] = { + .visible = true, + .named = false, + }, + [anon_sym_type] = { + .visible = true, + .named = false, + }, + [anon_sym_COLON_COLON] = { + .visible = true, + .named = false, + }, + [anon_sym_fn] = { + .visible = true, + .named = false, + }, + [anon_sym_POUND] = { + .visible = true, + .named = false, + }, + [anon_sym_mod] = { + .visible = true, + .named = false, + }, + [anon_sym_enum] = { + .visible = true, + .named = false, + }, + [anon_sym_implicits] = { + .visible = true, + .named = false, + }, + [anon_sym_nopanic] = { + .visible = true, + .named = false, + }, + [anon_sym_ref] = { + .visible = true, + .named = false, + }, + [anon_sym_mut] = { + .visible = true, + .named = false, + }, + [anon_sym_impl] = { + .visible = true, + .named = false, + }, + [anon_sym_of] = { + .visible = true, + .named = false, + }, + [anon_sym_trait] = { + .visible = true, + .named = false, + }, + [anon_sym_u8] = { .visible = true, .named = true, }, - [sym_cairo_0_statement] = { - .visible = false, + [anon_sym_i8] = { + .visible = true, .named = true, - .supertype = true, }, - [sym_import_statement] = { + [anon_sym_u16] = { .visible = true, .named = true, }, - [sym__import_list] = { - .visible = false, + [anon_sym_i16] = { + .visible = true, .named = true, }, - [sym_aliased_import] = { + [anon_sym_u32] = { .visible = true, .named = true, }, - [sym_type_definition] = { + [anon_sym_i32] = { .visible = true, .named = true, }, - [sym_builtin_directive] = { + [anon_sym_u64] = { .visible = true, .named = true, }, - [sym_lang_directive] = { + [anon_sym_i64] = { .visible = true, .named = true, }, - [sym_decorated_definition] = { + [anon_sym_u128] = { .visible = true, .named = true, }, - [sym_decorator] = { + [anon_sym_i128] = { .visible = true, .named = true, }, - [sym_namespace_definition] = { + [anon_sym_u256] = { .visible = true, .named = true, }, - [sym_struct_definition] = { + [anon_sym_i256] = { .visible = true, .named = true, }, - [sym_function_definition] = { + [anon_sym_isize] = { .visible = true, .named = true, }, - [sym_implicit_arguments] = { + [anon_sym_usize] = { .visible = true, .named = true, }, - [sym_arguments] = { + [anon_sym_f32] = { .visible = true, .named = true, }, - [sym_expression_statement] = { + [anon_sym_f64] = { .visible = true, .named = true, }, - [sym_alloc_locals] = { + [anon_sym_felt252] = { .visible = true, .named = true, }, - [sym_assert_statement] = { + [anon_sym_bool] = { .visible = true, .named = true, }, - [sym_static_assert_statement] = { + [anon_sym_str] = { .visible = true, .named = true, }, - [sym_let_binding] = { + [anon_sym_char] = { .visible = true, .named = true, }, - [sym_const_var_declaration] = { + [anon_sym_LT] = { + .visible = true, + .named = false, + }, + [anon_sym_GT] = { + .visible = true, + .named = false, + }, + [anon_sym_match] = { + .visible = true, + .named = false, + }, + [anon_sym_EQ_GT] = { + .visible = true, + .named = false, + }, + [anon_sym_loop] = { + .visible = true, + .named = false, + }, + [anon_sym__] = { + .visible = true, + .named = false, + }, + [anon_sym_DOT_DOT] = { + .visible = true, + .named = false, + }, + [anon_sym_BANG] = { + .visible = true, + .named = false, + }, + [anon_sym_TILDE] = { + .visible = true, + .named = false, + }, + [anon_sym_AMP_AMP] = { + .visible = true, + .named = false, + }, + [anon_sym_PIPE_PIPE] = { + .visible = true, + .named = false, + }, + [anon_sym_PIPE] = { + .visible = true, + .named = false, + }, + [anon_sym_CARET] = { + .visible = true, + .named = false, + }, + [anon_sym_LT2] = { + .visible = true, + .named = false, + }, + [anon_sym_LT_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_GT_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_LT_LT] = { + .visible = true, + .named = false, + }, + [anon_sym_GT_GT] = { + .visible = true, + .named = false, + }, + [anon_sym_PERCENT] = { + .visible = true, + .named = false, + }, + [anon_sym_DASH_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_STAR_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_SLASH_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_PERCENT_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_AMP_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_PIPE_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_CARET_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_LT_LT_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_GT_GT_EQ] = { + .visible = true, + .named = false, + }, + [anon_sym_QMARK] = { + .visible = true, + .named = false, + }, + [sym__cairo_1_short_string] = { .visible = true, .named = true, }, - [sym_local_var_declaration] = { + [anon_sym_true] = { + .visible = true, + .named = false, + }, + [anon_sym_false] = { + .visible = true, + .named = false, + }, + [sym_self] = { .visible = true, .named = true, }, - [sym_temp_var_declaration] = { + [sym_code_line] = { .visible = true, .named = true, }, - [sym_instruction] = { + [sym__failure] = { + .visible = false, + .named = true, + }, + [sym_program] = { .visible = true, .named = true, }, - [sym_inst_assert_eq] = { + [sym_cairo_0_file] = { .visible = true, .named = true, }, - [sym_inst_jmp_rel] = { + [sym_cairo_1_file] = { .visible = true, .named = true, }, - [sym_inst_jmp_abs] = { + [sym__cairo_0_statement] = { + .visible = false, + .named = true, + .supertype = true, + }, + [sym__cairo_0_import_statement] = { .visible = true, .named = true, }, - [sym_inst_jmp_to_label] = { + [sym__import_list] = { + .visible = false, + .named = true, + }, + [sym_aliased_import] = { .visible = true, .named = true, }, - [sym_inst_jnz] = { + [sym_type_definition] = { .visible = true, .named = true, }, - [sym_inst_jnz_to_label] = { + [sym_builtin_directive] = { .visible = true, .named = true, }, - [sym_inst_add_ap] = { + [sym_lang_directive] = { .visible = true, .named = true, }, - [sym_inst_data_word] = { + [sym__cairo_0_decorated_definition] = { .visible = true, .named = true, }, - [sym_label] = { + [sym_decorator] = { .visible = true, .named = true, }, - [sym_attribute_statement] = { + [sym__cairo_0_namespace_definition] = { .visible = true, .named = true, }, - [sym_if_statement] = { + [sym__cairo_0_struct_definition] = { .visible = true, .named = true, }, - [sym_with_statement] = { + [sym__cairo_0_function_definition] = { .visible = true, .named = true, }, - [sym_return_statement] = { + [sym_implicit_arguments] = { .visible = true, .named = true, }, - [sym_non_identifier_type] = { + [sym_arguments] = { .visible = true, .named = true, }, - [sym_type] = { + [sym__cairo_0_expression_statement] = { .visible = true, .named = true, }, - [sym_named_type] = { + [sym_alloc_locals] = { .visible = true, .named = true, }, - [sym_expression] = { + [sym__cairo_0_assert_statement] = { .visible = true, .named = true, }, - [sym_unary_expression] = { + [sym__cairo_0_static_assert_statement] = { .visible = true, .named = true, }, - [sym_binary_expression] = { + [sym__cairo_0_let_binding] = { .visible = true, .named = true, }, - [sym_assignment_expression] = { + [sym_const_var_declaration] = { .visible = true, .named = true, }, - [sym_hint_expression] = { + [sym_local_var_declaration] = { .visible = true, .named = true, }, - [sym_register] = { + [sym_temp_var_declaration] = { .visible = true, .named = true, }, - [sym_deref_expression] = { + [sym_instruction] = { .visible = true, .named = true, }, - [sym_subscript_expression] = { + [sym_inst_assert_eq] = { .visible = true, .named = true, }, - [sym_member_expression] = { + [sym_inst_jmp_rel] = { .visible = true, .named = true, }, - [sym_cast_expression] = { + [sym_inst_jmp_abs] = { .visible = true, .named = true, }, - [sym_tuple_expression] = { + [sym_inst_jmp_to_label] = { .visible = true, .named = true, }, - [sym_call_expression] = { + [sym_inst_jnz] = { .visible = true, .named = true, }, - [sym__ref_binding] = { - .visible = false, + [sym_inst_jnz_to_label] = { + .visible = true, .named = true, }, - [sym_call_instruction] = { + [sym_inst_add_ap] = { .visible = true, .named = true, }, - [sym_typed_identifier] = { + [sym_inst_data_word] = { .visible = true, .named = true, }, - [sym_dotted_name] = { + [sym_label] = { .visible = true, .named = true, }, - [aux_sym_program_repeat1] = { - .visible = false, - .named = false, + [sym__cairo_0_attribute_statement] = { + .visible = true, + .named = true, }, - [aux_sym__import_list_repeat1] = { - .visible = false, - .named = false, + [sym__cairo_0_if_statement] = { + .visible = true, + .named = true, }, - [aux_sym_builtin_directive_repeat1] = { + [sym__cairo_0_with_statement] = { + .visible = true, + .named = true, + }, + [sym__cairo_0_return_statement] = { + .visible = true, + .named = true, + }, + [sym__non_identifier_type] = { .visible = false, - .named = false, + .named = true, + }, + [sym__cairo_0_builtin_type] = { + .visible = true, + .named = true, + }, + [sym__cairo_0_pointer_type] = { + .visible = true, + .named = true, }, - [aux_sym_decorated_definition_repeat1] = { + [sym__cairo_0_tuple_type] = { + .visible = true, + .named = true, + }, + [sym__cairo_0_type] = { .visible = false, - .named = false, + .named = true, + }, + [sym_named_type] = { + .visible = true, + .named = true, }, - [aux_sym_struct_definition_repeat1] = { + [sym__cairo_0_expression] = { .visible = false, - .named = false, + .named = true, + }, + [sym_unary_expression] = { + .visible = true, + .named = true, + }, + [sym_binary_expression] = { + .visible = true, + .named = true, + }, + [sym_assignment_expression] = { + .visible = true, + .named = true, + }, + [sym_hint_expression] = { + .visible = true, + .named = true, + }, + [sym_hint] = { + .visible = true, + .named = true, + }, + [sym_python_code] = { + .visible = true, + .named = true, + }, + [sym_register] = { + .visible = true, + .named = true, + }, + [sym_deref_expression] = { + .visible = true, + .named = true, + }, + [sym_subscript_expression] = { + .visible = true, + .named = true, + }, + [sym_member_expression] = { + .visible = true, + .named = true, + }, + [sym_cast_expression] = { + .visible = true, + .named = true, + }, + [sym_tuple_expression] = { + .visible = true, + .named = true, + }, + [sym__cairo_0_call_expression] = { + .visible = true, + .named = true, }, - [aux_sym_attribute_statement_repeat1] = { + [sym__ref_binding] = { .visible = false, - .named = false, + .named = true, + }, + [sym_call_instruction] = { + .visible = true, + .named = true, + }, + [sym_typed_identifier] = { + .visible = true, + .named = true, }, - [aux_sym_with_statement_repeat1] = { + [sym_dotted_name] = { + .visible = true, + .named = true, + }, + [sym__separator] = { .visible = false, - .named = false, + .named = true, }, - [aux_sym_non_identifier_type_repeat1] = { + [sym__cairo_1_statement] = { .visible = false, - .named = false, + .named = true, }, - [aux_sym_tuple_expression_repeat1] = { + [sym_use_declaration] = { + .visible = true, + .named = true, + }, + [sym_extern_type_statement] = { + .visible = true, + .named = true, + }, + [sym__use_clause] = { .visible = false, - .named = false, + .named = true, + }, + [sym_scoped_use_list] = { + .visible = true, + .named = true, + }, + [sym_use_list] = { + .visible = true, + .named = true, + }, + [sym_use_as_clause] = { + .visible = true, + .named = true, + }, + [sym_extern_function_statement] = { + .visible = true, + .named = true, + }, + [sym_attribute_item] = { + .visible = true, + .named = true, }, - [aux_sym_call_expression_repeat1] = { + [sym_attribute_arguments] = { + .visible = true, + .named = true, + }, + [sym_mod_item] = { + .visible = true, + .named = true, + }, + [sym_struct_item] = { + .visible = true, + .named = true, + }, + [sym_enum_item] = { + .visible = true, + .named = true, + }, + [sym_enum_variant_list] = { + .visible = true, + .named = true, + }, + [sym_enum_variant] = { + .visible = true, + .named = true, + }, + [sym_field_declaration_list] = { + .visible = true, + .named = true, + }, + [sym_field_declaration] = { + .visible = true, + .named = true, + }, + [sym_const_item] = { + .visible = true, + .named = true, + }, + [sym_type_item] = { + .visible = true, + .named = true, + }, + [sym_block] = { + .visible = true, + .named = true, + }, + [sym__cairo_1_function_definition] = { + .visible = true, + .named = true, + }, + [sym__function_signature] = { .visible = false, - .named = false, + .named = true, }, - [aux_sym_dotted_name_repeat1] = { + [sym__cairo_1_function_signature] = { + .visible = true, + .named = true, + }, + [sym_parameter] = { + .visible = true, + .named = true, + }, + [sym_impl_item] = { + .visible = true, + .named = true, + }, + [sym_trait_item] = { + .visible = true, + .named = true, + }, + [sym_let_declaration] = { + .visible = true, + .named = true, + }, + [sym_declaration_list] = { + .visible = true, + .named = true, + }, + [sym__cairo_1_type] = { .visible = false, - .named = false, + .named = true, }, - [alias_sym_return_type] = { + [sym_at_type] = { .visible = true, .named = true, }, -}; - -enum { - field_alias = 1, - field_definition = 2, - field_left = 3, - field_module_name = 4, - field_name = 5, - field_operand = 6, - field_operator = 7, - field_right = 8, -}; - -static const char * const ts_field_names[] = { - [0] = NULL, - [field_alias] = "alias", - [field_definition] = "definition", - [field_left] = "left", - [field_module_name] = "module_name", - [field_name] = "name", - [field_operand] = "operand", - [field_operator] = "operator", - [field_right] = "right", -}; - -static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { - [1] = {.index = 0, .length = 2}, - [2] = {.index = 2, .length = 1}, - [3] = {.index = 3, .length = 3}, - [4] = {.index = 6, .length = 2}, - [5] = {.index = 8, .length = 1}, - [6] = {.index = 9, .length = 2}, - [7] = {.index = 11, .length = 2}, - [8] = {.index = 13, .length = 2}, - [9] = {.index = 15, .length = 1}, - [10] = {.index = 16, .length = 2}, - [11] = {.index = 18, .length = 2}, -}; - -static const TSFieldMapEntry ts_field_map_entries[] = { - [0] = - {field_operand, 1}, - {field_operator, 0}, - [2] = - {field_definition, 1}, - [3] = - {field_left, 0}, - {field_operator, 1}, - {field_right, 2}, - [6] = - {field_module_name, 1}, - {field_name, 3, .inherited = true}, - [8] = - {field_name, 0}, - [9] = - {field_name, 0}, - {field_name, 1, .inherited = true}, - [11] = - {field_left, 1}, - {field_right, 3}, - [13] = - {field_module_name, 1}, - {field_name, 4, .inherited = true}, - [15] = - {field_name, 1}, - [16] = - {field_name, 0, .inherited = true}, - {field_name, 1, .inherited = true}, - [18] = - {field_alias, 2}, - {field_name, 0}, -}; - -static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE_LENGTH] = { - [0] = {0}, - [12] = { - [4] = alias_sym_return_type, + [sym__cairo_1_generic_function] = { + .visible = true, + .named = true, }, - [13] = { - [5] = alias_sym_return_type, + [sym_generic_type] = { + .visible = true, + .named = true, + }, + [sym_generic_type_with_turbofish] = { + .visible = true, + .named = true, + }, + [sym__cairo_1_type_arguments] = { + .visible = true, + .named = true, + }, + [sym__cairo_1_tuple_type] = { + .visible = true, + .named = true, + }, + [sym_unit_type] = { + .visible = true, + .named = true, + }, + [sym_abstract_type] = { + .visible = true, + .named = true, + }, + [sym__cairo_1_expression_statement] = { + .visible = true, + .named = true, + }, + [sym__cairo_1_expression] = { + .visible = false, + .named = true, + .supertype = true, + }, + [sym__cairo_1_return_expression] = { + .visible = true, + .named = true, + }, + [sym__cairo_1_if_expression] = { + .visible = true, + .named = true, + }, + [sym__cairo_1_else_clause] = { + .visible = true, + .named = true, + }, + [sym_match_expression] = { + .visible = true, + .named = true, + }, + [sym_match_block] = { + .visible = true, + .named = true, + }, + [sym_match_arm] = { + .visible = true, + .named = true, + }, + [sym_last_match_arm] = { + .visible = true, + .named = true, + }, + [sym_match_pattern] = { + .visible = true, + .named = true, + }, + [sym__cairo_1_loop_expression] = { + .visible = true, + .named = true, + }, + [sym__cairo_1_at_expression] = { + .visible = true, + .named = true, + }, + [sym__pattern] = { + .visible = false, + .named = true, + .supertype = true, + }, + [sym_tuple_pattern] = { + .visible = true, + .named = true, + }, + [sym_tuple_struct_pattern] = { + .visible = true, + .named = true, + }, + [sym_struct_pattern] = { + .visible = true, + .named = true, + }, + [sym_field_pattern] = { + .visible = true, + .named = true, + }, + [sym__cairo_1_unary_expression] = { + .visible = true, + .named = true, + }, + [sym__cairo_1_binary_expression] = { + .visible = true, + .named = true, + }, + [sym__cairo_1_assignment_expression] = { + .visible = true, + .named = true, + }, + [sym__cairo_1_compound_assignment_expression] = { + .visible = true, + .named = true, + }, + [sym__cairo_1_try_expression] = { + .visible = true, + .named = true, + }, + [sym__cairo_1_call_expression] = { + .visible = true, + .named = true, + }, + [sym__cairo_1_index_expression] = { + .visible = true, + .named = true, + }, + [sym__cairo_1_field_expression] = { + .visible = true, + .named = true, + }, + [sym__cairo_1_parenthesized_expression] = { + .visible = true, + .named = true, + }, + [sym__cairo_1_tuple_expression] = { + .visible = true, + .named = true, + }, + [sym__cairo_1_unit_expression] = { + .visible = true, + .named = true, + }, + [sym__cairo_1_struct_expression] = { + .visible = true, + .named = true, + }, + [sym_field_initializer_list] = { + .visible = true, + .named = true, + }, + [sym_shorthand_field_initializer] = { + .visible = true, + .named = true, + }, + [sym_field_initializer] = { + .visible = true, + .named = true, + }, + [sym_base_field_initializer] = { + .visible = true, + .named = true, + }, + [sym_trait_bounds] = { + .visible = true, + .named = true, + }, + [sym_type_parameters] = { + .visible = true, + .named = true, + }, + [sym_constrained_type_parameter] = { + .visible = true, + .named = true, + }, + [sym__literal] = { + .visible = false, + .named = true, + }, + [sym__literal_pattern] = { + .visible = false, + .named = true, + }, + [sym_scoped_identifier] = { + .visible = true, + .named = true, + }, + [sym_scoped_type_identifier] = { + .visible = true, + .named = true, + }, + [sym_boolean] = { + .visible = true, + .named = true, + }, + [aux_sym_cairo_0_file_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_cairo_1_file_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym__import_list_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_builtin_directive_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym__cairo_0_decorated_definition_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym__cairo_0_struct_definition_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym__cairo_0_attribute_statement_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym__cairo_0_with_statement_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym__cairo_0_tuple_type_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_python_code_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_tuple_expression_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym__cairo_0_call_expression_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_dotted_name_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_use_list_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_attribute_arguments_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_enum_variant_list_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_enum_variant_list_repeat2] = { + .visible = false, + .named = false, + }, + [aux_sym_field_declaration_list_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_block_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym__function_signature_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym__cairo_1_type_arguments_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym__cairo_1_tuple_type_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_match_block_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_tuple_pattern_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_struct_pattern_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym__cairo_1_call_expression_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym__cairo_1_tuple_expression_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_field_initializer_list_repeat1] = { + .visible = false, + .named = false, + }, + [aux_sym_type_parameters_repeat1] = { + .visible = false, + .named = false, + }, + [alias_sym_field_identifier] = { + .visible = true, + .named = true, + }, + [alias_sym_return_type] = { + .visible = true, + .named = true, + }, + [alias_sym_shorthand_field_identifier] = { + .visible = true, + .named = true, + }, + [alias_sym_type] = { + .visible = true, + .named = true, + }, + [alias_sym_type_identifier] = { + .visible = true, + .named = true, }, }; -static const uint16_t ts_non_terminal_alias_map[] = { - sym_arguments, 2, - sym_arguments, - alias_sym_return_type, - sym_type, 2, - sym_type, - alias_sym_return_type, - 0, -}; - -static const TSStateId ts_primary_state_ids[STATE_COUNT] = { - [0] = 0, - [1] = 1, - [2] = 2, - [3] = 3, - [4] = 4, - [5] = 5, - [6] = 2, - [7] = 7, - [8] = 8, - [9] = 3, - [10] = 10, +enum { + field_alias = 1, + field_alternative = 2, + field_argument = 3, + field_body = 4, + field_bounds = 5, + field_condition = 6, + field_consequence = 7, + field_definition = 8, + field_field = 9, + field_function = 10, + field_left = 11, + field_list = 12, + field_module_name = 13, + field_name = 14, + field_operand = 15, + field_operator = 16, + field_path = 17, + field_pattern = 18, + field_returns = 19, + field_right = 20, + field_trait = 21, + field_type = 22, + field_type_parameters = 23, + field_value = 24, +}; + +static const char * const ts_field_names[] = { + [0] = NULL, + [field_alias] = "alias", + [field_alternative] = "alternative", + [field_argument] = "argument", + [field_body] = "body", + [field_bounds] = "bounds", + [field_condition] = "condition", + [field_consequence] = "consequence", + [field_definition] = "definition", + [field_field] = "field", + [field_function] = "function", + [field_left] = "left", + [field_list] = "list", + [field_module_name] = "module_name", + [field_name] = "name", + [field_operand] = "operand", + [field_operator] = "operator", + [field_path] = "path", + [field_pattern] = "pattern", + [field_returns] = "returns", + [field_right] = "right", + [field_trait] = "trait", + [field_type] = "type", + [field_type_parameters] = "type_parameters", + [field_value] = "value", +}; + +static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { + [1] = {.index = 0, .length = 2}, + [2] = {.index = 2, .length = 1}, + [3] = {.index = 3, .length = 2}, + [4] = {.index = 5, .length = 1}, + [5] = {.index = 6, .length = 1}, + [7] = {.index = 7, .length = 2}, + [9] = {.index = 9, .length = 1}, + [10] = {.index = 10, .length = 1}, + [11] = {.index = 11, .length = 1}, + [12] = {.index = 12, .length = 2}, + [13] = {.index = 14, .length = 1}, + [14] = {.index = 11, .length = 1}, + [15] = {.index = 15, .length = 1}, + [16] = {.index = 14, .length = 1}, + [17] = {.index = 16, .length = 1}, + [18] = {.index = 17, .length = 1}, + [19] = {.index = 12, .length = 2}, + [20] = {.index = 18, .length = 3}, + [21] = {.index = 21, .length = 2}, + [22] = {.index = 23, .length = 1}, + [23] = {.index = 24, .length = 2}, + [24] = {.index = 26, .length = 3}, + [25] = {.index = 23, .length = 1}, + [27] = {.index = 29, .length = 2}, + [28] = {.index = 29, .length = 2}, + [29] = {.index = 31, .length = 1}, + [30] = {.index = 29, .length = 2}, + [31] = {.index = 29, .length = 2}, + [32] = {.index = 32, .length = 3}, + [33] = {.index = 35, .length = 1}, + [34] = {.index = 36, .length = 3}, + [35] = {.index = 39, .length = 2}, + [36] = {.index = 41, .length = 2}, + [37] = {.index = 43, .length = 2}, + [38] = {.index = 45, .length = 2}, + [39] = {.index = 47, .length = 2}, + [40] = {.index = 45, .length = 2}, + [41] = {.index = 47, .length = 2}, + [42] = {.index = 49, .length = 1}, + [43] = {.index = 50, .length = 1}, + [45] = {.index = 51, .length = 1}, + [46] = {.index = 51, .length = 1}, + [47] = {.index = 52, .length = 2}, + [48] = {.index = 54, .length = 3}, + [49] = {.index = 57, .length = 2}, + [52] = {.index = 59, .length = 2}, + [53] = {.index = 11, .length = 1}, + [54] = {.index = 61, .length = 2}, + [55] = {.index = 63, .length = 2}, + [56] = {.index = 63, .length = 2}, + [57] = {.index = 65, .length = 1}, + [58] = {.index = 66, .length = 2}, + [59] = {.index = 68, .length = 2}, + [60] = {.index = 70, .length = 2}, + [61] = {.index = 72, .length = 1}, + [62] = {.index = 70, .length = 2}, + [63] = {.index = 73, .length = 3}, + [64] = {.index = 76, .length = 4}, + [65] = {.index = 80, .length = 2}, + [66] = {.index = 82, .length = 2}, + [67] = {.index = 84, .length = 2}, + [68] = {.index = 86, .length = 2}, + [69] = {.index = 88, .length = 2}, + [70] = {.index = 90, .length = 2}, + [71] = {.index = 49, .length = 1}, + [72] = {.index = 92, .length = 2}, + [73] = {.index = 94, .length = 2}, + [74] = {.index = 96, .length = 2}, + [75] = {.index = 98, .length = 2}, + [76] = {.index = 100, .length = 2}, + [77] = {.index = 102, .length = 2}, + [78] = {.index = 104, .length = 3}, + [80] = {.index = 107, .length = 1}, + [81] = {.index = 108, .length = 3}, + [82] = {.index = 111, .length = 1}, + [83] = {.index = 112, .length = 2}, + [85] = {.index = 114, .length = 2}, + [86] = {.index = 116, .length = 3}, + [87] = {.index = 119, .length = 3}, + [88] = {.index = 122, .length = 3}, + [89] = {.index = 125, .length = 1}, + [90] = {.index = 126, .length = 1}, + [91] = {.index = 127, .length = 2}, + [93] = {.index = 129, .length = 2}, + [94] = {.index = 131, .length = 3}, + [95] = {.index = 134, .length = 3}, + [96] = {.index = 137, .length = 2}, + [97] = {.index = 139, .length = 2}, + [98] = {.index = 141, .length = 1}, + [99] = {.index = 142, .length = 3}, + [100] = {.index = 145, .length = 2}, + [101] = {.index = 147, .length = 2}, + [102] = {.index = 149, .length = 5}, + [103] = {.index = 154, .length = 1}, + [104] = {.index = 155, .length = 2}, + [105] = {.index = 157, .length = 2}, + [106] = {.index = 159, .length = 1}, + [107] = {.index = 160, .length = 5}, + [108] = {.index = 165, .length = 3}, + [109] = {.index = 168, .length = 2}, + [110] = {.index = 170, .length = 2}, + [111] = {.index = 172, .length = 1}, + [112] = {.index = 173, .length = 3}, + [113] = {.index = 176, .length = 1}, +}; + +static const TSFieldMapEntry ts_field_map_entries[] = { + [0] = + {field_module_name, 0, .inherited = true}, + {field_name, 0, .inherited = true}, + [2] = + {field_definition, 0, .inherited = true}, + [3] = + {field_left, 0, .inherited = true}, + {field_right, 0, .inherited = true}, + [5] = + {field_function, 0, .inherited = true}, + [6] = + {field_returns, 0, .inherited = true}, + [7] = + {field_operand, 1}, + {field_operator, 0}, + [9] = + {field_function, 0}, + [10] = + {field_definition, 1}, + [11] = + {field_name, 1}, + [12] = + {field_body, 2}, + {field_name, 1}, + [14] = + {field_type, 0}, + [15] = + {field_pattern, 1}, + [16] = + {field_list, 1}, + [17] = + {field_argument, 1}, + [18] = + {field_left, 0}, + {field_operator, 1}, + {field_right, 2}, + [21] = + {field_module_name, 1}, + {field_name, 3, .inherited = true}, + [23] = + {field_name, 0}, + [24] = + {field_name, 1}, + {field_type_parameters, 2}, + [26] = + {field_body, 3}, + {field_name, 1}, + {field_type_parameters, 2}, + [29] = + {field_name, 2}, + {field_path, 0}, + [31] = + {field_pattern, 2}, + [32] = + {field_alternative, 0, .inherited = true}, + {field_condition, 0, .inherited = true}, + {field_consequence, 0, .inherited = true}, + [35] = + {field_body, 0, .inherited = true}, + [36] = + {field_left, 0, .inherited = true}, + {field_operator, 0, .inherited = true}, + {field_right, 0, .inherited = true}, + [39] = + {field_function, 0, .inherited = true}, + {field_name, 0, .inherited = true}, + [41] = + {field_field, 0, .inherited = true}, + {field_value, 0, .inherited = true}, + [43] = + {field_body, 0, .inherited = true}, + {field_name, 0, .inherited = true}, + [45] = + {field_alias, 2}, + {field_path, 0}, + [47] = + {field_list, 2}, + {field_path, 0}, + [49] = + {field_name, 2}, + [50] = + {field_returns, 2, .inherited = true}, + [51] = + {field_trait, 1}, + [52] = + {field_bounds, 2}, + {field_name, 1}, + [54] = + {field_body, 3}, + {field_bounds, 2}, + {field_name, 1}, + [57] = + {field_name, 0}, + {field_name, 1, .inherited = true}, + [59] = + {field_bounds, 1}, + {field_left, 0}, + [61] = + {field_left, 1}, + {field_right, 3}, + [63] = + {field_body, 1}, + {field_name, 0}, + [65] = + {field_body, 1}, + [66] = + {field_pattern, 1}, + {field_value, 3}, + [68] = + {field_pattern, 1}, + {field_type, 3}, + [70] = + {field_name, 1}, + {field_type, 3}, + [72] = + {field_returns, 3, .inherited = true}, + [73] = + {field_bounds, 3}, + {field_name, 1}, + {field_type_parameters, 2}, + [76] = + {field_body, 4}, + {field_bounds, 3}, + {field_name, 1}, + {field_type_parameters, 2}, + [80] = + {field_module_name, 1}, + {field_name, 4, .inherited = true}, + [82] = + {field_name, 0, .inherited = true}, + {field_name, 1, .inherited = true}, + [84] = + {field_alias, 2}, + {field_name, 0}, + [86] = + {field_name, 0}, + {field_type, 2}, + [88] = + {field_bounds, 2}, + {field_left, 1}, + [90] = + {field_name, 0}, + {field_pattern, 2}, + [92] = + {field_pattern, 2}, + {field_value, 4}, + [94] = + {field_pattern, 2}, + {field_type, 4}, + [96] = + {field_condition, 1}, + {field_consequence, 2}, + [98] = + {field_body, 2}, + {field_value, 1}, + [100] = + {field_left, 0}, + {field_right, 2}, + [102] = + {field_field, 2}, + {field_value, 0}, + [104] = + {field_field, 0, .inherited = true}, + {field_function, 0}, + {field_value, 0, .inherited = true}, + [107] = + {field_returns, 4, .inherited = true}, + [108] = + {field_name, 1}, + {field_type, 4}, + {field_type_parameters, 2}, + [111] = + {field_returns, 3}, + [112] = + {field_body, 2}, + {field_name, 0}, + [114] = + {field_name, 1}, + {field_pattern, 3}, + [116] = + {field_alternative, 3}, + {field_condition, 1}, + {field_consequence, 2}, + [119] = + {field_pattern, 1}, + {field_type, 3}, + {field_value, 5}, + [122] = + {field_name, 1}, + {field_type, 3}, + {field_value, 5}, + [125] = + {field_returns, 5}, + [126] = + {field_returns, 4}, + [127] = + {field_name, 0}, + {field_value, 3}, + [129] = + {field_name, 2}, + {field_pattern, 4}, + [131] = + {field_pattern, 2}, + {field_type, 4}, + {field_value, 6}, + [134] = + {field_alternative, 1, .inherited = true}, + {field_condition, 1, .inherited = true}, + {field_consequence, 1, .inherited = true}, + [137] = + {field_name, 0}, + {field_value, 2}, + [139] = + {field_function, 0}, + {field_name, 3, .inherited = true}, + [141] = + {field_returns, 6}, + [142] = + {field_body, 2}, + {field_name, 0}, + {field_value, 4}, + [145] = + {field_name, 1}, + {field_value, 3}, + [147] = + {field_pattern, 0}, + {field_value, 2}, + [149] = + {field_alternative, 2, .inherited = true}, + {field_condition, 2, .inherited = true}, + {field_consequence, 2, .inherited = true}, + {field_pattern, 0}, + {field_value, 2}, + [154] = + {field_condition, 2}, + [155] = + {field_function, 0}, + {field_name, 4, .inherited = true}, + [157] = + {field_function, 0}, + {field_name, 2}, + [159] = + {field_returns, 7}, + [160] = + {field_alternative, 3, .inherited = true}, + {field_condition, 3, .inherited = true}, + {field_consequence, 3, .inherited = true}, + {field_pattern, 1}, + {field_value, 3}, + [165] = + {field_function, 0}, + {field_name, 2}, + {field_name, 5, .inherited = true}, + [168] = + {field_function, 0}, + {field_name, 5, .inherited = true}, + [170] = + {field_function, 0}, + {field_name, 3}, + [172] = + {field_returns, 8}, + [173] = + {field_function, 0}, + {field_name, 3}, + {field_name, 6, .inherited = true}, + [176] = + {field_returns, 9}, +}; + +static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE_LENGTH] = { + [0] = {0}, + [6] = { + [0] = sym_identifier, + }, + [8] = { + [0] = alias_sym_type_identifier, + }, + [11] = { + [1] = alias_sym_type_identifier, + }, + [12] = { + [1] = alias_sym_type_identifier, + }, + [13] = { + [0] = alias_sym_type_identifier, + }, + [23] = { + [1] = alias_sym_type_identifier, + }, + [24] = { + [1] = alias_sym_type_identifier, + }, + [25] = { + [0] = alias_sym_shorthand_field_identifier, + }, + [26] = { + [2] = alias_sym_type, + }, + [28] = { + [2] = alias_sym_type_identifier, + }, + [30] = { + [0] = sym_identifier, + }, + [31] = { + [0] = sym_identifier, + [2] = alias_sym_type_identifier, + }, + [40] = { + [0] = sym_identifier, + }, + [41] = { + [0] = sym_identifier, + }, + [44] = { + [2] = sym_identifier, + }, + [45] = { + [1] = alias_sym_type_identifier, + }, + [47] = { + [1] = alias_sym_type_identifier, + }, + [48] = { + [1] = alias_sym_type_identifier, + }, + [50] = { + [3] = alias_sym_type, + }, + [51] = { + [1] = alias_sym_type_identifier, + }, + [52] = { + [0] = alias_sym_type_identifier, + }, + [53] = { + [1] = alias_sym_shorthand_field_identifier, + }, + [55] = { + [0] = alias_sym_type_identifier, + }, + [62] = { + [1] = alias_sym_type_identifier, + }, + [63] = { + [1] = alias_sym_type_identifier, + }, + [64] = { + [1] = alias_sym_type_identifier, + }, + [68] = { + [0] = alias_sym_field_identifier, + }, + [69] = { + [1] = alias_sym_type_identifier, + }, + [70] = { + [0] = alias_sym_field_identifier, + }, + [71] = { + [2] = alias_sym_shorthand_field_identifier, + }, + [77] = { + [2] = alias_sym_field_identifier, + }, + [79] = { + [4] = alias_sym_type, + }, + [81] = { + [1] = alias_sym_type_identifier, + }, + [84] = { + [4] = alias_sym_return_type, + }, + [85] = { + [1] = alias_sym_field_identifier, + }, + [92] = { + [5] = alias_sym_return_type, + }, + [93] = { + [2] = alias_sym_field_identifier, + }, + [96] = { + [0] = alias_sym_field_identifier, + }, + [100] = { + [1] = alias_sym_field_identifier, + }, +}; + +static const uint16_t ts_non_terminal_alias_map[] = { + sym__cairo_0_type, 3, + sym__cairo_0_type, + alias_sym_return_type, + alias_sym_type, + 0, +}; + +static const TSStateId ts_primary_state_ids[STATE_COUNT] = { + [0] = 0, + [1] = 1, + [2] = 2, + [3] = 2, + [4] = 4, + [5] = 5, + [6] = 4, + [7] = 2, + [8] = 5, + [9] = 5, + [10] = 4, [11] = 11, - [12] = 12, - [13] = 13, - [14] = 10, - [15] = 13, + [12] = 5, + [13] = 5, + [14] = 4, + [15] = 4, [16] = 16, [17] = 17, [18] = 18, @@ -1077,77 +2817,77 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [23] = 23, [24] = 24, [25] = 25, - [26] = 16, - [27] = 12, + [26] = 26, + [27] = 17, [28] = 28, [29] = 29, - [30] = 24, - [31] = 29, + [30] = 30, + [31] = 31, [32] = 21, - [33] = 5, - [34] = 20, - [35] = 17, + [33] = 33, + [34] = 34, + [35] = 35, [36] = 36, [37] = 37, - [38] = 4, - [39] = 11, + [38] = 38, + [39] = 36, [40] = 40, - [41] = 41, - [42] = 25, - [43] = 43, - [44] = 18, - [45] = 28, - [46] = 8, - [47] = 7, - [48] = 48, - [49] = 36, - [50] = 43, - [51] = 19, - [52] = 40, - [53] = 23, - [54] = 41, - [55] = 22, - [56] = 48, + [41] = 25, + [42] = 38, + [43] = 19, + [44] = 23, + [45] = 45, + [46] = 46, + [47] = 47, + [48] = 26, + [49] = 37, + [50] = 46, + [51] = 40, + [52] = 52, + [53] = 53, + [54] = 54, + [55] = 16, + [56] = 29, [57] = 57, - [58] = 57, + [58] = 54, [59] = 59, - [60] = 60, - [61] = 61, - [62] = 61, - [63] = 60, - [64] = 59, + [60] = 18, + [61] = 57, + [62] = 62, + [63] = 63, + [64] = 62, [65] = 65, [66] = 66, - [67] = 66, - [68] = 65, + [67] = 31, + [68] = 68, [69] = 69, - [70] = 70, - [71] = 71, - [72] = 72, - [73] = 70, - [74] = 71, - [75] = 75, - [76] = 76, - [77] = 77, - [78] = 78, - [79] = 69, - [80] = 78, - [81] = 72, - [82] = 75, - [83] = 76, - [84] = 77, - [85] = 85, - [86] = 86, - [87] = 85, + [70] = 30, + [71] = 28, + [72] = 59, + [73] = 66, + [74] = 65, + [75] = 45, + [76] = 24, + [77] = 63, + [78] = 52, + [79] = 35, + [80] = 34, + [81] = 33, + [82] = 22, + [83] = 47, + [84] = 68, + [85] = 69, + [86] = 20, + [87] = 87, [88] = 88, - [89] = 88, + [89] = 89, [90] = 90, [91] = 91, [92] = 92, - [93] = 92, - [94] = 91, - [95] = 86, - [96] = 90, + [93] = 90, + [94] = 94, + [95] = 95, + [96] = 96, [97] = 97, [98] = 98, [99] = 99, @@ -1157,26 +2897,26 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [103] = 103, [104] = 104, [105] = 105, - [106] = 98, + [106] = 106, [107] = 107, [108] = 108, [109] = 109, - [110] = 108, - [111] = 99, + [110] = 110, + [111] = 111, [112] = 112, [113] = 113, - [114] = 112, + [114] = 114, [115] = 115, [116] = 116, - [117] = 97, + [117] = 117, [118] = 118, - [119] = 115, - [120] = 109, + [119] = 119, + [120] = 120, [121] = 121, - [122] = 121, - [123] = 100, - [124] = 107, - [125] = 113, + [122] = 122, + [123] = 123, + [124] = 124, + [125] = 125, [126] = 126, [127] = 127, [128] = 128, @@ -1192,85 +2932,85 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [138] = 138, [139] = 139, [140] = 140, - [141] = 127, - [142] = 129, - [143] = 132, - [144] = 105, + [141] = 141, + [142] = 142, + [143] = 143, + [144] = 144, [145] = 145, - [146] = 134, - [147] = 130, - [148] = 118, - [149] = 116, - [150] = 138, + [146] = 146, + [147] = 147, + [148] = 148, + [149] = 149, + [150] = 150, [151] = 151, [152] = 152, - [153] = 104, + [153] = 153, [154] = 154, - [155] = 103, + [155] = 155, [156] = 156, - [157] = 145, - [158] = 133, + [157] = 157, + [158] = 158, [159] = 159, - [160] = 135, + [160] = 160, [161] = 161, - [162] = 156, - [163] = 154, - [164] = 137, - [165] = 102, - [166] = 136, - [167] = 101, - [168] = 140, - [169] = 126, + [162] = 162, + [163] = 163, + [164] = 164, + [165] = 165, + [166] = 166, + [167] = 167, + [168] = 168, + [169] = 169, [170] = 170, - [171] = 159, + [171] = 171, [172] = 172, [173] = 173, [174] = 174, - [175] = 173, - [176] = 152, - [177] = 151, - [178] = 174, - [179] = 139, - [180] = 172, - [181] = 131, - [182] = 170, - [183] = 128, - [184] = 161, + [175] = 174, + [176] = 176, + [177] = 177, + [178] = 178, + [179] = 176, + [180] = 180, + [181] = 181, + [182] = 182, + [183] = 183, + [184] = 178, [185] = 185, [186] = 186, - [187] = 186, - [188] = 188, - [189] = 189, + [187] = 182, + [188] = 185, + [189] = 181, [190] = 190, [191] = 191, - [192] = 192, - [193] = 193, - [194] = 194, - [195] = 195, - [196] = 196, + [192] = 190, + [193] = 191, + [194] = 183, + [195] = 177, + [196] = 180, [197] = 197, - [198] = 198, - [199] = 199, + [198] = 197, + [199] = 186, [200] = 200, [201] = 201, [202] = 202, - [203] = 203, - [204] = 204, + [203] = 201, + [204] = 202, [205] = 205, [206] = 206, [207] = 207, - [208] = 208, - [209] = 207, + [208] = 206, + [209] = 200, [210] = 210, [211] = 211, [212] = 212, [213] = 213, - [214] = 214, + [214] = 87, [215] = 215, - [216] = 198, + [216] = 216, [217] = 217, - [218] = 214, - [219] = 215, + [218] = 211, + [219] = 219, [220] = 220, [221] = 221, [222] = 222, @@ -1279,97 +3019,97 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [225] = 225, [226] = 226, [227] = 227, - [228] = 225, - [229] = 213, - [230] = 222, - [231] = 220, - [232] = 211, + [228] = 228, + [229] = 229, + [230] = 230, + [231] = 231, + [232] = 232, [233] = 233, [234] = 234, [235] = 235, [236] = 236, - [237] = 237, + [237] = 224, [238] = 238, - [239] = 239, - [240] = 240, + [239] = 228, + [240] = 235, [241] = 241, [242] = 242, [243] = 243, [244] = 244, [245] = 245, - [246] = 246, - [247] = 247, - [248] = 248, - [249] = 249, + [246] = 229, + [247] = 220, + [248] = 230, + [249] = 242, [250] = 250, [251] = 251, [252] = 252, - [253] = 253, - [254] = 254, - [255] = 255, - [256] = 256, - [257] = 257, - [258] = 258, - [259] = 259, + [253] = 222, + [254] = 228, + [255] = 230, + [256] = 242, + [257] = 225, + [258] = 226, + [259] = 238, [260] = 260, [261] = 261, [262] = 262, - [263] = 263, - [264] = 264, + [263] = 241, + [264] = 234, [265] = 265, - [266] = 266, + [266] = 243, [267] = 267, - [268] = 268, - [269] = 269, - [270] = 270, - [271] = 267, - [272] = 272, - [273] = 273, - [274] = 274, - [275] = 275, - [276] = 274, - [277] = 272, - [278] = 270, - [279] = 269, - [280] = 275, - [281] = 281, - [282] = 282, - [283] = 283, - [284] = 273, + [268] = 235, + [269] = 221, + [270] = 245, + [271] = 271, + [272] = 241, + [273] = 262, + [274] = 224, + [275] = 261, + [276] = 265, + [277] = 260, + [278] = 226, + [279] = 219, + [280] = 225, + [281] = 252, + [282] = 229, + [283] = 238, + [284] = 231, [285] = 285, - [286] = 286, + [286] = 236, [287] = 287, - [288] = 281, - [289] = 285, + [288] = 222, + [289] = 221, [290] = 290, - [291] = 283, - [292] = 292, + [291] = 92, + [292] = 91, [293] = 293, - [294] = 294, - [295] = 295, + [294] = 261, + [295] = 262, [296] = 296, - [297] = 294, - [298] = 295, + [297] = 243, + [298] = 298, [299] = 299, - [300] = 300, + [300] = 285, [301] = 301, [302] = 302, - [303] = 300, - [304] = 302, - [305] = 301, - [306] = 306, - [307] = 307, + [303] = 109, + [304] = 97, + [305] = 305, + [306] = 113, + [307] = 170, [308] = 308, [309] = 309, - [310] = 310, - [311] = 311, - [312] = 312, + [310] = 169, + [311] = 167, + [312] = 134, [313] = 313, [314] = 314, [315] = 315, [316] = 316, [317] = 317, - [318] = 316, + [318] = 318, [319] = 319, [320] = 320, [321] = 321, @@ -1378,201 +3118,1632 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [324] = 324, [325] = 325, [326] = 326, - [327] = 60, - [328] = 59, - [329] = 61, + [327] = 327, + [328] = 328, + [329] = 329, [330] = 330, - [331] = 65, + [331] = 331, [332] = 332, [333] = 333, [334] = 334, - [335] = 334, - [336] = 332, + [335] = 335, + [336] = 336, [337] = 337, [338] = 338, [339] = 339, [340] = 340, - [341] = 339, + [341] = 91, [342] = 342, [343] = 343, [344] = 344, - [345] = 345, + [345] = 92, [346] = 346, [347] = 347, [348] = 348, [349] = 349, - [350] = 342, + [350] = 350, [351] = 351, - [352] = 349, + [352] = 352, [353] = 353, - [354] = 348, + [354] = 354, [355] = 355, - [356] = 78, + [356] = 356, [357] = 357, - [358] = 71, - [359] = 66, - [360] = 357, + [358] = 358, + [359] = 359, + [360] = 360, [361] = 361, - [362] = 77, - [363] = 76, - [364] = 75, + [362] = 362, + [363] = 363, + [364] = 364, [365] = 365, - [366] = 365, + [366] = 366, [367] = 367, [368] = 368, [369] = 369, [370] = 370, [371] = 371, - [372] = 72, - [373] = 70, - [374] = 69, - [375] = 371, + [372] = 372, + [373] = 373, + [374] = 374, + [375] = 375, [376] = 376, - [377] = 370, + [377] = 377, [378] = 378, [379] = 379, [380] = 380, [381] = 381, - [382] = 380, + [382] = 382, [383] = 383, [384] = 384, - [385] = 380, + [385] = 385, [386] = 386, [387] = 387, [388] = 388, [389] = 389, [390] = 390, [391] = 391, - [392] = 392, + [392] = 119, [393] = 393, - [394] = 379, - [395] = 395, - [396] = 368, - [397] = 397, + [394] = 393, + [395] = 393, + [396] = 171, + [397] = 87, [398] = 398, - [399] = 397, + [399] = 145, [400] = 400, [401] = 401, - [402] = 402, - [403] = 390, - [404] = 404, - [405] = 388, - [406] = 367, + [402] = 89, + [403] = 401, + [404] = 88, + [405] = 405, + [406] = 401, [407] = 407, - [408] = 408, - [409] = 409, - [410] = 395, - [411] = 391, - [412] = 412, + [408] = 407, + [409] = 106, + [410] = 164, + [411] = 91, + [412] = 92, [413] = 413, - [414] = 414, - [415] = 415, - [416] = 415, - [417] = 417, - [418] = 418, - [419] = 419, - [420] = 420, + [414] = 159, + [415] = 102, + [416] = 110, + [417] = 152, + [418] = 160, + [419] = 400, + [420] = 405, [421] = 421, [422] = 422, - [423] = 423, - [424] = 424, - [425] = 417, - [426] = 426, - [427] = 88, - [428] = 86, - [429] = 429, - [430] = 430, - [431] = 426, - [432] = 422, - [433] = 419, - [434] = 434, - [435] = 435, - [436] = 436, - [437] = 418, - [438] = 420, - [439] = 421, - [440] = 440, - [441] = 441, - [442] = 413, - [443] = 443, - [444] = 444, - [445] = 445, - [446] = 446, - [447] = 447, - [448] = 448, - [449] = 449, - [450] = 450, - [451] = 451, - [452] = 452, + [423] = 129, + [424] = 163, + [425] = 169, + [426] = 170, + [427] = 427, + [428] = 133, + [429] = 131, + [430] = 118, + [431] = 108, + [432] = 427, + [433] = 369, + [434] = 105, + [435] = 161, + [436] = 143, + [437] = 142, + [438] = 141, + [439] = 140, + [440] = 138, + [441] = 137, + [442] = 125, + [443] = 151, + [444] = 132, + [445] = 128, + [446] = 111, + [447] = 120, + [448] = 123, + [449] = 117, + [450] = 127, + [451] = 97, + [452] = 135, [453] = 453, - [454] = 454, - [455] = 455, - [456] = 456, - [457] = 457, - [458] = 458, - [459] = 459, - [460] = 460, - [461] = 461, - [462] = 462, - [463] = 463, - [464] = 450, - [465] = 456, - [466] = 452, - [467] = 467, - [468] = 468, - [469] = 469, - [470] = 451, - [471] = 471, - [472] = 472, - [473] = 473, - [474] = 474, + [454] = 121, + [455] = 126, + [456] = 122, + [457] = 130, + [458] = 134, + [459] = 144, + [460] = 150, + [461] = 165, + [462] = 166, + [463] = 167, + [464] = 107, + [465] = 104, + [466] = 172, + [467] = 155, + [468] = 95, + [469] = 96, + [470] = 162, + [471] = 124, + [472] = 413, + [473] = 421, + [474] = 98, [475] = 475, - [476] = 476, - [477] = 445, + [476] = 99, + [477] = 477, [478] = 478, [479] = 479, - [480] = 480, - [481] = 481, - [482] = 482, - [483] = 483, - [484] = 484, - [485] = 485, - [486] = 471, - [487] = 476, - [488] = 459, - [489] = 489, - [490] = 472, - [491] = 475, - [492] = 492, - [493] = 452, - [494] = 473, - [495] = 495, - [496] = 456, - [497] = 481, - [498] = 480, - [499] = 461, - [500] = 460, - [501] = 483, + [480] = 100, + [481] = 360, + [482] = 168, + [483] = 453, + [484] = 101, + [485] = 427, + [486] = 486, + [487] = 103, + [488] = 109, + [489] = 112, + [490] = 113, + [491] = 173, + [492] = 319, + [493] = 357, + [494] = 114, + [495] = 453, + [496] = 115, + [497] = 497, + [498] = 498, + [499] = 499, + [500] = 500, + [501] = 501, [502] = 502, [503] = 503, - [504] = 504, - [505] = 447, - [506] = 449, - [507] = 453, - [508] = 492, - [509] = 444, - [510] = 510, - [511] = 489, - [512] = 495, - [513] = 448, - [514] = 514, - [515] = 479, - [516] = 467, - [517] = 478, + [504] = 500, + [505] = 505, + [506] = 506, + [507] = 507, + [508] = 508, + [509] = 486, + [510] = 158, + [511] = 156, + [512] = 154, + [513] = 513, + [514] = 497, + [515] = 153, + [516] = 498, + [517] = 499, [518] = 518, - [519] = 469, - [520] = 514, - [521] = 462, + [519] = 149, + [520] = 520, + [521] = 148, + [522] = 522, + [523] = 147, + [524] = 524, + [525] = 146, + [526] = 139, + [527] = 527, + [528] = 136, + [529] = 529, + [530] = 530, + [531] = 479, + [532] = 500, + [533] = 478, + [534] = 477, + [535] = 535, + [536] = 530, + [537] = 501, + [538] = 475, + [539] = 539, + [540] = 94, + [541] = 116, + [542] = 542, + [543] = 543, + [544] = 544, + [545] = 545, + [546] = 542, + [547] = 547, + [548] = 548, + [549] = 549, + [550] = 550, + [551] = 551, + [552] = 552, + [553] = 553, + [554] = 554, + [555] = 555, + [556] = 556, + [557] = 557, + [558] = 558, + [559] = 559, + [560] = 560, + [561] = 561, + [562] = 562, + [563] = 563, + [564] = 564, + [565] = 565, + [566] = 566, + [567] = 567, + [568] = 568, + [569] = 569, + [570] = 570, + [571] = 571, + [572] = 572, + [573] = 573, + [574] = 574, + [575] = 575, + [576] = 576, + [577] = 577, + [578] = 578, + [579] = 579, + [580] = 580, + [581] = 581, + [582] = 582, + [583] = 583, + [584] = 539, + [585] = 585, + [586] = 522, + [587] = 505, + [588] = 588, + [589] = 589, + [590] = 590, + [591] = 591, + [592] = 592, + [593] = 593, + [594] = 507, + [595] = 595, + [596] = 596, + [597] = 597, + [598] = 508, + [599] = 591, + [600] = 574, + [601] = 580, + [602] = 582, + [603] = 547, + [604] = 563, + [605] = 605, + [606] = 606, + [607] = 607, + [608] = 608, + [609] = 555, + [610] = 597, + [611] = 552, + [612] = 545, + [613] = 549, + [614] = 578, + [615] = 589, + [616] = 571, + [617] = 559, + [618] = 579, + [619] = 556, + [620] = 551, + [621] = 565, + [622] = 596, + [623] = 548, + [624] = 561, + [625] = 562, + [626] = 568, + [627] = 567, + [628] = 553, + [629] = 629, + [630] = 566, + [631] = 631, + [632] = 575, + [633] = 573, + [634] = 577, + [635] = 550, + [636] = 581, + [637] = 583, + [638] = 560, + [639] = 558, + [640] = 588, + [641] = 572, + [642] = 570, + [643] = 554, + [644] = 569, + [645] = 576, + [646] = 590, + [647] = 585, + [648] = 593, + [649] = 544, + [650] = 557, + [651] = 595, + [652] = 543, + [653] = 564, + [654] = 654, + [655] = 655, + [656] = 88, + [657] = 89, + [658] = 658, + [659] = 654, + [660] = 660, + [661] = 661, + [662] = 661, + [663] = 658, + [664] = 664, + [665] = 665, + [666] = 666, + [667] = 667, + [668] = 667, + [669] = 669, + [670] = 670, + [671] = 666, + [672] = 664, + [673] = 673, + [674] = 674, + [675] = 675, + [676] = 676, + [677] = 677, + [678] = 678, + [679] = 679, + [680] = 680, + [681] = 681, + [682] = 682, + [683] = 683, + [684] = 684, + [685] = 685, + [686] = 686, + [687] = 687, + [688] = 688, + [689] = 689, + [690] = 690, + [691] = 691, + [692] = 692, + [693] = 693, + [694] = 694, + [695] = 695, + [696] = 694, + [697] = 677, + [698] = 698, + [699] = 699, + [700] = 679, + [701] = 695, + [702] = 678, + [703] = 703, + [704] = 704, + [705] = 705, + [706] = 706, + [707] = 707, + [708] = 708, + [709] = 709, + [710] = 710, + [711] = 682, + [712] = 712, + [713] = 707, + [714] = 714, + [715] = 715, + [716] = 716, + [717] = 717, + [718] = 683, + [719] = 717, + [720] = 688, + [721] = 721, + [722] = 703, + [723] = 687, + [724] = 724, + [725] = 709, + [726] = 721, + [727] = 715, + [728] = 728, + [729] = 729, + [730] = 730, + [731] = 731, + [732] = 681, + [733] = 684, + [734] = 674, + [735] = 735, + [736] = 680, + [737] = 737, + [738] = 690, + [739] = 739, + [740] = 740, + [741] = 673, + [742] = 687, + [743] = 743, + [744] = 744, + [745] = 706, + [746] = 681, + [747] = 724, + [748] = 737, + [749] = 136, + [750] = 154, + [751] = 751, + [752] = 752, + [753] = 753, + [754] = 753, + [755] = 755, + [756] = 756, + [757] = 755, + [758] = 758, + [759] = 756, + [760] = 94, + [761] = 761, + [762] = 116, + [763] = 139, + [764] = 158, + [765] = 751, + [766] = 766, + [767] = 156, + [768] = 752, + [769] = 146, + [770] = 153, + [771] = 771, + [772] = 149, + [773] = 758, + [774] = 148, + [775] = 775, + [776] = 771, + [777] = 147, + [778] = 778, + [779] = 779, + [780] = 780, + [781] = 781, + [782] = 781, + [783] = 783, + [784] = 784, + [785] = 785, + [786] = 786, + [787] = 787, + [788] = 788, + [789] = 786, + [790] = 787, + [791] = 791, + [792] = 792, + [793] = 793, + [794] = 794, + [795] = 795, + [796] = 794, + [797] = 797, + [798] = 798, + [799] = 799, + [800] = 800, + [801] = 799, + [802] = 800, + [803] = 798, + [804] = 797, + [805] = 805, + [806] = 806, + [807] = 807, + [808] = 807, + [809] = 809, + [810] = 806, + [811] = 806, + [812] = 809, + [813] = 805, + [814] = 814, + [815] = 815, + [816] = 816, + [817] = 817, + [818] = 818, + [819] = 817, + [820] = 820, + [821] = 821, + [822] = 822, + [823] = 823, + [824] = 824, + [825] = 825, + [826] = 826, + [827] = 827, + [828] = 828, + [829] = 829, + [830] = 827, + [831] = 822, + [832] = 824, + [833] = 833, + [834] = 814, + [835] = 823, + [836] = 836, + [837] = 837, + [838] = 838, + [839] = 839, + [840] = 840, + [841] = 841, + [842] = 842, + [843] = 843, + [844] = 815, + [845] = 845, + [846] = 846, + [847] = 840, + [848] = 848, + [849] = 845, + [850] = 850, + [851] = 851, + [852] = 842, + [853] = 853, + [854] = 818, + [855] = 855, + [856] = 825, + [857] = 821, + [858] = 820, + [859] = 855, + [860] = 848, + [861] = 841, + [862] = 833, + [863] = 839, + [864] = 864, + [865] = 865, + [866] = 866, + [867] = 866, + [868] = 868, + [869] = 865, + [870] = 870, + [871] = 871, + [872] = 864, + [873] = 870, + [874] = 868, + [875] = 566, + [876] = 565, + [877] = 877, + [878] = 878, + [879] = 871, + [880] = 878, + [881] = 881, + [882] = 882, + [883] = 883, + [884] = 884, + [885] = 885, + [886] = 886, + [887] = 887, + [888] = 888, + [889] = 889, + [890] = 887, + [891] = 891, + [892] = 892, + [893] = 893, + [894] = 894, + [895] = 895, + [896] = 896, + [897] = 884, + [898] = 898, + [899] = 899, + [900] = 888, + [901] = 901, + [902] = 902, + [903] = 892, + [904] = 904, + [905] = 905, + [906] = 882, + [907] = 565, + [908] = 908, + [909] = 895, + [910] = 910, + [911] = 911, + [912] = 912, + [913] = 913, + [914] = 905, + [915] = 898, + [916] = 916, + [917] = 896, + [918] = 913, + [919] = 910, + [920] = 902, + [921] = 916, + [922] = 894, + [923] = 923, + [924] = 908, + [925] = 925, + [926] = 926, + [927] = 911, + [928] = 899, + [929] = 929, + [930] = 926, + [931] = 893, + [932] = 901, + [933] = 566, + [934] = 929, + [935] = 889, + [936] = 923, + [937] = 881, + [938] = 925, + [939] = 912, + [940] = 940, + [941] = 91, + [942] = 942, + [943] = 943, + [944] = 944, + [945] = 945, + [946] = 944, + [947] = 947, + [948] = 92, + [949] = 945, + [950] = 950, + [951] = 951, + [952] = 952, + [953] = 950, + [954] = 951, + [955] = 955, + [956] = 952, + [957] = 957, + [958] = 957, + [959] = 379, + [960] = 387, + [961] = 364, + [962] = 344, + [963] = 356, + [964] = 338, + [965] = 349, + [966] = 966, + [967] = 358, + [968] = 322, + [969] = 333, + [970] = 382, + [971] = 339, + [972] = 378, + [973] = 331, + [974] = 323, + [975] = 315, + [976] = 326, + [977] = 343, + [978] = 336, + [979] = 319, + [980] = 352, + [981] = 328, + [982] = 357, + [983] = 983, + [984] = 367, + [985] = 386, + [986] = 986, + [987] = 372, + [988] = 381, + [989] = 373, + [990] = 388, + [991] = 376, + [992] = 346, + [993] = 342, + [994] = 354, + [995] = 380, + [996] = 348, + [997] = 384, + [998] = 383, + [999] = 365, + [1000] = 316, + [1001] = 318, + [1002] = 362, + [1003] = 361, + [1004] = 340, + [1005] = 385, + [1006] = 377, + [1007] = 368, + [1008] = 1008, + [1009] = 366, + [1010] = 314, + [1011] = 371, + [1012] = 375, + [1013] = 1013, + [1014] = 353, + [1015] = 324, + [1016] = 355, + [1017] = 360, + [1018] = 369, + [1019] = 370, + [1020] = 317, + [1021] = 983, + [1022] = 986, + [1023] = 334, + [1024] = 325, + [1025] = 329, + [1026] = 359, + [1027] = 335, + [1028] = 330, + [1029] = 327, + [1030] = 321, + [1031] = 337, + [1032] = 320, + [1033] = 351, + [1034] = 374, + [1035] = 332, + [1036] = 350, + [1037] = 363, + [1038] = 1038, + [1039] = 1039, + [1040] = 1039, + [1041] = 1041, + [1042] = 1041, + [1043] = 1043, + [1044] = 1043, + [1045] = 1045, + [1046] = 1046, + [1047] = 1047, + [1048] = 1048, + [1049] = 1049, + [1050] = 1050, + [1051] = 1051, + [1052] = 1052, + [1053] = 1053, + [1054] = 1054, + [1055] = 1055, + [1056] = 1056, + [1057] = 1057, + [1058] = 106, + [1059] = 1047, + [1060] = 1060, + [1061] = 1051, + [1062] = 1060, + [1063] = 1063, + [1064] = 1048, + [1065] = 1050, + [1066] = 1056, + [1067] = 1067, + [1068] = 1045, + [1069] = 1069, + [1070] = 1053, + [1071] = 110, + [1072] = 160, + [1073] = 1073, + [1074] = 1057, + [1075] = 1052, + [1076] = 1076, + [1077] = 1077, + [1078] = 1078, + [1079] = 1079, + [1080] = 1080, + [1081] = 1081, + [1082] = 1082, + [1083] = 1082, + [1084] = 1084, + [1085] = 1079, + [1086] = 1086, + [1087] = 1087, + [1088] = 1088, + [1089] = 1089, + [1090] = 1084, + [1091] = 1091, + [1092] = 1092, + [1093] = 1093, + [1094] = 1094, + [1095] = 1095, + [1096] = 1096, + [1097] = 1096, + [1098] = 1098, + [1099] = 1099, + [1100] = 1100, + [1101] = 1101, + [1102] = 1102, + [1103] = 1103, + [1104] = 1104, + [1105] = 1105, + [1106] = 1106, + [1107] = 1107, + [1108] = 1108, + [1109] = 1109, + [1110] = 1110, + [1111] = 1111, + [1112] = 1112, + [1113] = 1113, + [1114] = 1114, + [1115] = 1115, + [1116] = 1100, + [1117] = 1117, + [1118] = 1118, + [1119] = 1119, + [1120] = 1120, + [1121] = 1121, + [1122] = 1122, + [1123] = 1123, + [1124] = 1124, + [1125] = 1125, + [1126] = 1126, + [1127] = 1127, + [1128] = 1128, + [1129] = 1129, + [1130] = 1130, + [1131] = 1131, + [1132] = 1132, + [1133] = 1133, + [1134] = 1134, + [1135] = 1132, + [1136] = 1136, + [1137] = 1133, + [1138] = 1134, + [1139] = 1130, + [1140] = 1140, + [1141] = 1141, + [1142] = 1142, + [1143] = 1136, + [1144] = 1142, + [1145] = 1141, + [1146] = 1131, + [1147] = 1140, + [1148] = 1148, + [1149] = 1149, + [1150] = 1150, + [1151] = 1151, + [1152] = 1152, + [1153] = 1153, + [1154] = 400, + [1155] = 1155, + [1156] = 1156, + [1157] = 1157, + [1158] = 1158, + [1159] = 1159, + [1160] = 1151, + [1161] = 1161, + [1162] = 1162, + [1163] = 1156, + [1164] = 1164, + [1165] = 1165, + [1166] = 1166, + [1167] = 1167, + [1168] = 1168, + [1169] = 1169, + [1170] = 1162, + [1171] = 1171, + [1172] = 1172, + [1173] = 1173, + [1174] = 1164, + [1175] = 1161, + [1176] = 407, + [1177] = 1148, + [1178] = 405, + [1179] = 1124, + [1180] = 1180, + [1181] = 1181, + [1182] = 1182, + [1183] = 1183, + [1184] = 1105, + [1185] = 1185, + [1186] = 1186, + [1187] = 1187, + [1188] = 1188, + [1189] = 1125, + [1190] = 1117, + [1191] = 1191, + [1192] = 1192, + [1193] = 1193, + [1194] = 1194, + [1195] = 1195, + [1196] = 1196, + [1197] = 1197, + [1198] = 1198, + [1199] = 1199, + [1200] = 1200, + [1201] = 1191, + [1202] = 1202, + [1203] = 1203, + [1204] = 1204, + [1205] = 1205, + [1206] = 1206, + [1207] = 1207, + [1208] = 1208, + [1209] = 1194, + [1210] = 1210, + [1211] = 1211, + [1212] = 1212, + [1213] = 1187, + [1214] = 1214, + [1215] = 1215, + [1216] = 1216, + [1217] = 1217, + [1218] = 1218, + [1219] = 1111, + [1220] = 1206, + [1221] = 1181, + [1222] = 1222, + [1223] = 1223, + [1224] = 1182, + [1225] = 1188, + [1226] = 1226, + [1227] = 1227, + [1228] = 1208, + [1229] = 1212, + [1230] = 1230, + [1231] = 1129, + [1232] = 1197, + [1233] = 1196, + [1234] = 1123, + [1235] = 1185, + [1236] = 1236, + [1237] = 1237, + [1238] = 1238, + [1239] = 1109, + [1240] = 1193, + [1241] = 413, + [1242] = 1227, + [1243] = 1243, + [1244] = 1215, + [1245] = 1245, + [1246] = 1214, + [1247] = 1247, + [1248] = 478, + [1249] = 1249, + [1250] = 1250, + [1251] = 1251, + [1252] = 1252, + [1253] = 1253, + [1254] = 1254, + [1255] = 1255, + [1256] = 1256, + [1257] = 1257, + [1258] = 1258, + [1259] = 1257, + [1260] = 1255, + [1261] = 1252, + [1262] = 1251, + [1263] = 1263, + [1264] = 1264, + [1265] = 1265, + [1266] = 1266, + [1267] = 1249, + [1268] = 1251, + [1269] = 1249, + [1270] = 1270, + [1271] = 1271, + [1272] = 1272, + [1273] = 1273, + [1274] = 1274, + [1275] = 1252, + [1276] = 1255, + [1277] = 421, + [1278] = 1278, + [1279] = 1279, + [1280] = 1280, + [1281] = 1264, + [1282] = 1282, + [1283] = 1256, + [1284] = 1284, + [1285] = 1285, + [1286] = 1257, + [1287] = 1287, + [1288] = 1288, + [1289] = 475, + [1290] = 1265, + [1291] = 1291, + [1292] = 499, + [1293] = 1293, + [1294] = 1294, + [1295] = 1295, + [1296] = 1296, + [1297] = 1297, + [1298] = 1266, + [1299] = 1299, + [1300] = 1054, + [1301] = 1254, + [1302] = 1270, + [1303] = 1303, + [1304] = 1278, + [1305] = 1299, + [1306] = 1230, + [1307] = 1307, + [1308] = 1266, + [1309] = 1309, + [1310] = 398, + [1311] = 1311, + [1312] = 1312, + [1313] = 1253, + [1314] = 1218, + [1315] = 1315, + [1316] = 1274, + [1317] = 1295, + [1318] = 1296, + [1319] = 1294, + [1320] = 1284, + [1321] = 1321, + [1322] = 1322, + [1323] = 1312, + [1324] = 1324, + [1325] = 1285, + [1326] = 1280, + [1327] = 1327, + [1328] = 1249, + [1329] = 1271, + [1330] = 1321, + [1331] = 1282, + [1332] = 1332, + [1333] = 1333, + [1334] = 1334, + [1335] = 1335, + [1336] = 1291, + [1337] = 497, + [1338] = 498, + [1339] = 1339, + [1340] = 1340, + [1341] = 1341, + [1342] = 1293, + [1343] = 1343, + [1344] = 486, + [1345] = 1345, + [1346] = 1341, + [1347] = 1347, + [1348] = 1348, + [1349] = 1349, + [1350] = 1340, + [1351] = 1351, + [1352] = 1352, + [1353] = 1353, + [1354] = 1354, + [1355] = 1355, + [1356] = 1356, + [1357] = 479, + [1358] = 1358, + [1359] = 477, + [1360] = 1360, + [1361] = 1361, + [1362] = 1351, + [1363] = 1363, + [1364] = 1364, + [1365] = 1365, + [1366] = 1366, + [1367] = 1367, + [1368] = 1368, + [1369] = 1369, + [1370] = 1370, + [1371] = 1371, + [1372] = 1372, + [1373] = 1373, + [1374] = 1374, + [1375] = 1375, + [1376] = 1376, + [1377] = 1377, + [1378] = 1378, + [1379] = 1379, + [1380] = 1380, + [1381] = 1381, + [1382] = 1382, + [1383] = 1383, + [1384] = 1384, + [1385] = 1385, + [1386] = 1386, + [1387] = 1387, + [1388] = 1388, + [1389] = 1389, + [1390] = 1390, + [1391] = 1391, + [1392] = 1392, + [1393] = 1393, + [1394] = 1394, + [1395] = 1395, + [1396] = 1396, + [1397] = 1397, + [1398] = 1398, + [1399] = 1399, + [1400] = 1365, + [1401] = 1401, + [1402] = 1402, + [1403] = 1403, + [1404] = 1404, + [1405] = 1405, + [1406] = 1406, + [1407] = 1407, + [1408] = 1408, + [1409] = 1409, + [1410] = 1410, + [1411] = 1411, + [1412] = 1412, + [1413] = 1413, + [1414] = 1414, + [1415] = 1415, + [1416] = 1416, + [1417] = 1417, + [1418] = 1418, + [1419] = 1419, + [1420] = 1420, + [1421] = 1421, + [1422] = 1422, + [1423] = 1423, + [1424] = 1424, + [1425] = 1425, + [1426] = 1426, + [1427] = 1427, + [1428] = 1428, + [1429] = 1429, + [1430] = 1430, + [1431] = 1431, + [1432] = 1432, + [1433] = 1433, + [1434] = 1434, + [1435] = 1435, + [1436] = 1436, + [1437] = 1437, + [1438] = 1438, + [1439] = 1439, + [1440] = 1440, + [1441] = 1439, + [1442] = 1421, + [1443] = 1417, + [1444] = 1444, + [1445] = 1445, + [1446] = 1415, + [1447] = 1447, + [1448] = 1411, + [1449] = 1440, + [1450] = 1450, + [1451] = 1451, + [1452] = 1452, + [1453] = 1453, + [1454] = 1454, + [1455] = 1455, + [1456] = 1395, + [1457] = 1457, + [1458] = 1389, + [1459] = 1384, + [1460] = 1460, + [1461] = 1461, + [1462] = 1462, + [1463] = 1463, + [1464] = 1464, + [1465] = 1382, + [1466] = 1466, + [1467] = 1467, + [1468] = 1468, + [1469] = 1166, + [1470] = 1470, + [1471] = 1343, + [1472] = 1472, + [1473] = 1473, + [1474] = 1474, + [1475] = 1475, + [1476] = 1429, + [1477] = 1477, + [1478] = 1478, + [1479] = 1479, + [1480] = 1480, + [1481] = 1402, + [1482] = 1334, + [1483] = 1474, + [1484] = 1484, + [1485] = 1485, + [1486] = 1422, + [1487] = 1479, + [1488] = 1488, + [1489] = 1489, + [1490] = 1369, + [1491] = 1348, + [1492] = 1492, + [1493] = 1493, + [1494] = 1424, + [1495] = 1495, + [1496] = 1349, + [1497] = 1497, + [1498] = 1451, + [1499] = 1460, + [1500] = 1500, + [1501] = 1407, + [1502] = 1502, + [1503] = 1503, + [1504] = 1504, + [1505] = 1505, + [1506] = 1506, + [1507] = 1505, + [1508] = 1365, + [1509] = 1509, + [1510] = 1502, + [1511] = 1366, + [1512] = 1512, + [1513] = 1513, + [1514] = 1514, + [1515] = 1515, + [1516] = 1516, + [1517] = 1466, + [1518] = 1450, + [1519] = 1463, + [1520] = 1520, + [1521] = 1521, + [1522] = 1399, + [1523] = 1523, + [1524] = 1524, + [1525] = 1398, + [1526] = 1526, + [1527] = 1527, + [1528] = 1528, + [1529] = 1373, + [1530] = 1530, + [1531] = 1531, + [1532] = 1532, + [1533] = 1533, + [1534] = 1474, + [1535] = 1535, + [1536] = 1536, + [1537] = 1527, + [1538] = 1538, + [1539] = 1539, + [1540] = 1345, + [1541] = 1403, + [1542] = 1408, + [1543] = 1543, + [1544] = 1429, + [1545] = 1545, + [1546] = 1546, + [1547] = 1547, + [1548] = 1548, + [1549] = 1470, + [1550] = 1524, + [1551] = 1547, + [1552] = 1538, + [1553] = 1454, + [1554] = 1545, + [1555] = 1404, + [1556] = 1523, + [1557] = 1557, + [1558] = 1497, + [1559] = 1559, + [1560] = 1560, + [1561] = 1152, + [1562] = 1562, + [1563] = 1563, + [1564] = 1514, + [1565] = 1565, + [1566] = 1387, + [1567] = 1397, + [1568] = 1509, + [1569] = 1569, + [1570] = 1570, + [1571] = 1571, + [1572] = 1572, + [1573] = 1573, + [1574] = 1574, + [1575] = 1575, + [1576] = 1576, + [1577] = 1577, + [1578] = 1578, + [1579] = 1579, + [1580] = 1580, + [1581] = 1581, + [1582] = 1582, + [1583] = 1583, + [1584] = 1584, + [1585] = 1585, + [1586] = 1586, + [1587] = 1587, + [1588] = 1588, + [1589] = 1578, + [1590] = 1590, + [1591] = 1591, + [1592] = 1592, + [1593] = 1593, + [1594] = 1594, + [1595] = 1595, + [1596] = 1591, + [1597] = 1597, + [1598] = 1598, + [1599] = 1599, + [1600] = 1600, + [1601] = 1601, + [1602] = 1600, + [1603] = 1583, + [1604] = 1570, + [1605] = 1605, + [1606] = 1606, + [1607] = 1607, + [1608] = 1087, + [1609] = 1609, + [1610] = 1610, + [1611] = 1611, + [1612] = 1612, + [1613] = 1613, + [1614] = 1614, + [1615] = 1615, + [1616] = 1616, + [1617] = 1617, + [1618] = 1618, + [1619] = 1619, + [1620] = 1620, + [1621] = 1621, + [1622] = 1622, + [1623] = 1623, + [1624] = 1624, + [1625] = 1625, + [1626] = 1626, + [1627] = 1627, + [1628] = 1628, + [1629] = 1629, + [1630] = 1630, + [1631] = 1576, + [1632] = 1632, + [1633] = 1633, + [1634] = 1634, + [1635] = 1635, + [1636] = 1636, + [1637] = 1637, + [1638] = 1638, + [1639] = 1639, + [1640] = 1640, + [1641] = 1641, + [1642] = 1571, + [1643] = 1643, + [1644] = 1626, + [1645] = 1645, + [1646] = 1632, + [1647] = 1647, + [1648] = 1648, + [1649] = 1649, + [1650] = 1619, + [1651] = 1651, + [1652] = 1643, + [1653] = 1630, + [1654] = 1654, + [1655] = 1622, + [1656] = 1628, + [1657] = 1629, + [1658] = 1658, + [1659] = 1659, + [1660] = 1593, + [1661] = 1661, + [1662] = 1662, + [1663] = 1579, + [1664] = 1615, + [1665] = 1665, + [1666] = 1666, + [1667] = 1641, + [1668] = 1640, + [1669] = 1669, + [1670] = 1638, + [1671] = 1595, + [1672] = 1610, + [1673] = 1606, + [1674] = 1674, + [1675] = 1675, + [1676] = 1676, + [1677] = 1582, + [1678] = 1637, + [1679] = 1679, + [1680] = 1680, + [1681] = 1681, + [1682] = 1682, + [1683] = 1601, + [1684] = 1684, + [1685] = 1685, + [1686] = 1686, + [1687] = 1687, + [1688] = 1688, + [1689] = 1689, + [1690] = 1690, + [1691] = 1691, + [1692] = 1624, + [1693] = 1693, + [1694] = 1694, + [1695] = 1621, + [1696] = 1696, + [1697] = 1697, + [1698] = 1609, + [1699] = 1590, + [1700] = 1592, + [1701] = 1701, + [1702] = 1702, + [1703] = 1597, + [1704] = 1704, + [1705] = 1705, + [1706] = 508, + [1707] = 1707, + [1708] = 507, + [1709] = 1709, + [1710] = 1710, + [1711] = 1711, + [1712] = 1712, + [1713] = 1713, + [1714] = 1620, + [1715] = 1715, + [1716] = 1618, + [1717] = 1612, + [1718] = 1718, + [1719] = 1616, + [1720] = 1581, + [1721] = 1617, + [1722] = 1722, + [1723] = 1723, + [1724] = 1724, + [1725] = 1725, + [1726] = 1726, + [1727] = 1727, + [1728] = 1728, + [1729] = 1729, + [1730] = 1730, + [1731] = 1731, + [1732] = 1732, + [1733] = 1733, + [1734] = 1734, + [1735] = 1735, + [1736] = 1736, + [1737] = 1737, + [1738] = 1738, + [1739] = 1739, + [1740] = 1740, + [1741] = 1741, + [1742] = 1742, + [1743] = 1743, + [1744] = 1744, + [1745] = 1745, + [1746] = 1746, + [1747] = 1747, + [1748] = 1748, + [1749] = 1749, + [1750] = 1750, + [1751] = 1751, + [1752] = 1752, + [1753] = 1753, + [1754] = 1754, + [1755] = 1755, + [1756] = 1756, + [1757] = 1757, + [1758] = 1758, + [1759] = 1759, + [1760] = 1760, + [1761] = 1761, + [1762] = 1762, + [1763] = 1763, + [1764] = 1764, + [1765] = 1765, + [1766] = 1766, + [1767] = 1767, + [1768] = 1758, + [1769] = 1753, + [1770] = 1748, + [1771] = 1745, + [1772] = 1772, + [1773] = 1738, + [1774] = 1774, + [1775] = 1723, + [1776] = 1726, + [1777] = 1728, + [1778] = 1778, + [1779] = 1759, + [1780] = 1780, + [1781] = 1781, + [1782] = 1756, + [1783] = 1783, + [1784] = 1772, + [1785] = 1780, + [1786] = 1786, + [1787] = 1787, + [1788] = 1788, + [1789] = 1755, + [1790] = 1754, + [1791] = 1791, + [1792] = 1792, + [1793] = 1793, + [1794] = 1794, + [1795] = 1738, + [1796] = 1745, + [1797] = 1758, + [1798] = 1798, + [1799] = 1791, + [1800] = 1800, + [1801] = 1801, + [1802] = 1802, + [1803] = 1803, + [1804] = 1804, + [1805] = 1750, + [1806] = 1724, + [1807] = 1746, + [1808] = 1808, + [1809] = 1787, + [1810] = 1788, + [1811] = 1811, + [1812] = 1812, + [1813] = 1813, + [1814] = 1814, + [1815] = 1815, + [1816] = 1816, + [1817] = 1817, + [1818] = 1818, + [1819] = 1819, + [1820] = 1820, + [1821] = 1821, + [1822] = 1822, + [1823] = 1823, + [1824] = 1824, + [1825] = 1787, + [1826] = 1826, + [1827] = 1827, + [1828] = 1828, + [1829] = 1829, + [1830] = 1830, + [1831] = 1831, + [1832] = 1832, + [1833] = 1801, + [1834] = 1834, + [1835] = 1803, + [1836] = 1804, + [1837] = 1823, + [1838] = 1838, + [1839] = 1839, + [1840] = 1840, + [1841] = 1841, + [1842] = 1842, + [1843] = 1843, + [1844] = 1844, + [1845] = 1845, + [1846] = 1742, + [1847] = 1847, + [1848] = 1848, + [1849] = 1849, + [1850] = 1729, + [1851] = 1851, + [1852] = 1788, + [1853] = 1730, + [1854] = 1854, + [1855] = 1812, + [1856] = 1786, + [1857] = 1841, + [1858] = 1783, + [1859] = 1778, + [1860] = 1860, + [1861] = 1813, + [1862] = 1862, + [1863] = 1863, + [1864] = 1864, + [1865] = 1865, + [1866] = 1866, + [1867] = 1734, + [1868] = 1731, + [1869] = 1869, + [1870] = 1724, + [1871] = 1871, + [1872] = 1872, + [1873] = 1832, + [1874] = 1814, + [1875] = 1875, + [1876] = 1876, + [1877] = 1877, + [1878] = 1878, + [1879] = 1736, + [1880] = 1787, + [1881] = 1781, + [1882] = 1739, + [1883] = 1744, + [1884] = 1884, + [1885] = 1746, + [1886] = 1800, + [1887] = 1829, + [1888] = 1741, + [1889] = 1889, + [1890] = 1890, + [1891] = 1828, + [1892] = 1892, + [1893] = 1827, + [1894] = 1826, + [1895] = 1830, + [1896] = 1831, + [1897] = 1897, + [1898] = 1851, + [1899] = 1822, + [1900] = 1821, + [1901] = 1820, + [1902] = 1875, + [1903] = 1903, + [1904] = 1904, + [1905] = 1819, + [1906] = 1818, + [1907] = 1824, + [1908] = 1817, + [1909] = 1909, + [1910] = 1910, + [1911] = 1911, + [1912] = 1912, + [1913] = 1913, + [1914] = 1914, + [1915] = 1760, + [1916] = 1762, + [1917] = 1917, + [1918] = 1918, + [1919] = 1919, + [1920] = 1920, + [1921] = 1920, + [1922] = 1919, + [1923] = 1923, + [1924] = 1910, + [1925] = 1909, + [1926] = 1926, + [1927] = 1871, + [1928] = 1928, + [1929] = 1929, + [1930] = 1864, + [1931] = 1860, + [1932] = 1854, + [1933] = 1933, + [1934] = 1934, + [1935] = 1935, + [1936] = 1936, + [1937] = 1802, + [1938] = 1938, + [1939] = 1939, + [1940] = 1940, + [1941] = 1941, + [1942] = 1942, + [1943] = 1918, + [1944] = 1909, + [1945] = 1941, + [1946] = 1911, + [1947] = 1947, + [1948] = 1842, + [1949] = 1798, + [1950] = 1917, + [1951] = 1926, + [1952] = 1914, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { @@ -1580,17886 +4751,71314 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { eof = lexer->eof(lexer); switch (state) { case 0: - if (eof) ADVANCE(21); - if (lookahead == '!') ADVANCE(6); - if (lookahead == '"') ADVANCE(1); - if (lookahead == '%') ADVANCE(9); - if (lookahead == '&') ADVANCE(40); - if (lookahead == '\'') ADVANCE(2); - if (lookahead == '(') ADVANCE(22); - if (lookahead == ')') ADVANCE(23); - if (lookahead == '*') ADVANCE(38); - if (lookahead == '+') ADVANCE(43); - if (lookahead == ',') ADVANCE(24); - if (lookahead == '-') ADVANCE(42); - if (lookahead == '.') ADVANCE(50); - if (lookahead == '/') ADVANCE(45); - if (lookahead == '0') ADVANCE(52); - if (lookahead == ':') ADVANCE(37); - if (lookahead == ';') ADVANCE(26); - if (lookahead == '=') ADVANCE(25); - if (lookahead == '@') ADVANCE(29); - if (lookahead == '[') ADVANCE(48); - if (lookahead == ']') ADVANCE(49); - if (lookahead == '{') ADVANCE(30); - if (lookahead == '}') ADVANCE(31); + if (eof) ADVANCE(80); + if (lookahead == '!') ADVANCE(148); + if (lookahead == '"') ADVANCE(7); + if (lookahead == '#') ADVANCE(141); + if (lookahead == '%') ADVANCE(161); + if (lookahead == '&') ADVANCE(106); + if (lookahead == '\'') ADVANCE(24); + if (lookahead == '(') ADVANCE(81); + if (lookahead == ')') ADVANCE(82); + if (lookahead == '*') ADVANCE(102); + if (lookahead == '+') ADVANCE(113); + if (lookahead == ',') ADVANCE(83); + if (lookahead == '-') ADVANCE(108); + if (lookahead == '.') ADVANCE(125); + if (lookahead == '/') ADVANCE(116); + if (lookahead == '0') ADVANCE(131); + if (lookahead == ':') ADVANCE(95); + if (lookahead == ';') ADVANCE(137); + if (lookahead == '<') ADVANCE(142); + if (lookahead == '=') ADVANCE(86); + if (lookahead == '>') ADVANCE(144); + if (lookahead == '?') ADVANCE(171); + if (lookahead == '@') ADVANCE(90); + if (lookahead == '[') ADVANCE(122); + if (lookahead == ']') ADVANCE(123); + if (lookahead == '^') ADVANCE(153); + if (lookahead == '{') ADVANCE(91); + if (lookahead == '|') ADVANCE(152); + if (lookahead == '}') ADVANCE(92); + if (lookahead == '~') ADVANCE(149); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(0) - if (('1' <= lookahead && lookahead <= '9')) ADVANCE(53); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(134); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(51); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(126); END_STATE(); case 1: - if (lookahead == '"') ADVANCE(46); - if (lookahead != 0 && - lookahead != '\n') ADVANCE(1); + if (lookahead == '\n') ADVANCE(138); + if (lookahead == '!') ADVANCE(58); + if (lookahead == '(') ADVANCE(81); + if (lookahead == '*') ADVANCE(101); + if (lookahead == '+') ADVANCE(114); + if (lookahead == ',') ADVANCE(83); + if (lookahead == '-') ADVANCE(107); + if (lookahead == '.') ADVANCE(124); + if (lookahead == '/') ADVANCE(115); + if (lookahead == ':') ADVANCE(94); + if (lookahead == ';') ADVANCE(137); + if (lookahead == '=') ADVANCE(85); + if (lookahead == '[') ADVANCE(122); + if (lookahead == '{') ADVANCE(91); + if (lookahead == '\t' || + lookahead == '\r' || + lookahead == ' ') SKIP(1) + if (('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(126); END_STATE(); case 2: - if (lookahead == '\'') ADVANCE(47); - if (lookahead != 0 && - lookahead != '\n') ADVANCE(2); + if (lookahead == '\n') ADVANCE(138); + if (lookahead == '*') ADVANCE(101); + if (lookahead == ',') ADVANCE(83); + if (lookahead == '/') ADVANCE(46); + if (lookahead == ':') ADVANCE(94); + if (lookahead == ';') ADVANCE(137); + if (lookahead == '=') ADVANCE(84); + if (lookahead == '\t' || + lookahead == '\r' || + lookahead == ' ') SKIP(2) END_STATE(); case 3: - if (lookahead == '+') ADVANCE(34); + if (lookahead == '!') ADVANCE(148); + if (lookahead == '#') ADVANCE(141); + if (lookahead == '%') ADVANCE(160); + if (lookahead == '&') ADVANCE(106); + if (lookahead == '\'') ADVANCE(42); + if (lookahead == '(') ADVANCE(81); + if (lookahead == ')') ADVANCE(82); + if (lookahead == '*') ADVANCE(103); + if (lookahead == '+') ADVANCE(114); + if (lookahead == ',') ADVANCE(83); + if (lookahead == '-') ADVANCE(109); + if (lookahead == '.') ADVANCE(124); + if (lookahead == '/') ADVANCE(116); + if (lookahead == '0') ADVANCE(131); + if (lookahead == ':') ADVANCE(57); + if (lookahead == ';') ADVANCE(137); + if (lookahead == '<') ADVANCE(155); + if (lookahead == '=') ADVANCE(86); + if (lookahead == '>') ADVANCE(144); + if (lookahead == '?') ADVANCE(171); + if (lookahead == '@') ADVANCE(90); + if (lookahead == '[') ADVANCE(122); + if (lookahead == ']') ADVANCE(123); + if (lookahead == '^') ADVANCE(153); + if (lookahead == '{') ADVANCE(91); + if (lookahead == '|') ADVANCE(152); + if (lookahead == '}') ADVANCE(92); + if (lookahead == '~') ADVANCE(149); + if (lookahead == '\t' || + lookahead == '\n' || + lookahead == '\r' || + lookahead == ' ') SKIP(3) + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(134); + if (('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(126); END_STATE(); case 4: - if (lookahead == '+') ADVANCE(3); - if (lookahead == '-') ADVANCE(7); - if (lookahead == '/') ADVANCE(5); - if (lookahead == '{') ADVANCE(30); + if (lookahead == '!') ADVANCE(147); + if (lookahead == '#') ADVANCE(141); + if (lookahead == '\'') ADVANCE(42); + if (lookahead == '(') ADVANCE(81); + if (lookahead == ')') ADVANCE(82); + if (lookahead == '*') ADVANCE(100); + if (lookahead == ',') ADVANCE(83); + if (lookahead == '-') ADVANCE(110); + if (lookahead == '.') ADVANCE(45); + if (lookahead == '/') ADVANCE(46); + if (lookahead == '0') ADVANCE(131); + if (lookahead == ':') ADVANCE(95); + if (lookahead == '@') ADVANCE(90); + if (lookahead == '{') ADVANCE(91); + if (lookahead == '}') ADVANCE(92); + if (lookahead == '~') ADVANCE(149); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(4) + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(134); + if (('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(126); END_STATE(); case 5: - if (lookahead == '/') ADVANCE(55); + if (lookahead == '!') ADVANCE(58); + if (lookahead == '%') ADVANCE(160); + if (lookahead == '&') ADVANCE(106); + if (lookahead == '(') ADVANCE(81); + if (lookahead == ')') ADVANCE(82); + if (lookahead == '*') ADVANCE(103); + if (lookahead == '+') ADVANCE(114); + if (lookahead == ',') ADVANCE(83); + if (lookahead == '-') ADVANCE(111); + if (lookahead == '.') ADVANCE(124); + if (lookahead == '/') ADVANCE(116); + if (lookahead == ':') ADVANCE(95); + if (lookahead == ';') ADVANCE(137); + if (lookahead == '<') ADVANCE(155); + if (lookahead == '=') ADVANCE(86); + if (lookahead == '>') ADVANCE(144); + if (lookahead == '?') ADVANCE(171); + if (lookahead == '[') ADVANCE(122); + if (lookahead == ']') ADVANCE(123); + if (lookahead == '^') ADVANCE(153); + if (lookahead == '{') ADVANCE(91); + if (lookahead == '|') ADVANCE(152); + if (lookahead == '}') ADVANCE(92); + if (lookahead == '\t' || + lookahead == '\n' || + lookahead == '\r' || + lookahead == ' ') SKIP(5) + if (('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(126); END_STATE(); case 6: - if (lookahead == '=') ADVANCE(35); + if (lookahead == '!') ADVANCE(58); + if (lookahead == '(') ADVANCE(81); + if (lookahead == ')') ADVANCE(82); + if (lookahead == '*') ADVANCE(101); + if (lookahead == '+') ADVANCE(112); + if (lookahead == ',') ADVANCE(83); + if (lookahead == '-') ADVANCE(107); + if (lookahead == '.') ADVANCE(124); + if (lookahead == '/') ADVANCE(115); + if (lookahead == ':') ADVANCE(94); + if (lookahead == ';') ADVANCE(137); + if (lookahead == '<') ADVANCE(154); + if (lookahead == '=') ADVANCE(86); + if (lookahead == '>') ADVANCE(143); + if (lookahead == '[') ADVANCE(122); + if (lookahead == ']') ADVANCE(123); + if (lookahead == '{') ADVANCE(91); + if (lookahead == '}') ADVANCE(92); + if (lookahead == '\t' || + lookahead == '\n' || + lookahead == '\r' || + lookahead == ' ') SKIP(6) + if (('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(126); END_STATE(); case 7: - if (lookahead == '>') ADVANCE(32); + if (lookahead == '"') ADVANCE(117); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(7); END_STATE(); case 8: - if (lookahead == 'a') ADVANCE(14); + if (lookahead == '\'') ADVANCE(118); + if (lookahead == '1') ADVANCE(10); + if (lookahead == '2') ADVANCE(15); + if (lookahead == '3') ADVANCE(9); + if (lookahead == '6') ADVANCE(13); + if (lookahead == '8') ADVANCE(172); + if (lookahead == 's') ADVANCE(20); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(24); END_STATE(); case 9: - if (lookahead == 'b') ADVANCE(18); - if (lookahead == 'l') ADVANCE(8); + if (lookahead == '\'') ADVANCE(118); + if (lookahead == '2') ADVANCE(172); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(24); END_STATE(); case 10: - if (lookahead == 'g') ADVANCE(28); + if (lookahead == '\'') ADVANCE(118); + if (lookahead == '2') ADVANCE(17); + if (lookahead == '6') ADVANCE(172); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(24); END_STATE(); case 11: - if (lookahead == 'i') ADVANCE(13); + if (lookahead == '\'') ADVANCE(118); + if (lookahead == '2') ADVANCE(14); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(24); END_STATE(); case 12: - if (lookahead == 'i') ADVANCE(15); + if (lookahead == '\'') ADVANCE(118); + if (lookahead == '3') ADVANCE(9); + if (lookahead == '6') ADVANCE(13); + if (lookahead == 'e') ADVANCE(21); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(24); END_STATE(); case 13: - if (lookahead == 'l') ADVANCE(17); + if (lookahead == '\'') ADVANCE(118); + if (lookahead == '4') ADVANCE(172); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(24); END_STATE(); case 14: - if (lookahead == 'n') ADVANCE(10); + if (lookahead == '\'') ADVANCE(118); + if (lookahead == '5') ADVANCE(9); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(24); END_STATE(); case 15: - if (lookahead == 'n') ADVANCE(16); + if (lookahead == '\'') ADVANCE(118); + if (lookahead == '5') ADVANCE(16); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(24); END_STATE(); case 16: - if (lookahead == 's') ADVANCE(27); + if (lookahead == '\'') ADVANCE(118); + if (lookahead == '6') ADVANCE(172); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(24); END_STATE(); case 17: - if (lookahead == 't') ADVANCE(12); + if (lookahead == '\'') ADVANCE(118); + if (lookahead == '8') ADVANCE(172); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(24); END_STATE(); case 18: - if (lookahead == 'u') ADVANCE(11); + if (lookahead == '\'') ADVANCE(118); + if (lookahead == 'e') ADVANCE(172); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(24); END_STATE(); case 19: - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f') || - lookahead == '|') ADVANCE(54); + if (lookahead == '\'') ADVANCE(118); + if (lookahead == 'f') ADVANCE(12); + if (lookahead == 'i') ADVANCE(8); + if (lookahead == 'u') ADVANCE(8); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(24); END_STATE(); case 20: - if (eof) ADVANCE(21); - if (lookahead == '!') ADVANCE(6); - if (lookahead == '%') ADVANCE(9); - if (lookahead == '&') ADVANCE(40); - if (lookahead == '\'') ADVANCE(2); - if (lookahead == '(') ADVANCE(22); - if (lookahead == ')') ADVANCE(23); - if (lookahead == '*') ADVANCE(38); - if (lookahead == '+') ADVANCE(44); - if (lookahead == ',') ADVANCE(24); - if (lookahead == '-') ADVANCE(41); - if (lookahead == '.') ADVANCE(50); - if (lookahead == '/') ADVANCE(45); - if (lookahead == '0') ADVANCE(52); - if (lookahead == ':') ADVANCE(37); - if (lookahead == ';') ADVANCE(26); - if (lookahead == '=') ADVANCE(25); - if (lookahead == '@') ADVANCE(29); - if (lookahead == '[') ADVANCE(48); - if (lookahead == ']') ADVANCE(49); - if (lookahead == '{') ADVANCE(30); - if (lookahead == '}') ADVANCE(31); - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\r' || - lookahead == ' ') SKIP(20) - if (('1' <= lookahead && lookahead <= '9')) ADVANCE(53); - if (('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(51); + if (lookahead == '\'') ADVANCE(118); + if (lookahead == 'i') ADVANCE(23); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(24); END_STATE(); case 21: - ACCEPT_TOKEN(ts_builtin_sym_end); + if (lookahead == '\'') ADVANCE(118); + if (lookahead == 'l') ADVANCE(22); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(24); END_STATE(); case 22: - ACCEPT_TOKEN(anon_sym_LPAREN); + if (lookahead == '\'') ADVANCE(118); + if (lookahead == 't') ADVANCE(11); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(24); END_STATE(); case 23: - ACCEPT_TOKEN(anon_sym_RPAREN); + if (lookahead == '\'') ADVANCE(118); + if (lookahead == 'z') ADVANCE(18); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(24); END_STATE(); case 24: - ACCEPT_TOKEN(anon_sym_COMMA); + if (lookahead == '\'') ADVANCE(118); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(24); END_STATE(); case 25: - ACCEPT_TOKEN(anon_sym_EQ); - if (lookahead == '=') ADVANCE(33); + if (lookahead == '\'') ADVANCE(119); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(25); END_STATE(); case 26: - ACCEPT_TOKEN(anon_sym_SEMI); + if (lookahead == '\'') ADVANCE(173); + if (lookahead == '1') ADVANCE(28); + if (lookahead == '2') ADVANCE(32); + if (lookahead == '3') ADVANCE(27); + if (lookahead == '6') ADVANCE(31); + if (lookahead == '8') ADVANCE(174); + if (lookahead == 's') ADVANCE(38); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(42); END_STATE(); case 27: - ACCEPT_TOKEN(anon_sym_PERCENTbuiltins); + if (lookahead == '\'') ADVANCE(173); + if (lookahead == '2') ADVANCE(174); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(42); END_STATE(); case 28: - ACCEPT_TOKEN(anon_sym_PERCENTlang); + if (lookahead == '\'') ADVANCE(173); + if (lookahead == '2') ADVANCE(35); + if (lookahead == '6') ADVANCE(174); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(42); END_STATE(); case 29: - ACCEPT_TOKEN(anon_sym_AT); + if (lookahead == '\'') ADVANCE(173); + if (lookahead == '2') ADVANCE(33); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(42); END_STATE(); case 30: - ACCEPT_TOKEN(anon_sym_LBRACE); + if (lookahead == '\'') ADVANCE(173); + if (lookahead == '3') ADVANCE(27); + if (lookahead == '6') ADVANCE(31); + if (lookahead == 'e') ADVANCE(39); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(42); END_STATE(); case 31: - ACCEPT_TOKEN(anon_sym_RBRACE); + if (lookahead == '\'') ADVANCE(173); + if (lookahead == '4') ADVANCE(174); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(42); END_STATE(); case 32: - ACCEPT_TOKEN(anon_sym_DASH_GT); + if (lookahead == '\'') ADVANCE(173); + if (lookahead == '5') ADVANCE(34); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(42); END_STATE(); case 33: - ACCEPT_TOKEN(anon_sym_EQ_EQ); + if (lookahead == '\'') ADVANCE(173); + if (lookahead == '5') ADVANCE(27); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(42); END_STATE(); case 34: - ACCEPT_TOKEN(anon_sym_PLUS_PLUS); + if (lookahead == '\'') ADVANCE(173); + if (lookahead == '6') ADVANCE(174); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(42); END_STATE(); case 35: - ACCEPT_TOKEN(anon_sym_BANG_EQ); + if (lookahead == '\'') ADVANCE(173); + if (lookahead == '8') ADVANCE(174); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(42); END_STATE(); case 36: - ACCEPT_TOKEN(anon_sym_PLUS_EQ); + if (lookahead == '\'') ADVANCE(173); + if (lookahead == 'e') ADVANCE(174); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(42); END_STATE(); case 37: - ACCEPT_TOKEN(anon_sym_COLON); + if (lookahead == '\'') ADVANCE(173); + if (lookahead == 'f') ADVANCE(30); + if (lookahead == 'i') ADVANCE(26); + if (lookahead == 'u') ADVANCE(26); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(42); END_STATE(); case 38: - ACCEPT_TOKEN(anon_sym_STAR); - if (lookahead == '*') ADVANCE(39); + if (lookahead == '\'') ADVANCE(173); + if (lookahead == 'i') ADVANCE(41); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(42); END_STATE(); case 39: - ACCEPT_TOKEN(anon_sym_STAR_STAR); + if (lookahead == '\'') ADVANCE(173); + if (lookahead == 'l') ADVANCE(40); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(42); END_STATE(); case 40: - ACCEPT_TOKEN(anon_sym_AMP); + if (lookahead == '\'') ADVANCE(173); + if (lookahead == 't') ADVANCE(29); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(42); END_STATE(); case 41: - ACCEPT_TOKEN(anon_sym_DASH); + if (lookahead == '\'') ADVANCE(173); + if (lookahead == 'z') ADVANCE(36); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(42); END_STATE(); case 42: - ACCEPT_TOKEN(anon_sym_DASH); - if (lookahead == '>') ADVANCE(32); + if (lookahead == '\'') ADVANCE(173); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(42); END_STATE(); case 43: - ACCEPT_TOKEN(anon_sym_PLUS); - if (lookahead == '+') ADVANCE(34); - if (lookahead == '=') ADVANCE(36); + if (lookahead == '+') ADVANCE(97); END_STATE(); case 44: - ACCEPT_TOKEN(anon_sym_PLUS); - if (lookahead == '=') ADVANCE(36); - END_STATE(); - case 45: - ACCEPT_TOKEN(anon_sym_SLASH); - if (lookahead == '/') ADVANCE(55); - END_STATE(); - case 46: - ACCEPT_TOKEN(sym_string); - if (lookahead == '"') ADVANCE(46); - if (lookahead != 0 && - lookahead != '\n') ADVANCE(1); - END_STATE(); - case 47: - ACCEPT_TOKEN(sym_short_string); - if (lookahead == '\'') ADVANCE(47); - if (lookahead != 0 && - lookahead != '\n') ADVANCE(2); - END_STATE(); - case 48: - ACCEPT_TOKEN(anon_sym_LBRACK); - END_STATE(); - case 49: - ACCEPT_TOKEN(anon_sym_RBRACK); - END_STATE(); - case 50: - ACCEPT_TOKEN(anon_sym_DOT); - END_STATE(); - case 51: - ACCEPT_TOKEN(sym_identifier); - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(51); - END_STATE(); - case 52: - ACCEPT_TOKEN(sym_number); - if (lookahead == 'x') ADVANCE(19); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(53); - END_STATE(); - case 53: - ACCEPT_TOKEN(sym_number); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(53); - END_STATE(); - case 54: - ACCEPT_TOKEN(sym_number); - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f') || - lookahead == '|') ADVANCE(54); - END_STATE(); - case 55: - ACCEPT_TOKEN(sym_comment); - if (lookahead != 0 && - lookahead != '\n') ADVANCE(55); - END_STATE(); - default: - return false; - } -} - -static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { - START_LEXER(); - eof = lexer->eof(lexer); - switch (state) { - case 0: - if (lookahead == 'a') ADVANCE(1); - if (lookahead == 'c') ADVANCE(2); - if (lookahead == 'd') ADVANCE(3); - if (lookahead == 'e') ADVANCE(4); - if (lookahead == 'f') ADVANCE(5); - if (lookahead == 'i') ADVANCE(6); - if (lookahead == 'j') ADVANCE(7); - if (lookahead == 'l') ADVANCE(8); - if (lookahead == 'n') ADVANCE(9); - if (lookahead == 'r') ADVANCE(10); - if (lookahead == 's') ADVANCE(11); - if (lookahead == 't') ADVANCE(12); - if (lookahead == 'u') ADVANCE(13); - if (lookahead == 'w') ADVANCE(14); + if (lookahead == '-') ADVANCE(59); + if (lookahead == '/') ADVANCE(46); + if (lookahead == ':') ADVANCE(94); + if (lookahead == ';') ADVANCE(137); + if (lookahead == '{') ADVANCE(91); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || - lookahead == ' ') SKIP(0) - END_STATE(); - case 1: - if (lookahead == 'b') ADVANCE(15); - if (lookahead == 'l') ADVANCE(16); - if (lookahead == 'n') ADVANCE(17); - if (lookahead == 'p') ADVANCE(18); - if (lookahead == 's') ADVANCE(19); - END_STATE(); - case 2: - if (lookahead == 'a') ADVANCE(20); - if (lookahead == 'o') ADVANCE(21); - END_STATE(); - case 3: - if (lookahead == 'w') ADVANCE(22); - END_STATE(); - case 4: - if (lookahead == 'l') ADVANCE(23); - END_STATE(); - case 5: - if (lookahead == 'e') ADVANCE(24); - if (lookahead == 'p') ADVANCE(25); - if (lookahead == 'r') ADVANCE(26); - if (lookahead == 'u') ADVANCE(27); - END_STATE(); - case 6: - if (lookahead == 'f') ADVANCE(28); - if (lookahead == 'm') ADVANCE(29); - END_STATE(); - case 7: - if (lookahead == 'm') ADVANCE(30); - END_STATE(); - case 8: - if (lookahead == 'e') ADVANCE(31); - if (lookahead == 'o') ADVANCE(32); - END_STATE(); - case 9: - if (lookahead == 'a') ADVANCE(33); - if (lookahead == 'e') ADVANCE(34); - if (lookahead == 'o') ADVANCE(35); - END_STATE(); - case 10: - if (lookahead == 'e') ADVANCE(36); - END_STATE(); - case 11: - if (lookahead == 't') ADVANCE(37); - END_STATE(); - case 12: - if (lookahead == 'e') ADVANCE(38); - END_STATE(); - case 13: - if (lookahead == 's') ADVANCE(39); - END_STATE(); - case 14: - if (lookahead == 'i') ADVANCE(40); - END_STATE(); - case 15: - if (lookahead == 's') ADVANCE(41); - END_STATE(); - case 16: - if (lookahead == 'l') ADVANCE(42); - END_STATE(); - case 17: - if (lookahead == 'd') ADVANCE(43); - END_STATE(); - case 18: - ACCEPT_TOKEN(anon_sym_ap); - END_STATE(); - case 19: - ACCEPT_TOKEN(anon_sym_as); - if (lookahead == 's') ADVANCE(44); - END_STATE(); - case 20: - if (lookahead == 'l') ADVANCE(45); - if (lookahead == 's') ADVANCE(46); - END_STATE(); - case 21: - if (lookahead == 'd') ADVANCE(47); - if (lookahead == 'n') ADVANCE(48); - END_STATE(); - case 22: - ACCEPT_TOKEN(anon_sym_dw); - END_STATE(); - case 23: - if (lookahead == 's') ADVANCE(49); - END_STATE(); - case 24: - if (lookahead == 'l') ADVANCE(50); - END_STATE(); - case 25: - ACCEPT_TOKEN(anon_sym_fp); - END_STATE(); - case 26: - if (lookahead == 'o') ADVANCE(51); - END_STATE(); - case 27: - if (lookahead == 'n') ADVANCE(52); - END_STATE(); - case 28: - ACCEPT_TOKEN(anon_sym_if); - END_STATE(); - case 29: - if (lookahead == 'p') ADVANCE(53); - END_STATE(); - case 30: - if (lookahead == 'p') ADVANCE(54); - END_STATE(); - case 31: - if (lookahead == 't') ADVANCE(55); - END_STATE(); - case 32: - if (lookahead == 'c') ADVANCE(56); - END_STATE(); - case 33: - if (lookahead == 'm') ADVANCE(57); - END_STATE(); - case 34: - if (lookahead == 'w') ADVANCE(58); - END_STATE(); - case 35: - if (lookahead == 'n') ADVANCE(59); - END_STATE(); - case 36: - if (lookahead == 'l') ADVANCE(60); - if (lookahead == 't') ADVANCE(61); - END_STATE(); - case 37: - if (lookahead == 'a') ADVANCE(62); - if (lookahead == 'r') ADVANCE(63); - END_STATE(); - case 38: - if (lookahead == 'm') ADVANCE(64); - END_STATE(); - case 39: - if (lookahead == 'i') ADVANCE(65); - END_STATE(); - case 40: - if (lookahead == 't') ADVANCE(66); - END_STATE(); - case 41: - ACCEPT_TOKEN(anon_sym_abs); - END_STATE(); - case 42: - if (lookahead == 'o') ADVANCE(67); - END_STATE(); - case 43: - ACCEPT_TOKEN(anon_sym_and); - END_STATE(); - case 44: - if (lookahead == 'e') ADVANCE(68); + lookahead == ' ') SKIP(44) + if (('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(126); END_STATE(); case 45: - if (lookahead == 'l') ADVANCE(69); + if (lookahead == '.') ADVANCE(146); END_STATE(); case 46: - if (lookahead == 't') ADVANCE(70); + if (lookahead == '/') ADVANCE(139); END_STATE(); case 47: - if (lookahead == 'e') ADVANCE(71); + if (lookahead == '1') ADVANCE(49); + if (lookahead == '2') ADVANCE(54); + if (lookahead == '3') ADVANCE(48); + if (lookahead == '6') ADVANCE(52); + if (lookahead == '8') ADVANCE(127); + if (lookahead == 's') ADVANCE(64); END_STATE(); case 48: - if (lookahead == 's') ADVANCE(72); + if (lookahead == '2') ADVANCE(127); END_STATE(); case 49: - if (lookahead == 'e') ADVANCE(73); + if (lookahead == '2') ADVANCE(56); + if (lookahead == '6') ADVANCE(127); END_STATE(); case 50: - if (lookahead == 't') ADVANCE(74); + if (lookahead == '2') ADVANCE(53); END_STATE(); case 51: - if (lookahead == 'm') ADVANCE(75); + if (lookahead == '3') ADVANCE(48); + if (lookahead == '6') ADVANCE(52); + if (lookahead == 'e') ADVANCE(67); END_STATE(); case 52: - if (lookahead == 'c') ADVANCE(76); + if (lookahead == '4') ADVANCE(127); END_STATE(); case 53: - if (lookahead == 'o') ADVANCE(77); + if (lookahead == '5') ADVANCE(48); END_STATE(); case 54: - ACCEPT_TOKEN(anon_sym_jmp); + if (lookahead == '5') ADVANCE(55); END_STATE(); case 55: - ACCEPT_TOKEN(anon_sym_let); + if (lookahead == '6') ADVANCE(127); END_STATE(); case 56: - if (lookahead == 'a') ADVANCE(78); + if (lookahead == '8') ADVANCE(127); END_STATE(); case 57: - if (lookahead == 'e') ADVANCE(79); + if (lookahead == ':') ADVANCE(140); END_STATE(); case 58: - ACCEPT_TOKEN(anon_sym_new); + if (lookahead == '=') ADVANCE(98); END_STATE(); case 59: - if (lookahead == 'd') ADVANCE(80); + if (lookahead == '>') ADVANCE(93); END_STATE(); case 60: - ACCEPT_TOKEN(anon_sym_rel); + if (lookahead == 'a') ADVANCE(69); END_STATE(); case 61: - ACCEPT_TOKEN(sym_inst_ret); - if (lookahead == 'u') ADVANCE(81); + if (lookahead == 'b') ADVANCE(74); + if (lookahead == 'l') ADVANCE(60); + if (lookahead == '{') ADVANCE(120); + if (lookahead == '}') ADVANCE(121); END_STATE(); case 62: - if (lookahead == 't') ADVANCE(82); + if (lookahead == 'e') ADVANCE(127); END_STATE(); case 63: - if (lookahead == 'u') ADVANCE(83); + if (lookahead == 'g') ADVANCE(89); END_STATE(); case 64: - if (lookahead == 'p') ADVANCE(84); + if (lookahead == 'i') ADVANCE(75); END_STATE(); case 65: - if (lookahead == 'n') ADVANCE(85); + if (lookahead == 'i') ADVANCE(70); END_STATE(); case 66: - if (lookahead == 'h') ADVANCE(86); + if (lookahead == 'i') ADVANCE(68); END_STATE(); case 67: - if (lookahead == 'c') ADVANCE(87); + if (lookahead == 'l') ADVANCE(72); END_STATE(); case 68: - if (lookahead == 'r') ADVANCE(88); + if (lookahead == 'l') ADVANCE(73); END_STATE(); case 69: - ACCEPT_TOKEN(anon_sym_call); + if (lookahead == 'n') ADVANCE(63); END_STATE(); case 70: - ACCEPT_TOKEN(anon_sym_cast); + if (lookahead == 'n') ADVANCE(71); END_STATE(); case 71: - if (lookahead == 'o') ADVANCE(89); + if (lookahead == 's') ADVANCE(88); END_STATE(); case 72: - if (lookahead == 't') ADVANCE(90); + if (lookahead == 't') ADVANCE(50); END_STATE(); case 73: - ACCEPT_TOKEN(anon_sym_else); + if (lookahead == 't') ADVANCE(65); END_STATE(); case 74: - ACCEPT_TOKEN(anon_sym_felt); + if (lookahead == 'u') ADVANCE(66); END_STATE(); case 75: - ACCEPT_TOKEN(anon_sym_from); + if (lookahead == 'z') ADVANCE(62); END_STATE(); case 76: - ACCEPT_TOKEN(anon_sym_func); + if (lookahead == '0' || + lookahead == '1' || + lookahead == '_') ADVANCE(132); END_STATE(); case 77: - if (lookahead == 'r') ADVANCE(91); + if (('0' <= lookahead && lookahead <= '7') || + lookahead == '_') ADVANCE(133); END_STATE(); case 78: - if (lookahead == 'l') ADVANCE(92); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(136); END_STATE(); case 79: - if (lookahead == 's') ADVANCE(93); + if (eof) ADVANCE(80); + if (lookahead == '#') ADVANCE(141); + if (lookahead == '%') ADVANCE(61); + if (lookahead == '&') ADVANCE(105); + if (lookahead == '\'') ADVANCE(25); + if (lookahead == '(') ADVANCE(81); + if (lookahead == ')') ADVANCE(82); + if (lookahead == '*') ADVANCE(101); + if (lookahead == '+') ADVANCE(43); + if (lookahead == ',') ADVANCE(83); + if (lookahead == '-') ADVANCE(110); + if (lookahead == '.') ADVANCE(124); + if (lookahead == '/') ADVANCE(46); + if (lookahead == '0') ADVANCE(131); + if (lookahead == ':') ADVANCE(95); + if (lookahead == ';') ADVANCE(137); + if (lookahead == '<') ADVANCE(142); + if (lookahead == '=') ADVANCE(87); + if (lookahead == '>') ADVANCE(143); + if (lookahead == '@') ADVANCE(90); + if (lookahead == '[') ADVANCE(122); + if (lookahead == '{') ADVANCE(91); + if (lookahead == '}') ADVANCE(92); + if (lookahead == '\t' || + lookahead == '\n' || + lookahead == '\r' || + lookahead == ' ') SKIP(79) + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(134); + if (('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(126); END_STATE(); case 80: - if (lookahead == 'e') ADVANCE(94); + ACCEPT_TOKEN(ts_builtin_sym_end); END_STATE(); case 81: - if (lookahead == 'r') ADVANCE(95); + ACCEPT_TOKEN(anon_sym_LPAREN); END_STATE(); case 82: - if (lookahead == 'i') ADVANCE(96); + ACCEPT_TOKEN(anon_sym_RPAREN); END_STATE(); case 83: - if (lookahead == 'c') ADVANCE(97); + ACCEPT_TOKEN(anon_sym_COMMA); END_STATE(); case 84: - if (lookahead == 'v') ADVANCE(98); + ACCEPT_TOKEN(anon_sym_EQ); END_STATE(); case 85: - if (lookahead == 'g') ADVANCE(99); + ACCEPT_TOKEN(anon_sym_EQ); + if (lookahead == '=') ADVANCE(96); END_STATE(); case 86: - ACCEPT_TOKEN(anon_sym_with); - if (lookahead == '_') ADVANCE(100); + ACCEPT_TOKEN(anon_sym_EQ); + if (lookahead == '=') ADVANCE(96); + if (lookahead == '>') ADVANCE(145); END_STATE(); case 87: - if (lookahead == '_') ADVANCE(101); + ACCEPT_TOKEN(anon_sym_EQ); + if (lookahead == '>') ADVANCE(145); END_STATE(); case 88: - if (lookahead == 't') ADVANCE(102); + ACCEPT_TOKEN(anon_sym_PERCENTbuiltins); END_STATE(); case 89: - if (lookahead == 'f') ADVANCE(103); + ACCEPT_TOKEN(anon_sym_PERCENTlang); END_STATE(); case 90: - ACCEPT_TOKEN(anon_sym_const); + ACCEPT_TOKEN(anon_sym_AT); END_STATE(); case 91: - if (lookahead == 't') ADVANCE(104); + ACCEPT_TOKEN(anon_sym_LBRACE); END_STATE(); case 92: - ACCEPT_TOKEN(anon_sym_local); + ACCEPT_TOKEN(anon_sym_RBRACE); END_STATE(); case 93: - if (lookahead == 'p') ADVANCE(105); + ACCEPT_TOKEN(anon_sym_DASH_GT); END_STATE(); case 94: - if (lookahead == 't') ADVANCE(106); + ACCEPT_TOKEN(anon_sym_COLON); END_STATE(); case 95: - if (lookahead == 'n') ADVANCE(107); + ACCEPT_TOKEN(anon_sym_COLON); + if (lookahead == ':') ADVANCE(140); END_STATE(); case 96: - if (lookahead == 'c') ADVANCE(108); + ACCEPT_TOKEN(anon_sym_EQ_EQ); END_STATE(); case 97: - if (lookahead == 't') ADVANCE(109); + ACCEPT_TOKEN(anon_sym_PLUS_PLUS); END_STATE(); case 98: - if (lookahead == 'a') ADVANCE(110); + ACCEPT_TOKEN(anon_sym_BANG_EQ); END_STATE(); case 99: - ACCEPT_TOKEN(anon_sym_using); + ACCEPT_TOKEN(anon_sym_PLUS_EQ); END_STATE(); case 100: - if (lookahead == 'a') ADVANCE(111); + ACCEPT_TOKEN(anon_sym_STAR); END_STATE(); case 101: - if (lookahead == 'l') ADVANCE(112); + ACCEPT_TOKEN(anon_sym_STAR); + if (lookahead == '*') ADVANCE(104); END_STATE(); case 102: - ACCEPT_TOKEN(anon_sym_assert); + ACCEPT_TOKEN(anon_sym_STAR); + if (lookahead == '*') ADVANCE(104); + if (lookahead == '=') ADVANCE(163); END_STATE(); case 103: - if (lookahead == 'f') ADVANCE(113); + ACCEPT_TOKEN(anon_sym_STAR); + if (lookahead == '=') ADVANCE(163); END_STATE(); case 104: - ACCEPT_TOKEN(anon_sym_import); + ACCEPT_TOKEN(anon_sym_STAR_STAR); END_STATE(); case 105: - if (lookahead == 'a') ADVANCE(114); + ACCEPT_TOKEN(anon_sym_AMP); END_STATE(); case 106: - ACCEPT_TOKEN(anon_sym_nondet); + ACCEPT_TOKEN(anon_sym_AMP); + if (lookahead == '&') ADVANCE(150); + if (lookahead == '=') ADVANCE(166); END_STATE(); case 107: - ACCEPT_TOKEN(anon_sym_return); + ACCEPT_TOKEN(anon_sym_DASH); END_STATE(); case 108: - if (lookahead == '_') ADVANCE(115); + ACCEPT_TOKEN(anon_sym_DASH); + if (lookahead == '0') ADVANCE(131); + if (lookahead == '=') ADVANCE(162); + if (lookahead == '>') ADVANCE(93); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(134); END_STATE(); case 109: - ACCEPT_TOKEN(anon_sym_struct); + ACCEPT_TOKEN(anon_sym_DASH); + if (lookahead == '0') ADVANCE(131); + if (lookahead == '=') ADVANCE(162); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(134); END_STATE(); case 110: - if (lookahead == 'r') ADVANCE(116); + ACCEPT_TOKEN(anon_sym_DASH); + if (lookahead == '0') ADVANCE(131); + if (('1' <= lookahead && lookahead <= '9')) ADVANCE(134); END_STATE(); case 111: - if (lookahead == 't') ADVANCE(117); + ACCEPT_TOKEN(anon_sym_DASH); + if (lookahead == '=') ADVANCE(162); END_STATE(); case 112: - if (lookahead == 'o') ADVANCE(118); + ACCEPT_TOKEN(anon_sym_PLUS); END_STATE(); case 113: - if (lookahead == 's') ADVANCE(119); + ACCEPT_TOKEN(anon_sym_PLUS); + if (lookahead == '+') ADVANCE(97); + if (lookahead == '=') ADVANCE(99); END_STATE(); case 114: - if (lookahead == 'c') ADVANCE(120); + ACCEPT_TOKEN(anon_sym_PLUS); + if (lookahead == '=') ADVANCE(99); END_STATE(); case 115: - if (lookahead == 'a') ADVANCE(121); + ACCEPT_TOKEN(anon_sym_SLASH); + if (lookahead == '/') ADVANCE(139); END_STATE(); case 116: - ACCEPT_TOKEN(anon_sym_tempvar); + ACCEPT_TOKEN(anon_sym_SLASH); + if (lookahead == '/') ADVANCE(139); + if (lookahead == '=') ADVANCE(164); END_STATE(); case 117: - if (lookahead == 't') ADVANCE(122); + ACCEPT_TOKEN(sym_string); + if (lookahead == '"') ADVANCE(117); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(7); END_STATE(); case 118: - if (lookahead == 'c') ADVANCE(123); + ACCEPT_TOKEN(sym_short_string); + if (lookahead == '\'') ADVANCE(118); + if (lookahead == '_') ADVANCE(19); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(24); END_STATE(); case 119: - if (lookahead == 'e') ADVANCE(124); + ACCEPT_TOKEN(sym_short_string); + if (lookahead == '\'') ADVANCE(119); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(25); END_STATE(); case 120: - if (lookahead == 'e') ADVANCE(125); + ACCEPT_TOKEN(anon_sym_PERCENT_LBRACE); END_STATE(); case 121: - if (lookahead == 's') ADVANCE(126); + ACCEPT_TOKEN(anon_sym_PERCENT_RBRACE); END_STATE(); case 122: - if (lookahead == 'r') ADVANCE(127); + ACCEPT_TOKEN(anon_sym_LBRACK); END_STATE(); case 123: - if (lookahead == 'a') ADVANCE(128); + ACCEPT_TOKEN(anon_sym_RBRACK); END_STATE(); case 124: - if (lookahead == 't') ADVANCE(129); + ACCEPT_TOKEN(anon_sym_DOT); END_STATE(); case 125: - ACCEPT_TOKEN(anon_sym_namespace); + ACCEPT_TOKEN(anon_sym_DOT); + if (lookahead == '.') ADVANCE(146); END_STATE(); case 126: - if (lookahead == 's') ADVANCE(130); + ACCEPT_TOKEN(sym_identifier); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(126); END_STATE(); case 127: - ACCEPT_TOKEN(anon_sym_with_attr); + ACCEPT_TOKEN(sym_number); END_STATE(); case 128: - if (lookahead == 'l') ADVANCE(131); + ACCEPT_TOKEN(sym_number); + if (lookahead == '2') ADVANCE(136); + if (lookahead == 'f') ADVANCE(129); + if (lookahead == 'i') ADVANCE(47); + if (lookahead == 'u') ADVANCE(47); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'e')) ADVANCE(136); END_STATE(); case 129: - ACCEPT_TOKEN(anon_sym_codeoffset); + ACCEPT_TOKEN(sym_number); + if (lookahead == '3') ADVANCE(128); + if (lookahead == '6') ADVANCE(130); + if (lookahead == 'e') ADVANCE(135); + if (lookahead == 'f') ADVANCE(129); + if (lookahead == 'i') ADVANCE(47); + if (lookahead == 'u') ADVANCE(47); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'd')) ADVANCE(136); END_STATE(); case 130: - if (lookahead == 'e') ADVANCE(132); + ACCEPT_TOKEN(sym_number); + if (lookahead == '4') ADVANCE(136); + if (lookahead == 'f') ADVANCE(129); + if (lookahead == 'i') ADVANCE(47); + if (lookahead == 'u') ADVANCE(47); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'e')) ADVANCE(136); END_STATE(); case 131: - if (lookahead == 's') ADVANCE(133); + ACCEPT_TOKEN(sym_number); + if (lookahead == 'b') ADVANCE(76); + if (lookahead == 'f') ADVANCE(51); + if (lookahead == 'i') ADVANCE(47); + if (lookahead == 'o') ADVANCE(77); + if (lookahead == 'u') ADVANCE(47); + if (lookahead == 'x') ADVANCE(78); + if (('0' <= lookahead && lookahead <= '9') || + lookahead == '_') ADVANCE(134); END_STATE(); case 132: - if (lookahead == 'r') ADVANCE(134); + ACCEPT_TOKEN(sym_number); + if (lookahead == 'f') ADVANCE(51); + if (lookahead == 'i') ADVANCE(47); + if (lookahead == 'u') ADVANCE(47); + if (lookahead == '0' || + lookahead == '1' || + lookahead == '_') ADVANCE(132); END_STATE(); case 133: - ACCEPT_TOKEN(anon_sym_alloc_locals); + ACCEPT_TOKEN(sym_number); + if (lookahead == 'f') ADVANCE(51); + if (lookahead == 'i') ADVANCE(47); + if (lookahead == 'u') ADVANCE(47); + if (('0' <= lookahead && lookahead <= '7') || + lookahead == '_') ADVANCE(133); END_STATE(); case 134: - if (lookahead == 't') ADVANCE(135); + ACCEPT_TOKEN(sym_number); + if (lookahead == 'f') ADVANCE(51); + if (lookahead == 'i') ADVANCE(47); + if (lookahead == 'u') ADVANCE(47); + if (('0' <= lookahead && lookahead <= '9') || + lookahead == '_') ADVANCE(134); END_STATE(); case 135: - ACCEPT_TOKEN(anon_sym_static_assert); + ACCEPT_TOKEN(sym_number); + if (lookahead == 'f') ADVANCE(129); + if (lookahead == 'i') ADVANCE(47); + if (lookahead == 'l') ADVANCE(72); + if (lookahead == 'u') ADVANCE(47); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'e')) ADVANCE(136); + END_STATE(); + case 136: + ACCEPT_TOKEN(sym_number); + if (lookahead == 'f') ADVANCE(129); + if (lookahead == 'i') ADVANCE(47); + if (lookahead == 'u') ADVANCE(47); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'e')) ADVANCE(136); + END_STATE(); + case 137: + ACCEPT_TOKEN(anon_sym_SEMI); + END_STATE(); + case 138: + ACCEPT_TOKEN(anon_sym_LF); + if (lookahead == '\n') ADVANCE(138); + END_STATE(); + case 139: + ACCEPT_TOKEN(sym_comment); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(139); + END_STATE(); + case 140: + ACCEPT_TOKEN(anon_sym_COLON_COLON); + END_STATE(); + case 141: + ACCEPT_TOKEN(anon_sym_POUND); + END_STATE(); + case 142: + ACCEPT_TOKEN(anon_sym_LT); + END_STATE(); + case 143: + ACCEPT_TOKEN(anon_sym_GT); + END_STATE(); + case 144: + ACCEPT_TOKEN(anon_sym_GT); + if (lookahead == '=') ADVANCE(157); + if (lookahead == '>') ADVANCE(159); + END_STATE(); + case 145: + ACCEPT_TOKEN(anon_sym_EQ_GT); + END_STATE(); + case 146: + ACCEPT_TOKEN(anon_sym_DOT_DOT); + END_STATE(); + case 147: + ACCEPT_TOKEN(anon_sym_BANG); + END_STATE(); + case 148: + ACCEPT_TOKEN(anon_sym_BANG); + if (lookahead == '=') ADVANCE(98); + END_STATE(); + case 149: + ACCEPT_TOKEN(anon_sym_TILDE); + END_STATE(); + case 150: + ACCEPT_TOKEN(anon_sym_AMP_AMP); + END_STATE(); + case 151: + ACCEPT_TOKEN(anon_sym_PIPE_PIPE); + END_STATE(); + case 152: + ACCEPT_TOKEN(anon_sym_PIPE); + if (lookahead == '=') ADVANCE(167); + if (lookahead == '|') ADVANCE(151); + END_STATE(); + case 153: + ACCEPT_TOKEN(anon_sym_CARET); + if (lookahead == '=') ADVANCE(168); + END_STATE(); + case 154: + ACCEPT_TOKEN(anon_sym_LT2); + END_STATE(); + case 155: + ACCEPT_TOKEN(anon_sym_LT2); + if (lookahead == '<') ADVANCE(158); + if (lookahead == '=') ADVANCE(156); + END_STATE(); + case 156: + ACCEPT_TOKEN(anon_sym_LT_EQ); + END_STATE(); + case 157: + ACCEPT_TOKEN(anon_sym_GT_EQ); + END_STATE(); + case 158: + ACCEPT_TOKEN(anon_sym_LT_LT); + if (lookahead == '=') ADVANCE(169); + END_STATE(); + case 159: + ACCEPT_TOKEN(anon_sym_GT_GT); + if (lookahead == '=') ADVANCE(170); + END_STATE(); + case 160: + ACCEPT_TOKEN(anon_sym_PERCENT); + if (lookahead == '=') ADVANCE(165); + END_STATE(); + case 161: + ACCEPT_TOKEN(anon_sym_PERCENT); + if (lookahead == '=') ADVANCE(165); + if (lookahead == '}') ADVANCE(121); + END_STATE(); + case 162: + ACCEPT_TOKEN(anon_sym_DASH_EQ); + END_STATE(); + case 163: + ACCEPT_TOKEN(anon_sym_STAR_EQ); + END_STATE(); + case 164: + ACCEPT_TOKEN(anon_sym_SLASH_EQ); + END_STATE(); + case 165: + ACCEPT_TOKEN(anon_sym_PERCENT_EQ); + END_STATE(); + case 166: + ACCEPT_TOKEN(anon_sym_AMP_EQ); + END_STATE(); + case 167: + ACCEPT_TOKEN(anon_sym_PIPE_EQ); + END_STATE(); + case 168: + ACCEPT_TOKEN(anon_sym_CARET_EQ); + END_STATE(); + case 169: + ACCEPT_TOKEN(anon_sym_LT_LT_EQ); + END_STATE(); + case 170: + ACCEPT_TOKEN(anon_sym_GT_GT_EQ); + END_STATE(); + case 171: + ACCEPT_TOKEN(anon_sym_QMARK); + END_STATE(); + case 172: + ACCEPT_TOKEN(sym__cairo_1_short_string); + if (lookahead == '\'') ADVANCE(118); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(24); + END_STATE(); + case 173: + ACCEPT_TOKEN(sym__cairo_1_short_string); + if (lookahead == '\'') ADVANCE(173); + if (lookahead == '_') ADVANCE(37); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(42); + END_STATE(); + case 174: + ACCEPT_TOKEN(sym__cairo_1_short_string); + if (lookahead == '\'') ADVANCE(173); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(42); END_STATE(); default: return false; } } -static const TSLexMode ts_lex_modes[STATE_COUNT] = { - [0] = {.lex_state = 0, .external_lex_state = 1}, - [1] = {.lex_state = 20, .external_lex_state = 1}, - [2] = {.lex_state = 20, .external_lex_state = 1}, - [3] = {.lex_state = 20, .external_lex_state = 1}, - [4] = {.lex_state = 20, .external_lex_state = 1}, - [5] = {.lex_state = 20, .external_lex_state = 1}, - [6] = {.lex_state = 20, .external_lex_state = 1}, - [7] = {.lex_state = 20, .external_lex_state = 1}, - [8] = {.lex_state = 20, .external_lex_state = 1}, - [9] = {.lex_state = 20, .external_lex_state = 1}, - [10] = {.lex_state = 20, .external_lex_state = 1}, - [11] = {.lex_state = 20, .external_lex_state = 1}, - [12] = {.lex_state = 20, .external_lex_state = 1}, - [13] = {.lex_state = 20, .external_lex_state = 1}, - [14] = {.lex_state = 20, .external_lex_state = 1}, - [15] = {.lex_state = 20, .external_lex_state = 1}, - [16] = {.lex_state = 20, .external_lex_state = 1}, - [17] = {.lex_state = 20, .external_lex_state = 1}, - [18] = {.lex_state = 20, .external_lex_state = 1}, - [19] = {.lex_state = 20, .external_lex_state = 1}, - [20] = {.lex_state = 20, .external_lex_state = 1}, - [21] = {.lex_state = 20, .external_lex_state = 1}, - [22] = {.lex_state = 20, .external_lex_state = 1}, - [23] = {.lex_state = 20, .external_lex_state = 1}, - [24] = {.lex_state = 20, .external_lex_state = 1}, - [25] = {.lex_state = 20, .external_lex_state = 1}, - [26] = {.lex_state = 20, .external_lex_state = 1}, - [27] = {.lex_state = 20, .external_lex_state = 1}, - [28] = {.lex_state = 20, .external_lex_state = 1}, - [29] = {.lex_state = 20, .external_lex_state = 1}, - [30] = {.lex_state = 20, .external_lex_state = 1}, - [31] = {.lex_state = 20, .external_lex_state = 1}, - [32] = {.lex_state = 20, .external_lex_state = 1}, - [33] = {.lex_state = 20, .external_lex_state = 1}, - [34] = {.lex_state = 20, .external_lex_state = 1}, - [35] = {.lex_state = 20, .external_lex_state = 1}, - [36] = {.lex_state = 20, .external_lex_state = 1}, - [37] = {.lex_state = 20, .external_lex_state = 1}, - [38] = {.lex_state = 20, .external_lex_state = 1}, - [39] = {.lex_state = 20, .external_lex_state = 1}, - [40] = {.lex_state = 20, .external_lex_state = 1}, - [41] = {.lex_state = 20, .external_lex_state = 1}, - [42] = {.lex_state = 20, .external_lex_state = 1}, - [43] = {.lex_state = 20, .external_lex_state = 1}, - [44] = {.lex_state = 20, .external_lex_state = 1}, - [45] = {.lex_state = 20, .external_lex_state = 1}, - [46] = {.lex_state = 20, .external_lex_state = 1}, - [47] = {.lex_state = 20, .external_lex_state = 1}, - [48] = {.lex_state = 20, .external_lex_state = 1}, - [49] = {.lex_state = 20, .external_lex_state = 1}, - [50] = {.lex_state = 20, .external_lex_state = 1}, - [51] = {.lex_state = 20, .external_lex_state = 1}, - [52] = {.lex_state = 20, .external_lex_state = 1}, - [53] = {.lex_state = 20, .external_lex_state = 1}, - [54] = {.lex_state = 20, .external_lex_state = 1}, - [55] = {.lex_state = 20, .external_lex_state = 1}, - [56] = {.lex_state = 20, .external_lex_state = 1}, - [57] = {.lex_state = 20, .external_lex_state = 1}, - [58] = {.lex_state = 20, .external_lex_state = 1}, - [59] = {.lex_state = 20, .external_lex_state = 1}, - [60] = {.lex_state = 20, .external_lex_state = 1}, - [61] = {.lex_state = 20, .external_lex_state = 1}, - [62] = {.lex_state = 20, .external_lex_state = 1}, - [63] = {.lex_state = 20, .external_lex_state = 1}, - [64] = {.lex_state = 20, .external_lex_state = 1}, - [65] = {.lex_state = 20, .external_lex_state = 1}, - [66] = {.lex_state = 20, .external_lex_state = 1}, - [67] = {.lex_state = 20, .external_lex_state = 1}, - [68] = {.lex_state = 20, .external_lex_state = 1}, - [69] = {.lex_state = 20, .external_lex_state = 1}, - [70] = {.lex_state = 20, .external_lex_state = 1}, - [71] = {.lex_state = 20, .external_lex_state = 1}, - [72] = {.lex_state = 20, .external_lex_state = 1}, - [73] = {.lex_state = 20, .external_lex_state = 1}, - [74] = {.lex_state = 20, .external_lex_state = 1}, - [75] = {.lex_state = 20, .external_lex_state = 1}, - [76] = {.lex_state = 20, .external_lex_state = 1}, - [77] = {.lex_state = 20, .external_lex_state = 1}, - [78] = {.lex_state = 20, .external_lex_state = 1}, - [79] = {.lex_state = 20, .external_lex_state = 1}, - [80] = {.lex_state = 20, .external_lex_state = 1}, - [81] = {.lex_state = 20, .external_lex_state = 1}, - [82] = {.lex_state = 20, .external_lex_state = 1}, - [83] = {.lex_state = 20, .external_lex_state = 1}, - [84] = {.lex_state = 20, .external_lex_state = 1}, - [85] = {.lex_state = 20, .external_lex_state = 1}, - [86] = {.lex_state = 20, .external_lex_state = 1}, - [87] = {.lex_state = 20, .external_lex_state = 1}, - [88] = {.lex_state = 20, .external_lex_state = 1}, - [89] = {.lex_state = 20, .external_lex_state = 1}, - [90] = {.lex_state = 20, .external_lex_state = 1}, - [91] = {.lex_state = 20, .external_lex_state = 1}, - [92] = {.lex_state = 20, .external_lex_state = 1}, - [93] = {.lex_state = 20, .external_lex_state = 1}, - [94] = {.lex_state = 20, .external_lex_state = 1}, - [95] = {.lex_state = 20, .external_lex_state = 1}, - [96] = {.lex_state = 20, .external_lex_state = 1}, - [97] = {.lex_state = 20, .external_lex_state = 1}, - [98] = {.lex_state = 20, .external_lex_state = 1}, - [99] = {.lex_state = 20, .external_lex_state = 1}, - [100] = {.lex_state = 20, .external_lex_state = 1}, - [101] = {.lex_state = 20, .external_lex_state = 1}, - [102] = {.lex_state = 20, .external_lex_state = 1}, - [103] = {.lex_state = 20, .external_lex_state = 1}, - [104] = {.lex_state = 20, .external_lex_state = 1}, - [105] = {.lex_state = 20, .external_lex_state = 1}, - [106] = {.lex_state = 20, .external_lex_state = 1}, - [107] = {.lex_state = 20, .external_lex_state = 1}, - [108] = {.lex_state = 20, .external_lex_state = 1}, - [109] = {.lex_state = 20, .external_lex_state = 1}, - [110] = {.lex_state = 20, .external_lex_state = 1}, - [111] = {.lex_state = 20, .external_lex_state = 1}, - [112] = {.lex_state = 20, .external_lex_state = 1}, - [113] = {.lex_state = 20, .external_lex_state = 1}, - [114] = {.lex_state = 20, .external_lex_state = 1}, - [115] = {.lex_state = 20, .external_lex_state = 1}, - [116] = {.lex_state = 20, .external_lex_state = 1}, - [117] = {.lex_state = 20, .external_lex_state = 1}, - [118] = {.lex_state = 20, .external_lex_state = 1}, - [119] = {.lex_state = 20, .external_lex_state = 1}, - [120] = {.lex_state = 20, .external_lex_state = 1}, - [121] = {.lex_state = 20, .external_lex_state = 1}, - [122] = {.lex_state = 20, .external_lex_state = 1}, - [123] = {.lex_state = 20, .external_lex_state = 1}, - [124] = {.lex_state = 20, .external_lex_state = 1}, - [125] = {.lex_state = 20, .external_lex_state = 1}, - [126] = {.lex_state = 20, .external_lex_state = 1}, - [127] = {.lex_state = 20, .external_lex_state = 1}, - [128] = {.lex_state = 20, .external_lex_state = 1}, - [129] = {.lex_state = 20, .external_lex_state = 1}, - [130] = {.lex_state = 20, .external_lex_state = 1}, - [131] = {.lex_state = 20, .external_lex_state = 1}, - [132] = {.lex_state = 20, .external_lex_state = 1}, - [133] = {.lex_state = 20, .external_lex_state = 1}, - [134] = {.lex_state = 20, .external_lex_state = 1}, - [135] = {.lex_state = 20, .external_lex_state = 1}, - [136] = {.lex_state = 20, .external_lex_state = 1}, - [137] = {.lex_state = 20, .external_lex_state = 1}, - [138] = {.lex_state = 20, .external_lex_state = 1}, - [139] = {.lex_state = 20, .external_lex_state = 1}, - [140] = {.lex_state = 20, .external_lex_state = 1}, - [141] = {.lex_state = 20, .external_lex_state = 1}, - [142] = {.lex_state = 20, .external_lex_state = 1}, - [143] = {.lex_state = 20, .external_lex_state = 1}, - [144] = {.lex_state = 20, .external_lex_state = 1}, - [145] = {.lex_state = 20, .external_lex_state = 1}, - [146] = {.lex_state = 20, .external_lex_state = 1}, - [147] = {.lex_state = 20, .external_lex_state = 1}, - [148] = {.lex_state = 20, .external_lex_state = 1}, - [149] = {.lex_state = 20, .external_lex_state = 1}, - [150] = {.lex_state = 20, .external_lex_state = 1}, - [151] = {.lex_state = 20, .external_lex_state = 1}, - [152] = {.lex_state = 20, .external_lex_state = 1}, - [153] = {.lex_state = 20, .external_lex_state = 1}, - [154] = {.lex_state = 20, .external_lex_state = 1}, - [155] = {.lex_state = 20, .external_lex_state = 1}, - [156] = {.lex_state = 20, .external_lex_state = 1}, - [157] = {.lex_state = 20, .external_lex_state = 1}, - [158] = {.lex_state = 20, .external_lex_state = 1}, - [159] = {.lex_state = 20, .external_lex_state = 1}, - [160] = {.lex_state = 20, .external_lex_state = 1}, - [161] = {.lex_state = 20, .external_lex_state = 1}, - [162] = {.lex_state = 20, .external_lex_state = 1}, - [163] = {.lex_state = 20, .external_lex_state = 1}, - [164] = {.lex_state = 20, .external_lex_state = 1}, - [165] = {.lex_state = 20, .external_lex_state = 1}, - [166] = {.lex_state = 20, .external_lex_state = 1}, - [167] = {.lex_state = 20, .external_lex_state = 1}, - [168] = {.lex_state = 20, .external_lex_state = 1}, - [169] = {.lex_state = 20, .external_lex_state = 1}, - [170] = {.lex_state = 20, .external_lex_state = 1}, - [171] = {.lex_state = 20, .external_lex_state = 1}, - [172] = {.lex_state = 20, .external_lex_state = 1}, - [173] = {.lex_state = 20, .external_lex_state = 1}, - [174] = {.lex_state = 20, .external_lex_state = 1}, - [175] = {.lex_state = 20, .external_lex_state = 1}, - [176] = {.lex_state = 20, .external_lex_state = 1}, - [177] = {.lex_state = 20, .external_lex_state = 1}, - [178] = {.lex_state = 20, .external_lex_state = 1}, - [179] = {.lex_state = 20, .external_lex_state = 1}, - [180] = {.lex_state = 20, .external_lex_state = 1}, - [181] = {.lex_state = 20, .external_lex_state = 1}, - [182] = {.lex_state = 20, .external_lex_state = 1}, - [183] = {.lex_state = 20, .external_lex_state = 1}, - [184] = {.lex_state = 20, .external_lex_state = 1}, - [185] = {.lex_state = 20}, - [186] = {.lex_state = 20}, - [187] = {.lex_state = 20}, - [188] = {.lex_state = 20}, - [189] = {.lex_state = 20}, - [190] = {.lex_state = 20}, - [191] = {.lex_state = 20}, - [192] = {.lex_state = 20}, - [193] = {.lex_state = 20}, - [194] = {.lex_state = 20}, - [195] = {.lex_state = 20}, - [196] = {.lex_state = 20}, - [197] = {.lex_state = 20}, - [198] = {.lex_state = 20}, - [199] = {.lex_state = 20}, - [200] = {.lex_state = 20}, - [201] = {.lex_state = 20}, - [202] = {.lex_state = 20}, - [203] = {.lex_state = 20}, - [204] = {.lex_state = 20}, - [205] = {.lex_state = 20}, - [206] = {.lex_state = 20}, - [207] = {.lex_state = 20}, - [208] = {.lex_state = 20}, - [209] = {.lex_state = 20}, - [210] = {.lex_state = 20}, - [211] = {.lex_state = 20}, - [212] = {.lex_state = 20}, - [213] = {.lex_state = 20}, - [214] = {.lex_state = 20}, - [215] = {.lex_state = 20}, - [216] = {.lex_state = 20}, - [217] = {.lex_state = 20}, - [218] = {.lex_state = 20}, - [219] = {.lex_state = 20}, - [220] = {.lex_state = 20}, - [221] = {.lex_state = 20}, - [222] = {.lex_state = 20}, - [223] = {.lex_state = 20}, - [224] = {.lex_state = 20}, - [225] = {.lex_state = 20}, - [226] = {.lex_state = 20}, - [227] = {.lex_state = 20}, - [228] = {.lex_state = 20}, - [229] = {.lex_state = 20}, - [230] = {.lex_state = 20}, - [231] = {.lex_state = 20}, - [232] = {.lex_state = 20}, - [233] = {.lex_state = 20}, - [234] = {.lex_state = 20}, - [235] = {.lex_state = 20}, - [236] = {.lex_state = 20}, - [237] = {.lex_state = 20}, - [238] = {.lex_state = 20}, - [239] = {.lex_state = 20}, - [240] = {.lex_state = 20}, - [241] = {.lex_state = 20}, - [242] = {.lex_state = 20}, - [243] = {.lex_state = 20}, - [244] = {.lex_state = 20}, - [245] = {.lex_state = 20}, - [246] = {.lex_state = 20}, - [247] = {.lex_state = 20}, - [248] = {.lex_state = 20}, - [249] = {.lex_state = 20}, - [250] = {.lex_state = 20}, - [251] = {.lex_state = 20}, - [252] = {.lex_state = 20}, - [253] = {.lex_state = 20}, - [254] = {.lex_state = 20}, - [255] = {.lex_state = 20}, - [256] = {.lex_state = 20}, - [257] = {.lex_state = 20}, - [258] = {.lex_state = 20}, - [259] = {.lex_state = 20}, - [260] = {.lex_state = 20}, - [261] = {.lex_state = 20}, - [262] = {.lex_state = 20}, - [263] = {.lex_state = 20}, - [264] = {.lex_state = 20}, - [265] = {.lex_state = 20}, - [266] = {.lex_state = 20}, - [267] = {.lex_state = 20}, - [268] = {.lex_state = 20}, - [269] = {.lex_state = 20}, - [270] = {.lex_state = 20}, - [271] = {.lex_state = 20}, - [272] = {.lex_state = 20}, - [273] = {.lex_state = 20}, - [274] = {.lex_state = 20}, - [275] = {.lex_state = 20}, - [276] = {.lex_state = 20}, - [277] = {.lex_state = 20}, - [278] = {.lex_state = 20}, - [279] = {.lex_state = 20}, - [280] = {.lex_state = 20}, - [281] = {.lex_state = 20}, - [282] = {.lex_state = 20}, - [283] = {.lex_state = 20}, - [284] = {.lex_state = 20}, - [285] = {.lex_state = 20}, - [286] = {.lex_state = 20}, - [287] = {.lex_state = 20}, - [288] = {.lex_state = 20}, - [289] = {.lex_state = 20}, - [290] = {.lex_state = 20}, - [291] = {.lex_state = 20}, - [292] = {.lex_state = 20}, - [293] = {.lex_state = 20}, - [294] = {.lex_state = 20}, - [295] = {.lex_state = 20}, - [296] = {.lex_state = 20}, - [297] = {.lex_state = 20}, - [298] = {.lex_state = 20}, - [299] = {.lex_state = 0, .external_lex_state = 1}, - [300] = {.lex_state = 0, .external_lex_state = 1}, - [301] = {.lex_state = 0}, - [302] = {.lex_state = 0, .external_lex_state = 1}, - [303] = {.lex_state = 0, .external_lex_state = 1}, - [304] = {.lex_state = 0, .external_lex_state = 1}, - [305] = {.lex_state = 0}, - [306] = {.lex_state = 0}, - [307] = {.lex_state = 0, .external_lex_state = 1}, - [308] = {.lex_state = 0, .external_lex_state = 1}, - [309] = {.lex_state = 0, .external_lex_state = 1}, - [310] = {.lex_state = 0}, - [311] = {.lex_state = 0, .external_lex_state = 1}, - [312] = {.lex_state = 0}, - [313] = {.lex_state = 0, .external_lex_state = 1}, - [314] = {.lex_state = 0}, - [315] = {.lex_state = 0}, - [316] = {.lex_state = 0, .external_lex_state = 1}, - [317] = {.lex_state = 0, .external_lex_state = 1}, - [318] = {.lex_state = 0, .external_lex_state = 1}, - [319] = {.lex_state = 0}, - [320] = {.lex_state = 0}, - [321] = {.lex_state = 0}, - [322] = {.lex_state = 0, .external_lex_state = 1}, - [323] = {.lex_state = 0}, - [324] = {.lex_state = 0}, - [325] = {.lex_state = 0}, - [326] = {.lex_state = 0}, - [327] = {.lex_state = 0}, - [328] = {.lex_state = 0}, - [329] = {.lex_state = 0}, - [330] = {.lex_state = 0}, - [331] = {.lex_state = 0}, - [332] = {.lex_state = 0}, - [333] = {.lex_state = 0}, - [334] = {.lex_state = 0}, - [335] = {.lex_state = 0}, - [336] = {.lex_state = 0}, - [337] = {.lex_state = 0}, - [338] = {.lex_state = 0}, - [339] = {.lex_state = 0}, - [340] = {.lex_state = 0}, - [341] = {.lex_state = 0}, - [342] = {.lex_state = 0}, - [343] = {.lex_state = 0}, - [344] = {.lex_state = 0}, - [345] = {.lex_state = 0}, - [346] = {.lex_state = 0}, - [347] = {.lex_state = 0}, - [348] = {.lex_state = 0}, - [349] = {.lex_state = 0}, - [350] = {.lex_state = 0}, - [351] = {.lex_state = 0}, - [352] = {.lex_state = 0}, - [353] = {.lex_state = 0}, - [354] = {.lex_state = 0}, - [355] = {.lex_state = 0}, - [356] = {.lex_state = 0}, - [357] = {.lex_state = 0}, - [358] = {.lex_state = 0}, - [359] = {.lex_state = 0}, - [360] = {.lex_state = 0}, - [361] = {.lex_state = 0}, - [362] = {.lex_state = 0}, - [363] = {.lex_state = 0}, - [364] = {.lex_state = 0}, - [365] = {.lex_state = 0}, - [366] = {.lex_state = 0}, - [367] = {.lex_state = 0}, - [368] = {.lex_state = 0}, - [369] = {.lex_state = 0}, - [370] = {.lex_state = 0}, - [371] = {.lex_state = 0}, - [372] = {.lex_state = 0}, - [373] = {.lex_state = 0}, - [374] = {.lex_state = 0}, - [375] = {.lex_state = 0}, - [376] = {.lex_state = 0}, - [377] = {.lex_state = 0}, - [378] = {.lex_state = 0}, - [379] = {.lex_state = 0}, - [380] = {.lex_state = 0}, - [381] = {.lex_state = 0}, - [382] = {.lex_state = 0}, - [383] = {.lex_state = 0}, - [384] = {.lex_state = 0}, - [385] = {.lex_state = 0}, - [386] = {.lex_state = 0}, - [387] = {.lex_state = 0}, - [388] = {.lex_state = 0}, - [389] = {.lex_state = 0}, - [390] = {.lex_state = 0}, - [391] = {.lex_state = 0}, - [392] = {.lex_state = 0}, - [393] = {.lex_state = 0}, - [394] = {.lex_state = 0}, - [395] = {.lex_state = 0}, - [396] = {.lex_state = 0}, - [397] = {.lex_state = 0}, - [398] = {.lex_state = 0}, - [399] = {.lex_state = 0}, - [400] = {.lex_state = 0}, - [401] = {.lex_state = 0}, - [402] = {.lex_state = 0}, - [403] = {.lex_state = 0}, - [404] = {.lex_state = 0}, - [405] = {.lex_state = 0}, - [406] = {.lex_state = 0}, - [407] = {.lex_state = 0}, - [408] = {.lex_state = 0}, - [409] = {.lex_state = 0}, - [410] = {.lex_state = 0}, - [411] = {.lex_state = 0}, - [412] = {.lex_state = 0}, - [413] = {.lex_state = 4}, - [414] = {.lex_state = 0}, - [415] = {.lex_state = 0}, - [416] = {.lex_state = 0}, - [417] = {.lex_state = 4}, - [418] = {.lex_state = 0}, - [419] = {.lex_state = 0}, - [420] = {.lex_state = 0}, - [421] = {.lex_state = 0}, - [422] = {.lex_state = 0}, - [423] = {.lex_state = 4}, - [424] = {.lex_state = 0}, - [425] = {.lex_state = 4}, - [426] = {.lex_state = 0}, - [427] = {.lex_state = 0}, - [428] = {.lex_state = 0}, - [429] = {.lex_state = 4}, - [430] = {.lex_state = 0}, - [431] = {.lex_state = 0}, - [432] = {.lex_state = 0}, - [433] = {.lex_state = 0}, - [434] = {.lex_state = 4}, - [435] = {.lex_state = 0}, - [436] = {.lex_state = 0}, - [437] = {.lex_state = 0}, - [438] = {.lex_state = 0}, - [439] = {.lex_state = 0}, - [440] = {.lex_state = 4}, - [441] = {.lex_state = 0}, - [442] = {.lex_state = 4}, - [443] = {.lex_state = 0}, - [444] = {.lex_state = 0}, - [445] = {.lex_state = 4}, - [446] = {.lex_state = 0}, - [447] = {.lex_state = 0}, - [448] = {.lex_state = 0}, - [449] = {.lex_state = 0}, - [450] = {.lex_state = 0}, - [451] = {.lex_state = 0}, - [452] = {.lex_state = 0}, - [453] = {.lex_state = 0}, - [454] = {.lex_state = 0}, - [455] = {.lex_state = 0}, - [456] = {.lex_state = 0}, - [457] = {.lex_state = 0}, - [458] = {.lex_state = 0, .external_lex_state = 1}, - [459] = {.lex_state = 0}, - [460] = {.lex_state = 0}, - [461] = {.lex_state = 0}, - [462] = {.lex_state = 0}, - [463] = {.lex_state = 0}, - [464] = {.lex_state = 0}, - [465] = {.lex_state = 0}, - [466] = {.lex_state = 0}, - [467] = {.lex_state = 0}, - [468] = {.lex_state = 0}, - [469] = {.lex_state = 0}, - [470] = {.lex_state = 0}, - [471] = {.lex_state = 0}, - [472] = {.lex_state = 0}, - [473] = {.lex_state = 0}, - [474] = {.lex_state = 0}, - [475] = {.lex_state = 0}, - [476] = {.lex_state = 0}, - [477] = {.lex_state = 4}, - [478] = {.lex_state = 0}, - [479] = {.lex_state = 0}, - [480] = {.lex_state = 0}, - [481] = {.lex_state = 0}, - [482] = {.lex_state = 0}, - [483] = {.lex_state = 0}, - [484] = {.lex_state = 0}, - [485] = {.lex_state = 0}, - [486] = {.lex_state = 0}, - [487] = {.lex_state = 0}, - [488] = {.lex_state = 0}, - [489] = {.lex_state = 0}, - [490] = {.lex_state = 0}, - [491] = {.lex_state = 0}, - [492] = {.lex_state = 0}, - [493] = {.lex_state = 0}, - [494] = {.lex_state = 0}, - [495] = {.lex_state = 0}, - [496] = {.lex_state = 0}, - [497] = {.lex_state = 0}, - [498] = {.lex_state = 0}, - [499] = {.lex_state = 0}, - [500] = {.lex_state = 0}, - [501] = {.lex_state = 0}, - [502] = {.lex_state = 0}, - [503] = {.lex_state = 0}, - [504] = {.lex_state = 0}, - [505] = {.lex_state = 0}, - [506] = {.lex_state = 0}, - [507] = {.lex_state = 0}, - [508] = {.lex_state = 0}, - [509] = {.lex_state = 0}, - [510] = {.lex_state = 0}, - [511] = {.lex_state = 0}, - [512] = {.lex_state = 0}, - [513] = {.lex_state = 0}, - [514] = {.lex_state = 0}, - [515] = {.lex_state = 0}, - [516] = {.lex_state = 0}, - [517] = {.lex_state = 0}, - [518] = {.lex_state = 0}, - [519] = {.lex_state = 0}, - [520] = {.lex_state = 0}, - [521] = {.lex_state = 0}, -}; - -enum { - ts_external_token_hint = 0, -}; - -static const TSSymbol ts_external_scanner_symbol_map[EXTERNAL_TOKEN_COUNT] = { - [ts_external_token_hint] = sym_hint, -}; - -static const bool ts_external_scanner_states[2][EXTERNAL_TOKEN_COUNT] = { - [1] = { - [ts_external_token_hint] = true, - }, -}; - -static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { - [0] = { - [ts_builtin_sym_end] = ACTIONS(1), - [sym_identifier] = ACTIONS(1), - [anon_sym_from] = ACTIONS(1), - [anon_sym_import] = ACTIONS(1), - [anon_sym_LPAREN] = ACTIONS(1), - [anon_sym_RPAREN] = ACTIONS(1), - [anon_sym_COMMA] = ACTIONS(1), - [anon_sym_as] = ACTIONS(1), - [anon_sym_using] = ACTIONS(1), - [anon_sym_EQ] = ACTIONS(1), - [anon_sym_SEMI] = ACTIONS(1), - [anon_sym_PERCENTbuiltins] = ACTIONS(1), - [anon_sym_PERCENTlang] = ACTIONS(1), - [anon_sym_AT] = ACTIONS(1), - [anon_sym_namespace] = ACTIONS(1), - [anon_sym_LBRACE] = ACTIONS(1), - [anon_sym_RBRACE] = ACTIONS(1), - [anon_sym_struct] = ACTIONS(1), - [anon_sym_func] = ACTIONS(1), - [anon_sym_DASH_GT] = ACTIONS(1), - [anon_sym_alloc_locals] = ACTIONS(1), - [anon_sym_assert] = ACTIONS(1), - [anon_sym_static_assert] = ACTIONS(1), - [anon_sym_EQ_EQ] = ACTIONS(1), - [anon_sym_let] = ACTIONS(1), - [anon_sym_const] = ACTIONS(1), - [anon_sym_local] = ACTIONS(1), - [anon_sym_tempvar] = ACTIONS(1), - [anon_sym_ap] = ACTIONS(1), - [anon_sym_PLUS_PLUS] = ACTIONS(1), - [anon_sym_jmp] = ACTIONS(1), - [anon_sym_rel] = ACTIONS(1), - [anon_sym_abs] = ACTIONS(1), - [anon_sym_if] = ACTIONS(1), - [anon_sym_BANG_EQ] = ACTIONS(1), - [sym_inst_ret] = ACTIONS(1), - [anon_sym_PLUS_EQ] = ACTIONS(1), - [anon_sym_dw] = ACTIONS(1), - [anon_sym_COLON] = ACTIONS(1), - [anon_sym_with_attr] = ACTIONS(1), - [anon_sym_else] = ACTIONS(1), - [anon_sym_with] = ACTIONS(1), - [anon_sym_return] = ACTIONS(1), - [anon_sym_felt] = ACTIONS(1), - [anon_sym_codeoffset] = ACTIONS(1), - [anon_sym_STAR] = ACTIONS(1), - [anon_sym_STAR_STAR] = ACTIONS(1), - [anon_sym_AMP] = ACTIONS(1), - [anon_sym_DASH] = ACTIONS(1), - [anon_sym_new] = ACTIONS(1), - [anon_sym_PLUS] = ACTIONS(1), - [anon_sym_SLASH] = ACTIONS(1), - [anon_sym_and] = ACTIONS(1), - [sym_string] = ACTIONS(1), - [sym_short_string] = ACTIONS(1), - [anon_sym_nondet] = ACTIONS(1), - [anon_sym_fp] = ACTIONS(1), - [anon_sym_LBRACK] = ACTIONS(1), - [anon_sym_RBRACK] = ACTIONS(1), - [anon_sym_DOT] = ACTIONS(1), - [anon_sym_cast] = ACTIONS(1), - [anon_sym_call] = ACTIONS(1), - [sym_number] = ACTIONS(1), - [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(1), - }, - [1] = { - [sym_program] = STATE(454), - [sym_cairo_0_statement] = STATE(37), - [sym_import_statement] = STATE(126), - [sym_type_definition] = STATE(126), - [sym_builtin_directive] = STATE(126), - [sym_lang_directive] = STATE(126), - [sym_decorated_definition] = STATE(126), - [sym_decorator] = STATE(305), - [sym_namespace_definition] = STATE(126), - [sym_struct_definition] = STATE(126), - [sym_function_definition] = STATE(126), - [sym_expression_statement] = STATE(126), - [sym_alloc_locals] = STATE(126), - [sym_assert_statement] = STATE(126), - [sym_static_assert_statement] = STATE(126), - [sym_let_binding] = STATE(126), - [sym_const_var_declaration] = STATE(126), - [sym_local_var_declaration] = STATE(126), - [sym_temp_var_declaration] = STATE(126), - [sym_instruction] = STATE(126), - [sym_inst_assert_eq] = STATE(437), - [sym_inst_jmp_rel] = STATE(437), - [sym_inst_jmp_abs] = STATE(437), - [sym_inst_jmp_to_label] = STATE(437), - [sym_inst_jnz] = STATE(437), - [sym_inst_jnz_to_label] = STATE(437), - [sym_inst_add_ap] = STATE(437), - [sym_inst_data_word] = STATE(437), - [sym_label] = STATE(126), - [sym_attribute_statement] = STATE(126), - [sym_if_statement] = STATE(126), - [sym_with_statement] = STATE(126), - [sym_return_statement] = STATE(126), - [sym_expression] = STATE(291), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(437), - [aux_sym_program_repeat1] = STATE(37), - [aux_sym_decorated_definition_repeat1] = STATE(305), - [ts_builtin_sym_end] = ACTIONS(5), - [sym_identifier] = ACTIONS(7), - [anon_sym_from] = ACTIONS(9), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(13), - [anon_sym_PERCENTbuiltins] = ACTIONS(15), - [anon_sym_PERCENTlang] = ACTIONS(17), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(21), - [anon_sym_struct] = ACTIONS(23), - [anon_sym_func] = ACTIONS(25), - [anon_sym_alloc_locals] = ACTIONS(27), - [anon_sym_assert] = ACTIONS(29), - [anon_sym_static_assert] = ACTIONS(31), - [anon_sym_let] = ACTIONS(33), - [anon_sym_const] = ACTIONS(35), - [anon_sym_local] = ACTIONS(37), - [anon_sym_tempvar] = ACTIONS(39), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(45), - [sym_inst_ret] = ACTIONS(47), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(51), - [anon_sym_with] = ACTIONS(53), - [anon_sym_return] = ACTIONS(55), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), - [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(73), - }, - [2] = { - [sym_cairo_0_statement] = STATE(43), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(43), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(87), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), - [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), - }, - [3] = { - [sym_cairo_0_statement] = STATE(29), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(29), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(119), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), - [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), - }, - [4] = { - [sym_cairo_0_statement] = STATE(21), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(21), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(121), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), - [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), - }, - [5] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(123), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), - [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), - }, - [6] = { - [sym_cairo_0_statement] = STATE(50), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(50), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(125), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), - [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), - }, - [7] = { - [sym_cairo_0_statement] = STATE(54), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(54), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(127), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), +static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { + START_LEXER(); + eof = lexer->eof(lexer); + switch (state) { + case 0: + if (lookahead == '_') ADVANCE(1); + if (lookahead == 'a') ADVANCE(2); + if (lookahead == 'b') ADVANCE(3); + if (lookahead == 'c') ADVANCE(4); + if (lookahead == 'd') ADVANCE(5); + if (lookahead == 'e') ADVANCE(6); + if (lookahead == 'f') ADVANCE(7); + if (lookahead == 'i') ADVANCE(8); + if (lookahead == 'j') ADVANCE(9); + if (lookahead == 'l') ADVANCE(10); + if (lookahead == 'm') ADVANCE(11); + if (lookahead == 'n') ADVANCE(12); + if (lookahead == 'o') ADVANCE(13); + if (lookahead == 'r') ADVANCE(14); + if (lookahead == 's') ADVANCE(15); + if (lookahead == 't') ADVANCE(16); + if (lookahead == 'u') ADVANCE(17); + if (lookahead == 'w') ADVANCE(18); + if (lookahead == '\t' || + lookahead == '\n' || + lookahead == '\r' || + lookahead == ' ') SKIP(0) + END_STATE(); + case 1: + ACCEPT_TOKEN(anon_sym__); + END_STATE(); + case 2: + if (lookahead == 'b') ADVANCE(19); + if (lookahead == 'l') ADVANCE(20); + if (lookahead == 'n') ADVANCE(21); + if (lookahead == 'p') ADVANCE(22); + if (lookahead == 's') ADVANCE(23); + END_STATE(); + case 3: + if (lookahead == 'o') ADVANCE(24); + END_STATE(); + case 4: + if (lookahead == 'a') ADVANCE(25); + if (lookahead == 'h') ADVANCE(26); + if (lookahead == 'o') ADVANCE(27); + END_STATE(); + case 5: + if (lookahead == 'w') ADVANCE(28); + END_STATE(); + case 6: + if (lookahead == 'l') ADVANCE(29); + if (lookahead == 'n') ADVANCE(30); + if (lookahead == 'x') ADVANCE(31); + END_STATE(); + case 7: + if (lookahead == '3') ADVANCE(32); + if (lookahead == '6') ADVANCE(33); + if (lookahead == 'a') ADVANCE(34); + if (lookahead == 'e') ADVANCE(35); + if (lookahead == 'n') ADVANCE(36); + if (lookahead == 'p') ADVANCE(37); + if (lookahead == 'r') ADVANCE(38); + if (lookahead == 'u') ADVANCE(39); + END_STATE(); + case 8: + if (lookahead == '1') ADVANCE(40); + if (lookahead == '2') ADVANCE(41); + if (lookahead == '3') ADVANCE(42); + if (lookahead == '6') ADVANCE(43); + if (lookahead == '8') ADVANCE(44); + if (lookahead == 'f') ADVANCE(45); + if (lookahead == 'm') ADVANCE(46); + if (lookahead == 's') ADVANCE(47); + END_STATE(); + case 9: + if (lookahead == 'm') ADVANCE(48); + END_STATE(); + case 10: + if (lookahead == 'e') ADVANCE(49); + if (lookahead == 'o') ADVANCE(50); + END_STATE(); + case 11: + if (lookahead == 'a') ADVANCE(51); + if (lookahead == 'o') ADVANCE(52); + if (lookahead == 'u') ADVANCE(53); + END_STATE(); + case 12: + if (lookahead == 'a') ADVANCE(54); + if (lookahead == 'e') ADVANCE(55); + if (lookahead == 'o') ADVANCE(56); + END_STATE(); + case 13: + if (lookahead == 'f') ADVANCE(57); + END_STATE(); + case 14: + if (lookahead == 'e') ADVANCE(58); + END_STATE(); + case 15: + if (lookahead == 'e') ADVANCE(59); + if (lookahead == 't') ADVANCE(60); + END_STATE(); + case 16: + if (lookahead == 'e') ADVANCE(61); + if (lookahead == 'r') ADVANCE(62); + if (lookahead == 'y') ADVANCE(63); + END_STATE(); + case 17: + if (lookahead == '1') ADVANCE(64); + if (lookahead == '2') ADVANCE(65); + if (lookahead == '3') ADVANCE(66); + if (lookahead == '6') ADVANCE(67); + if (lookahead == '8') ADVANCE(68); + if (lookahead == 's') ADVANCE(69); + END_STATE(); + case 18: + if (lookahead == 'i') ADVANCE(70); + END_STATE(); + case 19: + if (lookahead == 's') ADVANCE(71); + END_STATE(); + case 20: + if (lookahead == 'l') ADVANCE(72); + END_STATE(); + case 21: + if (lookahead == 'd') ADVANCE(73); + END_STATE(); + case 22: + ACCEPT_TOKEN(anon_sym_ap); + END_STATE(); + case 23: + ACCEPT_TOKEN(anon_sym_as); + if (lookahead == 's') ADVANCE(74); + END_STATE(); + case 24: + if (lookahead == 'o') ADVANCE(75); + END_STATE(); + case 25: + if (lookahead == 'l') ADVANCE(76); + if (lookahead == 's') ADVANCE(77); + END_STATE(); + case 26: + if (lookahead == 'a') ADVANCE(78); + END_STATE(); + case 27: + if (lookahead == 'd') ADVANCE(79); + if (lookahead == 'n') ADVANCE(80); + END_STATE(); + case 28: + ACCEPT_TOKEN(anon_sym_dw); + END_STATE(); + case 29: + if (lookahead == 's') ADVANCE(81); + END_STATE(); + case 30: + if (lookahead == 'd') ADVANCE(82); + if (lookahead == 'u') ADVANCE(83); + END_STATE(); + case 31: + if (lookahead == 't') ADVANCE(84); + END_STATE(); + case 32: + if (lookahead == '2') ADVANCE(85); + END_STATE(); + case 33: + if (lookahead == '4') ADVANCE(86); + END_STATE(); + case 34: + if (lookahead == 'l') ADVANCE(87); + END_STATE(); + case 35: + if (lookahead == 'l') ADVANCE(88); + END_STATE(); + case 36: + ACCEPT_TOKEN(anon_sym_fn); + END_STATE(); + case 37: + ACCEPT_TOKEN(anon_sym_fp); + END_STATE(); + case 38: + if (lookahead == 'o') ADVANCE(89); + END_STATE(); + case 39: + if (lookahead == 'n') ADVANCE(90); + END_STATE(); + case 40: + if (lookahead == '2') ADVANCE(91); + if (lookahead == '6') ADVANCE(92); + END_STATE(); + case 41: + if (lookahead == '5') ADVANCE(93); + END_STATE(); + case 42: + if (lookahead == '2') ADVANCE(94); + END_STATE(); + case 43: + if (lookahead == '4') ADVANCE(95); + END_STATE(); + case 44: + ACCEPT_TOKEN(anon_sym_i8); + END_STATE(); + case 45: + ACCEPT_TOKEN(anon_sym_if); + END_STATE(); + case 46: + if (lookahead == 'p') ADVANCE(96); + END_STATE(); + case 47: + if (lookahead == 'i') ADVANCE(97); + END_STATE(); + case 48: + if (lookahead == 'p') ADVANCE(98); + END_STATE(); + case 49: + if (lookahead == 't') ADVANCE(99); + END_STATE(); + case 50: + if (lookahead == 'c') ADVANCE(100); + if (lookahead == 'o') ADVANCE(101); + END_STATE(); + case 51: + if (lookahead == 't') ADVANCE(102); + END_STATE(); + case 52: + if (lookahead == 'd') ADVANCE(103); + END_STATE(); + case 53: + if (lookahead == 't') ADVANCE(104); + END_STATE(); + case 54: + if (lookahead == 'm') ADVANCE(105); + END_STATE(); + case 55: + if (lookahead == 'w') ADVANCE(106); + END_STATE(); + case 56: + if (lookahead == 'n') ADVANCE(107); + if (lookahead == 'p') ADVANCE(108); + END_STATE(); + case 57: + ACCEPT_TOKEN(anon_sym_of); + END_STATE(); + case 58: + if (lookahead == 'f') ADVANCE(109); + if (lookahead == 'l') ADVANCE(110); + if (lookahead == 't') ADVANCE(111); + END_STATE(); + case 59: + if (lookahead == 'l') ADVANCE(112); + END_STATE(); + case 60: + if (lookahead == 'a') ADVANCE(113); + if (lookahead == 'r') ADVANCE(114); + END_STATE(); + case 61: + if (lookahead == 'm') ADVANCE(115); + END_STATE(); + case 62: + if (lookahead == 'a') ADVANCE(116); + if (lookahead == 'u') ADVANCE(117); + END_STATE(); + case 63: + if (lookahead == 'p') ADVANCE(118); + END_STATE(); + case 64: + if (lookahead == '2') ADVANCE(119); + if (lookahead == '6') ADVANCE(120); + END_STATE(); + case 65: + if (lookahead == '5') ADVANCE(121); + END_STATE(); + case 66: + if (lookahead == '2') ADVANCE(122); + END_STATE(); + case 67: + if (lookahead == '4') ADVANCE(123); + END_STATE(); + case 68: + ACCEPT_TOKEN(anon_sym_u8); + END_STATE(); + case 69: + if (lookahead == 'e') ADVANCE(124); + if (lookahead == 'i') ADVANCE(125); + END_STATE(); + case 70: + if (lookahead == 't') ADVANCE(126); + END_STATE(); + case 71: + ACCEPT_TOKEN(anon_sym_abs); + END_STATE(); + case 72: + if (lookahead == 'o') ADVANCE(127); + END_STATE(); + case 73: + ACCEPT_TOKEN(anon_sym_and); + END_STATE(); + case 74: + if (lookahead == 'e') ADVANCE(128); + END_STATE(); + case 75: + if (lookahead == 'l') ADVANCE(129); + END_STATE(); + case 76: + if (lookahead == 'l') ADVANCE(130); + END_STATE(); + case 77: + if (lookahead == 't') ADVANCE(131); + END_STATE(); + case 78: + if (lookahead == 'r') ADVANCE(132); + END_STATE(); + case 79: + if (lookahead == 'e') ADVANCE(133); + END_STATE(); + case 80: + if (lookahead == 's') ADVANCE(134); + END_STATE(); + case 81: + if (lookahead == 'e') ADVANCE(135); + END_STATE(); + case 82: + ACCEPT_TOKEN(anon_sym_end); + END_STATE(); + case 83: + if (lookahead == 'm') ADVANCE(136); + END_STATE(); + case 84: + if (lookahead == 'e') ADVANCE(137); + END_STATE(); + case 85: + ACCEPT_TOKEN(anon_sym_f32); + END_STATE(); + case 86: + ACCEPT_TOKEN(anon_sym_f64); + END_STATE(); + case 87: + if (lookahead == 's') ADVANCE(138); + END_STATE(); + case 88: + if (lookahead == 't') ADVANCE(139); + END_STATE(); + case 89: + if (lookahead == 'm') ADVANCE(140); + END_STATE(); + case 90: + if (lookahead == 'c') ADVANCE(141); + END_STATE(); + case 91: + if (lookahead == '8') ADVANCE(142); + END_STATE(); + case 92: + ACCEPT_TOKEN(anon_sym_i16); + END_STATE(); + case 93: + if (lookahead == '6') ADVANCE(143); + END_STATE(); + case 94: + ACCEPT_TOKEN(anon_sym_i32); + END_STATE(); + case 95: + ACCEPT_TOKEN(anon_sym_i64); + END_STATE(); + case 96: + if (lookahead == 'l') ADVANCE(144); + if (lookahead == 'o') ADVANCE(145); + END_STATE(); + case 97: + if (lookahead == 'z') ADVANCE(146); + END_STATE(); + case 98: + ACCEPT_TOKEN(anon_sym_jmp); + END_STATE(); + case 99: + ACCEPT_TOKEN(anon_sym_let); + END_STATE(); + case 100: + if (lookahead == 'a') ADVANCE(147); + END_STATE(); + case 101: + if (lookahead == 'p') ADVANCE(148); + END_STATE(); + case 102: + if (lookahead == 'c') ADVANCE(149); + END_STATE(); + case 103: + ACCEPT_TOKEN(anon_sym_mod); + END_STATE(); + case 104: + ACCEPT_TOKEN(anon_sym_mut); + END_STATE(); + case 105: + if (lookahead == 'e') ADVANCE(150); + END_STATE(); + case 106: + ACCEPT_TOKEN(anon_sym_new); + END_STATE(); + case 107: + if (lookahead == 'd') ADVANCE(151); + END_STATE(); + case 108: + if (lookahead == 'a') ADVANCE(152); + END_STATE(); + case 109: + ACCEPT_TOKEN(anon_sym_ref); + END_STATE(); + case 110: + ACCEPT_TOKEN(anon_sym_rel); + END_STATE(); + case 111: + ACCEPT_TOKEN(sym_inst_ret); + if (lookahead == 'u') ADVANCE(153); + END_STATE(); + case 112: + if (lookahead == 'f') ADVANCE(154); + END_STATE(); + case 113: + if (lookahead == 't') ADVANCE(155); + END_STATE(); + case 114: + ACCEPT_TOKEN(anon_sym_str); + if (lookahead == 'u') ADVANCE(156); + END_STATE(); + case 115: + if (lookahead == 'p') ADVANCE(157); + END_STATE(); + case 116: + if (lookahead == 'i') ADVANCE(158); + END_STATE(); + case 117: + if (lookahead == 'e') ADVANCE(159); + END_STATE(); + case 118: + if (lookahead == 'e') ADVANCE(160); + END_STATE(); + case 119: + if (lookahead == '8') ADVANCE(161); + END_STATE(); + case 120: + ACCEPT_TOKEN(anon_sym_u16); + END_STATE(); + case 121: + if (lookahead == '6') ADVANCE(162); + END_STATE(); + case 122: + ACCEPT_TOKEN(anon_sym_u32); + END_STATE(); + case 123: + ACCEPT_TOKEN(anon_sym_u64); + END_STATE(); + case 124: + ACCEPT_TOKEN(anon_sym_use); + END_STATE(); + case 125: + if (lookahead == 'n') ADVANCE(163); + if (lookahead == 'z') ADVANCE(164); + END_STATE(); + case 126: + if (lookahead == 'h') ADVANCE(165); + END_STATE(); + case 127: + if (lookahead == 'c') ADVANCE(166); + END_STATE(); + case 128: + if (lookahead == 'r') ADVANCE(167); + END_STATE(); + case 129: + ACCEPT_TOKEN(anon_sym_bool); + END_STATE(); + case 130: + ACCEPT_TOKEN(anon_sym_call); + END_STATE(); + case 131: + ACCEPT_TOKEN(anon_sym_cast); + END_STATE(); + case 132: + ACCEPT_TOKEN(anon_sym_char); + END_STATE(); + case 133: + if (lookahead == 'o') ADVANCE(168); + END_STATE(); + case 134: + if (lookahead == 't') ADVANCE(169); + END_STATE(); + case 135: + ACCEPT_TOKEN(anon_sym_else); + END_STATE(); + case 136: + ACCEPT_TOKEN(anon_sym_enum); + END_STATE(); + case 137: + if (lookahead == 'r') ADVANCE(170); + END_STATE(); + case 138: + if (lookahead == 'e') ADVANCE(171); + END_STATE(); + case 139: + ACCEPT_TOKEN(anon_sym_felt); + if (lookahead == '2') ADVANCE(172); + END_STATE(); + case 140: + ACCEPT_TOKEN(anon_sym_from); + END_STATE(); + case 141: + ACCEPT_TOKEN(anon_sym_func); + END_STATE(); + case 142: + ACCEPT_TOKEN(anon_sym_i128); + END_STATE(); + case 143: + ACCEPT_TOKEN(anon_sym_i256); + END_STATE(); + case 144: + ACCEPT_TOKEN(anon_sym_impl); + if (lookahead == 'i') ADVANCE(173); + END_STATE(); + case 145: + if (lookahead == 'r') ADVANCE(174); + END_STATE(); + case 146: + if (lookahead == 'e') ADVANCE(175); + END_STATE(); + case 147: + if (lookahead == 'l') ADVANCE(176); + END_STATE(); + case 148: + ACCEPT_TOKEN(anon_sym_loop); + END_STATE(); + case 149: + if (lookahead == 'h') ADVANCE(177); + END_STATE(); + case 150: + if (lookahead == 's') ADVANCE(178); + END_STATE(); + case 151: + if (lookahead == 'e') ADVANCE(179); + END_STATE(); + case 152: + if (lookahead == 'n') ADVANCE(180); + END_STATE(); + case 153: + if (lookahead == 'r') ADVANCE(181); + END_STATE(); + case 154: + ACCEPT_TOKEN(sym_self); + END_STATE(); + case 155: + if (lookahead == 'i') ADVANCE(182); + END_STATE(); + case 156: + if (lookahead == 'c') ADVANCE(183); + END_STATE(); + case 157: + if (lookahead == 'v') ADVANCE(184); + END_STATE(); + case 158: + if (lookahead == 't') ADVANCE(185); + END_STATE(); + case 159: + ACCEPT_TOKEN(anon_sym_true); + END_STATE(); + case 160: + ACCEPT_TOKEN(anon_sym_type); + END_STATE(); + case 161: + ACCEPT_TOKEN(anon_sym_u128); + END_STATE(); + case 162: + ACCEPT_TOKEN(anon_sym_u256); + END_STATE(); + case 163: + if (lookahead == 'g') ADVANCE(186); + END_STATE(); + case 164: + if (lookahead == 'e') ADVANCE(187); + END_STATE(); + case 165: + ACCEPT_TOKEN(anon_sym_with); + if (lookahead == '_') ADVANCE(188); + END_STATE(); + case 166: + if (lookahead == '_') ADVANCE(189); + END_STATE(); + case 167: + if (lookahead == 't') ADVANCE(190); + END_STATE(); + case 168: + if (lookahead == 'f') ADVANCE(191); + END_STATE(); + case 169: + ACCEPT_TOKEN(anon_sym_const); + END_STATE(); + case 170: + if (lookahead == 'n') ADVANCE(192); + END_STATE(); + case 171: + ACCEPT_TOKEN(anon_sym_false); + END_STATE(); + case 172: + if (lookahead == '5') ADVANCE(193); + END_STATE(); + case 173: + if (lookahead == 'c') ADVANCE(194); + END_STATE(); + case 174: + if (lookahead == 't') ADVANCE(195); + END_STATE(); + case 175: + ACCEPT_TOKEN(anon_sym_isize); + END_STATE(); + case 176: + ACCEPT_TOKEN(anon_sym_local); + END_STATE(); + case 177: + ACCEPT_TOKEN(anon_sym_match); + END_STATE(); + case 178: + if (lookahead == 'p') ADVANCE(196); + END_STATE(); + case 179: + if (lookahead == 't') ADVANCE(197); + END_STATE(); + case 180: + if (lookahead == 'i') ADVANCE(198); + END_STATE(); + case 181: + if (lookahead == 'n') ADVANCE(199); + END_STATE(); + case 182: + if (lookahead == 'c') ADVANCE(200); + END_STATE(); + case 183: + if (lookahead == 't') ADVANCE(201); + END_STATE(); + case 184: + if (lookahead == 'a') ADVANCE(202); + END_STATE(); + case 185: + ACCEPT_TOKEN(anon_sym_trait); + END_STATE(); + case 186: + ACCEPT_TOKEN(anon_sym_using); + END_STATE(); + case 187: + ACCEPT_TOKEN(anon_sym_usize); + END_STATE(); + case 188: + if (lookahead == 'a') ADVANCE(203); + END_STATE(); + case 189: + if (lookahead == 'l') ADVANCE(204); + END_STATE(); + case 190: + ACCEPT_TOKEN(anon_sym_assert); + END_STATE(); + case 191: + if (lookahead == 'f') ADVANCE(205); + END_STATE(); + case 192: + ACCEPT_TOKEN(anon_sym_extern); + END_STATE(); + case 193: + if (lookahead == '2') ADVANCE(206); + END_STATE(); + case 194: + if (lookahead == 'i') ADVANCE(207); + END_STATE(); + case 195: + ACCEPT_TOKEN(anon_sym_import); + END_STATE(); + case 196: + if (lookahead == 'a') ADVANCE(208); + END_STATE(); + case 197: + ACCEPT_TOKEN(anon_sym_nondet); + END_STATE(); + case 198: + if (lookahead == 'c') ADVANCE(209); + END_STATE(); + case 199: + ACCEPT_TOKEN(anon_sym_return); + END_STATE(); + case 200: + if (lookahead == '_') ADVANCE(210); + END_STATE(); + case 201: + ACCEPT_TOKEN(anon_sym_struct); + END_STATE(); + case 202: + if (lookahead == 'r') ADVANCE(211); + END_STATE(); + case 203: + if (lookahead == 't') ADVANCE(212); + END_STATE(); + case 204: + if (lookahead == 'o') ADVANCE(213); + END_STATE(); + case 205: + if (lookahead == 's') ADVANCE(214); + END_STATE(); + case 206: + ACCEPT_TOKEN(anon_sym_felt252); + END_STATE(); + case 207: + if (lookahead == 't') ADVANCE(215); + END_STATE(); + case 208: + if (lookahead == 'c') ADVANCE(216); + END_STATE(); + case 209: + ACCEPT_TOKEN(anon_sym_nopanic); + END_STATE(); + case 210: + if (lookahead == 'a') ADVANCE(217); + END_STATE(); + case 211: + ACCEPT_TOKEN(anon_sym_tempvar); + END_STATE(); + case 212: + if (lookahead == 't') ADVANCE(218); + END_STATE(); + case 213: + if (lookahead == 'c') ADVANCE(219); + END_STATE(); + case 214: + if (lookahead == 'e') ADVANCE(220); + END_STATE(); + case 215: + if (lookahead == 's') ADVANCE(221); + END_STATE(); + case 216: + if (lookahead == 'e') ADVANCE(222); + END_STATE(); + case 217: + if (lookahead == 's') ADVANCE(223); + END_STATE(); + case 218: + if (lookahead == 'r') ADVANCE(224); + END_STATE(); + case 219: + if (lookahead == 'a') ADVANCE(225); + END_STATE(); + case 220: + if (lookahead == 't') ADVANCE(226); + END_STATE(); + case 221: + ACCEPT_TOKEN(anon_sym_implicits); + END_STATE(); + case 222: + ACCEPT_TOKEN(anon_sym_namespace); + END_STATE(); + case 223: + if (lookahead == 's') ADVANCE(227); + END_STATE(); + case 224: + ACCEPT_TOKEN(anon_sym_with_attr); + END_STATE(); + case 225: + if (lookahead == 'l') ADVANCE(228); + END_STATE(); + case 226: + ACCEPT_TOKEN(anon_sym_codeoffset); + END_STATE(); + case 227: + if (lookahead == 'e') ADVANCE(229); + END_STATE(); + case 228: + if (lookahead == 's') ADVANCE(230); + END_STATE(); + case 229: + if (lookahead == 'r') ADVANCE(231); + END_STATE(); + case 230: + ACCEPT_TOKEN(anon_sym_alloc_locals); + END_STATE(); + case 231: + if (lookahead == 't') ADVANCE(232); + END_STATE(); + case 232: + ACCEPT_TOKEN(anon_sym_static_assert); + END_STATE(); + default: + return false; + } +} + +static const TSLexMode ts_lex_modes[STATE_COUNT] = { + [0] = {.lex_state = 0, .external_lex_state = 1}, + [1] = {.lex_state = 79, .external_lex_state = 2}, + [2] = {.lex_state = 3}, + [3] = {.lex_state = 3}, + [4] = {.lex_state = 4}, + [5] = {.lex_state = 4}, + [6] = {.lex_state = 4}, + [7] = {.lex_state = 3}, + [8] = {.lex_state = 4}, + [9] = {.lex_state = 4}, + [10] = {.lex_state = 4}, + [11] = {.lex_state = 4}, + [12] = {.lex_state = 4}, + [13] = {.lex_state = 4}, + [14] = {.lex_state = 4}, + [15] = {.lex_state = 4}, + [16] = {.lex_state = 79, .external_lex_state = 2}, + [17] = {.lex_state = 79, .external_lex_state = 2}, + [18] = {.lex_state = 79, .external_lex_state = 2}, + [19] = {.lex_state = 79, .external_lex_state = 2}, + [20] = {.lex_state = 79, .external_lex_state = 2}, + [21] = {.lex_state = 79, .external_lex_state = 2}, + [22] = {.lex_state = 79, .external_lex_state = 2}, + [23] = {.lex_state = 79, .external_lex_state = 2}, + [24] = {.lex_state = 79, .external_lex_state = 2}, + [25] = {.lex_state = 79, .external_lex_state = 2}, + [26] = {.lex_state = 79, .external_lex_state = 2}, + [27] = {.lex_state = 79, .external_lex_state = 2}, + [28] = {.lex_state = 79, .external_lex_state = 2}, + [29] = {.lex_state = 79, .external_lex_state = 2}, + [30] = {.lex_state = 79, .external_lex_state = 2}, + [31] = {.lex_state = 79, .external_lex_state = 2}, + [32] = {.lex_state = 79, .external_lex_state = 2}, + [33] = {.lex_state = 79, .external_lex_state = 2}, + [34] = {.lex_state = 79, .external_lex_state = 2}, + [35] = {.lex_state = 79, .external_lex_state = 2}, + [36] = {.lex_state = 79, .external_lex_state = 2}, + [37] = {.lex_state = 79, .external_lex_state = 2}, + [38] = {.lex_state = 79, .external_lex_state = 2}, + [39] = {.lex_state = 79, .external_lex_state = 2}, + [40] = {.lex_state = 79, .external_lex_state = 2}, + [41] = {.lex_state = 79, .external_lex_state = 2}, + [42] = {.lex_state = 79, .external_lex_state = 2}, + [43] = {.lex_state = 79, .external_lex_state = 2}, + [44] = {.lex_state = 79, .external_lex_state = 2}, + [45] = {.lex_state = 79, .external_lex_state = 2}, + [46] = {.lex_state = 79, .external_lex_state = 2}, + [47] = {.lex_state = 79, .external_lex_state = 2}, + [48] = {.lex_state = 79, .external_lex_state = 2}, + [49] = {.lex_state = 79, .external_lex_state = 2}, + [50] = {.lex_state = 79, .external_lex_state = 2}, + [51] = {.lex_state = 79, .external_lex_state = 2}, + [52] = {.lex_state = 79, .external_lex_state = 2}, + [53] = {.lex_state = 79, .external_lex_state = 2}, + [54] = {.lex_state = 79, .external_lex_state = 2}, + [55] = {.lex_state = 79, .external_lex_state = 2}, + [56] = {.lex_state = 79, .external_lex_state = 2}, + [57] = {.lex_state = 79, .external_lex_state = 2}, + [58] = {.lex_state = 79, .external_lex_state = 2}, + [59] = {.lex_state = 79, .external_lex_state = 2}, + [60] = {.lex_state = 79, .external_lex_state = 2}, + [61] = {.lex_state = 79, .external_lex_state = 2}, + [62] = {.lex_state = 79, .external_lex_state = 2}, + [63] = {.lex_state = 79, .external_lex_state = 2}, + [64] = {.lex_state = 79, .external_lex_state = 2}, + [65] = {.lex_state = 79, .external_lex_state = 2}, + [66] = {.lex_state = 79, .external_lex_state = 2}, + [67] = {.lex_state = 79, .external_lex_state = 2}, + [68] = {.lex_state = 79, .external_lex_state = 2}, + [69] = {.lex_state = 79, .external_lex_state = 2}, + [70] = {.lex_state = 79, .external_lex_state = 2}, + [71] = {.lex_state = 79, .external_lex_state = 2}, + [72] = {.lex_state = 79, .external_lex_state = 2}, + [73] = {.lex_state = 79, .external_lex_state = 2}, + [74] = {.lex_state = 79, .external_lex_state = 2}, + [75] = {.lex_state = 79, .external_lex_state = 2}, + [76] = {.lex_state = 79, .external_lex_state = 2}, + [77] = {.lex_state = 79, .external_lex_state = 2}, + [78] = {.lex_state = 79, .external_lex_state = 2}, + [79] = {.lex_state = 79, .external_lex_state = 2}, + [80] = {.lex_state = 79, .external_lex_state = 2}, + [81] = {.lex_state = 79, .external_lex_state = 2}, + [82] = {.lex_state = 79, .external_lex_state = 2}, + [83] = {.lex_state = 79, .external_lex_state = 2}, + [84] = {.lex_state = 79, .external_lex_state = 2}, + [85] = {.lex_state = 79, .external_lex_state = 2}, + [86] = {.lex_state = 79, .external_lex_state = 2}, + [87] = {.lex_state = 3}, + [88] = {.lex_state = 3}, + [89] = {.lex_state = 3}, + [90] = {.lex_state = 79, .external_lex_state = 2}, + [91] = {.lex_state = 3}, + [92] = {.lex_state = 3}, + [93] = {.lex_state = 79, .external_lex_state = 2}, + [94] = {.lex_state = 3}, + [95] = {.lex_state = 3}, + [96] = {.lex_state = 3}, + [97] = {.lex_state = 3}, + [98] = {.lex_state = 3}, + [99] = {.lex_state = 3}, + [100] = {.lex_state = 3}, + [101] = {.lex_state = 3}, + [102] = {.lex_state = 3}, + [103] = {.lex_state = 3}, + [104] = {.lex_state = 3}, + [105] = {.lex_state = 3}, + [106] = {.lex_state = 3}, + [107] = {.lex_state = 3}, + [108] = {.lex_state = 3}, + [109] = {.lex_state = 3}, + [110] = {.lex_state = 3}, + [111] = {.lex_state = 3}, + [112] = {.lex_state = 3}, + [113] = {.lex_state = 3}, + [114] = {.lex_state = 3}, + [115] = {.lex_state = 3}, + [116] = {.lex_state = 3}, + [117] = {.lex_state = 3}, + [118] = {.lex_state = 3}, + [119] = {.lex_state = 3}, + [120] = {.lex_state = 3}, + [121] = {.lex_state = 3}, + [122] = {.lex_state = 3}, + [123] = {.lex_state = 3}, + [124] = {.lex_state = 3}, + [125] = {.lex_state = 3}, + [126] = {.lex_state = 3}, + [127] = {.lex_state = 3}, + [128] = {.lex_state = 3}, + [129] = {.lex_state = 3}, + [130] = {.lex_state = 3}, + [131] = {.lex_state = 3}, + [132] = {.lex_state = 3}, + [133] = {.lex_state = 3}, + [134] = {.lex_state = 3}, + [135] = {.lex_state = 3}, + [136] = {.lex_state = 3}, + [137] = {.lex_state = 3}, + [138] = {.lex_state = 3}, + [139] = {.lex_state = 3}, + [140] = {.lex_state = 3}, + [141] = {.lex_state = 3}, + [142] = {.lex_state = 3}, + [143] = {.lex_state = 3}, + [144] = {.lex_state = 3}, + [145] = {.lex_state = 3}, + [146] = {.lex_state = 3}, + [147] = {.lex_state = 3}, + [148] = {.lex_state = 3}, + [149] = {.lex_state = 3}, + [150] = {.lex_state = 3}, + [151] = {.lex_state = 3}, + [152] = {.lex_state = 3}, + [153] = {.lex_state = 3}, + [154] = {.lex_state = 3}, + [155] = {.lex_state = 3}, + [156] = {.lex_state = 3}, + [157] = {.lex_state = 3}, + [158] = {.lex_state = 3}, + [159] = {.lex_state = 3}, + [160] = {.lex_state = 3}, + [161] = {.lex_state = 3}, + [162] = {.lex_state = 3}, + [163] = {.lex_state = 3}, + [164] = {.lex_state = 3}, + [165] = {.lex_state = 3}, + [166] = {.lex_state = 3}, + [167] = {.lex_state = 3}, + [168] = {.lex_state = 3}, + [169] = {.lex_state = 3}, + [170] = {.lex_state = 3}, + [171] = {.lex_state = 3}, + [172] = {.lex_state = 3}, + [173] = {.lex_state = 3}, + [174] = {.lex_state = 4}, + [175] = {.lex_state = 4}, + [176] = {.lex_state = 4}, + [177] = {.lex_state = 4}, + [178] = {.lex_state = 4}, + [179] = {.lex_state = 4}, + [180] = {.lex_state = 4}, + [181] = {.lex_state = 4}, + [182] = {.lex_state = 4}, + [183] = {.lex_state = 4}, + [184] = {.lex_state = 4}, + [185] = {.lex_state = 4}, + [186] = {.lex_state = 4}, + [187] = {.lex_state = 4}, + [188] = {.lex_state = 4}, + [189] = {.lex_state = 4}, + [190] = {.lex_state = 4}, + [191] = {.lex_state = 4}, + [192] = {.lex_state = 4}, + [193] = {.lex_state = 4}, + [194] = {.lex_state = 4}, + [195] = {.lex_state = 4}, + [196] = {.lex_state = 4}, + [197] = {.lex_state = 4}, + [198] = {.lex_state = 4}, + [199] = {.lex_state = 4}, + [200] = {.lex_state = 4}, + [201] = {.lex_state = 4}, + [202] = {.lex_state = 4}, + [203] = {.lex_state = 4}, + [204] = {.lex_state = 4}, + [205] = {.lex_state = 4}, + [206] = {.lex_state = 4}, + [207] = {.lex_state = 4}, + [208] = {.lex_state = 4}, + [209] = {.lex_state = 4}, + [210] = {.lex_state = 4}, + [211] = {.lex_state = 4}, + [212] = {.lex_state = 4}, + [213] = {.lex_state = 4}, + [214] = {.lex_state = 3}, + [215] = {.lex_state = 4}, + [216] = {.lex_state = 4}, + [217] = {.lex_state = 4}, + [218] = {.lex_state = 4}, + [219] = {.lex_state = 4}, + [220] = {.lex_state = 4}, + [221] = {.lex_state = 4}, + [222] = {.lex_state = 4}, + [223] = {.lex_state = 4}, + [224] = {.lex_state = 4}, + [225] = {.lex_state = 4}, + [226] = {.lex_state = 4}, + [227] = {.lex_state = 4}, + [228] = {.lex_state = 4}, + [229] = {.lex_state = 4}, + [230] = {.lex_state = 4}, + [231] = {.lex_state = 4}, + [232] = {.lex_state = 4}, + [233] = {.lex_state = 4}, + [234] = {.lex_state = 4}, + [235] = {.lex_state = 4}, + [236] = {.lex_state = 4}, + [237] = {.lex_state = 4}, + [238] = {.lex_state = 4}, + [239] = {.lex_state = 4}, + [240] = {.lex_state = 4}, + [241] = {.lex_state = 4}, + [242] = {.lex_state = 4}, + [243] = {.lex_state = 4}, + [244] = {.lex_state = 4}, + [245] = {.lex_state = 4}, + [246] = {.lex_state = 4}, + [247] = {.lex_state = 4}, + [248] = {.lex_state = 4}, + [249] = {.lex_state = 4}, + [250] = {.lex_state = 4}, + [251] = {.lex_state = 4}, + [252] = {.lex_state = 4}, + [253] = {.lex_state = 4}, + [254] = {.lex_state = 4}, + [255] = {.lex_state = 4}, + [256] = {.lex_state = 4}, + [257] = {.lex_state = 4}, + [258] = {.lex_state = 4}, + [259] = {.lex_state = 4}, + [260] = {.lex_state = 4}, + [261] = {.lex_state = 4}, + [262] = {.lex_state = 4}, + [263] = {.lex_state = 4}, + [264] = {.lex_state = 4}, + [265] = {.lex_state = 4}, + [266] = {.lex_state = 4}, + [267] = {.lex_state = 4}, + [268] = {.lex_state = 4}, + [269] = {.lex_state = 4}, + [270] = {.lex_state = 4}, + [271] = {.lex_state = 4}, + [272] = {.lex_state = 4}, + [273] = {.lex_state = 4}, + [274] = {.lex_state = 4}, + [275] = {.lex_state = 4}, + [276] = {.lex_state = 4}, + [277] = {.lex_state = 4}, + [278] = {.lex_state = 4}, + [279] = {.lex_state = 4}, + [280] = {.lex_state = 4}, + [281] = {.lex_state = 4}, + [282] = {.lex_state = 4}, + [283] = {.lex_state = 4}, + [284] = {.lex_state = 4}, + [285] = {.lex_state = 4}, + [286] = {.lex_state = 4}, + [287] = {.lex_state = 4}, + [288] = {.lex_state = 4}, + [289] = {.lex_state = 4}, + [290] = {.lex_state = 4}, + [291] = {.lex_state = 3}, + [292] = {.lex_state = 3}, + [293] = {.lex_state = 4}, + [294] = {.lex_state = 4}, + [295] = {.lex_state = 4}, + [296] = {.lex_state = 4}, + [297] = {.lex_state = 4}, + [298] = {.lex_state = 4}, + [299] = {.lex_state = 4}, + [300] = {.lex_state = 4}, + [301] = {.lex_state = 4}, + [302] = {.lex_state = 4}, + [303] = {.lex_state = 3}, + [304] = {.lex_state = 3}, + [305] = {.lex_state = 3}, + [306] = {.lex_state = 3}, + [307] = {.lex_state = 3}, + [308] = {.lex_state = 3}, + [309] = {.lex_state = 3}, + [310] = {.lex_state = 3}, + [311] = {.lex_state = 3}, + [312] = {.lex_state = 3}, + [313] = {.lex_state = 3}, + [314] = {.lex_state = 4}, + [315] = {.lex_state = 4}, + [316] = {.lex_state = 4}, + [317] = {.lex_state = 4}, + [318] = {.lex_state = 4}, + [319] = {.lex_state = 4}, + [320] = {.lex_state = 4}, + [321] = {.lex_state = 4}, + [322] = {.lex_state = 4}, + [323] = {.lex_state = 4}, + [324] = {.lex_state = 4}, + [325] = {.lex_state = 4}, + [326] = {.lex_state = 4}, + [327] = {.lex_state = 4}, + [328] = {.lex_state = 4}, + [329] = {.lex_state = 4}, + [330] = {.lex_state = 4}, + [331] = {.lex_state = 4}, + [332] = {.lex_state = 4}, + [333] = {.lex_state = 4}, + [334] = {.lex_state = 4}, + [335] = {.lex_state = 4}, + [336] = {.lex_state = 4}, + [337] = {.lex_state = 4}, + [338] = {.lex_state = 4}, + [339] = {.lex_state = 4}, + [340] = {.lex_state = 4}, + [341] = {.lex_state = 4}, + [342] = {.lex_state = 4}, + [343] = {.lex_state = 4}, + [344] = {.lex_state = 4}, + [345] = {.lex_state = 4}, + [346] = {.lex_state = 4}, + [347] = {.lex_state = 4}, + [348] = {.lex_state = 4}, + [349] = {.lex_state = 4}, + [350] = {.lex_state = 4}, + [351] = {.lex_state = 4}, + [352] = {.lex_state = 4}, + [353] = {.lex_state = 4}, + [354] = {.lex_state = 4}, + [355] = {.lex_state = 4}, + [356] = {.lex_state = 4}, + [357] = {.lex_state = 4}, + [358] = {.lex_state = 4}, + [359] = {.lex_state = 4}, + [360] = {.lex_state = 4}, + [361] = {.lex_state = 4}, + [362] = {.lex_state = 4}, + [363] = {.lex_state = 4}, + [364] = {.lex_state = 4}, + [365] = {.lex_state = 4}, + [366] = {.lex_state = 4}, + [367] = {.lex_state = 4}, + [368] = {.lex_state = 4}, + [369] = {.lex_state = 4}, + [370] = {.lex_state = 4}, + [371] = {.lex_state = 4}, + [372] = {.lex_state = 4}, + [373] = {.lex_state = 4}, + [374] = {.lex_state = 4}, + [375] = {.lex_state = 4}, + [376] = {.lex_state = 4}, + [377] = {.lex_state = 4}, + [378] = {.lex_state = 4}, + [379] = {.lex_state = 4}, + [380] = {.lex_state = 4}, + [381] = {.lex_state = 4}, + [382] = {.lex_state = 4}, + [383] = {.lex_state = 4}, + [384] = {.lex_state = 4}, + [385] = {.lex_state = 4}, + [386] = {.lex_state = 4}, + [387] = {.lex_state = 4}, + [388] = {.lex_state = 4}, + [389] = {.lex_state = 79, .external_lex_state = 2}, + [390] = {.lex_state = 79, .external_lex_state = 2}, + [391] = {.lex_state = 79, .external_lex_state = 2}, + [392] = {.lex_state = 5}, + [393] = {.lex_state = 0}, + [394] = {.lex_state = 0}, + [395] = {.lex_state = 0}, + [396] = {.lex_state = 5}, + [397] = {.lex_state = 5}, + [398] = {.lex_state = 4}, + [399] = {.lex_state = 5}, + [400] = {.lex_state = 79, .external_lex_state = 2}, + [401] = {.lex_state = 0}, + [402] = {.lex_state = 5}, + [403] = {.lex_state = 0}, + [404] = {.lex_state = 5}, + [405] = {.lex_state = 79, .external_lex_state = 2}, + [406] = {.lex_state = 0}, + [407] = {.lex_state = 79, .external_lex_state = 2}, + [408] = {.lex_state = 79, .external_lex_state = 2}, + [409] = {.lex_state = 5}, + [410] = {.lex_state = 5}, + [411] = {.lex_state = 5}, + [412] = {.lex_state = 5}, + [413] = {.lex_state = 79, .external_lex_state = 2}, + [414] = {.lex_state = 5}, + [415] = {.lex_state = 5}, + [416] = {.lex_state = 5}, + [417] = {.lex_state = 5}, + [418] = {.lex_state = 5}, + [419] = {.lex_state = 79, .external_lex_state = 2}, + [420] = {.lex_state = 79, .external_lex_state = 2}, + [421] = {.lex_state = 79, .external_lex_state = 2}, + [422] = {.lex_state = 0}, + [423] = {.lex_state = 5}, + [424] = {.lex_state = 5}, + [425] = {.lex_state = 5}, + [426] = {.lex_state = 5}, + [427] = {.lex_state = 79}, + [428] = {.lex_state = 5}, + [429] = {.lex_state = 5}, + [430] = {.lex_state = 5}, + [431] = {.lex_state = 5}, + [432] = {.lex_state = 79}, + [433] = {.lex_state = 4}, + [434] = {.lex_state = 5}, + [435] = {.lex_state = 5}, + [436] = {.lex_state = 5}, + [437] = {.lex_state = 5}, + [438] = {.lex_state = 5}, + [439] = {.lex_state = 5}, + [440] = {.lex_state = 5}, + [441] = {.lex_state = 5}, + [442] = {.lex_state = 5}, + [443] = {.lex_state = 5}, + [444] = {.lex_state = 5}, + [445] = {.lex_state = 5}, + [446] = {.lex_state = 5}, + [447] = {.lex_state = 5}, + [448] = {.lex_state = 5}, + [449] = {.lex_state = 5}, + [450] = {.lex_state = 5}, + [451] = {.lex_state = 5}, + [452] = {.lex_state = 5}, + [453] = {.lex_state = 79}, + [454] = {.lex_state = 5}, + [455] = {.lex_state = 5}, + [456] = {.lex_state = 5}, + [457] = {.lex_state = 5}, + [458] = {.lex_state = 5}, + [459] = {.lex_state = 5}, + [460] = {.lex_state = 5}, + [461] = {.lex_state = 5}, + [462] = {.lex_state = 5}, + [463] = {.lex_state = 5}, + [464] = {.lex_state = 5}, + [465] = {.lex_state = 5}, + [466] = {.lex_state = 5}, + [467] = {.lex_state = 5}, + [468] = {.lex_state = 5}, + [469] = {.lex_state = 5}, + [470] = {.lex_state = 5}, + [471] = {.lex_state = 5}, + [472] = {.lex_state = 79, .external_lex_state = 2}, + [473] = {.lex_state = 79, .external_lex_state = 2}, + [474] = {.lex_state = 5}, + [475] = {.lex_state = 79, .external_lex_state = 2}, + [476] = {.lex_state = 5}, + [477] = {.lex_state = 79, .external_lex_state = 2}, + [478] = {.lex_state = 79, .external_lex_state = 2}, + [479] = {.lex_state = 79, .external_lex_state = 2}, + [480] = {.lex_state = 5}, + [481] = {.lex_state = 4}, + [482] = {.lex_state = 5}, + [483] = {.lex_state = 79}, + [484] = {.lex_state = 5}, + [485] = {.lex_state = 79}, + [486] = {.lex_state = 79, .external_lex_state = 2}, + [487] = {.lex_state = 5}, + [488] = {.lex_state = 5}, + [489] = {.lex_state = 5}, + [490] = {.lex_state = 5}, + [491] = {.lex_state = 5}, + [492] = {.lex_state = 4}, + [493] = {.lex_state = 4}, + [494] = {.lex_state = 5}, + [495] = {.lex_state = 79}, + [496] = {.lex_state = 5}, + [497] = {.lex_state = 79, .external_lex_state = 2}, + [498] = {.lex_state = 79, .external_lex_state = 2}, + [499] = {.lex_state = 79, .external_lex_state = 2}, + [500] = {.lex_state = 0}, + [501] = {.lex_state = 5}, + [502] = {.lex_state = 0}, + [503] = {.lex_state = 0}, + [504] = {.lex_state = 0}, + [505] = {.lex_state = 79, .external_lex_state = 2}, + [506] = {.lex_state = 5}, + [507] = {.lex_state = 79, .external_lex_state = 2}, + [508] = {.lex_state = 79, .external_lex_state = 2}, + [509] = {.lex_state = 79, .external_lex_state = 2}, + [510] = {.lex_state = 5}, + [511] = {.lex_state = 5}, + [512] = {.lex_state = 5}, + [513] = {.lex_state = 4}, + [514] = {.lex_state = 79, .external_lex_state = 2}, + [515] = {.lex_state = 5}, + [516] = {.lex_state = 79, .external_lex_state = 2}, + [517] = {.lex_state = 79, .external_lex_state = 2}, + [518] = {.lex_state = 5}, + [519] = {.lex_state = 5}, + [520] = {.lex_state = 0}, + [521] = {.lex_state = 5}, + [522] = {.lex_state = 79, .external_lex_state = 2}, + [523] = {.lex_state = 5}, + [524] = {.lex_state = 0}, + [525] = {.lex_state = 5}, + [526] = {.lex_state = 5}, + [527] = {.lex_state = 5}, + [528] = {.lex_state = 5}, + [529] = {.lex_state = 5}, + [530] = {.lex_state = 5}, + [531] = {.lex_state = 79, .external_lex_state = 2}, + [532] = {.lex_state = 0}, + [533] = {.lex_state = 79, .external_lex_state = 2}, + [534] = {.lex_state = 79, .external_lex_state = 2}, + [535] = {.lex_state = 0}, + [536] = {.lex_state = 5}, + [537] = {.lex_state = 5}, + [538] = {.lex_state = 79, .external_lex_state = 2}, + [539] = {.lex_state = 79, .external_lex_state = 2}, + [540] = {.lex_state = 5}, + [541] = {.lex_state = 5}, + [542] = {.lex_state = 79, .external_lex_state = 2}, + [543] = {.lex_state = 79, .external_lex_state = 2}, + [544] = {.lex_state = 79, .external_lex_state = 2}, + [545] = {.lex_state = 79, .external_lex_state = 2}, + [546] = {.lex_state = 79, .external_lex_state = 2}, + [547] = {.lex_state = 79, .external_lex_state = 2}, + [548] = {.lex_state = 79, .external_lex_state = 2}, + [549] = {.lex_state = 79, .external_lex_state = 2}, + [550] = {.lex_state = 79, .external_lex_state = 2}, + [551] = {.lex_state = 79, .external_lex_state = 2}, + [552] = {.lex_state = 79, .external_lex_state = 2}, + [553] = {.lex_state = 79, .external_lex_state = 2}, + [554] = {.lex_state = 79, .external_lex_state = 2}, + [555] = {.lex_state = 79, .external_lex_state = 2}, + [556] = {.lex_state = 79, .external_lex_state = 2}, + [557] = {.lex_state = 79, .external_lex_state = 2}, + [558] = {.lex_state = 79, .external_lex_state = 2}, + [559] = {.lex_state = 79, .external_lex_state = 2}, + [560] = {.lex_state = 79, .external_lex_state = 2}, + [561] = {.lex_state = 79, .external_lex_state = 2}, + [562] = {.lex_state = 79, .external_lex_state = 2}, + [563] = {.lex_state = 79, .external_lex_state = 2}, + [564] = {.lex_state = 79, .external_lex_state = 2}, + [565] = {.lex_state = 79, .external_lex_state = 2}, + [566] = {.lex_state = 79, .external_lex_state = 2}, + [567] = {.lex_state = 79, .external_lex_state = 2}, + [568] = {.lex_state = 79, .external_lex_state = 2}, + [569] = {.lex_state = 79, .external_lex_state = 2}, + [570] = {.lex_state = 79, .external_lex_state = 2}, + [571] = {.lex_state = 79, .external_lex_state = 2}, + [572] = {.lex_state = 79, .external_lex_state = 2}, + [573] = {.lex_state = 79, .external_lex_state = 2}, + [574] = {.lex_state = 79, .external_lex_state = 2}, + [575] = {.lex_state = 79, .external_lex_state = 2}, + [576] = {.lex_state = 79, .external_lex_state = 2}, + [577] = {.lex_state = 79, .external_lex_state = 2}, + [578] = {.lex_state = 79, .external_lex_state = 2}, + [579] = {.lex_state = 79, .external_lex_state = 2}, + [580] = {.lex_state = 79, .external_lex_state = 2}, + [581] = {.lex_state = 79, .external_lex_state = 2}, + [582] = {.lex_state = 79, .external_lex_state = 2}, + [583] = {.lex_state = 79, .external_lex_state = 2}, + [584] = {.lex_state = 79, .external_lex_state = 2}, + [585] = {.lex_state = 79, .external_lex_state = 2}, + [586] = {.lex_state = 79, .external_lex_state = 2}, + [587] = {.lex_state = 79, .external_lex_state = 2}, + [588] = {.lex_state = 79, .external_lex_state = 2}, + [589] = {.lex_state = 79, .external_lex_state = 2}, + [590] = {.lex_state = 79, .external_lex_state = 2}, + [591] = {.lex_state = 79, .external_lex_state = 2}, + [592] = {.lex_state = 0}, + [593] = {.lex_state = 79, .external_lex_state = 2}, + [594] = {.lex_state = 79, .external_lex_state = 2}, + [595] = {.lex_state = 79, .external_lex_state = 2}, + [596] = {.lex_state = 79, .external_lex_state = 2}, + [597] = {.lex_state = 79, .external_lex_state = 2}, + [598] = {.lex_state = 79, .external_lex_state = 2}, + [599] = {.lex_state = 79, .external_lex_state = 2}, + [600] = {.lex_state = 79, .external_lex_state = 2}, + [601] = {.lex_state = 79, .external_lex_state = 2}, + [602] = {.lex_state = 79, .external_lex_state = 2}, + [603] = {.lex_state = 79, .external_lex_state = 2}, + [604] = {.lex_state = 79, .external_lex_state = 2}, + [605] = {.lex_state = 0}, + [606] = {.lex_state = 0}, + [607] = {.lex_state = 0}, + [608] = {.lex_state = 0}, + [609] = {.lex_state = 79, .external_lex_state = 2}, + [610] = {.lex_state = 79, .external_lex_state = 2}, + [611] = {.lex_state = 79, .external_lex_state = 2}, + [612] = {.lex_state = 79, .external_lex_state = 2}, + [613] = {.lex_state = 79, .external_lex_state = 2}, + [614] = {.lex_state = 79, .external_lex_state = 2}, + [615] = {.lex_state = 79, .external_lex_state = 2}, + [616] = {.lex_state = 79, .external_lex_state = 2}, + [617] = {.lex_state = 79, .external_lex_state = 2}, + [618] = {.lex_state = 79, .external_lex_state = 2}, + [619] = {.lex_state = 79, .external_lex_state = 2}, + [620] = {.lex_state = 79, .external_lex_state = 2}, + [621] = {.lex_state = 79, .external_lex_state = 2}, + [622] = {.lex_state = 79, .external_lex_state = 2}, + [623] = {.lex_state = 79, .external_lex_state = 2}, + [624] = {.lex_state = 79, .external_lex_state = 2}, + [625] = {.lex_state = 79, .external_lex_state = 2}, + [626] = {.lex_state = 79, .external_lex_state = 2}, + [627] = {.lex_state = 79, .external_lex_state = 2}, + [628] = {.lex_state = 79, .external_lex_state = 2}, + [629] = {.lex_state = 0}, + [630] = {.lex_state = 79, .external_lex_state = 2}, + [631] = {.lex_state = 0}, + [632] = {.lex_state = 79, .external_lex_state = 2}, + [633] = {.lex_state = 79, .external_lex_state = 2}, + [634] = {.lex_state = 79, .external_lex_state = 2}, + [635] = {.lex_state = 79, .external_lex_state = 2}, + [636] = {.lex_state = 79, .external_lex_state = 2}, + [637] = {.lex_state = 79, .external_lex_state = 2}, + [638] = {.lex_state = 79, .external_lex_state = 2}, + [639] = {.lex_state = 79, .external_lex_state = 2}, + [640] = {.lex_state = 79, .external_lex_state = 2}, + [641] = {.lex_state = 79, .external_lex_state = 2}, + [642] = {.lex_state = 79, .external_lex_state = 2}, + [643] = {.lex_state = 79, .external_lex_state = 2}, + [644] = {.lex_state = 79, .external_lex_state = 2}, + [645] = {.lex_state = 79, .external_lex_state = 2}, + [646] = {.lex_state = 79, .external_lex_state = 2}, + [647] = {.lex_state = 79, .external_lex_state = 2}, + [648] = {.lex_state = 79, .external_lex_state = 2}, + [649] = {.lex_state = 79, .external_lex_state = 2}, + [650] = {.lex_state = 79, .external_lex_state = 2}, + [651] = {.lex_state = 79, .external_lex_state = 2}, + [652] = {.lex_state = 79, .external_lex_state = 2}, + [653] = {.lex_state = 79, .external_lex_state = 2}, + [654] = {.lex_state = 0}, + [655] = {.lex_state = 0}, + [656] = {.lex_state = 5}, + [657] = {.lex_state = 5}, + [658] = {.lex_state = 5}, + [659] = {.lex_state = 0}, + [660] = {.lex_state = 0}, + [661] = {.lex_state = 5}, + [662] = {.lex_state = 5}, + [663] = {.lex_state = 5}, + [664] = {.lex_state = 5}, + [665] = {.lex_state = 5}, + [666] = {.lex_state = 5}, + [667] = {.lex_state = 5}, + [668] = {.lex_state = 5}, + [669] = {.lex_state = 5}, + [670] = {.lex_state = 0}, + [671] = {.lex_state = 5}, + [672] = {.lex_state = 5}, + [673] = {.lex_state = 5}, + [674] = {.lex_state = 0}, + [675] = {.lex_state = 5}, + [676] = {.lex_state = 5}, + [677] = {.lex_state = 0}, + [678] = {.lex_state = 0}, + [679] = {.lex_state = 0}, + [680] = {.lex_state = 0}, + [681] = {.lex_state = 5}, + [682] = {.lex_state = 5}, + [683] = {.lex_state = 0}, + [684] = {.lex_state = 5}, + [685] = {.lex_state = 0}, + [686] = {.lex_state = 0}, + [687] = {.lex_state = 5}, + [688] = {.lex_state = 0}, + [689] = {.lex_state = 0}, + [690] = {.lex_state = 0}, + [691] = {.lex_state = 5}, + [692] = {.lex_state = 5}, + [693] = {.lex_state = 5}, + [694] = {.lex_state = 0}, + [695] = {.lex_state = 0}, + [696] = {.lex_state = 0}, + [697] = {.lex_state = 0}, + [698] = {.lex_state = 5}, + [699] = {.lex_state = 5}, + [700] = {.lex_state = 0}, + [701] = {.lex_state = 0}, + [702] = {.lex_state = 0}, + [703] = {.lex_state = 0}, + [704] = {.lex_state = 5}, + [705] = {.lex_state = 5}, + [706] = {.lex_state = 5}, + [707] = {.lex_state = 0}, + [708] = {.lex_state = 0}, + [709] = {.lex_state = 0}, + [710] = {.lex_state = 0}, + [711] = {.lex_state = 5}, + [712] = {.lex_state = 0}, + [713] = {.lex_state = 0}, + [714] = {.lex_state = 0}, + [715] = {.lex_state = 0}, + [716] = {.lex_state = 0}, + [717] = {.lex_state = 0}, + [718] = {.lex_state = 0}, + [719] = {.lex_state = 0}, + [720] = {.lex_state = 0}, + [721] = {.lex_state = 0}, + [722] = {.lex_state = 0}, + [723] = {.lex_state = 5}, + [724] = {.lex_state = 0}, + [725] = {.lex_state = 0}, + [726] = {.lex_state = 0}, + [727] = {.lex_state = 0}, + [728] = {.lex_state = 5}, + [729] = {.lex_state = 0}, + [730] = {.lex_state = 5}, + [731] = {.lex_state = 5}, + [732] = {.lex_state = 5}, + [733] = {.lex_state = 5}, + [734] = {.lex_state = 0}, + [735] = {.lex_state = 0}, + [736] = {.lex_state = 0}, + [737] = {.lex_state = 0}, + [738] = {.lex_state = 0}, + [739] = {.lex_state = 0}, + [740] = {.lex_state = 5}, + [741] = {.lex_state = 5}, + [742] = {.lex_state = 5}, + [743] = {.lex_state = 0}, + [744] = {.lex_state = 5}, + [745] = {.lex_state = 5}, + [746] = {.lex_state = 5}, + [747] = {.lex_state = 0}, + [748] = {.lex_state = 0}, + [749] = {.lex_state = 5}, + [750] = {.lex_state = 5}, + [751] = {.lex_state = 5}, + [752] = {.lex_state = 5}, + [753] = {.lex_state = 5}, + [754] = {.lex_state = 5}, + [755] = {.lex_state = 5}, + [756] = {.lex_state = 5}, + [757] = {.lex_state = 5}, + [758] = {.lex_state = 5}, + [759] = {.lex_state = 5}, + [760] = {.lex_state = 5}, + [761] = {.lex_state = 5}, + [762] = {.lex_state = 5}, + [763] = {.lex_state = 5}, + [764] = {.lex_state = 5}, + [765] = {.lex_state = 5}, + [766] = {.lex_state = 5}, + [767] = {.lex_state = 5}, + [768] = {.lex_state = 5}, + [769] = {.lex_state = 5}, + [770] = {.lex_state = 5}, + [771] = {.lex_state = 5}, + [772] = {.lex_state = 5}, + [773] = {.lex_state = 5}, + [774] = {.lex_state = 5}, + [775] = {.lex_state = 5}, + [776] = {.lex_state = 5}, + [777] = {.lex_state = 5}, + [778] = {.lex_state = 5}, + [779] = {.lex_state = 0}, + [780] = {.lex_state = 0}, + [781] = {.lex_state = 0}, + [782] = {.lex_state = 0}, + [783] = {.lex_state = 0}, + [784] = {.lex_state = 0}, + [785] = {.lex_state = 0}, + [786] = {.lex_state = 0}, + [787] = {.lex_state = 0}, + [788] = {.lex_state = 0}, + [789] = {.lex_state = 0}, + [790] = {.lex_state = 0}, + [791] = {.lex_state = 0}, + [792] = {.lex_state = 0}, + [793] = {.lex_state = 0}, + [794] = {.lex_state = 0}, + [795] = {.lex_state = 0}, + [796] = {.lex_state = 0}, + [797] = {.lex_state = 79}, + [798] = {.lex_state = 79}, + [799] = {.lex_state = 79}, + [800] = {.lex_state = 79}, + [801] = {.lex_state = 79}, + [802] = {.lex_state = 79}, + [803] = {.lex_state = 79}, + [804] = {.lex_state = 79}, + [805] = {.lex_state = 79}, + [806] = {.lex_state = 0}, + [807] = {.lex_state = 79}, + [808] = {.lex_state = 79}, + [809] = {.lex_state = 79}, + [810] = {.lex_state = 0}, + [811] = {.lex_state = 0}, + [812] = {.lex_state = 79}, + [813] = {.lex_state = 79}, + [814] = {.lex_state = 79}, + [815] = {.lex_state = 79}, + [816] = {.lex_state = 79}, + [817] = {.lex_state = 79}, + [818] = {.lex_state = 79}, + [819] = {.lex_state = 79}, + [820] = {.lex_state = 79}, + [821] = {.lex_state = 79}, + [822] = {.lex_state = 79}, + [823] = {.lex_state = 79}, + [824] = {.lex_state = 79}, + [825] = {.lex_state = 79}, + [826] = {.lex_state = 79}, + [827] = {.lex_state = 79}, + [828] = {.lex_state = 79}, + [829] = {.lex_state = 79}, + [830] = {.lex_state = 79}, + [831] = {.lex_state = 79}, + [832] = {.lex_state = 79}, + [833] = {.lex_state = 79}, + [834] = {.lex_state = 79}, + [835] = {.lex_state = 79}, + [836] = {.lex_state = 79}, + [837] = {.lex_state = 79}, + [838] = {.lex_state = 79}, + [839] = {.lex_state = 79}, + [840] = {.lex_state = 79}, + [841] = {.lex_state = 79}, + [842] = {.lex_state = 79}, + [843] = {.lex_state = 79}, + [844] = {.lex_state = 79}, + [845] = {.lex_state = 79}, + [846] = {.lex_state = 79}, + [847] = {.lex_state = 79}, + [848] = {.lex_state = 79}, + [849] = {.lex_state = 79}, + [850] = {.lex_state = 79}, + [851] = {.lex_state = 79}, + [852] = {.lex_state = 79}, + [853] = {.lex_state = 79}, + [854] = {.lex_state = 79}, + [855] = {.lex_state = 79}, + [856] = {.lex_state = 79}, + [857] = {.lex_state = 79}, + [858] = {.lex_state = 79}, + [859] = {.lex_state = 79}, + [860] = {.lex_state = 79}, + [861] = {.lex_state = 79}, + [862] = {.lex_state = 79}, + [863] = {.lex_state = 79}, + [864] = {.lex_state = 1}, + [865] = {.lex_state = 1}, + [866] = {.lex_state = 6}, + [867] = {.lex_state = 1}, + [868] = {.lex_state = 6}, + [869] = {.lex_state = 6}, + [870] = {.lex_state = 6}, + [871] = {.lex_state = 6}, + [872] = {.lex_state = 6}, + [873] = {.lex_state = 1}, + [874] = {.lex_state = 1}, + [875] = {.lex_state = 6}, + [876] = {.lex_state = 6}, + [877] = {.lex_state = 1}, + [878] = {.lex_state = 6}, + [879] = {.lex_state = 1}, + [880] = {.lex_state = 1}, + [881] = {.lex_state = 1}, + [882] = {.lex_state = 1}, + [883] = {.lex_state = 1}, + [884] = {.lex_state = 6}, + [885] = {.lex_state = 1}, + [886] = {.lex_state = 1}, + [887] = {.lex_state = 6}, + [888] = {.lex_state = 6}, + [889] = {.lex_state = 1}, + [890] = {.lex_state = 1}, + [891] = {.lex_state = 1}, + [892] = {.lex_state = 6}, + [893] = {.lex_state = 1}, + [894] = {.lex_state = 1}, + [895] = {.lex_state = 6}, + [896] = {.lex_state = 1}, + [897] = {.lex_state = 1}, + [898] = {.lex_state = 1}, + [899] = {.lex_state = 1}, + [900] = {.lex_state = 1}, + [901] = {.lex_state = 1}, + [902] = {.lex_state = 1}, + [903] = {.lex_state = 1}, + [904] = {.lex_state = 1}, + [905] = {.lex_state = 6}, + [906] = {.lex_state = 6}, + [907] = {.lex_state = 1}, + [908] = {.lex_state = 1}, + [909] = {.lex_state = 1}, + [910] = {.lex_state = 1}, + [911] = {.lex_state = 1}, + [912] = {.lex_state = 1}, + [913] = {.lex_state = 6}, + [914] = {.lex_state = 6}, + [915] = {.lex_state = 1}, + [916] = {.lex_state = 6}, + [917] = {.lex_state = 6}, + [918] = {.lex_state = 1}, + [919] = {.lex_state = 6}, + [920] = {.lex_state = 1}, + [921] = {.lex_state = 1}, + [922] = {.lex_state = 6}, + [923] = {.lex_state = 1}, + [924] = {.lex_state = 6}, + [925] = {.lex_state = 1}, + [926] = {.lex_state = 1}, + [927] = {.lex_state = 1}, + [928] = {.lex_state = 1}, + [929] = {.lex_state = 1}, + [930] = {.lex_state = 6}, + [931] = {.lex_state = 6}, + [932] = {.lex_state = 1}, + [933] = {.lex_state = 1}, + [934] = {.lex_state = 1}, + [935] = {.lex_state = 6}, + [936] = {.lex_state = 6}, + [937] = {.lex_state = 1}, + [938] = {.lex_state = 1}, + [939] = {.lex_state = 6}, + [940] = {.lex_state = 1}, + [941] = {.lex_state = 79}, + [942] = {.lex_state = 6}, + [943] = {.lex_state = 1}, + [944] = {.lex_state = 1}, + [945] = {.lex_state = 6}, + [946] = {.lex_state = 1}, + [947] = {.lex_state = 1}, + [948] = {.lex_state = 79}, + [949] = {.lex_state = 6}, + [950] = {.lex_state = 6}, + [951] = {.lex_state = 6}, + [952] = {.lex_state = 6}, + [953] = {.lex_state = 6}, + [954] = {.lex_state = 6}, + [955] = {.lex_state = 6}, + [956] = {.lex_state = 6}, + [957] = {.lex_state = 6}, + [958] = {.lex_state = 6}, + [959] = {.lex_state = 0}, + [960] = {.lex_state = 0}, + [961] = {.lex_state = 0}, + [962] = {.lex_state = 0}, + [963] = {.lex_state = 0}, + [964] = {.lex_state = 0}, + [965] = {.lex_state = 0}, + [966] = {.lex_state = 6}, + [967] = {.lex_state = 0}, + [968] = {.lex_state = 0}, + [969] = {.lex_state = 0}, + [970] = {.lex_state = 0}, + [971] = {.lex_state = 0}, + [972] = {.lex_state = 0}, + [973] = {.lex_state = 0}, + [974] = {.lex_state = 0}, + [975] = {.lex_state = 0}, + [976] = {.lex_state = 0}, + [977] = {.lex_state = 0}, + [978] = {.lex_state = 0}, + [979] = {.lex_state = 0}, + [980] = {.lex_state = 0}, + [981] = {.lex_state = 0}, + [982] = {.lex_state = 0}, + [983] = {.lex_state = 6}, + [984] = {.lex_state = 0}, + [985] = {.lex_state = 0}, + [986] = {.lex_state = 6}, + [987] = {.lex_state = 0}, + [988] = {.lex_state = 0}, + [989] = {.lex_state = 0}, + [990] = {.lex_state = 0}, + [991] = {.lex_state = 0}, + [992] = {.lex_state = 0}, + [993] = {.lex_state = 0}, + [994] = {.lex_state = 0}, + [995] = {.lex_state = 0}, + [996] = {.lex_state = 0}, + [997] = {.lex_state = 0}, + [998] = {.lex_state = 0}, + [999] = {.lex_state = 0}, + [1000] = {.lex_state = 0}, + [1001] = {.lex_state = 0}, + [1002] = {.lex_state = 0}, + [1003] = {.lex_state = 0}, + [1004] = {.lex_state = 0}, + [1005] = {.lex_state = 0}, + [1006] = {.lex_state = 0}, + [1007] = {.lex_state = 0}, + [1008] = {.lex_state = 6}, + [1009] = {.lex_state = 0}, + [1010] = {.lex_state = 0}, + [1011] = {.lex_state = 0}, + [1012] = {.lex_state = 0}, + [1013] = {.lex_state = 6}, + [1014] = {.lex_state = 0}, + [1015] = {.lex_state = 0}, + [1016] = {.lex_state = 0}, + [1017] = {.lex_state = 0}, + [1018] = {.lex_state = 0}, + [1019] = {.lex_state = 0}, + [1020] = {.lex_state = 0}, + [1021] = {.lex_state = 6}, + [1022] = {.lex_state = 6}, + [1023] = {.lex_state = 0}, + [1024] = {.lex_state = 0}, + [1025] = {.lex_state = 0}, + [1026] = {.lex_state = 0}, + [1027] = {.lex_state = 0}, + [1028] = {.lex_state = 0}, + [1029] = {.lex_state = 0}, + [1030] = {.lex_state = 0}, + [1031] = {.lex_state = 0}, + [1032] = {.lex_state = 0}, + [1033] = {.lex_state = 0}, + [1034] = {.lex_state = 0}, + [1035] = {.lex_state = 0}, + [1036] = {.lex_state = 0}, + [1037] = {.lex_state = 0}, + [1038] = {.lex_state = 79}, + [1039] = {.lex_state = 79, .external_lex_state = 2}, + [1040] = {.lex_state = 79, .external_lex_state = 2}, + [1041] = {.lex_state = 79, .external_lex_state = 2}, + [1042] = {.lex_state = 79, .external_lex_state = 2}, + [1043] = {.lex_state = 79, .external_lex_state = 2}, + [1044] = {.lex_state = 79, .external_lex_state = 2}, + [1045] = {.lex_state = 79}, + [1046] = {.lex_state = 79}, + [1047] = {.lex_state = 79}, + [1048] = {.lex_state = 79}, + [1049] = {.lex_state = 79}, + [1050] = {.lex_state = 79, .external_lex_state = 2}, + [1051] = {.lex_state = 79, .external_lex_state = 2}, + [1052] = {.lex_state = 79, .external_lex_state = 2}, + [1053] = {.lex_state = 79, .external_lex_state = 2}, + [1054] = {.lex_state = 79}, + [1055] = {.lex_state = 79}, + [1056] = {.lex_state = 79, .external_lex_state = 2}, + [1057] = {.lex_state = 79, .external_lex_state = 2}, + [1058] = {.lex_state = 79}, + [1059] = {.lex_state = 79}, + [1060] = {.lex_state = 79, .external_lex_state = 2}, + [1061] = {.lex_state = 79, .external_lex_state = 2}, + [1062] = {.lex_state = 79, .external_lex_state = 2}, + [1063] = {.lex_state = 79, .external_lex_state = 2}, + [1064] = {.lex_state = 79}, + [1065] = {.lex_state = 79, .external_lex_state = 2}, + [1066] = {.lex_state = 79, .external_lex_state = 2}, + [1067] = {.lex_state = 79}, + [1068] = {.lex_state = 79}, + [1069] = {.lex_state = 79}, + [1070] = {.lex_state = 79, .external_lex_state = 2}, + [1071] = {.lex_state = 79}, + [1072] = {.lex_state = 79}, + [1073] = {.lex_state = 79}, + [1074] = {.lex_state = 79, .external_lex_state = 2}, + [1075] = {.lex_state = 79, .external_lex_state = 2}, + [1076] = {.lex_state = 79}, + [1077] = {.lex_state = 79}, + [1078] = {.lex_state = 79}, + [1079] = {.lex_state = 4}, + [1080] = {.lex_state = 0}, + [1081] = {.lex_state = 0}, + [1082] = {.lex_state = 4}, + [1083] = {.lex_state = 4}, + [1084] = {.lex_state = 4}, + [1085] = {.lex_state = 4}, + [1086] = {.lex_state = 79}, + [1087] = {.lex_state = 79}, + [1088] = {.lex_state = 79}, + [1089] = {.lex_state = 79}, + [1090] = {.lex_state = 4}, + [1091] = {.lex_state = 79}, + [1092] = {.lex_state = 79}, + [1093] = {.lex_state = 79}, + [1094] = {.lex_state = 79}, + [1095] = {.lex_state = 0}, + [1096] = {.lex_state = 0}, + [1097] = {.lex_state = 0}, + [1098] = {.lex_state = 6}, + [1099] = {.lex_state = 6}, + [1100] = {.lex_state = 79}, + [1101] = {.lex_state = 6}, + [1102] = {.lex_state = 6}, + [1103] = {.lex_state = 6}, + [1104] = {.lex_state = 6}, + [1105] = {.lex_state = 6}, + [1106] = {.lex_state = 6}, + [1107] = {.lex_state = 6}, + [1108] = {.lex_state = 6}, + [1109] = {.lex_state = 6}, + [1110] = {.lex_state = 6}, + [1111] = {.lex_state = 6}, + [1112] = {.lex_state = 6}, + [1113] = {.lex_state = 6}, + [1114] = {.lex_state = 6}, + [1115] = {.lex_state = 6}, + [1116] = {.lex_state = 79}, + [1117] = {.lex_state = 6}, + [1118] = {.lex_state = 6}, + [1119] = {.lex_state = 6}, + [1120] = {.lex_state = 4}, + [1121] = {.lex_state = 6}, + [1122] = {.lex_state = 6}, + [1123] = {.lex_state = 6}, + [1124] = {.lex_state = 6}, + [1125] = {.lex_state = 6}, + [1126] = {.lex_state = 6}, + [1127] = {.lex_state = 6}, + [1128] = {.lex_state = 6}, + [1129] = {.lex_state = 6}, + [1130] = {.lex_state = 0}, + [1131] = {.lex_state = 0}, + [1132] = {.lex_state = 0}, + [1133] = {.lex_state = 0}, + [1134] = {.lex_state = 6}, + [1135] = {.lex_state = 0}, + [1136] = {.lex_state = 0}, + [1137] = {.lex_state = 0}, + [1138] = {.lex_state = 6}, + [1139] = {.lex_state = 0}, + [1140] = {.lex_state = 0}, + [1141] = {.lex_state = 0}, + [1142] = {.lex_state = 0}, + [1143] = {.lex_state = 0}, + [1144] = {.lex_state = 0}, + [1145] = {.lex_state = 0}, + [1146] = {.lex_state = 0}, + [1147] = {.lex_state = 0}, + [1148] = {.lex_state = 0}, + [1149] = {.lex_state = 0}, + [1150] = {.lex_state = 0}, + [1151] = {.lex_state = 0}, + [1152] = {.lex_state = 6}, + [1153] = {.lex_state = 0}, + [1154] = {.lex_state = 79}, + [1155] = {.lex_state = 0}, + [1156] = {.lex_state = 0}, + [1157] = {.lex_state = 0}, + [1158] = {.lex_state = 0}, + [1159] = {.lex_state = 79}, + [1160] = {.lex_state = 0}, + [1161] = {.lex_state = 0}, + [1162] = {.lex_state = 0}, + [1163] = {.lex_state = 0}, + [1164] = {.lex_state = 0}, + [1165] = {.lex_state = 0}, + [1166] = {.lex_state = 6}, + [1167] = {.lex_state = 79}, + [1168] = {.lex_state = 0}, + [1169] = {.lex_state = 79}, + [1170] = {.lex_state = 0}, + [1171] = {.lex_state = 0}, + [1172] = {.lex_state = 79}, + [1173] = {.lex_state = 0}, + [1174] = {.lex_state = 0}, + [1175] = {.lex_state = 0}, + [1176] = {.lex_state = 79}, + [1177] = {.lex_state = 0}, + [1178] = {.lex_state = 79}, + [1179] = {.lex_state = 2}, + [1180] = {.lex_state = 6}, + [1181] = {.lex_state = 0}, + [1182] = {.lex_state = 44}, + [1183] = {.lex_state = 3}, + [1184] = {.lex_state = 2}, + [1185] = {.lex_state = 44}, + [1186] = {.lex_state = 0}, + [1187] = {.lex_state = 44}, + [1188] = {.lex_state = 44}, + [1189] = {.lex_state = 2}, + [1190] = {.lex_state = 2}, + [1191] = {.lex_state = 0}, + [1192] = {.lex_state = 0}, + [1193] = {.lex_state = 44}, + [1194] = {.lex_state = 44}, + [1195] = {.lex_state = 0}, + [1196] = {.lex_state = 44}, + [1197] = {.lex_state = 44}, + [1198] = {.lex_state = 6}, + [1199] = {.lex_state = 6}, + [1200] = {.lex_state = 0}, + [1201] = {.lex_state = 0}, + [1202] = {.lex_state = 0}, + [1203] = {.lex_state = 0}, + [1204] = {.lex_state = 0}, + [1205] = {.lex_state = 0}, + [1206] = {.lex_state = 6}, + [1207] = {.lex_state = 6}, + [1208] = {.lex_state = 0}, + [1209] = {.lex_state = 44}, + [1210] = {.lex_state = 0}, + [1211] = {.lex_state = 6}, + [1212] = {.lex_state = 0}, + [1213] = {.lex_state = 44}, + [1214] = {.lex_state = 79}, + [1215] = {.lex_state = 79}, + [1216] = {.lex_state = 0}, + [1217] = {.lex_state = 79}, + [1218] = {.lex_state = 6}, + [1219] = {.lex_state = 2}, + [1220] = {.lex_state = 6}, + [1221] = {.lex_state = 0}, + [1222] = {.lex_state = 0}, + [1223] = {.lex_state = 0}, + [1224] = {.lex_state = 44}, + [1225] = {.lex_state = 44}, + [1226] = {.lex_state = 6}, + [1227] = {.lex_state = 3}, + [1228] = {.lex_state = 0}, + [1229] = {.lex_state = 0}, + [1230] = {.lex_state = 6}, + [1231] = {.lex_state = 2}, + [1232] = {.lex_state = 44}, + [1233] = {.lex_state = 44}, + [1234] = {.lex_state = 2}, + [1235] = {.lex_state = 44}, + [1236] = {.lex_state = 79}, + [1237] = {.lex_state = 79}, + [1238] = {.lex_state = 0}, + [1239] = {.lex_state = 2}, + [1240] = {.lex_state = 44}, + [1241] = {.lex_state = 79}, + [1242] = {.lex_state = 3}, + [1243] = {.lex_state = 6}, + [1244] = {.lex_state = 79}, + [1245] = {.lex_state = 0}, + [1246] = {.lex_state = 79}, + [1247] = {.lex_state = 0}, + [1248] = {.lex_state = 0}, + [1249] = {.lex_state = 79, .external_lex_state = 3}, + [1250] = {.lex_state = 6}, + [1251] = {.lex_state = 0}, + [1252] = {.lex_state = 0}, + [1253] = {.lex_state = 2}, + [1254] = {.lex_state = 3}, + [1255] = {.lex_state = 0}, + [1256] = {.lex_state = 0}, + [1257] = {.lex_state = 0}, + [1258] = {.lex_state = 0}, + [1259] = {.lex_state = 0}, + [1260] = {.lex_state = 0}, + [1261] = {.lex_state = 0}, + [1262] = {.lex_state = 0}, + [1263] = {.lex_state = 0}, + [1264] = {.lex_state = 3}, + [1265] = {.lex_state = 0}, + [1266] = {.lex_state = 0}, + [1267] = {.lex_state = 79, .external_lex_state = 3}, + [1268] = {.lex_state = 0}, + [1269] = {.lex_state = 79, .external_lex_state = 3}, + [1270] = {.lex_state = 3}, + [1271] = {.lex_state = 2}, + [1272] = {.lex_state = 0}, + [1273] = {.lex_state = 44}, + [1274] = {.lex_state = 0}, + [1275] = {.lex_state = 0}, + [1276] = {.lex_state = 0}, + [1277] = {.lex_state = 0}, + [1278] = {.lex_state = 0}, + [1279] = {.lex_state = 0}, + [1280] = {.lex_state = 0}, + [1281] = {.lex_state = 3}, + [1282] = {.lex_state = 0}, + [1283] = {.lex_state = 0}, + [1284] = {.lex_state = 0}, + [1285] = {.lex_state = 0}, + [1286] = {.lex_state = 0}, + [1287] = {.lex_state = 44}, + [1288] = {.lex_state = 0}, + [1289] = {.lex_state = 0}, + [1290] = {.lex_state = 0}, + [1291] = {.lex_state = 0}, + [1292] = {.lex_state = 0}, + [1293] = {.lex_state = 0}, + [1294] = {.lex_state = 0}, + [1295] = {.lex_state = 0}, + [1296] = {.lex_state = 0}, + [1297] = {.lex_state = 0}, + [1298] = {.lex_state = 0}, + [1299] = {.lex_state = 0}, + [1300] = {.lex_state = 79}, + [1301] = {.lex_state = 3}, + [1302] = {.lex_state = 3}, + [1303] = {.lex_state = 44}, + [1304] = {.lex_state = 0}, + [1305] = {.lex_state = 0}, + [1306] = {.lex_state = 2}, + [1307] = {.lex_state = 0}, + [1308] = {.lex_state = 0}, + [1309] = {.lex_state = 0}, + [1310] = {.lex_state = 0}, + [1311] = {.lex_state = 1}, + [1312] = {.lex_state = 2}, + [1313] = {.lex_state = 2}, + [1314] = {.lex_state = 2}, + [1315] = {.lex_state = 79}, + [1316] = {.lex_state = 0}, + [1317] = {.lex_state = 0}, + [1318] = {.lex_state = 0}, + [1319] = {.lex_state = 0}, + [1320] = {.lex_state = 0}, + [1321] = {.lex_state = 0}, + [1322] = {.lex_state = 0}, + [1323] = {.lex_state = 2}, + [1324] = {.lex_state = 0}, + [1325] = {.lex_state = 0}, + [1326] = {.lex_state = 0}, + [1327] = {.lex_state = 44}, + [1328] = {.lex_state = 79, .external_lex_state = 3}, + [1329] = {.lex_state = 2}, + [1330] = {.lex_state = 0}, + [1331] = {.lex_state = 0}, + [1332] = {.lex_state = 79}, + [1333] = {.lex_state = 0}, + [1334] = {.lex_state = 79}, + [1335] = {.lex_state = 0}, + [1336] = {.lex_state = 2}, + [1337] = {.lex_state = 0}, + [1338] = {.lex_state = 0}, + [1339] = {.lex_state = 0}, + [1340] = {.lex_state = 2}, + [1341] = {.lex_state = 2}, + [1342] = {.lex_state = 2}, + [1343] = {.lex_state = 2}, + [1344] = {.lex_state = 0}, + [1345] = {.lex_state = 2}, + [1346] = {.lex_state = 2}, + [1347] = {.lex_state = 0}, + [1348] = {.lex_state = 0}, + [1349] = {.lex_state = 0}, + [1350] = {.lex_state = 2}, + [1351] = {.lex_state = 0}, + [1352] = {.lex_state = 0}, + [1353] = {.lex_state = 0}, + [1354] = {.lex_state = 0}, + [1355] = {.lex_state = 0}, + [1356] = {.lex_state = 0}, + [1357] = {.lex_state = 0}, + [1358] = {.lex_state = 0}, + [1359] = {.lex_state = 0}, + [1360] = {.lex_state = 0}, + [1361] = {.lex_state = 0}, + [1362] = {.lex_state = 0}, + [1363] = {.lex_state = 0}, + [1364] = {.lex_state = 0}, + [1365] = {.lex_state = 0}, + [1366] = {.lex_state = 0}, + [1367] = {.lex_state = 0}, + [1368] = {.lex_state = 0}, + [1369] = {.lex_state = 0}, + [1370] = {.lex_state = 0}, + [1371] = {.lex_state = 79}, + [1372] = {.lex_state = 0}, + [1373] = {.lex_state = 0}, + [1374] = {.lex_state = 0}, + [1375] = {.lex_state = 0}, + [1376] = {.lex_state = 0}, + [1377] = {.lex_state = 0}, + [1378] = {.lex_state = 6}, + [1379] = {.lex_state = 0}, + [1380] = {.lex_state = 79}, + [1381] = {.lex_state = 0}, + [1382] = {.lex_state = 0}, + [1383] = {.lex_state = 0}, + [1384] = {.lex_state = 0}, + [1385] = {.lex_state = 0}, + [1386] = {.lex_state = 0}, + [1387] = {.lex_state = 0}, + [1388] = {.lex_state = 0}, + [1389] = {.lex_state = 0}, + [1390] = {.lex_state = 0}, + [1391] = {.lex_state = 0}, + [1392] = {.lex_state = 0}, + [1393] = {.lex_state = 0}, + [1394] = {.lex_state = 0}, + [1395] = {.lex_state = 0}, + [1396] = {.lex_state = 0}, + [1397] = {.lex_state = 0}, + [1398] = {.lex_state = 0}, + [1399] = {.lex_state = 0}, + [1400] = {.lex_state = 0}, + [1401] = {.lex_state = 0}, + [1402] = {.lex_state = 0}, + [1403] = {.lex_state = 0}, + [1404] = {.lex_state = 0}, + [1405] = {.lex_state = 0}, + [1406] = {.lex_state = 0}, + [1407] = {.lex_state = 44}, + [1408] = {.lex_state = 0}, + [1409] = {.lex_state = 0}, + [1410] = {.lex_state = 0}, + [1411] = {.lex_state = 0}, + [1412] = {.lex_state = 0}, + [1413] = {.lex_state = 0}, + [1414] = {.lex_state = 0}, + [1415] = {.lex_state = 0}, + [1416] = {.lex_state = 0}, + [1417] = {.lex_state = 0}, + [1418] = {.lex_state = 0}, + [1419] = {.lex_state = 0}, + [1420] = {.lex_state = 0}, + [1421] = {.lex_state = 0}, + [1422] = {.lex_state = 0}, + [1423] = {.lex_state = 0}, + [1424] = {.lex_state = 3}, + [1425] = {.lex_state = 79}, + [1426] = {.lex_state = 44}, + [1427] = {.lex_state = 0}, + [1428] = {.lex_state = 0}, + [1429] = {.lex_state = 79}, + [1430] = {.lex_state = 44}, + [1431] = {.lex_state = 0}, + [1432] = {.lex_state = 0}, + [1433] = {.lex_state = 79}, + [1434] = {.lex_state = 0}, + [1435] = {.lex_state = 0}, + [1436] = {.lex_state = 0}, + [1437] = {.lex_state = 0}, + [1438] = {.lex_state = 0}, + [1439] = {.lex_state = 0}, + [1440] = {.lex_state = 0}, + [1441] = {.lex_state = 0}, + [1442] = {.lex_state = 0}, + [1443] = {.lex_state = 0}, + [1444] = {.lex_state = 0}, + [1445] = {.lex_state = 0}, + [1446] = {.lex_state = 0}, + [1447] = {.lex_state = 0}, + [1448] = {.lex_state = 0}, + [1449] = {.lex_state = 0}, + [1450] = {.lex_state = 0}, + [1451] = {.lex_state = 0}, + [1452] = {.lex_state = 0}, + [1453] = {.lex_state = 0}, + [1454] = {.lex_state = 6}, + [1455] = {.lex_state = 0}, + [1456] = {.lex_state = 0}, + [1457] = {.lex_state = 0}, + [1458] = {.lex_state = 0}, + [1459] = {.lex_state = 0}, + [1460] = {.lex_state = 0}, + [1461] = {.lex_state = 0}, + [1462] = {.lex_state = 6}, + [1463] = {.lex_state = 0}, + [1464] = {.lex_state = 0}, + [1465] = {.lex_state = 0}, + [1466] = {.lex_state = 0}, + [1467] = {.lex_state = 6}, + [1468] = {.lex_state = 0}, + [1469] = {.lex_state = 2}, + [1470] = {.lex_state = 0}, + [1471] = {.lex_state = 2}, + [1472] = {.lex_state = 44}, + [1473] = {.lex_state = 79, .external_lex_state = 3}, + [1474] = {.lex_state = 79}, + [1475] = {.lex_state = 2}, + [1476] = {.lex_state = 79}, + [1477] = {.lex_state = 0}, + [1478] = {.lex_state = 0}, + [1479] = {.lex_state = 79}, + [1480] = {.lex_state = 0}, + [1481] = {.lex_state = 0}, + [1482] = {.lex_state = 79}, + [1483] = {.lex_state = 79}, + [1484] = {.lex_state = 0}, + [1485] = {.lex_state = 0}, + [1486] = {.lex_state = 0}, + [1487] = {.lex_state = 79}, + [1488] = {.lex_state = 0}, + [1489] = {.lex_state = 0}, + [1490] = {.lex_state = 0}, + [1491] = {.lex_state = 0}, + [1492] = {.lex_state = 0}, + [1493] = {.lex_state = 0}, + [1494] = {.lex_state = 3}, + [1495] = {.lex_state = 6}, + [1496] = {.lex_state = 0}, + [1497] = {.lex_state = 0}, + [1498] = {.lex_state = 0}, + [1499] = {.lex_state = 0}, + [1500] = {.lex_state = 0}, + [1501] = {.lex_state = 44}, + [1502] = {.lex_state = 0}, + [1503] = {.lex_state = 44}, + [1504] = {.lex_state = 0}, + [1505] = {.lex_state = 0}, + [1506] = {.lex_state = 0}, + [1507] = {.lex_state = 0}, + [1508] = {.lex_state = 0}, + [1509] = {.lex_state = 0}, + [1510] = {.lex_state = 0}, + [1511] = {.lex_state = 0}, + [1512] = {.lex_state = 0}, + [1513] = {.lex_state = 0}, + [1514] = {.lex_state = 0}, + [1515] = {.lex_state = 0}, + [1516] = {.lex_state = 0}, + [1517] = {.lex_state = 0}, + [1518] = {.lex_state = 0}, + [1519] = {.lex_state = 0}, + [1520] = {.lex_state = 0}, + [1521] = {.lex_state = 0}, + [1522] = {.lex_state = 0}, + [1523] = {.lex_state = 0}, + [1524] = {.lex_state = 3}, + [1525] = {.lex_state = 0}, + [1526] = {.lex_state = 0}, + [1527] = {.lex_state = 44}, + [1528] = {.lex_state = 0}, + [1529] = {.lex_state = 0}, + [1530] = {.lex_state = 6}, + [1531] = {.lex_state = 6}, + [1532] = {.lex_state = 0}, + [1533] = {.lex_state = 79}, + [1534] = {.lex_state = 79}, + [1535] = {.lex_state = 0}, + [1536] = {.lex_state = 0}, + [1537] = {.lex_state = 44}, + [1538] = {.lex_state = 79}, + [1539] = {.lex_state = 0}, + [1540] = {.lex_state = 2}, + [1541] = {.lex_state = 0}, + [1542] = {.lex_state = 0}, + [1543] = {.lex_state = 6}, + [1544] = {.lex_state = 79}, + [1545] = {.lex_state = 79}, + [1546] = {.lex_state = 0}, + [1547] = {.lex_state = 6}, + [1548] = {.lex_state = 0}, + [1549] = {.lex_state = 0}, + [1550] = {.lex_state = 3}, + [1551] = {.lex_state = 6}, + [1552] = {.lex_state = 79}, + [1553] = {.lex_state = 6}, + [1554] = {.lex_state = 79}, + [1555] = {.lex_state = 0}, + [1556] = {.lex_state = 0}, + [1557] = {.lex_state = 79, .external_lex_state = 3}, + [1558] = {.lex_state = 0}, + [1559] = {.lex_state = 44}, + [1560] = {.lex_state = 79}, + [1561] = {.lex_state = 2}, + [1562] = {.lex_state = 0}, + [1563] = {.lex_state = 0}, + [1564] = {.lex_state = 0}, + [1565] = {.lex_state = 0}, + [1566] = {.lex_state = 0}, + [1567] = {.lex_state = 0}, + [1568] = {.lex_state = 0}, + [1569] = {.lex_state = 0}, + [1570] = {.lex_state = 0}, + [1571] = {.lex_state = 0}, + [1572] = {.lex_state = 0}, + [1573] = {.lex_state = 79}, + [1574] = {.lex_state = 0}, + [1575] = {.lex_state = 79}, + [1576] = {.lex_state = 0}, + [1577] = {.lex_state = 0}, + [1578] = {.lex_state = 0}, + [1579] = {.lex_state = 79, .external_lex_state = 2}, + [1580] = {.lex_state = 0}, + [1581] = {.lex_state = 0}, + [1582] = {.lex_state = 0}, + [1583] = {.lex_state = 0}, + [1584] = {.lex_state = 0}, + [1585] = {.lex_state = 79}, + [1586] = {.lex_state = 0}, + [1587] = {.lex_state = 0}, + [1588] = {.lex_state = 0}, + [1589] = {.lex_state = 0}, + [1590] = {.lex_state = 0}, + [1591] = {.lex_state = 0}, + [1592] = {.lex_state = 0}, + [1593] = {.lex_state = 0}, + [1594] = {.lex_state = 0}, + [1595] = {.lex_state = 0}, + [1596] = {.lex_state = 0}, + [1597] = {.lex_state = 0}, + [1598] = {.lex_state = 0}, + [1599] = {.lex_state = 0}, + [1600] = {.lex_state = 0}, + [1601] = {.lex_state = 0}, + [1602] = {.lex_state = 0}, + [1603] = {.lex_state = 0}, + [1604] = {.lex_state = 0}, + [1605] = {.lex_state = 0}, + [1606] = {.lex_state = 0}, + [1607] = {.lex_state = 0}, + [1608] = {.lex_state = 0}, + [1609] = {.lex_state = 0}, + [1610] = {.lex_state = 0}, + [1611] = {.lex_state = 0}, + [1612] = {.lex_state = 0}, + [1613] = {.lex_state = 0}, + [1614] = {.lex_state = 0}, + [1615] = {.lex_state = 79}, + [1616] = {.lex_state = 0}, + [1617] = {.lex_state = 0}, + [1618] = {.lex_state = 0}, + [1619] = {.lex_state = 6}, + [1620] = {.lex_state = 0}, + [1621] = {.lex_state = 0}, + [1622] = {.lex_state = 0}, + [1623] = {.lex_state = 0}, + [1624] = {.lex_state = 0}, + [1625] = {.lex_state = 0}, + [1626] = {.lex_state = 0}, + [1627] = {.lex_state = 0}, + [1628] = {.lex_state = 0}, + [1629] = {.lex_state = 0}, + [1630] = {.lex_state = 0}, + [1631] = {.lex_state = 0}, + [1632] = {.lex_state = 6}, + [1633] = {.lex_state = 6}, + [1634] = {.lex_state = 0}, + [1635] = {.lex_state = 0}, + [1636] = {.lex_state = 0}, + [1637] = {.lex_state = 0}, + [1638] = {.lex_state = 0}, + [1639] = {.lex_state = 0}, + [1640] = {.lex_state = 0}, + [1641] = {.lex_state = 0}, + [1642] = {.lex_state = 0}, + [1643] = {.lex_state = 0}, + [1644] = {.lex_state = 0}, + [1645] = {.lex_state = 79}, + [1646] = {.lex_state = 6}, + [1647] = {.lex_state = 0}, + [1648] = {.lex_state = 0}, + [1649] = {.lex_state = 0}, + [1650] = {.lex_state = 6}, + [1651] = {.lex_state = 0}, + [1652] = {.lex_state = 0}, + [1653] = {.lex_state = 0}, + [1654] = {.lex_state = 0}, + [1655] = {.lex_state = 0}, + [1656] = {.lex_state = 0}, + [1657] = {.lex_state = 0}, + [1658] = {.lex_state = 79}, + [1659] = {.lex_state = 6}, + [1660] = {.lex_state = 0}, + [1661] = {.lex_state = 0}, + [1662] = {.lex_state = 0}, + [1663] = {.lex_state = 79, .external_lex_state = 2}, + [1664] = {.lex_state = 79}, + [1665] = {.lex_state = 0}, + [1666] = {.lex_state = 0}, + [1667] = {.lex_state = 0}, + [1668] = {.lex_state = 0}, + [1669] = {.lex_state = 0}, + [1670] = {.lex_state = 0}, + [1671] = {.lex_state = 0}, + [1672] = {.lex_state = 0}, + [1673] = {.lex_state = 0}, + [1674] = {.lex_state = 0}, + [1675] = {.lex_state = 0}, + [1676] = {.lex_state = 0}, + [1677] = {.lex_state = 0}, + [1678] = {.lex_state = 0}, + [1679] = {.lex_state = 0}, + [1680] = {.lex_state = 0}, + [1681] = {.lex_state = 0}, + [1682] = {.lex_state = 0}, + [1683] = {.lex_state = 0}, + [1684] = {.lex_state = 0}, + [1685] = {.lex_state = 0}, + [1686] = {.lex_state = 0}, + [1687] = {.lex_state = 0}, + [1688] = {.lex_state = 0}, + [1689] = {.lex_state = 0}, + [1690] = {.lex_state = 0}, + [1691] = {.lex_state = 0}, + [1692] = {.lex_state = 0}, + [1693] = {.lex_state = 0}, + [1694] = {.lex_state = 0}, + [1695] = {.lex_state = 0}, + [1696] = {.lex_state = 0}, + [1697] = {.lex_state = 0}, + [1698] = {.lex_state = 0}, + [1699] = {.lex_state = 0}, + [1700] = {.lex_state = 0}, + [1701] = {.lex_state = 0}, + [1702] = {.lex_state = 0}, + [1703] = {.lex_state = 0}, + [1704] = {.lex_state = 0}, + [1705] = {.lex_state = 0}, + [1706] = {.lex_state = 0}, + [1707] = {.lex_state = 0}, + [1708] = {.lex_state = 0}, + [1709] = {.lex_state = 0}, + [1710] = {.lex_state = 0}, + [1711] = {.lex_state = 0}, + [1712] = {.lex_state = 0}, + [1713] = {.lex_state = 0}, + [1714] = {.lex_state = 0}, + [1715] = {.lex_state = 0}, + [1716] = {.lex_state = 0}, + [1717] = {.lex_state = 0}, + [1718] = {.lex_state = 0}, + [1719] = {.lex_state = 0}, + [1720] = {.lex_state = 0}, + [1721] = {.lex_state = 0}, + [1722] = {.lex_state = 0}, + [1723] = {.lex_state = 0}, + [1724] = {.lex_state = 0}, + [1725] = {.lex_state = 0}, + [1726] = {.lex_state = 0}, + [1727] = {.lex_state = 6}, + [1728] = {.lex_state = 0}, + [1729] = {.lex_state = 0}, + [1730] = {.lex_state = 0}, + [1731] = {.lex_state = 0}, + [1732] = {.lex_state = 0}, + [1733] = {.lex_state = 0}, + [1734] = {.lex_state = 0}, + [1735] = {.lex_state = 0}, + [1736] = {.lex_state = 0}, + [1737] = {.lex_state = 0}, + [1738] = {.lex_state = 0}, + [1739] = {.lex_state = 0}, + [1740] = {.lex_state = 0}, + [1741] = {.lex_state = 0}, + [1742] = {.lex_state = 0}, + [1743] = {.lex_state = 0}, + [1744] = {.lex_state = 0}, + [1745] = {.lex_state = 0}, + [1746] = {.lex_state = 0}, + [1747] = {.lex_state = 0}, + [1748] = {.lex_state = 0}, + [1749] = {.lex_state = 6}, + [1750] = {.lex_state = 0}, + [1751] = {.lex_state = 0}, + [1752] = {.lex_state = 0}, + [1753] = {.lex_state = 0}, + [1754] = {.lex_state = 0}, + [1755] = {.lex_state = 0}, + [1756] = {.lex_state = 0}, + [1757] = {.lex_state = 0}, + [1758] = {.lex_state = 0}, + [1759] = {.lex_state = 0}, + [1760] = {.lex_state = 0}, + [1761] = {.lex_state = 0}, + [1762] = {.lex_state = 0}, + [1763] = {.lex_state = 6}, + [1764] = {.lex_state = 0}, + [1765] = {.lex_state = 0}, + [1766] = {.lex_state = 0}, + [1767] = {.lex_state = 0}, + [1768] = {.lex_state = 0}, + [1769] = {.lex_state = 0}, + [1770] = {.lex_state = 0}, + [1771] = {.lex_state = 0}, + [1772] = {.lex_state = 0}, + [1773] = {.lex_state = 0}, + [1774] = {.lex_state = 0}, + [1775] = {.lex_state = 0}, + [1776] = {.lex_state = 0}, + [1777] = {.lex_state = 0}, + [1778] = {.lex_state = 6}, + [1779] = {.lex_state = 0}, + [1780] = {.lex_state = 0}, + [1781] = {.lex_state = 0}, + [1782] = {.lex_state = 0}, + [1783] = {.lex_state = 0}, + [1784] = {.lex_state = 0}, + [1785] = {.lex_state = 0}, + [1786] = {.lex_state = 0}, + [1787] = {.lex_state = 79}, + [1788] = {.lex_state = 0}, + [1789] = {.lex_state = 0}, + [1790] = {.lex_state = 0}, + [1791] = {.lex_state = 79}, + [1792] = {.lex_state = 0}, + [1793] = {.lex_state = 6}, + [1794] = {.lex_state = 0}, + [1795] = {.lex_state = 0}, + [1796] = {.lex_state = 0}, + [1797] = {.lex_state = 0}, + [1798] = {.lex_state = 0}, + [1799] = {.lex_state = 79}, + [1800] = {.lex_state = 0}, + [1801] = {.lex_state = 0}, + [1802] = {.lex_state = 0}, + [1803] = {.lex_state = 0}, + [1804] = {.lex_state = 0}, + [1805] = {.lex_state = 0}, + [1806] = {.lex_state = 0}, + [1807] = {.lex_state = 0}, + [1808] = {.lex_state = 0}, + [1809] = {.lex_state = 79}, + [1810] = {.lex_state = 0}, + [1811] = {.lex_state = 0}, + [1812] = {.lex_state = 0}, + [1813] = {.lex_state = 0}, + [1814] = {.lex_state = 0}, + [1815] = {.lex_state = 0}, + [1816] = {.lex_state = 0}, + [1817] = {.lex_state = 0}, + [1818] = {.lex_state = 0}, + [1819] = {.lex_state = 0}, + [1820] = {.lex_state = 0}, + [1821] = {.lex_state = 0}, + [1822] = {.lex_state = 0}, + [1823] = {.lex_state = 0}, + [1824] = {.lex_state = 0}, + [1825] = {.lex_state = 79}, + [1826] = {.lex_state = 0}, + [1827] = {.lex_state = 0}, + [1828] = {.lex_state = 0}, + [1829] = {.lex_state = 0}, + [1830] = {.lex_state = 0}, + [1831] = {.lex_state = 0}, + [1832] = {.lex_state = 0}, + [1833] = {.lex_state = 0}, + [1834] = {.lex_state = 0}, + [1835] = {.lex_state = 0}, + [1836] = {.lex_state = 0}, + [1837] = {.lex_state = 0}, + [1838] = {.lex_state = 0}, + [1839] = {.lex_state = 0}, + [1840] = {.lex_state = 0}, + [1841] = {.lex_state = 0}, + [1842] = {.lex_state = 0}, + [1843] = {.lex_state = 0}, + [1844] = {.lex_state = 0}, + [1845] = {.lex_state = 0}, + [1846] = {.lex_state = 0}, + [1847] = {.lex_state = 0}, + [1848] = {.lex_state = 0}, + [1849] = {.lex_state = 0}, + [1850] = {.lex_state = 0}, + [1851] = {.lex_state = 0}, + [1852] = {.lex_state = 0}, + [1853] = {.lex_state = 0}, + [1854] = {.lex_state = 0}, + [1855] = {.lex_state = 0}, + [1856] = {.lex_state = 0}, + [1857] = {.lex_state = 0}, + [1858] = {.lex_state = 0}, + [1859] = {.lex_state = 6}, + [1860] = {.lex_state = 0}, + [1861] = {.lex_state = 0}, + [1862] = {.lex_state = 0}, + [1863] = {.lex_state = 0}, + [1864] = {.lex_state = 0}, + [1865] = {.lex_state = 0}, + [1866] = {.lex_state = 0}, + [1867] = {.lex_state = 0}, + [1868] = {.lex_state = 0}, + [1869] = {.lex_state = 0}, + [1870] = {.lex_state = 0}, + [1871] = {.lex_state = 0}, + [1872] = {.lex_state = 0}, + [1873] = {.lex_state = 0}, + [1874] = {.lex_state = 0}, + [1875] = {.lex_state = 0}, + [1876] = {.lex_state = 0}, + [1877] = {.lex_state = 0}, + [1878] = {.lex_state = 0}, + [1879] = {.lex_state = 0}, + [1880] = {.lex_state = 79}, + [1881] = {.lex_state = 0}, + [1882] = {.lex_state = 0}, + [1883] = {.lex_state = 0}, + [1884] = {.lex_state = 0}, + [1885] = {.lex_state = 0}, + [1886] = {.lex_state = 0}, + [1887] = {.lex_state = 0}, + [1888] = {.lex_state = 0}, + [1889] = {.lex_state = 0}, + [1890] = {.lex_state = 0}, + [1891] = {.lex_state = 0}, + [1892] = {.lex_state = 0}, + [1893] = {.lex_state = 0}, + [1894] = {.lex_state = 0}, + [1895] = {.lex_state = 0}, + [1896] = {.lex_state = 0}, + [1897] = {.lex_state = 0}, + [1898] = {.lex_state = 0}, + [1899] = {.lex_state = 0}, + [1900] = {.lex_state = 0}, + [1901] = {.lex_state = 0}, + [1902] = {.lex_state = 0}, + [1903] = {.lex_state = 0}, + [1904] = {.lex_state = 0}, + [1905] = {.lex_state = 0}, + [1906] = {.lex_state = 0}, + [1907] = {.lex_state = 0}, + [1908] = {.lex_state = 0}, + [1909] = {.lex_state = 0}, + [1910] = {.lex_state = 0}, + [1911] = {.lex_state = 0}, + [1912] = {.lex_state = 0}, + [1913] = {.lex_state = 0}, + [1914] = {.lex_state = 0}, + [1915] = {.lex_state = 0}, + [1916] = {.lex_state = 0}, + [1917] = {.lex_state = 0}, + [1918] = {.lex_state = 0}, + [1919] = {.lex_state = 0}, + [1920] = {.lex_state = 0}, + [1921] = {.lex_state = 0}, + [1922] = {.lex_state = 0}, + [1923] = {.lex_state = 0}, + [1924] = {.lex_state = 0}, + [1925] = {.lex_state = 0}, + [1926] = {.lex_state = 0}, + [1927] = {.lex_state = 0}, + [1928] = {.lex_state = 0}, + [1929] = {.lex_state = 0}, + [1930] = {.lex_state = 0}, + [1931] = {.lex_state = 0}, + [1932] = {.lex_state = 0}, + [1933] = {.lex_state = 0}, + [1934] = {.lex_state = 0}, + [1935] = {.lex_state = 0}, + [1936] = {.lex_state = 0}, + [1937] = {.lex_state = 0}, + [1938] = {.lex_state = 0}, + [1939] = {.lex_state = 0}, + [1940] = {.lex_state = 0}, + [1941] = {.lex_state = 0}, + [1942] = {.lex_state = 0}, + [1943] = {.lex_state = 0}, + [1944] = {.lex_state = 0}, + [1945] = {.lex_state = 0}, + [1946] = {.lex_state = 0}, + [1947] = {.lex_state = 0}, + [1948] = {.lex_state = 0}, + [1949] = {.lex_state = 0}, + [1950] = {.lex_state = 0}, + [1951] = {.lex_state = 0}, + [1952] = {.lex_state = 0}, +}; + +enum { + ts_external_token_PERCENT_LBRACE = 0, + ts_external_token_code_line = 1, + ts_external_token__failure = 2, +}; + +static const TSSymbol ts_external_scanner_symbol_map[EXTERNAL_TOKEN_COUNT] = { + [ts_external_token_PERCENT_LBRACE] = anon_sym_PERCENT_LBRACE, + [ts_external_token_code_line] = sym_code_line, + [ts_external_token__failure] = sym__failure, +}; + +static const bool ts_external_scanner_states[4][EXTERNAL_TOKEN_COUNT] = { + [1] = { + [ts_external_token_code_line] = true, + [ts_external_token__failure] = true, + }, + [2] = { + [ts_external_token_PERCENT_LBRACE] = true, + }, + [3] = { + [ts_external_token_code_line] = true, + }, +}; + +static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { + [0] = { + [ts_builtin_sym_end] = ACTIONS(1), + [sym_identifier] = ACTIONS(1), + [anon_sym_from] = ACTIONS(1), + [anon_sym_import] = ACTIONS(1), + [anon_sym_LPAREN] = ACTIONS(1), + [anon_sym_RPAREN] = ACTIONS(1), + [anon_sym_COMMA] = ACTIONS(1), + [anon_sym_as] = ACTIONS(1), + [anon_sym_using] = ACTIONS(1), + [anon_sym_EQ] = ACTIONS(1), + [anon_sym_AT] = ACTIONS(1), + [anon_sym_namespace] = ACTIONS(1), + [anon_sym_LBRACE] = ACTIONS(1), + [anon_sym_RBRACE] = ACTIONS(1), + [anon_sym_struct] = ACTIONS(1), + [anon_sym_func] = ACTIONS(1), + [anon_sym_DASH_GT] = ACTIONS(1), + [anon_sym_COLON] = ACTIONS(1), + [anon_sym_end] = ACTIONS(1), + [anon_sym_alloc_locals] = ACTIONS(1), + [anon_sym_assert] = ACTIONS(1), + [anon_sym_static_assert] = ACTIONS(1), + [anon_sym_EQ_EQ] = ACTIONS(1), + [anon_sym_let] = ACTIONS(1), + [anon_sym_const] = ACTIONS(1), + [anon_sym_local] = ACTIONS(1), + [anon_sym_tempvar] = ACTIONS(1), + [anon_sym_ap] = ACTIONS(1), + [anon_sym_PLUS_PLUS] = ACTIONS(1), + [anon_sym_jmp] = ACTIONS(1), + [anon_sym_rel] = ACTIONS(1), + [anon_sym_abs] = ACTIONS(1), + [anon_sym_if] = ACTIONS(1), + [anon_sym_BANG_EQ] = ACTIONS(1), + [sym_inst_ret] = ACTIONS(1), + [anon_sym_PLUS_EQ] = ACTIONS(1), + [anon_sym_dw] = ACTIONS(1), + [anon_sym_with_attr] = ACTIONS(1), + [anon_sym_else] = ACTIONS(1), + [anon_sym_with] = ACTIONS(1), + [anon_sym_return] = ACTIONS(1), + [anon_sym_felt] = ACTIONS(1), + [anon_sym_codeoffset] = ACTIONS(1), + [anon_sym_STAR] = ACTIONS(1), + [anon_sym_STAR_STAR] = ACTIONS(1), + [anon_sym_AMP] = ACTIONS(1), + [anon_sym_DASH] = ACTIONS(1), + [anon_sym_new] = ACTIONS(1), + [anon_sym_PLUS] = ACTIONS(1), + [anon_sym_SLASH] = ACTIONS(1), + [anon_sym_and] = ACTIONS(1), + [sym_string] = ACTIONS(1), + [sym_short_string] = ACTIONS(1), + [anon_sym_nondet] = ACTIONS(1), + [anon_sym_PERCENT_RBRACE] = ACTIONS(1), + [anon_sym_fp] = ACTIONS(1), + [anon_sym_LBRACK] = ACTIONS(1), + [anon_sym_RBRACK] = ACTIONS(1), + [anon_sym_DOT] = ACTIONS(1), + [anon_sym_cast] = ACTIONS(1), + [anon_sym_call] = ACTIONS(1), + [sym_number] = ACTIONS(1), + [anon_sym_SEMI] = ACTIONS(1), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(1), + [anon_sym_extern] = ACTIONS(1), + [anon_sym_type] = ACTIONS(1), + [anon_sym_COLON_COLON] = ACTIONS(1), + [anon_sym_fn] = ACTIONS(1), + [anon_sym_POUND] = ACTIONS(1), + [anon_sym_mod] = ACTIONS(1), + [anon_sym_enum] = ACTIONS(1), + [anon_sym_implicits] = ACTIONS(1), + [anon_sym_nopanic] = ACTIONS(1), + [anon_sym_ref] = ACTIONS(1), + [anon_sym_mut] = ACTIONS(1), + [anon_sym_impl] = ACTIONS(1), + [anon_sym_of] = ACTIONS(1), + [anon_sym_trait] = ACTIONS(1), + [anon_sym_u8] = ACTIONS(1), + [anon_sym_i8] = ACTIONS(1), + [anon_sym_u16] = ACTIONS(1), + [anon_sym_i16] = ACTIONS(1), + [anon_sym_u32] = ACTIONS(1), + [anon_sym_i32] = ACTIONS(1), + [anon_sym_u64] = ACTIONS(1), + [anon_sym_i64] = ACTIONS(1), + [anon_sym_u128] = ACTIONS(1), + [anon_sym_i128] = ACTIONS(1), + [anon_sym_u256] = ACTIONS(1), + [anon_sym_i256] = ACTIONS(1), + [anon_sym_isize] = ACTIONS(1), + [anon_sym_usize] = ACTIONS(1), + [anon_sym_f32] = ACTIONS(1), + [anon_sym_f64] = ACTIONS(1), + [anon_sym_felt252] = ACTIONS(1), + [anon_sym_bool] = ACTIONS(1), + [anon_sym_str] = ACTIONS(1), + [anon_sym_char] = ACTIONS(1), + [anon_sym_LT] = ACTIONS(1), + [anon_sym_GT] = ACTIONS(1), + [anon_sym_match] = ACTIONS(1), + [anon_sym_EQ_GT] = ACTIONS(1), + [anon_sym_loop] = ACTIONS(1), + [anon_sym__] = ACTIONS(1), + [anon_sym_DOT_DOT] = ACTIONS(1), + [anon_sym_BANG] = ACTIONS(1), + [anon_sym_TILDE] = ACTIONS(1), + [anon_sym_AMP_AMP] = ACTIONS(1), + [anon_sym_PIPE_PIPE] = ACTIONS(1), + [anon_sym_PIPE] = ACTIONS(1), + [anon_sym_CARET] = ACTIONS(1), + [anon_sym_LT2] = ACTIONS(1), + [anon_sym_LT_EQ] = ACTIONS(1), + [anon_sym_GT_EQ] = ACTIONS(1), + [anon_sym_LT_LT] = ACTIONS(1), + [anon_sym_GT_GT] = ACTIONS(1), + [anon_sym_PERCENT] = ACTIONS(1), + [anon_sym_DASH_EQ] = ACTIONS(1), + [anon_sym_STAR_EQ] = ACTIONS(1), + [anon_sym_SLASH_EQ] = ACTIONS(1), + [anon_sym_PERCENT_EQ] = ACTIONS(1), + [anon_sym_AMP_EQ] = ACTIONS(1), + [anon_sym_PIPE_EQ] = ACTIONS(1), + [anon_sym_CARET_EQ] = ACTIONS(1), + [anon_sym_LT_LT_EQ] = ACTIONS(1), + [anon_sym_GT_GT_EQ] = ACTIONS(1), + [anon_sym_QMARK] = ACTIONS(1), + [sym__cairo_1_short_string] = ACTIONS(1), + [anon_sym_true] = ACTIONS(1), + [anon_sym_false] = ACTIONS(1), + [sym_self] = ACTIONS(1), + [sym_code_line] = ACTIONS(1), + [sym__failure] = ACTIONS(1), + }, + [1] = { + [sym_program] = STATE(1904), + [sym_cairo_0_file] = STATE(1903), + [sym_cairo_1_file] = STATE(1903), + [sym__cairo_0_statement] = STATE(53), + [sym__cairo_0_import_statement] = STATE(633), + [sym_type_definition] = STATE(636), + [sym_builtin_directive] = STATE(636), + [sym_lang_directive] = STATE(636), + [sym__cairo_0_decorated_definition] = STATE(637), + [sym_decorator] = STATE(1096), + [sym__cairo_0_namespace_definition] = STATE(636), + [sym__cairo_0_struct_definition] = STATE(636), + [sym__cairo_0_function_definition] = STATE(636), + [sym__cairo_0_expression_statement] = STATE(636), + [sym_alloc_locals] = STATE(636), + [sym__cairo_0_assert_statement] = STATE(636), + [sym__cairo_0_static_assert_statement] = STATE(636), + [sym__cairo_0_let_binding] = STATE(640), + [sym_const_var_declaration] = STATE(636), + [sym_local_var_declaration] = STATE(636), + [sym_temp_var_declaration] = STATE(636), + [sym_instruction] = STATE(636), + [sym_inst_assert_eq] = STATE(1329), + [sym_inst_jmp_rel] = STATE(1329), + [sym_inst_jmp_abs] = STATE(1329), + [sym_inst_jmp_to_label] = STATE(1329), + [sym_inst_jnz] = STATE(1329), + [sym_inst_jnz_to_label] = STATE(1329), + [sym_inst_add_ap] = STATE(1329), + [sym_inst_data_word] = STATE(1329), + [sym_label] = STATE(636), + [sym__cairo_0_attribute_statement] = STATE(636), + [sym__cairo_0_if_statement] = STATE(636), + [sym__cairo_0_with_statement] = STATE(636), + [sym__cairo_0_return_statement] = STATE(636), + [sym__cairo_0_expression] = STATE(898), + [sym_unary_expression] = STATE(898), + [sym_binary_expression] = STATE(898), + [sym_assignment_expression] = STATE(898), + [sym_hint_expression] = STATE(898), + [sym_hint] = STATE(636), + [sym_register] = STATE(898), + [sym_deref_expression] = STATE(898), + [sym_subscript_expression] = STATE(898), + [sym_member_expression] = STATE(898), + [sym_cast_expression] = STATE(898), + [sym_tuple_expression] = STATE(898), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1329), + [sym__cairo_1_statement] = STATE(788), + [sym_use_declaration] = STATE(788), + [sym_extern_type_statement] = STATE(788), + [sym_extern_function_statement] = STATE(788), + [sym_attribute_item] = STATE(788), + [sym_mod_item] = STATE(788), + [sym_struct_item] = STATE(788), + [sym_enum_item] = STATE(788), + [sym_const_item] = STATE(788), + [sym_type_item] = STATE(788), + [sym__cairo_1_function_definition] = STATE(1001), + [sym__cairo_1_function_signature] = STATE(1000), + [sym_impl_item] = STATE(788), + [sym_trait_item] = STATE(788), + [sym_let_declaration] = STATE(788), + [aux_sym_cairo_0_file_repeat1] = STATE(53), + [aux_sym_cairo_1_file_repeat1] = STATE(788), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1096), + [ts_builtin_sym_end] = ACTIONS(5), + [sym_identifier] = ACTIONS(7), + [anon_sym_from] = ACTIONS(9), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(13), + [anon_sym_PERCENTbuiltins] = ACTIONS(15), + [anon_sym_PERCENTlang] = ACTIONS(17), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(21), + [anon_sym_struct] = ACTIONS(23), + [anon_sym_func] = ACTIONS(25), + [anon_sym_alloc_locals] = ACTIONS(27), + [anon_sym_assert] = ACTIONS(29), + [anon_sym_static_assert] = ACTIONS(31), + [anon_sym_let] = ACTIONS(33), + [anon_sym_const] = ACTIONS(35), + [anon_sym_local] = ACTIONS(37), + [anon_sym_tempvar] = ACTIONS(39), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(45), + [sym_inst_ret] = ACTIONS(47), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(51), + [anon_sym_with] = ACTIONS(53), + [anon_sym_return] = ACTIONS(55), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(61), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(65), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(61), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(75), + [anon_sym_extern] = ACTIONS(77), + [anon_sym_type] = ACTIONS(79), + [anon_sym_fn] = ACTIONS(81), + [anon_sym_POUND] = ACTIONS(83), + [anon_sym_mod] = ACTIONS(85), + [anon_sym_enum] = ACTIONS(87), + [anon_sym_impl] = ACTIONS(89), + [anon_sym_trait] = ACTIONS(91), + }, + [2] = { + [sym_block] = STATE(127), + [sym__cairo_1_generic_function] = STATE(132), + [sym_generic_type_with_turbofish] = STATE(1828), + [sym__cairo_1_expression] = STATE(116), + [sym__cairo_1_return_expression] = STATE(127), + [sym__cairo_1_if_expression] = STATE(137), + [sym_match_expression] = STATE(127), + [sym__cairo_1_loop_expression] = STATE(138), + [sym__cairo_1_at_expression] = STATE(127), + [sym__cairo_1_unary_expression] = STATE(127), + [sym__cairo_1_binary_expression] = STATE(140), + [sym__cairo_1_assignment_expression] = STATE(141), + [sym__cairo_1_compound_assignment_expression] = STATE(142), + [sym__cairo_1_try_expression] = STATE(127), + [sym__cairo_1_call_expression] = STATE(143), + [sym__cairo_1_index_expression] = STATE(127), + [sym__cairo_1_field_expression] = STATE(159), + [sym__cairo_1_parenthesized_expression] = STATE(127), + [sym__cairo_1_tuple_expression] = STATE(127), + [sym__cairo_1_unit_expression] = STATE(127), + [sym__cairo_1_struct_expression] = STATE(161), + [sym__literal] = STATE(127), + [sym_scoped_identifier] = STATE(164), + [sym_boolean] = STATE(127), + [sym_identifier] = ACTIONS(93), + [anon_sym_LPAREN] = ACTIONS(95), + [anon_sym_EQ] = ACTIONS(97), + [anon_sym_AT] = ACTIONS(99), + [anon_sym_LBRACE] = ACTIONS(101), + [anon_sym_RBRACE] = ACTIONS(103), + [anon_sym_struct] = ACTIONS(97), + [anon_sym_EQ_EQ] = ACTIONS(103), + [anon_sym_let] = ACTIONS(97), + [anon_sym_const] = ACTIONS(97), + [anon_sym_if] = ACTIONS(105), + [anon_sym_BANG_EQ] = ACTIONS(103), + [anon_sym_PLUS_EQ] = ACTIONS(103), + [anon_sym_return] = ACTIONS(107), + [anon_sym_STAR] = ACTIONS(109), + [anon_sym_AMP] = ACTIONS(97), + [anon_sym_DASH] = ACTIONS(109), + [anon_sym_PLUS] = ACTIONS(97), + [anon_sym_SLASH] = ACTIONS(97), + [anon_sym_LBRACK] = ACTIONS(103), + [anon_sym_DOT] = ACTIONS(103), + [sym_number] = ACTIONS(111), + [anon_sym_SEMI] = ACTIONS(103), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(97), + [anon_sym_extern] = ACTIONS(97), + [anon_sym_type] = ACTIONS(97), + [anon_sym_COLON_COLON] = ACTIONS(113), + [anon_sym_fn] = ACTIONS(97), + [anon_sym_POUND] = ACTIONS(103), + [anon_sym_mod] = ACTIONS(97), + [anon_sym_enum] = ACTIONS(97), + [anon_sym_impl] = ACTIONS(97), + [anon_sym_trait] = ACTIONS(97), + [anon_sym_u8] = ACTIONS(115), + [anon_sym_i8] = ACTIONS(115), + [anon_sym_u16] = ACTIONS(115), + [anon_sym_i16] = ACTIONS(115), + [anon_sym_u32] = ACTIONS(115), + [anon_sym_i32] = ACTIONS(115), + [anon_sym_u64] = ACTIONS(115), + [anon_sym_i64] = ACTIONS(115), + [anon_sym_u128] = ACTIONS(115), + [anon_sym_i128] = ACTIONS(115), + [anon_sym_u256] = ACTIONS(115), + [anon_sym_i256] = ACTIONS(115), + [anon_sym_isize] = ACTIONS(115), + [anon_sym_usize] = ACTIONS(115), + [anon_sym_f32] = ACTIONS(115), + [anon_sym_f64] = ACTIONS(115), + [anon_sym_felt252] = ACTIONS(115), + [anon_sym_bool] = ACTIONS(115), + [anon_sym_str] = ACTIONS(115), + [anon_sym_char] = ACTIONS(115), + [anon_sym_GT] = ACTIONS(97), + [anon_sym_match] = ACTIONS(117), + [anon_sym_loop] = ACTIONS(119), + [anon_sym_BANG] = ACTIONS(109), + [anon_sym_TILDE] = ACTIONS(121), + [anon_sym_AMP_AMP] = ACTIONS(103), + [anon_sym_PIPE_PIPE] = ACTIONS(103), + [anon_sym_PIPE] = ACTIONS(97), + [anon_sym_CARET] = ACTIONS(97), + [anon_sym_LT2] = ACTIONS(97), + [anon_sym_LT_EQ] = ACTIONS(103), + [anon_sym_GT_EQ] = ACTIONS(103), + [anon_sym_LT_LT] = ACTIONS(97), + [anon_sym_GT_GT] = ACTIONS(97), + [anon_sym_PERCENT] = ACTIONS(97), + [anon_sym_DASH_EQ] = ACTIONS(103), + [anon_sym_STAR_EQ] = ACTIONS(103), + [anon_sym_SLASH_EQ] = ACTIONS(103), + [anon_sym_PERCENT_EQ] = ACTIONS(103), + [anon_sym_AMP_EQ] = ACTIONS(103), + [anon_sym_PIPE_EQ] = ACTIONS(103), + [anon_sym_CARET_EQ] = ACTIONS(103), + [anon_sym_LT_LT_EQ] = ACTIONS(103), + [anon_sym_GT_GT_EQ] = ACTIONS(103), + [anon_sym_QMARK] = ACTIONS(103), + [sym__cairo_1_short_string] = ACTIONS(111), + [anon_sym_true] = ACTIONS(123), + [anon_sym_false] = ACTIONS(123), + [sym_self] = ACTIONS(125), + }, + [3] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(541), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(127), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(103), + [anon_sym_COMMA] = ACTIONS(103), + [anon_sym_EQ] = ACTIONS(97), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_RBRACE] = ACTIONS(103), + [anon_sym_EQ_EQ] = ACTIONS(103), + [anon_sym_if] = ACTIONS(135), + [anon_sym_BANG_EQ] = ACTIONS(103), + [anon_sym_PLUS_EQ] = ACTIONS(103), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(139), + [anon_sym_AMP] = ACTIONS(97), + [anon_sym_DASH] = ACTIONS(139), + [anon_sym_PLUS] = ACTIONS(97), + [anon_sym_SLASH] = ACTIONS(97), + [anon_sym_LBRACK] = ACTIONS(103), + [anon_sym_RBRACK] = ACTIONS(103), + [anon_sym_DOT] = ACTIONS(103), + [sym_number] = ACTIONS(141), + [anon_sym_SEMI] = ACTIONS(103), + [sym_comment] = ACTIONS(3), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_GT] = ACTIONS(97), + [anon_sym_match] = ACTIONS(147), + [anon_sym_EQ_GT] = ACTIONS(103), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(139), + [anon_sym_TILDE] = ACTIONS(151), + [anon_sym_AMP_AMP] = ACTIONS(103), + [anon_sym_PIPE_PIPE] = ACTIONS(103), + [anon_sym_PIPE] = ACTIONS(97), + [anon_sym_CARET] = ACTIONS(97), + [anon_sym_LT2] = ACTIONS(97), + [anon_sym_LT_EQ] = ACTIONS(103), + [anon_sym_GT_EQ] = ACTIONS(103), + [anon_sym_LT_LT] = ACTIONS(97), + [anon_sym_GT_GT] = ACTIONS(97), + [anon_sym_PERCENT] = ACTIONS(97), + [anon_sym_DASH_EQ] = ACTIONS(103), + [anon_sym_STAR_EQ] = ACTIONS(103), + [anon_sym_SLASH_EQ] = ACTIONS(103), + [anon_sym_PERCENT_EQ] = ACTIONS(103), + [anon_sym_AMP_EQ] = ACTIONS(103), + [anon_sym_PIPE_EQ] = ACTIONS(103), + [anon_sym_CARET_EQ] = ACTIONS(103), + [anon_sym_LT_LT_EQ] = ACTIONS(103), + [anon_sym_GT_GT_EQ] = ACTIONS(103), + [anon_sym_QMARK] = ACTIONS(103), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), + }, + [4] = { + [sym__cairo_1_statement] = STATE(11), + [sym_use_declaration] = STATE(11), + [sym_extern_type_statement] = STATE(11), + [sym_extern_function_statement] = STATE(11), + [sym_attribute_item] = STATE(11), + [sym_mod_item] = STATE(11), + [sym_struct_item] = STATE(11), + [sym_enum_item] = STATE(11), + [sym_const_item] = STATE(11), + [sym_type_item] = STATE(11), + [sym_block] = STATE(127), + [sym__cairo_1_function_definition] = STATE(318), + [sym__cairo_1_function_signature] = STATE(316), + [sym_impl_item] = STATE(11), + [sym_trait_item] = STATE(11), + [sym_let_declaration] = STATE(11), + [sym__cairo_1_generic_function] = STATE(132), + [sym_generic_type_with_turbofish] = STATE(1828), + [sym__cairo_1_expression_statement] = STATE(11), + [sym__cairo_1_expression] = STATE(157), + [sym__cairo_1_return_expression] = STATE(127), + [sym__cairo_1_if_expression] = STATE(137), + [sym_match_expression] = STATE(127), + [sym__cairo_1_loop_expression] = STATE(138), + [sym__cairo_1_at_expression] = STATE(127), + [sym__cairo_1_unary_expression] = STATE(127), + [sym__cairo_1_binary_expression] = STATE(140), + [sym__cairo_1_assignment_expression] = STATE(141), + [sym__cairo_1_compound_assignment_expression] = STATE(142), + [sym__cairo_1_try_expression] = STATE(127), + [sym__cairo_1_call_expression] = STATE(143), + [sym__cairo_1_index_expression] = STATE(127), + [sym__cairo_1_field_expression] = STATE(159), + [sym__cairo_1_parenthesized_expression] = STATE(127), + [sym__cairo_1_tuple_expression] = STATE(127), + [sym__cairo_1_unit_expression] = STATE(127), + [sym__cairo_1_struct_expression] = STATE(161), + [sym__literal] = STATE(127), + [sym_scoped_identifier] = STATE(164), + [sym_boolean] = STATE(127), + [aux_sym_block_repeat1] = STATE(11), + [sym_identifier] = ACTIONS(93), + [anon_sym_LPAREN] = ACTIONS(95), + [anon_sym_AT] = ACTIONS(99), + [anon_sym_LBRACE] = ACTIONS(101), + [anon_sym_RBRACE] = ACTIONS(157), + [anon_sym_struct] = ACTIONS(159), + [anon_sym_let] = ACTIONS(161), + [anon_sym_const] = ACTIONS(163), + [anon_sym_if] = ACTIONS(105), + [anon_sym_return] = ACTIONS(107), + [anon_sym_STAR] = ACTIONS(121), + [anon_sym_DASH] = ACTIONS(109), + [sym_number] = ACTIONS(111), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(165), + [anon_sym_extern] = ACTIONS(167), + [anon_sym_type] = ACTIONS(169), + [anon_sym_COLON_COLON] = ACTIONS(113), + [anon_sym_fn] = ACTIONS(171), + [anon_sym_POUND] = ACTIONS(173), + [anon_sym_mod] = ACTIONS(175), + [anon_sym_enum] = ACTIONS(177), + [anon_sym_impl] = ACTIONS(179), + [anon_sym_trait] = ACTIONS(181), + [anon_sym_u8] = ACTIONS(115), + [anon_sym_i8] = ACTIONS(115), + [anon_sym_u16] = ACTIONS(115), + [anon_sym_i16] = ACTIONS(115), + [anon_sym_u32] = ACTIONS(115), + [anon_sym_i32] = ACTIONS(115), + [anon_sym_u64] = ACTIONS(115), + [anon_sym_i64] = ACTIONS(115), + [anon_sym_u128] = ACTIONS(115), + [anon_sym_i128] = ACTIONS(115), + [anon_sym_u256] = ACTIONS(115), + [anon_sym_i256] = ACTIONS(115), + [anon_sym_isize] = ACTIONS(115), + [anon_sym_usize] = ACTIONS(115), + [anon_sym_f32] = ACTIONS(115), + [anon_sym_f64] = ACTIONS(115), + [anon_sym_felt252] = ACTIONS(115), + [anon_sym_bool] = ACTIONS(115), + [anon_sym_str] = ACTIONS(115), + [anon_sym_char] = ACTIONS(115), + [anon_sym_match] = ACTIONS(117), + [anon_sym_loop] = ACTIONS(119), + [anon_sym_BANG] = ACTIONS(121), + [anon_sym_TILDE] = ACTIONS(121), + [sym__cairo_1_short_string] = ACTIONS(111), + [anon_sym_true] = ACTIONS(123), + [anon_sym_false] = ACTIONS(123), + [sym_self] = ACTIONS(125), + }, + [5] = { + [sym__cairo_1_statement] = STATE(6), + [sym_use_declaration] = STATE(6), + [sym_extern_type_statement] = STATE(6), + [sym_extern_function_statement] = STATE(6), + [sym_attribute_item] = STATE(6), + [sym_mod_item] = STATE(6), + [sym_struct_item] = STATE(6), + [sym_enum_item] = STATE(6), + [sym_const_item] = STATE(6), + [sym_type_item] = STATE(6), + [sym_block] = STATE(127), + [sym__cairo_1_function_definition] = STATE(318), + [sym__cairo_1_function_signature] = STATE(316), + [sym_impl_item] = STATE(6), + [sym_trait_item] = STATE(6), + [sym_let_declaration] = STATE(6), + [sym__cairo_1_generic_function] = STATE(132), + [sym_generic_type_with_turbofish] = STATE(1828), + [sym__cairo_1_expression_statement] = STATE(6), + [sym__cairo_1_expression] = STATE(157), + [sym__cairo_1_return_expression] = STATE(127), + [sym__cairo_1_if_expression] = STATE(137), + [sym_match_expression] = STATE(127), + [sym__cairo_1_loop_expression] = STATE(138), + [sym__cairo_1_at_expression] = STATE(127), + [sym__cairo_1_unary_expression] = STATE(127), + [sym__cairo_1_binary_expression] = STATE(140), + [sym__cairo_1_assignment_expression] = STATE(141), + [sym__cairo_1_compound_assignment_expression] = STATE(142), + [sym__cairo_1_try_expression] = STATE(127), + [sym__cairo_1_call_expression] = STATE(143), + [sym__cairo_1_index_expression] = STATE(127), + [sym__cairo_1_field_expression] = STATE(159), + [sym__cairo_1_parenthesized_expression] = STATE(127), + [sym__cairo_1_tuple_expression] = STATE(127), + [sym__cairo_1_unit_expression] = STATE(127), + [sym__cairo_1_struct_expression] = STATE(161), + [sym__literal] = STATE(127), + [sym_scoped_identifier] = STATE(164), + [sym_boolean] = STATE(127), + [aux_sym_block_repeat1] = STATE(6), + [sym_identifier] = ACTIONS(93), + [anon_sym_LPAREN] = ACTIONS(95), + [anon_sym_AT] = ACTIONS(99), + [anon_sym_LBRACE] = ACTIONS(101), + [anon_sym_RBRACE] = ACTIONS(183), + [anon_sym_struct] = ACTIONS(159), + [anon_sym_let] = ACTIONS(161), + [anon_sym_const] = ACTIONS(163), + [anon_sym_if] = ACTIONS(105), + [anon_sym_return] = ACTIONS(107), + [anon_sym_STAR] = ACTIONS(121), + [anon_sym_DASH] = ACTIONS(109), + [sym_number] = ACTIONS(111), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(165), + [anon_sym_extern] = ACTIONS(167), + [anon_sym_type] = ACTIONS(169), + [anon_sym_COLON_COLON] = ACTIONS(113), + [anon_sym_fn] = ACTIONS(171), + [anon_sym_POUND] = ACTIONS(173), + [anon_sym_mod] = ACTIONS(175), + [anon_sym_enum] = ACTIONS(177), + [anon_sym_impl] = ACTIONS(179), + [anon_sym_trait] = ACTIONS(181), + [anon_sym_u8] = ACTIONS(115), + [anon_sym_i8] = ACTIONS(115), + [anon_sym_u16] = ACTIONS(115), + [anon_sym_i16] = ACTIONS(115), + [anon_sym_u32] = ACTIONS(115), + [anon_sym_i32] = ACTIONS(115), + [anon_sym_u64] = ACTIONS(115), + [anon_sym_i64] = ACTIONS(115), + [anon_sym_u128] = ACTIONS(115), + [anon_sym_i128] = ACTIONS(115), + [anon_sym_u256] = ACTIONS(115), + [anon_sym_i256] = ACTIONS(115), + [anon_sym_isize] = ACTIONS(115), + [anon_sym_usize] = ACTIONS(115), + [anon_sym_f32] = ACTIONS(115), + [anon_sym_f64] = ACTIONS(115), + [anon_sym_felt252] = ACTIONS(115), + [anon_sym_bool] = ACTIONS(115), + [anon_sym_str] = ACTIONS(115), + [anon_sym_char] = ACTIONS(115), + [anon_sym_match] = ACTIONS(117), + [anon_sym_loop] = ACTIONS(119), + [anon_sym_BANG] = ACTIONS(121), + [anon_sym_TILDE] = ACTIONS(121), + [sym__cairo_1_short_string] = ACTIONS(111), + [anon_sym_true] = ACTIONS(123), + [anon_sym_false] = ACTIONS(123), + [sym_self] = ACTIONS(125), + }, + [6] = { + [sym__cairo_1_statement] = STATE(11), + [sym_use_declaration] = STATE(11), + [sym_extern_type_statement] = STATE(11), + [sym_extern_function_statement] = STATE(11), + [sym_attribute_item] = STATE(11), + [sym_mod_item] = STATE(11), + [sym_struct_item] = STATE(11), + [sym_enum_item] = STATE(11), + [sym_const_item] = STATE(11), + [sym_type_item] = STATE(11), + [sym_block] = STATE(127), + [sym__cairo_1_function_definition] = STATE(318), + [sym__cairo_1_function_signature] = STATE(316), + [sym_impl_item] = STATE(11), + [sym_trait_item] = STATE(11), + [sym_let_declaration] = STATE(11), + [sym__cairo_1_generic_function] = STATE(132), + [sym_generic_type_with_turbofish] = STATE(1828), + [sym__cairo_1_expression_statement] = STATE(11), + [sym__cairo_1_expression] = STATE(157), + [sym__cairo_1_return_expression] = STATE(127), + [sym__cairo_1_if_expression] = STATE(137), + [sym_match_expression] = STATE(127), + [sym__cairo_1_loop_expression] = STATE(138), + [sym__cairo_1_at_expression] = STATE(127), + [sym__cairo_1_unary_expression] = STATE(127), + [sym__cairo_1_binary_expression] = STATE(140), + [sym__cairo_1_assignment_expression] = STATE(141), + [sym__cairo_1_compound_assignment_expression] = STATE(142), + [sym__cairo_1_try_expression] = STATE(127), + [sym__cairo_1_call_expression] = STATE(143), + [sym__cairo_1_index_expression] = STATE(127), + [sym__cairo_1_field_expression] = STATE(159), + [sym__cairo_1_parenthesized_expression] = STATE(127), + [sym__cairo_1_tuple_expression] = STATE(127), + [sym__cairo_1_unit_expression] = STATE(127), + [sym__cairo_1_struct_expression] = STATE(161), + [sym__literal] = STATE(127), + [sym_scoped_identifier] = STATE(164), + [sym_boolean] = STATE(127), + [aux_sym_block_repeat1] = STATE(11), + [sym_identifier] = ACTIONS(93), + [anon_sym_LPAREN] = ACTIONS(95), + [anon_sym_AT] = ACTIONS(99), + [anon_sym_LBRACE] = ACTIONS(101), + [anon_sym_RBRACE] = ACTIONS(185), + [anon_sym_struct] = ACTIONS(159), + [anon_sym_let] = ACTIONS(161), + [anon_sym_const] = ACTIONS(163), + [anon_sym_if] = ACTIONS(105), + [anon_sym_return] = ACTIONS(107), + [anon_sym_STAR] = ACTIONS(121), + [anon_sym_DASH] = ACTIONS(109), + [sym_number] = ACTIONS(111), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(165), + [anon_sym_extern] = ACTIONS(167), + [anon_sym_type] = ACTIONS(169), + [anon_sym_COLON_COLON] = ACTIONS(113), + [anon_sym_fn] = ACTIONS(171), + [anon_sym_POUND] = ACTIONS(173), + [anon_sym_mod] = ACTIONS(175), + [anon_sym_enum] = ACTIONS(177), + [anon_sym_impl] = ACTIONS(179), + [anon_sym_trait] = ACTIONS(181), + [anon_sym_u8] = ACTIONS(115), + [anon_sym_i8] = ACTIONS(115), + [anon_sym_u16] = ACTIONS(115), + [anon_sym_i16] = ACTIONS(115), + [anon_sym_u32] = ACTIONS(115), + [anon_sym_i32] = ACTIONS(115), + [anon_sym_u64] = ACTIONS(115), + [anon_sym_i64] = ACTIONS(115), + [anon_sym_u128] = ACTIONS(115), + [anon_sym_i128] = ACTIONS(115), + [anon_sym_u256] = ACTIONS(115), + [anon_sym_i256] = ACTIONS(115), + [anon_sym_isize] = ACTIONS(115), + [anon_sym_usize] = ACTIONS(115), + [anon_sym_f32] = ACTIONS(115), + [anon_sym_f64] = ACTIONS(115), + [anon_sym_felt252] = ACTIONS(115), + [anon_sym_bool] = ACTIONS(115), + [anon_sym_str] = ACTIONS(115), + [anon_sym_char] = ACTIONS(115), + [anon_sym_match] = ACTIONS(117), + [anon_sym_loop] = ACTIONS(119), + [anon_sym_BANG] = ACTIONS(121), + [anon_sym_TILDE] = ACTIONS(121), + [sym__cairo_1_short_string] = ACTIONS(111), + [anon_sym_true] = ACTIONS(123), + [anon_sym_false] = ACTIONS(123), + [sym_self] = ACTIONS(125), + }, + [7] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(762), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(187), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_EQ] = ACTIONS(97), + [anon_sym_AT] = ACTIONS(189), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_EQ_EQ] = ACTIONS(103), + [anon_sym_if] = ACTIONS(135), + [anon_sym_BANG_EQ] = ACTIONS(103), + [anon_sym_PLUS_EQ] = ACTIONS(103), + [anon_sym_return] = ACTIONS(191), + [anon_sym_STAR] = ACTIONS(193), + [anon_sym_AMP] = ACTIONS(97), + [anon_sym_DASH] = ACTIONS(193), + [anon_sym_PLUS] = ACTIONS(97), + [anon_sym_SLASH] = ACTIONS(97), + [anon_sym_LBRACK] = ACTIONS(103), + [anon_sym_DOT] = ACTIONS(103), + [sym_number] = ACTIONS(141), + [sym_comment] = ACTIONS(3), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_u8] = ACTIONS(195), + [anon_sym_i8] = ACTIONS(195), + [anon_sym_u16] = ACTIONS(195), + [anon_sym_i16] = ACTIONS(195), + [anon_sym_u32] = ACTIONS(195), + [anon_sym_i32] = ACTIONS(195), + [anon_sym_u64] = ACTIONS(195), + [anon_sym_i64] = ACTIONS(195), + [anon_sym_u128] = ACTIONS(195), + [anon_sym_i128] = ACTIONS(195), + [anon_sym_u256] = ACTIONS(195), + [anon_sym_i256] = ACTIONS(195), + [anon_sym_isize] = ACTIONS(195), + [anon_sym_usize] = ACTIONS(195), + [anon_sym_f32] = ACTIONS(195), + [anon_sym_f64] = ACTIONS(195), + [anon_sym_felt252] = ACTIONS(195), + [anon_sym_bool] = ACTIONS(195), + [anon_sym_str] = ACTIONS(195), + [anon_sym_char] = ACTIONS(195), + [anon_sym_GT] = ACTIONS(97), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(193), + [anon_sym_TILDE] = ACTIONS(197), + [anon_sym_AMP_AMP] = ACTIONS(103), + [anon_sym_PIPE_PIPE] = ACTIONS(103), + [anon_sym_PIPE] = ACTIONS(97), + [anon_sym_CARET] = ACTIONS(97), + [anon_sym_LT2] = ACTIONS(97), + [anon_sym_LT_EQ] = ACTIONS(103), + [anon_sym_GT_EQ] = ACTIONS(103), + [anon_sym_LT_LT] = ACTIONS(97), + [anon_sym_GT_GT] = ACTIONS(97), + [anon_sym_PERCENT] = ACTIONS(97), + [anon_sym_DASH_EQ] = ACTIONS(103), + [anon_sym_STAR_EQ] = ACTIONS(103), + [anon_sym_SLASH_EQ] = ACTIONS(103), + [anon_sym_PERCENT_EQ] = ACTIONS(103), + [anon_sym_AMP_EQ] = ACTIONS(103), + [anon_sym_PIPE_EQ] = ACTIONS(103), + [anon_sym_CARET_EQ] = ACTIONS(103), + [anon_sym_LT_LT_EQ] = ACTIONS(103), + [anon_sym_GT_GT_EQ] = ACTIONS(103), + [anon_sym_QMARK] = ACTIONS(103), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), + }, + [8] = { + [sym__cairo_1_statement] = STATE(10), + [sym_use_declaration] = STATE(10), + [sym_extern_type_statement] = STATE(10), + [sym_extern_function_statement] = STATE(10), + [sym_attribute_item] = STATE(10), + [sym_mod_item] = STATE(10), + [sym_struct_item] = STATE(10), + [sym_enum_item] = STATE(10), + [sym_const_item] = STATE(10), + [sym_type_item] = STATE(10), + [sym_block] = STATE(127), + [sym__cairo_1_function_definition] = STATE(318), + [sym__cairo_1_function_signature] = STATE(316), + [sym_impl_item] = STATE(10), + [sym_trait_item] = STATE(10), + [sym_let_declaration] = STATE(10), + [sym__cairo_1_generic_function] = STATE(132), + [sym_generic_type_with_turbofish] = STATE(1828), + [sym__cairo_1_expression_statement] = STATE(10), + [sym__cairo_1_expression] = STATE(157), + [sym__cairo_1_return_expression] = STATE(127), + [sym__cairo_1_if_expression] = STATE(137), + [sym_match_expression] = STATE(127), + [sym__cairo_1_loop_expression] = STATE(138), + [sym__cairo_1_at_expression] = STATE(127), + [sym__cairo_1_unary_expression] = STATE(127), + [sym__cairo_1_binary_expression] = STATE(140), + [sym__cairo_1_assignment_expression] = STATE(141), + [sym__cairo_1_compound_assignment_expression] = STATE(142), + [sym__cairo_1_try_expression] = STATE(127), + [sym__cairo_1_call_expression] = STATE(143), + [sym__cairo_1_index_expression] = STATE(127), + [sym__cairo_1_field_expression] = STATE(159), + [sym__cairo_1_parenthesized_expression] = STATE(127), + [sym__cairo_1_tuple_expression] = STATE(127), + [sym__cairo_1_unit_expression] = STATE(127), + [sym__cairo_1_struct_expression] = STATE(161), + [sym__literal] = STATE(127), + [sym_scoped_identifier] = STATE(164), + [sym_boolean] = STATE(127), + [aux_sym_block_repeat1] = STATE(10), + [sym_identifier] = ACTIONS(93), + [anon_sym_LPAREN] = ACTIONS(95), + [anon_sym_AT] = ACTIONS(99), + [anon_sym_LBRACE] = ACTIONS(101), + [anon_sym_RBRACE] = ACTIONS(199), + [anon_sym_struct] = ACTIONS(159), + [anon_sym_let] = ACTIONS(161), + [anon_sym_const] = ACTIONS(163), + [anon_sym_if] = ACTIONS(105), + [anon_sym_return] = ACTIONS(107), + [anon_sym_STAR] = ACTIONS(121), + [anon_sym_DASH] = ACTIONS(109), + [sym_number] = ACTIONS(111), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(165), + [anon_sym_extern] = ACTIONS(167), + [anon_sym_type] = ACTIONS(169), + [anon_sym_COLON_COLON] = ACTIONS(113), + [anon_sym_fn] = ACTIONS(171), + [anon_sym_POUND] = ACTIONS(173), + [anon_sym_mod] = ACTIONS(175), + [anon_sym_enum] = ACTIONS(177), + [anon_sym_impl] = ACTIONS(179), + [anon_sym_trait] = ACTIONS(181), + [anon_sym_u8] = ACTIONS(115), + [anon_sym_i8] = ACTIONS(115), + [anon_sym_u16] = ACTIONS(115), + [anon_sym_i16] = ACTIONS(115), + [anon_sym_u32] = ACTIONS(115), + [anon_sym_i32] = ACTIONS(115), + [anon_sym_u64] = ACTIONS(115), + [anon_sym_i64] = ACTIONS(115), + [anon_sym_u128] = ACTIONS(115), + [anon_sym_i128] = ACTIONS(115), + [anon_sym_u256] = ACTIONS(115), + [anon_sym_i256] = ACTIONS(115), + [anon_sym_isize] = ACTIONS(115), + [anon_sym_usize] = ACTIONS(115), + [anon_sym_f32] = ACTIONS(115), + [anon_sym_f64] = ACTIONS(115), + [anon_sym_felt252] = ACTIONS(115), + [anon_sym_bool] = ACTIONS(115), + [anon_sym_str] = ACTIONS(115), + [anon_sym_char] = ACTIONS(115), + [anon_sym_match] = ACTIONS(117), + [anon_sym_loop] = ACTIONS(119), + [anon_sym_BANG] = ACTIONS(121), + [anon_sym_TILDE] = ACTIONS(121), + [sym__cairo_1_short_string] = ACTIONS(111), + [anon_sym_true] = ACTIONS(123), + [anon_sym_false] = ACTIONS(123), + [sym_self] = ACTIONS(125), + }, + [9] = { + [sym__cairo_1_statement] = STATE(4), + [sym_use_declaration] = STATE(4), + [sym_extern_type_statement] = STATE(4), + [sym_extern_function_statement] = STATE(4), + [sym_attribute_item] = STATE(4), + [sym_mod_item] = STATE(4), + [sym_struct_item] = STATE(4), + [sym_enum_item] = STATE(4), + [sym_const_item] = STATE(4), + [sym_type_item] = STATE(4), + [sym_block] = STATE(127), + [sym__cairo_1_function_definition] = STATE(318), + [sym__cairo_1_function_signature] = STATE(316), + [sym_impl_item] = STATE(4), + [sym_trait_item] = STATE(4), + [sym_let_declaration] = STATE(4), + [sym__cairo_1_generic_function] = STATE(132), + [sym_generic_type_with_turbofish] = STATE(1828), + [sym__cairo_1_expression_statement] = STATE(4), + [sym__cairo_1_expression] = STATE(157), + [sym__cairo_1_return_expression] = STATE(127), + [sym__cairo_1_if_expression] = STATE(137), + [sym_match_expression] = STATE(127), + [sym__cairo_1_loop_expression] = STATE(138), + [sym__cairo_1_at_expression] = STATE(127), + [sym__cairo_1_unary_expression] = STATE(127), + [sym__cairo_1_binary_expression] = STATE(140), + [sym__cairo_1_assignment_expression] = STATE(141), + [sym__cairo_1_compound_assignment_expression] = STATE(142), + [sym__cairo_1_try_expression] = STATE(127), + [sym__cairo_1_call_expression] = STATE(143), + [sym__cairo_1_index_expression] = STATE(127), + [sym__cairo_1_field_expression] = STATE(159), + [sym__cairo_1_parenthesized_expression] = STATE(127), + [sym__cairo_1_tuple_expression] = STATE(127), + [sym__cairo_1_unit_expression] = STATE(127), + [sym__cairo_1_struct_expression] = STATE(161), + [sym__literal] = STATE(127), + [sym_scoped_identifier] = STATE(164), + [sym_boolean] = STATE(127), + [aux_sym_block_repeat1] = STATE(4), + [sym_identifier] = ACTIONS(93), + [anon_sym_LPAREN] = ACTIONS(95), + [anon_sym_AT] = ACTIONS(99), + [anon_sym_LBRACE] = ACTIONS(101), + [anon_sym_RBRACE] = ACTIONS(201), + [anon_sym_struct] = ACTIONS(159), + [anon_sym_let] = ACTIONS(161), + [anon_sym_const] = ACTIONS(163), + [anon_sym_if] = ACTIONS(105), + [anon_sym_return] = ACTIONS(107), + [anon_sym_STAR] = ACTIONS(121), + [anon_sym_DASH] = ACTIONS(109), + [sym_number] = ACTIONS(111), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(165), + [anon_sym_extern] = ACTIONS(167), + [anon_sym_type] = ACTIONS(169), + [anon_sym_COLON_COLON] = ACTIONS(113), + [anon_sym_fn] = ACTIONS(171), + [anon_sym_POUND] = ACTIONS(173), + [anon_sym_mod] = ACTIONS(175), + [anon_sym_enum] = ACTIONS(177), + [anon_sym_impl] = ACTIONS(179), + [anon_sym_trait] = ACTIONS(181), + [anon_sym_u8] = ACTIONS(115), + [anon_sym_i8] = ACTIONS(115), + [anon_sym_u16] = ACTIONS(115), + [anon_sym_i16] = ACTIONS(115), + [anon_sym_u32] = ACTIONS(115), + [anon_sym_i32] = ACTIONS(115), + [anon_sym_u64] = ACTIONS(115), + [anon_sym_i64] = ACTIONS(115), + [anon_sym_u128] = ACTIONS(115), + [anon_sym_i128] = ACTIONS(115), + [anon_sym_u256] = ACTIONS(115), + [anon_sym_i256] = ACTIONS(115), + [anon_sym_isize] = ACTIONS(115), + [anon_sym_usize] = ACTIONS(115), + [anon_sym_f32] = ACTIONS(115), + [anon_sym_f64] = ACTIONS(115), + [anon_sym_felt252] = ACTIONS(115), + [anon_sym_bool] = ACTIONS(115), + [anon_sym_str] = ACTIONS(115), + [anon_sym_char] = ACTIONS(115), + [anon_sym_match] = ACTIONS(117), + [anon_sym_loop] = ACTIONS(119), + [anon_sym_BANG] = ACTIONS(121), + [anon_sym_TILDE] = ACTIONS(121), + [sym__cairo_1_short_string] = ACTIONS(111), + [anon_sym_true] = ACTIONS(123), + [anon_sym_false] = ACTIONS(123), + [sym_self] = ACTIONS(125), + }, + [10] = { + [sym__cairo_1_statement] = STATE(11), + [sym_use_declaration] = STATE(11), + [sym_extern_type_statement] = STATE(11), + [sym_extern_function_statement] = STATE(11), + [sym_attribute_item] = STATE(11), + [sym_mod_item] = STATE(11), + [sym_struct_item] = STATE(11), + [sym_enum_item] = STATE(11), + [sym_const_item] = STATE(11), + [sym_type_item] = STATE(11), + [sym_block] = STATE(127), + [sym__cairo_1_function_definition] = STATE(318), + [sym__cairo_1_function_signature] = STATE(316), + [sym_impl_item] = STATE(11), + [sym_trait_item] = STATE(11), + [sym_let_declaration] = STATE(11), + [sym__cairo_1_generic_function] = STATE(132), + [sym_generic_type_with_turbofish] = STATE(1828), + [sym__cairo_1_expression_statement] = STATE(11), + [sym__cairo_1_expression] = STATE(157), + [sym__cairo_1_return_expression] = STATE(127), + [sym__cairo_1_if_expression] = STATE(137), + [sym_match_expression] = STATE(127), + [sym__cairo_1_loop_expression] = STATE(138), + [sym__cairo_1_at_expression] = STATE(127), + [sym__cairo_1_unary_expression] = STATE(127), + [sym__cairo_1_binary_expression] = STATE(140), + [sym__cairo_1_assignment_expression] = STATE(141), + [sym__cairo_1_compound_assignment_expression] = STATE(142), + [sym__cairo_1_try_expression] = STATE(127), + [sym__cairo_1_call_expression] = STATE(143), + [sym__cairo_1_index_expression] = STATE(127), + [sym__cairo_1_field_expression] = STATE(159), + [sym__cairo_1_parenthesized_expression] = STATE(127), + [sym__cairo_1_tuple_expression] = STATE(127), + [sym__cairo_1_unit_expression] = STATE(127), + [sym__cairo_1_struct_expression] = STATE(161), + [sym__literal] = STATE(127), + [sym_scoped_identifier] = STATE(164), + [sym_boolean] = STATE(127), + [aux_sym_block_repeat1] = STATE(11), + [sym_identifier] = ACTIONS(93), + [anon_sym_LPAREN] = ACTIONS(95), + [anon_sym_AT] = ACTIONS(99), + [anon_sym_LBRACE] = ACTIONS(101), + [anon_sym_RBRACE] = ACTIONS(203), + [anon_sym_struct] = ACTIONS(159), + [anon_sym_let] = ACTIONS(161), + [anon_sym_const] = ACTIONS(163), + [anon_sym_if] = ACTIONS(105), + [anon_sym_return] = ACTIONS(107), + [anon_sym_STAR] = ACTIONS(121), + [anon_sym_DASH] = ACTIONS(109), + [sym_number] = ACTIONS(111), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(165), + [anon_sym_extern] = ACTIONS(167), + [anon_sym_type] = ACTIONS(169), + [anon_sym_COLON_COLON] = ACTIONS(113), + [anon_sym_fn] = ACTIONS(171), + [anon_sym_POUND] = ACTIONS(173), + [anon_sym_mod] = ACTIONS(175), + [anon_sym_enum] = ACTIONS(177), + [anon_sym_impl] = ACTIONS(179), + [anon_sym_trait] = ACTIONS(181), + [anon_sym_u8] = ACTIONS(115), + [anon_sym_i8] = ACTIONS(115), + [anon_sym_u16] = ACTIONS(115), + [anon_sym_i16] = ACTIONS(115), + [anon_sym_u32] = ACTIONS(115), + [anon_sym_i32] = ACTIONS(115), + [anon_sym_u64] = ACTIONS(115), + [anon_sym_i64] = ACTIONS(115), + [anon_sym_u128] = ACTIONS(115), + [anon_sym_i128] = ACTIONS(115), + [anon_sym_u256] = ACTIONS(115), + [anon_sym_i256] = ACTIONS(115), + [anon_sym_isize] = ACTIONS(115), + [anon_sym_usize] = ACTIONS(115), + [anon_sym_f32] = ACTIONS(115), + [anon_sym_f64] = ACTIONS(115), + [anon_sym_felt252] = ACTIONS(115), + [anon_sym_bool] = ACTIONS(115), + [anon_sym_str] = ACTIONS(115), + [anon_sym_char] = ACTIONS(115), + [anon_sym_match] = ACTIONS(117), + [anon_sym_loop] = ACTIONS(119), + [anon_sym_BANG] = ACTIONS(121), + [anon_sym_TILDE] = ACTIONS(121), + [sym__cairo_1_short_string] = ACTIONS(111), + [anon_sym_true] = ACTIONS(123), + [anon_sym_false] = ACTIONS(123), + [sym_self] = ACTIONS(125), + }, + [11] = { + [sym__cairo_1_statement] = STATE(11), + [sym_use_declaration] = STATE(11), + [sym_extern_type_statement] = STATE(11), + [sym_extern_function_statement] = STATE(11), + [sym_attribute_item] = STATE(11), + [sym_mod_item] = STATE(11), + [sym_struct_item] = STATE(11), + [sym_enum_item] = STATE(11), + [sym_const_item] = STATE(11), + [sym_type_item] = STATE(11), + [sym_block] = STATE(127), + [sym__cairo_1_function_definition] = STATE(318), + [sym__cairo_1_function_signature] = STATE(316), + [sym_impl_item] = STATE(11), + [sym_trait_item] = STATE(11), + [sym_let_declaration] = STATE(11), + [sym__cairo_1_generic_function] = STATE(132), + [sym_generic_type_with_turbofish] = STATE(1828), + [sym__cairo_1_expression_statement] = STATE(11), + [sym__cairo_1_expression] = STATE(157), + [sym__cairo_1_return_expression] = STATE(127), + [sym__cairo_1_if_expression] = STATE(137), + [sym_match_expression] = STATE(127), + [sym__cairo_1_loop_expression] = STATE(138), + [sym__cairo_1_at_expression] = STATE(127), + [sym__cairo_1_unary_expression] = STATE(127), + [sym__cairo_1_binary_expression] = STATE(140), + [sym__cairo_1_assignment_expression] = STATE(141), + [sym__cairo_1_compound_assignment_expression] = STATE(142), + [sym__cairo_1_try_expression] = STATE(127), + [sym__cairo_1_call_expression] = STATE(143), + [sym__cairo_1_index_expression] = STATE(127), + [sym__cairo_1_field_expression] = STATE(159), + [sym__cairo_1_parenthesized_expression] = STATE(127), + [sym__cairo_1_tuple_expression] = STATE(127), + [sym__cairo_1_unit_expression] = STATE(127), + [sym__cairo_1_struct_expression] = STATE(161), + [sym__literal] = STATE(127), + [sym_scoped_identifier] = STATE(164), + [sym_boolean] = STATE(127), + [aux_sym_block_repeat1] = STATE(11), + [sym_identifier] = ACTIONS(205), + [anon_sym_LPAREN] = ACTIONS(208), + [anon_sym_AT] = ACTIONS(211), + [anon_sym_LBRACE] = ACTIONS(214), + [anon_sym_RBRACE] = ACTIONS(217), + [anon_sym_struct] = ACTIONS(219), + [anon_sym_let] = ACTIONS(222), + [anon_sym_const] = ACTIONS(225), + [anon_sym_if] = ACTIONS(228), + [anon_sym_return] = ACTIONS(231), + [anon_sym_STAR] = ACTIONS(234), + [anon_sym_DASH] = ACTIONS(237), + [sym_number] = ACTIONS(240), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(243), + [anon_sym_extern] = ACTIONS(246), + [anon_sym_type] = ACTIONS(249), + [anon_sym_COLON_COLON] = ACTIONS(252), + [anon_sym_fn] = ACTIONS(255), + [anon_sym_POUND] = ACTIONS(258), + [anon_sym_mod] = ACTIONS(261), + [anon_sym_enum] = ACTIONS(264), + [anon_sym_impl] = ACTIONS(267), + [anon_sym_trait] = ACTIONS(270), + [anon_sym_u8] = ACTIONS(273), + [anon_sym_i8] = ACTIONS(273), + [anon_sym_u16] = ACTIONS(273), + [anon_sym_i16] = ACTIONS(273), + [anon_sym_u32] = ACTIONS(273), + [anon_sym_i32] = ACTIONS(273), + [anon_sym_u64] = ACTIONS(273), + [anon_sym_i64] = ACTIONS(273), + [anon_sym_u128] = ACTIONS(273), + [anon_sym_i128] = ACTIONS(273), + [anon_sym_u256] = ACTIONS(273), + [anon_sym_i256] = ACTIONS(273), + [anon_sym_isize] = ACTIONS(273), + [anon_sym_usize] = ACTIONS(273), + [anon_sym_f32] = ACTIONS(273), + [anon_sym_f64] = ACTIONS(273), + [anon_sym_felt252] = ACTIONS(273), + [anon_sym_bool] = ACTIONS(273), + [anon_sym_str] = ACTIONS(273), + [anon_sym_char] = ACTIONS(273), + [anon_sym_match] = ACTIONS(276), + [anon_sym_loop] = ACTIONS(279), + [anon_sym_BANG] = ACTIONS(234), + [anon_sym_TILDE] = ACTIONS(234), + [sym__cairo_1_short_string] = ACTIONS(240), + [anon_sym_true] = ACTIONS(282), + [anon_sym_false] = ACTIONS(282), + [sym_self] = ACTIONS(285), + }, + [12] = { + [sym__cairo_1_statement] = STATE(15), + [sym_use_declaration] = STATE(15), + [sym_extern_type_statement] = STATE(15), + [sym_extern_function_statement] = STATE(15), + [sym_attribute_item] = STATE(15), + [sym_mod_item] = STATE(15), + [sym_struct_item] = STATE(15), + [sym_enum_item] = STATE(15), + [sym_const_item] = STATE(15), + [sym_type_item] = STATE(15), + [sym_block] = STATE(127), + [sym__cairo_1_function_definition] = STATE(318), + [sym__cairo_1_function_signature] = STATE(316), + [sym_impl_item] = STATE(15), + [sym_trait_item] = STATE(15), + [sym_let_declaration] = STATE(15), + [sym__cairo_1_generic_function] = STATE(132), + [sym_generic_type_with_turbofish] = STATE(1828), + [sym__cairo_1_expression_statement] = STATE(15), + [sym__cairo_1_expression] = STATE(157), + [sym__cairo_1_return_expression] = STATE(127), + [sym__cairo_1_if_expression] = STATE(137), + [sym_match_expression] = STATE(127), + [sym__cairo_1_loop_expression] = STATE(138), + [sym__cairo_1_at_expression] = STATE(127), + [sym__cairo_1_unary_expression] = STATE(127), + [sym__cairo_1_binary_expression] = STATE(140), + [sym__cairo_1_assignment_expression] = STATE(141), + [sym__cairo_1_compound_assignment_expression] = STATE(142), + [sym__cairo_1_try_expression] = STATE(127), + [sym__cairo_1_call_expression] = STATE(143), + [sym__cairo_1_index_expression] = STATE(127), + [sym__cairo_1_field_expression] = STATE(159), + [sym__cairo_1_parenthesized_expression] = STATE(127), + [sym__cairo_1_tuple_expression] = STATE(127), + [sym__cairo_1_unit_expression] = STATE(127), + [sym__cairo_1_struct_expression] = STATE(161), + [sym__literal] = STATE(127), + [sym_scoped_identifier] = STATE(164), + [sym_boolean] = STATE(127), + [aux_sym_block_repeat1] = STATE(15), + [sym_identifier] = ACTIONS(93), + [anon_sym_LPAREN] = ACTIONS(95), + [anon_sym_AT] = ACTIONS(99), + [anon_sym_LBRACE] = ACTIONS(101), + [anon_sym_RBRACE] = ACTIONS(288), + [anon_sym_struct] = ACTIONS(159), + [anon_sym_let] = ACTIONS(161), + [anon_sym_const] = ACTIONS(163), + [anon_sym_if] = ACTIONS(105), + [anon_sym_return] = ACTIONS(107), + [anon_sym_STAR] = ACTIONS(121), + [anon_sym_DASH] = ACTIONS(109), + [sym_number] = ACTIONS(111), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(165), + [anon_sym_extern] = ACTIONS(167), + [anon_sym_type] = ACTIONS(169), + [anon_sym_COLON_COLON] = ACTIONS(113), + [anon_sym_fn] = ACTIONS(171), + [anon_sym_POUND] = ACTIONS(173), + [anon_sym_mod] = ACTIONS(175), + [anon_sym_enum] = ACTIONS(177), + [anon_sym_impl] = ACTIONS(179), + [anon_sym_trait] = ACTIONS(181), + [anon_sym_u8] = ACTIONS(115), + [anon_sym_i8] = ACTIONS(115), + [anon_sym_u16] = ACTIONS(115), + [anon_sym_i16] = ACTIONS(115), + [anon_sym_u32] = ACTIONS(115), + [anon_sym_i32] = ACTIONS(115), + [anon_sym_u64] = ACTIONS(115), + [anon_sym_i64] = ACTIONS(115), + [anon_sym_u128] = ACTIONS(115), + [anon_sym_i128] = ACTIONS(115), + [anon_sym_u256] = ACTIONS(115), + [anon_sym_i256] = ACTIONS(115), + [anon_sym_isize] = ACTIONS(115), + [anon_sym_usize] = ACTIONS(115), + [anon_sym_f32] = ACTIONS(115), + [anon_sym_f64] = ACTIONS(115), + [anon_sym_felt252] = ACTIONS(115), + [anon_sym_bool] = ACTIONS(115), + [anon_sym_str] = ACTIONS(115), + [anon_sym_char] = ACTIONS(115), + [anon_sym_match] = ACTIONS(117), + [anon_sym_loop] = ACTIONS(119), + [anon_sym_BANG] = ACTIONS(121), + [anon_sym_TILDE] = ACTIONS(121), + [sym__cairo_1_short_string] = ACTIONS(111), + [anon_sym_true] = ACTIONS(123), + [anon_sym_false] = ACTIONS(123), + [sym_self] = ACTIONS(125), + }, + [13] = { + [sym__cairo_1_statement] = STATE(14), + [sym_use_declaration] = STATE(14), + [sym_extern_type_statement] = STATE(14), + [sym_extern_function_statement] = STATE(14), + [sym_attribute_item] = STATE(14), + [sym_mod_item] = STATE(14), + [sym_struct_item] = STATE(14), + [sym_enum_item] = STATE(14), + [sym_const_item] = STATE(14), + [sym_type_item] = STATE(14), + [sym_block] = STATE(127), + [sym__cairo_1_function_definition] = STATE(318), + [sym__cairo_1_function_signature] = STATE(316), + [sym_impl_item] = STATE(14), + [sym_trait_item] = STATE(14), + [sym_let_declaration] = STATE(14), + [sym__cairo_1_generic_function] = STATE(132), + [sym_generic_type_with_turbofish] = STATE(1828), + [sym__cairo_1_expression_statement] = STATE(14), + [sym__cairo_1_expression] = STATE(157), + [sym__cairo_1_return_expression] = STATE(127), + [sym__cairo_1_if_expression] = STATE(137), + [sym_match_expression] = STATE(127), + [sym__cairo_1_loop_expression] = STATE(138), + [sym__cairo_1_at_expression] = STATE(127), + [sym__cairo_1_unary_expression] = STATE(127), + [sym__cairo_1_binary_expression] = STATE(140), + [sym__cairo_1_assignment_expression] = STATE(141), + [sym__cairo_1_compound_assignment_expression] = STATE(142), + [sym__cairo_1_try_expression] = STATE(127), + [sym__cairo_1_call_expression] = STATE(143), + [sym__cairo_1_index_expression] = STATE(127), + [sym__cairo_1_field_expression] = STATE(159), + [sym__cairo_1_parenthesized_expression] = STATE(127), + [sym__cairo_1_tuple_expression] = STATE(127), + [sym__cairo_1_unit_expression] = STATE(127), + [sym__cairo_1_struct_expression] = STATE(161), + [sym__literal] = STATE(127), + [sym_scoped_identifier] = STATE(164), + [sym_boolean] = STATE(127), + [aux_sym_block_repeat1] = STATE(14), + [sym_identifier] = ACTIONS(93), + [anon_sym_LPAREN] = ACTIONS(95), + [anon_sym_AT] = ACTIONS(99), + [anon_sym_LBRACE] = ACTIONS(101), + [anon_sym_RBRACE] = ACTIONS(290), + [anon_sym_struct] = ACTIONS(159), + [anon_sym_let] = ACTIONS(161), + [anon_sym_const] = ACTIONS(163), + [anon_sym_if] = ACTIONS(105), + [anon_sym_return] = ACTIONS(107), + [anon_sym_STAR] = ACTIONS(121), + [anon_sym_DASH] = ACTIONS(109), + [sym_number] = ACTIONS(111), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(165), + [anon_sym_extern] = ACTIONS(167), + [anon_sym_type] = ACTIONS(169), + [anon_sym_COLON_COLON] = ACTIONS(113), + [anon_sym_fn] = ACTIONS(171), + [anon_sym_POUND] = ACTIONS(173), + [anon_sym_mod] = ACTIONS(175), + [anon_sym_enum] = ACTIONS(177), + [anon_sym_impl] = ACTIONS(179), + [anon_sym_trait] = ACTIONS(181), + [anon_sym_u8] = ACTIONS(115), + [anon_sym_i8] = ACTIONS(115), + [anon_sym_u16] = ACTIONS(115), + [anon_sym_i16] = ACTIONS(115), + [anon_sym_u32] = ACTIONS(115), + [anon_sym_i32] = ACTIONS(115), + [anon_sym_u64] = ACTIONS(115), + [anon_sym_i64] = ACTIONS(115), + [anon_sym_u128] = ACTIONS(115), + [anon_sym_i128] = ACTIONS(115), + [anon_sym_u256] = ACTIONS(115), + [anon_sym_i256] = ACTIONS(115), + [anon_sym_isize] = ACTIONS(115), + [anon_sym_usize] = ACTIONS(115), + [anon_sym_f32] = ACTIONS(115), + [anon_sym_f64] = ACTIONS(115), + [anon_sym_felt252] = ACTIONS(115), + [anon_sym_bool] = ACTIONS(115), + [anon_sym_str] = ACTIONS(115), + [anon_sym_char] = ACTIONS(115), + [anon_sym_match] = ACTIONS(117), + [anon_sym_loop] = ACTIONS(119), + [anon_sym_BANG] = ACTIONS(121), + [anon_sym_TILDE] = ACTIONS(121), + [sym__cairo_1_short_string] = ACTIONS(111), + [anon_sym_true] = ACTIONS(123), + [anon_sym_false] = ACTIONS(123), + [sym_self] = ACTIONS(125), + }, + [14] = { + [sym__cairo_1_statement] = STATE(11), + [sym_use_declaration] = STATE(11), + [sym_extern_type_statement] = STATE(11), + [sym_extern_function_statement] = STATE(11), + [sym_attribute_item] = STATE(11), + [sym_mod_item] = STATE(11), + [sym_struct_item] = STATE(11), + [sym_enum_item] = STATE(11), + [sym_const_item] = STATE(11), + [sym_type_item] = STATE(11), + [sym_block] = STATE(127), + [sym__cairo_1_function_definition] = STATE(318), + [sym__cairo_1_function_signature] = STATE(316), + [sym_impl_item] = STATE(11), + [sym_trait_item] = STATE(11), + [sym_let_declaration] = STATE(11), + [sym__cairo_1_generic_function] = STATE(132), + [sym_generic_type_with_turbofish] = STATE(1828), + [sym__cairo_1_expression_statement] = STATE(11), + [sym__cairo_1_expression] = STATE(157), + [sym__cairo_1_return_expression] = STATE(127), + [sym__cairo_1_if_expression] = STATE(137), + [sym_match_expression] = STATE(127), + [sym__cairo_1_loop_expression] = STATE(138), + [sym__cairo_1_at_expression] = STATE(127), + [sym__cairo_1_unary_expression] = STATE(127), + [sym__cairo_1_binary_expression] = STATE(140), + [sym__cairo_1_assignment_expression] = STATE(141), + [sym__cairo_1_compound_assignment_expression] = STATE(142), + [sym__cairo_1_try_expression] = STATE(127), + [sym__cairo_1_call_expression] = STATE(143), + [sym__cairo_1_index_expression] = STATE(127), + [sym__cairo_1_field_expression] = STATE(159), + [sym__cairo_1_parenthesized_expression] = STATE(127), + [sym__cairo_1_tuple_expression] = STATE(127), + [sym__cairo_1_unit_expression] = STATE(127), + [sym__cairo_1_struct_expression] = STATE(161), + [sym__literal] = STATE(127), + [sym_scoped_identifier] = STATE(164), + [sym_boolean] = STATE(127), + [aux_sym_block_repeat1] = STATE(11), + [sym_identifier] = ACTIONS(93), + [anon_sym_LPAREN] = ACTIONS(95), + [anon_sym_AT] = ACTIONS(99), + [anon_sym_LBRACE] = ACTIONS(101), + [anon_sym_RBRACE] = ACTIONS(292), + [anon_sym_struct] = ACTIONS(159), + [anon_sym_let] = ACTIONS(161), + [anon_sym_const] = ACTIONS(163), + [anon_sym_if] = ACTIONS(105), + [anon_sym_return] = ACTIONS(107), + [anon_sym_STAR] = ACTIONS(121), + [anon_sym_DASH] = ACTIONS(109), + [sym_number] = ACTIONS(111), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(165), + [anon_sym_extern] = ACTIONS(167), + [anon_sym_type] = ACTIONS(169), + [anon_sym_COLON_COLON] = ACTIONS(113), + [anon_sym_fn] = ACTIONS(171), + [anon_sym_POUND] = ACTIONS(173), + [anon_sym_mod] = ACTIONS(175), + [anon_sym_enum] = ACTIONS(177), + [anon_sym_impl] = ACTIONS(179), + [anon_sym_trait] = ACTIONS(181), + [anon_sym_u8] = ACTIONS(115), + [anon_sym_i8] = ACTIONS(115), + [anon_sym_u16] = ACTIONS(115), + [anon_sym_i16] = ACTIONS(115), + [anon_sym_u32] = ACTIONS(115), + [anon_sym_i32] = ACTIONS(115), + [anon_sym_u64] = ACTIONS(115), + [anon_sym_i64] = ACTIONS(115), + [anon_sym_u128] = ACTIONS(115), + [anon_sym_i128] = ACTIONS(115), + [anon_sym_u256] = ACTIONS(115), + [anon_sym_i256] = ACTIONS(115), + [anon_sym_isize] = ACTIONS(115), + [anon_sym_usize] = ACTIONS(115), + [anon_sym_f32] = ACTIONS(115), + [anon_sym_f64] = ACTIONS(115), + [anon_sym_felt252] = ACTIONS(115), + [anon_sym_bool] = ACTIONS(115), + [anon_sym_str] = ACTIONS(115), + [anon_sym_char] = ACTIONS(115), + [anon_sym_match] = ACTIONS(117), + [anon_sym_loop] = ACTIONS(119), + [anon_sym_BANG] = ACTIONS(121), + [anon_sym_TILDE] = ACTIONS(121), + [sym__cairo_1_short_string] = ACTIONS(111), + [anon_sym_true] = ACTIONS(123), + [anon_sym_false] = ACTIONS(123), + [sym_self] = ACTIONS(125), + }, + [15] = { + [sym__cairo_1_statement] = STATE(11), + [sym_use_declaration] = STATE(11), + [sym_extern_type_statement] = STATE(11), + [sym_extern_function_statement] = STATE(11), + [sym_attribute_item] = STATE(11), + [sym_mod_item] = STATE(11), + [sym_struct_item] = STATE(11), + [sym_enum_item] = STATE(11), + [sym_const_item] = STATE(11), + [sym_type_item] = STATE(11), + [sym_block] = STATE(127), + [sym__cairo_1_function_definition] = STATE(318), + [sym__cairo_1_function_signature] = STATE(316), + [sym_impl_item] = STATE(11), + [sym_trait_item] = STATE(11), + [sym_let_declaration] = STATE(11), + [sym__cairo_1_generic_function] = STATE(132), + [sym_generic_type_with_turbofish] = STATE(1828), + [sym__cairo_1_expression_statement] = STATE(11), + [sym__cairo_1_expression] = STATE(157), + [sym__cairo_1_return_expression] = STATE(127), + [sym__cairo_1_if_expression] = STATE(137), + [sym_match_expression] = STATE(127), + [sym__cairo_1_loop_expression] = STATE(138), + [sym__cairo_1_at_expression] = STATE(127), + [sym__cairo_1_unary_expression] = STATE(127), + [sym__cairo_1_binary_expression] = STATE(140), + [sym__cairo_1_assignment_expression] = STATE(141), + [sym__cairo_1_compound_assignment_expression] = STATE(142), + [sym__cairo_1_try_expression] = STATE(127), + [sym__cairo_1_call_expression] = STATE(143), + [sym__cairo_1_index_expression] = STATE(127), + [sym__cairo_1_field_expression] = STATE(159), + [sym__cairo_1_parenthesized_expression] = STATE(127), + [sym__cairo_1_tuple_expression] = STATE(127), + [sym__cairo_1_unit_expression] = STATE(127), + [sym__cairo_1_struct_expression] = STATE(161), + [sym__literal] = STATE(127), + [sym_scoped_identifier] = STATE(164), + [sym_boolean] = STATE(127), + [aux_sym_block_repeat1] = STATE(11), + [sym_identifier] = ACTIONS(93), + [anon_sym_LPAREN] = ACTIONS(95), + [anon_sym_AT] = ACTIONS(99), + [anon_sym_LBRACE] = ACTIONS(101), + [anon_sym_RBRACE] = ACTIONS(294), + [anon_sym_struct] = ACTIONS(159), + [anon_sym_let] = ACTIONS(161), + [anon_sym_const] = ACTIONS(163), + [anon_sym_if] = ACTIONS(105), + [anon_sym_return] = ACTIONS(107), + [anon_sym_STAR] = ACTIONS(121), + [anon_sym_DASH] = ACTIONS(109), + [sym_number] = ACTIONS(111), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(165), + [anon_sym_extern] = ACTIONS(167), + [anon_sym_type] = ACTIONS(169), + [anon_sym_COLON_COLON] = ACTIONS(113), + [anon_sym_fn] = ACTIONS(171), + [anon_sym_POUND] = ACTIONS(173), + [anon_sym_mod] = ACTIONS(175), + [anon_sym_enum] = ACTIONS(177), + [anon_sym_impl] = ACTIONS(179), + [anon_sym_trait] = ACTIONS(181), + [anon_sym_u8] = ACTIONS(115), + [anon_sym_i8] = ACTIONS(115), + [anon_sym_u16] = ACTIONS(115), + [anon_sym_i16] = ACTIONS(115), + [anon_sym_u32] = ACTIONS(115), + [anon_sym_i32] = ACTIONS(115), + [anon_sym_u64] = ACTIONS(115), + [anon_sym_i64] = ACTIONS(115), + [anon_sym_u128] = ACTIONS(115), + [anon_sym_i128] = ACTIONS(115), + [anon_sym_u256] = ACTIONS(115), + [anon_sym_i256] = ACTIONS(115), + [anon_sym_isize] = ACTIONS(115), + [anon_sym_usize] = ACTIONS(115), + [anon_sym_f32] = ACTIONS(115), + [anon_sym_f64] = ACTIONS(115), + [anon_sym_felt252] = ACTIONS(115), + [anon_sym_bool] = ACTIONS(115), + [anon_sym_str] = ACTIONS(115), + [anon_sym_char] = ACTIONS(115), + [anon_sym_match] = ACTIONS(117), + [anon_sym_loop] = ACTIONS(119), + [anon_sym_BANG] = ACTIONS(121), + [anon_sym_TILDE] = ACTIONS(121), + [sym__cairo_1_short_string] = ACTIONS(111), + [anon_sym_true] = ACTIONS(123), + [anon_sym_false] = ACTIONS(123), + [sym_self] = ACTIONS(125), + }, + [16] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(296), + [anon_sym_from] = ACTIONS(299), + [anon_sym_LPAREN] = ACTIONS(302), + [anon_sym_using] = ACTIONS(305), + [anon_sym_PERCENTbuiltins] = ACTIONS(308), + [anon_sym_PERCENTlang] = ACTIONS(311), + [anon_sym_AT] = ACTIONS(314), + [anon_sym_namespace] = ACTIONS(317), + [anon_sym_RBRACE] = ACTIONS(320), + [anon_sym_struct] = ACTIONS(322), + [anon_sym_func] = ACTIONS(325), + [anon_sym_end] = ACTIONS(328), + [anon_sym_alloc_locals] = ACTIONS(330), + [anon_sym_assert] = ACTIONS(333), + [anon_sym_static_assert] = ACTIONS(336), + [anon_sym_let] = ACTIONS(339), + [anon_sym_const] = ACTIONS(342), + [anon_sym_local] = ACTIONS(345), + [anon_sym_tempvar] = ACTIONS(348), + [anon_sym_ap] = ACTIONS(351), + [anon_sym_jmp] = ACTIONS(354), + [anon_sym_if] = ACTIONS(357), + [sym_inst_ret] = ACTIONS(360), + [anon_sym_dw] = ACTIONS(363), + [anon_sym_with_attr] = ACTIONS(366), + [anon_sym_with] = ACTIONS(369), + [anon_sym_return] = ACTIONS(372), + [anon_sym_AMP] = ACTIONS(375), + [anon_sym_DASH] = ACTIONS(378), + [anon_sym_new] = ACTIONS(378), + [sym_short_string] = ACTIONS(381), + [anon_sym_nondet] = ACTIONS(384), + [anon_sym_PERCENT_LBRACE] = ACTIONS(387), + [anon_sym_fp] = ACTIONS(390), + [anon_sym_LBRACK] = ACTIONS(393), + [anon_sym_cast] = ACTIONS(396), + [anon_sym_call] = ACTIONS(399), + [sym_number] = ACTIONS(381), + [sym_comment] = ACTIONS(3), + }, + [17] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(414), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [18] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(448), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [19] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(450), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [20] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_end] = ACTIONS(452), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [21] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(454), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [22] = { + [sym__cairo_0_statement] = STATE(61), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(61), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_end] = ACTIONS(456), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [23] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(458), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [24] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(460), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [25] = { + [sym__cairo_0_statement] = STATE(75), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(75), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(462), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [26] = { + [sym__cairo_0_statement] = STATE(77), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(77), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(464), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [27] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(464), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [28] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_end] = ACTIONS(466), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [29] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(468), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [30] = { + [sym__cairo_0_statement] = STATE(35), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(35), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(470), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [31] = { + [sym__cairo_0_statement] = STATE(28), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(28), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_end] = ACTIONS(472), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [32] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(474), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [33] = { + [sym__cairo_0_statement] = STATE(21), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(21), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(476), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [34] = { + [sym__cairo_0_statement] = STATE(24), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(24), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(478), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [35] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(476), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [36] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(480), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [37] = { + [sym__cairo_0_statement] = STATE(29), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(29), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(482), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [38] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_end] = ACTIONS(484), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [39] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(486), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [40] = { + [sym__cairo_0_statement] = STATE(27), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(27), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(488), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [41] = { + [sym__cairo_0_statement] = STATE(45), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(45), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(490), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [42] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_end] = ACTIONS(492), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [8] = { - [sym_cairo_0_statement] = STATE(52), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(52), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [43] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(129), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(494), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [9] = { - [sym_cairo_0_statement] = STATE(31), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(31), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [44] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(131), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(496), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [10] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [45] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(133), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(498), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [11] = { - [sym_cairo_0_statement] = STATE(5), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(5), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [46] = { + [sym__cairo_0_statement] = STATE(38), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(38), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(135), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_end] = ACTIONS(500), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [12] = { - [sym_cairo_0_statement] = STATE(12), - [sym_import_statement] = STATE(126), - [sym_type_definition] = STATE(126), - [sym_builtin_directive] = STATE(126), - [sym_lang_directive] = STATE(126), - [sym_decorated_definition] = STATE(126), - [sym_decorator] = STATE(305), - [sym_namespace_definition] = STATE(126), - [sym_struct_definition] = STATE(126), - [sym_function_definition] = STATE(126), - [sym_expression_statement] = STATE(126), - [sym_alloc_locals] = STATE(126), - [sym_assert_statement] = STATE(126), - [sym_static_assert_statement] = STATE(126), - [sym_let_binding] = STATE(126), - [sym_const_var_declaration] = STATE(126), - [sym_local_var_declaration] = STATE(126), - [sym_temp_var_declaration] = STATE(126), - [sym_instruction] = STATE(126), - [sym_inst_assert_eq] = STATE(437), - [sym_inst_jmp_rel] = STATE(437), - [sym_inst_jmp_abs] = STATE(437), - [sym_inst_jmp_to_label] = STATE(437), - [sym_inst_jnz] = STATE(437), - [sym_inst_jnz_to_label] = STATE(437), - [sym_inst_add_ap] = STATE(437), - [sym_inst_data_word] = STATE(437), - [sym_label] = STATE(126), - [sym_attribute_statement] = STATE(126), - [sym_if_statement] = STATE(126), - [sym_with_statement] = STATE(126), - [sym_return_statement] = STATE(126), - [sym_expression] = STATE(291), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(437), - [aux_sym_program_repeat1] = STATE(12), - [aux_sym_decorated_definition_repeat1] = STATE(305), - [ts_builtin_sym_end] = ACTIONS(137), - [sym_identifier] = ACTIONS(139), - [anon_sym_from] = ACTIONS(142), - [anon_sym_LPAREN] = ACTIONS(145), - [anon_sym_using] = ACTIONS(148), - [anon_sym_PERCENTbuiltins] = ACTIONS(151), - [anon_sym_PERCENTlang] = ACTIONS(154), - [anon_sym_AT] = ACTIONS(157), - [anon_sym_namespace] = ACTIONS(160), - [anon_sym_struct] = ACTIONS(163), - [anon_sym_func] = ACTIONS(166), - [anon_sym_alloc_locals] = ACTIONS(169), - [anon_sym_assert] = ACTIONS(172), - [anon_sym_static_assert] = ACTIONS(175), - [anon_sym_let] = ACTIONS(178), - [anon_sym_const] = ACTIONS(181), - [anon_sym_local] = ACTIONS(184), - [anon_sym_tempvar] = ACTIONS(187), - [anon_sym_ap] = ACTIONS(190), - [anon_sym_jmp] = ACTIONS(193), - [anon_sym_if] = ACTIONS(196), - [sym_inst_ret] = ACTIONS(199), - [anon_sym_dw] = ACTIONS(202), - [anon_sym_with_attr] = ACTIONS(205), - [anon_sym_with] = ACTIONS(208), - [anon_sym_return] = ACTIONS(211), - [anon_sym_AMP] = ACTIONS(214), - [anon_sym_DASH] = ACTIONS(214), - [anon_sym_new] = ACTIONS(217), - [sym_short_string] = ACTIONS(220), - [anon_sym_nondet] = ACTIONS(223), - [anon_sym_fp] = ACTIONS(226), - [anon_sym_LBRACK] = ACTIONS(229), - [anon_sym_cast] = ACTIONS(232), - [anon_sym_call] = ACTIONS(235), - [sym_number] = ACTIONS(220), + [47] = { + [sym__cairo_0_statement] = STATE(60), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(60), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(502), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(238), }, - [13] = { - [sym_cairo_0_statement] = STATE(10), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(10), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [48] = { + [sym__cairo_0_statement] = STATE(63), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(63), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(241), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(414), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [14] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [49] = { + [sym__cairo_0_statement] = STATE(56), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(56), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(243), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(504), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [15] = { - [sym_cairo_0_statement] = STATE(14), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(14), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [50] = { + [sym__cairo_0_statement] = STATE(42), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(42), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(245), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_end] = ACTIONS(452), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [16] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [51] = { + [sym__cairo_0_statement] = STATE(17), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(17), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(245), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(506), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [17] = { - [sym_cairo_0_statement] = STATE(16), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(16), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [52] = { + [sym__cairo_0_statement] = STATE(44), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(44), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(247), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(508), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [18] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [53] = { + [sym__cairo_0_statement] = STATE(55), + [sym__cairo_0_import_statement] = STATE(633), + [sym_type_definition] = STATE(636), + [sym_builtin_directive] = STATE(636), + [sym_lang_directive] = STATE(636), + [sym__cairo_0_decorated_definition] = STATE(637), + [sym_decorator] = STATE(1096), + [sym__cairo_0_namespace_definition] = STATE(636), + [sym__cairo_0_struct_definition] = STATE(636), + [sym__cairo_0_function_definition] = STATE(636), + [sym__cairo_0_expression_statement] = STATE(636), + [sym_alloc_locals] = STATE(636), + [sym__cairo_0_assert_statement] = STATE(636), + [sym__cairo_0_static_assert_statement] = STATE(636), + [sym__cairo_0_let_binding] = STATE(640), + [sym_const_var_declaration] = STATE(636), + [sym_local_var_declaration] = STATE(636), + [sym_temp_var_declaration] = STATE(636), + [sym_instruction] = STATE(636), + [sym_inst_assert_eq] = STATE(1329), + [sym_inst_jmp_rel] = STATE(1329), + [sym_inst_jmp_abs] = STATE(1329), + [sym_inst_jmp_to_label] = STATE(1329), + [sym_inst_jnz] = STATE(1329), + [sym_inst_jnz_to_label] = STATE(1329), + [sym_inst_add_ap] = STATE(1329), + [sym_inst_data_word] = STATE(1329), + [sym_label] = STATE(636), + [sym__cairo_0_attribute_statement] = STATE(636), + [sym__cairo_0_if_statement] = STATE(636), + [sym__cairo_0_with_statement] = STATE(636), + [sym__cairo_0_return_statement] = STATE(636), + [sym__cairo_0_expression] = STATE(898), + [sym_unary_expression] = STATE(898), + [sym_binary_expression] = STATE(898), + [sym_assignment_expression] = STATE(898), + [sym_hint_expression] = STATE(898), + [sym_hint] = STATE(636), + [sym_register] = STATE(898), + [sym_deref_expression] = STATE(898), + [sym_subscript_expression] = STATE(898), + [sym_member_expression] = STATE(898), + [sym_cast_expression] = STATE(898), + [sym_tuple_expression] = STATE(898), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1329), + [aux_sym_cairo_0_file_repeat1] = STATE(55), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1096), + [ts_builtin_sym_end] = ACTIONS(510), + [sym_identifier] = ACTIONS(7), + [anon_sym_from] = ACTIONS(9), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(13), + [anon_sym_PERCENTbuiltins] = ACTIONS(15), + [anon_sym_PERCENTlang] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(249), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(21), + [anon_sym_struct] = ACTIONS(512), + [anon_sym_func] = ACTIONS(25), + [anon_sym_alloc_locals] = ACTIONS(27), + [anon_sym_assert] = ACTIONS(29), + [anon_sym_static_assert] = ACTIONS(31), + [anon_sym_let] = ACTIONS(514), + [anon_sym_const] = ACTIONS(516), + [anon_sym_local] = ACTIONS(37), + [anon_sym_tempvar] = ACTIONS(39), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(45), + [sym_inst_ret] = ACTIONS(47), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(51), + [anon_sym_with] = ACTIONS(53), + [anon_sym_return] = ACTIONS(55), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), [sym_short_string] = ACTIONS(61), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), + [anon_sym_PERCENT_LBRACE] = ACTIONS(65), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), [sym_number] = ACTIONS(61), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [19] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [54] = { + [sym__cairo_0_statement] = STATE(36), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(36), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(251), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(494), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [55] = { + [sym__cairo_0_statement] = STATE(55), + [sym__cairo_0_import_statement] = STATE(633), + [sym_type_definition] = STATE(636), + [sym_builtin_directive] = STATE(636), + [sym_lang_directive] = STATE(636), + [sym__cairo_0_decorated_definition] = STATE(637), + [sym_decorator] = STATE(1096), + [sym__cairo_0_namespace_definition] = STATE(636), + [sym__cairo_0_struct_definition] = STATE(636), + [sym__cairo_0_function_definition] = STATE(636), + [sym__cairo_0_expression_statement] = STATE(636), + [sym_alloc_locals] = STATE(636), + [sym__cairo_0_assert_statement] = STATE(636), + [sym__cairo_0_static_assert_statement] = STATE(636), + [sym__cairo_0_let_binding] = STATE(640), + [sym_const_var_declaration] = STATE(636), + [sym_local_var_declaration] = STATE(636), + [sym_temp_var_declaration] = STATE(636), + [sym_instruction] = STATE(636), + [sym_inst_assert_eq] = STATE(1329), + [sym_inst_jmp_rel] = STATE(1329), + [sym_inst_jmp_abs] = STATE(1329), + [sym_inst_jmp_to_label] = STATE(1329), + [sym_inst_jnz] = STATE(1329), + [sym_inst_jnz_to_label] = STATE(1329), + [sym_inst_add_ap] = STATE(1329), + [sym_inst_data_word] = STATE(1329), + [sym_label] = STATE(636), + [sym__cairo_0_attribute_statement] = STATE(636), + [sym__cairo_0_if_statement] = STATE(636), + [sym__cairo_0_with_statement] = STATE(636), + [sym__cairo_0_return_statement] = STATE(636), + [sym__cairo_0_expression] = STATE(898), + [sym_unary_expression] = STATE(898), + [sym_binary_expression] = STATE(898), + [sym_assignment_expression] = STATE(898), + [sym_hint_expression] = STATE(898), + [sym_hint] = STATE(636), + [sym_register] = STATE(898), + [sym_deref_expression] = STATE(898), + [sym_subscript_expression] = STATE(898), + [sym_member_expression] = STATE(898), + [sym_cast_expression] = STATE(898), + [sym_tuple_expression] = STATE(898), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1329), + [aux_sym_cairo_0_file_repeat1] = STATE(55), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1096), + [ts_builtin_sym_end] = ACTIONS(320), + [sym_identifier] = ACTIONS(518), + [anon_sym_from] = ACTIONS(521), + [anon_sym_LPAREN] = ACTIONS(302), + [anon_sym_using] = ACTIONS(524), + [anon_sym_PERCENTbuiltins] = ACTIONS(527), + [anon_sym_PERCENTlang] = ACTIONS(530), + [anon_sym_AT] = ACTIONS(314), + [anon_sym_namespace] = ACTIONS(533), + [anon_sym_struct] = ACTIONS(536), + [anon_sym_func] = ACTIONS(539), + [anon_sym_alloc_locals] = ACTIONS(542), + [anon_sym_assert] = ACTIONS(545), + [anon_sym_static_assert] = ACTIONS(548), + [anon_sym_let] = ACTIONS(551), + [anon_sym_const] = ACTIONS(554), + [anon_sym_local] = ACTIONS(557), + [anon_sym_tempvar] = ACTIONS(560), + [anon_sym_ap] = ACTIONS(351), + [anon_sym_jmp] = ACTIONS(354), + [anon_sym_if] = ACTIONS(563), + [sym_inst_ret] = ACTIONS(566), + [anon_sym_dw] = ACTIONS(363), + [anon_sym_with_attr] = ACTIONS(569), + [anon_sym_with] = ACTIONS(572), + [anon_sym_return] = ACTIONS(575), + [anon_sym_AMP] = ACTIONS(375), + [anon_sym_DASH] = ACTIONS(378), + [anon_sym_new] = ACTIONS(378), + [sym_short_string] = ACTIONS(578), + [anon_sym_nondet] = ACTIONS(384), + [anon_sym_PERCENT_LBRACE] = ACTIONS(581), + [anon_sym_fp] = ACTIONS(390), + [anon_sym_LBRACK] = ACTIONS(393), + [anon_sym_cast] = ACTIONS(396), + [anon_sym_call] = ACTIONS(399), + [sym_number] = ACTIONS(578), + [sym_comment] = ACTIONS(3), + }, + [56] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(584), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [57] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_end] = ACTIONS(586), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [58] = { + [sym__cairo_0_statement] = STATE(39), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(39), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(450), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [59] = { + [sym__cairo_0_statement] = STATE(73), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(73), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(588), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [60] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(590), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [61] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_end] = ACTIONS(592), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [62] = { + [sym__cairo_0_statement] = STATE(74), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(74), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(594), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [63] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(596), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [64] = { + [sym__cairo_0_statement] = STATE(65), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(65), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(598), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [65] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(508), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [66] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(600), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [67] = { + [sym__cairo_0_statement] = STATE(71), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(71), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_end] = ACTIONS(602), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [68] = { + [sym__cairo_0_statement] = STATE(20), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(20), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_end] = ACTIONS(604), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [69] = { + [sym__cairo_0_statement] = STATE(43), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(43), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(606), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [70] = { + [sym__cairo_0_statement] = STATE(79), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(79), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(608), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [71] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_end] = ACTIONS(610), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), + [anon_sym_nondet] = ACTIONS(63), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [72] = { + [sym__cairo_0_statement] = STATE(66), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(66), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), + [anon_sym_AT] = ACTIONS(19), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(612), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), + [anon_sym_ap] = ACTIONS(41), + [anon_sym_jmp] = ACTIONS(43), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), + [anon_sym_dw] = ACTIONS(49), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), + [anon_sym_AMP] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), + [anon_sym_new] = ACTIONS(59), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [20] = { - [sym_cairo_0_statement] = STATE(45), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(45), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [73] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(253), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(614), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [21] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [74] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(255), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(616), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [22] = { - [sym_cairo_0_statement] = STATE(18), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(18), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [75] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(257), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(618), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [23] = { - [sym_cairo_0_statement] = STATE(19), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(19), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [76] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(259), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(620), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [24] = { - [sym_cairo_0_statement] = STATE(56), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(56), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [77] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(261), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(622), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [25] = { - [sym_cairo_0_statement] = STATE(49), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(49), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [78] = { + [sym__cairo_0_statement] = STATE(23), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(23), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(263), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(616), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [26] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [79] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(241), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(624), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), - [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), - }, - [27] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(265), - [anon_sym_from] = ACTIONS(268), - [anon_sym_LPAREN] = ACTIONS(145), - [anon_sym_using] = ACTIONS(271), - [anon_sym_PERCENTbuiltins] = ACTIONS(274), - [anon_sym_PERCENTlang] = ACTIONS(277), - [anon_sym_AT] = ACTIONS(157), - [anon_sym_namespace] = ACTIONS(280), - [anon_sym_RBRACE] = ACTIONS(137), - [anon_sym_struct] = ACTIONS(283), - [anon_sym_func] = ACTIONS(286), - [anon_sym_alloc_locals] = ACTIONS(289), - [anon_sym_assert] = ACTIONS(292), - [anon_sym_static_assert] = ACTIONS(295), - [anon_sym_let] = ACTIONS(298), - [anon_sym_const] = ACTIONS(301), - [anon_sym_local] = ACTIONS(304), - [anon_sym_tempvar] = ACTIONS(307), - [anon_sym_ap] = ACTIONS(190), - [anon_sym_jmp] = ACTIONS(193), - [anon_sym_if] = ACTIONS(310), - [sym_inst_ret] = ACTIONS(313), - [anon_sym_dw] = ACTIONS(202), - [anon_sym_with_attr] = ACTIONS(316), - [anon_sym_with] = ACTIONS(319), - [anon_sym_return] = ACTIONS(322), - [anon_sym_AMP] = ACTIONS(214), - [anon_sym_DASH] = ACTIONS(214), - [anon_sym_new] = ACTIONS(217), - [sym_short_string] = ACTIONS(220), - [anon_sym_nondet] = ACTIONS(223), - [anon_sym_fp] = ACTIONS(226), - [anon_sym_LBRACK] = ACTIONS(229), - [anon_sym_cast] = ACTIONS(232), - [anon_sym_call] = ACTIONS(235), - [sym_number] = ACTIONS(220), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(325), }, - [28] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [80] = { + [sym__cairo_0_statement] = STATE(76), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(76), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(259), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(626), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [29] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [81] = { + [sym__cairo_0_statement] = STATE(32), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(32), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(328), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(624), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [30] = { - [sym_cairo_0_statement] = STATE(48), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(48), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [82] = { + [sym__cairo_0_statement] = STATE(57), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(57), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(330), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_end] = ACTIONS(628), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [31] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [83] = { + [sym__cairo_0_statement] = STATE(18), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(18), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(332), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(630), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [32] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [84] = { + [sym__cairo_0_statement] = STATE(86), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(86), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(334), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_end] = ACTIONS(632), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [33] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [85] = { + [sym__cairo_0_statement] = STATE(19), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(19), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(336), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_RBRACE] = ACTIONS(634), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [34] = { - [sym_cairo_0_statement] = STATE(28), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(28), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [86] = { + [sym__cairo_0_statement] = STATE(16), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym_cairo_0_file_repeat1] = STATE(16), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(338), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_end] = ACTIONS(500), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [35] = { - [sym_cairo_0_statement] = STATE(26), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(26), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [87] = { + [sym__cairo_1_else_clause] = STATE(109), + [sym_identifier] = ACTIONS(636), + [anon_sym_LPAREN] = ACTIONS(638), + [anon_sym_EQ] = ACTIONS(636), + [anon_sym_AT] = ACTIONS(638), + [anon_sym_LBRACE] = ACTIONS(638), + [anon_sym_RBRACE] = ACTIONS(638), + [anon_sym_struct] = ACTIONS(636), + [anon_sym_EQ_EQ] = ACTIONS(638), + [anon_sym_let] = ACTIONS(636), + [anon_sym_const] = ACTIONS(636), + [anon_sym_if] = ACTIONS(636), + [anon_sym_BANG_EQ] = ACTIONS(638), + [anon_sym_PLUS_EQ] = ACTIONS(638), + [anon_sym_else] = ACTIONS(640), + [anon_sym_return] = ACTIONS(636), + [anon_sym_STAR] = ACTIONS(636), + [anon_sym_AMP] = ACTIONS(636), + [anon_sym_DASH] = ACTIONS(636), + [anon_sym_PLUS] = ACTIONS(636), + [anon_sym_SLASH] = ACTIONS(636), + [anon_sym_LBRACK] = ACTIONS(638), + [anon_sym_DOT] = ACTIONS(638), + [sym_number] = ACTIONS(638), + [anon_sym_SEMI] = ACTIONS(638), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(636), + [anon_sym_extern] = ACTIONS(636), + [anon_sym_type] = ACTIONS(636), + [anon_sym_COLON_COLON] = ACTIONS(638), + [anon_sym_fn] = ACTIONS(636), + [anon_sym_POUND] = ACTIONS(638), + [anon_sym_mod] = ACTIONS(636), + [anon_sym_enum] = ACTIONS(636), + [anon_sym_impl] = ACTIONS(636), + [anon_sym_trait] = ACTIONS(636), + [anon_sym_u8] = ACTIONS(636), + [anon_sym_i8] = ACTIONS(636), + [anon_sym_u16] = ACTIONS(636), + [anon_sym_i16] = ACTIONS(636), + [anon_sym_u32] = ACTIONS(636), + [anon_sym_i32] = ACTIONS(636), + [anon_sym_u64] = ACTIONS(636), + [anon_sym_i64] = ACTIONS(636), + [anon_sym_u128] = ACTIONS(636), + [anon_sym_i128] = ACTIONS(636), + [anon_sym_u256] = ACTIONS(636), + [anon_sym_i256] = ACTIONS(636), + [anon_sym_isize] = ACTIONS(636), + [anon_sym_usize] = ACTIONS(636), + [anon_sym_f32] = ACTIONS(636), + [anon_sym_f64] = ACTIONS(636), + [anon_sym_felt252] = ACTIONS(636), + [anon_sym_bool] = ACTIONS(636), + [anon_sym_str] = ACTIONS(636), + [anon_sym_char] = ACTIONS(636), + [anon_sym_GT] = ACTIONS(636), + [anon_sym_match] = ACTIONS(636), + [anon_sym_loop] = ACTIONS(636), + [anon_sym_BANG] = ACTIONS(636), + [anon_sym_TILDE] = ACTIONS(638), + [anon_sym_AMP_AMP] = ACTIONS(638), + [anon_sym_PIPE_PIPE] = ACTIONS(638), + [anon_sym_PIPE] = ACTIONS(636), + [anon_sym_CARET] = ACTIONS(636), + [anon_sym_LT2] = ACTIONS(636), + [anon_sym_LT_EQ] = ACTIONS(638), + [anon_sym_GT_EQ] = ACTIONS(638), + [anon_sym_LT_LT] = ACTIONS(636), + [anon_sym_GT_GT] = ACTIONS(636), + [anon_sym_PERCENT] = ACTIONS(636), + [anon_sym_DASH_EQ] = ACTIONS(638), + [anon_sym_STAR_EQ] = ACTIONS(638), + [anon_sym_SLASH_EQ] = ACTIONS(638), + [anon_sym_PERCENT_EQ] = ACTIONS(638), + [anon_sym_AMP_EQ] = ACTIONS(638), + [anon_sym_PIPE_EQ] = ACTIONS(638), + [anon_sym_CARET_EQ] = ACTIONS(638), + [anon_sym_LT_LT_EQ] = ACTIONS(638), + [anon_sym_GT_GT_EQ] = ACTIONS(638), + [anon_sym_QMARK] = ACTIONS(638), + [sym__cairo_1_short_string] = ACTIONS(638), + [anon_sym_true] = ACTIONS(636), + [anon_sym_false] = ACTIONS(636), + [sym_self] = ACTIONS(636), + }, + [88] = { + [sym_field_initializer_list] = STATE(120), + [sym_identifier] = ACTIONS(642), + [anon_sym_LPAREN] = ACTIONS(644), + [anon_sym_EQ] = ACTIONS(642), + [anon_sym_AT] = ACTIONS(644), + [anon_sym_LBRACE] = ACTIONS(646), + [anon_sym_RBRACE] = ACTIONS(644), + [anon_sym_struct] = ACTIONS(642), + [anon_sym_EQ_EQ] = ACTIONS(644), + [anon_sym_let] = ACTIONS(642), + [anon_sym_const] = ACTIONS(642), + [anon_sym_if] = ACTIONS(642), + [anon_sym_BANG_EQ] = ACTIONS(644), + [anon_sym_PLUS_EQ] = ACTIONS(644), + [anon_sym_return] = ACTIONS(642), + [anon_sym_STAR] = ACTIONS(642), + [anon_sym_AMP] = ACTIONS(642), + [anon_sym_DASH] = ACTIONS(642), + [anon_sym_PLUS] = ACTIONS(642), + [anon_sym_SLASH] = ACTIONS(642), + [anon_sym_LBRACK] = ACTIONS(644), + [anon_sym_DOT] = ACTIONS(644), + [sym_number] = ACTIONS(644), + [anon_sym_SEMI] = ACTIONS(644), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(642), + [anon_sym_extern] = ACTIONS(642), + [anon_sym_type] = ACTIONS(642), + [anon_sym_COLON_COLON] = ACTIONS(649), + [anon_sym_fn] = ACTIONS(642), + [anon_sym_POUND] = ACTIONS(644), + [anon_sym_mod] = ACTIONS(642), + [anon_sym_enum] = ACTIONS(642), + [anon_sym_impl] = ACTIONS(642), + [anon_sym_trait] = ACTIONS(642), + [anon_sym_u8] = ACTIONS(642), + [anon_sym_i8] = ACTIONS(642), + [anon_sym_u16] = ACTIONS(642), + [anon_sym_i16] = ACTIONS(642), + [anon_sym_u32] = ACTIONS(642), + [anon_sym_i32] = ACTIONS(642), + [anon_sym_u64] = ACTIONS(642), + [anon_sym_i64] = ACTIONS(642), + [anon_sym_u128] = ACTIONS(642), + [anon_sym_i128] = ACTIONS(642), + [anon_sym_u256] = ACTIONS(642), + [anon_sym_i256] = ACTIONS(642), + [anon_sym_isize] = ACTIONS(642), + [anon_sym_usize] = ACTIONS(642), + [anon_sym_f32] = ACTIONS(642), + [anon_sym_f64] = ACTIONS(642), + [anon_sym_felt252] = ACTIONS(642), + [anon_sym_bool] = ACTIONS(642), + [anon_sym_str] = ACTIONS(642), + [anon_sym_char] = ACTIONS(642), + [anon_sym_GT] = ACTIONS(642), + [anon_sym_match] = ACTIONS(642), + [anon_sym_loop] = ACTIONS(642), + [anon_sym_BANG] = ACTIONS(642), + [anon_sym_TILDE] = ACTIONS(644), + [anon_sym_AMP_AMP] = ACTIONS(644), + [anon_sym_PIPE_PIPE] = ACTIONS(644), + [anon_sym_PIPE] = ACTIONS(642), + [anon_sym_CARET] = ACTIONS(642), + [anon_sym_LT2] = ACTIONS(642), + [anon_sym_LT_EQ] = ACTIONS(644), + [anon_sym_GT_EQ] = ACTIONS(644), + [anon_sym_LT_LT] = ACTIONS(642), + [anon_sym_GT_GT] = ACTIONS(642), + [anon_sym_PERCENT] = ACTIONS(642), + [anon_sym_DASH_EQ] = ACTIONS(644), + [anon_sym_STAR_EQ] = ACTIONS(644), + [anon_sym_SLASH_EQ] = ACTIONS(644), + [anon_sym_PERCENT_EQ] = ACTIONS(644), + [anon_sym_AMP_EQ] = ACTIONS(644), + [anon_sym_PIPE_EQ] = ACTIONS(644), + [anon_sym_CARET_EQ] = ACTIONS(644), + [anon_sym_LT_LT_EQ] = ACTIONS(644), + [anon_sym_GT_GT_EQ] = ACTIONS(644), + [anon_sym_QMARK] = ACTIONS(644), + [sym__cairo_1_short_string] = ACTIONS(644), + [anon_sym_true] = ACTIONS(642), + [anon_sym_false] = ACTIONS(642), + [sym_self] = ACTIONS(642), + }, + [89] = { + [sym_field_initializer_list] = STATE(123), + [sym_identifier] = ACTIONS(651), + [anon_sym_LPAREN] = ACTIONS(653), + [anon_sym_EQ] = ACTIONS(651), + [anon_sym_AT] = ACTIONS(653), + [anon_sym_LBRACE] = ACTIONS(655), + [anon_sym_RBRACE] = ACTIONS(653), + [anon_sym_struct] = ACTIONS(651), + [anon_sym_EQ_EQ] = ACTIONS(653), + [anon_sym_let] = ACTIONS(651), + [anon_sym_const] = ACTIONS(651), + [anon_sym_if] = ACTIONS(651), + [anon_sym_BANG_EQ] = ACTIONS(653), + [anon_sym_PLUS_EQ] = ACTIONS(653), + [anon_sym_return] = ACTIONS(651), + [anon_sym_STAR] = ACTIONS(651), + [anon_sym_AMP] = ACTIONS(651), + [anon_sym_DASH] = ACTIONS(651), + [anon_sym_PLUS] = ACTIONS(651), + [anon_sym_SLASH] = ACTIONS(651), + [anon_sym_LBRACK] = ACTIONS(653), + [anon_sym_DOT] = ACTIONS(653), + [sym_number] = ACTIONS(653), + [anon_sym_SEMI] = ACTIONS(653), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(651), + [anon_sym_extern] = ACTIONS(651), + [anon_sym_type] = ACTIONS(651), + [anon_sym_COLON_COLON] = ACTIONS(658), + [anon_sym_fn] = ACTIONS(651), + [anon_sym_POUND] = ACTIONS(653), + [anon_sym_mod] = ACTIONS(651), + [anon_sym_enum] = ACTIONS(651), + [anon_sym_impl] = ACTIONS(651), + [anon_sym_trait] = ACTIONS(651), + [anon_sym_u8] = ACTIONS(651), + [anon_sym_i8] = ACTIONS(651), + [anon_sym_u16] = ACTIONS(651), + [anon_sym_i16] = ACTIONS(651), + [anon_sym_u32] = ACTIONS(651), + [anon_sym_i32] = ACTIONS(651), + [anon_sym_u64] = ACTIONS(651), + [anon_sym_i64] = ACTIONS(651), + [anon_sym_u128] = ACTIONS(651), + [anon_sym_i128] = ACTIONS(651), + [anon_sym_u256] = ACTIONS(651), + [anon_sym_i256] = ACTIONS(651), + [anon_sym_isize] = ACTIONS(651), + [anon_sym_usize] = ACTIONS(651), + [anon_sym_f32] = ACTIONS(651), + [anon_sym_f64] = ACTIONS(651), + [anon_sym_felt252] = ACTIONS(651), + [anon_sym_bool] = ACTIONS(651), + [anon_sym_str] = ACTIONS(651), + [anon_sym_char] = ACTIONS(651), + [anon_sym_GT] = ACTIONS(651), + [anon_sym_match] = ACTIONS(651), + [anon_sym_loop] = ACTIONS(651), + [anon_sym_BANG] = ACTIONS(651), + [anon_sym_TILDE] = ACTIONS(653), + [anon_sym_AMP_AMP] = ACTIONS(653), + [anon_sym_PIPE_PIPE] = ACTIONS(653), + [anon_sym_PIPE] = ACTIONS(651), + [anon_sym_CARET] = ACTIONS(651), + [anon_sym_LT2] = ACTIONS(651), + [anon_sym_LT_EQ] = ACTIONS(653), + [anon_sym_GT_EQ] = ACTIONS(653), + [anon_sym_LT_LT] = ACTIONS(651), + [anon_sym_GT_GT] = ACTIONS(651), + [anon_sym_PERCENT] = ACTIONS(651), + [anon_sym_DASH_EQ] = ACTIONS(653), + [anon_sym_STAR_EQ] = ACTIONS(653), + [anon_sym_SLASH_EQ] = ACTIONS(653), + [anon_sym_PERCENT_EQ] = ACTIONS(653), + [anon_sym_AMP_EQ] = ACTIONS(653), + [anon_sym_PIPE_EQ] = ACTIONS(653), + [anon_sym_CARET_EQ] = ACTIONS(653), + [anon_sym_LT_LT_EQ] = ACTIONS(653), + [anon_sym_GT_GT_EQ] = ACTIONS(653), + [anon_sym_QMARK] = ACTIONS(653), + [sym__cairo_1_short_string] = ACTIONS(653), + [anon_sym_true] = ACTIONS(651), + [anon_sym_false] = ACTIONS(651), + [sym_self] = ACTIONS(651), + }, + [90] = { + [sym__cairo_0_statement] = STATE(635), + [sym__cairo_0_import_statement] = STATE(633), + [sym_type_definition] = STATE(636), + [sym_builtin_directive] = STATE(636), + [sym_lang_directive] = STATE(636), + [sym__cairo_0_decorated_definition] = STATE(637), + [sym_decorator] = STATE(1096), + [sym__cairo_0_namespace_definition] = STATE(636), + [sym__cairo_0_struct_definition] = STATE(636), + [sym__cairo_0_function_definition] = STATE(636), + [sym__cairo_0_expression_statement] = STATE(636), + [sym_alloc_locals] = STATE(636), + [sym__cairo_0_assert_statement] = STATE(636), + [sym__cairo_0_static_assert_statement] = STATE(636), + [sym__cairo_0_let_binding] = STATE(640), + [sym_const_var_declaration] = STATE(636), + [sym_local_var_declaration] = STATE(636), + [sym_temp_var_declaration] = STATE(636), + [sym_instruction] = STATE(636), + [sym_inst_assert_eq] = STATE(1329), + [sym_inst_jmp_rel] = STATE(1329), + [sym_inst_jmp_abs] = STATE(1329), + [sym_inst_jmp_to_label] = STATE(1329), + [sym_inst_jnz] = STATE(1329), + [sym_inst_jnz_to_label] = STATE(1329), + [sym_inst_add_ap] = STATE(1329), + [sym_inst_data_word] = STATE(1329), + [sym_label] = STATE(636), + [sym__cairo_0_attribute_statement] = STATE(636), + [sym__cairo_0_if_statement] = STATE(636), + [sym__cairo_0_with_statement] = STATE(636), + [sym__cairo_0_return_statement] = STATE(636), + [sym__cairo_0_expression] = STATE(898), + [sym_unary_expression] = STATE(898), + [sym_binary_expression] = STATE(898), + [sym_assignment_expression] = STATE(898), + [sym_hint_expression] = STATE(898), + [sym_hint] = STATE(636), + [sym_register] = STATE(898), + [sym_deref_expression] = STATE(898), + [sym_subscript_expression] = STATE(898), + [sym_member_expression] = STATE(898), + [sym_cast_expression] = STATE(898), + [sym_tuple_expression] = STATE(898), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1329), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1096), + [sym_identifier] = ACTIONS(7), + [anon_sym_from] = ACTIONS(9), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(13), + [anon_sym_PERCENTbuiltins] = ACTIONS(15), + [anon_sym_PERCENTlang] = ACTIONS(17), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(340), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(21), + [anon_sym_struct] = ACTIONS(512), + [anon_sym_func] = ACTIONS(25), + [anon_sym_alloc_locals] = ACTIONS(27), + [anon_sym_assert] = ACTIONS(29), + [anon_sym_static_assert] = ACTIONS(31), + [anon_sym_let] = ACTIONS(514), + [anon_sym_const] = ACTIONS(516), + [anon_sym_local] = ACTIONS(37), + [anon_sym_tempvar] = ACTIONS(39), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(45), + [sym_inst_ret] = ACTIONS(47), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(51), + [anon_sym_with] = ACTIONS(53), + [anon_sym_return] = ACTIONS(55), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), [sym_short_string] = ACTIONS(61), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), + [anon_sym_PERCENT_LBRACE] = ACTIONS(65), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), [sym_number] = ACTIONS(61), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), }, - [36] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), + [91] = { + [sym_identifier] = ACTIONS(660), + [anon_sym_LPAREN] = ACTIONS(662), + [anon_sym_EQ] = ACTIONS(660), + [anon_sym_AT] = ACTIONS(662), + [anon_sym_LBRACE] = ACTIONS(662), + [anon_sym_RBRACE] = ACTIONS(662), + [anon_sym_struct] = ACTIONS(660), + [anon_sym_EQ_EQ] = ACTIONS(662), + [anon_sym_let] = ACTIONS(660), + [anon_sym_const] = ACTIONS(660), + [anon_sym_if] = ACTIONS(660), + [anon_sym_BANG_EQ] = ACTIONS(662), + [anon_sym_PLUS_EQ] = ACTIONS(662), + [anon_sym_else] = ACTIONS(660), + [anon_sym_return] = ACTIONS(660), + [anon_sym_STAR] = ACTIONS(660), + [anon_sym_AMP] = ACTIONS(660), + [anon_sym_DASH] = ACTIONS(660), + [anon_sym_PLUS] = ACTIONS(660), + [anon_sym_SLASH] = ACTIONS(660), + [anon_sym_LBRACK] = ACTIONS(662), + [anon_sym_DOT] = ACTIONS(662), + [sym_number] = ACTIONS(662), + [anon_sym_SEMI] = ACTIONS(662), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(660), + [anon_sym_extern] = ACTIONS(660), + [anon_sym_type] = ACTIONS(660), + [anon_sym_COLON_COLON] = ACTIONS(662), + [anon_sym_fn] = ACTIONS(660), + [anon_sym_POUND] = ACTIONS(662), + [anon_sym_mod] = ACTIONS(660), + [anon_sym_enum] = ACTIONS(660), + [anon_sym_impl] = ACTIONS(660), + [anon_sym_trait] = ACTIONS(660), + [anon_sym_u8] = ACTIONS(660), + [anon_sym_i8] = ACTIONS(660), + [anon_sym_u16] = ACTIONS(660), + [anon_sym_i16] = ACTIONS(660), + [anon_sym_u32] = ACTIONS(660), + [anon_sym_i32] = ACTIONS(660), + [anon_sym_u64] = ACTIONS(660), + [anon_sym_i64] = ACTIONS(660), + [anon_sym_u128] = ACTIONS(660), + [anon_sym_i128] = ACTIONS(660), + [anon_sym_u256] = ACTIONS(660), + [anon_sym_i256] = ACTIONS(660), + [anon_sym_isize] = ACTIONS(660), + [anon_sym_usize] = ACTIONS(660), + [anon_sym_f32] = ACTIONS(660), + [anon_sym_f64] = ACTIONS(660), + [anon_sym_felt252] = ACTIONS(660), + [anon_sym_bool] = ACTIONS(660), + [anon_sym_str] = ACTIONS(660), + [anon_sym_char] = ACTIONS(660), + [anon_sym_GT] = ACTIONS(660), + [anon_sym_match] = ACTIONS(660), + [anon_sym_loop] = ACTIONS(660), + [anon_sym_BANG] = ACTIONS(660), + [anon_sym_TILDE] = ACTIONS(662), + [anon_sym_AMP_AMP] = ACTIONS(662), + [anon_sym_PIPE_PIPE] = ACTIONS(662), + [anon_sym_PIPE] = ACTIONS(660), + [anon_sym_CARET] = ACTIONS(660), + [anon_sym_LT2] = ACTIONS(660), + [anon_sym_LT_EQ] = ACTIONS(662), + [anon_sym_GT_EQ] = ACTIONS(662), + [anon_sym_LT_LT] = ACTIONS(660), + [anon_sym_GT_GT] = ACTIONS(660), + [anon_sym_PERCENT] = ACTIONS(660), + [anon_sym_DASH_EQ] = ACTIONS(662), + [anon_sym_STAR_EQ] = ACTIONS(662), + [anon_sym_SLASH_EQ] = ACTIONS(662), + [anon_sym_PERCENT_EQ] = ACTIONS(662), + [anon_sym_AMP_EQ] = ACTIONS(662), + [anon_sym_PIPE_EQ] = ACTIONS(662), + [anon_sym_CARET_EQ] = ACTIONS(662), + [anon_sym_LT_LT_EQ] = ACTIONS(662), + [anon_sym_GT_GT_EQ] = ACTIONS(662), + [anon_sym_QMARK] = ACTIONS(662), + [sym__cairo_1_short_string] = ACTIONS(662), + [anon_sym_true] = ACTIONS(660), + [anon_sym_false] = ACTIONS(660), + [sym_self] = ACTIONS(660), + }, + [92] = { + [sym_identifier] = ACTIONS(664), + [anon_sym_LPAREN] = ACTIONS(666), + [anon_sym_EQ] = ACTIONS(664), + [anon_sym_AT] = ACTIONS(666), + [anon_sym_LBRACE] = ACTIONS(666), + [anon_sym_RBRACE] = ACTIONS(666), + [anon_sym_struct] = ACTIONS(664), + [anon_sym_EQ_EQ] = ACTIONS(666), + [anon_sym_let] = ACTIONS(664), + [anon_sym_const] = ACTIONS(664), + [anon_sym_if] = ACTIONS(664), + [anon_sym_BANG_EQ] = ACTIONS(666), + [anon_sym_PLUS_EQ] = ACTIONS(666), + [anon_sym_else] = ACTIONS(664), + [anon_sym_return] = ACTIONS(664), + [anon_sym_STAR] = ACTIONS(664), + [anon_sym_AMP] = ACTIONS(664), + [anon_sym_DASH] = ACTIONS(664), + [anon_sym_PLUS] = ACTIONS(664), + [anon_sym_SLASH] = ACTIONS(664), + [anon_sym_LBRACK] = ACTIONS(666), + [anon_sym_DOT] = ACTIONS(666), + [sym_number] = ACTIONS(666), + [anon_sym_SEMI] = ACTIONS(666), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(664), + [anon_sym_extern] = ACTIONS(664), + [anon_sym_type] = ACTIONS(664), + [anon_sym_COLON_COLON] = ACTIONS(666), + [anon_sym_fn] = ACTIONS(664), + [anon_sym_POUND] = ACTIONS(666), + [anon_sym_mod] = ACTIONS(664), + [anon_sym_enum] = ACTIONS(664), + [anon_sym_impl] = ACTIONS(664), + [anon_sym_trait] = ACTIONS(664), + [anon_sym_u8] = ACTIONS(664), + [anon_sym_i8] = ACTIONS(664), + [anon_sym_u16] = ACTIONS(664), + [anon_sym_i16] = ACTIONS(664), + [anon_sym_u32] = ACTIONS(664), + [anon_sym_i32] = ACTIONS(664), + [anon_sym_u64] = ACTIONS(664), + [anon_sym_i64] = ACTIONS(664), + [anon_sym_u128] = ACTIONS(664), + [anon_sym_i128] = ACTIONS(664), + [anon_sym_u256] = ACTIONS(664), + [anon_sym_i256] = ACTIONS(664), + [anon_sym_isize] = ACTIONS(664), + [anon_sym_usize] = ACTIONS(664), + [anon_sym_f32] = ACTIONS(664), + [anon_sym_f64] = ACTIONS(664), + [anon_sym_felt252] = ACTIONS(664), + [anon_sym_bool] = ACTIONS(664), + [anon_sym_str] = ACTIONS(664), + [anon_sym_char] = ACTIONS(664), + [anon_sym_GT] = ACTIONS(664), + [anon_sym_match] = ACTIONS(664), + [anon_sym_loop] = ACTIONS(664), + [anon_sym_BANG] = ACTIONS(664), + [anon_sym_TILDE] = ACTIONS(666), + [anon_sym_AMP_AMP] = ACTIONS(666), + [anon_sym_PIPE_PIPE] = ACTIONS(666), + [anon_sym_PIPE] = ACTIONS(664), + [anon_sym_CARET] = ACTIONS(664), + [anon_sym_LT2] = ACTIONS(664), + [anon_sym_LT_EQ] = ACTIONS(666), + [anon_sym_GT_EQ] = ACTIONS(666), + [anon_sym_LT_LT] = ACTIONS(664), + [anon_sym_GT_GT] = ACTIONS(664), + [anon_sym_PERCENT] = ACTIONS(664), + [anon_sym_DASH_EQ] = ACTIONS(666), + [anon_sym_STAR_EQ] = ACTIONS(666), + [anon_sym_SLASH_EQ] = ACTIONS(666), + [anon_sym_PERCENT_EQ] = ACTIONS(666), + [anon_sym_AMP_EQ] = ACTIONS(666), + [anon_sym_PIPE_EQ] = ACTIONS(666), + [anon_sym_CARET_EQ] = ACTIONS(666), + [anon_sym_LT_LT_EQ] = ACTIONS(666), + [anon_sym_GT_GT_EQ] = ACTIONS(666), + [anon_sym_QMARK] = ACTIONS(666), + [sym__cairo_1_short_string] = ACTIONS(666), + [anon_sym_true] = ACTIONS(664), + [anon_sym_false] = ACTIONS(664), + [sym_self] = ACTIONS(664), + }, + [93] = { + [sym__cairo_0_statement] = STATE(550), + [sym__cairo_0_import_statement] = STATE(573), + [sym_type_definition] = STATE(581), + [sym_builtin_directive] = STATE(581), + [sym_lang_directive] = STATE(581), + [sym__cairo_0_decorated_definition] = STATE(583), + [sym_decorator] = STATE(1097), + [sym__cairo_0_namespace_definition] = STATE(581), + [sym__cairo_0_struct_definition] = STATE(581), + [sym__cairo_0_function_definition] = STATE(581), + [sym__cairo_0_expression_statement] = STATE(581), + [sym_alloc_locals] = STATE(581), + [sym__cairo_0_assert_statement] = STATE(581), + [sym__cairo_0_static_assert_statement] = STATE(581), + [sym__cairo_0_let_binding] = STATE(588), + [sym_const_var_declaration] = STATE(581), + [sym_local_var_declaration] = STATE(581), + [sym_temp_var_declaration] = STATE(581), + [sym_instruction] = STATE(581), + [sym_inst_assert_eq] = STATE(1271), + [sym_inst_jmp_rel] = STATE(1271), + [sym_inst_jmp_abs] = STATE(1271), + [sym_inst_jmp_to_label] = STATE(1271), + [sym_inst_jnz] = STATE(1271), + [sym_inst_jnz_to_label] = STATE(1271), + [sym_inst_add_ap] = STATE(1271), + [sym_inst_data_word] = STATE(1271), + [sym_label] = STATE(581), + [sym__cairo_0_attribute_statement] = STATE(581), + [sym__cairo_0_if_statement] = STATE(581), + [sym__cairo_0_with_statement] = STATE(581), + [sym__cairo_0_return_statement] = STATE(581), + [sym__cairo_0_expression] = STATE(915), + [sym_unary_expression] = STATE(915), + [sym_binary_expression] = STATE(915), + [sym_assignment_expression] = STATE(915), + [sym_hint_expression] = STATE(915), + [sym_hint] = STATE(581), + [sym_register] = STATE(915), + [sym_deref_expression] = STATE(915), + [sym_subscript_expression] = STATE(915), + [sym_member_expression] = STATE(915), + [sym_cast_expression] = STATE(915), + [sym_tuple_expression] = STATE(915), + [sym__cairo_0_call_expression] = STATE(900), + [sym_call_instruction] = STATE(1271), + [aux_sym__cairo_0_decorated_definition_repeat1] = STATE(1097), + [sym_identifier] = ACTIONS(402), + [anon_sym_from] = ACTIONS(404), [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), + [anon_sym_using] = ACTIONS(406), + [anon_sym_PERCENTbuiltins] = ACTIONS(408), + [anon_sym_PERCENTlang] = ACTIONS(410), [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(342), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), + [anon_sym_namespace] = ACTIONS(412), + [anon_sym_struct] = ACTIONS(416), + [anon_sym_func] = ACTIONS(418), + [anon_sym_alloc_locals] = ACTIONS(420), + [anon_sym_assert] = ACTIONS(422), + [anon_sym_static_assert] = ACTIONS(424), + [anon_sym_let] = ACTIONS(426), + [anon_sym_const] = ACTIONS(428), + [anon_sym_local] = ACTIONS(430), + [anon_sym_tempvar] = ACTIONS(432), [anon_sym_ap] = ACTIONS(41), [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), + [anon_sym_if] = ACTIONS(434), + [sym_inst_ret] = ACTIONS(436), [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), + [anon_sym_with_attr] = ACTIONS(438), + [anon_sym_with] = ACTIONS(440), + [anon_sym_return] = ACTIONS(442), [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), + [anon_sym_DASH] = ACTIONS(59), [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), + [sym_short_string] = ACTIONS(444), [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [anon_sym_PERCENT_LBRACE] = ACTIONS(446), + [anon_sym_fp] = ACTIONS(67), + [anon_sym_LBRACK] = ACTIONS(69), + [anon_sym_cast] = ACTIONS(71), + [anon_sym_call] = ACTIONS(73), + [sym_number] = ACTIONS(444), + [sym_comment] = ACTIONS(3), + }, + [94] = { + [sym_identifier] = ACTIONS(668), + [anon_sym_LPAREN] = ACTIONS(670), + [anon_sym_EQ] = ACTIONS(672), + [anon_sym_AT] = ACTIONS(674), + [anon_sym_LBRACE] = ACTIONS(674), + [anon_sym_RBRACE] = ACTIONS(674), + [anon_sym_struct] = ACTIONS(668), + [anon_sym_EQ_EQ] = ACTIONS(676), + [anon_sym_let] = ACTIONS(668), + [anon_sym_const] = ACTIONS(668), + [anon_sym_if] = ACTIONS(668), + [anon_sym_BANG_EQ] = ACTIONS(676), + [anon_sym_PLUS_EQ] = ACTIONS(678), + [anon_sym_return] = ACTIONS(668), + [anon_sym_STAR] = ACTIONS(680), + [anon_sym_AMP] = ACTIONS(682), + [anon_sym_DASH] = ACTIONS(684), + [anon_sym_PLUS] = ACTIONS(684), + [anon_sym_SLASH] = ACTIONS(680), + [anon_sym_LBRACK] = ACTIONS(686), + [anon_sym_DOT] = ACTIONS(688), + [sym_number] = ACTIONS(674), + [anon_sym_SEMI] = ACTIONS(674), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(668), + [anon_sym_extern] = ACTIONS(668), + [anon_sym_type] = ACTIONS(668), + [anon_sym_COLON_COLON] = ACTIONS(674), + [anon_sym_fn] = ACTIONS(668), + [anon_sym_POUND] = ACTIONS(674), + [anon_sym_mod] = ACTIONS(668), + [anon_sym_enum] = ACTIONS(668), + [anon_sym_impl] = ACTIONS(668), + [anon_sym_trait] = ACTIONS(668), + [anon_sym_u8] = ACTIONS(668), + [anon_sym_i8] = ACTIONS(668), + [anon_sym_u16] = ACTIONS(668), + [anon_sym_i16] = ACTIONS(668), + [anon_sym_u32] = ACTIONS(668), + [anon_sym_i32] = ACTIONS(668), + [anon_sym_u64] = ACTIONS(668), + [anon_sym_i64] = ACTIONS(668), + [anon_sym_u128] = ACTIONS(668), + [anon_sym_i128] = ACTIONS(668), + [anon_sym_u256] = ACTIONS(668), + [anon_sym_i256] = ACTIONS(668), + [anon_sym_isize] = ACTIONS(668), + [anon_sym_usize] = ACTIONS(668), + [anon_sym_f32] = ACTIONS(668), + [anon_sym_f64] = ACTIONS(668), + [anon_sym_felt252] = ACTIONS(668), + [anon_sym_bool] = ACTIONS(668), + [anon_sym_str] = ACTIONS(668), + [anon_sym_char] = ACTIONS(668), + [anon_sym_GT] = ACTIONS(690), + [anon_sym_match] = ACTIONS(668), + [anon_sym_loop] = ACTIONS(668), + [anon_sym_BANG] = ACTIONS(668), + [anon_sym_TILDE] = ACTIONS(674), + [anon_sym_AMP_AMP] = ACTIONS(692), + [anon_sym_PIPE_PIPE] = ACTIONS(694), + [anon_sym_PIPE] = ACTIONS(696), + [anon_sym_CARET] = ACTIONS(698), + [anon_sym_LT2] = ACTIONS(690), + [anon_sym_LT_EQ] = ACTIONS(676), + [anon_sym_GT_EQ] = ACTIONS(676), + [anon_sym_LT_LT] = ACTIONS(700), + [anon_sym_GT_GT] = ACTIONS(700), + [anon_sym_PERCENT] = ACTIONS(680), + [anon_sym_DASH_EQ] = ACTIONS(678), + [anon_sym_STAR_EQ] = ACTIONS(678), + [anon_sym_SLASH_EQ] = ACTIONS(678), + [anon_sym_PERCENT_EQ] = ACTIONS(678), + [anon_sym_AMP_EQ] = ACTIONS(678), + [anon_sym_PIPE_EQ] = ACTIONS(678), + [anon_sym_CARET_EQ] = ACTIONS(678), + [anon_sym_LT_LT_EQ] = ACTIONS(678), + [anon_sym_GT_GT_EQ] = ACTIONS(678), + [anon_sym_QMARK] = ACTIONS(702), + [sym__cairo_1_short_string] = ACTIONS(674), + [anon_sym_true] = ACTIONS(668), + [anon_sym_false] = ACTIONS(668), + [sym_self] = ACTIONS(668), + }, + [95] = { + [sym_identifier] = ACTIONS(704), + [anon_sym_LPAREN] = ACTIONS(706), + [anon_sym_EQ] = ACTIONS(704), + [anon_sym_AT] = ACTIONS(706), + [anon_sym_LBRACE] = ACTIONS(706), + [anon_sym_RBRACE] = ACTIONS(706), + [anon_sym_struct] = ACTIONS(704), + [anon_sym_EQ_EQ] = ACTIONS(706), + [anon_sym_let] = ACTIONS(704), + [anon_sym_const] = ACTIONS(704), + [anon_sym_if] = ACTIONS(704), + [anon_sym_BANG_EQ] = ACTIONS(706), + [anon_sym_PLUS_EQ] = ACTIONS(706), + [anon_sym_return] = ACTIONS(704), + [anon_sym_STAR] = ACTIONS(704), + [anon_sym_AMP] = ACTIONS(704), + [anon_sym_DASH] = ACTIONS(704), + [anon_sym_PLUS] = ACTIONS(704), + [anon_sym_SLASH] = ACTIONS(704), + [anon_sym_LBRACK] = ACTIONS(706), + [anon_sym_DOT] = ACTIONS(706), + [sym_number] = ACTIONS(706), + [anon_sym_SEMI] = ACTIONS(706), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(704), + [anon_sym_extern] = ACTIONS(704), + [anon_sym_type] = ACTIONS(704), + [anon_sym_COLON_COLON] = ACTIONS(706), + [anon_sym_fn] = ACTIONS(704), + [anon_sym_POUND] = ACTIONS(706), + [anon_sym_mod] = ACTIONS(704), + [anon_sym_enum] = ACTIONS(704), + [anon_sym_impl] = ACTIONS(704), + [anon_sym_trait] = ACTIONS(704), + [anon_sym_u8] = ACTIONS(704), + [anon_sym_i8] = ACTIONS(704), + [anon_sym_u16] = ACTIONS(704), + [anon_sym_i16] = ACTIONS(704), + [anon_sym_u32] = ACTIONS(704), + [anon_sym_i32] = ACTIONS(704), + [anon_sym_u64] = ACTIONS(704), + [anon_sym_i64] = ACTIONS(704), + [anon_sym_u128] = ACTIONS(704), + [anon_sym_i128] = ACTIONS(704), + [anon_sym_u256] = ACTIONS(704), + [anon_sym_i256] = ACTIONS(704), + [anon_sym_isize] = ACTIONS(704), + [anon_sym_usize] = ACTIONS(704), + [anon_sym_f32] = ACTIONS(704), + [anon_sym_f64] = ACTIONS(704), + [anon_sym_felt252] = ACTIONS(704), + [anon_sym_bool] = ACTIONS(704), + [anon_sym_str] = ACTIONS(704), + [anon_sym_char] = ACTIONS(704), + [anon_sym_GT] = ACTIONS(704), + [anon_sym_match] = ACTIONS(704), + [anon_sym_loop] = ACTIONS(704), + [anon_sym_BANG] = ACTIONS(704), + [anon_sym_TILDE] = ACTIONS(706), + [anon_sym_AMP_AMP] = ACTIONS(706), + [anon_sym_PIPE_PIPE] = ACTIONS(706), + [anon_sym_PIPE] = ACTIONS(704), + [anon_sym_CARET] = ACTIONS(704), + [anon_sym_LT2] = ACTIONS(704), + [anon_sym_LT_EQ] = ACTIONS(706), + [anon_sym_GT_EQ] = ACTIONS(706), + [anon_sym_LT_LT] = ACTIONS(704), + [anon_sym_GT_GT] = ACTIONS(704), + [anon_sym_PERCENT] = ACTIONS(704), + [anon_sym_DASH_EQ] = ACTIONS(706), + [anon_sym_STAR_EQ] = ACTIONS(706), + [anon_sym_SLASH_EQ] = ACTIONS(706), + [anon_sym_PERCENT_EQ] = ACTIONS(706), + [anon_sym_AMP_EQ] = ACTIONS(706), + [anon_sym_PIPE_EQ] = ACTIONS(706), + [anon_sym_CARET_EQ] = ACTIONS(706), + [anon_sym_LT_LT_EQ] = ACTIONS(706), + [anon_sym_GT_GT_EQ] = ACTIONS(706), + [anon_sym_QMARK] = ACTIONS(706), + [sym__cairo_1_short_string] = ACTIONS(706), + [anon_sym_true] = ACTIONS(704), + [anon_sym_false] = ACTIONS(704), + [sym_self] = ACTIONS(704), + }, + [96] = { + [sym_identifier] = ACTIONS(708), + [anon_sym_LPAREN] = ACTIONS(710), + [anon_sym_EQ] = ACTIONS(708), + [anon_sym_AT] = ACTIONS(710), + [anon_sym_LBRACE] = ACTIONS(710), + [anon_sym_RBRACE] = ACTIONS(710), + [anon_sym_struct] = ACTIONS(708), + [anon_sym_EQ_EQ] = ACTIONS(710), + [anon_sym_let] = ACTIONS(708), + [anon_sym_const] = ACTIONS(708), + [anon_sym_if] = ACTIONS(708), + [anon_sym_BANG_EQ] = ACTIONS(710), + [anon_sym_PLUS_EQ] = ACTIONS(710), + [anon_sym_return] = ACTIONS(708), + [anon_sym_STAR] = ACTIONS(708), + [anon_sym_AMP] = ACTIONS(708), + [anon_sym_DASH] = ACTIONS(708), + [anon_sym_PLUS] = ACTIONS(708), + [anon_sym_SLASH] = ACTIONS(708), + [anon_sym_LBRACK] = ACTIONS(710), + [anon_sym_DOT] = ACTIONS(710), + [sym_number] = ACTIONS(710), + [anon_sym_SEMI] = ACTIONS(710), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(708), + [anon_sym_extern] = ACTIONS(708), + [anon_sym_type] = ACTIONS(708), + [anon_sym_COLON_COLON] = ACTIONS(710), + [anon_sym_fn] = ACTIONS(708), + [anon_sym_POUND] = ACTIONS(710), + [anon_sym_mod] = ACTIONS(708), + [anon_sym_enum] = ACTIONS(708), + [anon_sym_impl] = ACTIONS(708), + [anon_sym_trait] = ACTIONS(708), + [anon_sym_u8] = ACTIONS(708), + [anon_sym_i8] = ACTIONS(708), + [anon_sym_u16] = ACTIONS(708), + [anon_sym_i16] = ACTIONS(708), + [anon_sym_u32] = ACTIONS(708), + [anon_sym_i32] = ACTIONS(708), + [anon_sym_u64] = ACTIONS(708), + [anon_sym_i64] = ACTIONS(708), + [anon_sym_u128] = ACTIONS(708), + [anon_sym_i128] = ACTIONS(708), + [anon_sym_u256] = ACTIONS(708), + [anon_sym_i256] = ACTIONS(708), + [anon_sym_isize] = ACTIONS(708), + [anon_sym_usize] = ACTIONS(708), + [anon_sym_f32] = ACTIONS(708), + [anon_sym_f64] = ACTIONS(708), + [anon_sym_felt252] = ACTIONS(708), + [anon_sym_bool] = ACTIONS(708), + [anon_sym_str] = ACTIONS(708), + [anon_sym_char] = ACTIONS(708), + [anon_sym_GT] = ACTIONS(708), + [anon_sym_match] = ACTIONS(708), + [anon_sym_loop] = ACTIONS(708), + [anon_sym_BANG] = ACTIONS(708), + [anon_sym_TILDE] = ACTIONS(710), + [anon_sym_AMP_AMP] = ACTIONS(710), + [anon_sym_PIPE_PIPE] = ACTIONS(710), + [anon_sym_PIPE] = ACTIONS(708), + [anon_sym_CARET] = ACTIONS(708), + [anon_sym_LT2] = ACTIONS(708), + [anon_sym_LT_EQ] = ACTIONS(710), + [anon_sym_GT_EQ] = ACTIONS(710), + [anon_sym_LT_LT] = ACTIONS(708), + [anon_sym_GT_GT] = ACTIONS(708), + [anon_sym_PERCENT] = ACTIONS(708), + [anon_sym_DASH_EQ] = ACTIONS(710), + [anon_sym_STAR_EQ] = ACTIONS(710), + [anon_sym_SLASH_EQ] = ACTIONS(710), + [anon_sym_PERCENT_EQ] = ACTIONS(710), + [anon_sym_AMP_EQ] = ACTIONS(710), + [anon_sym_PIPE_EQ] = ACTIONS(710), + [anon_sym_CARET_EQ] = ACTIONS(710), + [anon_sym_LT_LT_EQ] = ACTIONS(710), + [anon_sym_GT_GT_EQ] = ACTIONS(710), + [anon_sym_QMARK] = ACTIONS(710), + [sym__cairo_1_short_string] = ACTIONS(710), + [anon_sym_true] = ACTIONS(708), + [anon_sym_false] = ACTIONS(708), + [sym_self] = ACTIONS(708), + }, + [97] = { + [sym_identifier] = ACTIONS(712), + [anon_sym_LPAREN] = ACTIONS(714), + [anon_sym_EQ] = ACTIONS(712), + [anon_sym_AT] = ACTIONS(714), + [anon_sym_LBRACE] = ACTIONS(714), + [anon_sym_RBRACE] = ACTIONS(714), + [anon_sym_struct] = ACTIONS(712), + [anon_sym_EQ_EQ] = ACTIONS(714), + [anon_sym_let] = ACTIONS(712), + [anon_sym_const] = ACTIONS(712), + [anon_sym_if] = ACTIONS(712), + [anon_sym_BANG_EQ] = ACTIONS(714), + [anon_sym_PLUS_EQ] = ACTIONS(714), + [anon_sym_return] = ACTIONS(712), + [anon_sym_STAR] = ACTIONS(712), + [anon_sym_AMP] = ACTIONS(712), + [anon_sym_DASH] = ACTIONS(712), + [anon_sym_PLUS] = ACTIONS(712), + [anon_sym_SLASH] = ACTIONS(712), + [anon_sym_LBRACK] = ACTIONS(714), + [anon_sym_DOT] = ACTIONS(714), + [sym_number] = ACTIONS(714), + [anon_sym_SEMI] = ACTIONS(714), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(712), + [anon_sym_extern] = ACTIONS(712), + [anon_sym_type] = ACTIONS(712), + [anon_sym_COLON_COLON] = ACTIONS(714), + [anon_sym_fn] = ACTIONS(712), + [anon_sym_POUND] = ACTIONS(714), + [anon_sym_mod] = ACTIONS(712), + [anon_sym_enum] = ACTIONS(712), + [anon_sym_impl] = ACTIONS(712), + [anon_sym_trait] = ACTIONS(712), + [anon_sym_u8] = ACTIONS(712), + [anon_sym_i8] = ACTIONS(712), + [anon_sym_u16] = ACTIONS(712), + [anon_sym_i16] = ACTIONS(712), + [anon_sym_u32] = ACTIONS(712), + [anon_sym_i32] = ACTIONS(712), + [anon_sym_u64] = ACTIONS(712), + [anon_sym_i64] = ACTIONS(712), + [anon_sym_u128] = ACTIONS(712), + [anon_sym_i128] = ACTIONS(712), + [anon_sym_u256] = ACTIONS(712), + [anon_sym_i256] = ACTIONS(712), + [anon_sym_isize] = ACTIONS(712), + [anon_sym_usize] = ACTIONS(712), + [anon_sym_f32] = ACTIONS(712), + [anon_sym_f64] = ACTIONS(712), + [anon_sym_felt252] = ACTIONS(712), + [anon_sym_bool] = ACTIONS(712), + [anon_sym_str] = ACTIONS(712), + [anon_sym_char] = ACTIONS(712), + [anon_sym_GT] = ACTIONS(712), + [anon_sym_match] = ACTIONS(712), + [anon_sym_loop] = ACTIONS(712), + [anon_sym_BANG] = ACTIONS(712), + [anon_sym_TILDE] = ACTIONS(714), + [anon_sym_AMP_AMP] = ACTIONS(714), + [anon_sym_PIPE_PIPE] = ACTIONS(714), + [anon_sym_PIPE] = ACTIONS(712), + [anon_sym_CARET] = ACTIONS(712), + [anon_sym_LT2] = ACTIONS(712), + [anon_sym_LT_EQ] = ACTIONS(714), + [anon_sym_GT_EQ] = ACTIONS(714), + [anon_sym_LT_LT] = ACTIONS(712), + [anon_sym_GT_GT] = ACTIONS(712), + [anon_sym_PERCENT] = ACTIONS(712), + [anon_sym_DASH_EQ] = ACTIONS(714), + [anon_sym_STAR_EQ] = ACTIONS(714), + [anon_sym_SLASH_EQ] = ACTIONS(714), + [anon_sym_PERCENT_EQ] = ACTIONS(714), + [anon_sym_AMP_EQ] = ACTIONS(714), + [anon_sym_PIPE_EQ] = ACTIONS(714), + [anon_sym_CARET_EQ] = ACTIONS(714), + [anon_sym_LT_LT_EQ] = ACTIONS(714), + [anon_sym_GT_GT_EQ] = ACTIONS(714), + [anon_sym_QMARK] = ACTIONS(714), + [sym__cairo_1_short_string] = ACTIONS(714), + [anon_sym_true] = ACTIONS(712), + [anon_sym_false] = ACTIONS(712), + [sym_self] = ACTIONS(712), + }, + [98] = { + [sym_identifier] = ACTIONS(716), + [anon_sym_LPAREN] = ACTIONS(718), + [anon_sym_EQ] = ACTIONS(716), + [anon_sym_AT] = ACTIONS(718), + [anon_sym_LBRACE] = ACTIONS(718), + [anon_sym_RBRACE] = ACTIONS(718), + [anon_sym_struct] = ACTIONS(716), + [anon_sym_EQ_EQ] = ACTIONS(718), + [anon_sym_let] = ACTIONS(716), + [anon_sym_const] = ACTIONS(716), + [anon_sym_if] = ACTIONS(716), + [anon_sym_BANG_EQ] = ACTIONS(718), + [anon_sym_PLUS_EQ] = ACTIONS(718), + [anon_sym_return] = ACTIONS(716), + [anon_sym_STAR] = ACTIONS(716), + [anon_sym_AMP] = ACTIONS(716), + [anon_sym_DASH] = ACTIONS(716), + [anon_sym_PLUS] = ACTIONS(716), + [anon_sym_SLASH] = ACTIONS(716), + [anon_sym_LBRACK] = ACTIONS(718), + [anon_sym_DOT] = ACTIONS(718), + [sym_number] = ACTIONS(718), + [anon_sym_SEMI] = ACTIONS(718), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(716), + [anon_sym_extern] = ACTIONS(716), + [anon_sym_type] = ACTIONS(716), + [anon_sym_COLON_COLON] = ACTIONS(718), + [anon_sym_fn] = ACTIONS(716), + [anon_sym_POUND] = ACTIONS(718), + [anon_sym_mod] = ACTIONS(716), + [anon_sym_enum] = ACTIONS(716), + [anon_sym_impl] = ACTIONS(716), + [anon_sym_trait] = ACTIONS(716), + [anon_sym_u8] = ACTIONS(716), + [anon_sym_i8] = ACTIONS(716), + [anon_sym_u16] = ACTIONS(716), + [anon_sym_i16] = ACTIONS(716), + [anon_sym_u32] = ACTIONS(716), + [anon_sym_i32] = ACTIONS(716), + [anon_sym_u64] = ACTIONS(716), + [anon_sym_i64] = ACTIONS(716), + [anon_sym_u128] = ACTIONS(716), + [anon_sym_i128] = ACTIONS(716), + [anon_sym_u256] = ACTIONS(716), + [anon_sym_i256] = ACTIONS(716), + [anon_sym_isize] = ACTIONS(716), + [anon_sym_usize] = ACTIONS(716), + [anon_sym_f32] = ACTIONS(716), + [anon_sym_f64] = ACTIONS(716), + [anon_sym_felt252] = ACTIONS(716), + [anon_sym_bool] = ACTIONS(716), + [anon_sym_str] = ACTIONS(716), + [anon_sym_char] = ACTIONS(716), + [anon_sym_GT] = ACTIONS(716), + [anon_sym_match] = ACTIONS(716), + [anon_sym_loop] = ACTIONS(716), + [anon_sym_BANG] = ACTIONS(716), + [anon_sym_TILDE] = ACTIONS(718), + [anon_sym_AMP_AMP] = ACTIONS(718), + [anon_sym_PIPE_PIPE] = ACTIONS(718), + [anon_sym_PIPE] = ACTIONS(716), + [anon_sym_CARET] = ACTIONS(716), + [anon_sym_LT2] = ACTIONS(716), + [anon_sym_LT_EQ] = ACTIONS(718), + [anon_sym_GT_EQ] = ACTIONS(718), + [anon_sym_LT_LT] = ACTIONS(716), + [anon_sym_GT_GT] = ACTIONS(716), + [anon_sym_PERCENT] = ACTIONS(716), + [anon_sym_DASH_EQ] = ACTIONS(718), + [anon_sym_STAR_EQ] = ACTIONS(718), + [anon_sym_SLASH_EQ] = ACTIONS(718), + [anon_sym_PERCENT_EQ] = ACTIONS(718), + [anon_sym_AMP_EQ] = ACTIONS(718), + [anon_sym_PIPE_EQ] = ACTIONS(718), + [anon_sym_CARET_EQ] = ACTIONS(718), + [anon_sym_LT_LT_EQ] = ACTIONS(718), + [anon_sym_GT_GT_EQ] = ACTIONS(718), + [anon_sym_QMARK] = ACTIONS(718), + [sym__cairo_1_short_string] = ACTIONS(718), + [anon_sym_true] = ACTIONS(716), + [anon_sym_false] = ACTIONS(716), + [sym_self] = ACTIONS(716), + }, + [99] = { + [sym_identifier] = ACTIONS(720), + [anon_sym_LPAREN] = ACTIONS(722), + [anon_sym_EQ] = ACTIONS(720), + [anon_sym_AT] = ACTIONS(722), + [anon_sym_LBRACE] = ACTIONS(722), + [anon_sym_RBRACE] = ACTIONS(722), + [anon_sym_struct] = ACTIONS(720), + [anon_sym_EQ_EQ] = ACTIONS(722), + [anon_sym_let] = ACTIONS(720), + [anon_sym_const] = ACTIONS(720), + [anon_sym_if] = ACTIONS(720), + [anon_sym_BANG_EQ] = ACTIONS(722), + [anon_sym_PLUS_EQ] = ACTIONS(722), + [anon_sym_return] = ACTIONS(720), + [anon_sym_STAR] = ACTIONS(720), + [anon_sym_AMP] = ACTIONS(720), + [anon_sym_DASH] = ACTIONS(720), + [anon_sym_PLUS] = ACTIONS(720), + [anon_sym_SLASH] = ACTIONS(720), + [anon_sym_LBRACK] = ACTIONS(722), + [anon_sym_DOT] = ACTIONS(722), + [sym_number] = ACTIONS(722), + [anon_sym_SEMI] = ACTIONS(722), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(720), + [anon_sym_extern] = ACTIONS(720), + [anon_sym_type] = ACTIONS(720), + [anon_sym_COLON_COLON] = ACTIONS(722), + [anon_sym_fn] = ACTIONS(720), + [anon_sym_POUND] = ACTIONS(722), + [anon_sym_mod] = ACTIONS(720), + [anon_sym_enum] = ACTIONS(720), + [anon_sym_impl] = ACTIONS(720), + [anon_sym_trait] = ACTIONS(720), + [anon_sym_u8] = ACTIONS(720), + [anon_sym_i8] = ACTIONS(720), + [anon_sym_u16] = ACTIONS(720), + [anon_sym_i16] = ACTIONS(720), + [anon_sym_u32] = ACTIONS(720), + [anon_sym_i32] = ACTIONS(720), + [anon_sym_u64] = ACTIONS(720), + [anon_sym_i64] = ACTIONS(720), + [anon_sym_u128] = ACTIONS(720), + [anon_sym_i128] = ACTIONS(720), + [anon_sym_u256] = ACTIONS(720), + [anon_sym_i256] = ACTIONS(720), + [anon_sym_isize] = ACTIONS(720), + [anon_sym_usize] = ACTIONS(720), + [anon_sym_f32] = ACTIONS(720), + [anon_sym_f64] = ACTIONS(720), + [anon_sym_felt252] = ACTIONS(720), + [anon_sym_bool] = ACTIONS(720), + [anon_sym_str] = ACTIONS(720), + [anon_sym_char] = ACTIONS(720), + [anon_sym_GT] = ACTIONS(720), + [anon_sym_match] = ACTIONS(720), + [anon_sym_loop] = ACTIONS(720), + [anon_sym_BANG] = ACTIONS(720), + [anon_sym_TILDE] = ACTIONS(722), + [anon_sym_AMP_AMP] = ACTIONS(722), + [anon_sym_PIPE_PIPE] = ACTIONS(722), + [anon_sym_PIPE] = ACTIONS(720), + [anon_sym_CARET] = ACTIONS(720), + [anon_sym_LT2] = ACTIONS(720), + [anon_sym_LT_EQ] = ACTIONS(722), + [anon_sym_GT_EQ] = ACTIONS(722), + [anon_sym_LT_LT] = ACTIONS(720), + [anon_sym_GT_GT] = ACTIONS(720), + [anon_sym_PERCENT] = ACTIONS(720), + [anon_sym_DASH_EQ] = ACTIONS(722), + [anon_sym_STAR_EQ] = ACTIONS(722), + [anon_sym_SLASH_EQ] = ACTIONS(722), + [anon_sym_PERCENT_EQ] = ACTIONS(722), + [anon_sym_AMP_EQ] = ACTIONS(722), + [anon_sym_PIPE_EQ] = ACTIONS(722), + [anon_sym_CARET_EQ] = ACTIONS(722), + [anon_sym_LT_LT_EQ] = ACTIONS(722), + [anon_sym_GT_GT_EQ] = ACTIONS(722), + [anon_sym_QMARK] = ACTIONS(722), + [sym__cairo_1_short_string] = ACTIONS(722), + [anon_sym_true] = ACTIONS(720), + [anon_sym_false] = ACTIONS(720), + [sym_self] = ACTIONS(720), + }, + [100] = { + [sym_identifier] = ACTIONS(724), + [anon_sym_LPAREN] = ACTIONS(726), + [anon_sym_EQ] = ACTIONS(724), + [anon_sym_AT] = ACTIONS(726), + [anon_sym_LBRACE] = ACTIONS(726), + [anon_sym_RBRACE] = ACTIONS(726), + [anon_sym_struct] = ACTIONS(724), + [anon_sym_EQ_EQ] = ACTIONS(726), + [anon_sym_let] = ACTIONS(724), + [anon_sym_const] = ACTIONS(724), + [anon_sym_if] = ACTIONS(724), + [anon_sym_BANG_EQ] = ACTIONS(726), + [anon_sym_PLUS_EQ] = ACTIONS(726), + [anon_sym_return] = ACTIONS(724), + [anon_sym_STAR] = ACTIONS(724), + [anon_sym_AMP] = ACTIONS(724), + [anon_sym_DASH] = ACTIONS(724), + [anon_sym_PLUS] = ACTIONS(724), + [anon_sym_SLASH] = ACTIONS(724), + [anon_sym_LBRACK] = ACTIONS(726), + [anon_sym_DOT] = ACTIONS(726), + [sym_number] = ACTIONS(726), + [anon_sym_SEMI] = ACTIONS(726), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(724), + [anon_sym_extern] = ACTIONS(724), + [anon_sym_type] = ACTIONS(724), + [anon_sym_COLON_COLON] = ACTIONS(726), + [anon_sym_fn] = ACTIONS(724), + [anon_sym_POUND] = ACTIONS(726), + [anon_sym_mod] = ACTIONS(724), + [anon_sym_enum] = ACTIONS(724), + [anon_sym_impl] = ACTIONS(724), + [anon_sym_trait] = ACTIONS(724), + [anon_sym_u8] = ACTIONS(724), + [anon_sym_i8] = ACTIONS(724), + [anon_sym_u16] = ACTIONS(724), + [anon_sym_i16] = ACTIONS(724), + [anon_sym_u32] = ACTIONS(724), + [anon_sym_i32] = ACTIONS(724), + [anon_sym_u64] = ACTIONS(724), + [anon_sym_i64] = ACTIONS(724), + [anon_sym_u128] = ACTIONS(724), + [anon_sym_i128] = ACTIONS(724), + [anon_sym_u256] = ACTIONS(724), + [anon_sym_i256] = ACTIONS(724), + [anon_sym_isize] = ACTIONS(724), + [anon_sym_usize] = ACTIONS(724), + [anon_sym_f32] = ACTIONS(724), + [anon_sym_f64] = ACTIONS(724), + [anon_sym_felt252] = ACTIONS(724), + [anon_sym_bool] = ACTIONS(724), + [anon_sym_str] = ACTIONS(724), + [anon_sym_char] = ACTIONS(724), + [anon_sym_GT] = ACTIONS(724), + [anon_sym_match] = ACTIONS(724), + [anon_sym_loop] = ACTIONS(724), + [anon_sym_BANG] = ACTIONS(724), + [anon_sym_TILDE] = ACTIONS(726), + [anon_sym_AMP_AMP] = ACTIONS(726), + [anon_sym_PIPE_PIPE] = ACTIONS(726), + [anon_sym_PIPE] = ACTIONS(724), + [anon_sym_CARET] = ACTIONS(724), + [anon_sym_LT2] = ACTIONS(724), + [anon_sym_LT_EQ] = ACTIONS(726), + [anon_sym_GT_EQ] = ACTIONS(726), + [anon_sym_LT_LT] = ACTIONS(724), + [anon_sym_GT_GT] = ACTIONS(724), + [anon_sym_PERCENT] = ACTIONS(724), + [anon_sym_DASH_EQ] = ACTIONS(726), + [anon_sym_STAR_EQ] = ACTIONS(726), + [anon_sym_SLASH_EQ] = ACTIONS(726), + [anon_sym_PERCENT_EQ] = ACTIONS(726), + [anon_sym_AMP_EQ] = ACTIONS(726), + [anon_sym_PIPE_EQ] = ACTIONS(726), + [anon_sym_CARET_EQ] = ACTIONS(726), + [anon_sym_LT_LT_EQ] = ACTIONS(726), + [anon_sym_GT_GT_EQ] = ACTIONS(726), + [anon_sym_QMARK] = ACTIONS(726), + [sym__cairo_1_short_string] = ACTIONS(726), + [anon_sym_true] = ACTIONS(724), + [anon_sym_false] = ACTIONS(724), + [sym_self] = ACTIONS(724), + }, + [101] = { + [sym_identifier] = ACTIONS(728), + [anon_sym_LPAREN] = ACTIONS(730), + [anon_sym_EQ] = ACTIONS(728), + [anon_sym_AT] = ACTIONS(730), + [anon_sym_LBRACE] = ACTIONS(730), + [anon_sym_RBRACE] = ACTIONS(730), + [anon_sym_struct] = ACTIONS(728), + [anon_sym_EQ_EQ] = ACTIONS(730), + [anon_sym_let] = ACTIONS(728), + [anon_sym_const] = ACTIONS(728), + [anon_sym_if] = ACTIONS(728), + [anon_sym_BANG_EQ] = ACTIONS(730), + [anon_sym_PLUS_EQ] = ACTIONS(730), + [anon_sym_return] = ACTIONS(728), + [anon_sym_STAR] = ACTIONS(728), + [anon_sym_AMP] = ACTIONS(728), + [anon_sym_DASH] = ACTIONS(728), + [anon_sym_PLUS] = ACTIONS(728), + [anon_sym_SLASH] = ACTIONS(728), + [anon_sym_LBRACK] = ACTIONS(730), + [anon_sym_DOT] = ACTIONS(730), + [sym_number] = ACTIONS(730), + [anon_sym_SEMI] = ACTIONS(730), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(728), + [anon_sym_extern] = ACTIONS(728), + [anon_sym_type] = ACTIONS(728), + [anon_sym_COLON_COLON] = ACTIONS(730), + [anon_sym_fn] = ACTIONS(728), + [anon_sym_POUND] = ACTIONS(730), + [anon_sym_mod] = ACTIONS(728), + [anon_sym_enum] = ACTIONS(728), + [anon_sym_impl] = ACTIONS(728), + [anon_sym_trait] = ACTIONS(728), + [anon_sym_u8] = ACTIONS(728), + [anon_sym_i8] = ACTIONS(728), + [anon_sym_u16] = ACTIONS(728), + [anon_sym_i16] = ACTIONS(728), + [anon_sym_u32] = ACTIONS(728), + [anon_sym_i32] = ACTIONS(728), + [anon_sym_u64] = ACTIONS(728), + [anon_sym_i64] = ACTIONS(728), + [anon_sym_u128] = ACTIONS(728), + [anon_sym_i128] = ACTIONS(728), + [anon_sym_u256] = ACTIONS(728), + [anon_sym_i256] = ACTIONS(728), + [anon_sym_isize] = ACTIONS(728), + [anon_sym_usize] = ACTIONS(728), + [anon_sym_f32] = ACTIONS(728), + [anon_sym_f64] = ACTIONS(728), + [anon_sym_felt252] = ACTIONS(728), + [anon_sym_bool] = ACTIONS(728), + [anon_sym_str] = ACTIONS(728), + [anon_sym_char] = ACTIONS(728), + [anon_sym_GT] = ACTIONS(728), + [anon_sym_match] = ACTIONS(728), + [anon_sym_loop] = ACTIONS(728), + [anon_sym_BANG] = ACTIONS(728), + [anon_sym_TILDE] = ACTIONS(730), + [anon_sym_AMP_AMP] = ACTIONS(730), + [anon_sym_PIPE_PIPE] = ACTIONS(730), + [anon_sym_PIPE] = ACTIONS(728), + [anon_sym_CARET] = ACTIONS(728), + [anon_sym_LT2] = ACTIONS(728), + [anon_sym_LT_EQ] = ACTIONS(730), + [anon_sym_GT_EQ] = ACTIONS(730), + [anon_sym_LT_LT] = ACTIONS(728), + [anon_sym_GT_GT] = ACTIONS(728), + [anon_sym_PERCENT] = ACTIONS(728), + [anon_sym_DASH_EQ] = ACTIONS(730), + [anon_sym_STAR_EQ] = ACTIONS(730), + [anon_sym_SLASH_EQ] = ACTIONS(730), + [anon_sym_PERCENT_EQ] = ACTIONS(730), + [anon_sym_AMP_EQ] = ACTIONS(730), + [anon_sym_PIPE_EQ] = ACTIONS(730), + [anon_sym_CARET_EQ] = ACTIONS(730), + [anon_sym_LT_LT_EQ] = ACTIONS(730), + [anon_sym_GT_GT_EQ] = ACTIONS(730), + [anon_sym_QMARK] = ACTIONS(730), + [sym__cairo_1_short_string] = ACTIONS(730), + [anon_sym_true] = ACTIONS(728), + [anon_sym_false] = ACTIONS(728), + [sym_self] = ACTIONS(728), + }, + [102] = { + [sym_identifier] = ACTIONS(732), + [anon_sym_LPAREN] = ACTIONS(734), + [anon_sym_EQ] = ACTIONS(732), + [anon_sym_AT] = ACTIONS(734), + [anon_sym_LBRACE] = ACTIONS(734), + [anon_sym_RBRACE] = ACTIONS(734), + [anon_sym_struct] = ACTIONS(732), + [anon_sym_EQ_EQ] = ACTIONS(734), + [anon_sym_let] = ACTIONS(732), + [anon_sym_const] = ACTIONS(732), + [anon_sym_if] = ACTIONS(732), + [anon_sym_BANG_EQ] = ACTIONS(734), + [anon_sym_PLUS_EQ] = ACTIONS(734), + [anon_sym_return] = ACTIONS(732), + [anon_sym_STAR] = ACTIONS(732), + [anon_sym_AMP] = ACTIONS(732), + [anon_sym_DASH] = ACTIONS(732), + [anon_sym_PLUS] = ACTIONS(732), + [anon_sym_SLASH] = ACTIONS(732), + [anon_sym_LBRACK] = ACTIONS(734), + [anon_sym_DOT] = ACTIONS(734), + [sym_number] = ACTIONS(734), + [anon_sym_SEMI] = ACTIONS(734), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(732), + [anon_sym_extern] = ACTIONS(732), + [anon_sym_type] = ACTIONS(732), + [anon_sym_COLON_COLON] = ACTIONS(734), + [anon_sym_fn] = ACTIONS(732), + [anon_sym_POUND] = ACTIONS(734), + [anon_sym_mod] = ACTIONS(732), + [anon_sym_enum] = ACTIONS(732), + [anon_sym_impl] = ACTIONS(732), + [anon_sym_trait] = ACTIONS(732), + [anon_sym_u8] = ACTIONS(732), + [anon_sym_i8] = ACTIONS(732), + [anon_sym_u16] = ACTIONS(732), + [anon_sym_i16] = ACTIONS(732), + [anon_sym_u32] = ACTIONS(732), + [anon_sym_i32] = ACTIONS(732), + [anon_sym_u64] = ACTIONS(732), + [anon_sym_i64] = ACTIONS(732), + [anon_sym_u128] = ACTIONS(732), + [anon_sym_i128] = ACTIONS(732), + [anon_sym_u256] = ACTIONS(732), + [anon_sym_i256] = ACTIONS(732), + [anon_sym_isize] = ACTIONS(732), + [anon_sym_usize] = ACTIONS(732), + [anon_sym_f32] = ACTIONS(732), + [anon_sym_f64] = ACTIONS(732), + [anon_sym_felt252] = ACTIONS(732), + [anon_sym_bool] = ACTIONS(732), + [anon_sym_str] = ACTIONS(732), + [anon_sym_char] = ACTIONS(732), + [anon_sym_GT] = ACTIONS(732), + [anon_sym_match] = ACTIONS(732), + [anon_sym_loop] = ACTIONS(732), + [anon_sym_BANG] = ACTIONS(732), + [anon_sym_TILDE] = ACTIONS(734), + [anon_sym_AMP_AMP] = ACTIONS(734), + [anon_sym_PIPE_PIPE] = ACTIONS(734), + [anon_sym_PIPE] = ACTIONS(732), + [anon_sym_CARET] = ACTIONS(732), + [anon_sym_LT2] = ACTIONS(732), + [anon_sym_LT_EQ] = ACTIONS(734), + [anon_sym_GT_EQ] = ACTIONS(734), + [anon_sym_LT_LT] = ACTIONS(732), + [anon_sym_GT_GT] = ACTIONS(732), + [anon_sym_PERCENT] = ACTIONS(732), + [anon_sym_DASH_EQ] = ACTIONS(734), + [anon_sym_STAR_EQ] = ACTIONS(734), + [anon_sym_SLASH_EQ] = ACTIONS(734), + [anon_sym_PERCENT_EQ] = ACTIONS(734), + [anon_sym_AMP_EQ] = ACTIONS(734), + [anon_sym_PIPE_EQ] = ACTIONS(734), + [anon_sym_CARET_EQ] = ACTIONS(734), + [anon_sym_LT_LT_EQ] = ACTIONS(734), + [anon_sym_GT_GT_EQ] = ACTIONS(734), + [anon_sym_QMARK] = ACTIONS(734), + [sym__cairo_1_short_string] = ACTIONS(734), + [anon_sym_true] = ACTIONS(732), + [anon_sym_false] = ACTIONS(732), + [sym_self] = ACTIONS(732), + }, + [103] = { + [sym_identifier] = ACTIONS(736), + [anon_sym_LPAREN] = ACTIONS(738), + [anon_sym_EQ] = ACTIONS(736), + [anon_sym_AT] = ACTIONS(738), + [anon_sym_LBRACE] = ACTIONS(738), + [anon_sym_RBRACE] = ACTIONS(738), + [anon_sym_struct] = ACTIONS(736), + [anon_sym_EQ_EQ] = ACTIONS(738), + [anon_sym_let] = ACTIONS(736), + [anon_sym_const] = ACTIONS(736), + [anon_sym_if] = ACTIONS(736), + [anon_sym_BANG_EQ] = ACTIONS(738), + [anon_sym_PLUS_EQ] = ACTIONS(738), + [anon_sym_return] = ACTIONS(736), + [anon_sym_STAR] = ACTIONS(736), + [anon_sym_AMP] = ACTIONS(736), + [anon_sym_DASH] = ACTIONS(736), + [anon_sym_PLUS] = ACTIONS(736), + [anon_sym_SLASH] = ACTIONS(736), + [anon_sym_LBRACK] = ACTIONS(738), + [anon_sym_DOT] = ACTIONS(738), + [sym_number] = ACTIONS(738), + [anon_sym_SEMI] = ACTIONS(738), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(736), + [anon_sym_extern] = ACTIONS(736), + [anon_sym_type] = ACTIONS(736), + [anon_sym_COLON_COLON] = ACTIONS(738), + [anon_sym_fn] = ACTIONS(736), + [anon_sym_POUND] = ACTIONS(738), + [anon_sym_mod] = ACTIONS(736), + [anon_sym_enum] = ACTIONS(736), + [anon_sym_impl] = ACTIONS(736), + [anon_sym_trait] = ACTIONS(736), + [anon_sym_u8] = ACTIONS(736), + [anon_sym_i8] = ACTIONS(736), + [anon_sym_u16] = ACTIONS(736), + [anon_sym_i16] = ACTIONS(736), + [anon_sym_u32] = ACTIONS(736), + [anon_sym_i32] = ACTIONS(736), + [anon_sym_u64] = ACTIONS(736), + [anon_sym_i64] = ACTIONS(736), + [anon_sym_u128] = ACTIONS(736), + [anon_sym_i128] = ACTIONS(736), + [anon_sym_u256] = ACTIONS(736), + [anon_sym_i256] = ACTIONS(736), + [anon_sym_isize] = ACTIONS(736), + [anon_sym_usize] = ACTIONS(736), + [anon_sym_f32] = ACTIONS(736), + [anon_sym_f64] = ACTIONS(736), + [anon_sym_felt252] = ACTIONS(736), + [anon_sym_bool] = ACTIONS(736), + [anon_sym_str] = ACTIONS(736), + [anon_sym_char] = ACTIONS(736), + [anon_sym_GT] = ACTIONS(736), + [anon_sym_match] = ACTIONS(736), + [anon_sym_loop] = ACTIONS(736), + [anon_sym_BANG] = ACTIONS(736), + [anon_sym_TILDE] = ACTIONS(738), + [anon_sym_AMP_AMP] = ACTIONS(738), + [anon_sym_PIPE_PIPE] = ACTIONS(738), + [anon_sym_PIPE] = ACTIONS(736), + [anon_sym_CARET] = ACTIONS(736), + [anon_sym_LT2] = ACTIONS(736), + [anon_sym_LT_EQ] = ACTIONS(738), + [anon_sym_GT_EQ] = ACTIONS(738), + [anon_sym_LT_LT] = ACTIONS(736), + [anon_sym_GT_GT] = ACTIONS(736), + [anon_sym_PERCENT] = ACTIONS(736), + [anon_sym_DASH_EQ] = ACTIONS(738), + [anon_sym_STAR_EQ] = ACTIONS(738), + [anon_sym_SLASH_EQ] = ACTIONS(738), + [anon_sym_PERCENT_EQ] = ACTIONS(738), + [anon_sym_AMP_EQ] = ACTIONS(738), + [anon_sym_PIPE_EQ] = ACTIONS(738), + [anon_sym_CARET_EQ] = ACTIONS(738), + [anon_sym_LT_LT_EQ] = ACTIONS(738), + [anon_sym_GT_GT_EQ] = ACTIONS(738), + [anon_sym_QMARK] = ACTIONS(738), + [sym__cairo_1_short_string] = ACTIONS(738), + [anon_sym_true] = ACTIONS(736), + [anon_sym_false] = ACTIONS(736), + [sym_self] = ACTIONS(736), + }, + [104] = { + [sym_identifier] = ACTIONS(740), + [anon_sym_LPAREN] = ACTIONS(742), + [anon_sym_EQ] = ACTIONS(740), + [anon_sym_AT] = ACTIONS(742), + [anon_sym_LBRACE] = ACTIONS(742), + [anon_sym_RBRACE] = ACTIONS(742), + [anon_sym_struct] = ACTIONS(740), + [anon_sym_EQ_EQ] = ACTIONS(742), + [anon_sym_let] = ACTIONS(740), + [anon_sym_const] = ACTIONS(740), + [anon_sym_if] = ACTIONS(740), + [anon_sym_BANG_EQ] = ACTIONS(742), + [anon_sym_PLUS_EQ] = ACTIONS(742), + [anon_sym_return] = ACTIONS(740), + [anon_sym_STAR] = ACTIONS(740), + [anon_sym_AMP] = ACTIONS(740), + [anon_sym_DASH] = ACTIONS(740), + [anon_sym_PLUS] = ACTIONS(740), + [anon_sym_SLASH] = ACTIONS(740), + [anon_sym_LBRACK] = ACTIONS(742), + [anon_sym_DOT] = ACTIONS(742), + [sym_number] = ACTIONS(742), + [anon_sym_SEMI] = ACTIONS(742), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(740), + [anon_sym_extern] = ACTIONS(740), + [anon_sym_type] = ACTIONS(740), + [anon_sym_COLON_COLON] = ACTIONS(742), + [anon_sym_fn] = ACTIONS(740), + [anon_sym_POUND] = ACTIONS(742), + [anon_sym_mod] = ACTIONS(740), + [anon_sym_enum] = ACTIONS(740), + [anon_sym_impl] = ACTIONS(740), + [anon_sym_trait] = ACTIONS(740), + [anon_sym_u8] = ACTIONS(740), + [anon_sym_i8] = ACTIONS(740), + [anon_sym_u16] = ACTIONS(740), + [anon_sym_i16] = ACTIONS(740), + [anon_sym_u32] = ACTIONS(740), + [anon_sym_i32] = ACTIONS(740), + [anon_sym_u64] = ACTIONS(740), + [anon_sym_i64] = ACTIONS(740), + [anon_sym_u128] = ACTIONS(740), + [anon_sym_i128] = ACTIONS(740), + [anon_sym_u256] = ACTIONS(740), + [anon_sym_i256] = ACTIONS(740), + [anon_sym_isize] = ACTIONS(740), + [anon_sym_usize] = ACTIONS(740), + [anon_sym_f32] = ACTIONS(740), + [anon_sym_f64] = ACTIONS(740), + [anon_sym_felt252] = ACTIONS(740), + [anon_sym_bool] = ACTIONS(740), + [anon_sym_str] = ACTIONS(740), + [anon_sym_char] = ACTIONS(740), + [anon_sym_GT] = ACTIONS(740), + [anon_sym_match] = ACTIONS(740), + [anon_sym_loop] = ACTIONS(740), + [anon_sym_BANG] = ACTIONS(740), + [anon_sym_TILDE] = ACTIONS(742), + [anon_sym_AMP_AMP] = ACTIONS(742), + [anon_sym_PIPE_PIPE] = ACTIONS(742), + [anon_sym_PIPE] = ACTIONS(740), + [anon_sym_CARET] = ACTIONS(740), + [anon_sym_LT2] = ACTIONS(740), + [anon_sym_LT_EQ] = ACTIONS(742), + [anon_sym_GT_EQ] = ACTIONS(742), + [anon_sym_LT_LT] = ACTIONS(740), + [anon_sym_GT_GT] = ACTIONS(740), + [anon_sym_PERCENT] = ACTIONS(740), + [anon_sym_DASH_EQ] = ACTIONS(742), + [anon_sym_STAR_EQ] = ACTIONS(742), + [anon_sym_SLASH_EQ] = ACTIONS(742), + [anon_sym_PERCENT_EQ] = ACTIONS(742), + [anon_sym_AMP_EQ] = ACTIONS(742), + [anon_sym_PIPE_EQ] = ACTIONS(742), + [anon_sym_CARET_EQ] = ACTIONS(742), + [anon_sym_LT_LT_EQ] = ACTIONS(742), + [anon_sym_GT_GT_EQ] = ACTIONS(742), + [anon_sym_QMARK] = ACTIONS(742), + [sym__cairo_1_short_string] = ACTIONS(742), + [anon_sym_true] = ACTIONS(740), + [anon_sym_false] = ACTIONS(740), + [sym_self] = ACTIONS(740), + }, + [105] = { + [sym_identifier] = ACTIONS(744), + [anon_sym_LPAREN] = ACTIONS(746), + [anon_sym_EQ] = ACTIONS(744), + [anon_sym_AT] = ACTIONS(746), + [anon_sym_LBRACE] = ACTIONS(746), + [anon_sym_RBRACE] = ACTIONS(746), + [anon_sym_struct] = ACTIONS(744), + [anon_sym_EQ_EQ] = ACTIONS(746), + [anon_sym_let] = ACTIONS(744), + [anon_sym_const] = ACTIONS(744), + [anon_sym_if] = ACTIONS(744), + [anon_sym_BANG_EQ] = ACTIONS(746), + [anon_sym_PLUS_EQ] = ACTIONS(746), + [anon_sym_return] = ACTIONS(744), + [anon_sym_STAR] = ACTIONS(744), + [anon_sym_AMP] = ACTIONS(744), + [anon_sym_DASH] = ACTIONS(744), + [anon_sym_PLUS] = ACTIONS(744), + [anon_sym_SLASH] = ACTIONS(744), + [anon_sym_LBRACK] = ACTIONS(746), + [anon_sym_DOT] = ACTIONS(746), + [sym_number] = ACTIONS(746), + [anon_sym_SEMI] = ACTIONS(746), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(744), + [anon_sym_extern] = ACTIONS(744), + [anon_sym_type] = ACTIONS(744), + [anon_sym_COLON_COLON] = ACTIONS(746), + [anon_sym_fn] = ACTIONS(744), + [anon_sym_POUND] = ACTIONS(746), + [anon_sym_mod] = ACTIONS(744), + [anon_sym_enum] = ACTIONS(744), + [anon_sym_impl] = ACTIONS(744), + [anon_sym_trait] = ACTIONS(744), + [anon_sym_u8] = ACTIONS(744), + [anon_sym_i8] = ACTIONS(744), + [anon_sym_u16] = ACTIONS(744), + [anon_sym_i16] = ACTIONS(744), + [anon_sym_u32] = ACTIONS(744), + [anon_sym_i32] = ACTIONS(744), + [anon_sym_u64] = ACTIONS(744), + [anon_sym_i64] = ACTIONS(744), + [anon_sym_u128] = ACTIONS(744), + [anon_sym_i128] = ACTIONS(744), + [anon_sym_u256] = ACTIONS(744), + [anon_sym_i256] = ACTIONS(744), + [anon_sym_isize] = ACTIONS(744), + [anon_sym_usize] = ACTIONS(744), + [anon_sym_f32] = ACTIONS(744), + [anon_sym_f64] = ACTIONS(744), + [anon_sym_felt252] = ACTIONS(744), + [anon_sym_bool] = ACTIONS(744), + [anon_sym_str] = ACTIONS(744), + [anon_sym_char] = ACTIONS(744), + [anon_sym_GT] = ACTIONS(744), + [anon_sym_match] = ACTIONS(744), + [anon_sym_loop] = ACTIONS(744), + [anon_sym_BANG] = ACTIONS(744), + [anon_sym_TILDE] = ACTIONS(746), + [anon_sym_AMP_AMP] = ACTIONS(746), + [anon_sym_PIPE_PIPE] = ACTIONS(746), + [anon_sym_PIPE] = ACTIONS(744), + [anon_sym_CARET] = ACTIONS(744), + [anon_sym_LT2] = ACTIONS(744), + [anon_sym_LT_EQ] = ACTIONS(746), + [anon_sym_GT_EQ] = ACTIONS(746), + [anon_sym_LT_LT] = ACTIONS(744), + [anon_sym_GT_GT] = ACTIONS(744), + [anon_sym_PERCENT] = ACTIONS(744), + [anon_sym_DASH_EQ] = ACTIONS(746), + [anon_sym_STAR_EQ] = ACTIONS(746), + [anon_sym_SLASH_EQ] = ACTIONS(746), + [anon_sym_PERCENT_EQ] = ACTIONS(746), + [anon_sym_AMP_EQ] = ACTIONS(746), + [anon_sym_PIPE_EQ] = ACTIONS(746), + [anon_sym_CARET_EQ] = ACTIONS(746), + [anon_sym_LT_LT_EQ] = ACTIONS(746), + [anon_sym_GT_GT_EQ] = ACTIONS(746), + [anon_sym_QMARK] = ACTIONS(746), + [sym__cairo_1_short_string] = ACTIONS(746), + [anon_sym_true] = ACTIONS(744), + [anon_sym_false] = ACTIONS(744), + [sym_self] = ACTIONS(744), + }, + [106] = { + [sym_identifier] = ACTIONS(748), + [anon_sym_LPAREN] = ACTIONS(750), + [anon_sym_EQ] = ACTIONS(748), + [anon_sym_AT] = ACTIONS(750), + [anon_sym_LBRACE] = ACTIONS(750), + [anon_sym_RBRACE] = ACTIONS(750), + [anon_sym_struct] = ACTIONS(748), + [anon_sym_EQ_EQ] = ACTIONS(750), + [anon_sym_let] = ACTIONS(748), + [anon_sym_const] = ACTIONS(748), + [anon_sym_if] = ACTIONS(748), + [anon_sym_BANG_EQ] = ACTIONS(750), + [anon_sym_PLUS_EQ] = ACTIONS(750), + [anon_sym_return] = ACTIONS(748), + [anon_sym_STAR] = ACTIONS(748), + [anon_sym_AMP] = ACTIONS(748), + [anon_sym_DASH] = ACTIONS(748), + [anon_sym_PLUS] = ACTIONS(748), + [anon_sym_SLASH] = ACTIONS(748), + [anon_sym_LBRACK] = ACTIONS(750), + [anon_sym_DOT] = ACTIONS(750), + [sym_number] = ACTIONS(750), + [anon_sym_SEMI] = ACTIONS(750), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(748), + [anon_sym_extern] = ACTIONS(748), + [anon_sym_type] = ACTIONS(748), + [anon_sym_COLON_COLON] = ACTIONS(750), + [anon_sym_fn] = ACTIONS(748), + [anon_sym_POUND] = ACTIONS(750), + [anon_sym_mod] = ACTIONS(748), + [anon_sym_enum] = ACTIONS(748), + [anon_sym_impl] = ACTIONS(748), + [anon_sym_trait] = ACTIONS(748), + [anon_sym_u8] = ACTIONS(748), + [anon_sym_i8] = ACTIONS(748), + [anon_sym_u16] = ACTIONS(748), + [anon_sym_i16] = ACTIONS(748), + [anon_sym_u32] = ACTIONS(748), + [anon_sym_i32] = ACTIONS(748), + [anon_sym_u64] = ACTIONS(748), + [anon_sym_i64] = ACTIONS(748), + [anon_sym_u128] = ACTIONS(748), + [anon_sym_i128] = ACTIONS(748), + [anon_sym_u256] = ACTIONS(748), + [anon_sym_i256] = ACTIONS(748), + [anon_sym_isize] = ACTIONS(748), + [anon_sym_usize] = ACTIONS(748), + [anon_sym_f32] = ACTIONS(748), + [anon_sym_f64] = ACTIONS(748), + [anon_sym_felt252] = ACTIONS(748), + [anon_sym_bool] = ACTIONS(748), + [anon_sym_str] = ACTIONS(748), + [anon_sym_char] = ACTIONS(748), + [anon_sym_GT] = ACTIONS(748), + [anon_sym_match] = ACTIONS(748), + [anon_sym_loop] = ACTIONS(748), + [anon_sym_BANG] = ACTIONS(748), + [anon_sym_TILDE] = ACTIONS(750), + [anon_sym_AMP_AMP] = ACTIONS(750), + [anon_sym_PIPE_PIPE] = ACTIONS(750), + [anon_sym_PIPE] = ACTIONS(748), + [anon_sym_CARET] = ACTIONS(748), + [anon_sym_LT2] = ACTIONS(748), + [anon_sym_LT_EQ] = ACTIONS(750), + [anon_sym_GT_EQ] = ACTIONS(750), + [anon_sym_LT_LT] = ACTIONS(748), + [anon_sym_GT_GT] = ACTIONS(748), + [anon_sym_PERCENT] = ACTIONS(748), + [anon_sym_DASH_EQ] = ACTIONS(750), + [anon_sym_STAR_EQ] = ACTIONS(750), + [anon_sym_SLASH_EQ] = ACTIONS(750), + [anon_sym_PERCENT_EQ] = ACTIONS(750), + [anon_sym_AMP_EQ] = ACTIONS(750), + [anon_sym_PIPE_EQ] = ACTIONS(750), + [anon_sym_CARET_EQ] = ACTIONS(750), + [anon_sym_LT_LT_EQ] = ACTIONS(750), + [anon_sym_GT_GT_EQ] = ACTIONS(750), + [anon_sym_QMARK] = ACTIONS(750), + [sym__cairo_1_short_string] = ACTIONS(750), + [anon_sym_true] = ACTIONS(748), + [anon_sym_false] = ACTIONS(748), + [sym_self] = ACTIONS(748), + }, + [107] = { + [sym_identifier] = ACTIONS(752), + [anon_sym_LPAREN] = ACTIONS(754), + [anon_sym_EQ] = ACTIONS(752), + [anon_sym_AT] = ACTIONS(754), + [anon_sym_LBRACE] = ACTIONS(754), + [anon_sym_RBRACE] = ACTIONS(754), + [anon_sym_struct] = ACTIONS(752), + [anon_sym_EQ_EQ] = ACTIONS(754), + [anon_sym_let] = ACTIONS(752), + [anon_sym_const] = ACTIONS(752), + [anon_sym_if] = ACTIONS(752), + [anon_sym_BANG_EQ] = ACTIONS(754), + [anon_sym_PLUS_EQ] = ACTIONS(754), + [anon_sym_return] = ACTIONS(752), + [anon_sym_STAR] = ACTIONS(752), + [anon_sym_AMP] = ACTIONS(752), + [anon_sym_DASH] = ACTIONS(752), + [anon_sym_PLUS] = ACTIONS(752), + [anon_sym_SLASH] = ACTIONS(752), + [anon_sym_LBRACK] = ACTIONS(754), + [anon_sym_DOT] = ACTIONS(754), + [sym_number] = ACTIONS(754), + [anon_sym_SEMI] = ACTIONS(754), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(752), + [anon_sym_extern] = ACTIONS(752), + [anon_sym_type] = ACTIONS(752), + [anon_sym_COLON_COLON] = ACTIONS(754), + [anon_sym_fn] = ACTIONS(752), + [anon_sym_POUND] = ACTIONS(754), + [anon_sym_mod] = ACTIONS(752), + [anon_sym_enum] = ACTIONS(752), + [anon_sym_impl] = ACTIONS(752), + [anon_sym_trait] = ACTIONS(752), + [anon_sym_u8] = ACTIONS(752), + [anon_sym_i8] = ACTIONS(752), + [anon_sym_u16] = ACTIONS(752), + [anon_sym_i16] = ACTIONS(752), + [anon_sym_u32] = ACTIONS(752), + [anon_sym_i32] = ACTIONS(752), + [anon_sym_u64] = ACTIONS(752), + [anon_sym_i64] = ACTIONS(752), + [anon_sym_u128] = ACTIONS(752), + [anon_sym_i128] = ACTIONS(752), + [anon_sym_u256] = ACTIONS(752), + [anon_sym_i256] = ACTIONS(752), + [anon_sym_isize] = ACTIONS(752), + [anon_sym_usize] = ACTIONS(752), + [anon_sym_f32] = ACTIONS(752), + [anon_sym_f64] = ACTIONS(752), + [anon_sym_felt252] = ACTIONS(752), + [anon_sym_bool] = ACTIONS(752), + [anon_sym_str] = ACTIONS(752), + [anon_sym_char] = ACTIONS(752), + [anon_sym_GT] = ACTIONS(752), + [anon_sym_match] = ACTIONS(752), + [anon_sym_loop] = ACTIONS(752), + [anon_sym_BANG] = ACTIONS(752), + [anon_sym_TILDE] = ACTIONS(754), + [anon_sym_AMP_AMP] = ACTIONS(754), + [anon_sym_PIPE_PIPE] = ACTIONS(754), + [anon_sym_PIPE] = ACTIONS(752), + [anon_sym_CARET] = ACTIONS(752), + [anon_sym_LT2] = ACTIONS(752), + [anon_sym_LT_EQ] = ACTIONS(754), + [anon_sym_GT_EQ] = ACTIONS(754), + [anon_sym_LT_LT] = ACTIONS(752), + [anon_sym_GT_GT] = ACTIONS(752), + [anon_sym_PERCENT] = ACTIONS(752), + [anon_sym_DASH_EQ] = ACTIONS(754), + [anon_sym_STAR_EQ] = ACTIONS(754), + [anon_sym_SLASH_EQ] = ACTIONS(754), + [anon_sym_PERCENT_EQ] = ACTIONS(754), + [anon_sym_AMP_EQ] = ACTIONS(754), + [anon_sym_PIPE_EQ] = ACTIONS(754), + [anon_sym_CARET_EQ] = ACTIONS(754), + [anon_sym_LT_LT_EQ] = ACTIONS(754), + [anon_sym_GT_GT_EQ] = ACTIONS(754), + [anon_sym_QMARK] = ACTIONS(754), + [sym__cairo_1_short_string] = ACTIONS(754), + [anon_sym_true] = ACTIONS(752), + [anon_sym_false] = ACTIONS(752), + [sym_self] = ACTIONS(752), + }, + [108] = { + [sym_identifier] = ACTIONS(756), + [anon_sym_LPAREN] = ACTIONS(758), + [anon_sym_EQ] = ACTIONS(756), + [anon_sym_AT] = ACTIONS(758), + [anon_sym_LBRACE] = ACTIONS(758), + [anon_sym_RBRACE] = ACTIONS(758), + [anon_sym_struct] = ACTIONS(756), + [anon_sym_EQ_EQ] = ACTIONS(758), + [anon_sym_let] = ACTIONS(756), + [anon_sym_const] = ACTIONS(756), + [anon_sym_if] = ACTIONS(756), + [anon_sym_BANG_EQ] = ACTIONS(758), + [anon_sym_PLUS_EQ] = ACTIONS(758), + [anon_sym_return] = ACTIONS(756), + [anon_sym_STAR] = ACTIONS(756), + [anon_sym_AMP] = ACTIONS(756), + [anon_sym_DASH] = ACTIONS(756), + [anon_sym_PLUS] = ACTIONS(756), + [anon_sym_SLASH] = ACTIONS(756), + [anon_sym_LBRACK] = ACTIONS(758), + [anon_sym_DOT] = ACTIONS(758), + [sym_number] = ACTIONS(758), + [anon_sym_SEMI] = ACTIONS(758), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(756), + [anon_sym_extern] = ACTIONS(756), + [anon_sym_type] = ACTIONS(756), + [anon_sym_COLON_COLON] = ACTIONS(758), + [anon_sym_fn] = ACTIONS(756), + [anon_sym_POUND] = ACTIONS(758), + [anon_sym_mod] = ACTIONS(756), + [anon_sym_enum] = ACTIONS(756), + [anon_sym_impl] = ACTIONS(756), + [anon_sym_trait] = ACTIONS(756), + [anon_sym_u8] = ACTIONS(756), + [anon_sym_i8] = ACTIONS(756), + [anon_sym_u16] = ACTIONS(756), + [anon_sym_i16] = ACTIONS(756), + [anon_sym_u32] = ACTIONS(756), + [anon_sym_i32] = ACTIONS(756), + [anon_sym_u64] = ACTIONS(756), + [anon_sym_i64] = ACTIONS(756), + [anon_sym_u128] = ACTIONS(756), + [anon_sym_i128] = ACTIONS(756), + [anon_sym_u256] = ACTIONS(756), + [anon_sym_i256] = ACTIONS(756), + [anon_sym_isize] = ACTIONS(756), + [anon_sym_usize] = ACTIONS(756), + [anon_sym_f32] = ACTIONS(756), + [anon_sym_f64] = ACTIONS(756), + [anon_sym_felt252] = ACTIONS(756), + [anon_sym_bool] = ACTIONS(756), + [anon_sym_str] = ACTIONS(756), + [anon_sym_char] = ACTIONS(756), + [anon_sym_GT] = ACTIONS(756), + [anon_sym_match] = ACTIONS(756), + [anon_sym_loop] = ACTIONS(756), + [anon_sym_BANG] = ACTIONS(756), + [anon_sym_TILDE] = ACTIONS(758), + [anon_sym_AMP_AMP] = ACTIONS(758), + [anon_sym_PIPE_PIPE] = ACTIONS(758), + [anon_sym_PIPE] = ACTIONS(756), + [anon_sym_CARET] = ACTIONS(756), + [anon_sym_LT2] = ACTIONS(756), + [anon_sym_LT_EQ] = ACTIONS(758), + [anon_sym_GT_EQ] = ACTIONS(758), + [anon_sym_LT_LT] = ACTIONS(756), + [anon_sym_GT_GT] = ACTIONS(756), + [anon_sym_PERCENT] = ACTIONS(756), + [anon_sym_DASH_EQ] = ACTIONS(758), + [anon_sym_STAR_EQ] = ACTIONS(758), + [anon_sym_SLASH_EQ] = ACTIONS(758), + [anon_sym_PERCENT_EQ] = ACTIONS(758), + [anon_sym_AMP_EQ] = ACTIONS(758), + [anon_sym_PIPE_EQ] = ACTIONS(758), + [anon_sym_CARET_EQ] = ACTIONS(758), + [anon_sym_LT_LT_EQ] = ACTIONS(758), + [anon_sym_GT_GT_EQ] = ACTIONS(758), + [anon_sym_QMARK] = ACTIONS(758), + [sym__cairo_1_short_string] = ACTIONS(758), + [anon_sym_true] = ACTIONS(756), + [anon_sym_false] = ACTIONS(756), + [sym_self] = ACTIONS(756), + }, + [109] = { + [sym_identifier] = ACTIONS(760), + [anon_sym_LPAREN] = ACTIONS(762), + [anon_sym_EQ] = ACTIONS(760), + [anon_sym_AT] = ACTIONS(762), + [anon_sym_LBRACE] = ACTIONS(762), + [anon_sym_RBRACE] = ACTIONS(762), + [anon_sym_struct] = ACTIONS(760), + [anon_sym_EQ_EQ] = ACTIONS(762), + [anon_sym_let] = ACTIONS(760), + [anon_sym_const] = ACTIONS(760), + [anon_sym_if] = ACTIONS(760), + [anon_sym_BANG_EQ] = ACTIONS(762), + [anon_sym_PLUS_EQ] = ACTIONS(762), + [anon_sym_return] = ACTIONS(760), + [anon_sym_STAR] = ACTIONS(760), + [anon_sym_AMP] = ACTIONS(760), + [anon_sym_DASH] = ACTIONS(760), + [anon_sym_PLUS] = ACTIONS(760), + [anon_sym_SLASH] = ACTIONS(760), + [anon_sym_LBRACK] = ACTIONS(762), + [anon_sym_DOT] = ACTIONS(762), + [sym_number] = ACTIONS(762), + [anon_sym_SEMI] = ACTIONS(762), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(760), + [anon_sym_extern] = ACTIONS(760), + [anon_sym_type] = ACTIONS(760), + [anon_sym_COLON_COLON] = ACTIONS(762), + [anon_sym_fn] = ACTIONS(760), + [anon_sym_POUND] = ACTIONS(762), + [anon_sym_mod] = ACTIONS(760), + [anon_sym_enum] = ACTIONS(760), + [anon_sym_impl] = ACTIONS(760), + [anon_sym_trait] = ACTIONS(760), + [anon_sym_u8] = ACTIONS(760), + [anon_sym_i8] = ACTIONS(760), + [anon_sym_u16] = ACTIONS(760), + [anon_sym_i16] = ACTIONS(760), + [anon_sym_u32] = ACTIONS(760), + [anon_sym_i32] = ACTIONS(760), + [anon_sym_u64] = ACTIONS(760), + [anon_sym_i64] = ACTIONS(760), + [anon_sym_u128] = ACTIONS(760), + [anon_sym_i128] = ACTIONS(760), + [anon_sym_u256] = ACTIONS(760), + [anon_sym_i256] = ACTIONS(760), + [anon_sym_isize] = ACTIONS(760), + [anon_sym_usize] = ACTIONS(760), + [anon_sym_f32] = ACTIONS(760), + [anon_sym_f64] = ACTIONS(760), + [anon_sym_felt252] = ACTIONS(760), + [anon_sym_bool] = ACTIONS(760), + [anon_sym_str] = ACTIONS(760), + [anon_sym_char] = ACTIONS(760), + [anon_sym_GT] = ACTIONS(760), + [anon_sym_match] = ACTIONS(760), + [anon_sym_loop] = ACTIONS(760), + [anon_sym_BANG] = ACTIONS(760), + [anon_sym_TILDE] = ACTIONS(762), + [anon_sym_AMP_AMP] = ACTIONS(762), + [anon_sym_PIPE_PIPE] = ACTIONS(762), + [anon_sym_PIPE] = ACTIONS(760), + [anon_sym_CARET] = ACTIONS(760), + [anon_sym_LT2] = ACTIONS(760), + [anon_sym_LT_EQ] = ACTIONS(762), + [anon_sym_GT_EQ] = ACTIONS(762), + [anon_sym_LT_LT] = ACTIONS(760), + [anon_sym_GT_GT] = ACTIONS(760), + [anon_sym_PERCENT] = ACTIONS(760), + [anon_sym_DASH_EQ] = ACTIONS(762), + [anon_sym_STAR_EQ] = ACTIONS(762), + [anon_sym_SLASH_EQ] = ACTIONS(762), + [anon_sym_PERCENT_EQ] = ACTIONS(762), + [anon_sym_AMP_EQ] = ACTIONS(762), + [anon_sym_PIPE_EQ] = ACTIONS(762), + [anon_sym_CARET_EQ] = ACTIONS(762), + [anon_sym_LT_LT_EQ] = ACTIONS(762), + [anon_sym_GT_GT_EQ] = ACTIONS(762), + [anon_sym_QMARK] = ACTIONS(762), + [sym__cairo_1_short_string] = ACTIONS(762), + [anon_sym_true] = ACTIONS(760), + [anon_sym_false] = ACTIONS(760), + [sym_self] = ACTIONS(760), + }, + [110] = { + [sym_identifier] = ACTIONS(764), + [anon_sym_LPAREN] = ACTIONS(766), + [anon_sym_EQ] = ACTIONS(764), + [anon_sym_AT] = ACTIONS(766), + [anon_sym_LBRACE] = ACTIONS(766), + [anon_sym_RBRACE] = ACTIONS(766), + [anon_sym_struct] = ACTIONS(764), + [anon_sym_EQ_EQ] = ACTIONS(766), + [anon_sym_let] = ACTIONS(764), + [anon_sym_const] = ACTIONS(764), + [anon_sym_if] = ACTIONS(764), + [anon_sym_BANG_EQ] = ACTIONS(766), + [anon_sym_PLUS_EQ] = ACTIONS(766), + [anon_sym_return] = ACTIONS(764), + [anon_sym_STAR] = ACTIONS(764), + [anon_sym_AMP] = ACTIONS(764), + [anon_sym_DASH] = ACTIONS(764), + [anon_sym_PLUS] = ACTIONS(764), + [anon_sym_SLASH] = ACTIONS(764), + [anon_sym_LBRACK] = ACTIONS(766), + [anon_sym_DOT] = ACTIONS(766), + [sym_number] = ACTIONS(766), + [anon_sym_SEMI] = ACTIONS(766), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(764), + [anon_sym_extern] = ACTIONS(764), + [anon_sym_type] = ACTIONS(764), + [anon_sym_COLON_COLON] = ACTIONS(766), + [anon_sym_fn] = ACTIONS(764), + [anon_sym_POUND] = ACTIONS(766), + [anon_sym_mod] = ACTIONS(764), + [anon_sym_enum] = ACTIONS(764), + [anon_sym_impl] = ACTIONS(764), + [anon_sym_trait] = ACTIONS(764), + [anon_sym_u8] = ACTIONS(764), + [anon_sym_i8] = ACTIONS(764), + [anon_sym_u16] = ACTIONS(764), + [anon_sym_i16] = ACTIONS(764), + [anon_sym_u32] = ACTIONS(764), + [anon_sym_i32] = ACTIONS(764), + [anon_sym_u64] = ACTIONS(764), + [anon_sym_i64] = ACTIONS(764), + [anon_sym_u128] = ACTIONS(764), + [anon_sym_i128] = ACTIONS(764), + [anon_sym_u256] = ACTIONS(764), + [anon_sym_i256] = ACTIONS(764), + [anon_sym_isize] = ACTIONS(764), + [anon_sym_usize] = ACTIONS(764), + [anon_sym_f32] = ACTIONS(764), + [anon_sym_f64] = ACTIONS(764), + [anon_sym_felt252] = ACTIONS(764), + [anon_sym_bool] = ACTIONS(764), + [anon_sym_str] = ACTIONS(764), + [anon_sym_char] = ACTIONS(764), + [anon_sym_GT] = ACTIONS(764), + [anon_sym_match] = ACTIONS(764), + [anon_sym_loop] = ACTIONS(764), + [anon_sym_BANG] = ACTIONS(764), + [anon_sym_TILDE] = ACTIONS(766), + [anon_sym_AMP_AMP] = ACTIONS(766), + [anon_sym_PIPE_PIPE] = ACTIONS(766), + [anon_sym_PIPE] = ACTIONS(764), + [anon_sym_CARET] = ACTIONS(764), + [anon_sym_LT2] = ACTIONS(764), + [anon_sym_LT_EQ] = ACTIONS(766), + [anon_sym_GT_EQ] = ACTIONS(766), + [anon_sym_LT_LT] = ACTIONS(764), + [anon_sym_GT_GT] = ACTIONS(764), + [anon_sym_PERCENT] = ACTIONS(764), + [anon_sym_DASH_EQ] = ACTIONS(766), + [anon_sym_STAR_EQ] = ACTIONS(766), + [anon_sym_SLASH_EQ] = ACTIONS(766), + [anon_sym_PERCENT_EQ] = ACTIONS(766), + [anon_sym_AMP_EQ] = ACTIONS(766), + [anon_sym_PIPE_EQ] = ACTIONS(766), + [anon_sym_CARET_EQ] = ACTIONS(766), + [anon_sym_LT_LT_EQ] = ACTIONS(766), + [anon_sym_GT_GT_EQ] = ACTIONS(766), + [anon_sym_QMARK] = ACTIONS(766), + [sym__cairo_1_short_string] = ACTIONS(766), + [anon_sym_true] = ACTIONS(764), + [anon_sym_false] = ACTIONS(764), + [sym_self] = ACTIONS(764), + }, + [111] = { + [sym_identifier] = ACTIONS(768), + [anon_sym_LPAREN] = ACTIONS(770), + [anon_sym_EQ] = ACTIONS(768), + [anon_sym_AT] = ACTIONS(770), + [anon_sym_LBRACE] = ACTIONS(770), + [anon_sym_RBRACE] = ACTIONS(770), + [anon_sym_struct] = ACTIONS(768), + [anon_sym_EQ_EQ] = ACTIONS(770), + [anon_sym_let] = ACTIONS(768), + [anon_sym_const] = ACTIONS(768), + [anon_sym_if] = ACTIONS(768), + [anon_sym_BANG_EQ] = ACTIONS(770), + [anon_sym_PLUS_EQ] = ACTIONS(770), + [anon_sym_return] = ACTIONS(768), + [anon_sym_STAR] = ACTIONS(768), + [anon_sym_AMP] = ACTIONS(768), + [anon_sym_DASH] = ACTIONS(768), + [anon_sym_PLUS] = ACTIONS(768), + [anon_sym_SLASH] = ACTIONS(768), + [anon_sym_LBRACK] = ACTIONS(770), + [anon_sym_DOT] = ACTIONS(770), + [sym_number] = ACTIONS(770), + [anon_sym_SEMI] = ACTIONS(770), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(768), + [anon_sym_extern] = ACTIONS(768), + [anon_sym_type] = ACTIONS(768), + [anon_sym_COLON_COLON] = ACTIONS(770), + [anon_sym_fn] = ACTIONS(768), + [anon_sym_POUND] = ACTIONS(770), + [anon_sym_mod] = ACTIONS(768), + [anon_sym_enum] = ACTIONS(768), + [anon_sym_impl] = ACTIONS(768), + [anon_sym_trait] = ACTIONS(768), + [anon_sym_u8] = ACTIONS(768), + [anon_sym_i8] = ACTIONS(768), + [anon_sym_u16] = ACTIONS(768), + [anon_sym_i16] = ACTIONS(768), + [anon_sym_u32] = ACTIONS(768), + [anon_sym_i32] = ACTIONS(768), + [anon_sym_u64] = ACTIONS(768), + [anon_sym_i64] = ACTIONS(768), + [anon_sym_u128] = ACTIONS(768), + [anon_sym_i128] = ACTIONS(768), + [anon_sym_u256] = ACTIONS(768), + [anon_sym_i256] = ACTIONS(768), + [anon_sym_isize] = ACTIONS(768), + [anon_sym_usize] = ACTIONS(768), + [anon_sym_f32] = ACTIONS(768), + [anon_sym_f64] = ACTIONS(768), + [anon_sym_felt252] = ACTIONS(768), + [anon_sym_bool] = ACTIONS(768), + [anon_sym_str] = ACTIONS(768), + [anon_sym_char] = ACTIONS(768), + [anon_sym_GT] = ACTIONS(768), + [anon_sym_match] = ACTIONS(768), + [anon_sym_loop] = ACTIONS(768), + [anon_sym_BANG] = ACTIONS(768), + [anon_sym_TILDE] = ACTIONS(770), + [anon_sym_AMP_AMP] = ACTIONS(770), + [anon_sym_PIPE_PIPE] = ACTIONS(770), + [anon_sym_PIPE] = ACTIONS(768), + [anon_sym_CARET] = ACTIONS(768), + [anon_sym_LT2] = ACTIONS(768), + [anon_sym_LT_EQ] = ACTIONS(770), + [anon_sym_GT_EQ] = ACTIONS(770), + [anon_sym_LT_LT] = ACTIONS(768), + [anon_sym_GT_GT] = ACTIONS(768), + [anon_sym_PERCENT] = ACTIONS(768), + [anon_sym_DASH_EQ] = ACTIONS(770), + [anon_sym_STAR_EQ] = ACTIONS(770), + [anon_sym_SLASH_EQ] = ACTIONS(770), + [anon_sym_PERCENT_EQ] = ACTIONS(770), + [anon_sym_AMP_EQ] = ACTIONS(770), + [anon_sym_PIPE_EQ] = ACTIONS(770), + [anon_sym_CARET_EQ] = ACTIONS(770), + [anon_sym_LT_LT_EQ] = ACTIONS(770), + [anon_sym_GT_GT_EQ] = ACTIONS(770), + [anon_sym_QMARK] = ACTIONS(770), + [sym__cairo_1_short_string] = ACTIONS(770), + [anon_sym_true] = ACTIONS(768), + [anon_sym_false] = ACTIONS(768), + [sym_self] = ACTIONS(768), + }, + [112] = { + [sym_identifier] = ACTIONS(772), + [anon_sym_LPAREN] = ACTIONS(774), + [anon_sym_EQ] = ACTIONS(772), + [anon_sym_AT] = ACTIONS(774), + [anon_sym_LBRACE] = ACTIONS(774), + [anon_sym_RBRACE] = ACTIONS(774), + [anon_sym_struct] = ACTIONS(772), + [anon_sym_EQ_EQ] = ACTIONS(774), + [anon_sym_let] = ACTIONS(772), + [anon_sym_const] = ACTIONS(772), + [anon_sym_if] = ACTIONS(772), + [anon_sym_BANG_EQ] = ACTIONS(774), + [anon_sym_PLUS_EQ] = ACTIONS(774), + [anon_sym_return] = ACTIONS(772), + [anon_sym_STAR] = ACTIONS(772), + [anon_sym_AMP] = ACTIONS(772), + [anon_sym_DASH] = ACTIONS(772), + [anon_sym_PLUS] = ACTIONS(772), + [anon_sym_SLASH] = ACTIONS(772), + [anon_sym_LBRACK] = ACTIONS(774), + [anon_sym_DOT] = ACTIONS(774), + [sym_number] = ACTIONS(774), + [anon_sym_SEMI] = ACTIONS(774), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(772), + [anon_sym_extern] = ACTIONS(772), + [anon_sym_type] = ACTIONS(772), + [anon_sym_COLON_COLON] = ACTIONS(774), + [anon_sym_fn] = ACTIONS(772), + [anon_sym_POUND] = ACTIONS(774), + [anon_sym_mod] = ACTIONS(772), + [anon_sym_enum] = ACTIONS(772), + [anon_sym_impl] = ACTIONS(772), + [anon_sym_trait] = ACTIONS(772), + [anon_sym_u8] = ACTIONS(772), + [anon_sym_i8] = ACTIONS(772), + [anon_sym_u16] = ACTIONS(772), + [anon_sym_i16] = ACTIONS(772), + [anon_sym_u32] = ACTIONS(772), + [anon_sym_i32] = ACTIONS(772), + [anon_sym_u64] = ACTIONS(772), + [anon_sym_i64] = ACTIONS(772), + [anon_sym_u128] = ACTIONS(772), + [anon_sym_i128] = ACTIONS(772), + [anon_sym_u256] = ACTIONS(772), + [anon_sym_i256] = ACTIONS(772), + [anon_sym_isize] = ACTIONS(772), + [anon_sym_usize] = ACTIONS(772), + [anon_sym_f32] = ACTIONS(772), + [anon_sym_f64] = ACTIONS(772), + [anon_sym_felt252] = ACTIONS(772), + [anon_sym_bool] = ACTIONS(772), + [anon_sym_str] = ACTIONS(772), + [anon_sym_char] = ACTIONS(772), + [anon_sym_GT] = ACTIONS(772), + [anon_sym_match] = ACTIONS(772), + [anon_sym_loop] = ACTIONS(772), + [anon_sym_BANG] = ACTIONS(772), + [anon_sym_TILDE] = ACTIONS(774), + [anon_sym_AMP_AMP] = ACTIONS(774), + [anon_sym_PIPE_PIPE] = ACTIONS(774), + [anon_sym_PIPE] = ACTIONS(772), + [anon_sym_CARET] = ACTIONS(772), + [anon_sym_LT2] = ACTIONS(772), + [anon_sym_LT_EQ] = ACTIONS(774), + [anon_sym_GT_EQ] = ACTIONS(774), + [anon_sym_LT_LT] = ACTIONS(772), + [anon_sym_GT_GT] = ACTIONS(772), + [anon_sym_PERCENT] = ACTIONS(772), + [anon_sym_DASH_EQ] = ACTIONS(774), + [anon_sym_STAR_EQ] = ACTIONS(774), + [anon_sym_SLASH_EQ] = ACTIONS(774), + [anon_sym_PERCENT_EQ] = ACTIONS(774), + [anon_sym_AMP_EQ] = ACTIONS(774), + [anon_sym_PIPE_EQ] = ACTIONS(774), + [anon_sym_CARET_EQ] = ACTIONS(774), + [anon_sym_LT_LT_EQ] = ACTIONS(774), + [anon_sym_GT_GT_EQ] = ACTIONS(774), + [anon_sym_QMARK] = ACTIONS(774), + [sym__cairo_1_short_string] = ACTIONS(774), + [anon_sym_true] = ACTIONS(772), + [anon_sym_false] = ACTIONS(772), + [sym_self] = ACTIONS(772), + }, + [113] = { + [sym_identifier] = ACTIONS(776), + [anon_sym_LPAREN] = ACTIONS(778), + [anon_sym_EQ] = ACTIONS(776), + [anon_sym_AT] = ACTIONS(778), + [anon_sym_LBRACE] = ACTIONS(778), + [anon_sym_RBRACE] = ACTIONS(778), + [anon_sym_struct] = ACTIONS(776), + [anon_sym_EQ_EQ] = ACTIONS(778), + [anon_sym_let] = ACTIONS(776), + [anon_sym_const] = ACTIONS(776), + [anon_sym_if] = ACTIONS(776), + [anon_sym_BANG_EQ] = ACTIONS(778), + [anon_sym_PLUS_EQ] = ACTIONS(778), + [anon_sym_return] = ACTIONS(776), + [anon_sym_STAR] = ACTIONS(776), + [anon_sym_AMP] = ACTIONS(776), + [anon_sym_DASH] = ACTIONS(776), + [anon_sym_PLUS] = ACTIONS(776), + [anon_sym_SLASH] = ACTIONS(776), + [anon_sym_LBRACK] = ACTIONS(778), + [anon_sym_DOT] = ACTIONS(778), + [sym_number] = ACTIONS(778), + [anon_sym_SEMI] = ACTIONS(778), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(776), + [anon_sym_extern] = ACTIONS(776), + [anon_sym_type] = ACTIONS(776), + [anon_sym_COLON_COLON] = ACTIONS(778), + [anon_sym_fn] = ACTIONS(776), + [anon_sym_POUND] = ACTIONS(778), + [anon_sym_mod] = ACTIONS(776), + [anon_sym_enum] = ACTIONS(776), + [anon_sym_impl] = ACTIONS(776), + [anon_sym_trait] = ACTIONS(776), + [anon_sym_u8] = ACTIONS(776), + [anon_sym_i8] = ACTIONS(776), + [anon_sym_u16] = ACTIONS(776), + [anon_sym_i16] = ACTIONS(776), + [anon_sym_u32] = ACTIONS(776), + [anon_sym_i32] = ACTIONS(776), + [anon_sym_u64] = ACTIONS(776), + [anon_sym_i64] = ACTIONS(776), + [anon_sym_u128] = ACTIONS(776), + [anon_sym_i128] = ACTIONS(776), + [anon_sym_u256] = ACTIONS(776), + [anon_sym_i256] = ACTIONS(776), + [anon_sym_isize] = ACTIONS(776), + [anon_sym_usize] = ACTIONS(776), + [anon_sym_f32] = ACTIONS(776), + [anon_sym_f64] = ACTIONS(776), + [anon_sym_felt252] = ACTIONS(776), + [anon_sym_bool] = ACTIONS(776), + [anon_sym_str] = ACTIONS(776), + [anon_sym_char] = ACTIONS(776), + [anon_sym_GT] = ACTIONS(776), + [anon_sym_match] = ACTIONS(776), + [anon_sym_loop] = ACTIONS(776), + [anon_sym_BANG] = ACTIONS(776), + [anon_sym_TILDE] = ACTIONS(778), + [anon_sym_AMP_AMP] = ACTIONS(778), + [anon_sym_PIPE_PIPE] = ACTIONS(778), + [anon_sym_PIPE] = ACTIONS(776), + [anon_sym_CARET] = ACTIONS(776), + [anon_sym_LT2] = ACTIONS(776), + [anon_sym_LT_EQ] = ACTIONS(778), + [anon_sym_GT_EQ] = ACTIONS(778), + [anon_sym_LT_LT] = ACTIONS(776), + [anon_sym_GT_GT] = ACTIONS(776), + [anon_sym_PERCENT] = ACTIONS(776), + [anon_sym_DASH_EQ] = ACTIONS(778), + [anon_sym_STAR_EQ] = ACTIONS(778), + [anon_sym_SLASH_EQ] = ACTIONS(778), + [anon_sym_PERCENT_EQ] = ACTIONS(778), + [anon_sym_AMP_EQ] = ACTIONS(778), + [anon_sym_PIPE_EQ] = ACTIONS(778), + [anon_sym_CARET_EQ] = ACTIONS(778), + [anon_sym_LT_LT_EQ] = ACTIONS(778), + [anon_sym_GT_GT_EQ] = ACTIONS(778), + [anon_sym_QMARK] = ACTIONS(778), + [sym__cairo_1_short_string] = ACTIONS(778), + [anon_sym_true] = ACTIONS(776), + [anon_sym_false] = ACTIONS(776), + [sym_self] = ACTIONS(776), + }, + [114] = { + [sym_identifier] = ACTIONS(780), + [anon_sym_LPAREN] = ACTIONS(782), + [anon_sym_EQ] = ACTIONS(780), + [anon_sym_AT] = ACTIONS(782), + [anon_sym_LBRACE] = ACTIONS(782), + [anon_sym_RBRACE] = ACTIONS(782), + [anon_sym_struct] = ACTIONS(780), + [anon_sym_EQ_EQ] = ACTIONS(782), + [anon_sym_let] = ACTIONS(780), + [anon_sym_const] = ACTIONS(780), + [anon_sym_if] = ACTIONS(780), + [anon_sym_BANG_EQ] = ACTIONS(782), + [anon_sym_PLUS_EQ] = ACTIONS(782), + [anon_sym_return] = ACTIONS(780), + [anon_sym_STAR] = ACTIONS(780), + [anon_sym_AMP] = ACTIONS(780), + [anon_sym_DASH] = ACTIONS(780), + [anon_sym_PLUS] = ACTIONS(780), + [anon_sym_SLASH] = ACTIONS(780), + [anon_sym_LBRACK] = ACTIONS(782), + [anon_sym_DOT] = ACTIONS(782), + [sym_number] = ACTIONS(782), + [anon_sym_SEMI] = ACTIONS(782), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(780), + [anon_sym_extern] = ACTIONS(780), + [anon_sym_type] = ACTIONS(780), + [anon_sym_COLON_COLON] = ACTIONS(782), + [anon_sym_fn] = ACTIONS(780), + [anon_sym_POUND] = ACTIONS(782), + [anon_sym_mod] = ACTIONS(780), + [anon_sym_enum] = ACTIONS(780), + [anon_sym_impl] = ACTIONS(780), + [anon_sym_trait] = ACTIONS(780), + [anon_sym_u8] = ACTIONS(780), + [anon_sym_i8] = ACTIONS(780), + [anon_sym_u16] = ACTIONS(780), + [anon_sym_i16] = ACTIONS(780), + [anon_sym_u32] = ACTIONS(780), + [anon_sym_i32] = ACTIONS(780), + [anon_sym_u64] = ACTIONS(780), + [anon_sym_i64] = ACTIONS(780), + [anon_sym_u128] = ACTIONS(780), + [anon_sym_i128] = ACTIONS(780), + [anon_sym_u256] = ACTIONS(780), + [anon_sym_i256] = ACTIONS(780), + [anon_sym_isize] = ACTIONS(780), + [anon_sym_usize] = ACTIONS(780), + [anon_sym_f32] = ACTIONS(780), + [anon_sym_f64] = ACTIONS(780), + [anon_sym_felt252] = ACTIONS(780), + [anon_sym_bool] = ACTIONS(780), + [anon_sym_str] = ACTIONS(780), + [anon_sym_char] = ACTIONS(780), + [anon_sym_GT] = ACTIONS(780), + [anon_sym_match] = ACTIONS(780), + [anon_sym_loop] = ACTIONS(780), + [anon_sym_BANG] = ACTIONS(780), + [anon_sym_TILDE] = ACTIONS(782), + [anon_sym_AMP_AMP] = ACTIONS(782), + [anon_sym_PIPE_PIPE] = ACTIONS(782), + [anon_sym_PIPE] = ACTIONS(780), + [anon_sym_CARET] = ACTIONS(780), + [anon_sym_LT2] = ACTIONS(780), + [anon_sym_LT_EQ] = ACTIONS(782), + [anon_sym_GT_EQ] = ACTIONS(782), + [anon_sym_LT_LT] = ACTIONS(780), + [anon_sym_GT_GT] = ACTIONS(780), + [anon_sym_PERCENT] = ACTIONS(780), + [anon_sym_DASH_EQ] = ACTIONS(782), + [anon_sym_STAR_EQ] = ACTIONS(782), + [anon_sym_SLASH_EQ] = ACTIONS(782), + [anon_sym_PERCENT_EQ] = ACTIONS(782), + [anon_sym_AMP_EQ] = ACTIONS(782), + [anon_sym_PIPE_EQ] = ACTIONS(782), + [anon_sym_CARET_EQ] = ACTIONS(782), + [anon_sym_LT_LT_EQ] = ACTIONS(782), + [anon_sym_GT_GT_EQ] = ACTIONS(782), + [anon_sym_QMARK] = ACTIONS(782), + [sym__cairo_1_short_string] = ACTIONS(782), + [anon_sym_true] = ACTIONS(780), + [anon_sym_false] = ACTIONS(780), + [sym_self] = ACTIONS(780), + }, + [115] = { + [sym_identifier] = ACTIONS(784), + [anon_sym_LPAREN] = ACTIONS(786), + [anon_sym_EQ] = ACTIONS(784), + [anon_sym_AT] = ACTIONS(786), + [anon_sym_LBRACE] = ACTIONS(786), + [anon_sym_RBRACE] = ACTIONS(786), + [anon_sym_struct] = ACTIONS(784), + [anon_sym_EQ_EQ] = ACTIONS(786), + [anon_sym_let] = ACTIONS(784), + [anon_sym_const] = ACTIONS(784), + [anon_sym_if] = ACTIONS(784), + [anon_sym_BANG_EQ] = ACTIONS(786), + [anon_sym_PLUS_EQ] = ACTIONS(786), + [anon_sym_return] = ACTIONS(784), + [anon_sym_STAR] = ACTIONS(784), + [anon_sym_AMP] = ACTIONS(784), + [anon_sym_DASH] = ACTIONS(784), + [anon_sym_PLUS] = ACTIONS(784), + [anon_sym_SLASH] = ACTIONS(784), + [anon_sym_LBRACK] = ACTIONS(786), + [anon_sym_DOT] = ACTIONS(786), + [sym_number] = ACTIONS(786), + [anon_sym_SEMI] = ACTIONS(786), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(784), + [anon_sym_extern] = ACTIONS(784), + [anon_sym_type] = ACTIONS(784), + [anon_sym_COLON_COLON] = ACTIONS(786), + [anon_sym_fn] = ACTIONS(784), + [anon_sym_POUND] = ACTIONS(786), + [anon_sym_mod] = ACTIONS(784), + [anon_sym_enum] = ACTIONS(784), + [anon_sym_impl] = ACTIONS(784), + [anon_sym_trait] = ACTIONS(784), + [anon_sym_u8] = ACTIONS(784), + [anon_sym_i8] = ACTIONS(784), + [anon_sym_u16] = ACTIONS(784), + [anon_sym_i16] = ACTIONS(784), + [anon_sym_u32] = ACTIONS(784), + [anon_sym_i32] = ACTIONS(784), + [anon_sym_u64] = ACTIONS(784), + [anon_sym_i64] = ACTIONS(784), + [anon_sym_u128] = ACTIONS(784), + [anon_sym_i128] = ACTIONS(784), + [anon_sym_u256] = ACTIONS(784), + [anon_sym_i256] = ACTIONS(784), + [anon_sym_isize] = ACTIONS(784), + [anon_sym_usize] = ACTIONS(784), + [anon_sym_f32] = ACTIONS(784), + [anon_sym_f64] = ACTIONS(784), + [anon_sym_felt252] = ACTIONS(784), + [anon_sym_bool] = ACTIONS(784), + [anon_sym_str] = ACTIONS(784), + [anon_sym_char] = ACTIONS(784), + [anon_sym_GT] = ACTIONS(784), + [anon_sym_match] = ACTIONS(784), + [anon_sym_loop] = ACTIONS(784), + [anon_sym_BANG] = ACTIONS(784), + [anon_sym_TILDE] = ACTIONS(786), + [anon_sym_AMP_AMP] = ACTIONS(786), + [anon_sym_PIPE_PIPE] = ACTIONS(786), + [anon_sym_PIPE] = ACTIONS(784), + [anon_sym_CARET] = ACTIONS(784), + [anon_sym_LT2] = ACTIONS(784), + [anon_sym_LT_EQ] = ACTIONS(786), + [anon_sym_GT_EQ] = ACTIONS(786), + [anon_sym_LT_LT] = ACTIONS(784), + [anon_sym_GT_GT] = ACTIONS(784), + [anon_sym_PERCENT] = ACTIONS(784), + [anon_sym_DASH_EQ] = ACTIONS(786), + [anon_sym_STAR_EQ] = ACTIONS(786), + [anon_sym_SLASH_EQ] = ACTIONS(786), + [anon_sym_PERCENT_EQ] = ACTIONS(786), + [anon_sym_AMP_EQ] = ACTIONS(786), + [anon_sym_PIPE_EQ] = ACTIONS(786), + [anon_sym_CARET_EQ] = ACTIONS(786), + [anon_sym_LT_LT_EQ] = ACTIONS(786), + [anon_sym_GT_GT_EQ] = ACTIONS(786), + [anon_sym_QMARK] = ACTIONS(786), + [sym__cairo_1_short_string] = ACTIONS(786), + [anon_sym_true] = ACTIONS(784), + [anon_sym_false] = ACTIONS(784), + [sym_self] = ACTIONS(784), + }, + [116] = { + [sym_identifier] = ACTIONS(788), + [anon_sym_LPAREN] = ACTIONS(670), + [anon_sym_EQ] = ACTIONS(672), + [anon_sym_AT] = ACTIONS(790), + [anon_sym_LBRACE] = ACTIONS(790), + [anon_sym_RBRACE] = ACTIONS(790), + [anon_sym_struct] = ACTIONS(788), + [anon_sym_EQ_EQ] = ACTIONS(676), + [anon_sym_let] = ACTIONS(788), + [anon_sym_const] = ACTIONS(788), + [anon_sym_if] = ACTIONS(788), + [anon_sym_BANG_EQ] = ACTIONS(676), + [anon_sym_PLUS_EQ] = ACTIONS(678), + [anon_sym_return] = ACTIONS(788), + [anon_sym_STAR] = ACTIONS(680), + [anon_sym_AMP] = ACTIONS(682), + [anon_sym_DASH] = ACTIONS(684), + [anon_sym_PLUS] = ACTIONS(684), + [anon_sym_SLASH] = ACTIONS(680), + [anon_sym_LBRACK] = ACTIONS(686), + [anon_sym_DOT] = ACTIONS(688), + [sym_number] = ACTIONS(790), + [anon_sym_SEMI] = ACTIONS(790), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(788), + [anon_sym_extern] = ACTIONS(788), + [anon_sym_type] = ACTIONS(788), + [anon_sym_COLON_COLON] = ACTIONS(790), + [anon_sym_fn] = ACTIONS(788), + [anon_sym_POUND] = ACTIONS(790), + [anon_sym_mod] = ACTIONS(788), + [anon_sym_enum] = ACTIONS(788), + [anon_sym_impl] = ACTIONS(788), + [anon_sym_trait] = ACTIONS(788), + [anon_sym_u8] = ACTIONS(788), + [anon_sym_i8] = ACTIONS(788), + [anon_sym_u16] = ACTIONS(788), + [anon_sym_i16] = ACTIONS(788), + [anon_sym_u32] = ACTIONS(788), + [anon_sym_i32] = ACTIONS(788), + [anon_sym_u64] = ACTIONS(788), + [anon_sym_i64] = ACTIONS(788), + [anon_sym_u128] = ACTIONS(788), + [anon_sym_i128] = ACTIONS(788), + [anon_sym_u256] = ACTIONS(788), + [anon_sym_i256] = ACTIONS(788), + [anon_sym_isize] = ACTIONS(788), + [anon_sym_usize] = ACTIONS(788), + [anon_sym_f32] = ACTIONS(788), + [anon_sym_f64] = ACTIONS(788), + [anon_sym_felt252] = ACTIONS(788), + [anon_sym_bool] = ACTIONS(788), + [anon_sym_str] = ACTIONS(788), + [anon_sym_char] = ACTIONS(788), + [anon_sym_GT] = ACTIONS(690), + [anon_sym_match] = ACTIONS(788), + [anon_sym_loop] = ACTIONS(788), + [anon_sym_BANG] = ACTIONS(788), + [anon_sym_TILDE] = ACTIONS(790), + [anon_sym_AMP_AMP] = ACTIONS(692), + [anon_sym_PIPE_PIPE] = ACTIONS(694), + [anon_sym_PIPE] = ACTIONS(696), + [anon_sym_CARET] = ACTIONS(698), + [anon_sym_LT2] = ACTIONS(690), + [anon_sym_LT_EQ] = ACTIONS(676), + [anon_sym_GT_EQ] = ACTIONS(676), + [anon_sym_LT_LT] = ACTIONS(700), + [anon_sym_GT_GT] = ACTIONS(700), + [anon_sym_PERCENT] = ACTIONS(680), + [anon_sym_DASH_EQ] = ACTIONS(678), + [anon_sym_STAR_EQ] = ACTIONS(678), + [anon_sym_SLASH_EQ] = ACTIONS(678), + [anon_sym_PERCENT_EQ] = ACTIONS(678), + [anon_sym_AMP_EQ] = ACTIONS(678), + [anon_sym_PIPE_EQ] = ACTIONS(678), + [anon_sym_CARET_EQ] = ACTIONS(678), + [anon_sym_LT_LT_EQ] = ACTIONS(678), + [anon_sym_GT_GT_EQ] = ACTIONS(678), + [anon_sym_QMARK] = ACTIONS(790), + [sym__cairo_1_short_string] = ACTIONS(790), + [anon_sym_true] = ACTIONS(788), + [anon_sym_false] = ACTIONS(788), + [sym_self] = ACTIONS(788), + }, + [117] = { + [sym_identifier] = ACTIONS(792), + [anon_sym_LPAREN] = ACTIONS(794), + [anon_sym_EQ] = ACTIONS(792), + [anon_sym_AT] = ACTIONS(794), + [anon_sym_LBRACE] = ACTIONS(794), + [anon_sym_RBRACE] = ACTIONS(794), + [anon_sym_struct] = ACTIONS(792), + [anon_sym_EQ_EQ] = ACTIONS(794), + [anon_sym_let] = ACTIONS(792), + [anon_sym_const] = ACTIONS(792), + [anon_sym_if] = ACTIONS(792), + [anon_sym_BANG_EQ] = ACTIONS(794), + [anon_sym_PLUS_EQ] = ACTIONS(794), + [anon_sym_return] = ACTIONS(792), + [anon_sym_STAR] = ACTIONS(792), + [anon_sym_AMP] = ACTIONS(792), + [anon_sym_DASH] = ACTIONS(792), + [anon_sym_PLUS] = ACTIONS(792), + [anon_sym_SLASH] = ACTIONS(792), + [anon_sym_LBRACK] = ACTIONS(794), + [anon_sym_DOT] = ACTIONS(794), + [sym_number] = ACTIONS(794), + [anon_sym_SEMI] = ACTIONS(794), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(792), + [anon_sym_extern] = ACTIONS(792), + [anon_sym_type] = ACTIONS(792), + [anon_sym_COLON_COLON] = ACTIONS(794), + [anon_sym_fn] = ACTIONS(792), + [anon_sym_POUND] = ACTIONS(794), + [anon_sym_mod] = ACTIONS(792), + [anon_sym_enum] = ACTIONS(792), + [anon_sym_impl] = ACTIONS(792), + [anon_sym_trait] = ACTIONS(792), + [anon_sym_u8] = ACTIONS(792), + [anon_sym_i8] = ACTIONS(792), + [anon_sym_u16] = ACTIONS(792), + [anon_sym_i16] = ACTIONS(792), + [anon_sym_u32] = ACTIONS(792), + [anon_sym_i32] = ACTIONS(792), + [anon_sym_u64] = ACTIONS(792), + [anon_sym_i64] = ACTIONS(792), + [anon_sym_u128] = ACTIONS(792), + [anon_sym_i128] = ACTIONS(792), + [anon_sym_u256] = ACTIONS(792), + [anon_sym_i256] = ACTIONS(792), + [anon_sym_isize] = ACTIONS(792), + [anon_sym_usize] = ACTIONS(792), + [anon_sym_f32] = ACTIONS(792), + [anon_sym_f64] = ACTIONS(792), + [anon_sym_felt252] = ACTIONS(792), + [anon_sym_bool] = ACTIONS(792), + [anon_sym_str] = ACTIONS(792), + [anon_sym_char] = ACTIONS(792), + [anon_sym_GT] = ACTIONS(792), + [anon_sym_match] = ACTIONS(792), + [anon_sym_loop] = ACTIONS(792), + [anon_sym_BANG] = ACTIONS(792), + [anon_sym_TILDE] = ACTIONS(794), + [anon_sym_AMP_AMP] = ACTIONS(794), + [anon_sym_PIPE_PIPE] = ACTIONS(794), + [anon_sym_PIPE] = ACTIONS(792), + [anon_sym_CARET] = ACTIONS(792), + [anon_sym_LT2] = ACTIONS(792), + [anon_sym_LT_EQ] = ACTIONS(794), + [anon_sym_GT_EQ] = ACTIONS(794), + [anon_sym_LT_LT] = ACTIONS(792), + [anon_sym_GT_GT] = ACTIONS(792), + [anon_sym_PERCENT] = ACTIONS(792), + [anon_sym_DASH_EQ] = ACTIONS(794), + [anon_sym_STAR_EQ] = ACTIONS(794), + [anon_sym_SLASH_EQ] = ACTIONS(794), + [anon_sym_PERCENT_EQ] = ACTIONS(794), + [anon_sym_AMP_EQ] = ACTIONS(794), + [anon_sym_PIPE_EQ] = ACTIONS(794), + [anon_sym_CARET_EQ] = ACTIONS(794), + [anon_sym_LT_LT_EQ] = ACTIONS(794), + [anon_sym_GT_GT_EQ] = ACTIONS(794), + [anon_sym_QMARK] = ACTIONS(794), + [sym__cairo_1_short_string] = ACTIONS(794), + [anon_sym_true] = ACTIONS(792), + [anon_sym_false] = ACTIONS(792), + [sym_self] = ACTIONS(792), + }, + [118] = { + [sym_identifier] = ACTIONS(796), + [anon_sym_LPAREN] = ACTIONS(670), + [anon_sym_EQ] = ACTIONS(796), + [anon_sym_AT] = ACTIONS(798), + [anon_sym_LBRACE] = ACTIONS(798), + [anon_sym_RBRACE] = ACTIONS(798), + [anon_sym_struct] = ACTIONS(796), + [anon_sym_EQ_EQ] = ACTIONS(798), + [anon_sym_let] = ACTIONS(796), + [anon_sym_const] = ACTIONS(796), + [anon_sym_if] = ACTIONS(796), + [anon_sym_BANG_EQ] = ACTIONS(798), + [anon_sym_PLUS_EQ] = ACTIONS(798), + [anon_sym_return] = ACTIONS(796), + [anon_sym_STAR] = ACTIONS(796), + [anon_sym_AMP] = ACTIONS(796), + [anon_sym_DASH] = ACTIONS(796), + [anon_sym_PLUS] = ACTIONS(796), + [anon_sym_SLASH] = ACTIONS(796), + [anon_sym_LBRACK] = ACTIONS(686), + [anon_sym_DOT] = ACTIONS(688), + [sym_number] = ACTIONS(798), + [anon_sym_SEMI] = ACTIONS(798), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(796), + [anon_sym_extern] = ACTIONS(796), + [anon_sym_type] = ACTIONS(796), + [anon_sym_COLON_COLON] = ACTIONS(798), + [anon_sym_fn] = ACTIONS(796), + [anon_sym_POUND] = ACTIONS(798), + [anon_sym_mod] = ACTIONS(796), + [anon_sym_enum] = ACTIONS(796), + [anon_sym_impl] = ACTIONS(796), + [anon_sym_trait] = ACTIONS(796), + [anon_sym_u8] = ACTIONS(796), + [anon_sym_i8] = ACTIONS(796), + [anon_sym_u16] = ACTIONS(796), + [anon_sym_i16] = ACTIONS(796), + [anon_sym_u32] = ACTIONS(796), + [anon_sym_i32] = ACTIONS(796), + [anon_sym_u64] = ACTIONS(796), + [anon_sym_i64] = ACTIONS(796), + [anon_sym_u128] = ACTIONS(796), + [anon_sym_i128] = ACTIONS(796), + [anon_sym_u256] = ACTIONS(796), + [anon_sym_i256] = ACTIONS(796), + [anon_sym_isize] = ACTIONS(796), + [anon_sym_usize] = ACTIONS(796), + [anon_sym_f32] = ACTIONS(796), + [anon_sym_f64] = ACTIONS(796), + [anon_sym_felt252] = ACTIONS(796), + [anon_sym_bool] = ACTIONS(796), + [anon_sym_str] = ACTIONS(796), + [anon_sym_char] = ACTIONS(796), + [anon_sym_GT] = ACTIONS(796), + [anon_sym_match] = ACTIONS(796), + [anon_sym_loop] = ACTIONS(796), + [anon_sym_BANG] = ACTIONS(796), + [anon_sym_TILDE] = ACTIONS(798), + [anon_sym_AMP_AMP] = ACTIONS(798), + [anon_sym_PIPE_PIPE] = ACTIONS(798), + [anon_sym_PIPE] = ACTIONS(796), + [anon_sym_CARET] = ACTIONS(796), + [anon_sym_LT2] = ACTIONS(796), + [anon_sym_LT_EQ] = ACTIONS(798), + [anon_sym_GT_EQ] = ACTIONS(798), + [anon_sym_LT_LT] = ACTIONS(796), + [anon_sym_GT_GT] = ACTIONS(796), + [anon_sym_PERCENT] = ACTIONS(796), + [anon_sym_DASH_EQ] = ACTIONS(798), + [anon_sym_STAR_EQ] = ACTIONS(798), + [anon_sym_SLASH_EQ] = ACTIONS(798), + [anon_sym_PERCENT_EQ] = ACTIONS(798), + [anon_sym_AMP_EQ] = ACTIONS(798), + [anon_sym_PIPE_EQ] = ACTIONS(798), + [anon_sym_CARET_EQ] = ACTIONS(798), + [anon_sym_LT_LT_EQ] = ACTIONS(798), + [anon_sym_GT_GT_EQ] = ACTIONS(798), + [anon_sym_QMARK] = ACTIONS(798), + [sym__cairo_1_short_string] = ACTIONS(798), + [anon_sym_true] = ACTIONS(796), + [anon_sym_false] = ACTIONS(796), + [sym_self] = ACTIONS(796), + }, + [119] = { + [sym_identifier] = ACTIONS(800), + [anon_sym_LPAREN] = ACTIONS(802), + [anon_sym_EQ] = ACTIONS(800), + [anon_sym_AT] = ACTIONS(802), + [anon_sym_LBRACE] = ACTIONS(802), + [anon_sym_RBRACE] = ACTIONS(802), + [anon_sym_struct] = ACTIONS(800), + [anon_sym_EQ_EQ] = ACTIONS(802), + [anon_sym_let] = ACTIONS(800), + [anon_sym_const] = ACTIONS(800), + [anon_sym_if] = ACTIONS(800), + [anon_sym_BANG_EQ] = ACTIONS(802), + [anon_sym_PLUS_EQ] = ACTIONS(802), + [anon_sym_return] = ACTIONS(800), + [anon_sym_STAR] = ACTIONS(800), + [anon_sym_AMP] = ACTIONS(800), + [anon_sym_DASH] = ACTIONS(800), + [anon_sym_PLUS] = ACTIONS(800), + [anon_sym_SLASH] = ACTIONS(800), + [anon_sym_LBRACK] = ACTIONS(802), + [anon_sym_DOT] = ACTIONS(802), + [sym_number] = ACTIONS(802), + [anon_sym_SEMI] = ACTIONS(802), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(800), + [anon_sym_extern] = ACTIONS(800), + [anon_sym_type] = ACTIONS(800), + [anon_sym_COLON_COLON] = ACTIONS(802), + [anon_sym_fn] = ACTIONS(800), + [anon_sym_POUND] = ACTIONS(802), + [anon_sym_mod] = ACTIONS(800), + [anon_sym_enum] = ACTIONS(800), + [anon_sym_impl] = ACTIONS(800), + [anon_sym_trait] = ACTIONS(800), + [anon_sym_u8] = ACTIONS(800), + [anon_sym_i8] = ACTIONS(800), + [anon_sym_u16] = ACTIONS(800), + [anon_sym_i16] = ACTIONS(800), + [anon_sym_u32] = ACTIONS(800), + [anon_sym_i32] = ACTIONS(800), + [anon_sym_u64] = ACTIONS(800), + [anon_sym_i64] = ACTIONS(800), + [anon_sym_u128] = ACTIONS(800), + [anon_sym_i128] = ACTIONS(800), + [anon_sym_u256] = ACTIONS(800), + [anon_sym_i256] = ACTIONS(800), + [anon_sym_isize] = ACTIONS(800), + [anon_sym_usize] = ACTIONS(800), + [anon_sym_f32] = ACTIONS(800), + [anon_sym_f64] = ACTIONS(800), + [anon_sym_felt252] = ACTIONS(800), + [anon_sym_bool] = ACTIONS(800), + [anon_sym_str] = ACTIONS(800), + [anon_sym_char] = ACTIONS(800), + [anon_sym_GT] = ACTIONS(800), + [anon_sym_match] = ACTIONS(800), + [anon_sym_loop] = ACTIONS(800), + [anon_sym_BANG] = ACTIONS(800), + [anon_sym_TILDE] = ACTIONS(802), + [anon_sym_AMP_AMP] = ACTIONS(802), + [anon_sym_PIPE_PIPE] = ACTIONS(802), + [anon_sym_PIPE] = ACTIONS(800), + [anon_sym_CARET] = ACTIONS(800), + [anon_sym_LT2] = ACTIONS(800), + [anon_sym_LT_EQ] = ACTIONS(802), + [anon_sym_GT_EQ] = ACTIONS(802), + [anon_sym_LT_LT] = ACTIONS(800), + [anon_sym_GT_GT] = ACTIONS(800), + [anon_sym_PERCENT] = ACTIONS(800), + [anon_sym_DASH_EQ] = ACTIONS(802), + [anon_sym_STAR_EQ] = ACTIONS(802), + [anon_sym_SLASH_EQ] = ACTIONS(802), + [anon_sym_PERCENT_EQ] = ACTIONS(802), + [anon_sym_AMP_EQ] = ACTIONS(802), + [anon_sym_PIPE_EQ] = ACTIONS(802), + [anon_sym_CARET_EQ] = ACTIONS(802), + [anon_sym_LT_LT_EQ] = ACTIONS(802), + [anon_sym_GT_GT_EQ] = ACTIONS(802), + [anon_sym_QMARK] = ACTIONS(802), + [sym__cairo_1_short_string] = ACTIONS(802), + [anon_sym_true] = ACTIONS(800), + [anon_sym_false] = ACTIONS(800), + [sym_self] = ACTIONS(800), + }, + [120] = { + [sym_identifier] = ACTIONS(804), + [anon_sym_LPAREN] = ACTIONS(806), + [anon_sym_EQ] = ACTIONS(804), + [anon_sym_AT] = ACTIONS(806), + [anon_sym_LBRACE] = ACTIONS(806), + [anon_sym_RBRACE] = ACTIONS(806), + [anon_sym_struct] = ACTIONS(804), + [anon_sym_EQ_EQ] = ACTIONS(806), + [anon_sym_let] = ACTIONS(804), + [anon_sym_const] = ACTIONS(804), + [anon_sym_if] = ACTIONS(804), + [anon_sym_BANG_EQ] = ACTIONS(806), + [anon_sym_PLUS_EQ] = ACTIONS(806), + [anon_sym_return] = ACTIONS(804), + [anon_sym_STAR] = ACTIONS(804), + [anon_sym_AMP] = ACTIONS(804), + [anon_sym_DASH] = ACTIONS(804), + [anon_sym_PLUS] = ACTIONS(804), + [anon_sym_SLASH] = ACTIONS(804), + [anon_sym_LBRACK] = ACTIONS(806), + [anon_sym_DOT] = ACTIONS(806), + [sym_number] = ACTIONS(806), + [anon_sym_SEMI] = ACTIONS(806), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(804), + [anon_sym_extern] = ACTIONS(804), + [anon_sym_type] = ACTIONS(804), + [anon_sym_COLON_COLON] = ACTIONS(806), + [anon_sym_fn] = ACTIONS(804), + [anon_sym_POUND] = ACTIONS(806), + [anon_sym_mod] = ACTIONS(804), + [anon_sym_enum] = ACTIONS(804), + [anon_sym_impl] = ACTIONS(804), + [anon_sym_trait] = ACTIONS(804), + [anon_sym_u8] = ACTIONS(804), + [anon_sym_i8] = ACTIONS(804), + [anon_sym_u16] = ACTIONS(804), + [anon_sym_i16] = ACTIONS(804), + [anon_sym_u32] = ACTIONS(804), + [anon_sym_i32] = ACTIONS(804), + [anon_sym_u64] = ACTIONS(804), + [anon_sym_i64] = ACTIONS(804), + [anon_sym_u128] = ACTIONS(804), + [anon_sym_i128] = ACTIONS(804), + [anon_sym_u256] = ACTIONS(804), + [anon_sym_i256] = ACTIONS(804), + [anon_sym_isize] = ACTIONS(804), + [anon_sym_usize] = ACTIONS(804), + [anon_sym_f32] = ACTIONS(804), + [anon_sym_f64] = ACTIONS(804), + [anon_sym_felt252] = ACTIONS(804), + [anon_sym_bool] = ACTIONS(804), + [anon_sym_str] = ACTIONS(804), + [anon_sym_char] = ACTIONS(804), + [anon_sym_GT] = ACTIONS(804), + [anon_sym_match] = ACTIONS(804), + [anon_sym_loop] = ACTIONS(804), + [anon_sym_BANG] = ACTIONS(804), + [anon_sym_TILDE] = ACTIONS(806), + [anon_sym_AMP_AMP] = ACTIONS(806), + [anon_sym_PIPE_PIPE] = ACTIONS(806), + [anon_sym_PIPE] = ACTIONS(804), + [anon_sym_CARET] = ACTIONS(804), + [anon_sym_LT2] = ACTIONS(804), + [anon_sym_LT_EQ] = ACTIONS(806), + [anon_sym_GT_EQ] = ACTIONS(806), + [anon_sym_LT_LT] = ACTIONS(804), + [anon_sym_GT_GT] = ACTIONS(804), + [anon_sym_PERCENT] = ACTIONS(804), + [anon_sym_DASH_EQ] = ACTIONS(806), + [anon_sym_STAR_EQ] = ACTIONS(806), + [anon_sym_SLASH_EQ] = ACTIONS(806), + [anon_sym_PERCENT_EQ] = ACTIONS(806), + [anon_sym_AMP_EQ] = ACTIONS(806), + [anon_sym_PIPE_EQ] = ACTIONS(806), + [anon_sym_CARET_EQ] = ACTIONS(806), + [anon_sym_LT_LT_EQ] = ACTIONS(806), + [anon_sym_GT_GT_EQ] = ACTIONS(806), + [anon_sym_QMARK] = ACTIONS(806), + [sym__cairo_1_short_string] = ACTIONS(806), + [anon_sym_true] = ACTIONS(804), + [anon_sym_false] = ACTIONS(804), + [sym_self] = ACTIONS(804), + }, + [121] = { + [sym_identifier] = ACTIONS(808), + [anon_sym_LPAREN] = ACTIONS(810), + [anon_sym_EQ] = ACTIONS(808), + [anon_sym_AT] = ACTIONS(810), + [anon_sym_LBRACE] = ACTIONS(810), + [anon_sym_RBRACE] = ACTIONS(810), + [anon_sym_struct] = ACTIONS(808), + [anon_sym_EQ_EQ] = ACTIONS(810), + [anon_sym_let] = ACTIONS(808), + [anon_sym_const] = ACTIONS(808), + [anon_sym_if] = ACTIONS(808), + [anon_sym_BANG_EQ] = ACTIONS(810), + [anon_sym_PLUS_EQ] = ACTIONS(810), + [anon_sym_return] = ACTIONS(808), + [anon_sym_STAR] = ACTIONS(808), + [anon_sym_AMP] = ACTIONS(808), + [anon_sym_DASH] = ACTIONS(808), + [anon_sym_PLUS] = ACTIONS(808), + [anon_sym_SLASH] = ACTIONS(808), + [anon_sym_LBRACK] = ACTIONS(810), + [anon_sym_DOT] = ACTIONS(810), + [sym_number] = ACTIONS(810), + [anon_sym_SEMI] = ACTIONS(810), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(808), + [anon_sym_extern] = ACTIONS(808), + [anon_sym_type] = ACTIONS(808), + [anon_sym_COLON_COLON] = ACTIONS(810), + [anon_sym_fn] = ACTIONS(808), + [anon_sym_POUND] = ACTIONS(810), + [anon_sym_mod] = ACTIONS(808), + [anon_sym_enum] = ACTIONS(808), + [anon_sym_impl] = ACTIONS(808), + [anon_sym_trait] = ACTIONS(808), + [anon_sym_u8] = ACTIONS(808), + [anon_sym_i8] = ACTIONS(808), + [anon_sym_u16] = ACTIONS(808), + [anon_sym_i16] = ACTIONS(808), + [anon_sym_u32] = ACTIONS(808), + [anon_sym_i32] = ACTIONS(808), + [anon_sym_u64] = ACTIONS(808), + [anon_sym_i64] = ACTIONS(808), + [anon_sym_u128] = ACTIONS(808), + [anon_sym_i128] = ACTIONS(808), + [anon_sym_u256] = ACTIONS(808), + [anon_sym_i256] = ACTIONS(808), + [anon_sym_isize] = ACTIONS(808), + [anon_sym_usize] = ACTIONS(808), + [anon_sym_f32] = ACTIONS(808), + [anon_sym_f64] = ACTIONS(808), + [anon_sym_felt252] = ACTIONS(808), + [anon_sym_bool] = ACTIONS(808), + [anon_sym_str] = ACTIONS(808), + [anon_sym_char] = ACTIONS(808), + [anon_sym_GT] = ACTIONS(808), + [anon_sym_match] = ACTIONS(808), + [anon_sym_loop] = ACTIONS(808), + [anon_sym_BANG] = ACTIONS(808), + [anon_sym_TILDE] = ACTIONS(810), + [anon_sym_AMP_AMP] = ACTIONS(810), + [anon_sym_PIPE_PIPE] = ACTIONS(810), + [anon_sym_PIPE] = ACTIONS(808), + [anon_sym_CARET] = ACTIONS(808), + [anon_sym_LT2] = ACTIONS(808), + [anon_sym_LT_EQ] = ACTIONS(810), + [anon_sym_GT_EQ] = ACTIONS(810), + [anon_sym_LT_LT] = ACTIONS(808), + [anon_sym_GT_GT] = ACTIONS(808), + [anon_sym_PERCENT] = ACTIONS(808), + [anon_sym_DASH_EQ] = ACTIONS(810), + [anon_sym_STAR_EQ] = ACTIONS(810), + [anon_sym_SLASH_EQ] = ACTIONS(810), + [anon_sym_PERCENT_EQ] = ACTIONS(810), + [anon_sym_AMP_EQ] = ACTIONS(810), + [anon_sym_PIPE_EQ] = ACTIONS(810), + [anon_sym_CARET_EQ] = ACTIONS(810), + [anon_sym_LT_LT_EQ] = ACTIONS(810), + [anon_sym_GT_GT_EQ] = ACTIONS(810), + [anon_sym_QMARK] = ACTIONS(810), + [sym__cairo_1_short_string] = ACTIONS(810), + [anon_sym_true] = ACTIONS(808), + [anon_sym_false] = ACTIONS(808), + [sym_self] = ACTIONS(808), + }, + [122] = { + [sym_identifier] = ACTIONS(812), + [anon_sym_LPAREN] = ACTIONS(814), + [anon_sym_EQ] = ACTIONS(812), + [anon_sym_AT] = ACTIONS(814), + [anon_sym_LBRACE] = ACTIONS(814), + [anon_sym_RBRACE] = ACTIONS(814), + [anon_sym_struct] = ACTIONS(812), + [anon_sym_EQ_EQ] = ACTIONS(814), + [anon_sym_let] = ACTIONS(812), + [anon_sym_const] = ACTIONS(812), + [anon_sym_if] = ACTIONS(812), + [anon_sym_BANG_EQ] = ACTIONS(814), + [anon_sym_PLUS_EQ] = ACTIONS(814), + [anon_sym_return] = ACTIONS(812), + [anon_sym_STAR] = ACTIONS(812), + [anon_sym_AMP] = ACTIONS(812), + [anon_sym_DASH] = ACTIONS(812), + [anon_sym_PLUS] = ACTIONS(812), + [anon_sym_SLASH] = ACTIONS(812), + [anon_sym_LBRACK] = ACTIONS(814), + [anon_sym_DOT] = ACTIONS(814), + [sym_number] = ACTIONS(814), + [anon_sym_SEMI] = ACTIONS(814), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(812), + [anon_sym_extern] = ACTIONS(812), + [anon_sym_type] = ACTIONS(812), + [anon_sym_COLON_COLON] = ACTIONS(814), + [anon_sym_fn] = ACTIONS(812), + [anon_sym_POUND] = ACTIONS(814), + [anon_sym_mod] = ACTIONS(812), + [anon_sym_enum] = ACTIONS(812), + [anon_sym_impl] = ACTIONS(812), + [anon_sym_trait] = ACTIONS(812), + [anon_sym_u8] = ACTIONS(812), + [anon_sym_i8] = ACTIONS(812), + [anon_sym_u16] = ACTIONS(812), + [anon_sym_i16] = ACTIONS(812), + [anon_sym_u32] = ACTIONS(812), + [anon_sym_i32] = ACTIONS(812), + [anon_sym_u64] = ACTIONS(812), + [anon_sym_i64] = ACTIONS(812), + [anon_sym_u128] = ACTIONS(812), + [anon_sym_i128] = ACTIONS(812), + [anon_sym_u256] = ACTIONS(812), + [anon_sym_i256] = ACTIONS(812), + [anon_sym_isize] = ACTIONS(812), + [anon_sym_usize] = ACTIONS(812), + [anon_sym_f32] = ACTIONS(812), + [anon_sym_f64] = ACTIONS(812), + [anon_sym_felt252] = ACTIONS(812), + [anon_sym_bool] = ACTIONS(812), + [anon_sym_str] = ACTIONS(812), + [anon_sym_char] = ACTIONS(812), + [anon_sym_GT] = ACTIONS(812), + [anon_sym_match] = ACTIONS(812), + [anon_sym_loop] = ACTIONS(812), + [anon_sym_BANG] = ACTIONS(812), + [anon_sym_TILDE] = ACTIONS(814), + [anon_sym_AMP_AMP] = ACTIONS(814), + [anon_sym_PIPE_PIPE] = ACTIONS(814), + [anon_sym_PIPE] = ACTIONS(812), + [anon_sym_CARET] = ACTIONS(812), + [anon_sym_LT2] = ACTIONS(812), + [anon_sym_LT_EQ] = ACTIONS(814), + [anon_sym_GT_EQ] = ACTIONS(814), + [anon_sym_LT_LT] = ACTIONS(812), + [anon_sym_GT_GT] = ACTIONS(812), + [anon_sym_PERCENT] = ACTIONS(812), + [anon_sym_DASH_EQ] = ACTIONS(814), + [anon_sym_STAR_EQ] = ACTIONS(814), + [anon_sym_SLASH_EQ] = ACTIONS(814), + [anon_sym_PERCENT_EQ] = ACTIONS(814), + [anon_sym_AMP_EQ] = ACTIONS(814), + [anon_sym_PIPE_EQ] = ACTIONS(814), + [anon_sym_CARET_EQ] = ACTIONS(814), + [anon_sym_LT_LT_EQ] = ACTIONS(814), + [anon_sym_GT_GT_EQ] = ACTIONS(814), + [anon_sym_QMARK] = ACTIONS(814), + [sym__cairo_1_short_string] = ACTIONS(814), + [anon_sym_true] = ACTIONS(812), + [anon_sym_false] = ACTIONS(812), + [sym_self] = ACTIONS(812), + }, + [123] = { + [sym_identifier] = ACTIONS(816), + [anon_sym_LPAREN] = ACTIONS(818), + [anon_sym_EQ] = ACTIONS(816), + [anon_sym_AT] = ACTIONS(818), + [anon_sym_LBRACE] = ACTIONS(818), + [anon_sym_RBRACE] = ACTIONS(818), + [anon_sym_struct] = ACTIONS(816), + [anon_sym_EQ_EQ] = ACTIONS(818), + [anon_sym_let] = ACTIONS(816), + [anon_sym_const] = ACTIONS(816), + [anon_sym_if] = ACTIONS(816), + [anon_sym_BANG_EQ] = ACTIONS(818), + [anon_sym_PLUS_EQ] = ACTIONS(818), + [anon_sym_return] = ACTIONS(816), + [anon_sym_STAR] = ACTIONS(816), + [anon_sym_AMP] = ACTIONS(816), + [anon_sym_DASH] = ACTIONS(816), + [anon_sym_PLUS] = ACTIONS(816), + [anon_sym_SLASH] = ACTIONS(816), + [anon_sym_LBRACK] = ACTIONS(818), + [anon_sym_DOT] = ACTIONS(818), + [sym_number] = ACTIONS(818), + [anon_sym_SEMI] = ACTIONS(818), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(816), + [anon_sym_extern] = ACTIONS(816), + [anon_sym_type] = ACTIONS(816), + [anon_sym_COLON_COLON] = ACTIONS(818), + [anon_sym_fn] = ACTIONS(816), + [anon_sym_POUND] = ACTIONS(818), + [anon_sym_mod] = ACTIONS(816), + [anon_sym_enum] = ACTIONS(816), + [anon_sym_impl] = ACTIONS(816), + [anon_sym_trait] = ACTIONS(816), + [anon_sym_u8] = ACTIONS(816), + [anon_sym_i8] = ACTIONS(816), + [anon_sym_u16] = ACTIONS(816), + [anon_sym_i16] = ACTIONS(816), + [anon_sym_u32] = ACTIONS(816), + [anon_sym_i32] = ACTIONS(816), + [anon_sym_u64] = ACTIONS(816), + [anon_sym_i64] = ACTIONS(816), + [anon_sym_u128] = ACTIONS(816), + [anon_sym_i128] = ACTIONS(816), + [anon_sym_u256] = ACTIONS(816), + [anon_sym_i256] = ACTIONS(816), + [anon_sym_isize] = ACTIONS(816), + [anon_sym_usize] = ACTIONS(816), + [anon_sym_f32] = ACTIONS(816), + [anon_sym_f64] = ACTIONS(816), + [anon_sym_felt252] = ACTIONS(816), + [anon_sym_bool] = ACTIONS(816), + [anon_sym_str] = ACTIONS(816), + [anon_sym_char] = ACTIONS(816), + [anon_sym_GT] = ACTIONS(816), + [anon_sym_match] = ACTIONS(816), + [anon_sym_loop] = ACTIONS(816), + [anon_sym_BANG] = ACTIONS(816), + [anon_sym_TILDE] = ACTIONS(818), + [anon_sym_AMP_AMP] = ACTIONS(818), + [anon_sym_PIPE_PIPE] = ACTIONS(818), + [anon_sym_PIPE] = ACTIONS(816), + [anon_sym_CARET] = ACTIONS(816), + [anon_sym_LT2] = ACTIONS(816), + [anon_sym_LT_EQ] = ACTIONS(818), + [anon_sym_GT_EQ] = ACTIONS(818), + [anon_sym_LT_LT] = ACTIONS(816), + [anon_sym_GT_GT] = ACTIONS(816), + [anon_sym_PERCENT] = ACTIONS(816), + [anon_sym_DASH_EQ] = ACTIONS(818), + [anon_sym_STAR_EQ] = ACTIONS(818), + [anon_sym_SLASH_EQ] = ACTIONS(818), + [anon_sym_PERCENT_EQ] = ACTIONS(818), + [anon_sym_AMP_EQ] = ACTIONS(818), + [anon_sym_PIPE_EQ] = ACTIONS(818), + [anon_sym_CARET_EQ] = ACTIONS(818), + [anon_sym_LT_LT_EQ] = ACTIONS(818), + [anon_sym_GT_GT_EQ] = ACTIONS(818), + [anon_sym_QMARK] = ACTIONS(818), + [sym__cairo_1_short_string] = ACTIONS(818), + [anon_sym_true] = ACTIONS(816), + [anon_sym_false] = ACTIONS(816), + [sym_self] = ACTIONS(816), + }, + [124] = { + [sym_identifier] = ACTIONS(820), + [anon_sym_LPAREN] = ACTIONS(822), + [anon_sym_EQ] = ACTIONS(820), + [anon_sym_AT] = ACTIONS(822), + [anon_sym_LBRACE] = ACTIONS(822), + [anon_sym_RBRACE] = ACTIONS(822), + [anon_sym_struct] = ACTIONS(820), + [anon_sym_EQ_EQ] = ACTIONS(822), + [anon_sym_let] = ACTIONS(820), + [anon_sym_const] = ACTIONS(820), + [anon_sym_if] = ACTIONS(820), + [anon_sym_BANG_EQ] = ACTIONS(822), + [anon_sym_PLUS_EQ] = ACTIONS(822), + [anon_sym_return] = ACTIONS(820), + [anon_sym_STAR] = ACTIONS(820), + [anon_sym_AMP] = ACTIONS(820), + [anon_sym_DASH] = ACTIONS(820), + [anon_sym_PLUS] = ACTIONS(820), + [anon_sym_SLASH] = ACTIONS(820), + [anon_sym_LBRACK] = ACTIONS(822), + [anon_sym_DOT] = ACTIONS(822), + [sym_number] = ACTIONS(822), + [anon_sym_SEMI] = ACTIONS(822), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(820), + [anon_sym_extern] = ACTIONS(820), + [anon_sym_type] = ACTIONS(820), + [anon_sym_COLON_COLON] = ACTIONS(822), + [anon_sym_fn] = ACTIONS(820), + [anon_sym_POUND] = ACTIONS(822), + [anon_sym_mod] = ACTIONS(820), + [anon_sym_enum] = ACTIONS(820), + [anon_sym_impl] = ACTIONS(820), + [anon_sym_trait] = ACTIONS(820), + [anon_sym_u8] = ACTIONS(820), + [anon_sym_i8] = ACTIONS(820), + [anon_sym_u16] = ACTIONS(820), + [anon_sym_i16] = ACTIONS(820), + [anon_sym_u32] = ACTIONS(820), + [anon_sym_i32] = ACTIONS(820), + [anon_sym_u64] = ACTIONS(820), + [anon_sym_i64] = ACTIONS(820), + [anon_sym_u128] = ACTIONS(820), + [anon_sym_i128] = ACTIONS(820), + [anon_sym_u256] = ACTIONS(820), + [anon_sym_i256] = ACTIONS(820), + [anon_sym_isize] = ACTIONS(820), + [anon_sym_usize] = ACTIONS(820), + [anon_sym_f32] = ACTIONS(820), + [anon_sym_f64] = ACTIONS(820), + [anon_sym_felt252] = ACTIONS(820), + [anon_sym_bool] = ACTIONS(820), + [anon_sym_str] = ACTIONS(820), + [anon_sym_char] = ACTIONS(820), + [anon_sym_GT] = ACTIONS(820), + [anon_sym_match] = ACTIONS(820), + [anon_sym_loop] = ACTIONS(820), + [anon_sym_BANG] = ACTIONS(820), + [anon_sym_TILDE] = ACTIONS(822), + [anon_sym_AMP_AMP] = ACTIONS(822), + [anon_sym_PIPE_PIPE] = ACTIONS(822), + [anon_sym_PIPE] = ACTIONS(820), + [anon_sym_CARET] = ACTIONS(820), + [anon_sym_LT2] = ACTIONS(820), + [anon_sym_LT_EQ] = ACTIONS(822), + [anon_sym_GT_EQ] = ACTIONS(822), + [anon_sym_LT_LT] = ACTIONS(820), + [anon_sym_GT_GT] = ACTIONS(820), + [anon_sym_PERCENT] = ACTIONS(820), + [anon_sym_DASH_EQ] = ACTIONS(822), + [anon_sym_STAR_EQ] = ACTIONS(822), + [anon_sym_SLASH_EQ] = ACTIONS(822), + [anon_sym_PERCENT_EQ] = ACTIONS(822), + [anon_sym_AMP_EQ] = ACTIONS(822), + [anon_sym_PIPE_EQ] = ACTIONS(822), + [anon_sym_CARET_EQ] = ACTIONS(822), + [anon_sym_LT_LT_EQ] = ACTIONS(822), + [anon_sym_GT_GT_EQ] = ACTIONS(822), + [anon_sym_QMARK] = ACTIONS(822), + [sym__cairo_1_short_string] = ACTIONS(822), + [anon_sym_true] = ACTIONS(820), + [anon_sym_false] = ACTIONS(820), + [sym_self] = ACTIONS(820), + }, + [125] = { + [sym_identifier] = ACTIONS(824), + [anon_sym_LPAREN] = ACTIONS(826), + [anon_sym_EQ] = ACTIONS(824), + [anon_sym_AT] = ACTIONS(826), + [anon_sym_LBRACE] = ACTIONS(826), + [anon_sym_RBRACE] = ACTIONS(826), + [anon_sym_struct] = ACTIONS(824), + [anon_sym_EQ_EQ] = ACTIONS(826), + [anon_sym_let] = ACTIONS(824), + [anon_sym_const] = ACTIONS(824), + [anon_sym_if] = ACTIONS(824), + [anon_sym_BANG_EQ] = ACTIONS(826), + [anon_sym_PLUS_EQ] = ACTIONS(826), + [anon_sym_return] = ACTIONS(824), + [anon_sym_STAR] = ACTIONS(824), + [anon_sym_AMP] = ACTIONS(824), + [anon_sym_DASH] = ACTIONS(824), + [anon_sym_PLUS] = ACTIONS(824), + [anon_sym_SLASH] = ACTIONS(824), + [anon_sym_LBRACK] = ACTIONS(826), + [anon_sym_DOT] = ACTIONS(826), + [sym_number] = ACTIONS(826), + [anon_sym_SEMI] = ACTIONS(826), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(824), + [anon_sym_extern] = ACTIONS(824), + [anon_sym_type] = ACTIONS(824), + [anon_sym_COLON_COLON] = ACTIONS(826), + [anon_sym_fn] = ACTIONS(824), + [anon_sym_POUND] = ACTIONS(826), + [anon_sym_mod] = ACTIONS(824), + [anon_sym_enum] = ACTIONS(824), + [anon_sym_impl] = ACTIONS(824), + [anon_sym_trait] = ACTIONS(824), + [anon_sym_u8] = ACTIONS(824), + [anon_sym_i8] = ACTIONS(824), + [anon_sym_u16] = ACTIONS(824), + [anon_sym_i16] = ACTIONS(824), + [anon_sym_u32] = ACTIONS(824), + [anon_sym_i32] = ACTIONS(824), + [anon_sym_u64] = ACTIONS(824), + [anon_sym_i64] = ACTIONS(824), + [anon_sym_u128] = ACTIONS(824), + [anon_sym_i128] = ACTIONS(824), + [anon_sym_u256] = ACTIONS(824), + [anon_sym_i256] = ACTIONS(824), + [anon_sym_isize] = ACTIONS(824), + [anon_sym_usize] = ACTIONS(824), + [anon_sym_f32] = ACTIONS(824), + [anon_sym_f64] = ACTIONS(824), + [anon_sym_felt252] = ACTIONS(824), + [anon_sym_bool] = ACTIONS(824), + [anon_sym_str] = ACTIONS(824), + [anon_sym_char] = ACTIONS(824), + [anon_sym_GT] = ACTIONS(824), + [anon_sym_match] = ACTIONS(824), + [anon_sym_loop] = ACTIONS(824), + [anon_sym_BANG] = ACTIONS(824), + [anon_sym_TILDE] = ACTIONS(826), + [anon_sym_AMP_AMP] = ACTIONS(826), + [anon_sym_PIPE_PIPE] = ACTIONS(826), + [anon_sym_PIPE] = ACTIONS(824), + [anon_sym_CARET] = ACTIONS(824), + [anon_sym_LT2] = ACTIONS(824), + [anon_sym_LT_EQ] = ACTIONS(826), + [anon_sym_GT_EQ] = ACTIONS(826), + [anon_sym_LT_LT] = ACTIONS(824), + [anon_sym_GT_GT] = ACTIONS(824), + [anon_sym_PERCENT] = ACTIONS(824), + [anon_sym_DASH_EQ] = ACTIONS(826), + [anon_sym_STAR_EQ] = ACTIONS(826), + [anon_sym_SLASH_EQ] = ACTIONS(826), + [anon_sym_PERCENT_EQ] = ACTIONS(826), + [anon_sym_AMP_EQ] = ACTIONS(826), + [anon_sym_PIPE_EQ] = ACTIONS(826), + [anon_sym_CARET_EQ] = ACTIONS(826), + [anon_sym_LT_LT_EQ] = ACTIONS(826), + [anon_sym_GT_GT_EQ] = ACTIONS(826), + [anon_sym_QMARK] = ACTIONS(826), + [sym__cairo_1_short_string] = ACTIONS(826), + [anon_sym_true] = ACTIONS(824), + [anon_sym_false] = ACTIONS(824), + [sym_self] = ACTIONS(824), + }, + [126] = { + [sym_identifier] = ACTIONS(828), + [anon_sym_LPAREN] = ACTIONS(830), + [anon_sym_EQ] = ACTIONS(828), + [anon_sym_AT] = ACTIONS(830), + [anon_sym_LBRACE] = ACTIONS(830), + [anon_sym_RBRACE] = ACTIONS(830), + [anon_sym_struct] = ACTIONS(828), + [anon_sym_EQ_EQ] = ACTIONS(830), + [anon_sym_let] = ACTIONS(828), + [anon_sym_const] = ACTIONS(828), + [anon_sym_if] = ACTIONS(828), + [anon_sym_BANG_EQ] = ACTIONS(830), + [anon_sym_PLUS_EQ] = ACTIONS(830), + [anon_sym_return] = ACTIONS(828), + [anon_sym_STAR] = ACTIONS(828), + [anon_sym_AMP] = ACTIONS(828), + [anon_sym_DASH] = ACTIONS(828), + [anon_sym_PLUS] = ACTIONS(828), + [anon_sym_SLASH] = ACTIONS(828), + [anon_sym_LBRACK] = ACTIONS(830), + [anon_sym_DOT] = ACTIONS(830), + [sym_number] = ACTIONS(830), + [anon_sym_SEMI] = ACTIONS(830), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(828), + [anon_sym_extern] = ACTIONS(828), + [anon_sym_type] = ACTIONS(828), + [anon_sym_COLON_COLON] = ACTIONS(830), + [anon_sym_fn] = ACTIONS(828), + [anon_sym_POUND] = ACTIONS(830), + [anon_sym_mod] = ACTIONS(828), + [anon_sym_enum] = ACTIONS(828), + [anon_sym_impl] = ACTIONS(828), + [anon_sym_trait] = ACTIONS(828), + [anon_sym_u8] = ACTIONS(828), + [anon_sym_i8] = ACTIONS(828), + [anon_sym_u16] = ACTIONS(828), + [anon_sym_i16] = ACTIONS(828), + [anon_sym_u32] = ACTIONS(828), + [anon_sym_i32] = ACTIONS(828), + [anon_sym_u64] = ACTIONS(828), + [anon_sym_i64] = ACTIONS(828), + [anon_sym_u128] = ACTIONS(828), + [anon_sym_i128] = ACTIONS(828), + [anon_sym_u256] = ACTIONS(828), + [anon_sym_i256] = ACTIONS(828), + [anon_sym_isize] = ACTIONS(828), + [anon_sym_usize] = ACTIONS(828), + [anon_sym_f32] = ACTIONS(828), + [anon_sym_f64] = ACTIONS(828), + [anon_sym_felt252] = ACTIONS(828), + [anon_sym_bool] = ACTIONS(828), + [anon_sym_str] = ACTIONS(828), + [anon_sym_char] = ACTIONS(828), + [anon_sym_GT] = ACTIONS(828), + [anon_sym_match] = ACTIONS(828), + [anon_sym_loop] = ACTIONS(828), + [anon_sym_BANG] = ACTIONS(828), + [anon_sym_TILDE] = ACTIONS(830), + [anon_sym_AMP_AMP] = ACTIONS(830), + [anon_sym_PIPE_PIPE] = ACTIONS(830), + [anon_sym_PIPE] = ACTIONS(828), + [anon_sym_CARET] = ACTIONS(828), + [anon_sym_LT2] = ACTIONS(828), + [anon_sym_LT_EQ] = ACTIONS(830), + [anon_sym_GT_EQ] = ACTIONS(830), + [anon_sym_LT_LT] = ACTIONS(828), + [anon_sym_GT_GT] = ACTIONS(828), + [anon_sym_PERCENT] = ACTIONS(828), + [anon_sym_DASH_EQ] = ACTIONS(830), + [anon_sym_STAR_EQ] = ACTIONS(830), + [anon_sym_SLASH_EQ] = ACTIONS(830), + [anon_sym_PERCENT_EQ] = ACTIONS(830), + [anon_sym_AMP_EQ] = ACTIONS(830), + [anon_sym_PIPE_EQ] = ACTIONS(830), + [anon_sym_CARET_EQ] = ACTIONS(830), + [anon_sym_LT_LT_EQ] = ACTIONS(830), + [anon_sym_GT_GT_EQ] = ACTIONS(830), + [anon_sym_QMARK] = ACTIONS(830), + [sym__cairo_1_short_string] = ACTIONS(830), + [anon_sym_true] = ACTIONS(828), + [anon_sym_false] = ACTIONS(828), + [sym_self] = ACTIONS(828), + }, + [127] = { + [sym_identifier] = ACTIONS(642), + [anon_sym_LPAREN] = ACTIONS(644), + [anon_sym_EQ] = ACTIONS(642), + [anon_sym_AT] = ACTIONS(644), + [anon_sym_LBRACE] = ACTIONS(644), + [anon_sym_RBRACE] = ACTIONS(644), + [anon_sym_struct] = ACTIONS(642), + [anon_sym_EQ_EQ] = ACTIONS(644), + [anon_sym_let] = ACTIONS(642), + [anon_sym_const] = ACTIONS(642), + [anon_sym_if] = ACTIONS(642), + [anon_sym_BANG_EQ] = ACTIONS(644), + [anon_sym_PLUS_EQ] = ACTIONS(644), + [anon_sym_return] = ACTIONS(642), + [anon_sym_STAR] = ACTIONS(642), + [anon_sym_AMP] = ACTIONS(642), + [anon_sym_DASH] = ACTIONS(642), + [anon_sym_PLUS] = ACTIONS(642), + [anon_sym_SLASH] = ACTIONS(642), + [anon_sym_LBRACK] = ACTIONS(644), + [anon_sym_DOT] = ACTIONS(644), + [sym_number] = ACTIONS(644), + [anon_sym_SEMI] = ACTIONS(644), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(642), + [anon_sym_extern] = ACTIONS(642), + [anon_sym_type] = ACTIONS(642), + [anon_sym_COLON_COLON] = ACTIONS(644), + [anon_sym_fn] = ACTIONS(642), + [anon_sym_POUND] = ACTIONS(644), + [anon_sym_mod] = ACTIONS(642), + [anon_sym_enum] = ACTIONS(642), + [anon_sym_impl] = ACTIONS(642), + [anon_sym_trait] = ACTIONS(642), + [anon_sym_u8] = ACTIONS(642), + [anon_sym_i8] = ACTIONS(642), + [anon_sym_u16] = ACTIONS(642), + [anon_sym_i16] = ACTIONS(642), + [anon_sym_u32] = ACTIONS(642), + [anon_sym_i32] = ACTIONS(642), + [anon_sym_u64] = ACTIONS(642), + [anon_sym_i64] = ACTIONS(642), + [anon_sym_u128] = ACTIONS(642), + [anon_sym_i128] = ACTIONS(642), + [anon_sym_u256] = ACTIONS(642), + [anon_sym_i256] = ACTIONS(642), + [anon_sym_isize] = ACTIONS(642), + [anon_sym_usize] = ACTIONS(642), + [anon_sym_f32] = ACTIONS(642), + [anon_sym_f64] = ACTIONS(642), + [anon_sym_felt252] = ACTIONS(642), + [anon_sym_bool] = ACTIONS(642), + [anon_sym_str] = ACTIONS(642), + [anon_sym_char] = ACTIONS(642), + [anon_sym_GT] = ACTIONS(642), + [anon_sym_match] = ACTIONS(642), + [anon_sym_loop] = ACTIONS(642), + [anon_sym_BANG] = ACTIONS(642), + [anon_sym_TILDE] = ACTIONS(644), + [anon_sym_AMP_AMP] = ACTIONS(644), + [anon_sym_PIPE_PIPE] = ACTIONS(644), + [anon_sym_PIPE] = ACTIONS(642), + [anon_sym_CARET] = ACTIONS(642), + [anon_sym_LT2] = ACTIONS(642), + [anon_sym_LT_EQ] = ACTIONS(644), + [anon_sym_GT_EQ] = ACTIONS(644), + [anon_sym_LT_LT] = ACTIONS(642), + [anon_sym_GT_GT] = ACTIONS(642), + [anon_sym_PERCENT] = ACTIONS(642), + [anon_sym_DASH_EQ] = ACTIONS(644), + [anon_sym_STAR_EQ] = ACTIONS(644), + [anon_sym_SLASH_EQ] = ACTIONS(644), + [anon_sym_PERCENT_EQ] = ACTIONS(644), + [anon_sym_AMP_EQ] = ACTIONS(644), + [anon_sym_PIPE_EQ] = ACTIONS(644), + [anon_sym_CARET_EQ] = ACTIONS(644), + [anon_sym_LT_LT_EQ] = ACTIONS(644), + [anon_sym_GT_GT_EQ] = ACTIONS(644), + [anon_sym_QMARK] = ACTIONS(644), + [sym__cairo_1_short_string] = ACTIONS(644), + [anon_sym_true] = ACTIONS(642), + [anon_sym_false] = ACTIONS(642), + [sym_self] = ACTIONS(642), + }, + [128] = { + [sym_identifier] = ACTIONS(832), + [anon_sym_LPAREN] = ACTIONS(834), + [anon_sym_EQ] = ACTIONS(832), + [anon_sym_AT] = ACTIONS(834), + [anon_sym_LBRACE] = ACTIONS(834), + [anon_sym_RBRACE] = ACTIONS(834), + [anon_sym_struct] = ACTIONS(832), + [anon_sym_EQ_EQ] = ACTIONS(834), + [anon_sym_let] = ACTIONS(832), + [anon_sym_const] = ACTIONS(832), + [anon_sym_if] = ACTIONS(832), + [anon_sym_BANG_EQ] = ACTIONS(834), + [anon_sym_PLUS_EQ] = ACTIONS(834), + [anon_sym_return] = ACTIONS(832), + [anon_sym_STAR] = ACTIONS(832), + [anon_sym_AMP] = ACTIONS(832), + [anon_sym_DASH] = ACTIONS(832), + [anon_sym_PLUS] = ACTIONS(832), + [anon_sym_SLASH] = ACTIONS(832), + [anon_sym_LBRACK] = ACTIONS(834), + [anon_sym_DOT] = ACTIONS(834), + [sym_number] = ACTIONS(834), + [anon_sym_SEMI] = ACTIONS(834), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(832), + [anon_sym_extern] = ACTIONS(832), + [anon_sym_type] = ACTIONS(832), + [anon_sym_COLON_COLON] = ACTIONS(834), + [anon_sym_fn] = ACTIONS(832), + [anon_sym_POUND] = ACTIONS(834), + [anon_sym_mod] = ACTIONS(832), + [anon_sym_enum] = ACTIONS(832), + [anon_sym_impl] = ACTIONS(832), + [anon_sym_trait] = ACTIONS(832), + [anon_sym_u8] = ACTIONS(832), + [anon_sym_i8] = ACTIONS(832), + [anon_sym_u16] = ACTIONS(832), + [anon_sym_i16] = ACTIONS(832), + [anon_sym_u32] = ACTIONS(832), + [anon_sym_i32] = ACTIONS(832), + [anon_sym_u64] = ACTIONS(832), + [anon_sym_i64] = ACTIONS(832), + [anon_sym_u128] = ACTIONS(832), + [anon_sym_i128] = ACTIONS(832), + [anon_sym_u256] = ACTIONS(832), + [anon_sym_i256] = ACTIONS(832), + [anon_sym_isize] = ACTIONS(832), + [anon_sym_usize] = ACTIONS(832), + [anon_sym_f32] = ACTIONS(832), + [anon_sym_f64] = ACTIONS(832), + [anon_sym_felt252] = ACTIONS(832), + [anon_sym_bool] = ACTIONS(832), + [anon_sym_str] = ACTIONS(832), + [anon_sym_char] = ACTIONS(832), + [anon_sym_GT] = ACTIONS(832), + [anon_sym_match] = ACTIONS(832), + [anon_sym_loop] = ACTIONS(832), + [anon_sym_BANG] = ACTIONS(832), + [anon_sym_TILDE] = ACTIONS(834), + [anon_sym_AMP_AMP] = ACTIONS(834), + [anon_sym_PIPE_PIPE] = ACTIONS(834), + [anon_sym_PIPE] = ACTIONS(832), + [anon_sym_CARET] = ACTIONS(832), + [anon_sym_LT2] = ACTIONS(832), + [anon_sym_LT_EQ] = ACTIONS(834), + [anon_sym_GT_EQ] = ACTIONS(834), + [anon_sym_LT_LT] = ACTIONS(832), + [anon_sym_GT_GT] = ACTIONS(832), + [anon_sym_PERCENT] = ACTIONS(832), + [anon_sym_DASH_EQ] = ACTIONS(834), + [anon_sym_STAR_EQ] = ACTIONS(834), + [anon_sym_SLASH_EQ] = ACTIONS(834), + [anon_sym_PERCENT_EQ] = ACTIONS(834), + [anon_sym_AMP_EQ] = ACTIONS(834), + [anon_sym_PIPE_EQ] = ACTIONS(834), + [anon_sym_CARET_EQ] = ACTIONS(834), + [anon_sym_LT_LT_EQ] = ACTIONS(834), + [anon_sym_GT_GT_EQ] = ACTIONS(834), + [anon_sym_QMARK] = ACTIONS(834), + [sym__cairo_1_short_string] = ACTIONS(834), + [anon_sym_true] = ACTIONS(832), + [anon_sym_false] = ACTIONS(832), + [sym_self] = ACTIONS(832), + }, + [129] = { + [sym_identifier] = ACTIONS(642), + [anon_sym_LPAREN] = ACTIONS(644), + [anon_sym_EQ] = ACTIONS(642), + [anon_sym_AT] = ACTIONS(644), + [anon_sym_LBRACE] = ACTIONS(644), + [anon_sym_RBRACE] = ACTIONS(644), + [anon_sym_struct] = ACTIONS(642), + [anon_sym_EQ_EQ] = ACTIONS(644), + [anon_sym_let] = ACTIONS(642), + [anon_sym_const] = ACTIONS(642), + [anon_sym_if] = ACTIONS(642), + [anon_sym_BANG_EQ] = ACTIONS(644), + [anon_sym_PLUS_EQ] = ACTIONS(644), + [anon_sym_return] = ACTIONS(642), + [anon_sym_STAR] = ACTIONS(642), + [anon_sym_AMP] = ACTIONS(642), + [anon_sym_DASH] = ACTIONS(642), + [anon_sym_PLUS] = ACTIONS(642), + [anon_sym_SLASH] = ACTIONS(642), + [anon_sym_LBRACK] = ACTIONS(644), + [anon_sym_DOT] = ACTIONS(644), + [sym_number] = ACTIONS(644), + [anon_sym_SEMI] = ACTIONS(644), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(642), + [anon_sym_extern] = ACTIONS(642), + [anon_sym_type] = ACTIONS(642), + [anon_sym_COLON_COLON] = ACTIONS(836), + [anon_sym_fn] = ACTIONS(642), + [anon_sym_POUND] = ACTIONS(644), + [anon_sym_mod] = ACTIONS(642), + [anon_sym_enum] = ACTIONS(642), + [anon_sym_impl] = ACTIONS(642), + [anon_sym_trait] = ACTIONS(642), + [anon_sym_u8] = ACTIONS(642), + [anon_sym_i8] = ACTIONS(642), + [anon_sym_u16] = ACTIONS(642), + [anon_sym_i16] = ACTIONS(642), + [anon_sym_u32] = ACTIONS(642), + [anon_sym_i32] = ACTIONS(642), + [anon_sym_u64] = ACTIONS(642), + [anon_sym_i64] = ACTIONS(642), + [anon_sym_u128] = ACTIONS(642), + [anon_sym_i128] = ACTIONS(642), + [anon_sym_u256] = ACTIONS(642), + [anon_sym_i256] = ACTIONS(642), + [anon_sym_isize] = ACTIONS(642), + [anon_sym_usize] = ACTIONS(642), + [anon_sym_f32] = ACTIONS(642), + [anon_sym_f64] = ACTIONS(642), + [anon_sym_felt252] = ACTIONS(642), + [anon_sym_bool] = ACTIONS(642), + [anon_sym_str] = ACTIONS(642), + [anon_sym_char] = ACTIONS(642), + [anon_sym_GT] = ACTIONS(642), + [anon_sym_match] = ACTIONS(642), + [anon_sym_loop] = ACTIONS(642), + [anon_sym_BANG] = ACTIONS(642), + [anon_sym_TILDE] = ACTIONS(644), + [anon_sym_AMP_AMP] = ACTIONS(644), + [anon_sym_PIPE_PIPE] = ACTIONS(644), + [anon_sym_PIPE] = ACTIONS(642), + [anon_sym_CARET] = ACTIONS(642), + [anon_sym_LT2] = ACTIONS(642), + [anon_sym_LT_EQ] = ACTIONS(644), + [anon_sym_GT_EQ] = ACTIONS(644), + [anon_sym_LT_LT] = ACTIONS(642), + [anon_sym_GT_GT] = ACTIONS(642), + [anon_sym_PERCENT] = ACTIONS(642), + [anon_sym_DASH_EQ] = ACTIONS(644), + [anon_sym_STAR_EQ] = ACTIONS(644), + [anon_sym_SLASH_EQ] = ACTIONS(644), + [anon_sym_PERCENT_EQ] = ACTIONS(644), + [anon_sym_AMP_EQ] = ACTIONS(644), + [anon_sym_PIPE_EQ] = ACTIONS(644), + [anon_sym_CARET_EQ] = ACTIONS(644), + [anon_sym_LT_LT_EQ] = ACTIONS(644), + [anon_sym_GT_GT_EQ] = ACTIONS(644), + [anon_sym_QMARK] = ACTIONS(644), + [sym__cairo_1_short_string] = ACTIONS(644), + [anon_sym_true] = ACTIONS(642), + [anon_sym_false] = ACTIONS(642), + [sym_self] = ACTIONS(642), + }, + [130] = { + [sym_identifier] = ACTIONS(838), + [anon_sym_LPAREN] = ACTIONS(840), + [anon_sym_EQ] = ACTIONS(838), + [anon_sym_AT] = ACTIONS(840), + [anon_sym_LBRACE] = ACTIONS(840), + [anon_sym_RBRACE] = ACTIONS(840), + [anon_sym_struct] = ACTIONS(838), + [anon_sym_EQ_EQ] = ACTIONS(840), + [anon_sym_let] = ACTIONS(838), + [anon_sym_const] = ACTIONS(838), + [anon_sym_if] = ACTIONS(838), + [anon_sym_BANG_EQ] = ACTIONS(840), + [anon_sym_PLUS_EQ] = ACTIONS(840), + [anon_sym_return] = ACTIONS(838), + [anon_sym_STAR] = ACTIONS(838), + [anon_sym_AMP] = ACTIONS(838), + [anon_sym_DASH] = ACTIONS(838), + [anon_sym_PLUS] = ACTIONS(838), + [anon_sym_SLASH] = ACTIONS(838), + [anon_sym_LBRACK] = ACTIONS(840), + [anon_sym_DOT] = ACTIONS(840), + [sym_number] = ACTIONS(840), + [anon_sym_SEMI] = ACTIONS(840), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(838), + [anon_sym_extern] = ACTIONS(838), + [anon_sym_type] = ACTIONS(838), + [anon_sym_COLON_COLON] = ACTIONS(840), + [anon_sym_fn] = ACTIONS(838), + [anon_sym_POUND] = ACTIONS(840), + [anon_sym_mod] = ACTIONS(838), + [anon_sym_enum] = ACTIONS(838), + [anon_sym_impl] = ACTIONS(838), + [anon_sym_trait] = ACTIONS(838), + [anon_sym_u8] = ACTIONS(838), + [anon_sym_i8] = ACTIONS(838), + [anon_sym_u16] = ACTIONS(838), + [anon_sym_i16] = ACTIONS(838), + [anon_sym_u32] = ACTIONS(838), + [anon_sym_i32] = ACTIONS(838), + [anon_sym_u64] = ACTIONS(838), + [anon_sym_i64] = ACTIONS(838), + [anon_sym_u128] = ACTIONS(838), + [anon_sym_i128] = ACTIONS(838), + [anon_sym_u256] = ACTIONS(838), + [anon_sym_i256] = ACTIONS(838), + [anon_sym_isize] = ACTIONS(838), + [anon_sym_usize] = ACTIONS(838), + [anon_sym_f32] = ACTIONS(838), + [anon_sym_f64] = ACTIONS(838), + [anon_sym_felt252] = ACTIONS(838), + [anon_sym_bool] = ACTIONS(838), + [anon_sym_str] = ACTIONS(838), + [anon_sym_char] = ACTIONS(838), + [anon_sym_GT] = ACTIONS(838), + [anon_sym_match] = ACTIONS(838), + [anon_sym_loop] = ACTIONS(838), + [anon_sym_BANG] = ACTIONS(838), + [anon_sym_TILDE] = ACTIONS(840), + [anon_sym_AMP_AMP] = ACTIONS(840), + [anon_sym_PIPE_PIPE] = ACTIONS(840), + [anon_sym_PIPE] = ACTIONS(838), + [anon_sym_CARET] = ACTIONS(838), + [anon_sym_LT2] = ACTIONS(838), + [anon_sym_LT_EQ] = ACTIONS(840), + [anon_sym_GT_EQ] = ACTIONS(840), + [anon_sym_LT_LT] = ACTIONS(838), + [anon_sym_GT_GT] = ACTIONS(838), + [anon_sym_PERCENT] = ACTIONS(838), + [anon_sym_DASH_EQ] = ACTIONS(840), + [anon_sym_STAR_EQ] = ACTIONS(840), + [anon_sym_SLASH_EQ] = ACTIONS(840), + [anon_sym_PERCENT_EQ] = ACTIONS(840), + [anon_sym_AMP_EQ] = ACTIONS(840), + [anon_sym_PIPE_EQ] = ACTIONS(840), + [anon_sym_CARET_EQ] = ACTIONS(840), + [anon_sym_LT_LT_EQ] = ACTIONS(840), + [anon_sym_GT_GT_EQ] = ACTIONS(840), + [anon_sym_QMARK] = ACTIONS(840), + [sym__cairo_1_short_string] = ACTIONS(840), + [anon_sym_true] = ACTIONS(838), + [anon_sym_false] = ACTIONS(838), + [sym_self] = ACTIONS(838), + }, + [131] = { + [sym_identifier] = ACTIONS(842), + [anon_sym_LPAREN] = ACTIONS(844), + [anon_sym_EQ] = ACTIONS(842), + [anon_sym_AT] = ACTIONS(844), + [anon_sym_LBRACE] = ACTIONS(844), + [anon_sym_RBRACE] = ACTIONS(844), + [anon_sym_struct] = ACTIONS(842), + [anon_sym_EQ_EQ] = ACTIONS(844), + [anon_sym_let] = ACTIONS(842), + [anon_sym_const] = ACTIONS(842), + [anon_sym_if] = ACTIONS(842), + [anon_sym_BANG_EQ] = ACTIONS(844), + [anon_sym_PLUS_EQ] = ACTIONS(844), + [anon_sym_return] = ACTIONS(842), + [anon_sym_STAR] = ACTIONS(842), + [anon_sym_AMP] = ACTIONS(842), + [anon_sym_DASH] = ACTIONS(842), + [anon_sym_PLUS] = ACTIONS(842), + [anon_sym_SLASH] = ACTIONS(842), + [anon_sym_LBRACK] = ACTIONS(844), + [anon_sym_DOT] = ACTIONS(844), + [sym_number] = ACTIONS(844), + [anon_sym_SEMI] = ACTIONS(844), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(842), + [anon_sym_extern] = ACTIONS(842), + [anon_sym_type] = ACTIONS(842), + [anon_sym_COLON_COLON] = ACTIONS(844), + [anon_sym_fn] = ACTIONS(842), + [anon_sym_POUND] = ACTIONS(844), + [anon_sym_mod] = ACTIONS(842), + [anon_sym_enum] = ACTIONS(842), + [anon_sym_impl] = ACTIONS(842), + [anon_sym_trait] = ACTIONS(842), + [anon_sym_u8] = ACTIONS(842), + [anon_sym_i8] = ACTIONS(842), + [anon_sym_u16] = ACTIONS(842), + [anon_sym_i16] = ACTIONS(842), + [anon_sym_u32] = ACTIONS(842), + [anon_sym_i32] = ACTIONS(842), + [anon_sym_u64] = ACTIONS(842), + [anon_sym_i64] = ACTIONS(842), + [anon_sym_u128] = ACTIONS(842), + [anon_sym_i128] = ACTIONS(842), + [anon_sym_u256] = ACTIONS(842), + [anon_sym_i256] = ACTIONS(842), + [anon_sym_isize] = ACTIONS(842), + [anon_sym_usize] = ACTIONS(842), + [anon_sym_f32] = ACTIONS(842), + [anon_sym_f64] = ACTIONS(842), + [anon_sym_felt252] = ACTIONS(842), + [anon_sym_bool] = ACTIONS(842), + [anon_sym_str] = ACTIONS(842), + [anon_sym_char] = ACTIONS(842), + [anon_sym_GT] = ACTIONS(842), + [anon_sym_match] = ACTIONS(842), + [anon_sym_loop] = ACTIONS(842), + [anon_sym_BANG] = ACTIONS(842), + [anon_sym_TILDE] = ACTIONS(844), + [anon_sym_AMP_AMP] = ACTIONS(844), + [anon_sym_PIPE_PIPE] = ACTIONS(844), + [anon_sym_PIPE] = ACTIONS(842), + [anon_sym_CARET] = ACTIONS(842), + [anon_sym_LT2] = ACTIONS(842), + [anon_sym_LT_EQ] = ACTIONS(844), + [anon_sym_GT_EQ] = ACTIONS(844), + [anon_sym_LT_LT] = ACTIONS(842), + [anon_sym_GT_GT] = ACTIONS(842), + [anon_sym_PERCENT] = ACTIONS(842), + [anon_sym_DASH_EQ] = ACTIONS(844), + [anon_sym_STAR_EQ] = ACTIONS(844), + [anon_sym_SLASH_EQ] = ACTIONS(844), + [anon_sym_PERCENT_EQ] = ACTIONS(844), + [anon_sym_AMP_EQ] = ACTIONS(844), + [anon_sym_PIPE_EQ] = ACTIONS(844), + [anon_sym_CARET_EQ] = ACTIONS(844), + [anon_sym_LT_LT_EQ] = ACTIONS(844), + [anon_sym_GT_GT_EQ] = ACTIONS(844), + [anon_sym_QMARK] = ACTIONS(844), + [sym__cairo_1_short_string] = ACTIONS(844), + [anon_sym_true] = ACTIONS(842), + [anon_sym_false] = ACTIONS(842), + [sym_self] = ACTIONS(842), + }, + [132] = { + [sym_identifier] = ACTIONS(846), + [anon_sym_LPAREN] = ACTIONS(848), + [anon_sym_EQ] = ACTIONS(846), + [anon_sym_AT] = ACTIONS(848), + [anon_sym_LBRACE] = ACTIONS(848), + [anon_sym_RBRACE] = ACTIONS(848), + [anon_sym_struct] = ACTIONS(846), + [anon_sym_EQ_EQ] = ACTIONS(848), + [anon_sym_let] = ACTIONS(846), + [anon_sym_const] = ACTIONS(846), + [anon_sym_if] = ACTIONS(846), + [anon_sym_BANG_EQ] = ACTIONS(848), + [anon_sym_PLUS_EQ] = ACTIONS(848), + [anon_sym_return] = ACTIONS(846), + [anon_sym_STAR] = ACTIONS(846), + [anon_sym_AMP] = ACTIONS(846), + [anon_sym_DASH] = ACTIONS(846), + [anon_sym_PLUS] = ACTIONS(846), + [anon_sym_SLASH] = ACTIONS(846), + [anon_sym_LBRACK] = ACTIONS(848), + [anon_sym_DOT] = ACTIONS(848), + [sym_number] = ACTIONS(848), + [anon_sym_SEMI] = ACTIONS(848), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(846), + [anon_sym_extern] = ACTIONS(846), + [anon_sym_type] = ACTIONS(846), + [anon_sym_COLON_COLON] = ACTIONS(848), + [anon_sym_fn] = ACTIONS(846), + [anon_sym_POUND] = ACTIONS(848), + [anon_sym_mod] = ACTIONS(846), + [anon_sym_enum] = ACTIONS(846), + [anon_sym_impl] = ACTIONS(846), + [anon_sym_trait] = ACTIONS(846), + [anon_sym_u8] = ACTIONS(846), + [anon_sym_i8] = ACTIONS(846), + [anon_sym_u16] = ACTIONS(846), + [anon_sym_i16] = ACTIONS(846), + [anon_sym_u32] = ACTIONS(846), + [anon_sym_i32] = ACTIONS(846), + [anon_sym_u64] = ACTIONS(846), + [anon_sym_i64] = ACTIONS(846), + [anon_sym_u128] = ACTIONS(846), + [anon_sym_i128] = ACTIONS(846), + [anon_sym_u256] = ACTIONS(846), + [anon_sym_i256] = ACTIONS(846), + [anon_sym_isize] = ACTIONS(846), + [anon_sym_usize] = ACTIONS(846), + [anon_sym_f32] = ACTIONS(846), + [anon_sym_f64] = ACTIONS(846), + [anon_sym_felt252] = ACTIONS(846), + [anon_sym_bool] = ACTIONS(846), + [anon_sym_str] = ACTIONS(846), + [anon_sym_char] = ACTIONS(846), + [anon_sym_GT] = ACTIONS(846), + [anon_sym_match] = ACTIONS(846), + [anon_sym_loop] = ACTIONS(846), + [anon_sym_BANG] = ACTIONS(846), + [anon_sym_TILDE] = ACTIONS(848), + [anon_sym_AMP_AMP] = ACTIONS(848), + [anon_sym_PIPE_PIPE] = ACTIONS(848), + [anon_sym_PIPE] = ACTIONS(846), + [anon_sym_CARET] = ACTIONS(846), + [anon_sym_LT2] = ACTIONS(846), + [anon_sym_LT_EQ] = ACTIONS(848), + [anon_sym_GT_EQ] = ACTIONS(848), + [anon_sym_LT_LT] = ACTIONS(846), + [anon_sym_GT_GT] = ACTIONS(846), + [anon_sym_PERCENT] = ACTIONS(846), + [anon_sym_DASH_EQ] = ACTIONS(848), + [anon_sym_STAR_EQ] = ACTIONS(848), + [anon_sym_SLASH_EQ] = ACTIONS(848), + [anon_sym_PERCENT_EQ] = ACTIONS(848), + [anon_sym_AMP_EQ] = ACTIONS(848), + [anon_sym_PIPE_EQ] = ACTIONS(848), + [anon_sym_CARET_EQ] = ACTIONS(848), + [anon_sym_LT_LT_EQ] = ACTIONS(848), + [anon_sym_GT_GT_EQ] = ACTIONS(848), + [anon_sym_QMARK] = ACTIONS(848), + [sym__cairo_1_short_string] = ACTIONS(848), + [anon_sym_true] = ACTIONS(846), + [anon_sym_false] = ACTIONS(846), + [sym_self] = ACTIONS(846), + }, + [133] = { + [sym_identifier] = ACTIONS(850), + [anon_sym_LPAREN] = ACTIONS(852), + [anon_sym_EQ] = ACTIONS(850), + [anon_sym_AT] = ACTIONS(852), + [anon_sym_LBRACE] = ACTIONS(852), + [anon_sym_RBRACE] = ACTIONS(852), + [anon_sym_struct] = ACTIONS(850), + [anon_sym_EQ_EQ] = ACTIONS(852), + [anon_sym_let] = ACTIONS(850), + [anon_sym_const] = ACTIONS(850), + [anon_sym_if] = ACTIONS(850), + [anon_sym_BANG_EQ] = ACTIONS(852), + [anon_sym_PLUS_EQ] = ACTIONS(852), + [anon_sym_return] = ACTIONS(850), + [anon_sym_STAR] = ACTIONS(850), + [anon_sym_AMP] = ACTIONS(850), + [anon_sym_DASH] = ACTIONS(850), + [anon_sym_PLUS] = ACTIONS(850), + [anon_sym_SLASH] = ACTIONS(850), + [anon_sym_LBRACK] = ACTIONS(852), + [anon_sym_DOT] = ACTIONS(852), + [sym_number] = ACTIONS(852), + [anon_sym_SEMI] = ACTIONS(852), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(850), + [anon_sym_extern] = ACTIONS(850), + [anon_sym_type] = ACTIONS(850), + [anon_sym_COLON_COLON] = ACTIONS(852), + [anon_sym_fn] = ACTIONS(850), + [anon_sym_POUND] = ACTIONS(852), + [anon_sym_mod] = ACTIONS(850), + [anon_sym_enum] = ACTIONS(850), + [anon_sym_impl] = ACTIONS(850), + [anon_sym_trait] = ACTIONS(850), + [anon_sym_u8] = ACTIONS(850), + [anon_sym_i8] = ACTIONS(850), + [anon_sym_u16] = ACTIONS(850), + [anon_sym_i16] = ACTIONS(850), + [anon_sym_u32] = ACTIONS(850), + [anon_sym_i32] = ACTIONS(850), + [anon_sym_u64] = ACTIONS(850), + [anon_sym_i64] = ACTIONS(850), + [anon_sym_u128] = ACTIONS(850), + [anon_sym_i128] = ACTIONS(850), + [anon_sym_u256] = ACTIONS(850), + [anon_sym_i256] = ACTIONS(850), + [anon_sym_isize] = ACTIONS(850), + [anon_sym_usize] = ACTIONS(850), + [anon_sym_f32] = ACTIONS(850), + [anon_sym_f64] = ACTIONS(850), + [anon_sym_felt252] = ACTIONS(850), + [anon_sym_bool] = ACTIONS(850), + [anon_sym_str] = ACTIONS(850), + [anon_sym_char] = ACTIONS(850), + [anon_sym_GT] = ACTIONS(850), + [anon_sym_match] = ACTIONS(850), + [anon_sym_loop] = ACTIONS(850), + [anon_sym_BANG] = ACTIONS(850), + [anon_sym_TILDE] = ACTIONS(852), + [anon_sym_AMP_AMP] = ACTIONS(852), + [anon_sym_PIPE_PIPE] = ACTIONS(852), + [anon_sym_PIPE] = ACTIONS(850), + [anon_sym_CARET] = ACTIONS(850), + [anon_sym_LT2] = ACTIONS(850), + [anon_sym_LT_EQ] = ACTIONS(852), + [anon_sym_GT_EQ] = ACTIONS(852), + [anon_sym_LT_LT] = ACTIONS(850), + [anon_sym_GT_GT] = ACTIONS(850), + [anon_sym_PERCENT] = ACTIONS(850), + [anon_sym_DASH_EQ] = ACTIONS(852), + [anon_sym_STAR_EQ] = ACTIONS(852), + [anon_sym_SLASH_EQ] = ACTIONS(852), + [anon_sym_PERCENT_EQ] = ACTIONS(852), + [anon_sym_AMP_EQ] = ACTIONS(852), + [anon_sym_PIPE_EQ] = ACTIONS(852), + [anon_sym_CARET_EQ] = ACTIONS(852), + [anon_sym_LT_LT_EQ] = ACTIONS(852), + [anon_sym_GT_GT_EQ] = ACTIONS(852), + [anon_sym_QMARK] = ACTIONS(852), + [sym__cairo_1_short_string] = ACTIONS(852), + [anon_sym_true] = ACTIONS(850), + [anon_sym_false] = ACTIONS(850), + [sym_self] = ACTIONS(850), + }, + [134] = { + [sym_identifier] = ACTIONS(854), + [anon_sym_LPAREN] = ACTIONS(856), + [anon_sym_EQ] = ACTIONS(854), + [anon_sym_AT] = ACTIONS(856), + [anon_sym_LBRACE] = ACTIONS(856), + [anon_sym_RBRACE] = ACTIONS(856), + [anon_sym_struct] = ACTIONS(854), + [anon_sym_EQ_EQ] = ACTIONS(856), + [anon_sym_let] = ACTIONS(854), + [anon_sym_const] = ACTIONS(854), + [anon_sym_if] = ACTIONS(854), + [anon_sym_BANG_EQ] = ACTIONS(856), + [anon_sym_PLUS_EQ] = ACTIONS(856), + [anon_sym_return] = ACTIONS(854), + [anon_sym_STAR] = ACTIONS(854), + [anon_sym_AMP] = ACTIONS(854), + [anon_sym_DASH] = ACTIONS(854), + [anon_sym_PLUS] = ACTIONS(854), + [anon_sym_SLASH] = ACTIONS(854), + [anon_sym_LBRACK] = ACTIONS(856), + [anon_sym_DOT] = ACTIONS(856), + [sym_number] = ACTIONS(856), + [anon_sym_SEMI] = ACTIONS(856), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(854), + [anon_sym_extern] = ACTIONS(854), + [anon_sym_type] = ACTIONS(854), + [anon_sym_COLON_COLON] = ACTIONS(856), + [anon_sym_fn] = ACTIONS(854), + [anon_sym_POUND] = ACTIONS(856), + [anon_sym_mod] = ACTIONS(854), + [anon_sym_enum] = ACTIONS(854), + [anon_sym_impl] = ACTIONS(854), + [anon_sym_trait] = ACTIONS(854), + [anon_sym_u8] = ACTIONS(854), + [anon_sym_i8] = ACTIONS(854), + [anon_sym_u16] = ACTIONS(854), + [anon_sym_i16] = ACTIONS(854), + [anon_sym_u32] = ACTIONS(854), + [anon_sym_i32] = ACTIONS(854), + [anon_sym_u64] = ACTIONS(854), + [anon_sym_i64] = ACTIONS(854), + [anon_sym_u128] = ACTIONS(854), + [anon_sym_i128] = ACTIONS(854), + [anon_sym_u256] = ACTIONS(854), + [anon_sym_i256] = ACTIONS(854), + [anon_sym_isize] = ACTIONS(854), + [anon_sym_usize] = ACTIONS(854), + [anon_sym_f32] = ACTIONS(854), + [anon_sym_f64] = ACTIONS(854), + [anon_sym_felt252] = ACTIONS(854), + [anon_sym_bool] = ACTIONS(854), + [anon_sym_str] = ACTIONS(854), + [anon_sym_char] = ACTIONS(854), + [anon_sym_GT] = ACTIONS(854), + [anon_sym_match] = ACTIONS(854), + [anon_sym_loop] = ACTIONS(854), + [anon_sym_BANG] = ACTIONS(854), + [anon_sym_TILDE] = ACTIONS(856), + [anon_sym_AMP_AMP] = ACTIONS(856), + [anon_sym_PIPE_PIPE] = ACTIONS(856), + [anon_sym_PIPE] = ACTIONS(854), + [anon_sym_CARET] = ACTIONS(854), + [anon_sym_LT2] = ACTIONS(854), + [anon_sym_LT_EQ] = ACTIONS(856), + [anon_sym_GT_EQ] = ACTIONS(856), + [anon_sym_LT_LT] = ACTIONS(854), + [anon_sym_GT_GT] = ACTIONS(854), + [anon_sym_PERCENT] = ACTIONS(854), + [anon_sym_DASH_EQ] = ACTIONS(856), + [anon_sym_STAR_EQ] = ACTIONS(856), + [anon_sym_SLASH_EQ] = ACTIONS(856), + [anon_sym_PERCENT_EQ] = ACTIONS(856), + [anon_sym_AMP_EQ] = ACTIONS(856), + [anon_sym_PIPE_EQ] = ACTIONS(856), + [anon_sym_CARET_EQ] = ACTIONS(856), + [anon_sym_LT_LT_EQ] = ACTIONS(856), + [anon_sym_GT_GT_EQ] = ACTIONS(856), + [anon_sym_QMARK] = ACTIONS(856), + [sym__cairo_1_short_string] = ACTIONS(856), + [anon_sym_true] = ACTIONS(854), + [anon_sym_false] = ACTIONS(854), + [sym_self] = ACTIONS(854), + }, + [135] = { + [sym_identifier] = ACTIONS(858), + [anon_sym_LPAREN] = ACTIONS(860), + [anon_sym_EQ] = ACTIONS(858), + [anon_sym_AT] = ACTIONS(860), + [anon_sym_LBRACE] = ACTIONS(860), + [anon_sym_RBRACE] = ACTIONS(860), + [anon_sym_struct] = ACTIONS(858), + [anon_sym_EQ_EQ] = ACTIONS(860), + [anon_sym_let] = ACTIONS(858), + [anon_sym_const] = ACTIONS(858), + [anon_sym_if] = ACTIONS(858), + [anon_sym_BANG_EQ] = ACTIONS(860), + [anon_sym_PLUS_EQ] = ACTIONS(860), + [anon_sym_return] = ACTIONS(858), + [anon_sym_STAR] = ACTIONS(858), + [anon_sym_AMP] = ACTIONS(858), + [anon_sym_DASH] = ACTIONS(858), + [anon_sym_PLUS] = ACTIONS(858), + [anon_sym_SLASH] = ACTIONS(858), + [anon_sym_LBRACK] = ACTIONS(860), + [anon_sym_DOT] = ACTIONS(860), + [sym_number] = ACTIONS(860), + [anon_sym_SEMI] = ACTIONS(860), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(858), + [anon_sym_extern] = ACTIONS(858), + [anon_sym_type] = ACTIONS(858), + [anon_sym_COLON_COLON] = ACTIONS(860), + [anon_sym_fn] = ACTIONS(858), + [anon_sym_POUND] = ACTIONS(860), + [anon_sym_mod] = ACTIONS(858), + [anon_sym_enum] = ACTIONS(858), + [anon_sym_impl] = ACTIONS(858), + [anon_sym_trait] = ACTIONS(858), + [anon_sym_u8] = ACTIONS(858), + [anon_sym_i8] = ACTIONS(858), + [anon_sym_u16] = ACTIONS(858), + [anon_sym_i16] = ACTIONS(858), + [anon_sym_u32] = ACTIONS(858), + [anon_sym_i32] = ACTIONS(858), + [anon_sym_u64] = ACTIONS(858), + [anon_sym_i64] = ACTIONS(858), + [anon_sym_u128] = ACTIONS(858), + [anon_sym_i128] = ACTIONS(858), + [anon_sym_u256] = ACTIONS(858), + [anon_sym_i256] = ACTIONS(858), + [anon_sym_isize] = ACTIONS(858), + [anon_sym_usize] = ACTIONS(858), + [anon_sym_f32] = ACTIONS(858), + [anon_sym_f64] = ACTIONS(858), + [anon_sym_felt252] = ACTIONS(858), + [anon_sym_bool] = ACTIONS(858), + [anon_sym_str] = ACTIONS(858), + [anon_sym_char] = ACTIONS(858), + [anon_sym_GT] = ACTIONS(858), + [anon_sym_match] = ACTIONS(858), + [anon_sym_loop] = ACTIONS(858), + [anon_sym_BANG] = ACTIONS(858), + [anon_sym_TILDE] = ACTIONS(860), + [anon_sym_AMP_AMP] = ACTIONS(860), + [anon_sym_PIPE_PIPE] = ACTIONS(860), + [anon_sym_PIPE] = ACTIONS(858), + [anon_sym_CARET] = ACTIONS(858), + [anon_sym_LT2] = ACTIONS(858), + [anon_sym_LT_EQ] = ACTIONS(860), + [anon_sym_GT_EQ] = ACTIONS(860), + [anon_sym_LT_LT] = ACTIONS(858), + [anon_sym_GT_GT] = ACTIONS(858), + [anon_sym_PERCENT] = ACTIONS(858), + [anon_sym_DASH_EQ] = ACTIONS(860), + [anon_sym_STAR_EQ] = ACTIONS(860), + [anon_sym_SLASH_EQ] = ACTIONS(860), + [anon_sym_PERCENT_EQ] = ACTIONS(860), + [anon_sym_AMP_EQ] = ACTIONS(860), + [anon_sym_PIPE_EQ] = ACTIONS(860), + [anon_sym_CARET_EQ] = ACTIONS(860), + [anon_sym_LT_LT_EQ] = ACTIONS(860), + [anon_sym_GT_GT_EQ] = ACTIONS(860), + [anon_sym_QMARK] = ACTIONS(860), + [sym__cairo_1_short_string] = ACTIONS(860), + [anon_sym_true] = ACTIONS(858), + [anon_sym_false] = ACTIONS(858), + [sym_self] = ACTIONS(858), + }, + [136] = { + [sym_identifier] = ACTIONS(862), + [anon_sym_LPAREN] = ACTIONS(670), + [anon_sym_EQ] = ACTIONS(862), + [anon_sym_AT] = ACTIONS(864), + [anon_sym_LBRACE] = ACTIONS(864), + [anon_sym_RBRACE] = ACTIONS(864), + [anon_sym_struct] = ACTIONS(862), + [anon_sym_EQ_EQ] = ACTIONS(676), + [anon_sym_let] = ACTIONS(862), + [anon_sym_const] = ACTIONS(862), + [anon_sym_if] = ACTIONS(862), + [anon_sym_BANG_EQ] = ACTIONS(676), + [anon_sym_PLUS_EQ] = ACTIONS(864), + [anon_sym_return] = ACTIONS(862), + [anon_sym_STAR] = ACTIONS(680), + [anon_sym_AMP] = ACTIONS(682), + [anon_sym_DASH] = ACTIONS(684), + [anon_sym_PLUS] = ACTIONS(684), + [anon_sym_SLASH] = ACTIONS(680), + [anon_sym_LBRACK] = ACTIONS(686), + [anon_sym_DOT] = ACTIONS(688), + [sym_number] = ACTIONS(864), + [anon_sym_SEMI] = ACTIONS(864), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(862), + [anon_sym_extern] = ACTIONS(862), + [anon_sym_type] = ACTIONS(862), + [anon_sym_COLON_COLON] = ACTIONS(864), + [anon_sym_fn] = ACTIONS(862), + [anon_sym_POUND] = ACTIONS(864), + [anon_sym_mod] = ACTIONS(862), + [anon_sym_enum] = ACTIONS(862), + [anon_sym_impl] = ACTIONS(862), + [anon_sym_trait] = ACTIONS(862), + [anon_sym_u8] = ACTIONS(862), + [anon_sym_i8] = ACTIONS(862), + [anon_sym_u16] = ACTIONS(862), + [anon_sym_i16] = ACTIONS(862), + [anon_sym_u32] = ACTIONS(862), + [anon_sym_i32] = ACTIONS(862), + [anon_sym_u64] = ACTIONS(862), + [anon_sym_i64] = ACTIONS(862), + [anon_sym_u128] = ACTIONS(862), + [anon_sym_i128] = ACTIONS(862), + [anon_sym_u256] = ACTIONS(862), + [anon_sym_i256] = ACTIONS(862), + [anon_sym_isize] = ACTIONS(862), + [anon_sym_usize] = ACTIONS(862), + [anon_sym_f32] = ACTIONS(862), + [anon_sym_f64] = ACTIONS(862), + [anon_sym_felt252] = ACTIONS(862), + [anon_sym_bool] = ACTIONS(862), + [anon_sym_str] = ACTIONS(862), + [anon_sym_char] = ACTIONS(862), + [anon_sym_GT] = ACTIONS(690), + [anon_sym_match] = ACTIONS(862), + [anon_sym_loop] = ACTIONS(862), + [anon_sym_BANG] = ACTIONS(862), + [anon_sym_TILDE] = ACTIONS(864), + [anon_sym_AMP_AMP] = ACTIONS(692), + [anon_sym_PIPE_PIPE] = ACTIONS(694), + [anon_sym_PIPE] = ACTIONS(696), + [anon_sym_CARET] = ACTIONS(698), + [anon_sym_LT2] = ACTIONS(690), + [anon_sym_LT_EQ] = ACTIONS(676), + [anon_sym_GT_EQ] = ACTIONS(676), + [anon_sym_LT_LT] = ACTIONS(700), + [anon_sym_GT_GT] = ACTIONS(700), + [anon_sym_PERCENT] = ACTIONS(680), + [anon_sym_DASH_EQ] = ACTIONS(864), + [anon_sym_STAR_EQ] = ACTIONS(864), + [anon_sym_SLASH_EQ] = ACTIONS(864), + [anon_sym_PERCENT_EQ] = ACTIONS(864), + [anon_sym_AMP_EQ] = ACTIONS(864), + [anon_sym_PIPE_EQ] = ACTIONS(864), + [anon_sym_CARET_EQ] = ACTIONS(864), + [anon_sym_LT_LT_EQ] = ACTIONS(864), + [anon_sym_GT_GT_EQ] = ACTIONS(864), + [anon_sym_QMARK] = ACTIONS(864), + [sym__cairo_1_short_string] = ACTIONS(864), + [anon_sym_true] = ACTIONS(862), + [anon_sym_false] = ACTIONS(862), + [sym_self] = ACTIONS(862), + }, + [137] = { + [sym_identifier] = ACTIONS(866), + [anon_sym_LPAREN] = ACTIONS(868), + [anon_sym_EQ] = ACTIONS(866), + [anon_sym_AT] = ACTIONS(868), + [anon_sym_LBRACE] = ACTIONS(868), + [anon_sym_RBRACE] = ACTIONS(868), + [anon_sym_struct] = ACTIONS(866), + [anon_sym_EQ_EQ] = ACTIONS(868), + [anon_sym_let] = ACTIONS(866), + [anon_sym_const] = ACTIONS(866), + [anon_sym_if] = ACTIONS(866), + [anon_sym_BANG_EQ] = ACTIONS(868), + [anon_sym_PLUS_EQ] = ACTIONS(868), + [anon_sym_return] = ACTIONS(866), + [anon_sym_STAR] = ACTIONS(866), + [anon_sym_AMP] = ACTIONS(866), + [anon_sym_DASH] = ACTIONS(866), + [anon_sym_PLUS] = ACTIONS(866), + [anon_sym_SLASH] = ACTIONS(866), + [anon_sym_LBRACK] = ACTIONS(868), + [anon_sym_DOT] = ACTIONS(868), + [sym_number] = ACTIONS(868), + [anon_sym_SEMI] = ACTIONS(868), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(866), + [anon_sym_extern] = ACTIONS(866), + [anon_sym_type] = ACTIONS(866), + [anon_sym_COLON_COLON] = ACTIONS(868), + [anon_sym_fn] = ACTIONS(866), + [anon_sym_POUND] = ACTIONS(868), + [anon_sym_mod] = ACTIONS(866), + [anon_sym_enum] = ACTIONS(866), + [anon_sym_impl] = ACTIONS(866), + [anon_sym_trait] = ACTIONS(866), + [anon_sym_u8] = ACTIONS(866), + [anon_sym_i8] = ACTIONS(866), + [anon_sym_u16] = ACTIONS(866), + [anon_sym_i16] = ACTIONS(866), + [anon_sym_u32] = ACTIONS(866), + [anon_sym_i32] = ACTIONS(866), + [anon_sym_u64] = ACTIONS(866), + [anon_sym_i64] = ACTIONS(866), + [anon_sym_u128] = ACTIONS(866), + [anon_sym_i128] = ACTIONS(866), + [anon_sym_u256] = ACTIONS(866), + [anon_sym_i256] = ACTIONS(866), + [anon_sym_isize] = ACTIONS(866), + [anon_sym_usize] = ACTIONS(866), + [anon_sym_f32] = ACTIONS(866), + [anon_sym_f64] = ACTIONS(866), + [anon_sym_felt252] = ACTIONS(866), + [anon_sym_bool] = ACTIONS(866), + [anon_sym_str] = ACTIONS(866), + [anon_sym_char] = ACTIONS(866), + [anon_sym_GT] = ACTIONS(866), + [anon_sym_match] = ACTIONS(866), + [anon_sym_loop] = ACTIONS(866), + [anon_sym_BANG] = ACTIONS(866), + [anon_sym_TILDE] = ACTIONS(868), + [anon_sym_AMP_AMP] = ACTIONS(868), + [anon_sym_PIPE_PIPE] = ACTIONS(868), + [anon_sym_PIPE] = ACTIONS(866), + [anon_sym_CARET] = ACTIONS(866), + [anon_sym_LT2] = ACTIONS(866), + [anon_sym_LT_EQ] = ACTIONS(868), + [anon_sym_GT_EQ] = ACTIONS(868), + [anon_sym_LT_LT] = ACTIONS(866), + [anon_sym_GT_GT] = ACTIONS(866), + [anon_sym_PERCENT] = ACTIONS(866), + [anon_sym_DASH_EQ] = ACTIONS(868), + [anon_sym_STAR_EQ] = ACTIONS(868), + [anon_sym_SLASH_EQ] = ACTIONS(868), + [anon_sym_PERCENT_EQ] = ACTIONS(868), + [anon_sym_AMP_EQ] = ACTIONS(868), + [anon_sym_PIPE_EQ] = ACTIONS(868), + [anon_sym_CARET_EQ] = ACTIONS(868), + [anon_sym_LT_LT_EQ] = ACTIONS(868), + [anon_sym_GT_GT_EQ] = ACTIONS(868), + [anon_sym_QMARK] = ACTIONS(868), + [sym__cairo_1_short_string] = ACTIONS(868), + [anon_sym_true] = ACTIONS(866), + [anon_sym_false] = ACTIONS(866), + [sym_self] = ACTIONS(866), + }, + [138] = { + [sym_identifier] = ACTIONS(870), + [anon_sym_LPAREN] = ACTIONS(872), + [anon_sym_EQ] = ACTIONS(870), + [anon_sym_AT] = ACTIONS(872), + [anon_sym_LBRACE] = ACTIONS(872), + [anon_sym_RBRACE] = ACTIONS(872), + [anon_sym_struct] = ACTIONS(870), + [anon_sym_EQ_EQ] = ACTIONS(872), + [anon_sym_let] = ACTIONS(870), + [anon_sym_const] = ACTIONS(870), + [anon_sym_if] = ACTIONS(870), + [anon_sym_BANG_EQ] = ACTIONS(872), + [anon_sym_PLUS_EQ] = ACTIONS(872), + [anon_sym_return] = ACTIONS(870), + [anon_sym_STAR] = ACTIONS(870), + [anon_sym_AMP] = ACTIONS(870), + [anon_sym_DASH] = ACTIONS(870), + [anon_sym_PLUS] = ACTIONS(870), + [anon_sym_SLASH] = ACTIONS(870), + [anon_sym_LBRACK] = ACTIONS(872), + [anon_sym_DOT] = ACTIONS(872), + [sym_number] = ACTIONS(872), + [anon_sym_SEMI] = ACTIONS(872), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(870), + [anon_sym_extern] = ACTIONS(870), + [anon_sym_type] = ACTIONS(870), + [anon_sym_COLON_COLON] = ACTIONS(872), + [anon_sym_fn] = ACTIONS(870), + [anon_sym_POUND] = ACTIONS(872), + [anon_sym_mod] = ACTIONS(870), + [anon_sym_enum] = ACTIONS(870), + [anon_sym_impl] = ACTIONS(870), + [anon_sym_trait] = ACTIONS(870), + [anon_sym_u8] = ACTIONS(870), + [anon_sym_i8] = ACTIONS(870), + [anon_sym_u16] = ACTIONS(870), + [anon_sym_i16] = ACTIONS(870), + [anon_sym_u32] = ACTIONS(870), + [anon_sym_i32] = ACTIONS(870), + [anon_sym_u64] = ACTIONS(870), + [anon_sym_i64] = ACTIONS(870), + [anon_sym_u128] = ACTIONS(870), + [anon_sym_i128] = ACTIONS(870), + [anon_sym_u256] = ACTIONS(870), + [anon_sym_i256] = ACTIONS(870), + [anon_sym_isize] = ACTIONS(870), + [anon_sym_usize] = ACTIONS(870), + [anon_sym_f32] = ACTIONS(870), + [anon_sym_f64] = ACTIONS(870), + [anon_sym_felt252] = ACTIONS(870), + [anon_sym_bool] = ACTIONS(870), + [anon_sym_str] = ACTIONS(870), + [anon_sym_char] = ACTIONS(870), + [anon_sym_GT] = ACTIONS(870), + [anon_sym_match] = ACTIONS(870), + [anon_sym_loop] = ACTIONS(870), + [anon_sym_BANG] = ACTIONS(870), + [anon_sym_TILDE] = ACTIONS(872), + [anon_sym_AMP_AMP] = ACTIONS(872), + [anon_sym_PIPE_PIPE] = ACTIONS(872), + [anon_sym_PIPE] = ACTIONS(870), + [anon_sym_CARET] = ACTIONS(870), + [anon_sym_LT2] = ACTIONS(870), + [anon_sym_LT_EQ] = ACTIONS(872), + [anon_sym_GT_EQ] = ACTIONS(872), + [anon_sym_LT_LT] = ACTIONS(870), + [anon_sym_GT_GT] = ACTIONS(870), + [anon_sym_PERCENT] = ACTIONS(870), + [anon_sym_DASH_EQ] = ACTIONS(872), + [anon_sym_STAR_EQ] = ACTIONS(872), + [anon_sym_SLASH_EQ] = ACTIONS(872), + [anon_sym_PERCENT_EQ] = ACTIONS(872), + [anon_sym_AMP_EQ] = ACTIONS(872), + [anon_sym_PIPE_EQ] = ACTIONS(872), + [anon_sym_CARET_EQ] = ACTIONS(872), + [anon_sym_LT_LT_EQ] = ACTIONS(872), + [anon_sym_GT_GT_EQ] = ACTIONS(872), + [anon_sym_QMARK] = ACTIONS(872), + [sym__cairo_1_short_string] = ACTIONS(872), + [anon_sym_true] = ACTIONS(870), + [anon_sym_false] = ACTIONS(870), + [sym_self] = ACTIONS(870), + }, + [139] = { + [sym_identifier] = ACTIONS(874), + [anon_sym_LPAREN] = ACTIONS(670), + [anon_sym_EQ] = ACTIONS(874), + [anon_sym_AT] = ACTIONS(876), + [anon_sym_LBRACE] = ACTIONS(876), + [anon_sym_RBRACE] = ACTIONS(876), + [anon_sym_struct] = ACTIONS(874), + [anon_sym_EQ_EQ] = ACTIONS(876), + [anon_sym_let] = ACTIONS(874), + [anon_sym_const] = ACTIONS(874), + [anon_sym_if] = ACTIONS(874), + [anon_sym_BANG_EQ] = ACTIONS(876), + [anon_sym_PLUS_EQ] = ACTIONS(876), + [anon_sym_return] = ACTIONS(874), + [anon_sym_STAR] = ACTIONS(680), + [anon_sym_AMP] = ACTIONS(682), + [anon_sym_DASH] = ACTIONS(684), + [anon_sym_PLUS] = ACTIONS(684), + [anon_sym_SLASH] = ACTIONS(680), + [anon_sym_LBRACK] = ACTIONS(686), + [anon_sym_DOT] = ACTIONS(688), + [sym_number] = ACTIONS(876), + [anon_sym_SEMI] = ACTIONS(876), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(874), + [anon_sym_extern] = ACTIONS(874), + [anon_sym_type] = ACTIONS(874), + [anon_sym_COLON_COLON] = ACTIONS(876), + [anon_sym_fn] = ACTIONS(874), + [anon_sym_POUND] = ACTIONS(876), + [anon_sym_mod] = ACTIONS(874), + [anon_sym_enum] = ACTIONS(874), + [anon_sym_impl] = ACTIONS(874), + [anon_sym_trait] = ACTIONS(874), + [anon_sym_u8] = ACTIONS(874), + [anon_sym_i8] = ACTIONS(874), + [anon_sym_u16] = ACTIONS(874), + [anon_sym_i16] = ACTIONS(874), + [anon_sym_u32] = ACTIONS(874), + [anon_sym_i32] = ACTIONS(874), + [anon_sym_u64] = ACTIONS(874), + [anon_sym_i64] = ACTIONS(874), + [anon_sym_u128] = ACTIONS(874), + [anon_sym_i128] = ACTIONS(874), + [anon_sym_u256] = ACTIONS(874), + [anon_sym_i256] = ACTIONS(874), + [anon_sym_isize] = ACTIONS(874), + [anon_sym_usize] = ACTIONS(874), + [anon_sym_f32] = ACTIONS(874), + [anon_sym_f64] = ACTIONS(874), + [anon_sym_felt252] = ACTIONS(874), + [anon_sym_bool] = ACTIONS(874), + [anon_sym_str] = ACTIONS(874), + [anon_sym_char] = ACTIONS(874), + [anon_sym_GT] = ACTIONS(874), + [anon_sym_match] = ACTIONS(874), + [anon_sym_loop] = ACTIONS(874), + [anon_sym_BANG] = ACTIONS(874), + [anon_sym_TILDE] = ACTIONS(876), + [anon_sym_AMP_AMP] = ACTIONS(876), + [anon_sym_PIPE_PIPE] = ACTIONS(876), + [anon_sym_PIPE] = ACTIONS(696), + [anon_sym_CARET] = ACTIONS(698), + [anon_sym_LT2] = ACTIONS(874), + [anon_sym_LT_EQ] = ACTIONS(876), + [anon_sym_GT_EQ] = ACTIONS(876), + [anon_sym_LT_LT] = ACTIONS(700), + [anon_sym_GT_GT] = ACTIONS(700), + [anon_sym_PERCENT] = ACTIONS(680), + [anon_sym_DASH_EQ] = ACTIONS(876), + [anon_sym_STAR_EQ] = ACTIONS(876), + [anon_sym_SLASH_EQ] = ACTIONS(876), + [anon_sym_PERCENT_EQ] = ACTIONS(876), + [anon_sym_AMP_EQ] = ACTIONS(876), + [anon_sym_PIPE_EQ] = ACTIONS(876), + [anon_sym_CARET_EQ] = ACTIONS(876), + [anon_sym_LT_LT_EQ] = ACTIONS(876), + [anon_sym_GT_GT_EQ] = ACTIONS(876), + [anon_sym_QMARK] = ACTIONS(876), + [sym__cairo_1_short_string] = ACTIONS(876), + [anon_sym_true] = ACTIONS(874), + [anon_sym_false] = ACTIONS(874), + [sym_self] = ACTIONS(874), + }, + [140] = { + [sym_identifier] = ACTIONS(878), + [anon_sym_LPAREN] = ACTIONS(880), + [anon_sym_EQ] = ACTIONS(878), + [anon_sym_AT] = ACTIONS(880), + [anon_sym_LBRACE] = ACTIONS(880), + [anon_sym_RBRACE] = ACTIONS(880), + [anon_sym_struct] = ACTIONS(878), + [anon_sym_EQ_EQ] = ACTIONS(880), + [anon_sym_let] = ACTIONS(878), + [anon_sym_const] = ACTIONS(878), + [anon_sym_if] = ACTIONS(878), + [anon_sym_BANG_EQ] = ACTIONS(880), + [anon_sym_PLUS_EQ] = ACTIONS(880), + [anon_sym_return] = ACTIONS(878), + [anon_sym_STAR] = ACTIONS(878), + [anon_sym_AMP] = ACTIONS(878), + [anon_sym_DASH] = ACTIONS(878), + [anon_sym_PLUS] = ACTIONS(878), + [anon_sym_SLASH] = ACTIONS(878), + [anon_sym_LBRACK] = ACTIONS(880), + [anon_sym_DOT] = ACTIONS(880), + [sym_number] = ACTIONS(880), + [anon_sym_SEMI] = ACTIONS(880), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(878), + [anon_sym_extern] = ACTIONS(878), + [anon_sym_type] = ACTIONS(878), + [anon_sym_COLON_COLON] = ACTIONS(880), + [anon_sym_fn] = ACTIONS(878), + [anon_sym_POUND] = ACTIONS(880), + [anon_sym_mod] = ACTIONS(878), + [anon_sym_enum] = ACTIONS(878), + [anon_sym_impl] = ACTIONS(878), + [anon_sym_trait] = ACTIONS(878), + [anon_sym_u8] = ACTIONS(878), + [anon_sym_i8] = ACTIONS(878), + [anon_sym_u16] = ACTIONS(878), + [anon_sym_i16] = ACTIONS(878), + [anon_sym_u32] = ACTIONS(878), + [anon_sym_i32] = ACTIONS(878), + [anon_sym_u64] = ACTIONS(878), + [anon_sym_i64] = ACTIONS(878), + [anon_sym_u128] = ACTIONS(878), + [anon_sym_i128] = ACTIONS(878), + [anon_sym_u256] = ACTIONS(878), + [anon_sym_i256] = ACTIONS(878), + [anon_sym_isize] = ACTIONS(878), + [anon_sym_usize] = ACTIONS(878), + [anon_sym_f32] = ACTIONS(878), + [anon_sym_f64] = ACTIONS(878), + [anon_sym_felt252] = ACTIONS(878), + [anon_sym_bool] = ACTIONS(878), + [anon_sym_str] = ACTIONS(878), + [anon_sym_char] = ACTIONS(878), + [anon_sym_GT] = ACTIONS(878), + [anon_sym_match] = ACTIONS(878), + [anon_sym_loop] = ACTIONS(878), + [anon_sym_BANG] = ACTIONS(878), + [anon_sym_TILDE] = ACTIONS(880), + [anon_sym_AMP_AMP] = ACTIONS(880), + [anon_sym_PIPE_PIPE] = ACTIONS(880), + [anon_sym_PIPE] = ACTIONS(878), + [anon_sym_CARET] = ACTIONS(878), + [anon_sym_LT2] = ACTIONS(878), + [anon_sym_LT_EQ] = ACTIONS(880), + [anon_sym_GT_EQ] = ACTIONS(880), + [anon_sym_LT_LT] = ACTIONS(878), + [anon_sym_GT_GT] = ACTIONS(878), + [anon_sym_PERCENT] = ACTIONS(878), + [anon_sym_DASH_EQ] = ACTIONS(880), + [anon_sym_STAR_EQ] = ACTIONS(880), + [anon_sym_SLASH_EQ] = ACTIONS(880), + [anon_sym_PERCENT_EQ] = ACTIONS(880), + [anon_sym_AMP_EQ] = ACTIONS(880), + [anon_sym_PIPE_EQ] = ACTIONS(880), + [anon_sym_CARET_EQ] = ACTIONS(880), + [anon_sym_LT_LT_EQ] = ACTIONS(880), + [anon_sym_GT_GT_EQ] = ACTIONS(880), + [anon_sym_QMARK] = ACTIONS(880), + [sym__cairo_1_short_string] = ACTIONS(880), + [anon_sym_true] = ACTIONS(878), + [anon_sym_false] = ACTIONS(878), + [sym_self] = ACTIONS(878), + }, + [141] = { + [sym_identifier] = ACTIONS(882), + [anon_sym_LPAREN] = ACTIONS(884), + [anon_sym_EQ] = ACTIONS(882), + [anon_sym_AT] = ACTIONS(884), + [anon_sym_LBRACE] = ACTIONS(884), + [anon_sym_RBRACE] = ACTIONS(884), + [anon_sym_struct] = ACTIONS(882), + [anon_sym_EQ_EQ] = ACTIONS(884), + [anon_sym_let] = ACTIONS(882), + [anon_sym_const] = ACTIONS(882), + [anon_sym_if] = ACTIONS(882), + [anon_sym_BANG_EQ] = ACTIONS(884), + [anon_sym_PLUS_EQ] = ACTIONS(884), + [anon_sym_return] = ACTIONS(882), + [anon_sym_STAR] = ACTIONS(882), + [anon_sym_AMP] = ACTIONS(882), + [anon_sym_DASH] = ACTIONS(882), + [anon_sym_PLUS] = ACTIONS(882), + [anon_sym_SLASH] = ACTIONS(882), + [anon_sym_LBRACK] = ACTIONS(884), + [anon_sym_DOT] = ACTIONS(884), + [sym_number] = ACTIONS(884), + [anon_sym_SEMI] = ACTIONS(884), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(882), + [anon_sym_extern] = ACTIONS(882), + [anon_sym_type] = ACTIONS(882), + [anon_sym_COLON_COLON] = ACTIONS(884), + [anon_sym_fn] = ACTIONS(882), + [anon_sym_POUND] = ACTIONS(884), + [anon_sym_mod] = ACTIONS(882), + [anon_sym_enum] = ACTIONS(882), + [anon_sym_impl] = ACTIONS(882), + [anon_sym_trait] = ACTIONS(882), + [anon_sym_u8] = ACTIONS(882), + [anon_sym_i8] = ACTIONS(882), + [anon_sym_u16] = ACTIONS(882), + [anon_sym_i16] = ACTIONS(882), + [anon_sym_u32] = ACTIONS(882), + [anon_sym_i32] = ACTIONS(882), + [anon_sym_u64] = ACTIONS(882), + [anon_sym_i64] = ACTIONS(882), + [anon_sym_u128] = ACTIONS(882), + [anon_sym_i128] = ACTIONS(882), + [anon_sym_u256] = ACTIONS(882), + [anon_sym_i256] = ACTIONS(882), + [anon_sym_isize] = ACTIONS(882), + [anon_sym_usize] = ACTIONS(882), + [anon_sym_f32] = ACTIONS(882), + [anon_sym_f64] = ACTIONS(882), + [anon_sym_felt252] = ACTIONS(882), + [anon_sym_bool] = ACTIONS(882), + [anon_sym_str] = ACTIONS(882), + [anon_sym_char] = ACTIONS(882), + [anon_sym_GT] = ACTIONS(882), + [anon_sym_match] = ACTIONS(882), + [anon_sym_loop] = ACTIONS(882), + [anon_sym_BANG] = ACTIONS(882), + [anon_sym_TILDE] = ACTIONS(884), + [anon_sym_AMP_AMP] = ACTIONS(884), + [anon_sym_PIPE_PIPE] = ACTIONS(884), + [anon_sym_PIPE] = ACTIONS(882), + [anon_sym_CARET] = ACTIONS(882), + [anon_sym_LT2] = ACTIONS(882), + [anon_sym_LT_EQ] = ACTIONS(884), + [anon_sym_GT_EQ] = ACTIONS(884), + [anon_sym_LT_LT] = ACTIONS(882), + [anon_sym_GT_GT] = ACTIONS(882), + [anon_sym_PERCENT] = ACTIONS(882), + [anon_sym_DASH_EQ] = ACTIONS(884), + [anon_sym_STAR_EQ] = ACTIONS(884), + [anon_sym_SLASH_EQ] = ACTIONS(884), + [anon_sym_PERCENT_EQ] = ACTIONS(884), + [anon_sym_AMP_EQ] = ACTIONS(884), + [anon_sym_PIPE_EQ] = ACTIONS(884), + [anon_sym_CARET_EQ] = ACTIONS(884), + [anon_sym_LT_LT_EQ] = ACTIONS(884), + [anon_sym_GT_GT_EQ] = ACTIONS(884), + [anon_sym_QMARK] = ACTIONS(884), + [sym__cairo_1_short_string] = ACTIONS(884), + [anon_sym_true] = ACTIONS(882), + [anon_sym_false] = ACTIONS(882), + [sym_self] = ACTIONS(882), + }, + [142] = { + [sym_identifier] = ACTIONS(878), + [anon_sym_LPAREN] = ACTIONS(880), + [anon_sym_EQ] = ACTIONS(878), + [anon_sym_AT] = ACTIONS(880), + [anon_sym_LBRACE] = ACTIONS(880), + [anon_sym_RBRACE] = ACTIONS(880), + [anon_sym_struct] = ACTIONS(878), + [anon_sym_EQ_EQ] = ACTIONS(880), + [anon_sym_let] = ACTIONS(878), + [anon_sym_const] = ACTIONS(878), + [anon_sym_if] = ACTIONS(878), + [anon_sym_BANG_EQ] = ACTIONS(880), + [anon_sym_PLUS_EQ] = ACTIONS(880), + [anon_sym_return] = ACTIONS(878), + [anon_sym_STAR] = ACTIONS(878), + [anon_sym_AMP] = ACTIONS(878), + [anon_sym_DASH] = ACTIONS(878), + [anon_sym_PLUS] = ACTIONS(878), + [anon_sym_SLASH] = ACTIONS(878), + [anon_sym_LBRACK] = ACTIONS(880), + [anon_sym_DOT] = ACTIONS(880), + [sym_number] = ACTIONS(880), + [anon_sym_SEMI] = ACTIONS(880), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(878), + [anon_sym_extern] = ACTIONS(878), + [anon_sym_type] = ACTIONS(878), + [anon_sym_COLON_COLON] = ACTIONS(880), + [anon_sym_fn] = ACTIONS(878), + [anon_sym_POUND] = ACTIONS(880), + [anon_sym_mod] = ACTIONS(878), + [anon_sym_enum] = ACTIONS(878), + [anon_sym_impl] = ACTIONS(878), + [anon_sym_trait] = ACTIONS(878), + [anon_sym_u8] = ACTIONS(878), + [anon_sym_i8] = ACTIONS(878), + [anon_sym_u16] = ACTIONS(878), + [anon_sym_i16] = ACTIONS(878), + [anon_sym_u32] = ACTIONS(878), + [anon_sym_i32] = ACTIONS(878), + [anon_sym_u64] = ACTIONS(878), + [anon_sym_i64] = ACTIONS(878), + [anon_sym_u128] = ACTIONS(878), + [anon_sym_i128] = ACTIONS(878), + [anon_sym_u256] = ACTIONS(878), + [anon_sym_i256] = ACTIONS(878), + [anon_sym_isize] = ACTIONS(878), + [anon_sym_usize] = ACTIONS(878), + [anon_sym_f32] = ACTIONS(878), + [anon_sym_f64] = ACTIONS(878), + [anon_sym_felt252] = ACTIONS(878), + [anon_sym_bool] = ACTIONS(878), + [anon_sym_str] = ACTIONS(878), + [anon_sym_char] = ACTIONS(878), + [anon_sym_GT] = ACTIONS(878), + [anon_sym_match] = ACTIONS(878), + [anon_sym_loop] = ACTIONS(878), + [anon_sym_BANG] = ACTIONS(878), + [anon_sym_TILDE] = ACTIONS(880), + [anon_sym_AMP_AMP] = ACTIONS(880), + [anon_sym_PIPE_PIPE] = ACTIONS(880), + [anon_sym_PIPE] = ACTIONS(878), + [anon_sym_CARET] = ACTIONS(878), + [anon_sym_LT2] = ACTIONS(878), + [anon_sym_LT_EQ] = ACTIONS(880), + [anon_sym_GT_EQ] = ACTIONS(880), + [anon_sym_LT_LT] = ACTIONS(878), + [anon_sym_GT_GT] = ACTIONS(878), + [anon_sym_PERCENT] = ACTIONS(878), + [anon_sym_DASH_EQ] = ACTIONS(880), + [anon_sym_STAR_EQ] = ACTIONS(880), + [anon_sym_SLASH_EQ] = ACTIONS(880), + [anon_sym_PERCENT_EQ] = ACTIONS(880), + [anon_sym_AMP_EQ] = ACTIONS(880), + [anon_sym_PIPE_EQ] = ACTIONS(880), + [anon_sym_CARET_EQ] = ACTIONS(880), + [anon_sym_LT_LT_EQ] = ACTIONS(880), + [anon_sym_GT_GT_EQ] = ACTIONS(880), + [anon_sym_QMARK] = ACTIONS(880), + [sym__cairo_1_short_string] = ACTIONS(880), + [anon_sym_true] = ACTIONS(878), + [anon_sym_false] = ACTIONS(878), + [sym_self] = ACTIONS(878), + }, + [143] = { + [sym_identifier] = ACTIONS(886), + [anon_sym_LPAREN] = ACTIONS(888), + [anon_sym_EQ] = ACTIONS(886), + [anon_sym_AT] = ACTIONS(888), + [anon_sym_LBRACE] = ACTIONS(888), + [anon_sym_RBRACE] = ACTIONS(888), + [anon_sym_struct] = ACTIONS(886), + [anon_sym_EQ_EQ] = ACTIONS(888), + [anon_sym_let] = ACTIONS(886), + [anon_sym_const] = ACTIONS(886), + [anon_sym_if] = ACTIONS(886), + [anon_sym_BANG_EQ] = ACTIONS(888), + [anon_sym_PLUS_EQ] = ACTIONS(888), + [anon_sym_return] = ACTIONS(886), + [anon_sym_STAR] = ACTIONS(886), + [anon_sym_AMP] = ACTIONS(886), + [anon_sym_DASH] = ACTIONS(886), + [anon_sym_PLUS] = ACTIONS(886), + [anon_sym_SLASH] = ACTIONS(886), + [anon_sym_LBRACK] = ACTIONS(888), + [anon_sym_DOT] = ACTIONS(888), + [sym_number] = ACTIONS(888), + [anon_sym_SEMI] = ACTIONS(888), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(886), + [anon_sym_extern] = ACTIONS(886), + [anon_sym_type] = ACTIONS(886), + [anon_sym_COLON_COLON] = ACTIONS(888), + [anon_sym_fn] = ACTIONS(886), + [anon_sym_POUND] = ACTIONS(888), + [anon_sym_mod] = ACTIONS(886), + [anon_sym_enum] = ACTIONS(886), + [anon_sym_impl] = ACTIONS(886), + [anon_sym_trait] = ACTIONS(886), + [anon_sym_u8] = ACTIONS(886), + [anon_sym_i8] = ACTIONS(886), + [anon_sym_u16] = ACTIONS(886), + [anon_sym_i16] = ACTIONS(886), + [anon_sym_u32] = ACTIONS(886), + [anon_sym_i32] = ACTIONS(886), + [anon_sym_u64] = ACTIONS(886), + [anon_sym_i64] = ACTIONS(886), + [anon_sym_u128] = ACTIONS(886), + [anon_sym_i128] = ACTIONS(886), + [anon_sym_u256] = ACTIONS(886), + [anon_sym_i256] = ACTIONS(886), + [anon_sym_isize] = ACTIONS(886), + [anon_sym_usize] = ACTIONS(886), + [anon_sym_f32] = ACTIONS(886), + [anon_sym_f64] = ACTIONS(886), + [anon_sym_felt252] = ACTIONS(886), + [anon_sym_bool] = ACTIONS(886), + [anon_sym_str] = ACTIONS(886), + [anon_sym_char] = ACTIONS(886), + [anon_sym_GT] = ACTIONS(886), + [anon_sym_match] = ACTIONS(886), + [anon_sym_loop] = ACTIONS(886), + [anon_sym_BANG] = ACTIONS(886), + [anon_sym_TILDE] = ACTIONS(888), + [anon_sym_AMP_AMP] = ACTIONS(888), + [anon_sym_PIPE_PIPE] = ACTIONS(888), + [anon_sym_PIPE] = ACTIONS(886), + [anon_sym_CARET] = ACTIONS(886), + [anon_sym_LT2] = ACTIONS(886), + [anon_sym_LT_EQ] = ACTIONS(888), + [anon_sym_GT_EQ] = ACTIONS(888), + [anon_sym_LT_LT] = ACTIONS(886), + [anon_sym_GT_GT] = ACTIONS(886), + [anon_sym_PERCENT] = ACTIONS(886), + [anon_sym_DASH_EQ] = ACTIONS(888), + [anon_sym_STAR_EQ] = ACTIONS(888), + [anon_sym_SLASH_EQ] = ACTIONS(888), + [anon_sym_PERCENT_EQ] = ACTIONS(888), + [anon_sym_AMP_EQ] = ACTIONS(888), + [anon_sym_PIPE_EQ] = ACTIONS(888), + [anon_sym_CARET_EQ] = ACTIONS(888), + [anon_sym_LT_LT_EQ] = ACTIONS(888), + [anon_sym_GT_GT_EQ] = ACTIONS(888), + [anon_sym_QMARK] = ACTIONS(888), + [sym__cairo_1_short_string] = ACTIONS(888), + [anon_sym_true] = ACTIONS(886), + [anon_sym_false] = ACTIONS(886), + [sym_self] = ACTIONS(886), + }, + [144] = { + [sym_identifier] = ACTIONS(890), + [anon_sym_LPAREN] = ACTIONS(892), + [anon_sym_EQ] = ACTIONS(890), + [anon_sym_AT] = ACTIONS(892), + [anon_sym_LBRACE] = ACTIONS(892), + [anon_sym_RBRACE] = ACTIONS(892), + [anon_sym_struct] = ACTIONS(890), + [anon_sym_EQ_EQ] = ACTIONS(892), + [anon_sym_let] = ACTIONS(890), + [anon_sym_const] = ACTIONS(890), + [anon_sym_if] = ACTIONS(890), + [anon_sym_BANG_EQ] = ACTIONS(892), + [anon_sym_PLUS_EQ] = ACTIONS(892), + [anon_sym_return] = ACTIONS(890), + [anon_sym_STAR] = ACTIONS(890), + [anon_sym_AMP] = ACTIONS(890), + [anon_sym_DASH] = ACTIONS(890), + [anon_sym_PLUS] = ACTIONS(890), + [anon_sym_SLASH] = ACTIONS(890), + [anon_sym_LBRACK] = ACTIONS(892), + [anon_sym_DOT] = ACTIONS(892), + [sym_number] = ACTIONS(892), + [anon_sym_SEMI] = ACTIONS(892), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(890), + [anon_sym_extern] = ACTIONS(890), + [anon_sym_type] = ACTIONS(890), + [anon_sym_COLON_COLON] = ACTIONS(892), + [anon_sym_fn] = ACTIONS(890), + [anon_sym_POUND] = ACTIONS(892), + [anon_sym_mod] = ACTIONS(890), + [anon_sym_enum] = ACTIONS(890), + [anon_sym_impl] = ACTIONS(890), + [anon_sym_trait] = ACTIONS(890), + [anon_sym_u8] = ACTIONS(890), + [anon_sym_i8] = ACTIONS(890), + [anon_sym_u16] = ACTIONS(890), + [anon_sym_i16] = ACTIONS(890), + [anon_sym_u32] = ACTIONS(890), + [anon_sym_i32] = ACTIONS(890), + [anon_sym_u64] = ACTIONS(890), + [anon_sym_i64] = ACTIONS(890), + [anon_sym_u128] = ACTIONS(890), + [anon_sym_i128] = ACTIONS(890), + [anon_sym_u256] = ACTIONS(890), + [anon_sym_i256] = ACTIONS(890), + [anon_sym_isize] = ACTIONS(890), + [anon_sym_usize] = ACTIONS(890), + [anon_sym_f32] = ACTIONS(890), + [anon_sym_f64] = ACTIONS(890), + [anon_sym_felt252] = ACTIONS(890), + [anon_sym_bool] = ACTIONS(890), + [anon_sym_str] = ACTIONS(890), + [anon_sym_char] = ACTIONS(890), + [anon_sym_GT] = ACTIONS(890), + [anon_sym_match] = ACTIONS(890), + [anon_sym_loop] = ACTIONS(890), + [anon_sym_BANG] = ACTIONS(890), + [anon_sym_TILDE] = ACTIONS(892), + [anon_sym_AMP_AMP] = ACTIONS(892), + [anon_sym_PIPE_PIPE] = ACTIONS(892), + [anon_sym_PIPE] = ACTIONS(890), + [anon_sym_CARET] = ACTIONS(890), + [anon_sym_LT2] = ACTIONS(890), + [anon_sym_LT_EQ] = ACTIONS(892), + [anon_sym_GT_EQ] = ACTIONS(892), + [anon_sym_LT_LT] = ACTIONS(890), + [anon_sym_GT_GT] = ACTIONS(890), + [anon_sym_PERCENT] = ACTIONS(890), + [anon_sym_DASH_EQ] = ACTIONS(892), + [anon_sym_STAR_EQ] = ACTIONS(892), + [anon_sym_SLASH_EQ] = ACTIONS(892), + [anon_sym_PERCENT_EQ] = ACTIONS(892), + [anon_sym_AMP_EQ] = ACTIONS(892), + [anon_sym_PIPE_EQ] = ACTIONS(892), + [anon_sym_CARET_EQ] = ACTIONS(892), + [anon_sym_LT_LT_EQ] = ACTIONS(892), + [anon_sym_GT_GT_EQ] = ACTIONS(892), + [anon_sym_QMARK] = ACTIONS(892), + [sym__cairo_1_short_string] = ACTIONS(892), + [anon_sym_true] = ACTIONS(890), + [anon_sym_false] = ACTIONS(890), + [sym_self] = ACTIONS(890), + }, + [145] = { + [sym_identifier] = ACTIONS(894), + [anon_sym_LPAREN] = ACTIONS(896), + [anon_sym_EQ] = ACTIONS(894), + [anon_sym_AT] = ACTIONS(896), + [anon_sym_LBRACE] = ACTIONS(896), + [anon_sym_RBRACE] = ACTIONS(896), + [anon_sym_struct] = ACTIONS(894), + [anon_sym_EQ_EQ] = ACTIONS(896), + [anon_sym_let] = ACTIONS(894), + [anon_sym_const] = ACTIONS(894), + [anon_sym_if] = ACTIONS(894), + [anon_sym_BANG_EQ] = ACTIONS(896), + [anon_sym_PLUS_EQ] = ACTIONS(896), + [anon_sym_return] = ACTIONS(894), + [anon_sym_STAR] = ACTIONS(894), + [anon_sym_AMP] = ACTIONS(894), + [anon_sym_DASH] = ACTIONS(894), + [anon_sym_PLUS] = ACTIONS(894), + [anon_sym_SLASH] = ACTIONS(894), + [anon_sym_LBRACK] = ACTIONS(896), + [anon_sym_DOT] = ACTIONS(896), + [sym_number] = ACTIONS(896), + [anon_sym_SEMI] = ACTIONS(896), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(894), + [anon_sym_extern] = ACTIONS(894), + [anon_sym_type] = ACTIONS(894), + [anon_sym_COLON_COLON] = ACTIONS(896), + [anon_sym_fn] = ACTIONS(894), + [anon_sym_POUND] = ACTIONS(896), + [anon_sym_mod] = ACTIONS(894), + [anon_sym_enum] = ACTIONS(894), + [anon_sym_impl] = ACTIONS(894), + [anon_sym_trait] = ACTIONS(894), + [anon_sym_u8] = ACTIONS(894), + [anon_sym_i8] = ACTIONS(894), + [anon_sym_u16] = ACTIONS(894), + [anon_sym_i16] = ACTIONS(894), + [anon_sym_u32] = ACTIONS(894), + [anon_sym_i32] = ACTIONS(894), + [anon_sym_u64] = ACTIONS(894), + [anon_sym_i64] = ACTIONS(894), + [anon_sym_u128] = ACTIONS(894), + [anon_sym_i128] = ACTIONS(894), + [anon_sym_u256] = ACTIONS(894), + [anon_sym_i256] = ACTIONS(894), + [anon_sym_isize] = ACTIONS(894), + [anon_sym_usize] = ACTIONS(894), + [anon_sym_f32] = ACTIONS(894), + [anon_sym_f64] = ACTIONS(894), + [anon_sym_felt252] = ACTIONS(894), + [anon_sym_bool] = ACTIONS(894), + [anon_sym_str] = ACTIONS(894), + [anon_sym_char] = ACTIONS(894), + [anon_sym_GT] = ACTIONS(894), + [anon_sym_match] = ACTIONS(894), + [anon_sym_loop] = ACTIONS(894), + [anon_sym_BANG] = ACTIONS(894), + [anon_sym_TILDE] = ACTIONS(896), + [anon_sym_AMP_AMP] = ACTIONS(896), + [anon_sym_PIPE_PIPE] = ACTIONS(896), + [anon_sym_PIPE] = ACTIONS(894), + [anon_sym_CARET] = ACTIONS(894), + [anon_sym_LT2] = ACTIONS(894), + [anon_sym_LT_EQ] = ACTIONS(896), + [anon_sym_GT_EQ] = ACTIONS(896), + [anon_sym_LT_LT] = ACTIONS(894), + [anon_sym_GT_GT] = ACTIONS(894), + [anon_sym_PERCENT] = ACTIONS(894), + [anon_sym_DASH_EQ] = ACTIONS(896), + [anon_sym_STAR_EQ] = ACTIONS(896), + [anon_sym_SLASH_EQ] = ACTIONS(896), + [anon_sym_PERCENT_EQ] = ACTIONS(896), + [anon_sym_AMP_EQ] = ACTIONS(896), + [anon_sym_PIPE_EQ] = ACTIONS(896), + [anon_sym_CARET_EQ] = ACTIONS(896), + [anon_sym_LT_LT_EQ] = ACTIONS(896), + [anon_sym_GT_GT_EQ] = ACTIONS(896), + [anon_sym_QMARK] = ACTIONS(896), + [sym__cairo_1_short_string] = ACTIONS(896), + [anon_sym_true] = ACTIONS(894), + [anon_sym_false] = ACTIONS(894), + [sym_self] = ACTIONS(894), + }, + [146] = { + [sym_identifier] = ACTIONS(898), + [anon_sym_LPAREN] = ACTIONS(670), + [anon_sym_EQ] = ACTIONS(898), + [anon_sym_AT] = ACTIONS(900), + [anon_sym_LBRACE] = ACTIONS(900), + [anon_sym_RBRACE] = ACTIONS(900), + [anon_sym_struct] = ACTIONS(898), + [anon_sym_EQ_EQ] = ACTIONS(676), + [anon_sym_let] = ACTIONS(898), + [anon_sym_const] = ACTIONS(898), + [anon_sym_if] = ACTIONS(898), + [anon_sym_BANG_EQ] = ACTIONS(676), + [anon_sym_PLUS_EQ] = ACTIONS(900), + [anon_sym_return] = ACTIONS(898), + [anon_sym_STAR] = ACTIONS(680), + [anon_sym_AMP] = ACTIONS(682), + [anon_sym_DASH] = ACTIONS(684), + [anon_sym_PLUS] = ACTIONS(684), + [anon_sym_SLASH] = ACTIONS(680), + [anon_sym_LBRACK] = ACTIONS(686), + [anon_sym_DOT] = ACTIONS(688), + [sym_number] = ACTIONS(900), + [anon_sym_SEMI] = ACTIONS(900), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(898), + [anon_sym_extern] = ACTIONS(898), + [anon_sym_type] = ACTIONS(898), + [anon_sym_COLON_COLON] = ACTIONS(900), + [anon_sym_fn] = ACTIONS(898), + [anon_sym_POUND] = ACTIONS(900), + [anon_sym_mod] = ACTIONS(898), + [anon_sym_enum] = ACTIONS(898), + [anon_sym_impl] = ACTIONS(898), + [anon_sym_trait] = ACTIONS(898), + [anon_sym_u8] = ACTIONS(898), + [anon_sym_i8] = ACTIONS(898), + [anon_sym_u16] = ACTIONS(898), + [anon_sym_i16] = ACTIONS(898), + [anon_sym_u32] = ACTIONS(898), + [anon_sym_i32] = ACTIONS(898), + [anon_sym_u64] = ACTIONS(898), + [anon_sym_i64] = ACTIONS(898), + [anon_sym_u128] = ACTIONS(898), + [anon_sym_i128] = ACTIONS(898), + [anon_sym_u256] = ACTIONS(898), + [anon_sym_i256] = ACTIONS(898), + [anon_sym_isize] = ACTIONS(898), + [anon_sym_usize] = ACTIONS(898), + [anon_sym_f32] = ACTIONS(898), + [anon_sym_f64] = ACTIONS(898), + [anon_sym_felt252] = ACTIONS(898), + [anon_sym_bool] = ACTIONS(898), + [anon_sym_str] = ACTIONS(898), + [anon_sym_char] = ACTIONS(898), + [anon_sym_GT] = ACTIONS(690), + [anon_sym_match] = ACTIONS(898), + [anon_sym_loop] = ACTIONS(898), + [anon_sym_BANG] = ACTIONS(898), + [anon_sym_TILDE] = ACTIONS(900), + [anon_sym_AMP_AMP] = ACTIONS(692), + [anon_sym_PIPE_PIPE] = ACTIONS(694), + [anon_sym_PIPE] = ACTIONS(696), + [anon_sym_CARET] = ACTIONS(698), + [anon_sym_LT2] = ACTIONS(690), + [anon_sym_LT_EQ] = ACTIONS(676), + [anon_sym_GT_EQ] = ACTIONS(676), + [anon_sym_LT_LT] = ACTIONS(700), + [anon_sym_GT_GT] = ACTIONS(700), + [anon_sym_PERCENT] = ACTIONS(680), + [anon_sym_DASH_EQ] = ACTIONS(900), + [anon_sym_STAR_EQ] = ACTIONS(900), + [anon_sym_SLASH_EQ] = ACTIONS(900), + [anon_sym_PERCENT_EQ] = ACTIONS(900), + [anon_sym_AMP_EQ] = ACTIONS(900), + [anon_sym_PIPE_EQ] = ACTIONS(900), + [anon_sym_CARET_EQ] = ACTIONS(900), + [anon_sym_LT_LT_EQ] = ACTIONS(900), + [anon_sym_GT_GT_EQ] = ACTIONS(900), + [anon_sym_QMARK] = ACTIONS(900), + [sym__cairo_1_short_string] = ACTIONS(900), + [anon_sym_true] = ACTIONS(898), + [anon_sym_false] = ACTIONS(898), + [sym_self] = ACTIONS(898), + }, + [147] = { + [sym_identifier] = ACTIONS(874), + [anon_sym_LPAREN] = ACTIONS(670), + [anon_sym_EQ] = ACTIONS(874), + [anon_sym_AT] = ACTIONS(876), + [anon_sym_LBRACE] = ACTIONS(876), + [anon_sym_RBRACE] = ACTIONS(876), + [anon_sym_struct] = ACTIONS(874), + [anon_sym_EQ_EQ] = ACTIONS(876), + [anon_sym_let] = ACTIONS(874), + [anon_sym_const] = ACTIONS(874), + [anon_sym_if] = ACTIONS(874), + [anon_sym_BANG_EQ] = ACTIONS(876), + [anon_sym_PLUS_EQ] = ACTIONS(876), + [anon_sym_return] = ACTIONS(874), + [anon_sym_STAR] = ACTIONS(874), + [anon_sym_AMP] = ACTIONS(682), + [anon_sym_DASH] = ACTIONS(874), + [anon_sym_PLUS] = ACTIONS(874), + [anon_sym_SLASH] = ACTIONS(874), + [anon_sym_LBRACK] = ACTIONS(686), + [anon_sym_DOT] = ACTIONS(688), + [sym_number] = ACTIONS(876), + [anon_sym_SEMI] = ACTIONS(876), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(874), + [anon_sym_extern] = ACTIONS(874), + [anon_sym_type] = ACTIONS(874), + [anon_sym_COLON_COLON] = ACTIONS(876), + [anon_sym_fn] = ACTIONS(874), + [anon_sym_POUND] = ACTIONS(876), + [anon_sym_mod] = ACTIONS(874), + [anon_sym_enum] = ACTIONS(874), + [anon_sym_impl] = ACTIONS(874), + [anon_sym_trait] = ACTIONS(874), + [anon_sym_u8] = ACTIONS(874), + [anon_sym_i8] = ACTIONS(874), + [anon_sym_u16] = ACTIONS(874), + [anon_sym_i16] = ACTIONS(874), + [anon_sym_u32] = ACTIONS(874), + [anon_sym_i32] = ACTIONS(874), + [anon_sym_u64] = ACTIONS(874), + [anon_sym_i64] = ACTIONS(874), + [anon_sym_u128] = ACTIONS(874), + [anon_sym_i128] = ACTIONS(874), + [anon_sym_u256] = ACTIONS(874), + [anon_sym_i256] = ACTIONS(874), + [anon_sym_isize] = ACTIONS(874), + [anon_sym_usize] = ACTIONS(874), + [anon_sym_f32] = ACTIONS(874), + [anon_sym_f64] = ACTIONS(874), + [anon_sym_felt252] = ACTIONS(874), + [anon_sym_bool] = ACTIONS(874), + [anon_sym_str] = ACTIONS(874), + [anon_sym_char] = ACTIONS(874), + [anon_sym_GT] = ACTIONS(874), + [anon_sym_match] = ACTIONS(874), + [anon_sym_loop] = ACTIONS(874), + [anon_sym_BANG] = ACTIONS(874), + [anon_sym_TILDE] = ACTIONS(876), + [anon_sym_AMP_AMP] = ACTIONS(876), + [anon_sym_PIPE_PIPE] = ACTIONS(876), + [anon_sym_PIPE] = ACTIONS(696), + [anon_sym_CARET] = ACTIONS(698), + [anon_sym_LT2] = ACTIONS(874), + [anon_sym_LT_EQ] = ACTIONS(876), + [anon_sym_GT_EQ] = ACTIONS(876), + [anon_sym_LT_LT] = ACTIONS(700), + [anon_sym_GT_GT] = ACTIONS(700), + [anon_sym_PERCENT] = ACTIONS(874), + [anon_sym_DASH_EQ] = ACTIONS(876), + [anon_sym_STAR_EQ] = ACTIONS(876), + [anon_sym_SLASH_EQ] = ACTIONS(876), + [anon_sym_PERCENT_EQ] = ACTIONS(876), + [anon_sym_AMP_EQ] = ACTIONS(876), + [anon_sym_PIPE_EQ] = ACTIONS(876), + [anon_sym_CARET_EQ] = ACTIONS(876), + [anon_sym_LT_LT_EQ] = ACTIONS(876), + [anon_sym_GT_GT_EQ] = ACTIONS(876), + [anon_sym_QMARK] = ACTIONS(876), + [sym__cairo_1_short_string] = ACTIONS(876), + [anon_sym_true] = ACTIONS(874), + [anon_sym_false] = ACTIONS(874), + [sym_self] = ACTIONS(874), + }, + [148] = { + [sym_identifier] = ACTIONS(874), + [anon_sym_LPAREN] = ACTIONS(670), + [anon_sym_EQ] = ACTIONS(874), + [anon_sym_AT] = ACTIONS(876), + [anon_sym_LBRACE] = ACTIONS(876), + [anon_sym_RBRACE] = ACTIONS(876), + [anon_sym_struct] = ACTIONS(874), + [anon_sym_EQ_EQ] = ACTIONS(876), + [anon_sym_let] = ACTIONS(874), + [anon_sym_const] = ACTIONS(874), + [anon_sym_if] = ACTIONS(874), + [anon_sym_BANG_EQ] = ACTIONS(876), + [anon_sym_PLUS_EQ] = ACTIONS(876), + [anon_sym_return] = ACTIONS(874), + [anon_sym_STAR] = ACTIONS(874), + [anon_sym_AMP] = ACTIONS(874), + [anon_sym_DASH] = ACTIONS(874), + [anon_sym_PLUS] = ACTIONS(874), + [anon_sym_SLASH] = ACTIONS(874), + [anon_sym_LBRACK] = ACTIONS(686), + [anon_sym_DOT] = ACTIONS(688), + [sym_number] = ACTIONS(876), + [anon_sym_SEMI] = ACTIONS(876), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(874), + [anon_sym_extern] = ACTIONS(874), + [anon_sym_type] = ACTIONS(874), + [anon_sym_COLON_COLON] = ACTIONS(876), + [anon_sym_fn] = ACTIONS(874), + [anon_sym_POUND] = ACTIONS(876), + [anon_sym_mod] = ACTIONS(874), + [anon_sym_enum] = ACTIONS(874), + [anon_sym_impl] = ACTIONS(874), + [anon_sym_trait] = ACTIONS(874), + [anon_sym_u8] = ACTIONS(874), + [anon_sym_i8] = ACTIONS(874), + [anon_sym_u16] = ACTIONS(874), + [anon_sym_i16] = ACTIONS(874), + [anon_sym_u32] = ACTIONS(874), + [anon_sym_i32] = ACTIONS(874), + [anon_sym_u64] = ACTIONS(874), + [anon_sym_i64] = ACTIONS(874), + [anon_sym_u128] = ACTIONS(874), + [anon_sym_i128] = ACTIONS(874), + [anon_sym_u256] = ACTIONS(874), + [anon_sym_i256] = ACTIONS(874), + [anon_sym_isize] = ACTIONS(874), + [anon_sym_usize] = ACTIONS(874), + [anon_sym_f32] = ACTIONS(874), + [anon_sym_f64] = ACTIONS(874), + [anon_sym_felt252] = ACTIONS(874), + [anon_sym_bool] = ACTIONS(874), + [anon_sym_str] = ACTIONS(874), + [anon_sym_char] = ACTIONS(874), + [anon_sym_GT] = ACTIONS(874), + [anon_sym_match] = ACTIONS(874), + [anon_sym_loop] = ACTIONS(874), + [anon_sym_BANG] = ACTIONS(874), + [anon_sym_TILDE] = ACTIONS(876), + [anon_sym_AMP_AMP] = ACTIONS(876), + [anon_sym_PIPE_PIPE] = ACTIONS(876), + [anon_sym_PIPE] = ACTIONS(696), + [anon_sym_CARET] = ACTIONS(698), + [anon_sym_LT2] = ACTIONS(874), + [anon_sym_LT_EQ] = ACTIONS(876), + [anon_sym_GT_EQ] = ACTIONS(876), + [anon_sym_LT_LT] = ACTIONS(874), + [anon_sym_GT_GT] = ACTIONS(874), + [anon_sym_PERCENT] = ACTIONS(874), + [anon_sym_DASH_EQ] = ACTIONS(876), + [anon_sym_STAR_EQ] = ACTIONS(876), + [anon_sym_SLASH_EQ] = ACTIONS(876), + [anon_sym_PERCENT_EQ] = ACTIONS(876), + [anon_sym_AMP_EQ] = ACTIONS(876), + [anon_sym_PIPE_EQ] = ACTIONS(876), + [anon_sym_CARET_EQ] = ACTIONS(876), + [anon_sym_LT_LT_EQ] = ACTIONS(876), + [anon_sym_GT_GT_EQ] = ACTIONS(876), + [anon_sym_QMARK] = ACTIONS(876), + [sym__cairo_1_short_string] = ACTIONS(876), + [anon_sym_true] = ACTIONS(874), + [anon_sym_false] = ACTIONS(874), + [sym_self] = ACTIONS(874), + }, + [149] = { + [sym_identifier] = ACTIONS(874), + [anon_sym_LPAREN] = ACTIONS(670), + [anon_sym_EQ] = ACTIONS(874), + [anon_sym_AT] = ACTIONS(876), + [anon_sym_LBRACE] = ACTIONS(876), + [anon_sym_RBRACE] = ACTIONS(876), + [anon_sym_struct] = ACTIONS(874), + [anon_sym_EQ_EQ] = ACTIONS(876), + [anon_sym_let] = ACTIONS(874), + [anon_sym_const] = ACTIONS(874), + [anon_sym_if] = ACTIONS(874), + [anon_sym_BANG_EQ] = ACTIONS(876), + [anon_sym_PLUS_EQ] = ACTIONS(876), + [anon_sym_return] = ACTIONS(874), + [anon_sym_STAR] = ACTIONS(680), + [anon_sym_AMP] = ACTIONS(682), + [anon_sym_DASH] = ACTIONS(874), + [anon_sym_PLUS] = ACTIONS(874), + [anon_sym_SLASH] = ACTIONS(680), + [anon_sym_LBRACK] = ACTIONS(686), + [anon_sym_DOT] = ACTIONS(688), + [sym_number] = ACTIONS(876), + [anon_sym_SEMI] = ACTIONS(876), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(874), + [anon_sym_extern] = ACTIONS(874), + [anon_sym_type] = ACTIONS(874), + [anon_sym_COLON_COLON] = ACTIONS(876), + [anon_sym_fn] = ACTIONS(874), + [anon_sym_POUND] = ACTIONS(876), + [anon_sym_mod] = ACTIONS(874), + [anon_sym_enum] = ACTIONS(874), + [anon_sym_impl] = ACTIONS(874), + [anon_sym_trait] = ACTIONS(874), + [anon_sym_u8] = ACTIONS(874), + [anon_sym_i8] = ACTIONS(874), + [anon_sym_u16] = ACTIONS(874), + [anon_sym_i16] = ACTIONS(874), + [anon_sym_u32] = ACTIONS(874), + [anon_sym_i32] = ACTIONS(874), + [anon_sym_u64] = ACTIONS(874), + [anon_sym_i64] = ACTIONS(874), + [anon_sym_u128] = ACTIONS(874), + [anon_sym_i128] = ACTIONS(874), + [anon_sym_u256] = ACTIONS(874), + [anon_sym_i256] = ACTIONS(874), + [anon_sym_isize] = ACTIONS(874), + [anon_sym_usize] = ACTIONS(874), + [anon_sym_f32] = ACTIONS(874), + [anon_sym_f64] = ACTIONS(874), + [anon_sym_felt252] = ACTIONS(874), + [anon_sym_bool] = ACTIONS(874), + [anon_sym_str] = ACTIONS(874), + [anon_sym_char] = ACTIONS(874), + [anon_sym_GT] = ACTIONS(874), + [anon_sym_match] = ACTIONS(874), + [anon_sym_loop] = ACTIONS(874), + [anon_sym_BANG] = ACTIONS(874), + [anon_sym_TILDE] = ACTIONS(876), + [anon_sym_AMP_AMP] = ACTIONS(876), + [anon_sym_PIPE_PIPE] = ACTIONS(876), + [anon_sym_PIPE] = ACTIONS(696), + [anon_sym_CARET] = ACTIONS(698), + [anon_sym_LT2] = ACTIONS(874), + [anon_sym_LT_EQ] = ACTIONS(876), + [anon_sym_GT_EQ] = ACTIONS(876), + [anon_sym_LT_LT] = ACTIONS(700), + [anon_sym_GT_GT] = ACTIONS(700), + [anon_sym_PERCENT] = ACTIONS(680), + [anon_sym_DASH_EQ] = ACTIONS(876), + [anon_sym_STAR_EQ] = ACTIONS(876), + [anon_sym_SLASH_EQ] = ACTIONS(876), + [anon_sym_PERCENT_EQ] = ACTIONS(876), + [anon_sym_AMP_EQ] = ACTIONS(876), + [anon_sym_PIPE_EQ] = ACTIONS(876), + [anon_sym_CARET_EQ] = ACTIONS(876), + [anon_sym_LT_LT_EQ] = ACTIONS(876), + [anon_sym_GT_GT_EQ] = ACTIONS(876), + [anon_sym_QMARK] = ACTIONS(876), + [sym__cairo_1_short_string] = ACTIONS(876), + [anon_sym_true] = ACTIONS(874), + [anon_sym_false] = ACTIONS(874), + [sym_self] = ACTIONS(874), + }, + [150] = { + [sym_identifier] = ACTIONS(902), + [anon_sym_LPAREN] = ACTIONS(904), + [anon_sym_EQ] = ACTIONS(902), + [anon_sym_AT] = ACTIONS(904), + [anon_sym_LBRACE] = ACTIONS(904), + [anon_sym_RBRACE] = ACTIONS(904), + [anon_sym_struct] = ACTIONS(902), + [anon_sym_EQ_EQ] = ACTIONS(904), + [anon_sym_let] = ACTIONS(902), + [anon_sym_const] = ACTIONS(902), + [anon_sym_if] = ACTIONS(902), + [anon_sym_BANG_EQ] = ACTIONS(904), + [anon_sym_PLUS_EQ] = ACTIONS(904), + [anon_sym_return] = ACTIONS(902), + [anon_sym_STAR] = ACTIONS(902), + [anon_sym_AMP] = ACTIONS(902), + [anon_sym_DASH] = ACTIONS(902), + [anon_sym_PLUS] = ACTIONS(902), + [anon_sym_SLASH] = ACTIONS(902), + [anon_sym_LBRACK] = ACTIONS(904), + [anon_sym_DOT] = ACTIONS(904), + [sym_number] = ACTIONS(904), + [anon_sym_SEMI] = ACTIONS(904), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(902), + [anon_sym_extern] = ACTIONS(902), + [anon_sym_type] = ACTIONS(902), + [anon_sym_COLON_COLON] = ACTIONS(904), + [anon_sym_fn] = ACTIONS(902), + [anon_sym_POUND] = ACTIONS(904), + [anon_sym_mod] = ACTIONS(902), + [anon_sym_enum] = ACTIONS(902), + [anon_sym_impl] = ACTIONS(902), + [anon_sym_trait] = ACTIONS(902), + [anon_sym_u8] = ACTIONS(902), + [anon_sym_i8] = ACTIONS(902), + [anon_sym_u16] = ACTIONS(902), + [anon_sym_i16] = ACTIONS(902), + [anon_sym_u32] = ACTIONS(902), + [anon_sym_i32] = ACTIONS(902), + [anon_sym_u64] = ACTIONS(902), + [anon_sym_i64] = ACTIONS(902), + [anon_sym_u128] = ACTIONS(902), + [anon_sym_i128] = ACTIONS(902), + [anon_sym_u256] = ACTIONS(902), + [anon_sym_i256] = ACTIONS(902), + [anon_sym_isize] = ACTIONS(902), + [anon_sym_usize] = ACTIONS(902), + [anon_sym_f32] = ACTIONS(902), + [anon_sym_f64] = ACTIONS(902), + [anon_sym_felt252] = ACTIONS(902), + [anon_sym_bool] = ACTIONS(902), + [anon_sym_str] = ACTIONS(902), + [anon_sym_char] = ACTIONS(902), + [anon_sym_GT] = ACTIONS(902), + [anon_sym_match] = ACTIONS(902), + [anon_sym_loop] = ACTIONS(902), + [anon_sym_BANG] = ACTIONS(902), + [anon_sym_TILDE] = ACTIONS(904), + [anon_sym_AMP_AMP] = ACTIONS(904), + [anon_sym_PIPE_PIPE] = ACTIONS(904), + [anon_sym_PIPE] = ACTIONS(902), + [anon_sym_CARET] = ACTIONS(902), + [anon_sym_LT2] = ACTIONS(902), + [anon_sym_LT_EQ] = ACTIONS(904), + [anon_sym_GT_EQ] = ACTIONS(904), + [anon_sym_LT_LT] = ACTIONS(902), + [anon_sym_GT_GT] = ACTIONS(902), + [anon_sym_PERCENT] = ACTIONS(902), + [anon_sym_DASH_EQ] = ACTIONS(904), + [anon_sym_STAR_EQ] = ACTIONS(904), + [anon_sym_SLASH_EQ] = ACTIONS(904), + [anon_sym_PERCENT_EQ] = ACTIONS(904), + [anon_sym_AMP_EQ] = ACTIONS(904), + [anon_sym_PIPE_EQ] = ACTIONS(904), + [anon_sym_CARET_EQ] = ACTIONS(904), + [anon_sym_LT_LT_EQ] = ACTIONS(904), + [anon_sym_GT_GT_EQ] = ACTIONS(904), + [anon_sym_QMARK] = ACTIONS(904), + [sym__cairo_1_short_string] = ACTIONS(904), + [anon_sym_true] = ACTIONS(902), + [anon_sym_false] = ACTIONS(902), + [sym_self] = ACTIONS(902), + }, + [151] = { + [sym_identifier] = ACTIONS(906), + [anon_sym_LPAREN] = ACTIONS(908), + [anon_sym_EQ] = ACTIONS(906), + [anon_sym_AT] = ACTIONS(908), + [anon_sym_LBRACE] = ACTIONS(908), + [anon_sym_RBRACE] = ACTIONS(908), + [anon_sym_struct] = ACTIONS(906), + [anon_sym_EQ_EQ] = ACTIONS(908), + [anon_sym_let] = ACTIONS(906), + [anon_sym_const] = ACTIONS(906), + [anon_sym_if] = ACTIONS(906), + [anon_sym_BANG_EQ] = ACTIONS(908), + [anon_sym_PLUS_EQ] = ACTIONS(908), + [anon_sym_return] = ACTIONS(906), + [anon_sym_STAR] = ACTIONS(906), + [anon_sym_AMP] = ACTIONS(906), + [anon_sym_DASH] = ACTIONS(906), + [anon_sym_PLUS] = ACTIONS(906), + [anon_sym_SLASH] = ACTIONS(906), + [anon_sym_LBRACK] = ACTIONS(908), + [anon_sym_DOT] = ACTIONS(908), + [sym_number] = ACTIONS(908), + [anon_sym_SEMI] = ACTIONS(908), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(906), + [anon_sym_extern] = ACTIONS(906), + [anon_sym_type] = ACTIONS(906), + [anon_sym_COLON_COLON] = ACTIONS(908), + [anon_sym_fn] = ACTIONS(906), + [anon_sym_POUND] = ACTIONS(908), + [anon_sym_mod] = ACTIONS(906), + [anon_sym_enum] = ACTIONS(906), + [anon_sym_impl] = ACTIONS(906), + [anon_sym_trait] = ACTIONS(906), + [anon_sym_u8] = ACTIONS(906), + [anon_sym_i8] = ACTIONS(906), + [anon_sym_u16] = ACTIONS(906), + [anon_sym_i16] = ACTIONS(906), + [anon_sym_u32] = ACTIONS(906), + [anon_sym_i32] = ACTIONS(906), + [anon_sym_u64] = ACTIONS(906), + [anon_sym_i64] = ACTIONS(906), + [anon_sym_u128] = ACTIONS(906), + [anon_sym_i128] = ACTIONS(906), + [anon_sym_u256] = ACTIONS(906), + [anon_sym_i256] = ACTIONS(906), + [anon_sym_isize] = ACTIONS(906), + [anon_sym_usize] = ACTIONS(906), + [anon_sym_f32] = ACTIONS(906), + [anon_sym_f64] = ACTIONS(906), + [anon_sym_felt252] = ACTIONS(906), + [anon_sym_bool] = ACTIONS(906), + [anon_sym_str] = ACTIONS(906), + [anon_sym_char] = ACTIONS(906), + [anon_sym_GT] = ACTIONS(906), + [anon_sym_match] = ACTIONS(906), + [anon_sym_loop] = ACTIONS(906), + [anon_sym_BANG] = ACTIONS(906), + [anon_sym_TILDE] = ACTIONS(908), + [anon_sym_AMP_AMP] = ACTIONS(908), + [anon_sym_PIPE_PIPE] = ACTIONS(908), + [anon_sym_PIPE] = ACTIONS(906), + [anon_sym_CARET] = ACTIONS(906), + [anon_sym_LT2] = ACTIONS(906), + [anon_sym_LT_EQ] = ACTIONS(908), + [anon_sym_GT_EQ] = ACTIONS(908), + [anon_sym_LT_LT] = ACTIONS(906), + [anon_sym_GT_GT] = ACTIONS(906), + [anon_sym_PERCENT] = ACTIONS(906), + [anon_sym_DASH_EQ] = ACTIONS(908), + [anon_sym_STAR_EQ] = ACTIONS(908), + [anon_sym_SLASH_EQ] = ACTIONS(908), + [anon_sym_PERCENT_EQ] = ACTIONS(908), + [anon_sym_AMP_EQ] = ACTIONS(908), + [anon_sym_PIPE_EQ] = ACTIONS(908), + [anon_sym_CARET_EQ] = ACTIONS(908), + [anon_sym_LT_LT_EQ] = ACTIONS(908), + [anon_sym_GT_GT_EQ] = ACTIONS(908), + [anon_sym_QMARK] = ACTIONS(908), + [sym__cairo_1_short_string] = ACTIONS(908), + [anon_sym_true] = ACTIONS(906), + [anon_sym_false] = ACTIONS(906), + [sym_self] = ACTIONS(906), + }, + [152] = { + [sym_identifier] = ACTIONS(910), + [anon_sym_LPAREN] = ACTIONS(912), + [anon_sym_EQ] = ACTIONS(910), + [anon_sym_AT] = ACTIONS(912), + [anon_sym_LBRACE] = ACTIONS(912), + [anon_sym_RBRACE] = ACTIONS(912), + [anon_sym_struct] = ACTIONS(910), + [anon_sym_EQ_EQ] = ACTIONS(912), + [anon_sym_let] = ACTIONS(910), + [anon_sym_const] = ACTIONS(910), + [anon_sym_if] = ACTIONS(910), + [anon_sym_BANG_EQ] = ACTIONS(912), + [anon_sym_PLUS_EQ] = ACTIONS(912), + [anon_sym_return] = ACTIONS(910), + [anon_sym_STAR] = ACTIONS(910), + [anon_sym_AMP] = ACTIONS(910), + [anon_sym_DASH] = ACTIONS(910), + [anon_sym_PLUS] = ACTIONS(910), + [anon_sym_SLASH] = ACTIONS(910), + [anon_sym_LBRACK] = ACTIONS(912), + [anon_sym_DOT] = ACTIONS(912), + [sym_number] = ACTIONS(912), + [anon_sym_SEMI] = ACTIONS(912), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(910), + [anon_sym_extern] = ACTIONS(910), + [anon_sym_type] = ACTIONS(910), + [anon_sym_COLON_COLON] = ACTIONS(912), + [anon_sym_fn] = ACTIONS(910), + [anon_sym_POUND] = ACTIONS(912), + [anon_sym_mod] = ACTIONS(910), + [anon_sym_enum] = ACTIONS(910), + [anon_sym_impl] = ACTIONS(910), + [anon_sym_trait] = ACTIONS(910), + [anon_sym_u8] = ACTIONS(910), + [anon_sym_i8] = ACTIONS(910), + [anon_sym_u16] = ACTIONS(910), + [anon_sym_i16] = ACTIONS(910), + [anon_sym_u32] = ACTIONS(910), + [anon_sym_i32] = ACTIONS(910), + [anon_sym_u64] = ACTIONS(910), + [anon_sym_i64] = ACTIONS(910), + [anon_sym_u128] = ACTIONS(910), + [anon_sym_i128] = ACTIONS(910), + [anon_sym_u256] = ACTIONS(910), + [anon_sym_i256] = ACTIONS(910), + [anon_sym_isize] = ACTIONS(910), + [anon_sym_usize] = ACTIONS(910), + [anon_sym_f32] = ACTIONS(910), + [anon_sym_f64] = ACTIONS(910), + [anon_sym_felt252] = ACTIONS(910), + [anon_sym_bool] = ACTIONS(910), + [anon_sym_str] = ACTIONS(910), + [anon_sym_char] = ACTIONS(910), + [anon_sym_GT] = ACTIONS(910), + [anon_sym_match] = ACTIONS(910), + [anon_sym_loop] = ACTIONS(910), + [anon_sym_BANG] = ACTIONS(910), + [anon_sym_TILDE] = ACTIONS(912), + [anon_sym_AMP_AMP] = ACTIONS(912), + [anon_sym_PIPE_PIPE] = ACTIONS(912), + [anon_sym_PIPE] = ACTIONS(910), + [anon_sym_CARET] = ACTIONS(910), + [anon_sym_LT2] = ACTIONS(910), + [anon_sym_LT_EQ] = ACTIONS(912), + [anon_sym_GT_EQ] = ACTIONS(912), + [anon_sym_LT_LT] = ACTIONS(910), + [anon_sym_GT_GT] = ACTIONS(910), + [anon_sym_PERCENT] = ACTIONS(910), + [anon_sym_DASH_EQ] = ACTIONS(912), + [anon_sym_STAR_EQ] = ACTIONS(912), + [anon_sym_SLASH_EQ] = ACTIONS(912), + [anon_sym_PERCENT_EQ] = ACTIONS(912), + [anon_sym_AMP_EQ] = ACTIONS(912), + [anon_sym_PIPE_EQ] = ACTIONS(912), + [anon_sym_CARET_EQ] = ACTIONS(912), + [anon_sym_LT_LT_EQ] = ACTIONS(912), + [anon_sym_GT_GT_EQ] = ACTIONS(912), + [anon_sym_QMARK] = ACTIONS(912), + [sym__cairo_1_short_string] = ACTIONS(912), + [anon_sym_true] = ACTIONS(910), + [anon_sym_false] = ACTIONS(910), + [sym_self] = ACTIONS(910), + }, + [153] = { + [sym_identifier] = ACTIONS(874), + [anon_sym_LPAREN] = ACTIONS(670), + [anon_sym_EQ] = ACTIONS(874), + [anon_sym_AT] = ACTIONS(876), + [anon_sym_LBRACE] = ACTIONS(876), + [anon_sym_RBRACE] = ACTIONS(876), + [anon_sym_struct] = ACTIONS(874), + [anon_sym_EQ_EQ] = ACTIONS(676), + [anon_sym_let] = ACTIONS(874), + [anon_sym_const] = ACTIONS(874), + [anon_sym_if] = ACTIONS(874), + [anon_sym_BANG_EQ] = ACTIONS(676), + [anon_sym_PLUS_EQ] = ACTIONS(876), + [anon_sym_return] = ACTIONS(874), + [anon_sym_STAR] = ACTIONS(680), + [anon_sym_AMP] = ACTIONS(682), + [anon_sym_DASH] = ACTIONS(684), + [anon_sym_PLUS] = ACTIONS(684), + [anon_sym_SLASH] = ACTIONS(680), + [anon_sym_LBRACK] = ACTIONS(686), + [anon_sym_DOT] = ACTIONS(688), + [sym_number] = ACTIONS(876), + [anon_sym_SEMI] = ACTIONS(876), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(874), + [anon_sym_extern] = ACTIONS(874), + [anon_sym_type] = ACTIONS(874), + [anon_sym_COLON_COLON] = ACTIONS(876), + [anon_sym_fn] = ACTIONS(874), + [anon_sym_POUND] = ACTIONS(876), + [anon_sym_mod] = ACTIONS(874), + [anon_sym_enum] = ACTIONS(874), + [anon_sym_impl] = ACTIONS(874), + [anon_sym_trait] = ACTIONS(874), + [anon_sym_u8] = ACTIONS(874), + [anon_sym_i8] = ACTIONS(874), + [anon_sym_u16] = ACTIONS(874), + [anon_sym_i16] = ACTIONS(874), + [anon_sym_u32] = ACTIONS(874), + [anon_sym_i32] = ACTIONS(874), + [anon_sym_u64] = ACTIONS(874), + [anon_sym_i64] = ACTIONS(874), + [anon_sym_u128] = ACTIONS(874), + [anon_sym_i128] = ACTIONS(874), + [anon_sym_u256] = ACTIONS(874), + [anon_sym_i256] = ACTIONS(874), + [anon_sym_isize] = ACTIONS(874), + [anon_sym_usize] = ACTIONS(874), + [anon_sym_f32] = ACTIONS(874), + [anon_sym_f64] = ACTIONS(874), + [anon_sym_felt252] = ACTIONS(874), + [anon_sym_bool] = ACTIONS(874), + [anon_sym_str] = ACTIONS(874), + [anon_sym_char] = ACTIONS(874), + [anon_sym_GT] = ACTIONS(690), + [anon_sym_match] = ACTIONS(874), + [anon_sym_loop] = ACTIONS(874), + [anon_sym_BANG] = ACTIONS(874), + [anon_sym_TILDE] = ACTIONS(876), + [anon_sym_AMP_AMP] = ACTIONS(876), + [anon_sym_PIPE_PIPE] = ACTIONS(876), + [anon_sym_PIPE] = ACTIONS(696), + [anon_sym_CARET] = ACTIONS(698), + [anon_sym_LT2] = ACTIONS(690), + [anon_sym_LT_EQ] = ACTIONS(676), + [anon_sym_GT_EQ] = ACTIONS(676), + [anon_sym_LT_LT] = ACTIONS(700), + [anon_sym_GT_GT] = ACTIONS(700), + [anon_sym_PERCENT] = ACTIONS(680), + [anon_sym_DASH_EQ] = ACTIONS(876), + [anon_sym_STAR_EQ] = ACTIONS(876), + [anon_sym_SLASH_EQ] = ACTIONS(876), + [anon_sym_PERCENT_EQ] = ACTIONS(876), + [anon_sym_AMP_EQ] = ACTIONS(876), + [anon_sym_PIPE_EQ] = ACTIONS(876), + [anon_sym_CARET_EQ] = ACTIONS(876), + [anon_sym_LT_LT_EQ] = ACTIONS(876), + [anon_sym_GT_GT_EQ] = ACTIONS(876), + [anon_sym_QMARK] = ACTIONS(876), + [sym__cairo_1_short_string] = ACTIONS(876), + [anon_sym_true] = ACTIONS(874), + [anon_sym_false] = ACTIONS(874), + [sym_self] = ACTIONS(874), + }, + [154] = { + [sym_identifier] = ACTIONS(874), + [anon_sym_LPAREN] = ACTIONS(670), + [anon_sym_EQ] = ACTIONS(874), + [anon_sym_AT] = ACTIONS(876), + [anon_sym_LBRACE] = ACTIONS(876), + [anon_sym_RBRACE] = ACTIONS(876), + [anon_sym_struct] = ACTIONS(874), + [anon_sym_EQ_EQ] = ACTIONS(676), + [anon_sym_let] = ACTIONS(874), + [anon_sym_const] = ACTIONS(874), + [anon_sym_if] = ACTIONS(874), + [anon_sym_BANG_EQ] = ACTIONS(676), + [anon_sym_PLUS_EQ] = ACTIONS(876), + [anon_sym_return] = ACTIONS(874), + [anon_sym_STAR] = ACTIONS(680), + [anon_sym_AMP] = ACTIONS(682), + [anon_sym_DASH] = ACTIONS(684), + [anon_sym_PLUS] = ACTIONS(684), + [anon_sym_SLASH] = ACTIONS(680), + [anon_sym_LBRACK] = ACTIONS(686), + [anon_sym_DOT] = ACTIONS(688), + [sym_number] = ACTIONS(876), + [anon_sym_SEMI] = ACTIONS(876), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(874), + [anon_sym_extern] = ACTIONS(874), + [anon_sym_type] = ACTIONS(874), + [anon_sym_COLON_COLON] = ACTIONS(876), + [anon_sym_fn] = ACTIONS(874), + [anon_sym_POUND] = ACTIONS(876), + [anon_sym_mod] = ACTIONS(874), + [anon_sym_enum] = ACTIONS(874), + [anon_sym_impl] = ACTIONS(874), + [anon_sym_trait] = ACTIONS(874), + [anon_sym_u8] = ACTIONS(874), + [anon_sym_i8] = ACTIONS(874), + [anon_sym_u16] = ACTIONS(874), + [anon_sym_i16] = ACTIONS(874), + [anon_sym_u32] = ACTIONS(874), + [anon_sym_i32] = ACTIONS(874), + [anon_sym_u64] = ACTIONS(874), + [anon_sym_i64] = ACTIONS(874), + [anon_sym_u128] = ACTIONS(874), + [anon_sym_i128] = ACTIONS(874), + [anon_sym_u256] = ACTIONS(874), + [anon_sym_i256] = ACTIONS(874), + [anon_sym_isize] = ACTIONS(874), + [anon_sym_usize] = ACTIONS(874), + [anon_sym_f32] = ACTIONS(874), + [anon_sym_f64] = ACTIONS(874), + [anon_sym_felt252] = ACTIONS(874), + [anon_sym_bool] = ACTIONS(874), + [anon_sym_str] = ACTIONS(874), + [anon_sym_char] = ACTIONS(874), + [anon_sym_GT] = ACTIONS(690), + [anon_sym_match] = ACTIONS(874), + [anon_sym_loop] = ACTIONS(874), + [anon_sym_BANG] = ACTIONS(874), + [anon_sym_TILDE] = ACTIONS(876), + [anon_sym_AMP_AMP] = ACTIONS(692), + [anon_sym_PIPE_PIPE] = ACTIONS(876), + [anon_sym_PIPE] = ACTIONS(696), + [anon_sym_CARET] = ACTIONS(698), + [anon_sym_LT2] = ACTIONS(690), + [anon_sym_LT_EQ] = ACTIONS(676), + [anon_sym_GT_EQ] = ACTIONS(676), + [anon_sym_LT_LT] = ACTIONS(700), + [anon_sym_GT_GT] = ACTIONS(700), + [anon_sym_PERCENT] = ACTIONS(680), + [anon_sym_DASH_EQ] = ACTIONS(876), + [anon_sym_STAR_EQ] = ACTIONS(876), + [anon_sym_SLASH_EQ] = ACTIONS(876), + [anon_sym_PERCENT_EQ] = ACTIONS(876), + [anon_sym_AMP_EQ] = ACTIONS(876), + [anon_sym_PIPE_EQ] = ACTIONS(876), + [anon_sym_CARET_EQ] = ACTIONS(876), + [anon_sym_LT_LT_EQ] = ACTIONS(876), + [anon_sym_GT_GT_EQ] = ACTIONS(876), + [anon_sym_QMARK] = ACTIONS(876), + [sym__cairo_1_short_string] = ACTIONS(876), + [anon_sym_true] = ACTIONS(874), + [anon_sym_false] = ACTIONS(874), + [sym_self] = ACTIONS(874), + }, + [155] = { + [sym_identifier] = ACTIONS(874), + [anon_sym_LPAREN] = ACTIONS(670), + [anon_sym_EQ] = ACTIONS(874), + [anon_sym_AT] = ACTIONS(876), + [anon_sym_LBRACE] = ACTIONS(876), + [anon_sym_RBRACE] = ACTIONS(876), + [anon_sym_struct] = ACTIONS(874), + [anon_sym_EQ_EQ] = ACTIONS(876), + [anon_sym_let] = ACTIONS(874), + [anon_sym_const] = ACTIONS(874), + [anon_sym_if] = ACTIONS(874), + [anon_sym_BANG_EQ] = ACTIONS(876), + [anon_sym_PLUS_EQ] = ACTIONS(876), + [anon_sym_return] = ACTIONS(874), + [anon_sym_STAR] = ACTIONS(874), + [anon_sym_AMP] = ACTIONS(874), + [anon_sym_DASH] = ACTIONS(874), + [anon_sym_PLUS] = ACTIONS(874), + [anon_sym_SLASH] = ACTIONS(874), + [anon_sym_LBRACK] = ACTIONS(686), + [anon_sym_DOT] = ACTIONS(688), + [sym_number] = ACTIONS(876), + [anon_sym_SEMI] = ACTIONS(876), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(874), + [anon_sym_extern] = ACTIONS(874), + [anon_sym_type] = ACTIONS(874), + [anon_sym_COLON_COLON] = ACTIONS(876), + [anon_sym_fn] = ACTIONS(874), + [anon_sym_POUND] = ACTIONS(876), + [anon_sym_mod] = ACTIONS(874), + [anon_sym_enum] = ACTIONS(874), + [anon_sym_impl] = ACTIONS(874), + [anon_sym_trait] = ACTIONS(874), + [anon_sym_u8] = ACTIONS(874), + [anon_sym_i8] = ACTIONS(874), + [anon_sym_u16] = ACTIONS(874), + [anon_sym_i16] = ACTIONS(874), + [anon_sym_u32] = ACTIONS(874), + [anon_sym_i32] = ACTIONS(874), + [anon_sym_u64] = ACTIONS(874), + [anon_sym_i64] = ACTIONS(874), + [anon_sym_u128] = ACTIONS(874), + [anon_sym_i128] = ACTIONS(874), + [anon_sym_u256] = ACTIONS(874), + [anon_sym_i256] = ACTIONS(874), + [anon_sym_isize] = ACTIONS(874), + [anon_sym_usize] = ACTIONS(874), + [anon_sym_f32] = ACTIONS(874), + [anon_sym_f64] = ACTIONS(874), + [anon_sym_felt252] = ACTIONS(874), + [anon_sym_bool] = ACTIONS(874), + [anon_sym_str] = ACTIONS(874), + [anon_sym_char] = ACTIONS(874), + [anon_sym_GT] = ACTIONS(874), + [anon_sym_match] = ACTIONS(874), + [anon_sym_loop] = ACTIONS(874), + [anon_sym_BANG] = ACTIONS(874), + [anon_sym_TILDE] = ACTIONS(876), + [anon_sym_AMP_AMP] = ACTIONS(876), + [anon_sym_PIPE_PIPE] = ACTIONS(876), + [anon_sym_PIPE] = ACTIONS(874), + [anon_sym_CARET] = ACTIONS(874), + [anon_sym_LT2] = ACTIONS(874), + [anon_sym_LT_EQ] = ACTIONS(876), + [anon_sym_GT_EQ] = ACTIONS(876), + [anon_sym_LT_LT] = ACTIONS(874), + [anon_sym_GT_GT] = ACTIONS(874), + [anon_sym_PERCENT] = ACTIONS(874), + [anon_sym_DASH_EQ] = ACTIONS(876), + [anon_sym_STAR_EQ] = ACTIONS(876), + [anon_sym_SLASH_EQ] = ACTIONS(876), + [anon_sym_PERCENT_EQ] = ACTIONS(876), + [anon_sym_AMP_EQ] = ACTIONS(876), + [anon_sym_PIPE_EQ] = ACTIONS(876), + [anon_sym_CARET_EQ] = ACTIONS(876), + [anon_sym_LT_LT_EQ] = ACTIONS(876), + [anon_sym_GT_GT_EQ] = ACTIONS(876), + [anon_sym_QMARK] = ACTIONS(876), + [sym__cairo_1_short_string] = ACTIONS(876), + [anon_sym_true] = ACTIONS(874), + [anon_sym_false] = ACTIONS(874), + [sym_self] = ACTIONS(874), + }, + [156] = { + [sym_identifier] = ACTIONS(874), + [anon_sym_LPAREN] = ACTIONS(670), + [anon_sym_EQ] = ACTIONS(874), + [anon_sym_AT] = ACTIONS(876), + [anon_sym_LBRACE] = ACTIONS(876), + [anon_sym_RBRACE] = ACTIONS(876), + [anon_sym_struct] = ACTIONS(874), + [anon_sym_EQ_EQ] = ACTIONS(876), + [anon_sym_let] = ACTIONS(874), + [anon_sym_const] = ACTIONS(874), + [anon_sym_if] = ACTIONS(874), + [anon_sym_BANG_EQ] = ACTIONS(876), + [anon_sym_PLUS_EQ] = ACTIONS(876), + [anon_sym_return] = ACTIONS(874), + [anon_sym_STAR] = ACTIONS(874), + [anon_sym_AMP] = ACTIONS(874), + [anon_sym_DASH] = ACTIONS(874), + [anon_sym_PLUS] = ACTIONS(874), + [anon_sym_SLASH] = ACTIONS(874), + [anon_sym_LBRACK] = ACTIONS(686), + [anon_sym_DOT] = ACTIONS(688), + [sym_number] = ACTIONS(876), + [anon_sym_SEMI] = ACTIONS(876), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(874), + [anon_sym_extern] = ACTIONS(874), + [anon_sym_type] = ACTIONS(874), + [anon_sym_COLON_COLON] = ACTIONS(876), + [anon_sym_fn] = ACTIONS(874), + [anon_sym_POUND] = ACTIONS(876), + [anon_sym_mod] = ACTIONS(874), + [anon_sym_enum] = ACTIONS(874), + [anon_sym_impl] = ACTIONS(874), + [anon_sym_trait] = ACTIONS(874), + [anon_sym_u8] = ACTIONS(874), + [anon_sym_i8] = ACTIONS(874), + [anon_sym_u16] = ACTIONS(874), + [anon_sym_i16] = ACTIONS(874), + [anon_sym_u32] = ACTIONS(874), + [anon_sym_i32] = ACTIONS(874), + [anon_sym_u64] = ACTIONS(874), + [anon_sym_i64] = ACTIONS(874), + [anon_sym_u128] = ACTIONS(874), + [anon_sym_i128] = ACTIONS(874), + [anon_sym_u256] = ACTIONS(874), + [anon_sym_i256] = ACTIONS(874), + [anon_sym_isize] = ACTIONS(874), + [anon_sym_usize] = ACTIONS(874), + [anon_sym_f32] = ACTIONS(874), + [anon_sym_f64] = ACTIONS(874), + [anon_sym_felt252] = ACTIONS(874), + [anon_sym_bool] = ACTIONS(874), + [anon_sym_str] = ACTIONS(874), + [anon_sym_char] = ACTIONS(874), + [anon_sym_GT] = ACTIONS(874), + [anon_sym_match] = ACTIONS(874), + [anon_sym_loop] = ACTIONS(874), + [anon_sym_BANG] = ACTIONS(874), + [anon_sym_TILDE] = ACTIONS(876), + [anon_sym_AMP_AMP] = ACTIONS(876), + [anon_sym_PIPE_PIPE] = ACTIONS(876), + [anon_sym_PIPE] = ACTIONS(696), + [anon_sym_CARET] = ACTIONS(874), + [anon_sym_LT2] = ACTIONS(874), + [anon_sym_LT_EQ] = ACTIONS(876), + [anon_sym_GT_EQ] = ACTIONS(876), + [anon_sym_LT_LT] = ACTIONS(874), + [anon_sym_GT_GT] = ACTIONS(874), + [anon_sym_PERCENT] = ACTIONS(874), + [anon_sym_DASH_EQ] = ACTIONS(876), + [anon_sym_STAR_EQ] = ACTIONS(876), + [anon_sym_SLASH_EQ] = ACTIONS(876), + [anon_sym_PERCENT_EQ] = ACTIONS(876), + [anon_sym_AMP_EQ] = ACTIONS(876), + [anon_sym_PIPE_EQ] = ACTIONS(876), + [anon_sym_CARET_EQ] = ACTIONS(876), + [anon_sym_LT_LT_EQ] = ACTIONS(876), + [anon_sym_GT_GT_EQ] = ACTIONS(876), + [anon_sym_QMARK] = ACTIONS(876), + [sym__cairo_1_short_string] = ACTIONS(876), + [anon_sym_true] = ACTIONS(874), + [anon_sym_false] = ACTIONS(874), + [sym_self] = ACTIONS(874), + }, + [157] = { + [sym_identifier] = ACTIONS(914), + [anon_sym_LPAREN] = ACTIONS(670), + [anon_sym_EQ] = ACTIONS(672), + [anon_sym_AT] = ACTIONS(916), + [anon_sym_LBRACE] = ACTIONS(916), + [anon_sym_RBRACE] = ACTIONS(916), + [anon_sym_struct] = ACTIONS(914), + [anon_sym_EQ_EQ] = ACTIONS(676), + [anon_sym_let] = ACTIONS(914), + [anon_sym_const] = ACTIONS(914), + [anon_sym_if] = ACTIONS(914), + [anon_sym_BANG_EQ] = ACTIONS(676), + [anon_sym_PLUS_EQ] = ACTIONS(678), + [anon_sym_return] = ACTIONS(914), + [anon_sym_STAR] = ACTIONS(680), + [anon_sym_AMP] = ACTIONS(682), + [anon_sym_DASH] = ACTIONS(684), + [anon_sym_PLUS] = ACTIONS(684), + [anon_sym_SLASH] = ACTIONS(680), + [anon_sym_LBRACK] = ACTIONS(686), + [anon_sym_DOT] = ACTIONS(688), + [sym_number] = ACTIONS(916), + [anon_sym_SEMI] = ACTIONS(918), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(914), + [anon_sym_extern] = ACTIONS(914), + [anon_sym_type] = ACTIONS(914), + [anon_sym_COLON_COLON] = ACTIONS(916), + [anon_sym_fn] = ACTIONS(914), + [anon_sym_POUND] = ACTIONS(916), + [anon_sym_mod] = ACTIONS(914), + [anon_sym_enum] = ACTIONS(914), + [anon_sym_impl] = ACTIONS(914), + [anon_sym_trait] = ACTIONS(914), + [anon_sym_u8] = ACTIONS(914), + [anon_sym_i8] = ACTIONS(914), + [anon_sym_u16] = ACTIONS(914), + [anon_sym_i16] = ACTIONS(914), + [anon_sym_u32] = ACTIONS(914), + [anon_sym_i32] = ACTIONS(914), + [anon_sym_u64] = ACTIONS(914), + [anon_sym_i64] = ACTIONS(914), + [anon_sym_u128] = ACTIONS(914), + [anon_sym_i128] = ACTIONS(914), + [anon_sym_u256] = ACTIONS(914), + [anon_sym_i256] = ACTIONS(914), + [anon_sym_isize] = ACTIONS(914), + [anon_sym_usize] = ACTIONS(914), + [anon_sym_f32] = ACTIONS(914), + [anon_sym_f64] = ACTIONS(914), + [anon_sym_felt252] = ACTIONS(914), + [anon_sym_bool] = ACTIONS(914), + [anon_sym_str] = ACTIONS(914), + [anon_sym_char] = ACTIONS(914), + [anon_sym_GT] = ACTIONS(690), + [anon_sym_match] = ACTIONS(914), + [anon_sym_loop] = ACTIONS(914), + [anon_sym_BANG] = ACTIONS(914), + [anon_sym_TILDE] = ACTIONS(916), + [anon_sym_AMP_AMP] = ACTIONS(692), + [anon_sym_PIPE_PIPE] = ACTIONS(694), + [anon_sym_PIPE] = ACTIONS(696), + [anon_sym_CARET] = ACTIONS(698), + [anon_sym_LT2] = ACTIONS(690), + [anon_sym_LT_EQ] = ACTIONS(676), + [anon_sym_GT_EQ] = ACTIONS(676), + [anon_sym_LT_LT] = ACTIONS(700), + [anon_sym_GT_GT] = ACTIONS(700), + [anon_sym_PERCENT] = ACTIONS(680), + [anon_sym_DASH_EQ] = ACTIONS(678), + [anon_sym_STAR_EQ] = ACTIONS(678), + [anon_sym_SLASH_EQ] = ACTIONS(678), + [anon_sym_PERCENT_EQ] = ACTIONS(678), + [anon_sym_AMP_EQ] = ACTIONS(678), + [anon_sym_PIPE_EQ] = ACTIONS(678), + [anon_sym_CARET_EQ] = ACTIONS(678), + [anon_sym_LT_LT_EQ] = ACTIONS(678), + [anon_sym_GT_GT_EQ] = ACTIONS(678), + [anon_sym_QMARK] = ACTIONS(702), + [sym__cairo_1_short_string] = ACTIONS(916), + [anon_sym_true] = ACTIONS(914), + [anon_sym_false] = ACTIONS(914), + [sym_self] = ACTIONS(914), + }, + [158] = { + [sym_identifier] = ACTIONS(874), + [anon_sym_LPAREN] = ACTIONS(670), + [anon_sym_EQ] = ACTIONS(874), + [anon_sym_AT] = ACTIONS(876), + [anon_sym_LBRACE] = ACTIONS(876), + [anon_sym_RBRACE] = ACTIONS(876), + [anon_sym_struct] = ACTIONS(874), + [anon_sym_EQ_EQ] = ACTIONS(876), + [anon_sym_let] = ACTIONS(874), + [anon_sym_const] = ACTIONS(874), + [anon_sym_if] = ACTIONS(874), + [anon_sym_BANG_EQ] = ACTIONS(876), + [anon_sym_PLUS_EQ] = ACTIONS(876), + [anon_sym_return] = ACTIONS(874), + [anon_sym_STAR] = ACTIONS(874), + [anon_sym_AMP] = ACTIONS(682), + [anon_sym_DASH] = ACTIONS(874), + [anon_sym_PLUS] = ACTIONS(874), + [anon_sym_SLASH] = ACTIONS(874), + [anon_sym_LBRACK] = ACTIONS(686), + [anon_sym_DOT] = ACTIONS(688), + [sym_number] = ACTIONS(876), + [anon_sym_SEMI] = ACTIONS(876), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(874), + [anon_sym_extern] = ACTIONS(874), + [anon_sym_type] = ACTIONS(874), + [anon_sym_COLON_COLON] = ACTIONS(876), + [anon_sym_fn] = ACTIONS(874), + [anon_sym_POUND] = ACTIONS(876), + [anon_sym_mod] = ACTIONS(874), + [anon_sym_enum] = ACTIONS(874), + [anon_sym_impl] = ACTIONS(874), + [anon_sym_trait] = ACTIONS(874), + [anon_sym_u8] = ACTIONS(874), + [anon_sym_i8] = ACTIONS(874), + [anon_sym_u16] = ACTIONS(874), + [anon_sym_i16] = ACTIONS(874), + [anon_sym_u32] = ACTIONS(874), + [anon_sym_i32] = ACTIONS(874), + [anon_sym_u64] = ACTIONS(874), + [anon_sym_i64] = ACTIONS(874), + [anon_sym_u128] = ACTIONS(874), + [anon_sym_i128] = ACTIONS(874), + [anon_sym_u256] = ACTIONS(874), + [anon_sym_i256] = ACTIONS(874), + [anon_sym_isize] = ACTIONS(874), + [anon_sym_usize] = ACTIONS(874), + [anon_sym_f32] = ACTIONS(874), + [anon_sym_f64] = ACTIONS(874), + [anon_sym_felt252] = ACTIONS(874), + [anon_sym_bool] = ACTIONS(874), + [anon_sym_str] = ACTIONS(874), + [anon_sym_char] = ACTIONS(874), + [anon_sym_GT] = ACTIONS(874), + [anon_sym_match] = ACTIONS(874), + [anon_sym_loop] = ACTIONS(874), + [anon_sym_BANG] = ACTIONS(874), + [anon_sym_TILDE] = ACTIONS(876), + [anon_sym_AMP_AMP] = ACTIONS(876), + [anon_sym_PIPE_PIPE] = ACTIONS(876), + [anon_sym_PIPE] = ACTIONS(696), + [anon_sym_CARET] = ACTIONS(698), + [anon_sym_LT2] = ACTIONS(874), + [anon_sym_LT_EQ] = ACTIONS(876), + [anon_sym_GT_EQ] = ACTIONS(876), + [anon_sym_LT_LT] = ACTIONS(874), + [anon_sym_GT_GT] = ACTIONS(874), + [anon_sym_PERCENT] = ACTIONS(874), + [anon_sym_DASH_EQ] = ACTIONS(876), + [anon_sym_STAR_EQ] = ACTIONS(876), + [anon_sym_SLASH_EQ] = ACTIONS(876), + [anon_sym_PERCENT_EQ] = ACTIONS(876), + [anon_sym_AMP_EQ] = ACTIONS(876), + [anon_sym_PIPE_EQ] = ACTIONS(876), + [anon_sym_CARET_EQ] = ACTIONS(876), + [anon_sym_LT_LT_EQ] = ACTIONS(876), + [anon_sym_GT_GT_EQ] = ACTIONS(876), + [anon_sym_QMARK] = ACTIONS(876), + [sym__cairo_1_short_string] = ACTIONS(876), + [anon_sym_true] = ACTIONS(874), + [anon_sym_false] = ACTIONS(874), + [sym_self] = ACTIONS(874), + }, + [159] = { + [sym_identifier] = ACTIONS(920), + [anon_sym_LPAREN] = ACTIONS(922), + [anon_sym_EQ] = ACTIONS(920), + [anon_sym_AT] = ACTIONS(922), + [anon_sym_LBRACE] = ACTIONS(922), + [anon_sym_RBRACE] = ACTIONS(922), + [anon_sym_struct] = ACTIONS(920), + [anon_sym_EQ_EQ] = ACTIONS(922), + [anon_sym_let] = ACTIONS(920), + [anon_sym_const] = ACTIONS(920), + [anon_sym_if] = ACTIONS(920), + [anon_sym_BANG_EQ] = ACTIONS(922), + [anon_sym_PLUS_EQ] = ACTIONS(922), + [anon_sym_return] = ACTIONS(920), + [anon_sym_STAR] = ACTIONS(920), + [anon_sym_AMP] = ACTIONS(920), + [anon_sym_DASH] = ACTIONS(920), + [anon_sym_PLUS] = ACTIONS(920), + [anon_sym_SLASH] = ACTIONS(920), + [anon_sym_LBRACK] = ACTIONS(922), + [anon_sym_DOT] = ACTIONS(922), + [sym_number] = ACTIONS(922), + [anon_sym_SEMI] = ACTIONS(922), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(920), + [anon_sym_extern] = ACTIONS(920), + [anon_sym_type] = ACTIONS(920), + [anon_sym_COLON_COLON] = ACTIONS(924), + [anon_sym_fn] = ACTIONS(920), + [anon_sym_POUND] = ACTIONS(922), + [anon_sym_mod] = ACTIONS(920), + [anon_sym_enum] = ACTIONS(920), + [anon_sym_impl] = ACTIONS(920), + [anon_sym_trait] = ACTIONS(920), + [anon_sym_u8] = ACTIONS(920), + [anon_sym_i8] = ACTIONS(920), + [anon_sym_u16] = ACTIONS(920), + [anon_sym_i16] = ACTIONS(920), + [anon_sym_u32] = ACTIONS(920), + [anon_sym_i32] = ACTIONS(920), + [anon_sym_u64] = ACTIONS(920), + [anon_sym_i64] = ACTIONS(920), + [anon_sym_u128] = ACTIONS(920), + [anon_sym_i128] = ACTIONS(920), + [anon_sym_u256] = ACTIONS(920), + [anon_sym_i256] = ACTIONS(920), + [anon_sym_isize] = ACTIONS(920), + [anon_sym_usize] = ACTIONS(920), + [anon_sym_f32] = ACTIONS(920), + [anon_sym_f64] = ACTIONS(920), + [anon_sym_felt252] = ACTIONS(920), + [anon_sym_bool] = ACTIONS(920), + [anon_sym_str] = ACTIONS(920), + [anon_sym_char] = ACTIONS(920), + [anon_sym_GT] = ACTIONS(920), + [anon_sym_match] = ACTIONS(920), + [anon_sym_loop] = ACTIONS(920), + [anon_sym_BANG] = ACTIONS(920), + [anon_sym_TILDE] = ACTIONS(922), + [anon_sym_AMP_AMP] = ACTIONS(922), + [anon_sym_PIPE_PIPE] = ACTIONS(922), + [anon_sym_PIPE] = ACTIONS(920), + [anon_sym_CARET] = ACTIONS(920), + [anon_sym_LT2] = ACTIONS(920), + [anon_sym_LT_EQ] = ACTIONS(922), + [anon_sym_GT_EQ] = ACTIONS(922), + [anon_sym_LT_LT] = ACTIONS(920), + [anon_sym_GT_GT] = ACTIONS(920), + [anon_sym_PERCENT] = ACTIONS(920), + [anon_sym_DASH_EQ] = ACTIONS(922), + [anon_sym_STAR_EQ] = ACTIONS(922), + [anon_sym_SLASH_EQ] = ACTIONS(922), + [anon_sym_PERCENT_EQ] = ACTIONS(922), + [anon_sym_AMP_EQ] = ACTIONS(922), + [anon_sym_PIPE_EQ] = ACTIONS(922), + [anon_sym_CARET_EQ] = ACTIONS(922), + [anon_sym_LT_LT_EQ] = ACTIONS(922), + [anon_sym_GT_GT_EQ] = ACTIONS(922), + [anon_sym_QMARK] = ACTIONS(922), + [sym__cairo_1_short_string] = ACTIONS(922), + [anon_sym_true] = ACTIONS(920), + [anon_sym_false] = ACTIONS(920), + [sym_self] = ACTIONS(920), + }, + [160] = { + [sym_identifier] = ACTIONS(926), + [anon_sym_LPAREN] = ACTIONS(928), + [anon_sym_EQ] = ACTIONS(926), + [anon_sym_AT] = ACTIONS(928), + [anon_sym_LBRACE] = ACTIONS(928), + [anon_sym_RBRACE] = ACTIONS(928), + [anon_sym_struct] = ACTIONS(926), + [anon_sym_EQ_EQ] = ACTIONS(928), + [anon_sym_let] = ACTIONS(926), + [anon_sym_const] = ACTIONS(926), + [anon_sym_if] = ACTIONS(926), + [anon_sym_BANG_EQ] = ACTIONS(928), + [anon_sym_PLUS_EQ] = ACTIONS(928), + [anon_sym_return] = ACTIONS(926), + [anon_sym_STAR] = ACTIONS(926), + [anon_sym_AMP] = ACTIONS(926), + [anon_sym_DASH] = ACTIONS(926), + [anon_sym_PLUS] = ACTIONS(926), + [anon_sym_SLASH] = ACTIONS(926), + [anon_sym_LBRACK] = ACTIONS(928), + [anon_sym_DOT] = ACTIONS(928), + [sym_number] = ACTIONS(928), + [anon_sym_SEMI] = ACTIONS(928), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(926), + [anon_sym_extern] = ACTIONS(926), + [anon_sym_type] = ACTIONS(926), + [anon_sym_COLON_COLON] = ACTIONS(928), + [anon_sym_fn] = ACTIONS(926), + [anon_sym_POUND] = ACTIONS(928), + [anon_sym_mod] = ACTIONS(926), + [anon_sym_enum] = ACTIONS(926), + [anon_sym_impl] = ACTIONS(926), + [anon_sym_trait] = ACTIONS(926), + [anon_sym_u8] = ACTIONS(926), + [anon_sym_i8] = ACTIONS(926), + [anon_sym_u16] = ACTIONS(926), + [anon_sym_i16] = ACTIONS(926), + [anon_sym_u32] = ACTIONS(926), + [anon_sym_i32] = ACTIONS(926), + [anon_sym_u64] = ACTIONS(926), + [anon_sym_i64] = ACTIONS(926), + [anon_sym_u128] = ACTIONS(926), + [anon_sym_i128] = ACTIONS(926), + [anon_sym_u256] = ACTIONS(926), + [anon_sym_i256] = ACTIONS(926), + [anon_sym_isize] = ACTIONS(926), + [anon_sym_usize] = ACTIONS(926), + [anon_sym_f32] = ACTIONS(926), + [anon_sym_f64] = ACTIONS(926), + [anon_sym_felt252] = ACTIONS(926), + [anon_sym_bool] = ACTIONS(926), + [anon_sym_str] = ACTIONS(926), + [anon_sym_char] = ACTIONS(926), + [anon_sym_GT] = ACTIONS(926), + [anon_sym_match] = ACTIONS(926), + [anon_sym_loop] = ACTIONS(926), + [anon_sym_BANG] = ACTIONS(926), + [anon_sym_TILDE] = ACTIONS(928), + [anon_sym_AMP_AMP] = ACTIONS(928), + [anon_sym_PIPE_PIPE] = ACTIONS(928), + [anon_sym_PIPE] = ACTIONS(926), + [anon_sym_CARET] = ACTIONS(926), + [anon_sym_LT2] = ACTIONS(926), + [anon_sym_LT_EQ] = ACTIONS(928), + [anon_sym_GT_EQ] = ACTIONS(928), + [anon_sym_LT_LT] = ACTIONS(926), + [anon_sym_GT_GT] = ACTIONS(926), + [anon_sym_PERCENT] = ACTIONS(926), + [anon_sym_DASH_EQ] = ACTIONS(928), + [anon_sym_STAR_EQ] = ACTIONS(928), + [anon_sym_SLASH_EQ] = ACTIONS(928), + [anon_sym_PERCENT_EQ] = ACTIONS(928), + [anon_sym_AMP_EQ] = ACTIONS(928), + [anon_sym_PIPE_EQ] = ACTIONS(928), + [anon_sym_CARET_EQ] = ACTIONS(928), + [anon_sym_LT_LT_EQ] = ACTIONS(928), + [anon_sym_GT_GT_EQ] = ACTIONS(928), + [anon_sym_QMARK] = ACTIONS(928), + [sym__cairo_1_short_string] = ACTIONS(928), + [anon_sym_true] = ACTIONS(926), + [anon_sym_false] = ACTIONS(926), + [sym_self] = ACTIONS(926), + }, + [161] = { + [sym_identifier] = ACTIONS(930), + [anon_sym_LPAREN] = ACTIONS(932), + [anon_sym_EQ] = ACTIONS(930), + [anon_sym_AT] = ACTIONS(932), + [anon_sym_LBRACE] = ACTIONS(932), + [anon_sym_RBRACE] = ACTIONS(932), + [anon_sym_struct] = ACTIONS(930), + [anon_sym_EQ_EQ] = ACTIONS(932), + [anon_sym_let] = ACTIONS(930), + [anon_sym_const] = ACTIONS(930), + [anon_sym_if] = ACTIONS(930), + [anon_sym_BANG_EQ] = ACTIONS(932), + [anon_sym_PLUS_EQ] = ACTIONS(932), + [anon_sym_return] = ACTIONS(930), + [anon_sym_STAR] = ACTIONS(930), + [anon_sym_AMP] = ACTIONS(930), + [anon_sym_DASH] = ACTIONS(930), + [anon_sym_PLUS] = ACTIONS(930), + [anon_sym_SLASH] = ACTIONS(930), + [anon_sym_LBRACK] = ACTIONS(932), + [anon_sym_DOT] = ACTIONS(932), + [sym_number] = ACTIONS(932), + [anon_sym_SEMI] = ACTIONS(932), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(930), + [anon_sym_extern] = ACTIONS(930), + [anon_sym_type] = ACTIONS(930), + [anon_sym_COLON_COLON] = ACTIONS(932), + [anon_sym_fn] = ACTIONS(930), + [anon_sym_POUND] = ACTIONS(932), + [anon_sym_mod] = ACTIONS(930), + [anon_sym_enum] = ACTIONS(930), + [anon_sym_impl] = ACTIONS(930), + [anon_sym_trait] = ACTIONS(930), + [anon_sym_u8] = ACTIONS(930), + [anon_sym_i8] = ACTIONS(930), + [anon_sym_u16] = ACTIONS(930), + [anon_sym_i16] = ACTIONS(930), + [anon_sym_u32] = ACTIONS(930), + [anon_sym_i32] = ACTIONS(930), + [anon_sym_u64] = ACTIONS(930), + [anon_sym_i64] = ACTIONS(930), + [anon_sym_u128] = ACTIONS(930), + [anon_sym_i128] = ACTIONS(930), + [anon_sym_u256] = ACTIONS(930), + [anon_sym_i256] = ACTIONS(930), + [anon_sym_isize] = ACTIONS(930), + [anon_sym_usize] = ACTIONS(930), + [anon_sym_f32] = ACTIONS(930), + [anon_sym_f64] = ACTIONS(930), + [anon_sym_felt252] = ACTIONS(930), + [anon_sym_bool] = ACTIONS(930), + [anon_sym_str] = ACTIONS(930), + [anon_sym_char] = ACTIONS(930), + [anon_sym_GT] = ACTIONS(930), + [anon_sym_match] = ACTIONS(930), + [anon_sym_loop] = ACTIONS(930), + [anon_sym_BANG] = ACTIONS(930), + [anon_sym_TILDE] = ACTIONS(932), + [anon_sym_AMP_AMP] = ACTIONS(932), + [anon_sym_PIPE_PIPE] = ACTIONS(932), + [anon_sym_PIPE] = ACTIONS(930), + [anon_sym_CARET] = ACTIONS(930), + [anon_sym_LT2] = ACTIONS(930), + [anon_sym_LT_EQ] = ACTIONS(932), + [anon_sym_GT_EQ] = ACTIONS(932), + [anon_sym_LT_LT] = ACTIONS(930), + [anon_sym_GT_GT] = ACTIONS(930), + [anon_sym_PERCENT] = ACTIONS(930), + [anon_sym_DASH_EQ] = ACTIONS(932), + [anon_sym_STAR_EQ] = ACTIONS(932), + [anon_sym_SLASH_EQ] = ACTIONS(932), + [anon_sym_PERCENT_EQ] = ACTIONS(932), + [anon_sym_AMP_EQ] = ACTIONS(932), + [anon_sym_PIPE_EQ] = ACTIONS(932), + [anon_sym_CARET_EQ] = ACTIONS(932), + [anon_sym_LT_LT_EQ] = ACTIONS(932), + [anon_sym_GT_GT_EQ] = ACTIONS(932), + [anon_sym_QMARK] = ACTIONS(932), + [sym__cairo_1_short_string] = ACTIONS(932), + [anon_sym_true] = ACTIONS(930), + [anon_sym_false] = ACTIONS(930), + [sym_self] = ACTIONS(930), + }, + [162] = { + [sym_identifier] = ACTIONS(934), + [anon_sym_LPAREN] = ACTIONS(936), + [anon_sym_EQ] = ACTIONS(934), + [anon_sym_AT] = ACTIONS(936), + [anon_sym_LBRACE] = ACTIONS(936), + [anon_sym_RBRACE] = ACTIONS(936), + [anon_sym_struct] = ACTIONS(934), + [anon_sym_EQ_EQ] = ACTIONS(936), + [anon_sym_let] = ACTIONS(934), + [anon_sym_const] = ACTIONS(934), + [anon_sym_if] = ACTIONS(934), + [anon_sym_BANG_EQ] = ACTIONS(936), + [anon_sym_PLUS_EQ] = ACTIONS(936), + [anon_sym_return] = ACTIONS(934), + [anon_sym_STAR] = ACTIONS(934), + [anon_sym_AMP] = ACTIONS(934), + [anon_sym_DASH] = ACTIONS(934), + [anon_sym_PLUS] = ACTIONS(934), + [anon_sym_SLASH] = ACTIONS(934), + [anon_sym_LBRACK] = ACTIONS(936), + [anon_sym_DOT] = ACTIONS(936), + [sym_number] = ACTIONS(936), + [anon_sym_SEMI] = ACTIONS(936), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(934), + [anon_sym_extern] = ACTIONS(934), + [anon_sym_type] = ACTIONS(934), + [anon_sym_COLON_COLON] = ACTIONS(936), + [anon_sym_fn] = ACTIONS(934), + [anon_sym_POUND] = ACTIONS(936), + [anon_sym_mod] = ACTIONS(934), + [anon_sym_enum] = ACTIONS(934), + [anon_sym_impl] = ACTIONS(934), + [anon_sym_trait] = ACTIONS(934), + [anon_sym_u8] = ACTIONS(934), + [anon_sym_i8] = ACTIONS(934), + [anon_sym_u16] = ACTIONS(934), + [anon_sym_i16] = ACTIONS(934), + [anon_sym_u32] = ACTIONS(934), + [anon_sym_i32] = ACTIONS(934), + [anon_sym_u64] = ACTIONS(934), + [anon_sym_i64] = ACTIONS(934), + [anon_sym_u128] = ACTIONS(934), + [anon_sym_i128] = ACTIONS(934), + [anon_sym_u256] = ACTIONS(934), + [anon_sym_i256] = ACTIONS(934), + [anon_sym_isize] = ACTIONS(934), + [anon_sym_usize] = ACTIONS(934), + [anon_sym_f32] = ACTIONS(934), + [anon_sym_f64] = ACTIONS(934), + [anon_sym_felt252] = ACTIONS(934), + [anon_sym_bool] = ACTIONS(934), + [anon_sym_str] = ACTIONS(934), + [anon_sym_char] = ACTIONS(934), + [anon_sym_GT] = ACTIONS(934), + [anon_sym_match] = ACTIONS(934), + [anon_sym_loop] = ACTIONS(934), + [anon_sym_BANG] = ACTIONS(934), + [anon_sym_TILDE] = ACTIONS(936), + [anon_sym_AMP_AMP] = ACTIONS(936), + [anon_sym_PIPE_PIPE] = ACTIONS(936), + [anon_sym_PIPE] = ACTIONS(934), + [anon_sym_CARET] = ACTIONS(934), + [anon_sym_LT2] = ACTIONS(934), + [anon_sym_LT_EQ] = ACTIONS(936), + [anon_sym_GT_EQ] = ACTIONS(936), + [anon_sym_LT_LT] = ACTIONS(934), + [anon_sym_GT_GT] = ACTIONS(934), + [anon_sym_PERCENT] = ACTIONS(934), + [anon_sym_DASH_EQ] = ACTIONS(936), + [anon_sym_STAR_EQ] = ACTIONS(936), + [anon_sym_SLASH_EQ] = ACTIONS(936), + [anon_sym_PERCENT_EQ] = ACTIONS(936), + [anon_sym_AMP_EQ] = ACTIONS(936), + [anon_sym_PIPE_EQ] = ACTIONS(936), + [anon_sym_CARET_EQ] = ACTIONS(936), + [anon_sym_LT_LT_EQ] = ACTIONS(936), + [anon_sym_GT_GT_EQ] = ACTIONS(936), + [anon_sym_QMARK] = ACTIONS(936), + [sym__cairo_1_short_string] = ACTIONS(936), + [anon_sym_true] = ACTIONS(934), + [anon_sym_false] = ACTIONS(934), + [sym_self] = ACTIONS(934), + }, + [163] = { + [sym_identifier] = ACTIONS(732), + [anon_sym_LPAREN] = ACTIONS(734), + [anon_sym_EQ] = ACTIONS(732), + [anon_sym_AT] = ACTIONS(734), + [anon_sym_LBRACE] = ACTIONS(734), + [anon_sym_RBRACE] = ACTIONS(734), + [anon_sym_struct] = ACTIONS(732), + [anon_sym_EQ_EQ] = ACTIONS(734), + [anon_sym_let] = ACTIONS(732), + [anon_sym_const] = ACTIONS(732), + [anon_sym_if] = ACTIONS(732), + [anon_sym_BANG_EQ] = ACTIONS(734), + [anon_sym_PLUS_EQ] = ACTIONS(734), + [anon_sym_return] = ACTIONS(732), + [anon_sym_STAR] = ACTIONS(732), + [anon_sym_AMP] = ACTIONS(732), + [anon_sym_DASH] = ACTIONS(732), + [anon_sym_PLUS] = ACTIONS(732), + [anon_sym_SLASH] = ACTIONS(732), + [anon_sym_LBRACK] = ACTIONS(734), + [anon_sym_DOT] = ACTIONS(734), + [sym_number] = ACTIONS(734), + [anon_sym_SEMI] = ACTIONS(734), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(732), + [anon_sym_extern] = ACTIONS(732), + [anon_sym_type] = ACTIONS(732), + [anon_sym_COLON_COLON] = ACTIONS(734), + [anon_sym_fn] = ACTIONS(732), + [anon_sym_POUND] = ACTIONS(734), + [anon_sym_mod] = ACTIONS(732), + [anon_sym_enum] = ACTIONS(732), + [anon_sym_impl] = ACTIONS(732), + [anon_sym_trait] = ACTIONS(732), + [anon_sym_u8] = ACTIONS(732), + [anon_sym_i8] = ACTIONS(732), + [anon_sym_u16] = ACTIONS(732), + [anon_sym_i16] = ACTIONS(732), + [anon_sym_u32] = ACTIONS(732), + [anon_sym_i32] = ACTIONS(732), + [anon_sym_u64] = ACTIONS(732), + [anon_sym_i64] = ACTIONS(732), + [anon_sym_u128] = ACTIONS(732), + [anon_sym_i128] = ACTIONS(732), + [anon_sym_u256] = ACTIONS(732), + [anon_sym_i256] = ACTIONS(732), + [anon_sym_isize] = ACTIONS(732), + [anon_sym_usize] = ACTIONS(732), + [anon_sym_f32] = ACTIONS(732), + [anon_sym_f64] = ACTIONS(732), + [anon_sym_felt252] = ACTIONS(732), + [anon_sym_bool] = ACTIONS(732), + [anon_sym_str] = ACTIONS(732), + [anon_sym_char] = ACTIONS(732), + [anon_sym_GT] = ACTIONS(732), + [anon_sym_match] = ACTIONS(732), + [anon_sym_loop] = ACTIONS(732), + [anon_sym_BANG] = ACTIONS(732), + [anon_sym_TILDE] = ACTIONS(734), + [anon_sym_AMP_AMP] = ACTIONS(734), + [anon_sym_PIPE_PIPE] = ACTIONS(734), + [anon_sym_PIPE] = ACTIONS(732), + [anon_sym_CARET] = ACTIONS(732), + [anon_sym_LT2] = ACTIONS(732), + [anon_sym_LT_EQ] = ACTIONS(734), + [anon_sym_GT_EQ] = ACTIONS(734), + [anon_sym_LT_LT] = ACTIONS(732), + [anon_sym_GT_GT] = ACTIONS(732), + [anon_sym_PERCENT] = ACTIONS(732), + [anon_sym_DASH_EQ] = ACTIONS(734), + [anon_sym_STAR_EQ] = ACTIONS(734), + [anon_sym_SLASH_EQ] = ACTIONS(734), + [anon_sym_PERCENT_EQ] = ACTIONS(734), + [anon_sym_AMP_EQ] = ACTIONS(734), + [anon_sym_PIPE_EQ] = ACTIONS(734), + [anon_sym_CARET_EQ] = ACTIONS(734), + [anon_sym_LT_LT_EQ] = ACTIONS(734), + [anon_sym_GT_GT_EQ] = ACTIONS(734), + [anon_sym_QMARK] = ACTIONS(734), + [sym__cairo_1_short_string] = ACTIONS(734), + [anon_sym_true] = ACTIONS(732), + [anon_sym_false] = ACTIONS(732), + [sym_self] = ACTIONS(732), + }, + [164] = { + [sym_identifier] = ACTIONS(642), + [anon_sym_LPAREN] = ACTIONS(644), + [anon_sym_EQ] = ACTIONS(642), + [anon_sym_AT] = ACTIONS(644), + [anon_sym_LBRACE] = ACTIONS(644), + [anon_sym_RBRACE] = ACTIONS(644), + [anon_sym_struct] = ACTIONS(642), + [anon_sym_EQ_EQ] = ACTIONS(644), + [anon_sym_let] = ACTIONS(642), + [anon_sym_const] = ACTIONS(642), + [anon_sym_if] = ACTIONS(642), + [anon_sym_BANG_EQ] = ACTIONS(644), + [anon_sym_PLUS_EQ] = ACTIONS(644), + [anon_sym_return] = ACTIONS(642), + [anon_sym_STAR] = ACTIONS(642), + [anon_sym_AMP] = ACTIONS(642), + [anon_sym_DASH] = ACTIONS(642), + [anon_sym_PLUS] = ACTIONS(642), + [anon_sym_SLASH] = ACTIONS(642), + [anon_sym_LBRACK] = ACTIONS(644), + [anon_sym_DOT] = ACTIONS(644), + [sym_number] = ACTIONS(644), + [anon_sym_SEMI] = ACTIONS(644), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(642), + [anon_sym_extern] = ACTIONS(642), + [anon_sym_type] = ACTIONS(642), + [anon_sym_COLON_COLON] = ACTIONS(938), + [anon_sym_fn] = ACTIONS(642), + [anon_sym_POUND] = ACTIONS(644), + [anon_sym_mod] = ACTIONS(642), + [anon_sym_enum] = ACTIONS(642), + [anon_sym_impl] = ACTIONS(642), + [anon_sym_trait] = ACTIONS(642), + [anon_sym_u8] = ACTIONS(642), + [anon_sym_i8] = ACTIONS(642), + [anon_sym_u16] = ACTIONS(642), + [anon_sym_i16] = ACTIONS(642), + [anon_sym_u32] = ACTIONS(642), + [anon_sym_i32] = ACTIONS(642), + [anon_sym_u64] = ACTIONS(642), + [anon_sym_i64] = ACTIONS(642), + [anon_sym_u128] = ACTIONS(642), + [anon_sym_i128] = ACTIONS(642), + [anon_sym_u256] = ACTIONS(642), + [anon_sym_i256] = ACTIONS(642), + [anon_sym_isize] = ACTIONS(642), + [anon_sym_usize] = ACTIONS(642), + [anon_sym_f32] = ACTIONS(642), + [anon_sym_f64] = ACTIONS(642), + [anon_sym_felt252] = ACTIONS(642), + [anon_sym_bool] = ACTIONS(642), + [anon_sym_str] = ACTIONS(642), + [anon_sym_char] = ACTIONS(642), + [anon_sym_GT] = ACTIONS(642), + [anon_sym_match] = ACTIONS(642), + [anon_sym_loop] = ACTIONS(642), + [anon_sym_BANG] = ACTIONS(642), + [anon_sym_TILDE] = ACTIONS(644), + [anon_sym_AMP_AMP] = ACTIONS(644), + [anon_sym_PIPE_PIPE] = ACTIONS(644), + [anon_sym_PIPE] = ACTIONS(642), + [anon_sym_CARET] = ACTIONS(642), + [anon_sym_LT2] = ACTIONS(642), + [anon_sym_LT_EQ] = ACTIONS(644), + [anon_sym_GT_EQ] = ACTIONS(644), + [anon_sym_LT_LT] = ACTIONS(642), + [anon_sym_GT_GT] = ACTIONS(642), + [anon_sym_PERCENT] = ACTIONS(642), + [anon_sym_DASH_EQ] = ACTIONS(644), + [anon_sym_STAR_EQ] = ACTIONS(644), + [anon_sym_SLASH_EQ] = ACTIONS(644), + [anon_sym_PERCENT_EQ] = ACTIONS(644), + [anon_sym_AMP_EQ] = ACTIONS(644), + [anon_sym_PIPE_EQ] = ACTIONS(644), + [anon_sym_CARET_EQ] = ACTIONS(644), + [anon_sym_LT_LT_EQ] = ACTIONS(644), + [anon_sym_GT_GT_EQ] = ACTIONS(644), + [anon_sym_QMARK] = ACTIONS(644), + [sym__cairo_1_short_string] = ACTIONS(644), + [anon_sym_true] = ACTIONS(642), + [anon_sym_false] = ACTIONS(642), + [sym_self] = ACTIONS(642), + }, + [165] = { + [sym_identifier] = ACTIONS(940), + [anon_sym_LPAREN] = ACTIONS(942), + [anon_sym_EQ] = ACTIONS(940), + [anon_sym_AT] = ACTIONS(942), + [anon_sym_LBRACE] = ACTIONS(942), + [anon_sym_RBRACE] = ACTIONS(942), + [anon_sym_struct] = ACTIONS(940), + [anon_sym_EQ_EQ] = ACTIONS(942), + [anon_sym_let] = ACTIONS(940), + [anon_sym_const] = ACTIONS(940), + [anon_sym_if] = ACTIONS(940), + [anon_sym_BANG_EQ] = ACTIONS(942), + [anon_sym_PLUS_EQ] = ACTIONS(942), + [anon_sym_return] = ACTIONS(940), + [anon_sym_STAR] = ACTIONS(940), + [anon_sym_AMP] = ACTIONS(940), + [anon_sym_DASH] = ACTIONS(940), + [anon_sym_PLUS] = ACTIONS(940), + [anon_sym_SLASH] = ACTIONS(940), + [anon_sym_LBRACK] = ACTIONS(942), + [anon_sym_DOT] = ACTIONS(942), + [sym_number] = ACTIONS(942), + [anon_sym_SEMI] = ACTIONS(942), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(940), + [anon_sym_extern] = ACTIONS(940), + [anon_sym_type] = ACTIONS(940), + [anon_sym_COLON_COLON] = ACTIONS(942), + [anon_sym_fn] = ACTIONS(940), + [anon_sym_POUND] = ACTIONS(942), + [anon_sym_mod] = ACTIONS(940), + [anon_sym_enum] = ACTIONS(940), + [anon_sym_impl] = ACTIONS(940), + [anon_sym_trait] = ACTIONS(940), + [anon_sym_u8] = ACTIONS(940), + [anon_sym_i8] = ACTIONS(940), + [anon_sym_u16] = ACTIONS(940), + [anon_sym_i16] = ACTIONS(940), + [anon_sym_u32] = ACTIONS(940), + [anon_sym_i32] = ACTIONS(940), + [anon_sym_u64] = ACTIONS(940), + [anon_sym_i64] = ACTIONS(940), + [anon_sym_u128] = ACTIONS(940), + [anon_sym_i128] = ACTIONS(940), + [anon_sym_u256] = ACTIONS(940), + [anon_sym_i256] = ACTIONS(940), + [anon_sym_isize] = ACTIONS(940), + [anon_sym_usize] = ACTIONS(940), + [anon_sym_f32] = ACTIONS(940), + [anon_sym_f64] = ACTIONS(940), + [anon_sym_felt252] = ACTIONS(940), + [anon_sym_bool] = ACTIONS(940), + [anon_sym_str] = ACTIONS(940), + [anon_sym_char] = ACTIONS(940), + [anon_sym_GT] = ACTIONS(940), + [anon_sym_match] = ACTIONS(940), + [anon_sym_loop] = ACTIONS(940), + [anon_sym_BANG] = ACTIONS(940), + [anon_sym_TILDE] = ACTIONS(942), + [anon_sym_AMP_AMP] = ACTIONS(942), + [anon_sym_PIPE_PIPE] = ACTIONS(942), + [anon_sym_PIPE] = ACTIONS(940), + [anon_sym_CARET] = ACTIONS(940), + [anon_sym_LT2] = ACTIONS(940), + [anon_sym_LT_EQ] = ACTIONS(942), + [anon_sym_GT_EQ] = ACTIONS(942), + [anon_sym_LT_LT] = ACTIONS(940), + [anon_sym_GT_GT] = ACTIONS(940), + [anon_sym_PERCENT] = ACTIONS(940), + [anon_sym_DASH_EQ] = ACTIONS(942), + [anon_sym_STAR_EQ] = ACTIONS(942), + [anon_sym_SLASH_EQ] = ACTIONS(942), + [anon_sym_PERCENT_EQ] = ACTIONS(942), + [anon_sym_AMP_EQ] = ACTIONS(942), + [anon_sym_PIPE_EQ] = ACTIONS(942), + [anon_sym_CARET_EQ] = ACTIONS(942), + [anon_sym_LT_LT_EQ] = ACTIONS(942), + [anon_sym_GT_GT_EQ] = ACTIONS(942), + [anon_sym_QMARK] = ACTIONS(942), + [sym__cairo_1_short_string] = ACTIONS(942), + [anon_sym_true] = ACTIONS(940), + [anon_sym_false] = ACTIONS(940), + [sym_self] = ACTIONS(940), + }, + [166] = { + [sym_identifier] = ACTIONS(944), + [anon_sym_LPAREN] = ACTIONS(946), + [anon_sym_EQ] = ACTIONS(944), + [anon_sym_AT] = ACTIONS(946), + [anon_sym_LBRACE] = ACTIONS(946), + [anon_sym_RBRACE] = ACTIONS(946), + [anon_sym_struct] = ACTIONS(944), + [anon_sym_EQ_EQ] = ACTIONS(946), + [anon_sym_let] = ACTIONS(944), + [anon_sym_const] = ACTIONS(944), + [anon_sym_if] = ACTIONS(944), + [anon_sym_BANG_EQ] = ACTIONS(946), + [anon_sym_PLUS_EQ] = ACTIONS(946), + [anon_sym_return] = ACTIONS(944), + [anon_sym_STAR] = ACTIONS(944), + [anon_sym_AMP] = ACTIONS(944), + [anon_sym_DASH] = ACTIONS(944), + [anon_sym_PLUS] = ACTIONS(944), + [anon_sym_SLASH] = ACTIONS(944), + [anon_sym_LBRACK] = ACTIONS(946), + [anon_sym_DOT] = ACTIONS(946), + [sym_number] = ACTIONS(946), + [anon_sym_SEMI] = ACTIONS(946), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(944), + [anon_sym_extern] = ACTIONS(944), + [anon_sym_type] = ACTIONS(944), + [anon_sym_COLON_COLON] = ACTIONS(946), + [anon_sym_fn] = ACTIONS(944), + [anon_sym_POUND] = ACTIONS(946), + [anon_sym_mod] = ACTIONS(944), + [anon_sym_enum] = ACTIONS(944), + [anon_sym_impl] = ACTIONS(944), + [anon_sym_trait] = ACTIONS(944), + [anon_sym_u8] = ACTIONS(944), + [anon_sym_i8] = ACTIONS(944), + [anon_sym_u16] = ACTIONS(944), + [anon_sym_i16] = ACTIONS(944), + [anon_sym_u32] = ACTIONS(944), + [anon_sym_i32] = ACTIONS(944), + [anon_sym_u64] = ACTIONS(944), + [anon_sym_i64] = ACTIONS(944), + [anon_sym_u128] = ACTIONS(944), + [anon_sym_i128] = ACTIONS(944), + [anon_sym_u256] = ACTIONS(944), + [anon_sym_i256] = ACTIONS(944), + [anon_sym_isize] = ACTIONS(944), + [anon_sym_usize] = ACTIONS(944), + [anon_sym_f32] = ACTIONS(944), + [anon_sym_f64] = ACTIONS(944), + [anon_sym_felt252] = ACTIONS(944), + [anon_sym_bool] = ACTIONS(944), + [anon_sym_str] = ACTIONS(944), + [anon_sym_char] = ACTIONS(944), + [anon_sym_GT] = ACTIONS(944), + [anon_sym_match] = ACTIONS(944), + [anon_sym_loop] = ACTIONS(944), + [anon_sym_BANG] = ACTIONS(944), + [anon_sym_TILDE] = ACTIONS(946), + [anon_sym_AMP_AMP] = ACTIONS(946), + [anon_sym_PIPE_PIPE] = ACTIONS(946), + [anon_sym_PIPE] = ACTIONS(944), + [anon_sym_CARET] = ACTIONS(944), + [anon_sym_LT2] = ACTIONS(944), + [anon_sym_LT_EQ] = ACTIONS(946), + [anon_sym_GT_EQ] = ACTIONS(946), + [anon_sym_LT_LT] = ACTIONS(944), + [anon_sym_GT_GT] = ACTIONS(944), + [anon_sym_PERCENT] = ACTIONS(944), + [anon_sym_DASH_EQ] = ACTIONS(946), + [anon_sym_STAR_EQ] = ACTIONS(946), + [anon_sym_SLASH_EQ] = ACTIONS(946), + [anon_sym_PERCENT_EQ] = ACTIONS(946), + [anon_sym_AMP_EQ] = ACTIONS(946), + [anon_sym_PIPE_EQ] = ACTIONS(946), + [anon_sym_CARET_EQ] = ACTIONS(946), + [anon_sym_LT_LT_EQ] = ACTIONS(946), + [anon_sym_GT_GT_EQ] = ACTIONS(946), + [anon_sym_QMARK] = ACTIONS(946), + [sym__cairo_1_short_string] = ACTIONS(946), + [anon_sym_true] = ACTIONS(944), + [anon_sym_false] = ACTIONS(944), + [sym_self] = ACTIONS(944), + }, + [167] = { + [sym_identifier] = ACTIONS(948), + [anon_sym_LPAREN] = ACTIONS(950), + [anon_sym_EQ] = ACTIONS(948), + [anon_sym_AT] = ACTIONS(950), + [anon_sym_LBRACE] = ACTIONS(950), + [anon_sym_RBRACE] = ACTIONS(950), + [anon_sym_struct] = ACTIONS(948), + [anon_sym_EQ_EQ] = ACTIONS(950), + [anon_sym_let] = ACTIONS(948), + [anon_sym_const] = ACTIONS(948), + [anon_sym_if] = ACTIONS(948), + [anon_sym_BANG_EQ] = ACTIONS(950), + [anon_sym_PLUS_EQ] = ACTIONS(950), + [anon_sym_return] = ACTIONS(948), + [anon_sym_STAR] = ACTIONS(948), + [anon_sym_AMP] = ACTIONS(948), + [anon_sym_DASH] = ACTIONS(948), + [anon_sym_PLUS] = ACTIONS(948), + [anon_sym_SLASH] = ACTIONS(948), + [anon_sym_LBRACK] = ACTIONS(950), + [anon_sym_DOT] = ACTIONS(950), + [sym_number] = ACTIONS(950), + [anon_sym_SEMI] = ACTIONS(950), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(948), + [anon_sym_extern] = ACTIONS(948), + [anon_sym_type] = ACTIONS(948), + [anon_sym_COLON_COLON] = ACTIONS(950), + [anon_sym_fn] = ACTIONS(948), + [anon_sym_POUND] = ACTIONS(950), + [anon_sym_mod] = ACTIONS(948), + [anon_sym_enum] = ACTIONS(948), + [anon_sym_impl] = ACTIONS(948), + [anon_sym_trait] = ACTIONS(948), + [anon_sym_u8] = ACTIONS(948), + [anon_sym_i8] = ACTIONS(948), + [anon_sym_u16] = ACTIONS(948), + [anon_sym_i16] = ACTIONS(948), + [anon_sym_u32] = ACTIONS(948), + [anon_sym_i32] = ACTIONS(948), + [anon_sym_u64] = ACTIONS(948), + [anon_sym_i64] = ACTIONS(948), + [anon_sym_u128] = ACTIONS(948), + [anon_sym_i128] = ACTIONS(948), + [anon_sym_u256] = ACTIONS(948), + [anon_sym_i256] = ACTIONS(948), + [anon_sym_isize] = ACTIONS(948), + [anon_sym_usize] = ACTIONS(948), + [anon_sym_f32] = ACTIONS(948), + [anon_sym_f64] = ACTIONS(948), + [anon_sym_felt252] = ACTIONS(948), + [anon_sym_bool] = ACTIONS(948), + [anon_sym_str] = ACTIONS(948), + [anon_sym_char] = ACTIONS(948), + [anon_sym_GT] = ACTIONS(948), + [anon_sym_match] = ACTIONS(948), + [anon_sym_loop] = ACTIONS(948), + [anon_sym_BANG] = ACTIONS(948), + [anon_sym_TILDE] = ACTIONS(950), + [anon_sym_AMP_AMP] = ACTIONS(950), + [anon_sym_PIPE_PIPE] = ACTIONS(950), + [anon_sym_PIPE] = ACTIONS(948), + [anon_sym_CARET] = ACTIONS(948), + [anon_sym_LT2] = ACTIONS(948), + [anon_sym_LT_EQ] = ACTIONS(950), + [anon_sym_GT_EQ] = ACTIONS(950), + [anon_sym_LT_LT] = ACTIONS(948), + [anon_sym_GT_GT] = ACTIONS(948), + [anon_sym_PERCENT] = ACTIONS(948), + [anon_sym_DASH_EQ] = ACTIONS(950), + [anon_sym_STAR_EQ] = ACTIONS(950), + [anon_sym_SLASH_EQ] = ACTIONS(950), + [anon_sym_PERCENT_EQ] = ACTIONS(950), + [anon_sym_AMP_EQ] = ACTIONS(950), + [anon_sym_PIPE_EQ] = ACTIONS(950), + [anon_sym_CARET_EQ] = ACTIONS(950), + [anon_sym_LT_LT_EQ] = ACTIONS(950), + [anon_sym_GT_GT_EQ] = ACTIONS(950), + [anon_sym_QMARK] = ACTIONS(950), + [sym__cairo_1_short_string] = ACTIONS(950), + [anon_sym_true] = ACTIONS(948), + [anon_sym_false] = ACTIONS(948), + [sym_self] = ACTIONS(948), + }, + [168] = { + [sym_identifier] = ACTIONS(952), + [anon_sym_LPAREN] = ACTIONS(954), + [anon_sym_EQ] = ACTIONS(952), + [anon_sym_AT] = ACTIONS(954), + [anon_sym_LBRACE] = ACTIONS(954), + [anon_sym_RBRACE] = ACTIONS(954), + [anon_sym_struct] = ACTIONS(952), + [anon_sym_EQ_EQ] = ACTIONS(954), + [anon_sym_let] = ACTIONS(952), + [anon_sym_const] = ACTIONS(952), + [anon_sym_if] = ACTIONS(952), + [anon_sym_BANG_EQ] = ACTIONS(954), + [anon_sym_PLUS_EQ] = ACTIONS(954), + [anon_sym_return] = ACTIONS(952), + [anon_sym_STAR] = ACTIONS(952), + [anon_sym_AMP] = ACTIONS(952), + [anon_sym_DASH] = ACTIONS(952), + [anon_sym_PLUS] = ACTIONS(952), + [anon_sym_SLASH] = ACTIONS(952), + [anon_sym_LBRACK] = ACTIONS(954), + [anon_sym_DOT] = ACTIONS(954), + [sym_number] = ACTIONS(954), + [anon_sym_SEMI] = ACTIONS(954), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(952), + [anon_sym_extern] = ACTIONS(952), + [anon_sym_type] = ACTIONS(952), + [anon_sym_COLON_COLON] = ACTIONS(954), + [anon_sym_fn] = ACTIONS(952), + [anon_sym_POUND] = ACTIONS(954), + [anon_sym_mod] = ACTIONS(952), + [anon_sym_enum] = ACTIONS(952), + [anon_sym_impl] = ACTIONS(952), + [anon_sym_trait] = ACTIONS(952), + [anon_sym_u8] = ACTIONS(952), + [anon_sym_i8] = ACTIONS(952), + [anon_sym_u16] = ACTIONS(952), + [anon_sym_i16] = ACTIONS(952), + [anon_sym_u32] = ACTIONS(952), + [anon_sym_i32] = ACTIONS(952), + [anon_sym_u64] = ACTIONS(952), + [anon_sym_i64] = ACTIONS(952), + [anon_sym_u128] = ACTIONS(952), + [anon_sym_i128] = ACTIONS(952), + [anon_sym_u256] = ACTIONS(952), + [anon_sym_i256] = ACTIONS(952), + [anon_sym_isize] = ACTIONS(952), + [anon_sym_usize] = ACTIONS(952), + [anon_sym_f32] = ACTIONS(952), + [anon_sym_f64] = ACTIONS(952), + [anon_sym_felt252] = ACTIONS(952), + [anon_sym_bool] = ACTIONS(952), + [anon_sym_str] = ACTIONS(952), + [anon_sym_char] = ACTIONS(952), + [anon_sym_GT] = ACTIONS(952), + [anon_sym_match] = ACTIONS(952), + [anon_sym_loop] = ACTIONS(952), + [anon_sym_BANG] = ACTIONS(952), + [anon_sym_TILDE] = ACTIONS(954), + [anon_sym_AMP_AMP] = ACTIONS(954), + [anon_sym_PIPE_PIPE] = ACTIONS(954), + [anon_sym_PIPE] = ACTIONS(952), + [anon_sym_CARET] = ACTIONS(952), + [anon_sym_LT2] = ACTIONS(952), + [anon_sym_LT_EQ] = ACTIONS(954), + [anon_sym_GT_EQ] = ACTIONS(954), + [anon_sym_LT_LT] = ACTIONS(952), + [anon_sym_GT_GT] = ACTIONS(952), + [anon_sym_PERCENT] = ACTIONS(952), + [anon_sym_DASH_EQ] = ACTIONS(954), + [anon_sym_STAR_EQ] = ACTIONS(954), + [anon_sym_SLASH_EQ] = ACTIONS(954), + [anon_sym_PERCENT_EQ] = ACTIONS(954), + [anon_sym_AMP_EQ] = ACTIONS(954), + [anon_sym_PIPE_EQ] = ACTIONS(954), + [anon_sym_CARET_EQ] = ACTIONS(954), + [anon_sym_LT_LT_EQ] = ACTIONS(954), + [anon_sym_GT_GT_EQ] = ACTIONS(954), + [anon_sym_QMARK] = ACTIONS(954), + [sym__cairo_1_short_string] = ACTIONS(954), + [anon_sym_true] = ACTIONS(952), + [anon_sym_false] = ACTIONS(952), + [sym_self] = ACTIONS(952), + }, + [169] = { + [sym_identifier] = ACTIONS(956), + [anon_sym_LPAREN] = ACTIONS(958), + [anon_sym_EQ] = ACTIONS(956), + [anon_sym_AT] = ACTIONS(958), + [anon_sym_LBRACE] = ACTIONS(958), + [anon_sym_RBRACE] = ACTIONS(958), + [anon_sym_struct] = ACTIONS(956), + [anon_sym_EQ_EQ] = ACTIONS(958), + [anon_sym_let] = ACTIONS(956), + [anon_sym_const] = ACTIONS(956), + [anon_sym_if] = ACTIONS(956), + [anon_sym_BANG_EQ] = ACTIONS(958), + [anon_sym_PLUS_EQ] = ACTIONS(958), + [anon_sym_return] = ACTIONS(956), + [anon_sym_STAR] = ACTIONS(956), + [anon_sym_AMP] = ACTIONS(956), + [anon_sym_DASH] = ACTIONS(956), + [anon_sym_PLUS] = ACTIONS(956), + [anon_sym_SLASH] = ACTIONS(956), + [anon_sym_LBRACK] = ACTIONS(958), + [anon_sym_DOT] = ACTIONS(958), + [sym_number] = ACTIONS(958), + [anon_sym_SEMI] = ACTIONS(958), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(956), + [anon_sym_extern] = ACTIONS(956), + [anon_sym_type] = ACTIONS(956), + [anon_sym_COLON_COLON] = ACTIONS(958), + [anon_sym_fn] = ACTIONS(956), + [anon_sym_POUND] = ACTIONS(958), + [anon_sym_mod] = ACTIONS(956), + [anon_sym_enum] = ACTIONS(956), + [anon_sym_impl] = ACTIONS(956), + [anon_sym_trait] = ACTIONS(956), + [anon_sym_u8] = ACTIONS(956), + [anon_sym_i8] = ACTIONS(956), + [anon_sym_u16] = ACTIONS(956), + [anon_sym_i16] = ACTIONS(956), + [anon_sym_u32] = ACTIONS(956), + [anon_sym_i32] = ACTIONS(956), + [anon_sym_u64] = ACTIONS(956), + [anon_sym_i64] = ACTIONS(956), + [anon_sym_u128] = ACTIONS(956), + [anon_sym_i128] = ACTIONS(956), + [anon_sym_u256] = ACTIONS(956), + [anon_sym_i256] = ACTIONS(956), + [anon_sym_isize] = ACTIONS(956), + [anon_sym_usize] = ACTIONS(956), + [anon_sym_f32] = ACTIONS(956), + [anon_sym_f64] = ACTIONS(956), + [anon_sym_felt252] = ACTIONS(956), + [anon_sym_bool] = ACTIONS(956), + [anon_sym_str] = ACTIONS(956), + [anon_sym_char] = ACTIONS(956), + [anon_sym_GT] = ACTIONS(956), + [anon_sym_match] = ACTIONS(956), + [anon_sym_loop] = ACTIONS(956), + [anon_sym_BANG] = ACTIONS(956), + [anon_sym_TILDE] = ACTIONS(958), + [anon_sym_AMP_AMP] = ACTIONS(958), + [anon_sym_PIPE_PIPE] = ACTIONS(958), + [anon_sym_PIPE] = ACTIONS(956), + [anon_sym_CARET] = ACTIONS(956), + [anon_sym_LT2] = ACTIONS(956), + [anon_sym_LT_EQ] = ACTIONS(958), + [anon_sym_GT_EQ] = ACTIONS(958), + [anon_sym_LT_LT] = ACTIONS(956), + [anon_sym_GT_GT] = ACTIONS(956), + [anon_sym_PERCENT] = ACTIONS(956), + [anon_sym_DASH_EQ] = ACTIONS(958), + [anon_sym_STAR_EQ] = ACTIONS(958), + [anon_sym_SLASH_EQ] = ACTIONS(958), + [anon_sym_PERCENT_EQ] = ACTIONS(958), + [anon_sym_AMP_EQ] = ACTIONS(958), + [anon_sym_PIPE_EQ] = ACTIONS(958), + [anon_sym_CARET_EQ] = ACTIONS(958), + [anon_sym_LT_LT_EQ] = ACTIONS(958), + [anon_sym_GT_GT_EQ] = ACTIONS(958), + [anon_sym_QMARK] = ACTIONS(958), + [sym__cairo_1_short_string] = ACTIONS(958), + [anon_sym_true] = ACTIONS(956), + [anon_sym_false] = ACTIONS(956), + [sym_self] = ACTIONS(956), + }, + [170] = { + [sym_identifier] = ACTIONS(960), + [anon_sym_LPAREN] = ACTIONS(962), + [anon_sym_EQ] = ACTIONS(960), + [anon_sym_AT] = ACTIONS(962), + [anon_sym_LBRACE] = ACTIONS(962), + [anon_sym_RBRACE] = ACTIONS(962), + [anon_sym_struct] = ACTIONS(960), + [anon_sym_EQ_EQ] = ACTIONS(962), + [anon_sym_let] = ACTIONS(960), + [anon_sym_const] = ACTIONS(960), + [anon_sym_if] = ACTIONS(960), + [anon_sym_BANG_EQ] = ACTIONS(962), + [anon_sym_PLUS_EQ] = ACTIONS(962), + [anon_sym_return] = ACTIONS(960), + [anon_sym_STAR] = ACTIONS(960), + [anon_sym_AMP] = ACTIONS(960), + [anon_sym_DASH] = ACTIONS(960), + [anon_sym_PLUS] = ACTIONS(960), + [anon_sym_SLASH] = ACTIONS(960), + [anon_sym_LBRACK] = ACTIONS(962), + [anon_sym_DOT] = ACTIONS(962), + [sym_number] = ACTIONS(962), + [anon_sym_SEMI] = ACTIONS(962), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(960), + [anon_sym_extern] = ACTIONS(960), + [anon_sym_type] = ACTIONS(960), + [anon_sym_COLON_COLON] = ACTIONS(962), + [anon_sym_fn] = ACTIONS(960), + [anon_sym_POUND] = ACTIONS(962), + [anon_sym_mod] = ACTIONS(960), + [anon_sym_enum] = ACTIONS(960), + [anon_sym_impl] = ACTIONS(960), + [anon_sym_trait] = ACTIONS(960), + [anon_sym_u8] = ACTIONS(960), + [anon_sym_i8] = ACTIONS(960), + [anon_sym_u16] = ACTIONS(960), + [anon_sym_i16] = ACTIONS(960), + [anon_sym_u32] = ACTIONS(960), + [anon_sym_i32] = ACTIONS(960), + [anon_sym_u64] = ACTIONS(960), + [anon_sym_i64] = ACTIONS(960), + [anon_sym_u128] = ACTIONS(960), + [anon_sym_i128] = ACTIONS(960), + [anon_sym_u256] = ACTIONS(960), + [anon_sym_i256] = ACTIONS(960), + [anon_sym_isize] = ACTIONS(960), + [anon_sym_usize] = ACTIONS(960), + [anon_sym_f32] = ACTIONS(960), + [anon_sym_f64] = ACTIONS(960), + [anon_sym_felt252] = ACTIONS(960), + [anon_sym_bool] = ACTIONS(960), + [anon_sym_str] = ACTIONS(960), + [anon_sym_char] = ACTIONS(960), + [anon_sym_GT] = ACTIONS(960), + [anon_sym_match] = ACTIONS(960), + [anon_sym_loop] = ACTIONS(960), + [anon_sym_BANG] = ACTIONS(960), + [anon_sym_TILDE] = ACTIONS(962), + [anon_sym_AMP_AMP] = ACTIONS(962), + [anon_sym_PIPE_PIPE] = ACTIONS(962), + [anon_sym_PIPE] = ACTIONS(960), + [anon_sym_CARET] = ACTIONS(960), + [anon_sym_LT2] = ACTIONS(960), + [anon_sym_LT_EQ] = ACTIONS(962), + [anon_sym_GT_EQ] = ACTIONS(962), + [anon_sym_LT_LT] = ACTIONS(960), + [anon_sym_GT_GT] = ACTIONS(960), + [anon_sym_PERCENT] = ACTIONS(960), + [anon_sym_DASH_EQ] = ACTIONS(962), + [anon_sym_STAR_EQ] = ACTIONS(962), + [anon_sym_SLASH_EQ] = ACTIONS(962), + [anon_sym_PERCENT_EQ] = ACTIONS(962), + [anon_sym_AMP_EQ] = ACTIONS(962), + [anon_sym_PIPE_EQ] = ACTIONS(962), + [anon_sym_CARET_EQ] = ACTIONS(962), + [anon_sym_LT_LT_EQ] = ACTIONS(962), + [anon_sym_GT_GT_EQ] = ACTIONS(962), + [anon_sym_QMARK] = ACTIONS(962), + [sym__cairo_1_short_string] = ACTIONS(962), + [anon_sym_true] = ACTIONS(960), + [anon_sym_false] = ACTIONS(960), + [sym_self] = ACTIONS(960), + }, + [171] = { + [sym_identifier] = ACTIONS(964), + [anon_sym_LPAREN] = ACTIONS(966), + [anon_sym_EQ] = ACTIONS(964), + [anon_sym_AT] = ACTIONS(966), + [anon_sym_LBRACE] = ACTIONS(966), + [anon_sym_RBRACE] = ACTIONS(966), + [anon_sym_struct] = ACTIONS(964), + [anon_sym_EQ_EQ] = ACTIONS(966), + [anon_sym_let] = ACTIONS(964), + [anon_sym_const] = ACTIONS(964), + [anon_sym_if] = ACTIONS(964), + [anon_sym_BANG_EQ] = ACTIONS(966), + [anon_sym_PLUS_EQ] = ACTIONS(966), + [anon_sym_return] = ACTIONS(964), + [anon_sym_STAR] = ACTIONS(964), + [anon_sym_AMP] = ACTIONS(964), + [anon_sym_DASH] = ACTIONS(964), + [anon_sym_PLUS] = ACTIONS(964), + [anon_sym_SLASH] = ACTIONS(964), + [anon_sym_LBRACK] = ACTIONS(966), + [anon_sym_DOT] = ACTIONS(966), + [sym_number] = ACTIONS(966), + [anon_sym_SEMI] = ACTIONS(966), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(964), + [anon_sym_extern] = ACTIONS(964), + [anon_sym_type] = ACTIONS(964), + [anon_sym_COLON_COLON] = ACTIONS(966), + [anon_sym_fn] = ACTIONS(964), + [anon_sym_POUND] = ACTIONS(966), + [anon_sym_mod] = ACTIONS(964), + [anon_sym_enum] = ACTIONS(964), + [anon_sym_impl] = ACTIONS(964), + [anon_sym_trait] = ACTIONS(964), + [anon_sym_u8] = ACTIONS(964), + [anon_sym_i8] = ACTIONS(964), + [anon_sym_u16] = ACTIONS(964), + [anon_sym_i16] = ACTIONS(964), + [anon_sym_u32] = ACTIONS(964), + [anon_sym_i32] = ACTIONS(964), + [anon_sym_u64] = ACTIONS(964), + [anon_sym_i64] = ACTIONS(964), + [anon_sym_u128] = ACTIONS(964), + [anon_sym_i128] = ACTIONS(964), + [anon_sym_u256] = ACTIONS(964), + [anon_sym_i256] = ACTIONS(964), + [anon_sym_isize] = ACTIONS(964), + [anon_sym_usize] = ACTIONS(964), + [anon_sym_f32] = ACTIONS(964), + [anon_sym_f64] = ACTIONS(964), + [anon_sym_felt252] = ACTIONS(964), + [anon_sym_bool] = ACTIONS(964), + [anon_sym_str] = ACTIONS(964), + [anon_sym_char] = ACTIONS(964), + [anon_sym_GT] = ACTIONS(964), + [anon_sym_match] = ACTIONS(964), + [anon_sym_loop] = ACTIONS(964), + [anon_sym_BANG] = ACTIONS(964), + [anon_sym_TILDE] = ACTIONS(966), + [anon_sym_AMP_AMP] = ACTIONS(966), + [anon_sym_PIPE_PIPE] = ACTIONS(966), + [anon_sym_PIPE] = ACTIONS(964), + [anon_sym_CARET] = ACTIONS(964), + [anon_sym_LT2] = ACTIONS(964), + [anon_sym_LT_EQ] = ACTIONS(966), + [anon_sym_GT_EQ] = ACTIONS(966), + [anon_sym_LT_LT] = ACTIONS(964), + [anon_sym_GT_GT] = ACTIONS(964), + [anon_sym_PERCENT] = ACTIONS(964), + [anon_sym_DASH_EQ] = ACTIONS(966), + [anon_sym_STAR_EQ] = ACTIONS(966), + [anon_sym_SLASH_EQ] = ACTIONS(966), + [anon_sym_PERCENT_EQ] = ACTIONS(966), + [anon_sym_AMP_EQ] = ACTIONS(966), + [anon_sym_PIPE_EQ] = ACTIONS(966), + [anon_sym_CARET_EQ] = ACTIONS(966), + [anon_sym_LT_LT_EQ] = ACTIONS(966), + [anon_sym_GT_GT_EQ] = ACTIONS(966), + [anon_sym_QMARK] = ACTIONS(966), + [sym__cairo_1_short_string] = ACTIONS(966), + [anon_sym_true] = ACTIONS(964), + [anon_sym_false] = ACTIONS(964), + [sym_self] = ACTIONS(964), + }, + [172] = { + [sym_identifier] = ACTIONS(968), + [anon_sym_LPAREN] = ACTIONS(970), + [anon_sym_EQ] = ACTIONS(968), + [anon_sym_AT] = ACTIONS(970), + [anon_sym_LBRACE] = ACTIONS(970), + [anon_sym_RBRACE] = ACTIONS(970), + [anon_sym_struct] = ACTIONS(968), + [anon_sym_EQ_EQ] = ACTIONS(970), + [anon_sym_let] = ACTIONS(968), + [anon_sym_const] = ACTIONS(968), + [anon_sym_if] = ACTIONS(968), + [anon_sym_BANG_EQ] = ACTIONS(970), + [anon_sym_PLUS_EQ] = ACTIONS(970), + [anon_sym_return] = ACTIONS(968), + [anon_sym_STAR] = ACTIONS(968), + [anon_sym_AMP] = ACTIONS(968), + [anon_sym_DASH] = ACTIONS(968), + [anon_sym_PLUS] = ACTIONS(968), + [anon_sym_SLASH] = ACTIONS(968), + [anon_sym_LBRACK] = ACTIONS(970), + [anon_sym_DOT] = ACTIONS(970), + [sym_number] = ACTIONS(970), + [anon_sym_SEMI] = ACTIONS(970), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(968), + [anon_sym_extern] = ACTIONS(968), + [anon_sym_type] = ACTIONS(968), + [anon_sym_COLON_COLON] = ACTIONS(970), + [anon_sym_fn] = ACTIONS(968), + [anon_sym_POUND] = ACTIONS(970), + [anon_sym_mod] = ACTIONS(968), + [anon_sym_enum] = ACTIONS(968), + [anon_sym_impl] = ACTIONS(968), + [anon_sym_trait] = ACTIONS(968), + [anon_sym_u8] = ACTIONS(968), + [anon_sym_i8] = ACTIONS(968), + [anon_sym_u16] = ACTIONS(968), + [anon_sym_i16] = ACTIONS(968), + [anon_sym_u32] = ACTIONS(968), + [anon_sym_i32] = ACTIONS(968), + [anon_sym_u64] = ACTIONS(968), + [anon_sym_i64] = ACTIONS(968), + [anon_sym_u128] = ACTIONS(968), + [anon_sym_i128] = ACTIONS(968), + [anon_sym_u256] = ACTIONS(968), + [anon_sym_i256] = ACTIONS(968), + [anon_sym_isize] = ACTIONS(968), + [anon_sym_usize] = ACTIONS(968), + [anon_sym_f32] = ACTIONS(968), + [anon_sym_f64] = ACTIONS(968), + [anon_sym_felt252] = ACTIONS(968), + [anon_sym_bool] = ACTIONS(968), + [anon_sym_str] = ACTIONS(968), + [anon_sym_char] = ACTIONS(968), + [anon_sym_GT] = ACTIONS(968), + [anon_sym_match] = ACTIONS(968), + [anon_sym_loop] = ACTIONS(968), + [anon_sym_BANG] = ACTIONS(968), + [anon_sym_TILDE] = ACTIONS(970), + [anon_sym_AMP_AMP] = ACTIONS(970), + [anon_sym_PIPE_PIPE] = ACTIONS(970), + [anon_sym_PIPE] = ACTIONS(968), + [anon_sym_CARET] = ACTIONS(968), + [anon_sym_LT2] = ACTIONS(968), + [anon_sym_LT_EQ] = ACTIONS(970), + [anon_sym_GT_EQ] = ACTIONS(970), + [anon_sym_LT_LT] = ACTIONS(968), + [anon_sym_GT_GT] = ACTIONS(968), + [anon_sym_PERCENT] = ACTIONS(968), + [anon_sym_DASH_EQ] = ACTIONS(970), + [anon_sym_STAR_EQ] = ACTIONS(970), + [anon_sym_SLASH_EQ] = ACTIONS(970), + [anon_sym_PERCENT_EQ] = ACTIONS(970), + [anon_sym_AMP_EQ] = ACTIONS(970), + [anon_sym_PIPE_EQ] = ACTIONS(970), + [anon_sym_CARET_EQ] = ACTIONS(970), + [anon_sym_LT_LT_EQ] = ACTIONS(970), + [anon_sym_GT_GT_EQ] = ACTIONS(970), + [anon_sym_QMARK] = ACTIONS(970), + [sym__cairo_1_short_string] = ACTIONS(970), + [anon_sym_true] = ACTIONS(968), + [anon_sym_false] = ACTIONS(968), + [sym_self] = ACTIONS(968), + }, + [173] = { + [sym_identifier] = ACTIONS(972), + [anon_sym_LPAREN] = ACTIONS(974), + [anon_sym_EQ] = ACTIONS(972), + [anon_sym_AT] = ACTIONS(974), + [anon_sym_LBRACE] = ACTIONS(974), + [anon_sym_RBRACE] = ACTIONS(974), + [anon_sym_struct] = ACTIONS(972), + [anon_sym_EQ_EQ] = ACTIONS(974), + [anon_sym_let] = ACTIONS(972), + [anon_sym_const] = ACTIONS(972), + [anon_sym_if] = ACTIONS(972), + [anon_sym_BANG_EQ] = ACTIONS(974), + [anon_sym_PLUS_EQ] = ACTIONS(974), + [anon_sym_return] = ACTIONS(972), + [anon_sym_STAR] = ACTIONS(972), + [anon_sym_AMP] = ACTIONS(972), + [anon_sym_DASH] = ACTIONS(972), + [anon_sym_PLUS] = ACTIONS(972), + [anon_sym_SLASH] = ACTIONS(972), + [anon_sym_LBRACK] = ACTIONS(974), + [anon_sym_DOT] = ACTIONS(974), + [sym_number] = ACTIONS(974), + [anon_sym_SEMI] = ACTIONS(974), + [sym_comment] = ACTIONS(3), + [anon_sym_use] = ACTIONS(972), + [anon_sym_extern] = ACTIONS(972), + [anon_sym_type] = ACTIONS(972), + [anon_sym_COLON_COLON] = ACTIONS(974), + [anon_sym_fn] = ACTIONS(972), + [anon_sym_POUND] = ACTIONS(974), + [anon_sym_mod] = ACTIONS(972), + [anon_sym_enum] = ACTIONS(972), + [anon_sym_impl] = ACTIONS(972), + [anon_sym_trait] = ACTIONS(972), + [anon_sym_u8] = ACTIONS(972), + [anon_sym_i8] = ACTIONS(972), + [anon_sym_u16] = ACTIONS(972), + [anon_sym_i16] = ACTIONS(972), + [anon_sym_u32] = ACTIONS(972), + [anon_sym_i32] = ACTIONS(972), + [anon_sym_u64] = ACTIONS(972), + [anon_sym_i64] = ACTIONS(972), + [anon_sym_u128] = ACTIONS(972), + [anon_sym_i128] = ACTIONS(972), + [anon_sym_u256] = ACTIONS(972), + [anon_sym_i256] = ACTIONS(972), + [anon_sym_isize] = ACTIONS(972), + [anon_sym_usize] = ACTIONS(972), + [anon_sym_f32] = ACTIONS(972), + [anon_sym_f64] = ACTIONS(972), + [anon_sym_felt252] = ACTIONS(972), + [anon_sym_bool] = ACTIONS(972), + [anon_sym_str] = ACTIONS(972), + [anon_sym_char] = ACTIONS(972), + [anon_sym_GT] = ACTIONS(972), + [anon_sym_match] = ACTIONS(972), + [anon_sym_loop] = ACTIONS(972), + [anon_sym_BANG] = ACTIONS(972), + [anon_sym_TILDE] = ACTIONS(974), + [anon_sym_AMP_AMP] = ACTIONS(974), + [anon_sym_PIPE_PIPE] = ACTIONS(974), + [anon_sym_PIPE] = ACTIONS(972), + [anon_sym_CARET] = ACTIONS(972), + [anon_sym_LT2] = ACTIONS(972), + [anon_sym_LT_EQ] = ACTIONS(974), + [anon_sym_GT_EQ] = ACTIONS(974), + [anon_sym_LT_LT] = ACTIONS(972), + [anon_sym_GT_GT] = ACTIONS(972), + [anon_sym_PERCENT] = ACTIONS(972), + [anon_sym_DASH_EQ] = ACTIONS(974), + [anon_sym_STAR_EQ] = ACTIONS(974), + [anon_sym_SLASH_EQ] = ACTIONS(974), + [anon_sym_PERCENT_EQ] = ACTIONS(974), + [anon_sym_AMP_EQ] = ACTIONS(974), + [anon_sym_PIPE_EQ] = ACTIONS(974), + [anon_sym_CARET_EQ] = ACTIONS(974), + [anon_sym_LT_LT_EQ] = ACTIONS(974), + [anon_sym_GT_GT_EQ] = ACTIONS(974), + [anon_sym_QMARK] = ACTIONS(974), + [sym__cairo_1_short_string] = ACTIONS(974), + [anon_sym_true] = ACTIONS(972), + [anon_sym_false] = ACTIONS(972), + [sym_self] = ACTIONS(972), + }, + [174] = { + [sym_attribute_item] = STATE(184), + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(673), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [aux_sym_enum_variant_list_repeat1] = STATE(184), + [sym_identifier] = ACTIONS(127), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(976), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), + [sym_comment] = ACTIONS(3), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_POUND] = ACTIONS(978), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), + }, + [175] = { + [sym_attribute_item] = STATE(178), + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(741), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [aux_sym_enum_variant_list_repeat1] = STATE(178), + [sym_identifier] = ACTIONS(127), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(980), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), + [sym_comment] = ACTIONS(3), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_POUND] = ACTIONS(978), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), + }, + [176] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(728), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(982), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(984), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_COLON] = ACTIONS(986), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), + [sym_comment] = ACTIONS(3), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_ref] = ACTIONS(988), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), + }, + [177] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(728), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(982), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(990), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_COLON] = ACTIONS(986), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), + [sym_comment] = ACTIONS(3), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_ref] = ACTIONS(988), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), + }, + [178] = { + [sym_attribute_item] = STATE(398), + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(773), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [aux_sym_enum_variant_list_repeat1] = STATE(398), + [sym_identifier] = ACTIONS(127), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), + [sym_comment] = ACTIONS(3), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_POUND] = ACTIONS(978), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), + }, + [179] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(728), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(982), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(992), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_COLON] = ACTIONS(986), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), + [sym_comment] = ACTIONS(3), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_ref] = ACTIONS(988), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), + }, + [180] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(728), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(982), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(994), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_COLON] = ACTIONS(986), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), + [sym_comment] = ACTIONS(3), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_ref] = ACTIONS(988), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), + }, + [181] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(728), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(982), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(996), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_COLON] = ACTIONS(986), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), + [sym_comment] = ACTIONS(3), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_ref] = ACTIONS(988), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), + }, + [182] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(728), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(982), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(998), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_COLON] = ACTIONS(986), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), + [sym_comment] = ACTIONS(3), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_ref] = ACTIONS(988), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), + }, + [183] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(728), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(982), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1000), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_COLON] = ACTIONS(986), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_ref] = ACTIONS(988), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), }, - [37] = { - [sym_cairo_0_statement] = STATE(12), - [sym_import_statement] = STATE(126), - [sym_type_definition] = STATE(126), - [sym_builtin_directive] = STATE(126), - [sym_lang_directive] = STATE(126), - [sym_decorated_definition] = STATE(126), - [sym_decorator] = STATE(305), - [sym_namespace_definition] = STATE(126), - [sym_struct_definition] = STATE(126), - [sym_function_definition] = STATE(126), - [sym_expression_statement] = STATE(126), - [sym_alloc_locals] = STATE(126), - [sym_assert_statement] = STATE(126), - [sym_static_assert_statement] = STATE(126), - [sym_let_binding] = STATE(126), - [sym_const_var_declaration] = STATE(126), - [sym_local_var_declaration] = STATE(126), - [sym_temp_var_declaration] = STATE(126), - [sym_instruction] = STATE(126), - [sym_inst_assert_eq] = STATE(437), - [sym_inst_jmp_rel] = STATE(437), - [sym_inst_jmp_abs] = STATE(437), - [sym_inst_jmp_to_label] = STATE(437), - [sym_inst_jnz] = STATE(437), - [sym_inst_jnz_to_label] = STATE(437), - [sym_inst_add_ap] = STATE(437), - [sym_inst_data_word] = STATE(437), - [sym_label] = STATE(126), - [sym_attribute_statement] = STATE(126), - [sym_if_statement] = STATE(126), - [sym_with_statement] = STATE(126), - [sym_return_statement] = STATE(126), - [sym_expression] = STATE(291), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(437), - [aux_sym_program_repeat1] = STATE(12), - [aux_sym_decorated_definition_repeat1] = STATE(305), - [ts_builtin_sym_end] = ACTIONS(344), - [sym_identifier] = ACTIONS(7), - [anon_sym_from] = ACTIONS(9), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(13), - [anon_sym_PERCENTbuiltins] = ACTIONS(15), - [anon_sym_PERCENTlang] = ACTIONS(17), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(21), - [anon_sym_struct] = ACTIONS(23), - [anon_sym_func] = ACTIONS(25), - [anon_sym_alloc_locals] = ACTIONS(27), - [anon_sym_assert] = ACTIONS(29), - [anon_sym_static_assert] = ACTIONS(31), - [anon_sym_let] = ACTIONS(33), - [anon_sym_const] = ACTIONS(35), - [anon_sym_local] = ACTIONS(37), - [anon_sym_tempvar] = ACTIONS(39), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(45), - [sym_inst_ret] = ACTIONS(47), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(51), - [anon_sym_with] = ACTIONS(53), - [anon_sym_return] = ACTIONS(55), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [184] = { + [sym_attribute_item] = STATE(398), + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(758), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [aux_sym_enum_variant_list_repeat1] = STATE(398), + [sym_identifier] = ACTIONS(127), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(73), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_POUND] = ACTIONS(978), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), }, - [38] = { - [sym_cairo_0_statement] = STATE(32), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(32), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(342), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [185] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(728), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(982), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1002), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_COLON] = ACTIONS(986), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_ref] = ACTIONS(988), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), }, - [39] = { - [sym_cairo_0_statement] = STATE(33), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(33), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(346), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [186] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(728), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(982), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1004), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_COLON] = ACTIONS(986), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_ref] = ACTIONS(988), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), }, - [40] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(346), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [187] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(728), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(982), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1006), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_COLON] = ACTIONS(986), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_ref] = ACTIONS(988), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), }, - [41] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(348), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [188] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(728), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(982), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1008), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_COLON] = ACTIONS(986), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_ref] = ACTIONS(988), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), }, - [42] = { - [sym_cairo_0_statement] = STATE(36), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(36), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(350), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [189] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(728), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(982), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1010), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_COLON] = ACTIONS(986), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_ref] = ACTIONS(988), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), }, - [43] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(352), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [190] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(728), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(982), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1012), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_COLON] = ACTIONS(986), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_ref] = ACTIONS(988), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), }, - [44] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(354), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [191] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(728), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(982), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1014), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_COLON] = ACTIONS(986), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_ref] = ACTIONS(988), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), }, - [45] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(356), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [192] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(728), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(982), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1016), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_COLON] = ACTIONS(986), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_ref] = ACTIONS(988), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), }, - [46] = { - [sym_cairo_0_statement] = STATE(40), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(40), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(358), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [193] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(728), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(982), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1018), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_COLON] = ACTIONS(986), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_ref] = ACTIONS(988), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), }, - [47] = { - [sym_cairo_0_statement] = STATE(41), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(41), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(360), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [194] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(728), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(982), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1020), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_COLON] = ACTIONS(986), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_ref] = ACTIONS(988), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), }, - [48] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(362), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [195] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(728), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(982), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1022), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_COLON] = ACTIONS(986), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_ref] = ACTIONS(988), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), }, - [49] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(121), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [196] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(728), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(982), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1024), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_COLON] = ACTIONS(986), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_ref] = ACTIONS(988), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), }, - [50] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(364), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [197] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(672), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(1026), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1028), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_COLON] = ACTIONS(1030), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_ref] = ACTIONS(1032), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), }, - [51] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(366), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [198] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(664), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(1034), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1036), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_COLON] = ACTIONS(1038), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_ref] = ACTIONS(1040), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), }, - [52] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(135), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [199] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(728), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(982), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1042), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_COLON] = ACTIONS(986), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_ref] = ACTIONS(988), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), }, - [53] = { - [sym_cairo_0_statement] = STATE(51), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(51), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(356), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [200] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(682), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [aux_sym__cairo_1_tuple_expression_repeat1] = STATE(201), + [sym_identifier] = ACTIONS(127), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1044), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), }, - [54] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(368), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [201] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(684), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [aux_sym__cairo_1_tuple_expression_repeat1] = STATE(205), + [sym_identifier] = ACTIONS(127), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1046), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), }, - [55] = { - [sym_cairo_0_statement] = STATE(44), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(44), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(370), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [202] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(745), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [aux_sym__cairo_1_tuple_expression_repeat1] = STATE(205), + [sym_identifier] = ACTIONS(127), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1048), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), }, - [56] = { - [sym_cairo_0_statement] = STATE(27), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_program_repeat1] = STATE(27), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_RBRACE] = ACTIONS(372), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [203] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(733), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [aux_sym__cairo_1_tuple_expression_repeat1] = STATE(205), + [sym_identifier] = ACTIONS(127), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1050), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), }, - [57] = { - [sym_cairo_0_statement] = STATE(146), - [sym_import_statement] = STATE(169), - [sym_type_definition] = STATE(169), - [sym_builtin_directive] = STATE(169), - [sym_lang_directive] = STATE(169), - [sym_decorated_definition] = STATE(169), - [sym_decorator] = STATE(301), - [sym_namespace_definition] = STATE(169), - [sym_struct_definition] = STATE(169), - [sym_function_definition] = STATE(169), - [sym_expression_statement] = STATE(169), - [sym_alloc_locals] = STATE(169), - [sym_assert_statement] = STATE(169), - [sym_static_assert_statement] = STATE(169), - [sym_let_binding] = STATE(169), - [sym_const_var_declaration] = STATE(169), - [sym_local_var_declaration] = STATE(169), - [sym_temp_var_declaration] = STATE(169), - [sym_instruction] = STATE(169), - [sym_inst_assert_eq] = STATE(418), - [sym_inst_jmp_rel] = STATE(418), - [sym_inst_jmp_abs] = STATE(418), - [sym_inst_jmp_to_label] = STATE(418), - [sym_inst_jnz] = STATE(418), - [sym_inst_jnz_to_label] = STATE(418), - [sym_inst_add_ap] = STATE(418), - [sym_inst_data_word] = STATE(418), - [sym_label] = STATE(169), - [sym_attribute_statement] = STATE(169), - [sym_if_statement] = STATE(169), - [sym_with_statement] = STATE(169), - [sym_return_statement] = STATE(169), - [sym_expression] = STATE(283), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(418), - [aux_sym_decorated_definition_repeat1] = STATE(301), - [sym_identifier] = ACTIONS(75), - [anon_sym_from] = ACTIONS(77), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(79), - [anon_sym_PERCENTbuiltins] = ACTIONS(81), - [anon_sym_PERCENTlang] = ACTIONS(83), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(85), - [anon_sym_struct] = ACTIONS(89), - [anon_sym_func] = ACTIONS(91), - [anon_sym_alloc_locals] = ACTIONS(93), - [anon_sym_assert] = ACTIONS(95), - [anon_sym_static_assert] = ACTIONS(97), - [anon_sym_let] = ACTIONS(99), - [anon_sym_const] = ACTIONS(101), - [anon_sym_local] = ACTIONS(103), - [anon_sym_tempvar] = ACTIONS(105), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(107), - [sym_inst_ret] = ACTIONS(109), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(111), - [anon_sym_with] = ACTIONS(113), - [anon_sym_return] = ACTIONS(115), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [204] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(706), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [aux_sym__cairo_1_tuple_expression_repeat1] = STATE(205), + [sym_identifier] = ACTIONS(127), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1052), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), + [sym_comment] = ACTIONS(3), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), + }, + [205] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(766), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [aux_sym__cairo_1_tuple_expression_repeat1] = STATE(205), + [sym_identifier] = ACTIONS(1054), + [anon_sym_LPAREN] = ACTIONS(1057), + [anon_sym_RPAREN] = ACTIONS(1060), + [anon_sym_AT] = ACTIONS(1062), + [anon_sym_LBRACE] = ACTIONS(1065), + [anon_sym_if] = ACTIONS(1068), + [anon_sym_return] = ACTIONS(1071), + [anon_sym_STAR] = ACTIONS(1074), + [anon_sym_DASH] = ACTIONS(1077), + [sym_number] = ACTIONS(1080), + [sym_comment] = ACTIONS(3), + [anon_sym_COLON_COLON] = ACTIONS(1083), + [anon_sym_u8] = ACTIONS(1086), + [anon_sym_i8] = ACTIONS(1086), + [anon_sym_u16] = ACTIONS(1086), + [anon_sym_i16] = ACTIONS(1086), + [anon_sym_u32] = ACTIONS(1086), + [anon_sym_i32] = ACTIONS(1086), + [anon_sym_u64] = ACTIONS(1086), + [anon_sym_i64] = ACTIONS(1086), + [anon_sym_u128] = ACTIONS(1086), + [anon_sym_i128] = ACTIONS(1086), + [anon_sym_u256] = ACTIONS(1086), + [anon_sym_i256] = ACTIONS(1086), + [anon_sym_isize] = ACTIONS(1086), + [anon_sym_usize] = ACTIONS(1086), + [anon_sym_f32] = ACTIONS(1086), + [anon_sym_f64] = ACTIONS(1086), + [anon_sym_felt252] = ACTIONS(1086), + [anon_sym_bool] = ACTIONS(1086), + [anon_sym_str] = ACTIONS(1086), + [anon_sym_char] = ACTIONS(1086), + [anon_sym_match] = ACTIONS(1089), + [anon_sym_loop] = ACTIONS(1092), + [anon_sym_BANG] = ACTIONS(1074), + [anon_sym_TILDE] = ACTIONS(1074), + [sym__cairo_1_short_string] = ACTIONS(1080), + [anon_sym_true] = ACTIONS(1095), + [anon_sym_false] = ACTIONS(1095), + [sym_self] = ACTIONS(1098), + }, + [206] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(733), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [aux_sym__cairo_1_tuple_expression_repeat1] = STATE(202), + [sym_identifier] = ACTIONS(127), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1050), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(117), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), }, - [58] = { - [sym_cairo_0_statement] = STATE(134), - [sym_import_statement] = STATE(126), - [sym_type_definition] = STATE(126), - [sym_builtin_directive] = STATE(126), - [sym_lang_directive] = STATE(126), - [sym_decorated_definition] = STATE(126), - [sym_decorator] = STATE(305), - [sym_namespace_definition] = STATE(126), - [sym_struct_definition] = STATE(126), - [sym_function_definition] = STATE(126), - [sym_expression_statement] = STATE(126), - [sym_alloc_locals] = STATE(126), - [sym_assert_statement] = STATE(126), - [sym_static_assert_statement] = STATE(126), - [sym_let_binding] = STATE(126), - [sym_const_var_declaration] = STATE(126), - [sym_local_var_declaration] = STATE(126), - [sym_temp_var_declaration] = STATE(126), - [sym_instruction] = STATE(126), - [sym_inst_assert_eq] = STATE(437), - [sym_inst_jmp_rel] = STATE(437), - [sym_inst_jmp_abs] = STATE(437), - [sym_inst_jmp_to_label] = STATE(437), - [sym_inst_jnz] = STATE(437), - [sym_inst_jnz_to_label] = STATE(437), - [sym_inst_add_ap] = STATE(437), - [sym_inst_data_word] = STATE(437), - [sym_label] = STATE(126), - [sym_attribute_statement] = STATE(126), - [sym_if_statement] = STATE(126), - [sym_with_statement] = STATE(126), - [sym_return_statement] = STATE(126), - [sym_expression] = STATE(291), - [sym_unary_expression] = STATE(255), - [sym_binary_expression] = STATE(255), - [sym_assignment_expression] = STATE(255), - [sym_hint_expression] = STATE(255), - [sym_register] = STATE(255), - [sym_deref_expression] = STATE(255), - [sym_subscript_expression] = STATE(255), - [sym_member_expression] = STATE(255), - [sym_cast_expression] = STATE(255), - [sym_tuple_expression] = STATE(255), - [sym_call_expression] = STATE(255), - [sym_call_instruction] = STATE(437), - [aux_sym_decorated_definition_repeat1] = STATE(305), - [sym_identifier] = ACTIONS(7), - [anon_sym_from] = ACTIONS(9), - [anon_sym_LPAREN] = ACTIONS(11), - [anon_sym_using] = ACTIONS(13), - [anon_sym_PERCENTbuiltins] = ACTIONS(15), - [anon_sym_PERCENTlang] = ACTIONS(17), - [anon_sym_AT] = ACTIONS(19), - [anon_sym_namespace] = ACTIONS(21), - [anon_sym_struct] = ACTIONS(23), - [anon_sym_func] = ACTIONS(25), - [anon_sym_alloc_locals] = ACTIONS(27), - [anon_sym_assert] = ACTIONS(29), - [anon_sym_static_assert] = ACTIONS(31), - [anon_sym_let] = ACTIONS(33), - [anon_sym_const] = ACTIONS(35), - [anon_sym_local] = ACTIONS(37), - [anon_sym_tempvar] = ACTIONS(39), - [anon_sym_ap] = ACTIONS(41), - [anon_sym_jmp] = ACTIONS(43), - [anon_sym_if] = ACTIONS(45), - [sym_inst_ret] = ACTIONS(47), - [anon_sym_dw] = ACTIONS(49), - [anon_sym_with_attr] = ACTIONS(51), - [anon_sym_with] = ACTIONS(53), - [anon_sym_return] = ACTIONS(55), - [anon_sym_AMP] = ACTIONS(57), - [anon_sym_DASH] = ACTIONS(57), - [anon_sym_new] = ACTIONS(59), - [sym_short_string] = ACTIONS(61), - [anon_sym_nondet] = ACTIONS(63), - [anon_sym_fp] = ACTIONS(65), - [anon_sym_LBRACK] = ACTIONS(67), - [anon_sym_cast] = ACTIONS(69), - [anon_sym_call] = ACTIONS(71), - [sym_number] = ACTIONS(61), + [207] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(728), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [sym_identifier] = ACTIONS(982), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_COLON] = ACTIONS(986), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), + [sym_comment] = ACTIONS(3), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_ref] = ACTIONS(988), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), + }, + [208] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(684), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [aux_sym__cairo_1_tuple_expression_repeat1] = STATE(204), + [sym_identifier] = ACTIONS(127), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1046), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), + [sym_comment] = ACTIONS(3), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), + }, + [209] = { + [sym_block] = STATE(450), + [sym__cairo_1_generic_function] = STATE(444), + [sym_generic_type_with_turbofish] = STATE(1891), + [sym__cairo_1_expression] = STATE(711), + [sym__cairo_1_return_expression] = STATE(450), + [sym__cairo_1_if_expression] = STATE(441), + [sym_match_expression] = STATE(450), + [sym__cairo_1_loop_expression] = STATE(440), + [sym__cairo_1_at_expression] = STATE(450), + [sym__cairo_1_unary_expression] = STATE(450), + [sym__cairo_1_binary_expression] = STATE(439), + [sym__cairo_1_assignment_expression] = STATE(438), + [sym__cairo_1_compound_assignment_expression] = STATE(437), + [sym__cairo_1_try_expression] = STATE(450), + [sym__cairo_1_call_expression] = STATE(436), + [sym__cairo_1_index_expression] = STATE(450), + [sym__cairo_1_field_expression] = STATE(414), + [sym__cairo_1_parenthesized_expression] = STATE(450), + [sym__cairo_1_tuple_expression] = STATE(450), + [sym__cairo_1_unit_expression] = STATE(450), + [sym__cairo_1_struct_expression] = STATE(435), + [sym__literal] = STATE(450), + [sym_scoped_identifier] = STATE(410), + [sym_boolean] = STATE(450), + [aux_sym__cairo_1_tuple_expression_repeat1] = STATE(203), + [sym_identifier] = ACTIONS(127), + [anon_sym_LPAREN] = ACTIONS(129), + [anon_sym_RPAREN] = ACTIONS(1101), + [anon_sym_AT] = ACTIONS(131), + [anon_sym_LBRACE] = ACTIONS(133), + [anon_sym_if] = ACTIONS(135), + [anon_sym_return] = ACTIONS(137), + [anon_sym_STAR] = ACTIONS(151), + [anon_sym_DASH] = ACTIONS(139), + [sym_number] = ACTIONS(141), [sym_comment] = ACTIONS(3), - [sym_hint] = ACTIONS(73), + [anon_sym_COLON_COLON] = ACTIONS(143), + [anon_sym_u8] = ACTIONS(145), + [anon_sym_i8] = ACTIONS(145), + [anon_sym_u16] = ACTIONS(145), + [anon_sym_i16] = ACTIONS(145), + [anon_sym_u32] = ACTIONS(145), + [anon_sym_i32] = ACTIONS(145), + [anon_sym_u64] = ACTIONS(145), + [anon_sym_i64] = ACTIONS(145), + [anon_sym_u128] = ACTIONS(145), + [anon_sym_i128] = ACTIONS(145), + [anon_sym_u256] = ACTIONS(145), + [anon_sym_i256] = ACTIONS(145), + [anon_sym_isize] = ACTIONS(145), + [anon_sym_usize] = ACTIONS(145), + [anon_sym_f32] = ACTIONS(145), + [anon_sym_f64] = ACTIONS(145), + [anon_sym_felt252] = ACTIONS(145), + [anon_sym_bool] = ACTIONS(145), + [anon_sym_str] = ACTIONS(145), + [anon_sym_char] = ACTIONS(145), + [anon_sym_match] = ACTIONS(147), + [anon_sym_loop] = ACTIONS(149), + [anon_sym_BANG] = ACTIONS(151), + [anon_sym_TILDE] = ACTIONS(151), + [sym__cairo_1_short_string] = ACTIONS(141), + [anon_sym_true] = ACTIONS(153), + [anon_sym_false] = ACTIONS(153), + [sym_self] = ACTIONS(155), }, }; static const uint16_t ts_small_parse_table[] = { - [0] = 5, + [0] = 30, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(1103), 1, + sym_identifier, + ACTIONS(1105), 1, + anon_sym_COLON, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(691), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [125] = 30, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(1107), 1, + sym_identifier, + ACTIONS(1109), 1, + anon_sym_COLON, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(668), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [250] = 30, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(1111), 1, + sym_identifier, + ACTIONS(1113), 1, + anon_sym_RPAREN, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(669), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [375] = 30, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(1115), 1, + sym_identifier, + ACTIONS(1117), 1, + anon_sym_RPAREN, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(731), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [500] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1119), 1, + anon_sym_else, + STATE(303), 1, + sym__cairo_1_else_clause, + ACTIONS(638), 25, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + ACTIONS(636), 36, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_GT, + anon_sym__, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + sym_self, + [575] = 30, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(1115), 1, + sym_identifier, + ACTIONS(1121), 1, + anon_sym_RPAREN, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(731), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [700] = 30, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(1115), 1, + sym_identifier, + ACTIONS(1123), 1, + anon_sym_RPAREN, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(731), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [825] = 30, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(1115), 1, + sym_identifier, + ACTIONS(1125), 1, + anon_sym_RPAREN, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(731), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [950] = 30, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(1127), 1, + sym_identifier, + ACTIONS(1129), 1, + anon_sym_COLON, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(667), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [1075] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(757), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [1197] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(756), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [1319] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(189), 1, + anon_sym_AT, + ACTIONS(191), 1, + anon_sym_return, + ACTIONS(193), 1, + anon_sym_DASH, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(777), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(197), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(195), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [1441] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(189), 1, + anon_sym_AT, + ACTIONS(191), 1, + anon_sym_return, + ACTIONS(193), 1, + anon_sym_DASH, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(774), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(197), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(195), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [1563] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(692), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [1685] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(515), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [1807] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(93), 1, + sym_identifier, + ACTIONS(95), 1, + anon_sym_LPAREN, + ACTIONS(99), 1, + anon_sym_AT, + ACTIONS(101), 1, + anon_sym_LBRACE, + ACTIONS(105), 1, + anon_sym_if, + ACTIONS(107), 1, + anon_sym_return, + ACTIONS(109), 1, + anon_sym_DASH, + ACTIONS(113), 1, + anon_sym_COLON_COLON, + ACTIONS(117), 1, + anon_sym_match, + ACTIONS(119), 1, + anon_sym_loop, + ACTIONS(125), 1, + sym_self, + STATE(132), 1, + sym__cairo_1_generic_function, + STATE(137), 1, + sym__cairo_1_if_expression, + STATE(138), 1, + sym__cairo_1_loop_expression, + STATE(139), 1, + sym__cairo_1_expression, + STATE(140), 1, + sym__cairo_1_binary_expression, + STATE(141), 1, + sym__cairo_1_assignment_expression, + STATE(142), 1, + sym__cairo_1_compound_assignment_expression, + STATE(143), 1, + sym__cairo_1_call_expression, + STATE(159), 1, + sym__cairo_1_field_expression, + STATE(161), 1, + sym__cairo_1_struct_expression, + STATE(164), 1, + sym_scoped_identifier, + STATE(1828), 1, + sym_generic_type_with_turbofish, + ACTIONS(111), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(123), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(121), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(127), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(115), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [1929] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(93), 1, + sym_identifier, + ACTIONS(95), 1, + anon_sym_LPAREN, + ACTIONS(99), 1, + anon_sym_AT, + ACTIONS(101), 1, + anon_sym_LBRACE, + ACTIONS(105), 1, + anon_sym_if, + ACTIONS(107), 1, + anon_sym_return, + ACTIONS(109), 1, + anon_sym_DASH, + ACTIONS(113), 1, + anon_sym_COLON_COLON, + ACTIONS(117), 1, + anon_sym_match, + ACTIONS(119), 1, + anon_sym_loop, + ACTIONS(125), 1, + sym_self, + STATE(132), 1, + sym__cairo_1_generic_function, + STATE(136), 1, + sym__cairo_1_expression, + STATE(137), 1, + sym__cairo_1_if_expression, + STATE(138), 1, + sym__cairo_1_loop_expression, + STATE(140), 1, + sym__cairo_1_binary_expression, + STATE(141), 1, + sym__cairo_1_assignment_expression, + STATE(142), 1, + sym__cairo_1_compound_assignment_expression, + STATE(143), 1, + sym__cairo_1_call_expression, + STATE(159), 1, + sym__cairo_1_field_expression, + STATE(161), 1, + sym__cairo_1_struct_expression, + STATE(164), 1, + sym_scoped_identifier, + STATE(1828), 1, + sym_generic_type_with_turbofish, + ACTIONS(111), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(123), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(121), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(127), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(115), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [2051] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(704), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [2173] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(189), 1, + anon_sym_AT, + ACTIONS(191), 1, + anon_sym_return, + ACTIONS(193), 1, + anon_sym_DASH, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(430), 1, + sym__cairo_1_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(197), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(195), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [2295] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(189), 1, + anon_sym_AT, + ACTIONS(191), 1, + anon_sym_return, + ACTIONS(193), 1, + anon_sym_DASH, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(772), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(197), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(195), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [2417] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(189), 1, + anon_sym_AT, + ACTIONS(191), 1, + anon_sym_return, + ACTIONS(193), 1, + anon_sym_DASH, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(723), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(197), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(195), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [2539] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(752), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [2661] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(699), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [2783] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(705), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [2905] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(666), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [3027] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(93), 1, + sym_identifier, + ACTIONS(95), 1, + anon_sym_LPAREN, + ACTIONS(99), 1, + anon_sym_AT, + ACTIONS(101), 1, + anon_sym_LBRACE, + ACTIONS(105), 1, + anon_sym_if, + ACTIONS(107), 1, + anon_sym_return, + ACTIONS(109), 1, + anon_sym_DASH, + ACTIONS(113), 1, + anon_sym_COLON_COLON, + ACTIONS(117), 1, + anon_sym_match, + ACTIONS(119), 1, + anon_sym_loop, + ACTIONS(125), 1, + sym_self, + STATE(132), 1, + sym__cairo_1_generic_function, + STATE(137), 1, + sym__cairo_1_if_expression, + STATE(138), 1, + sym__cairo_1_loop_expression, + STATE(140), 1, + sym__cairo_1_binary_expression, + STATE(141), 1, + sym__cairo_1_assignment_expression, + STATE(142), 1, + sym__cairo_1_compound_assignment_expression, + STATE(143), 1, + sym__cairo_1_call_expression, + STATE(154), 1, + sym__cairo_1_expression, + STATE(159), 1, + sym__cairo_1_field_expression, + STATE(161), 1, + sym__cairo_1_struct_expression, + STATE(164), 1, + sym_scoped_identifier, + STATE(1828), 1, + sym_generic_type_with_turbofish, + ACTIONS(111), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(123), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(121), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(127), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(115), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [3149] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(754), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [3271] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(189), 1, + anon_sym_AT, + ACTIONS(191), 1, + anon_sym_return, + ACTIONS(193), 1, + anon_sym_DASH, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(770), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(197), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(195), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [3393] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(189), 1, + anon_sym_AT, + ACTIONS(191), 1, + anon_sym_return, + ACTIONS(193), 1, + anon_sym_DASH, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(732), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(197), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(195), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [3515] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(430), 1, + sym__cairo_1_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [3637] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(189), 1, + anon_sym_AT, + ACTIONS(191), 1, + anon_sym_return, + ACTIONS(193), 1, + anon_sym_DASH, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(750), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(197), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(195), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [3759] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(189), 1, + anon_sym_AT, + ACTIONS(191), 1, + anon_sym_return, + ACTIONS(193), 1, + anon_sym_DASH, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(467), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(197), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(195), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [3881] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(189), 1, + anon_sym_AT, + ACTIONS(191), 1, + anon_sym_return, + ACTIONS(193), 1, + anon_sym_DASH, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(760), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(197), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(195), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [4003] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(525), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [4125] = 30, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(1131), 1, + anon_sym_LBRACE, + ACTIONS(1133), 1, + anon_sym_if, + ACTIONS(1135), 1, + anon_sym_match, + STATE(309), 1, + sym__cairo_1_if_expression, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(761), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + STATE(308), 2, + sym_block, + sym_match_expression, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 10, + sym__cairo_1_return_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [4249] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(662), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [4371] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(519), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [4493] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(759), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [4615] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(189), 1, + anon_sym_AT, + ACTIONS(191), 1, + anon_sym_return, + ACTIONS(193), 1, + anon_sym_DASH, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(742), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(197), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(195), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [4737] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(540), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [4859] = 30, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(1131), 1, + anon_sym_LBRACE, + ACTIONS(1133), 1, + anon_sym_if, + ACTIONS(1135), 1, + anon_sym_match, + STATE(309), 1, + sym__cairo_1_if_expression, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(676), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + STATE(308), 2, + sym_block, + sym_match_expression, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 10, + sym__cairo_1_return_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [4983] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(775), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [5105] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(751), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [5227] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(521), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [5349] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(93), 1, + sym_identifier, + ACTIONS(95), 1, + anon_sym_LPAREN, + ACTIONS(99), 1, + anon_sym_AT, + ACTIONS(101), 1, + anon_sym_LBRACE, + ACTIONS(105), 1, + anon_sym_if, + ACTIONS(107), 1, + anon_sym_return, + ACTIONS(109), 1, + anon_sym_DASH, + ACTIONS(113), 1, + anon_sym_COLON_COLON, + ACTIONS(117), 1, + anon_sym_match, + ACTIONS(119), 1, + anon_sym_loop, + ACTIONS(125), 1, + sym_self, + STATE(118), 1, + sym__cairo_1_expression, + STATE(132), 1, + sym__cairo_1_generic_function, + STATE(137), 1, + sym__cairo_1_if_expression, + STATE(138), 1, + sym__cairo_1_loop_expression, + STATE(140), 1, + sym__cairo_1_binary_expression, + STATE(141), 1, + sym__cairo_1_assignment_expression, + STATE(142), 1, + sym__cairo_1_compound_assignment_expression, + STATE(143), 1, + sym__cairo_1_call_expression, + STATE(159), 1, + sym__cairo_1_field_expression, + STATE(161), 1, + sym__cairo_1_struct_expression, + STATE(164), 1, + sym_scoped_identifier, + STATE(1828), 1, + sym_generic_type_with_turbofish, + ACTIONS(111), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(123), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(121), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(127), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(115), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [5471] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(189), 1, + anon_sym_AT, + ACTIONS(191), 1, + anon_sym_return, + ACTIONS(193), 1, + anon_sym_DASH, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(687), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(197), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(195), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [5593] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(93), 1, + sym_identifier, + ACTIONS(95), 1, + anon_sym_LPAREN, + ACTIONS(99), 1, + anon_sym_AT, + ACTIONS(101), 1, + anon_sym_LBRACE, + ACTIONS(105), 1, + anon_sym_if, + ACTIONS(107), 1, + anon_sym_return, + ACTIONS(109), 1, + anon_sym_DASH, + ACTIONS(113), 1, + anon_sym_COLON_COLON, + ACTIONS(117), 1, + anon_sym_match, + ACTIONS(119), 1, + anon_sym_loop, + ACTIONS(125), 1, + sym_self, + STATE(94), 1, + sym__cairo_1_expression, + STATE(132), 1, + sym__cairo_1_generic_function, + STATE(137), 1, + sym__cairo_1_if_expression, + STATE(138), 1, + sym__cairo_1_loop_expression, + STATE(140), 1, + sym__cairo_1_binary_expression, + STATE(141), 1, + sym__cairo_1_assignment_expression, + STATE(142), 1, + sym__cairo_1_compound_assignment_expression, + STATE(143), 1, + sym__cairo_1_call_expression, + STATE(159), 1, + sym__cairo_1_field_expression, + STATE(161), 1, + sym__cairo_1_struct_expression, + STATE(164), 1, + sym_scoped_identifier, + STATE(1828), 1, + sym_generic_type_with_turbofish, + ACTIONS(111), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(123), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(121), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(127), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(115), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [5715] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(189), 1, + anon_sym_AT, + ACTIONS(191), 1, + anon_sym_return, + ACTIONS(193), 1, + anon_sym_DASH, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(763), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(197), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(195), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [5837] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(189), 1, + anon_sym_AT, + ACTIONS(191), 1, + anon_sym_return, + ACTIONS(193), 1, + anon_sym_DASH, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(749), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(197), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(195), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [5959] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(189), 1, + anon_sym_AT, + ACTIONS(191), 1, + anon_sym_return, + ACTIONS(193), 1, + anon_sym_DASH, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(746), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(197), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(195), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [6081] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(668), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [6203] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(189), 1, + anon_sym_AT, + ACTIONS(191), 1, + anon_sym_return, + ACTIONS(193), 1, + anon_sym_DASH, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(767), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(197), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(195), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [6325] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(189), 1, + anon_sym_AT, + ACTIONS(191), 1, + anon_sym_return, + ACTIONS(193), 1, + anon_sym_DASH, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(764), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(197), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(195), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [6447] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(93), 1, + sym_identifier, + ACTIONS(95), 1, + anon_sym_LPAREN, + ACTIONS(99), 1, + anon_sym_AT, + ACTIONS(101), 1, + anon_sym_LBRACE, + ACTIONS(105), 1, + anon_sym_if, + ACTIONS(107), 1, + anon_sym_return, + ACTIONS(109), 1, + anon_sym_DASH, + ACTIONS(113), 1, + anon_sym_COLON_COLON, + ACTIONS(117), 1, + anon_sym_match, + ACTIONS(119), 1, + anon_sym_loop, + ACTIONS(125), 1, + sym_self, + STATE(132), 1, + sym__cairo_1_generic_function, + STATE(137), 1, + sym__cairo_1_if_expression, + STATE(138), 1, + sym__cairo_1_loop_expression, + STATE(140), 1, + sym__cairo_1_binary_expression, + STATE(141), 1, + sym__cairo_1_assignment_expression, + STATE(142), 1, + sym__cairo_1_compound_assignment_expression, + STATE(143), 1, + sym__cairo_1_call_expression, + STATE(155), 1, + sym__cairo_1_expression, + STATE(159), 1, + sym__cairo_1_field_expression, + STATE(161), 1, + sym__cairo_1_struct_expression, + STATE(164), 1, + sym_scoped_identifier, + STATE(1828), 1, + sym_generic_type_with_turbofish, + ACTIONS(111), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(123), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(121), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(127), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(115), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [6569] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(671), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [6691] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(658), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [6813] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(189), 1, + anon_sym_AT, + ACTIONS(191), 1, + anon_sym_return, + ACTIONS(193), 1, + anon_sym_DASH, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(769), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(197), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(195), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [6935] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(691), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [7057] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(512), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [7179] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(523), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [7301] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(661), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [7423] = 30, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(1131), 1, + anon_sym_LBRACE, + ACTIONS(1133), 1, + anon_sym_if, + ACTIONS(1135), 1, + anon_sym_match, + STATE(305), 1, + sym__cairo_1_if_expression, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(730), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + STATE(313), 2, + sym_block, + sym_match_expression, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 10, + sym__cairo_1_return_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [7547] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(467), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [7669] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(510), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [7791] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(93), 1, + sym_identifier, + ACTIONS(95), 1, + anon_sym_LPAREN, + ACTIONS(99), 1, + anon_sym_AT, + ACTIONS(101), 1, + anon_sym_LBRACE, + ACTIONS(105), 1, + anon_sym_if, + ACTIONS(107), 1, + anon_sym_return, + ACTIONS(109), 1, + anon_sym_DASH, + ACTIONS(113), 1, + anon_sym_COLON_COLON, + ACTIONS(117), 1, + anon_sym_match, + ACTIONS(119), 1, + anon_sym_loop, + ACTIONS(125), 1, + sym_self, + STATE(132), 1, + sym__cairo_1_generic_function, + STATE(137), 1, + sym__cairo_1_if_expression, + STATE(138), 1, + sym__cairo_1_loop_expression, + STATE(140), 1, + sym__cairo_1_binary_expression, + STATE(141), 1, + sym__cairo_1_assignment_expression, + STATE(142), 1, + sym__cairo_1_compound_assignment_expression, + STATE(143), 1, + sym__cairo_1_call_expression, + STATE(153), 1, + sym__cairo_1_expression, + STATE(159), 1, + sym__cairo_1_field_expression, + STATE(161), 1, + sym__cairo_1_struct_expression, + STATE(164), 1, + sym_scoped_identifier, + STATE(1828), 1, + sym_generic_type_with_turbofish, + ACTIONS(111), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(123), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(121), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(127), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(115), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [7913] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(511), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [8035] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(663), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [8157] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(667), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [8279] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(528), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [8401] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(755), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [8523] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(526), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [8645] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(765), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [8767] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(93), 1, + sym_identifier, + ACTIONS(95), 1, + anon_sym_LPAREN, + ACTIONS(99), 1, + anon_sym_AT, + ACTIONS(101), 1, + anon_sym_LBRACE, + ACTIONS(105), 1, + anon_sym_if, + ACTIONS(107), 1, + anon_sym_return, + ACTIONS(109), 1, + anon_sym_DASH, + ACTIONS(113), 1, + anon_sym_COLON_COLON, + ACTIONS(117), 1, + anon_sym_match, + ACTIONS(119), 1, + anon_sym_loop, + ACTIONS(125), 1, + sym_self, + STATE(132), 1, + sym__cairo_1_generic_function, + STATE(137), 1, + sym__cairo_1_if_expression, + STATE(138), 1, + sym__cairo_1_loop_expression, + STATE(140), 1, + sym__cairo_1_binary_expression, + STATE(141), 1, + sym__cairo_1_assignment_expression, + STATE(142), 1, + sym__cairo_1_compound_assignment_expression, + STATE(143), 1, + sym__cairo_1_call_expression, + STATE(149), 1, + sym__cairo_1_expression, + STATE(159), 1, + sym__cairo_1_field_expression, + STATE(161), 1, + sym__cairo_1_struct_expression, + STATE(164), 1, + sym_scoped_identifier, + STATE(1828), 1, + sym_generic_type_with_turbofish, + ACTIONS(111), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(123), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(121), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(127), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(115), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [8889] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(187), 1, + sym_identifier, + ACTIONS(189), 1, + anon_sym_AT, + ACTIONS(191), 1, + anon_sym_return, + ACTIONS(193), 1, + anon_sym_DASH, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(681), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(197), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(195), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [9011] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(768), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [9133] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(771), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [9255] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(753), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [9377] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(740), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [9499] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(93), 1, + sym_identifier, + ACTIONS(95), 1, + anon_sym_LPAREN, + ACTIONS(99), 1, + anon_sym_AT, + ACTIONS(101), 1, + anon_sym_LBRACE, + ACTIONS(105), 1, + anon_sym_if, + ACTIONS(107), 1, + anon_sym_return, + ACTIONS(109), 1, + anon_sym_DASH, + ACTIONS(113), 1, + anon_sym_COLON_COLON, + ACTIONS(117), 1, + anon_sym_match, + ACTIONS(119), 1, + anon_sym_loop, + ACTIONS(125), 1, + sym_self, + STATE(132), 1, + sym__cairo_1_generic_function, + STATE(137), 1, + sym__cairo_1_if_expression, + STATE(138), 1, + sym__cairo_1_loop_expression, + STATE(140), 1, + sym__cairo_1_binary_expression, + STATE(141), 1, + sym__cairo_1_assignment_expression, + STATE(142), 1, + sym__cairo_1_compound_assignment_expression, + STATE(143), 1, + sym__cairo_1_call_expression, + STATE(148), 1, + sym__cairo_1_expression, + STATE(159), 1, + sym__cairo_1_field_expression, + STATE(161), 1, + sym__cairo_1_struct_expression, + STATE(164), 1, + sym_scoped_identifier, + STATE(1828), 1, + sym_generic_type_with_turbofish, + ACTIONS(111), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(123), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(121), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(127), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(115), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [9621] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(93), 1, + sym_identifier, + ACTIONS(95), 1, + anon_sym_LPAREN, + ACTIONS(99), 1, + anon_sym_AT, + ACTIONS(101), 1, + anon_sym_LBRACE, + ACTIONS(105), 1, + anon_sym_if, + ACTIONS(107), 1, + anon_sym_return, + ACTIONS(109), 1, + anon_sym_DASH, + ACTIONS(113), 1, + anon_sym_COLON_COLON, + ACTIONS(117), 1, + anon_sym_match, + ACTIONS(119), 1, + anon_sym_loop, + ACTIONS(125), 1, + sym_self, + STATE(132), 1, + sym__cairo_1_generic_function, + STATE(137), 1, + sym__cairo_1_if_expression, + STATE(138), 1, + sym__cairo_1_loop_expression, + STATE(140), 1, + sym__cairo_1_binary_expression, + STATE(141), 1, + sym__cairo_1_assignment_expression, + STATE(142), 1, + sym__cairo_1_compound_assignment_expression, + STATE(143), 1, + sym__cairo_1_call_expression, + STATE(147), 1, + sym__cairo_1_expression, + STATE(159), 1, + sym__cairo_1_field_expression, + STATE(161), 1, + sym__cairo_1_struct_expression, + STATE(164), 1, + sym_scoped_identifier, + STATE(1828), 1, + sym_generic_type_with_turbofish, + ACTIONS(111), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(123), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(121), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(127), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(115), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [9743] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(693), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [9865] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(666), 25, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + ACTIONS(664), 37, + anon_sym_EQ, + anon_sym_else, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_GT, + anon_sym__, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + sym_self, + [9935] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(662), 25, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + ACTIONS(660), 37, + anon_sym_EQ, + anon_sym_else, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_GT, + anon_sym__, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + sym_self, + [10005] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(744), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [10127] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(93), 1, + sym_identifier, + ACTIONS(95), 1, + anon_sym_LPAREN, + ACTIONS(99), 1, + anon_sym_AT, + ACTIONS(101), 1, + anon_sym_LBRACE, + ACTIONS(105), 1, + anon_sym_if, + ACTIONS(107), 1, + anon_sym_return, + ACTIONS(109), 1, + anon_sym_DASH, + ACTIONS(113), 1, + anon_sym_COLON_COLON, + ACTIONS(117), 1, + anon_sym_match, + ACTIONS(119), 1, + anon_sym_loop, + ACTIONS(125), 1, + sym_self, + STATE(132), 1, + sym__cairo_1_generic_function, + STATE(137), 1, + sym__cairo_1_if_expression, + STATE(138), 1, + sym__cairo_1_loop_expression, + STATE(140), 1, + sym__cairo_1_binary_expression, + STATE(141), 1, + sym__cairo_1_assignment_expression, + STATE(142), 1, + sym__cairo_1_compound_assignment_expression, + STATE(143), 1, + sym__cairo_1_call_expression, + STATE(156), 1, + sym__cairo_1_expression, + STATE(159), 1, + sym__cairo_1_field_expression, + STATE(161), 1, + sym__cairo_1_struct_expression, + STATE(164), 1, + sym_scoped_identifier, + STATE(1828), 1, + sym_generic_type_with_turbofish, + ACTIONS(111), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(123), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(121), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(127), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(115), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [10249] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(93), 1, + sym_identifier, + ACTIONS(95), 1, + anon_sym_LPAREN, + ACTIONS(99), 1, + anon_sym_AT, + ACTIONS(101), 1, + anon_sym_LBRACE, + ACTIONS(105), 1, + anon_sym_if, + ACTIONS(107), 1, + anon_sym_return, + ACTIONS(109), 1, + anon_sym_DASH, + ACTIONS(113), 1, + anon_sym_COLON_COLON, + ACTIONS(117), 1, + anon_sym_match, + ACTIONS(119), 1, + anon_sym_loop, + ACTIONS(125), 1, + sym_self, + STATE(132), 1, + sym__cairo_1_generic_function, + STATE(137), 1, + sym__cairo_1_if_expression, + STATE(138), 1, + sym__cairo_1_loop_expression, + STATE(140), 1, + sym__cairo_1_binary_expression, + STATE(141), 1, + sym__cairo_1_assignment_expression, + STATE(142), 1, + sym__cairo_1_compound_assignment_expression, + STATE(143), 1, + sym__cairo_1_call_expression, + STATE(158), 1, + sym__cairo_1_expression, + STATE(159), 1, + sym__cairo_1_field_expression, + STATE(161), 1, + sym__cairo_1_struct_expression, + STATE(164), 1, + sym_scoped_identifier, + STATE(1828), 1, + sym_generic_type_with_turbofish, + ACTIONS(111), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(123), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(121), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(127), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(115), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [10371] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(665), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [10493] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(93), 1, + sym_identifier, + ACTIONS(95), 1, + anon_sym_LPAREN, + ACTIONS(99), 1, + anon_sym_AT, + ACTIONS(101), 1, + anon_sym_LBRACE, + ACTIONS(105), 1, + anon_sym_if, + ACTIONS(107), 1, + anon_sym_return, + ACTIONS(109), 1, + anon_sym_DASH, + ACTIONS(113), 1, + anon_sym_COLON_COLON, + ACTIONS(117), 1, + anon_sym_match, + ACTIONS(119), 1, + anon_sym_loop, + ACTIONS(125), 1, + sym_self, + STATE(132), 1, + sym__cairo_1_generic_function, + STATE(137), 1, + sym__cairo_1_if_expression, + STATE(138), 1, + sym__cairo_1_loop_expression, + STATE(140), 1, + sym__cairo_1_binary_expression, + STATE(141), 1, + sym__cairo_1_assignment_expression, + STATE(142), 1, + sym__cairo_1_compound_assignment_expression, + STATE(143), 1, + sym__cairo_1_call_expression, + STATE(146), 1, + sym__cairo_1_expression, + STATE(159), 1, + sym__cairo_1_field_expression, + STATE(161), 1, + sym__cairo_1_struct_expression, + STATE(164), 1, + sym_scoped_identifier, + STATE(1828), 1, + sym_generic_type_with_turbofish, + ACTIONS(111), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(123), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(121), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(127), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(115), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [10615] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(1115), 1, + sym_identifier, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(731), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [10737] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(698), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [10859] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(776), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [10981] = 30, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + ACTIONS(1131), 1, + anon_sym_LBRACE, + ACTIONS(1133), 1, + anon_sym_if, + ACTIONS(1135), 1, + anon_sym_match, + STATE(305), 1, + sym__cairo_1_if_expression, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(778), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + STATE(313), 2, + sym_block, + sym_match_expression, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 10, + sym__cairo_1_return_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [11105] = 29, + ACTIONS(3), 1, + sym_comment, + ACTIONS(127), 1, + sym_identifier, + ACTIONS(129), 1, + anon_sym_LPAREN, + ACTIONS(131), 1, + anon_sym_AT, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(135), 1, + anon_sym_if, + ACTIONS(137), 1, + anon_sym_return, + ACTIONS(139), 1, + anon_sym_DASH, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(147), 1, + anon_sym_match, + ACTIONS(149), 1, + anon_sym_loop, + ACTIONS(155), 1, + sym_self, + STATE(410), 1, + sym_scoped_identifier, + STATE(414), 1, + sym__cairo_1_field_expression, + STATE(435), 1, + sym__cairo_1_struct_expression, + STATE(436), 1, + sym__cairo_1_call_expression, + STATE(437), 1, + sym__cairo_1_compound_assignment_expression, + STATE(438), 1, + sym__cairo_1_assignment_expression, + STATE(439), 1, + sym__cairo_1_binary_expression, + STATE(440), 1, + sym__cairo_1_loop_expression, + STATE(441), 1, + sym__cairo_1_if_expression, + STATE(444), 1, + sym__cairo_1_generic_function, + STATE(675), 1, + sym__cairo_1_expression, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(141), 2, + sym_number, + sym__cairo_1_short_string, + ACTIONS(153), 2, + anon_sym_true, + anon_sym_false, + ACTIONS(151), 3, + anon_sym_STAR, + anon_sym_BANG, + anon_sym_TILDE, + STATE(450), 12, + sym_block, + sym__cairo_1_return_expression, + sym_match_expression, + sym__cairo_1_at_expression, + sym__cairo_1_unary_expression, + sym__cairo_1_try_expression, + sym__cairo_1_index_expression, + sym__cairo_1_parenthesized_expression, + sym__cairo_1_tuple_expression, + sym__cairo_1_unit_expression, + sym__literal, + sym_boolean, + ACTIONS(145), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [11227] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(762), 25, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + ACTIONS(760), 36, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_GT, + anon_sym__, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + sym_self, + [11296] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(714), 25, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + ACTIONS(712), 36, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_GT, + anon_sym__, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + sym_self, + [11365] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1139), 4, + anon_sym_LPAREN, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + ACTIONS(866), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(868), 21, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + ACTIONS(1137), 23, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym__, + sym_self, + [11438] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(778), 25, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + ACTIONS(776), 36, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_GT, + anon_sym__, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + sym_self, + [11507] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(962), 25, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + ACTIONS(960), 36, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_GT, + anon_sym__, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + sym_self, + [11576] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1143), 4, + anon_sym_LPAREN, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + ACTIONS(642), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(644), 21, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + ACTIONS(1141), 23, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym__, + sym_self, + [11649] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1147), 4, + anon_sym_LPAREN, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + ACTIONS(866), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(868), 21, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + ACTIONS(1145), 23, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym__, + sym_self, + [11722] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(958), 25, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + ACTIONS(956), 36, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_GT, + anon_sym__, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + sym_self, + [11791] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(950), 25, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + ACTIONS(948), 36, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_GT, + anon_sym__, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + sym_self, + [11860] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(856), 25, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + ACTIONS(854), 36, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_GT, + anon_sym__, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + sym_self, + [11929] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1151), 4, + anon_sym_LPAREN, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + ACTIONS(642), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(644), 21, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + ACTIONS(1149), 23, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym__, + sym_self, + [12002] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1155), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1153), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [12061] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1159), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1157), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [12120] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1163), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1161), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [12179] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1167), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1165), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [12238] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1163), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1161), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [12297] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1171), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1169), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [12356] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1175), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1173), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [12415] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1179), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1177), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [12474] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1183), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1181), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [12533] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1187), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1185), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [12592] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1191), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1189), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [12651] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1195), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1193), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [12710] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1199), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1197), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [12769] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1203), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1201), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [12828] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1207), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1205), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [12887] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1211), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1209), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [12946] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1215), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1213), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [13005] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1219), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1217), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [13064] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1223), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1221), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [13123] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1227), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1225), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [13182] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1231), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1229), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [13241] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1235), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1233), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [13300] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1239), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1237), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [13359] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1243), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1241), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [13418] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1247), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1245), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [13477] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1251), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1249), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [13536] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1255), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1253), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [13595] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(662), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(660), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [13654] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1259), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1257), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [13713] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1263), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1261), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [13772] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1267), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1265), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [13831] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(666), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(664), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [13890] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1271), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1269), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [13949] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1275), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1273), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [14008] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1279), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1277), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [14067] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1283), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1281), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [14126] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1287), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1285), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [14185] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1291), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1289), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [14244] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1295), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1293), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [14303] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1299), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1297), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [14362] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1303), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1301), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [14421] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1307), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1305), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [14480] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1311), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1309), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [14539] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1315), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1313), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [14598] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1319), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1317), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [14657] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1323), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1321), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [14716] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1327), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1325), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [14775] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1331), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1329), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [14834] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1335), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1333), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [14893] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1339), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1337), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [14952] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1343), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1341), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [15011] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1347), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1345), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [15070] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1351), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1349), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [15129] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1355), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1353), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [15188] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1359), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1357), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [15247] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1363), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1361), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [15306] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1367), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1365), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [15365] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1371), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1369), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [15424] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1375), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1373), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [15483] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1379), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1377), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [15542] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1383), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1381), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [15601] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1387), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1385), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [15660] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1391), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1389), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [15719] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1395), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1393), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [15778] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1399), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1397), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [15837] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1403), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1401), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [15896] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1407), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1405), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [15955] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1411), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1409), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [16014] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1415), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1413), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [16073] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1419), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1417), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [16132] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1423), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1421), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [16191] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1427), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1425), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [16250] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1431), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1429), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [16309] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1435), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1433), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [16368] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1439), 11, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1437), 40, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [16427] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1441), 1, + sym_identifier, + ACTIONS(1443), 1, + anon_sym_LPAREN, + ACTIONS(1445), 1, + anon_sym_RPAREN, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1451), 1, + anon_sym_PERCENT_LBRACE, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1166), 1, + sym_named_type, + STATE(1448), 1, + sym__cairo_0_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(1449), 2, + anon_sym_felt, + anon_sym_codeoffset, + STATE(1129), 5, + sym__non_identifier_type, + sym__cairo_0_builtin_type, + sym__cairo_0_pointer_type, + sym__cairo_0_tuple_type, + sym_hint, + STATE(1513), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [16513] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1283), 1, + anon_sym_POUND, + ACTIONS(1461), 1, + ts_builtin_sym_end, + ACTIONS(1468), 3, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + ACTIONS(1281), 8, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + ACTIONS(1466), 9, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1464), 24, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [16575] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1441), 1, + sym_identifier, + ACTIONS(1443), 1, + anon_sym_LPAREN, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1451), 1, + anon_sym_PERCENT_LBRACE, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1166), 1, + sym_named_type, + STATE(1293), 1, + sym__cairo_0_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(1449), 2, + anon_sym_felt, + anon_sym_codeoffset, + STATE(1129), 5, + sym__non_identifier_type, + sym__cairo_0_builtin_type, + sym__cairo_0_pointer_type, + sym__cairo_0_tuple_type, + sym_hint, + STATE(1572), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [16658] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(800), 14, + anon_sym_EQ, + anon_sym_COLON, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(802), 30, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_COLON_COLON, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [16710] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(978), 1, + anon_sym_POUND, + ACTIONS(1471), 1, + sym_identifier, + ACTIONS(1473), 1, + anon_sym_LPAREN, + ACTIONS(1475), 1, + anon_sym_RBRACE, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1611), 1, + sym__pattern, + STATE(1724), 1, + sym_last_match_arm, + STATE(1872), 1, + sym_match_pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(406), 2, + sym_match_arm, + aux_sym_match_block_repeat1, + STATE(502), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [16795] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(978), 1, + anon_sym_POUND, + ACTIONS(1471), 1, + sym_identifier, + ACTIONS(1473), 1, + anon_sym_LPAREN, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + ACTIONS(1487), 1, + anon_sym_RBRACE, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1611), 1, + sym__pattern, + STATE(1806), 1, + sym_last_match_arm, + STATE(1872), 1, + sym_match_pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(403), 2, + sym_match_arm, + aux_sym_match_block_repeat1, + STATE(502), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [16880] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(978), 1, + anon_sym_POUND, + ACTIONS(1471), 1, + sym_identifier, + ACTIONS(1473), 1, + anon_sym_LPAREN, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + ACTIONS(1489), 1, + anon_sym_RBRACE, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1611), 1, + sym__pattern, + STATE(1870), 1, + sym_last_match_arm, + STATE(1872), 1, + sym_match_pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(401), 2, + sym_match_arm, + aux_sym_match_block_repeat1, + STATE(502), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [16965] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(964), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(966), 29, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_COLON_COLON, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [17015] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1491), 1, + anon_sym_else, + STATE(488), 1, + sym__cairo_1_else_clause, + ACTIONS(636), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(638), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [17069] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1497), 1, + anon_sym_POUND, + STATE(398), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + ACTIONS(1495), 9, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1493), 30, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym__, + anon_sym_true, + anon_sym_false, + sym_self, + [17123] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(894), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(896), 29, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_COLON_COLON, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [17173] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1504), 1, + anon_sym_DOT, + STATE(400), 1, + aux_sym_dotted_name_repeat1, + ACTIONS(1502), 11, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1500), 29, + anon_sym_from, + anon_sym_as, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [17227] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(978), 1, + anon_sym_POUND, + ACTIONS(1471), 1, + sym_identifier, + ACTIONS(1473), 1, + anon_sym_LPAREN, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1611), 1, + sym__pattern, + STATE(1872), 1, + sym_match_pattern, + STATE(1885), 1, + sym_last_match_arm, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(422), 2, + sym_match_arm, + aux_sym_match_block_repeat1, + STATE(502), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [17309] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1507), 1, + anon_sym_LBRACE, + ACTIONS(1509), 1, + anon_sym_COLON_COLON, + STATE(448), 1, + sym_field_initializer_list, + ACTIONS(651), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(653), 26, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [17365] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(978), 1, + anon_sym_POUND, + ACTIONS(1471), 1, + sym_identifier, + ACTIONS(1473), 1, + anon_sym_LPAREN, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1611), 1, + sym__pattern, + STATE(1807), 1, + sym_last_match_arm, + STATE(1872), 1, + sym_match_pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(422), 2, + sym_match_arm, + aux_sym_match_block_repeat1, + STATE(502), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [17447] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1507), 1, + anon_sym_LBRACE, + ACTIONS(1511), 1, + anon_sym_COLON_COLON, + STATE(447), 1, + sym_field_initializer_list, + ACTIONS(642), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(644), 26, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [17503] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1517), 1, + anon_sym_DOT, + STATE(407), 1, + aux_sym_dotted_name_repeat1, + ACTIONS(1515), 11, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1513), 29, + anon_sym_from, + anon_sym_as, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [17557] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(978), 1, + anon_sym_POUND, + ACTIONS(1471), 1, + sym_identifier, + ACTIONS(1473), 1, + anon_sym_LPAREN, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1611), 1, + sym__pattern, + STATE(1746), 1, + sym_last_match_arm, + STATE(1872), 1, + sym_match_pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(422), 2, + sym_match_arm, + aux_sym_match_block_repeat1, + STATE(502), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [17639] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1517), 1, + anon_sym_DOT, + STATE(400), 1, + aux_sym_dotted_name_repeat1, + ACTIONS(1521), 11, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1519), 29, + anon_sym_from, + anon_sym_as, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [17693] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1523), 1, + anon_sym_DOT, + STATE(419), 1, + aux_sym_dotted_name_repeat1, + ACTIONS(1521), 11, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1519), 28, + anon_sym_from, + anon_sym_as, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [17746] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(748), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(750), 28, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_COLON_COLON, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [17795] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1525), 1, + anon_sym_COLON_COLON, + ACTIONS(642), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(644), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [17846] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(660), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(662), 28, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_else, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [17895] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(664), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(666), 28, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_else, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [17944] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1502), 12, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + anon_sym_DOT, + sym_number, + ACTIONS(1500), 29, + anon_sym_from, + anon_sym_as, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [17993] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1527), 1, + anon_sym_COLON_COLON, + ACTIONS(920), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(922), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [18044] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1529), 1, + anon_sym_COLON_COLON, + ACTIONS(732), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(734), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [18095] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(764), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(766), 28, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_COLON_COLON, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [18144] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(910), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(912), 28, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_COLON_COLON, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [18193] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(926), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(928), 28, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_COLON_COLON, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [18242] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1531), 1, + anon_sym_DOT, + STATE(419), 1, + aux_sym_dotted_name_repeat1, + ACTIONS(1502), 11, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1500), 28, + anon_sym_from, + anon_sym_as, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [18295] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1523), 1, + anon_sym_DOT, + STATE(408), 1, + aux_sym_dotted_name_repeat1, + ACTIONS(1515), 11, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1513), 28, + anon_sym_from, + anon_sym_as, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [18348] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1538), 1, + anon_sym_COMMA, + ACTIONS(1540), 1, + anon_sym_as, + STATE(497), 1, + aux_sym__import_list_repeat1, + ACTIONS(1536), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1534), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [18403] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1542), 1, + sym_identifier, + ACTIONS(1545), 1, + anon_sym_LPAREN, + ACTIONS(1548), 1, + sym_number, + ACTIONS(1551), 1, + anon_sym_COLON_COLON, + ACTIONS(1554), 1, + anon_sym_POUND, + ACTIONS(1560), 1, + anon_sym__, + ACTIONS(1563), 1, + sym_self, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1611), 1, + sym__pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(1923), 1, + sym_match_pattern, + STATE(422), 2, + sym_match_arm, + aux_sym_match_block_repeat1, + STATE(524), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1557), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [18482] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1566), 1, + anon_sym_COLON_COLON, + ACTIONS(642), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(644), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [18533] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1568), 1, + anon_sym_COLON_COLON, + ACTIONS(732), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(734), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [18584] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(956), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(958), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [18632] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(960), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(962), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [18680] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + ACTIONS(1574), 1, + anon_sym_LBRACE, + ACTIONS(1576), 1, + sym_number, + ACTIONS(1578), 1, + anon_sym_GT, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1585), 7, + sym_block, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + sym__literal, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [18754] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(850), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(852), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [18802] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(842), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(844), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [18850] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(796), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(798), 24, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_RBRACK, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [18904] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(756), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(758), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [18952] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + ACTIONS(1574), 1, + anon_sym_LBRACE, + ACTIONS(1576), 1, + sym_number, + ACTIONS(1586), 1, + anon_sym_GT, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1585), 7, + sym_block, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + sym__literal, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [19026] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1363), 10, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1361), 30, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym__, + anon_sym_true, + anon_sym_false, + sym_self, + [19074] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(744), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(746), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [19122] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(930), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(932), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [19170] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(886), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(888), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [19218] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(878), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(880), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [19266] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(882), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(884), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [19314] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(878), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(880), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [19362] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(870), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(872), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [19410] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(866), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(868), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [19458] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(824), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(826), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [19506] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(906), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(908), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [19554] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(846), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(848), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [19602] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(832), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(834), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [19650] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(768), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(770), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [19698] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(804), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(806), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [19746] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(816), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(818), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [19794] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(792), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(794), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [19842] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(642), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(644), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [19890] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(712), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(714), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [19938] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(858), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(860), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [19986] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + ACTIONS(1574), 1, + anon_sym_LBRACE, + ACTIONS(1576), 1, + sym_number, + ACTIONS(1588), 1, + anon_sym_GT, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1585), 7, + sym_block, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + sym__literal, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [20060] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(808), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(810), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [20108] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(828), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(830), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [20156] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(812), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(814), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [20204] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(838), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(840), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [20252] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(854), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(856), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [20300] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(890), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(892), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [20348] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(902), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(904), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [20396] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(940), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(942), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [20444] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(944), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(946), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [20492] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(948), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(950), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [20540] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(752), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(754), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [20588] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(740), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(742), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [20636] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(968), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(970), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [20684] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(874), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(876), 24, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_RBRACK, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [20738] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(704), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(706), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [20786] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(708), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(710), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [20834] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(934), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(936), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [20882] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(820), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(822), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [20930] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1502), 12, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + anon_sym_DOT, + sym_number, + ACTIONS(1500), 28, + anon_sym_from, + anon_sym_as, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [20978] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1590), 1, + anon_sym_COMMA, + ACTIONS(1592), 1, + anon_sym_as, + STATE(514), 1, + aux_sym__import_list_repeat1, + ACTIONS(1536), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1534), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [21032] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(716), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(718), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [21080] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1594), 1, + sym_identifier, + STATE(479), 1, + sym_dotted_name, + STATE(507), 1, + sym_aliased_import, + ACTIONS(1598), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1596), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + [21134] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(720), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(722), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [21182] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1604), 1, + anon_sym_COMMA, + STATE(477), 1, + aux_sym__import_list_repeat1, + ACTIONS(1602), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1600), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [21234] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1594), 1, + sym_identifier, + STATE(479), 1, + sym_dotted_name, + STATE(507), 1, + sym_aliased_import, + ACTIONS(1598), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1596), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + [21288] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1540), 1, + anon_sym_as, + ACTIONS(1609), 11, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1607), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [21338] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(724), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(726), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [21386] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1327), 10, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1325), 30, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym__, + anon_sym_true, + anon_sym_false, + sym_self, + [21434] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(952), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(954), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [21482] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + ACTIONS(1574), 1, + anon_sym_LBRACE, + ACTIONS(1576), 1, + sym_number, + ACTIONS(1611), 1, + anon_sym_GT, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1585), 7, + sym_block, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + sym__literal, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [21556] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(728), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(730), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [21604] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + ACTIONS(1574), 1, + anon_sym_LBRACE, + ACTIONS(1576), 1, + sym_number, + ACTIONS(1613), 1, + anon_sym_GT, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1585), 7, + sym_block, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + sym__literal, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [21678] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1538), 1, + anon_sym_COMMA, + STATE(498), 1, + aux_sym__import_list_repeat1, + ACTIONS(1536), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1534), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [21730] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(736), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(738), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [21778] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(760), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(762), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [21826] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(772), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(774), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [21874] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(776), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(778), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [21922] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(972), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(974), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [21970] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1171), 10, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1169), 30, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym__, + anon_sym_true, + anon_sym_false, + sym_self, + [22018] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1315), 10, + anon_sym_LPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1313), 30, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym__, + anon_sym_true, + anon_sym_false, + sym_self, + [22066] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(780), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(782), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [22114] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + ACTIONS(1574), 1, + anon_sym_LBRACE, + ACTIONS(1576), 1, + sym_number, + ACTIONS(1615), 1, + anon_sym_GT, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1585), 7, + sym_block, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + sym__literal, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [22188] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(784), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(786), 27, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [22236] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1621), 1, + anon_sym_COMMA, + STATE(477), 1, + aux_sym__import_list_repeat1, + ACTIONS(1619), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1617), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [22288] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1623), 1, + anon_sym_COMMA, + STATE(477), 1, + aux_sym__import_list_repeat1, + ACTIONS(1619), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1617), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [22340] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1594), 1, + sym_identifier, + STATE(479), 1, + sym_dotted_name, + STATE(507), 1, + sym_aliased_import, + ACTIONS(1627), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1625), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + [22394] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + ACTIONS(1574), 1, + anon_sym_LBRACE, + ACTIONS(1629), 1, + sym_number, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1474), 7, + sym_block, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + sym__literal, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [22465] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1507), 1, + anon_sym_LBRACE, + ACTIONS(1511), 1, + anon_sym_COLON_COLON, + ACTIONS(1631), 1, + anon_sym_COLON, + STATE(447), 1, + sym_field_initializer_list, + ACTIONS(642), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(644), 22, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [22520] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(978), 1, + anon_sym_POUND, + ACTIONS(1471), 1, + sym_identifier, + ACTIONS(1473), 1, + anon_sym_LPAREN, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1611), 1, + sym__pattern, + STATE(1884), 1, + sym_match_pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(398), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [22595] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + ACTIONS(1574), 1, + anon_sym_LBRACE, + ACTIONS(1576), 1, + sym_number, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1585), 7, + sym_block, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + sym__literal, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [22666] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + ACTIONS(1574), 1, + anon_sym_LBRACE, + ACTIONS(1633), 1, + sym_number, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1483), 7, + sym_block, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + sym__literal, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [22737] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1639), 1, + anon_sym_else, + ACTIONS(1637), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1635), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [22786] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1507), 1, + anon_sym_LBRACE, + ACTIONS(1511), 1, + anon_sym_COLON_COLON, + ACTIONS(1641), 1, + anon_sym_COLON, + STATE(447), 1, + sym_field_initializer_list, + ACTIONS(642), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(644), 22, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [22841] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1609), 11, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1607), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [22888] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1645), 11, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1643), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [22935] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1590), 1, + anon_sym_COMMA, + STATE(516), 1, + aux_sym__import_list_repeat1, + ACTIONS(1536), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1534), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [22986] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(874), 10, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(876), 23, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_RBRACK, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [23045] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(874), 12, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(876), 23, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_RBRACK, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [23100] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(874), 1, + anon_sym_EQ, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(876), 18, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_PLUS_EQ, + anon_sym_RBRACK, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_PIPE_PIPE, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [23171] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1060), 10, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_AT, + anon_sym_LBRACE, + anon_sym_STAR, + sym_number, + anon_sym_COLON_COLON, + anon_sym_BANG, + anon_sym_TILDE, + sym__cairo_1_short_string, + ACTIONS(1665), 29, + anon_sym_if, + anon_sym_return, + anon_sym_DASH, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym_match, + anon_sym_loop, + anon_sym_true, + anon_sym_false, + sym_self, + [23218] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1667), 1, + anon_sym_COMMA, + STATE(534), 1, + aux_sym__import_list_repeat1, + ACTIONS(1619), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1617), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [23269] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(874), 1, + anon_sym_EQ, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(876), 19, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_PLUS_EQ, + anon_sym_RBRACK, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [23338] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1669), 1, + anon_sym_COMMA, + STATE(534), 1, + aux_sym__import_list_repeat1, + ACTIONS(1619), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1617), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [23389] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1671), 1, + sym_identifier, + STATE(531), 1, + sym_dotted_name, + STATE(594), 1, + sym_aliased_import, + ACTIONS(1627), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1625), 26, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + [23442] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1507), 1, + anon_sym_LBRACE, + ACTIONS(1511), 1, + anon_sym_COLON_COLON, + ACTIONS(1673), 1, + anon_sym_COLON, + STATE(447), 1, + sym_field_initializer_list, + ACTIONS(642), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(644), 22, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [23497] = 11, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(874), 5, + anon_sym_EQ, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(876), 23, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_RBRACK, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [23560] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1473), 1, + anon_sym_LPAREN, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + ACTIONS(1675), 1, + sym_identifier, + ACTIONS(1677), 1, + anon_sym_RPAREN, + ACTIONS(1679), 1, + anon_sym_COMMA, + ACTIONS(1681), 1, + anon_sym_local, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1532), 1, + sym_typed_identifier, + STATE(1539), 1, + sym__pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [23637] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(874), 11, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(876), 23, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_RBRACK, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [23694] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1683), 1, + sym_identifier, + STATE(539), 1, + aux_sym_builtin_directive_repeat1, + ACTIONS(1687), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1685), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + [23745] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(874), 8, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_LT2, + anon_sym_PERCENT, + ACTIONS(876), 23, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_RBRACK, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [23806] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(978), 1, + anon_sym_POUND, + ACTIONS(1471), 1, + sym_identifier, + ACTIONS(1473), 1, + anon_sym_LPAREN, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1611), 1, + sym__pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(1933), 1, + sym_match_pattern, + STATE(398), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [23881] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(898), 1, + anon_sym_EQ, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(900), 17, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_PLUS_EQ, + anon_sym_RBRACK, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [23954] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(874), 3, + anon_sym_EQ, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(876), 23, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_RBRACK, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [24019] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1507), 1, + anon_sym_LBRACE, + ACTIONS(1511), 1, + anon_sym_COLON_COLON, + ACTIONS(1691), 1, + anon_sym_COLON, + STATE(447), 1, + sym_field_initializer_list, + ACTIONS(642), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(644), 22, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [24074] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(862), 1, + anon_sym_EQ, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(864), 17, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_PLUS_EQ, + anon_sym_RBRACK, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [24147] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1507), 1, + anon_sym_LBRACE, + ACTIONS(1511), 1, + anon_sym_COLON_COLON, + ACTIONS(1693), 1, + anon_sym_COLON, + STATE(447), 1, + sym_field_initializer_list, + ACTIONS(642), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(644), 22, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [24202] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1507), 1, + anon_sym_LBRACE, + ACTIONS(1511), 1, + anon_sym_COLON_COLON, + ACTIONS(1695), 1, + anon_sym_COLON, + STATE(447), 1, + sym_field_initializer_list, + ACTIONS(642), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(644), 22, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [24257] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1592), 1, + anon_sym_as, + ACTIONS(1609), 11, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1607), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [24306] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + ACTIONS(1574), 1, + anon_sym_LBRACE, + ACTIONS(1697), 1, + sym_number, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1534), 7, + sym_block, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + sym__literal, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [24377] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1671), 1, + sym_identifier, + STATE(531), 1, + sym_dotted_name, + STATE(594), 1, + sym_aliased_import, + ACTIONS(1598), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1596), 26, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + [24430] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1699), 1, + anon_sym_COMMA, + STATE(534), 1, + aux_sym__import_list_repeat1, + ACTIONS(1602), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1600), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [24481] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + ACTIONS(1681), 1, + anon_sym_local, + ACTIONS(1702), 1, + sym_identifier, + ACTIONS(1704), 1, + anon_sym_LPAREN, + ACTIONS(1706), 1, + anon_sym_mut, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1454), 1, + sym__pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(1893), 2, + sym__ref_binding, + sym_typed_identifier, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [24556] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1507), 1, + anon_sym_LBRACE, + ACTIONS(1511), 1, + anon_sym_COLON_COLON, + ACTIONS(1708), 1, + anon_sym_COLON, + STATE(447), 1, + sym_field_initializer_list, + ACTIONS(642), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(644), 22, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [24611] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1507), 1, + anon_sym_LBRACE, + ACTIONS(1511), 1, + anon_sym_COLON_COLON, + ACTIONS(1710), 1, + anon_sym_COLON, + STATE(447), 1, + sym_field_initializer_list, + ACTIONS(642), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(644), 22, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [24666] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1671), 1, + sym_identifier, + STATE(531), 1, + sym_dotted_name, + STATE(594), 1, + sym_aliased_import, + ACTIONS(1598), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1596), 26, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + [24719] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1712), 1, + sym_identifier, + STATE(539), 1, + aux_sym_builtin_directive_repeat1, + ACTIONS(1717), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1715), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + [24770] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(674), 6, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_RBRACK, + anon_sym_SEMI, + anon_sym_EQ_GT, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [24847] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(790), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_RBRACK, + anon_sym_SEMI, + anon_sym_EQ_GT, + anon_sym_QMARK, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [24922] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1729), 1, + anon_sym_else, + ACTIONS(1727), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1725), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [24971] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1733), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1731), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [25017] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1737), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1735), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [25063] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1741), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1739), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [25109] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1743), 1, + anon_sym_else, + ACTIONS(1727), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1725), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [25157] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1747), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1745), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [25203] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1751), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1749), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [25249] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1755), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1753), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [25295] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1759), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1757), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [25341] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1763), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1761), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [25387] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1767), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1765), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [25433] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1771), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1769), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [25479] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1775), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1773), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [25525] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1779), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1777), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [25571] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1783), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1781), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [25617] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1787), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1785), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [25663] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1791), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1789), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [25709] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1795), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1793), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [25755] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1466), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1464), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [25801] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1799), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1797), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [25847] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1803), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1801), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [25893] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1807), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1805), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [25939] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1811), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1809), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [25985] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1815), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1813), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [26031] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1819), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1817), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [26077] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1823), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1821), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [26123] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1827), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1825), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [26169] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1831), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1829), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [26215] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1835), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1833), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [26261] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1839), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1837), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [26307] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1843), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1841), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [26353] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1847), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1845), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [26399] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1851), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1849), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [26445] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1855), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1853), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [26491] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1859), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1857), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [26537] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1863), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1861), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [26583] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1867), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1865), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [26629] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1871), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1869), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [26675] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1875), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1873), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [26721] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1879), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1877), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [26767] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1883), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1881), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [26813] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1887), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1885), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [26859] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1889), 1, + sym_identifier, + STATE(584), 1, + aux_sym_builtin_directive_repeat1, + ACTIONS(1717), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1715), 26, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + [26909] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1894), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1892), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [26955] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1896), 1, + sym_identifier, + STATE(584), 1, + aux_sym_builtin_directive_repeat1, + ACTIONS(1687), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1685), 26, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + [27005] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1898), 1, + anon_sym_else, + ACTIONS(1637), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1635), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [27053] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1902), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1900), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [27099] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1906), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1904), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [27145] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1910), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1908), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [27191] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1914), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1912), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [27237] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + ACTIONS(1918), 1, + anon_sym_EQ, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(1916), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + STATE(1515), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [27307] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1922), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1920), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [27353] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1609), 11, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1607), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [27399] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1926), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1924), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [27445] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1930), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1928), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [27491] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1934), 10, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_RBRACE, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1932), 28, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_end, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [27537] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1645), 11, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1643), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [27583] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1914), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1912), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [27628] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1851), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1849), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [27673] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1875), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1873), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [27718] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1883), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1881), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [27763] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1747), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1745), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [27808] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1807), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1805), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [27853] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1471), 1, + sym_identifier, + ACTIONS(1473), 1, + anon_sym_LPAREN, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + ACTIONS(1936), 1, + anon_sym_RPAREN, + ACTIONS(1938), 1, + anon_sym_COMMA, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1574), 1, + sym__pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [27924] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1471), 1, + sym_identifier, + ACTIONS(1473), 1, + anon_sym_LPAREN, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + ACTIONS(1940), 1, + anon_sym_RPAREN, + ACTIONS(1942), 1, + anon_sym_COMMA, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1574), 1, + sym__pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [27995] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1471), 1, + sym_identifier, + ACTIONS(1473), 1, + anon_sym_LPAREN, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + ACTIONS(1944), 1, + anon_sym_RPAREN, + ACTIONS(1946), 1, + anon_sym_COMMA, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1574), 1, + sym__pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [28066] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1471), 1, + sym_identifier, + ACTIONS(1473), 1, + anon_sym_LPAREN, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + ACTIONS(1679), 1, + anon_sym_COMMA, + ACTIONS(1948), 1, + anon_sym_RPAREN, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1539), 1, + sym__pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [28137] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1779), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1777), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [28182] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1934), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1932), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [28227] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1767), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1765), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [28272] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1741), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1739), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [28317] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1755), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1753), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [28362] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1867), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1865), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [28407] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1906), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1904), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [28452] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1839), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1837), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [28497] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1795), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1793), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [28542] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1871), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1869), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [28587] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1783), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1781), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [28632] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1763), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1761), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [28677] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1815), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1813), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [28722] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1930), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1928), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [28767] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1751), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1749), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [28812] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1799), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1797), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [28857] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1803), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1801), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [28902] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1827), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1825), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [28947] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1823), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1821), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [28992] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1771), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1769), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [29037] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1471), 1, + sym_identifier, + ACTIONS(1473), 1, + anon_sym_LPAREN, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + ACTIONS(1950), 1, + anon_sym_RPAREN, + ACTIONS(1952), 1, + anon_sym_COMMA, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1381), 1, + sym__pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [29108] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1819), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1817), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [29153] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1471), 1, + sym_identifier, + ACTIONS(1473), 1, + anon_sym_LPAREN, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + ACTIONS(1954), 1, + anon_sym_RPAREN, + ACTIONS(1956), 1, + anon_sym_COMMA, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1574), 1, + sym__pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [29224] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1855), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1853), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [29269] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1847), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1845), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [29314] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1863), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1861), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [29359] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1759), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1757), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [29404] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1879), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1877), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [29449] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1887), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1885), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [29494] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1466), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1464), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [29539] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1791), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1789), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [29584] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1902), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1900), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [29629] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1843), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1841), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [29674] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1835), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1833), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [29719] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1775), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1773), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [29764] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1831), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1829), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [29809] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1859), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1857), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [29854] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1910), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1908), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [29899] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1894), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1892), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [29944] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1922), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1920), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [29989] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1737), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1735), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [30034] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1787), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1785), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [30079] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1926), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1924), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [30124] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1733), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1731), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [30169] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1811), 10, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_PERCENTbuiltins, + anon_sym_PERCENTlang, + anon_sym_AT, + anon_sym_AMP, + sym_short_string, + anon_sym_PERCENT_LBRACE, + anon_sym_LBRACK, + sym_number, + ACTIONS(1809), 27, + anon_sym_from, + anon_sym_using, + anon_sym_namespace, + anon_sym_struct, + anon_sym_func, + anon_sym_alloc_locals, + anon_sym_assert, + anon_sym_static_assert, + anon_sym_let, + anon_sym_const, + anon_sym_local, + anon_sym_tempvar, + anon_sym_ap, + anon_sym_jmp, + anon_sym_if, + sym_inst_ret, + anon_sym_dw, + anon_sym_with_attr, + anon_sym_with, + anon_sym_return, + anon_sym_DASH, + anon_sym_new, + anon_sym_nondet, + anon_sym_fp, + anon_sym_cast, + anon_sym_call, + sym_identifier, + [30214] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1471), 1, + sym_identifier, + ACTIONS(1473), 1, + anon_sym_LPAREN, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + ACTIONS(1706), 1, + anon_sym_mut, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1454), 1, + sym__pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [30282] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + ACTIONS(1958), 1, + anon_sym_RPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1513), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [30348] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1511), 1, + anon_sym_COLON_COLON, + ACTIONS(1960), 1, + anon_sym_LBRACE, + STATE(447), 1, + sym_field_initializer_list, + ACTIONS(642), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(644), 20, + anon_sym_LPAREN, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [30398] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1509), 1, + anon_sym_COLON_COLON, + ACTIONS(1963), 1, + anon_sym_LBRACE, + STATE(448), 1, + sym_field_initializer_list, + ACTIONS(651), 13, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_PIPE, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(653), 20, + anon_sym_LPAREN, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [30448] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(1966), 1, + anon_sym_RPAREN, + ACTIONS(1968), 1, + anon_sym_COMMA, + STATE(1441), 1, + aux_sym__cairo_1_call_expression_repeat1, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [30526] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1471), 1, + sym_identifier, + ACTIONS(1473), 1, + anon_sym_LPAREN, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + ACTIONS(1970), 1, + anon_sym_mut, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1553), 1, + sym__pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [30594] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + ACTIONS(1972), 1, + anon_sym_RPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1586), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [30660] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1018), 1, + anon_sym_RPAREN, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(1974), 1, + anon_sym_COMMA, + STATE(1440), 1, + aux_sym__cairo_1_call_expression_repeat1, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [30738] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1014), 1, + anon_sym_RPAREN, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(1976), 1, + anon_sym_COMMA, + STATE(1449), 1, + aux_sym__cairo_1_call_expression_repeat1, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [30816] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(1978), 1, + anon_sym_RPAREN, + ACTIONS(1980), 1, + anon_sym_COMMA, + STATE(1439), 1, + aux_sym__cairo_1_call_expression_repeat1, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [30894] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(1982), 1, + anon_sym_RPAREN, + ACTIONS(1984), 1, + anon_sym_COMMA, + STATE(1491), 1, + aux_sym__cairo_1_call_expression_repeat1, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [30972] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1121), 1, + anon_sym_RPAREN, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(1986), 1, + anon_sym_COMMA, + STATE(1445), 1, + aux_sym_attribute_arguments_repeat1, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [31050] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(1988), 1, + anon_sym_RPAREN, + ACTIONS(1990), 1, + anon_sym_COMMA, + STATE(1486), 1, + aux_sym__cairo_1_call_expression_repeat1, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [31128] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(992), 1, + anon_sym_RPAREN, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(1992), 1, + anon_sym_COMMA, + STATE(1382), 1, + aux_sym__cairo_1_call_expression_repeat1, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [31206] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(984), 1, + anon_sym_RPAREN, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(1994), 1, + anon_sym_COMMA, + STATE(1465), 1, + aux_sym__cairo_1_call_expression_repeat1, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [31284] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(1996), 1, + anon_sym_RPAREN, + ACTIONS(1998), 1, + anon_sym_COMMA, + STATE(1516), 1, + aux_sym_attribute_arguments_repeat1, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [31362] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + ACTIONS(2000), 1, + anon_sym_RPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1586), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [31428] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2002), 1, + anon_sym_RPAREN, + ACTIONS(2004), 1, + anon_sym_COMMA, + STATE(1422), 1, + aux_sym__cairo_1_call_expression_repeat1, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [31506] = 20, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2006), 1, + anon_sym_RPAREN, + ACTIONS(2008), 1, + anon_sym_COMMA, + STATE(1348), 1, + aux_sym__cairo_1_call_expression_repeat1, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [31584] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2010), 1, + anon_sym_RPAREN, + ACTIONS(2012), 1, + anon_sym_COMMA, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [31659] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1695), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [31722] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2014), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [31795] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2016), 1, + anon_sym_COMMA, + ACTIONS(2018), 1, + anon_sym_RBRACE, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [31870] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1304), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [31933] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1283), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [31996] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1458), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [32059] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1723), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [32122] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2020), 1, + anon_sym_EQ, + ACTIONS(2022), 1, + anon_sym_LBRACE, + ACTIONS(2030), 1, + anon_sym_AMP, + ACTIONS(2036), 1, + anon_sym_AMP_AMP, + ACTIONS(2038), 1, + anon_sym_PIPE_PIPE, + ACTIONS(2040), 1, + anon_sym_PIPE, + ACTIONS(2042), 1, + anon_sym_CARET, + STATE(304), 1, + sym_match_block, + ACTIONS(2032), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2034), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(2044), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2028), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(2024), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(2026), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [32197] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1046), 1, + anon_sym_RPAREN, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2046), 1, + anon_sym_COMMA, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [32272] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1285), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [32335] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1052), 1, + anon_sym_RPAREN, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2046), 1, + anon_sym_COMMA, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [32410] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1471), 1, + sym_identifier, + ACTIONS(1473), 1, + anon_sym_LPAREN, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1574), 1, + sym__pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [32475] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1586), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [32538] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(101), 1, + anon_sym_LBRACE, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2020), 1, + anon_sym_EQ, + ACTIONS(2030), 1, + anon_sym_AMP, + ACTIONS(2036), 1, + anon_sym_AMP_AMP, + ACTIONS(2038), 1, + anon_sym_PIPE_PIPE, + ACTIONS(2040), 1, + anon_sym_PIPE, + ACTIONS(2042), 1, + anon_sym_CARET, + STATE(87), 1, + sym_block, + ACTIONS(2032), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2034), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(2044), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2028), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(2024), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(2026), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [32613] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1282), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [32676] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1471), 1, + sym_identifier, + ACTIONS(1473), 1, + anon_sym_LPAREN, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1607), 1, + sym__pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [32741] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1790), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [32804] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2048), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [32877] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2050), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [32950] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2052), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [33023] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1326), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [33086] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1485), 1, + sym_self, + ACTIONS(1572), 1, + anon_sym_LPAREN, + ACTIONS(2054), 1, + sym_identifier, + ACTIONS(2056), 1, + anon_sym_AT, + ACTIONS(2058), 1, + anon_sym_impl, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1823), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1864), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(2060), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [33149] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1280), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [33212] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1278), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [33275] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2062), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [33348] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2064), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [33421] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1389), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [33484] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1485), 1, + sym_self, + ACTIONS(1572), 1, + anon_sym_LPAREN, + ACTIONS(2054), 1, + sym_identifier, + ACTIONS(2056), 1, + anon_sym_AT, + ACTIONS(2058), 1, + anon_sym_impl, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1823), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1930), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(2060), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [33547] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1256), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [33610] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1316), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [33673] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2066), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [33746] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2068), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [33819] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2046), 1, + anon_sym_COMMA, + ACTIONS(2070), 1, + anon_sym_RPAREN, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [33894] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1299), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [33957] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1420), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [34020] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1317), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [34083] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1471), 1, + sym_identifier, + ACTIONS(1473), 1, + anon_sym_LPAREN, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1625), 1, + sym__pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [34148] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1050), 1, + anon_sym_RPAREN, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2046), 1, + anon_sym_COMMA, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [34223] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1438), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [34286] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1305), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [34349] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1588), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [34412] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1714), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [34475] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1613), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [34538] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1471), 1, + sym_identifier, + ACTIONS(1473), 1, + anon_sym_LPAREN, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1547), 1, + sym__pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [34603] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1325), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [34666] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1471), 1, + sym_identifier, + ACTIONS(1473), 1, + anon_sym_LPAREN, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1551), 1, + sym__pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [34731] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1331), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [34794] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1655), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [34857] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1274), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [34920] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1131), 1, + anon_sym_LBRACE, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2020), 1, + anon_sym_EQ, + ACTIONS(2030), 1, + anon_sym_AMP, + ACTIONS(2036), 1, + anon_sym_AMP_AMP, + ACTIONS(2038), 1, + anon_sym_PIPE_PIPE, + ACTIONS(2040), 1, + anon_sym_PIPE, + ACTIONS(2042), 1, + anon_sym_CARET, + STATE(214), 1, + sym_block, + ACTIONS(2032), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2034), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(2044), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2028), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(2024), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(2026), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [34995] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1485), 1, + sym_self, + ACTIONS(1572), 1, + anon_sym_LPAREN, + ACTIONS(2054), 1, + sym_identifier, + ACTIONS(2056), 1, + anon_sym_AT, + ACTIONS(2058), 1, + anon_sym_impl, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1823), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1093), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(2060), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [35058] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1295), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [35121] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1622), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [35184] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1620), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [35247] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2072), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [35320] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1471), 1, + sym_identifier, + ACTIONS(1473), 1, + anon_sym_LPAREN, + ACTIONS(1477), 1, + sym_number, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1483), 1, + anon_sym__, + ACTIONS(1485), 1, + sym_self, + STATE(1080), 1, + sym_scoped_identifier, + STATE(1315), 1, + sym_scoped_type_identifier, + STATE(1580), 1, + sym__pattern, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1892), 1, + sym_generic_type, + STATE(1104), 4, + sym_tuple_pattern, + sym_tuple_struct_pattern, + sym_struct_pattern, + sym__literal_pattern, + ACTIONS(1481), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [35385] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2074), 1, + anon_sym_COMMA, + ACTIONS(2076), 1, + anon_sym_RBRACE, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [35460] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2078), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [35533] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2020), 1, + anon_sym_EQ, + ACTIONS(2030), 1, + anon_sym_AMP, + ACTIONS(2036), 1, + anon_sym_AMP_AMP, + ACTIONS(2038), 1, + anon_sym_PIPE_PIPE, + ACTIONS(2040), 1, + anon_sym_PIPE, + ACTIONS(2042), 1, + anon_sym_CARET, + ACTIONS(2080), 1, + anon_sym_LBRACE, + STATE(451), 1, + sym_match_block, + ACTIONS(2032), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2034), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(2044), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2028), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(2024), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(2026), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [35608] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1048), 1, + anon_sym_RPAREN, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2046), 1, + anon_sym_COMMA, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [35683] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1621), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [35746] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1489), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [35809] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1775), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [35872] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1086), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [35935] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1754), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [35998] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1461), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [36061] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2082), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [36134] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2084), 1, + anon_sym_RPAREN, + ACTIONS(2086), 1, + anon_sym_COMMA, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [36209] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2020), 1, + anon_sym_EQ, + ACTIONS(2030), 1, + anon_sym_AMP, + ACTIONS(2036), 1, + anon_sym_AMP_AMP, + ACTIONS(2038), 1, + anon_sym_PIPE_PIPE, + ACTIONS(2040), 1, + anon_sym_PIPE, + ACTIONS(2042), 1, + anon_sym_CARET, + STATE(397), 1, + sym_block, + ACTIONS(2032), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2034), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(2044), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2028), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(2024), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(2026), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [36284] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1572), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [36347] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2088), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [36420] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2046), 1, + anon_sym_COMMA, + ACTIONS(2090), 1, + anon_sym_RPAREN, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [36495] = 19, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2020), 1, + anon_sym_EQ, + ACTIONS(2030), 1, + anon_sym_AMP, + ACTIONS(2036), 1, + anon_sym_AMP_AMP, + ACTIONS(2038), 1, + anon_sym_PIPE_PIPE, + ACTIONS(2040), 1, + anon_sym_PIPE, + ACTIONS(2042), 1, + anon_sym_CARET, + ACTIONS(2092), 1, + anon_sym_LBRACE, + STATE(97), 1, + sym_match_block, + ACTIONS(2032), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2034), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(2044), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2028), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(2024), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(2026), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [36570] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1447), 1, + anon_sym_AT, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(1459), 1, + sym_self, + ACTIONS(1570), 1, + sym_identifier, + ACTIONS(1572), 1, + anon_sym_LPAREN, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1093), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(1457), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [36633] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1479), 1, + anon_sym_COLON_COLON, + ACTIONS(1485), 1, + sym_self, + ACTIONS(1572), 1, + anon_sym_LPAREN, + ACTIONS(2054), 1, + sym_identifier, + ACTIONS(2056), 1, + anon_sym_AT, + ACTIONS(2058), 1, + anon_sym_impl, + STATE(1038), 1, + sym_scoped_type_identifier, + STATE(1076), 1, + sym_generic_type, + STATE(1823), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1086), 5, + sym__cairo_1_type, + sym_at_type, + sym__cairo_1_tuple_type, + sym_unit_type, + sym_abstract_type, + ACTIONS(2060), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [36696] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(862), 1, + anon_sym_EQ, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(2030), 1, + anon_sym_AMP, + ACTIONS(2036), 1, + anon_sym_AMP_AMP, + ACTIONS(2038), 1, + anon_sym_PIPE_PIPE, + ACTIONS(2040), 1, + anon_sym_PIPE, + ACTIONS(2042), 1, + anon_sym_CARET, + ACTIONS(2032), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2034), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(2044), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2028), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(2024), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(864), 12, + anon_sym_LBRACE, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [36764] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(874), 1, + anon_sym_EQ, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(2030), 1, + anon_sym_AMP, + ACTIONS(2036), 1, + anon_sym_AMP_AMP, + ACTIONS(2040), 1, + anon_sym_PIPE, + ACTIONS(2042), 1, + anon_sym_CARET, + ACTIONS(2032), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2034), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(2044), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2028), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(2024), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(876), 13, + anon_sym_LBRACE, + anon_sym_PLUS_EQ, + anon_sym_PIPE_PIPE, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [36830] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2094), 1, + anon_sym_SEMI, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [36902] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2096), 1, + anon_sym_SEMI, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [36974] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2098), 1, + anon_sym_SEMI, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [37046] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2100), 1, + anon_sym_SEMI, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [37118] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2102), 1, + anon_sym_RBRACK, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [37190] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2104), 1, + anon_sym_SEMI, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [37262] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2106), 1, + anon_sym_RBRACK, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [37334] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2108), 1, + anon_sym_COMMA, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [37406] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2110), 1, + anon_sym_SEMI, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [37478] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(674), 1, + anon_sym_LBRACE, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2020), 1, + anon_sym_EQ, + ACTIONS(2030), 1, + anon_sym_AMP, + ACTIONS(2036), 1, + anon_sym_AMP_AMP, + ACTIONS(2038), 1, + anon_sym_PIPE_PIPE, + ACTIONS(2040), 1, + anon_sym_PIPE, + ACTIONS(2042), 1, + anon_sym_CARET, + ACTIONS(2032), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2034), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(2044), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2028), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(2024), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(2026), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [37550] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2112), 1, + anon_sym_COMMA, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [37622] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(2020), 1, + anon_sym_EQ, + ACTIONS(2030), 1, + anon_sym_AMP, + ACTIONS(2036), 1, + anon_sym_AMP_AMP, + ACTIONS(2038), 1, + anon_sym_PIPE_PIPE, + ACTIONS(2040), 1, + anon_sym_PIPE, + ACTIONS(2042), 1, + anon_sym_CARET, + ACTIONS(790), 2, + anon_sym_LBRACE, + anon_sym_QMARK, + ACTIONS(2032), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2034), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(2044), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2028), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(2024), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(2026), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [37692] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(2030), 1, + anon_sym_AMP, + ACTIONS(2040), 1, + anon_sym_PIPE, + ACTIONS(2042), 1, + anon_sym_CARET, + ACTIONS(2032), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2044), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(874), 3, + anon_sym_EQ, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(2028), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(876), 18, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [37752] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(2030), 1, + anon_sym_AMP, + ACTIONS(2040), 1, + anon_sym_PIPE, + ACTIONS(2042), 1, + anon_sym_CARET, + ACTIONS(874), 10, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(876), 18, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [37806] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2114), 1, + anon_sym_SEMI, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [37878] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2046), 1, + anon_sym_COMMA, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [37950] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(2040), 1, + anon_sym_PIPE, + ACTIONS(874), 12, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_CARET, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(876), 18, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [38000] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2116), 1, + anon_sym_SEMI, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [38072] = 16, + ACTIONS(3), 1, + sym_comment, + ACTIONS(898), 1, + anon_sym_EQ, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(2030), 1, + anon_sym_AMP, + ACTIONS(2036), 1, + anon_sym_AMP_AMP, + ACTIONS(2038), 1, + anon_sym_PIPE_PIPE, + ACTIONS(2040), 1, + anon_sym_PIPE, + ACTIONS(2042), 1, + anon_sym_CARET, + ACTIONS(2032), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2034), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(2044), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2028), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(2024), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(900), 12, + anon_sym_LBRACE, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [38140] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(874), 1, + anon_sym_EQ, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(2030), 1, + anon_sym_AMP, + ACTIONS(2040), 1, + anon_sym_PIPE, + ACTIONS(2042), 1, + anon_sym_CARET, + ACTIONS(2032), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2034), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(2044), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2028), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(2024), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(876), 14, + anon_sym_LBRACE, + anon_sym_PLUS_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [38204] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2118), 1, + anon_sym_SEMI, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [38276] = 11, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(2030), 1, + anon_sym_AMP, + ACTIONS(2040), 1, + anon_sym_PIPE, + ACTIONS(2042), 1, + anon_sym_CARET, + ACTIONS(2044), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(2028), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(874), 5, + anon_sym_EQ, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(876), 18, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [38334] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2120), 1, + anon_sym_COMMA, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [38406] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(2040), 1, + anon_sym_PIPE, + ACTIONS(2042), 1, + anon_sym_CARET, + ACTIONS(874), 11, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_AMP, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_LT2, + anon_sym_LT_LT, + anon_sym_GT_GT, + anon_sym_PERCENT, + ACTIONS(876), 18, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [38458] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2122), 1, + anon_sym_EQ_GT, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [38530] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2124), 1, + anon_sym_SEMI, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [38602] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(2030), 1, + anon_sym_AMP, + ACTIONS(2040), 1, + anon_sym_PIPE, + ACTIONS(2042), 1, + anon_sym_CARET, + ACTIONS(2044), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(874), 8, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_GT, + anon_sym_LT2, + anon_sym_PERCENT, + ACTIONS(876), 18, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_PLUS_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + anon_sym_QMARK, + [38658] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1580), 1, + anon_sym_LPAREN, + ACTIONS(1582), 1, + anon_sym_LBRACK, + ACTIONS(1584), 1, + anon_sym_DOT, + ACTIONS(1647), 1, + anon_sym_AMP, + ACTIONS(1649), 1, + anon_sym_PIPE, + ACTIONS(1651), 1, + anon_sym_CARET, + ACTIONS(1661), 1, + anon_sym_AMP_AMP, + ACTIONS(1689), 1, + anon_sym_PIPE_PIPE, + ACTIONS(1719), 1, + anon_sym_EQ, + ACTIONS(1723), 1, + anon_sym_QMARK, + ACTIONS(2126), 1, + anon_sym_COMMA, + ACTIONS(1657), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(1659), 2, + anon_sym_GT, + anon_sym_LT2, + ACTIONS(1663), 2, + anon_sym_LT_LT, + anon_sym_GT_GT, + ACTIONS(1655), 3, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(1653), 4, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_LT_EQ, + anon_sym_GT_EQ, + ACTIONS(1721), 10, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_STAR_EQ, + anon_sym_SLASH_EQ, + anon_sym_PERCENT_EQ, + anon_sym_AMP_EQ, + anon_sym_PIPE_EQ, + anon_sym_CARET_EQ, + anon_sym_LT_LT_EQ, + anon_sym_GT_GT_EQ, + [38730] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2128), 1, + sym_identifier, + ACTIONS(2130), 1, + anon_sym_LBRACE, + ACTIONS(2132), 1, + anon_sym_RBRACE, + ACTIONS(2134), 1, + anon_sym_COLON_COLON, + ACTIONS(2138), 1, + sym_self, + STATE(1204), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1605), 4, + sym__use_clause, + sym_scoped_use_list, + sym_use_list, + sym_use_as_clause, + ACTIONS(2136), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [38783] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2128), 1, + sym_identifier, + ACTIONS(2130), 1, + anon_sym_LBRACE, + ACTIONS(2134), 1, + anon_sym_COLON_COLON, + ACTIONS(2138), 1, + sym_self, + ACTIONS(2140), 1, + anon_sym_RBRACE, + STATE(1204), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1605), 4, + sym__use_clause, + sym_scoped_use_list, + sym_use_list, + sym_use_as_clause, + ACTIONS(2136), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [38836] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2128), 1, + sym_identifier, + ACTIONS(2130), 1, + anon_sym_LBRACE, + ACTIONS(2134), 1, + anon_sym_COLON_COLON, + ACTIONS(2138), 1, + sym_self, + STATE(1204), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1814), 4, + sym__use_clause, + sym_scoped_use_list, + sym_use_list, + sym_use_as_clause, + ACTIONS(2136), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [38886] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2128), 1, + sym_identifier, + ACTIONS(2130), 1, + anon_sym_LBRACE, + ACTIONS(2134), 1, + anon_sym_COLON_COLON, + ACTIONS(2138), 1, + sym_self, + STATE(1204), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1874), 4, + sym__use_clause, + sym_scoped_use_list, + sym_use_list, + sym_use_as_clause, + ACTIONS(2136), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [38936] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2144), 1, + anon_sym_struct, + ACTIONS(2147), 1, + anon_sym_let, + ACTIONS(2150), 1, + anon_sym_const, + ACTIONS(2153), 1, + anon_sym_use, + ACTIONS(2156), 1, + anon_sym_extern, + ACTIONS(2159), 1, + anon_sym_type, + ACTIONS(2162), 1, + anon_sym_fn, + ACTIONS(2165), 1, + anon_sym_POUND, + ACTIONS(2168), 1, + anon_sym_mod, + ACTIONS(2171), 1, + anon_sym_enum, + ACTIONS(2174), 1, + anon_sym_impl, + ACTIONS(2177), 1, + anon_sym_trait, + STATE(1000), 1, + sym__cairo_1_function_signature, + STATE(1001), 1, + sym__cairo_1_function_definition, + ACTIONS(2142), 2, + ts_builtin_sym_end, + anon_sym_RBRACE, + STATE(783), 14, + sym__cairo_1_statement, + sym_use_declaration, + sym_extern_type_statement, + sym_extern_function_statement, + sym_attribute_item, + sym_mod_item, + sym_struct_item, + sym_enum_item, + sym_const_item, + sym_type_item, + sym_impl_item, + sym_trait_item, + sym_let_declaration, + aux_sym_cairo_1_file_repeat1, + [39002] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2128), 1, + sym_identifier, + ACTIONS(2130), 1, + anon_sym_LBRACE, + ACTIONS(2134), 1, + anon_sym_COLON_COLON, + ACTIONS(2138), 1, + sym_self, + STATE(1204), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1562), 4, + sym__use_clause, + sym_scoped_use_list, + sym_use_list, + sym_use_as_clause, + ACTIONS(2136), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [39052] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2128), 1, + sym_identifier, + ACTIONS(2130), 1, + anon_sym_LBRACE, + ACTIONS(2134), 1, + anon_sym_COLON_COLON, + ACTIONS(2138), 1, + sym_self, + STATE(1204), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + STATE(1605), 4, + sym__use_clause, + sym_scoped_use_list, + sym_use_list, + sym_use_as_clause, + ACTIONS(2136), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [39102] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(83), 1, + anon_sym_POUND, + ACTIONS(2180), 1, + anon_sym_RBRACE, + ACTIONS(2182), 1, + anon_sym_struct, + ACTIONS(2184), 1, + anon_sym_let, + ACTIONS(2186), 1, + anon_sym_const, + ACTIONS(2188), 1, + anon_sym_use, + ACTIONS(2190), 1, + anon_sym_extern, + ACTIONS(2192), 1, + anon_sym_type, + ACTIONS(2194), 1, + anon_sym_fn, + ACTIONS(2196), 1, + anon_sym_mod, + ACTIONS(2198), 1, + anon_sym_enum, + ACTIONS(2200), 1, + anon_sym_impl, + ACTIONS(2202), 1, + anon_sym_trait, + STATE(1000), 1, + sym__cairo_1_function_signature, + STATE(1001), 1, + sym__cairo_1_function_definition, + STATE(783), 14, + sym__cairo_1_statement, + sym_use_declaration, + sym_extern_type_statement, + sym_extern_function_statement, + sym_attribute_item, + sym_mod_item, + sym_struct_item, + sym_enum_item, + sym_const_item, + sym_type_item, + sym_impl_item, + sym_trait_item, + sym_let_declaration, + aux_sym_cairo_1_file_repeat1, + [39167] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(83), 1, + anon_sym_POUND, + ACTIONS(2182), 1, + anon_sym_struct, + ACTIONS(2184), 1, + anon_sym_let, + ACTIONS(2186), 1, + anon_sym_const, + ACTIONS(2188), 1, + anon_sym_use, + ACTIONS(2190), 1, + anon_sym_extern, + ACTIONS(2192), 1, + anon_sym_type, + ACTIONS(2194), 1, + anon_sym_fn, + ACTIONS(2196), 1, + anon_sym_mod, + ACTIONS(2198), 1, + anon_sym_enum, + ACTIONS(2200), 1, + anon_sym_impl, + ACTIONS(2202), 1, + anon_sym_trait, + ACTIONS(2204), 1, + anon_sym_RBRACE, + STATE(1000), 1, + sym__cairo_1_function_signature, + STATE(1001), 1, + sym__cairo_1_function_definition, + STATE(786), 14, + sym__cairo_1_statement, + sym_use_declaration, + sym_extern_type_statement, + sym_extern_function_statement, + sym_attribute_item, + sym_mod_item, + sym_struct_item, + sym_enum_item, + sym_const_item, + sym_type_item, + sym_impl_item, + sym_trait_item, + sym_let_declaration, + aux_sym_cairo_1_file_repeat1, + [39232] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(83), 1, + anon_sym_POUND, + ACTIONS(2182), 1, + anon_sym_struct, + ACTIONS(2184), 1, + anon_sym_let, + ACTIONS(2186), 1, + anon_sym_const, + ACTIONS(2188), 1, + anon_sym_use, + ACTIONS(2190), 1, + anon_sym_extern, + ACTIONS(2192), 1, + anon_sym_type, + ACTIONS(2194), 1, + anon_sym_fn, + ACTIONS(2196), 1, + anon_sym_mod, + ACTIONS(2198), 1, + anon_sym_enum, + ACTIONS(2200), 1, + anon_sym_impl, + ACTIONS(2202), 1, + anon_sym_trait, + ACTIONS(2206), 1, + ts_builtin_sym_end, + STATE(1000), 1, + sym__cairo_1_function_signature, + STATE(1001), 1, + sym__cairo_1_function_definition, + STATE(783), 14, + sym__cairo_1_statement, + sym_use_declaration, + sym_extern_type_statement, + sym_extern_function_statement, + sym_attribute_item, + sym_mod_item, + sym_struct_item, + sym_enum_item, + sym_const_item, + sym_type_item, + sym_impl_item, + sym_trait_item, + sym_let_declaration, + aux_sym_cairo_1_file_repeat1, + [39297] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(83), 1, + anon_sym_POUND, + ACTIONS(2182), 1, + anon_sym_struct, + ACTIONS(2184), 1, + anon_sym_let, + ACTIONS(2186), 1, + anon_sym_const, + ACTIONS(2188), 1, + anon_sym_use, + ACTIONS(2190), 1, + anon_sym_extern, + ACTIONS(2192), 1, + anon_sym_type, + ACTIONS(2194), 1, + anon_sym_fn, + ACTIONS(2196), 1, + anon_sym_mod, + ACTIONS(2198), 1, + anon_sym_enum, + ACTIONS(2200), 1, + anon_sym_impl, + ACTIONS(2202), 1, + anon_sym_trait, + ACTIONS(2208), 1, + anon_sym_RBRACE, + STATE(1000), 1, + sym__cairo_1_function_signature, + STATE(1001), 1, + sym__cairo_1_function_definition, + STATE(783), 14, + sym__cairo_1_statement, + sym_use_declaration, + sym_extern_type_statement, + sym_extern_function_statement, + sym_attribute_item, + sym_mod_item, + sym_struct_item, + sym_enum_item, + sym_const_item, + sym_type_item, + sym_impl_item, + sym_trait_item, + sym_let_declaration, + aux_sym_cairo_1_file_repeat1, + [39362] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(83), 1, + anon_sym_POUND, + ACTIONS(2182), 1, + anon_sym_struct, + ACTIONS(2184), 1, + anon_sym_let, + ACTIONS(2186), 1, + anon_sym_const, + ACTIONS(2188), 1, + anon_sym_use, + ACTIONS(2190), 1, + anon_sym_extern, + ACTIONS(2192), 1, + anon_sym_type, + ACTIONS(2194), 1, + anon_sym_fn, + ACTIONS(2196), 1, + anon_sym_mod, + ACTIONS(2198), 1, + anon_sym_enum, + ACTIONS(2200), 1, + anon_sym_impl, + ACTIONS(2202), 1, + anon_sym_trait, + ACTIONS(2210), 1, + anon_sym_RBRACE, + STATE(1000), 1, + sym__cairo_1_function_signature, + STATE(1001), 1, + sym__cairo_1_function_definition, + STATE(789), 14, + sym__cairo_1_statement, + sym_use_declaration, + sym_extern_type_statement, + sym_extern_function_statement, + sym_attribute_item, + sym_mod_item, + sym_struct_item, + sym_enum_item, + sym_const_item, + sym_type_item, + sym_impl_item, + sym_trait_item, + sym_let_declaration, + aux_sym_cairo_1_file_repeat1, + [39427] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2216), 1, + anon_sym_RBRACE, + ACTIONS(2214), 4, + anon_sym_LPAREN, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + ACTIONS(2212), 23, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym__, + sym_self, + [39465] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2222), 1, + anon_sym_RBRACE, + ACTIONS(2220), 4, + anon_sym_LPAREN, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + ACTIONS(2218), 23, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym__, + sym_self, + [39503] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2214), 4, + anon_sym_LPAREN, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + ACTIONS(2212), 23, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym__, + sym_self, + [39538] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1459), 1, + sym_self, + ACTIONS(2224), 1, + sym_identifier, + STATE(1246), 1, + sym_scoped_type_identifier, + STATE(1510), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(2226), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [39585] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2220), 4, + anon_sym_LPAREN, + sym_number, + anon_sym_COLON_COLON, + anon_sym_POUND, + ACTIONS(2218), 23, + sym_identifier, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + anon_sym__, + sym_self, + [39620] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1453), 1, + anon_sym_COLON_COLON, + ACTIONS(1459), 1, + sym_self, + ACTIONS(2228), 1, + sym_identifier, + STATE(1214), 1, + sym_scoped_type_identifier, + STATE(1502), 1, + sym_generic_type, + STATE(1837), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(2226), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [39667] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(73), 1, + anon_sym_call, + ACTIONS(2230), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + STATE(1346), 1, + sym_call_instruction, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2232), 2, + sym_short_string, + sym_number, + STATE(938), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [39723] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2234), 1, + sym_identifier, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2238), 1, + anon_sym_COMMA, + ACTIONS(2240), 1, + anon_sym_RBRACE, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + STATE(888), 1, + sym__cairo_0_call_expression, + STATE(945), 1, + sym_assignment_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2248), 2, + sym_short_string, + sym_number, + STATE(1008), 10, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [39781] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2234), 1, + sym_identifier, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2256), 1, + anon_sym_COMMA, + ACTIONS(2258), 1, + anon_sym_RBRACE, + STATE(888), 1, + sym__cairo_0_call_expression, + STATE(955), 1, + sym_assignment_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2248), 2, + sym_short_string, + sym_number, + STATE(1008), 10, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [39839] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2234), 1, + sym_identifier, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2260), 1, + anon_sym_COMMA, + ACTIONS(2262), 1, + anon_sym_RBRACE, + STATE(888), 1, + sym__cairo_0_call_expression, + STATE(955), 1, + sym_assignment_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2248), 2, + sym_short_string, + sym_number, + STATE(1008), 10, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [39897] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2234), 1, + sym_identifier, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2264), 1, + anon_sym_COMMA, + ACTIONS(2266), 1, + anon_sym_RBRACE, + STATE(888), 1, + sym__cairo_0_call_expression, + STATE(955), 1, + sym_assignment_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2248), 2, + sym_short_string, + sym_number, + STATE(1008), 10, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [39955] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2234), 1, + sym_identifier, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2268), 1, + anon_sym_COMMA, + ACTIONS(2270), 1, + anon_sym_RBRACE, + STATE(888), 1, + sym__cairo_0_call_expression, + STATE(955), 1, + sym_assignment_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2248), 2, + sym_short_string, + sym_number, + STATE(1008), 10, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [40013] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2234), 1, + sym_identifier, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2272), 1, + anon_sym_COMMA, + ACTIONS(2274), 1, + anon_sym_RBRACE, + STATE(888), 1, + sym__cairo_0_call_expression, + STATE(949), 1, + sym_assignment_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2248), 2, + sym_short_string, + sym_number, + STATE(1008), 10, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [40071] = 14, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(73), 1, + anon_sym_call, + ACTIONS(2276), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + STATE(1341), 1, + sym_call_instruction, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2278), 2, + sym_short_string, + sym_number, + STATE(925), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [40127] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2280), 1, + sym_identifier, + ACTIONS(2282), 1, + anon_sym_RPAREN, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2284), 2, + sym_short_string, + sym_number, + STATE(914), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [40180] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(2286), 1, + sym_identifier, + ACTIONS(2290), 1, + sym_self, + STATE(1286), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(2288), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [40221] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2292), 1, + sym_identifier, + ACTIONS(2294), 1, + anon_sym_RPAREN, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2296), 2, + sym_short_string, + sym_number, + STATE(942), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [40274] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2292), 1, + sym_identifier, + ACTIONS(2298), 1, + anon_sym_RPAREN, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2296), 2, + sym_short_string, + sym_number, + STATE(942), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [40327] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2292), 1, + sym_identifier, + ACTIONS(2300), 1, + anon_sym_RPAREN, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2296), 2, + sym_short_string, + sym_number, + STATE(942), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [40380] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(2302), 1, + sym_identifier, + ACTIONS(2306), 1, + sym_self, + STATE(1257), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(2304), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [40421] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(143), 1, + anon_sym_COLON_COLON, + ACTIONS(2308), 1, + sym_identifier, + ACTIONS(2312), 1, + sym_self, + STATE(1259), 1, + sym_scoped_identifier, + STATE(1891), 1, + sym_generic_type_with_turbofish, + ACTIONS(2310), 20, + anon_sym_u8, + anon_sym_i8, + anon_sym_u16, + anon_sym_i16, + anon_sym_u32, + anon_sym_i32, + anon_sym_u64, + anon_sym_i64, + anon_sym_u128, + anon_sym_i128, + anon_sym_u256, + anon_sym_i256, + anon_sym_isize, + anon_sym_usize, + anon_sym_f32, + anon_sym_f64, + anon_sym_felt252, + anon_sym_bool, + anon_sym_str, + anon_sym_char, + [40462] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2292), 1, + sym_identifier, + ACTIONS(2314), 1, + anon_sym_RPAREN, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2296), 2, + sym_short_string, + sym_number, + STATE(942), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [40515] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2316), 1, + sym_identifier, + ACTIONS(2318), 1, + anon_sym_RPAREN, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2320), 2, + sym_short_string, + sym_number, + STATE(905), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [40568] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2322), 1, + sym_identifier, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2324), 2, + sym_short_string, + sym_number, + STATE(957), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [40618] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2326), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2328), 2, + sym_short_string, + sym_number, + STATE(867), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [40668] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2330), 1, + sym_identifier, + ACTIONS(2332), 1, + sym_short_string, + ACTIONS(2334), 1, + sym_number, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + STATE(868), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [40720] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2330), 1, + sym_identifier, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2332), 2, + sym_short_string, + sym_number, + STATE(868), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [40770] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2336), 1, + sym_identifier, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2338), 2, + sym_short_string, + sym_number, + STATE(950), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [40820] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2340), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2342), 2, + sym_short_string, + sym_number, + STATE(874), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [40870] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2344), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2346), 2, + sym_short_string, + sym_number, + STATE(899), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [40920] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2348), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2350), 2, + sym_short_string, + sym_number, + STATE(934), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [40970] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2352), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2354), 2, + sym_short_string, + sym_number, + STATE(880), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [41020] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2356), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2358), 2, + sym_short_string, + sym_number, + STATE(902), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [41070] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2360), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2362), 2, + sym_short_string, + sym_number, + STATE(927), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [41120] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2364), 1, + sym_identifier, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2366), 2, + sym_short_string, + sym_number, + STATE(956), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [41170] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2368), 1, + sym_identifier, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2370), 2, + sym_short_string, + sym_number, + STATE(1013), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [41220] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2372), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2374), 2, + sym_short_string, + sym_number, + STATE(937), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [41270] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2376), 1, + sym_identifier, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2378), 2, + sym_short_string, + sym_number, + STATE(966), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [41320] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2380), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2382), 2, + sym_short_string, + sym_number, + STATE(885), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [41370] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2384), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2386), 2, + sym_short_string, + sym_number, + STATE(881), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [41420] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2388), 1, + sym_identifier, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2390), 2, + sym_short_string, + sym_number, + STATE(878), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [41470] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2392), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2394), 2, + sym_short_string, + sym_number, + STATE(911), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [41520] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2396), 1, + sym_identifier, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2398), 2, + sym_short_string, + sym_number, + STATE(870), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [41570] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2400), 1, + sym_identifier, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2402), 2, + sym_short_string, + sym_number, + STATE(958), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [41620] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2404), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2406), 2, + sym_short_string, + sym_number, + STATE(920), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [41670] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2292), 1, + sym_identifier, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2296), 2, + sym_short_string, + sym_number, + STATE(942), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [41720] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2408), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2410), 2, + sym_short_string, + sym_number, + STATE(886), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [41770] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2234), 1, + sym_identifier, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + STATE(888), 1, + sym__cairo_0_call_expression, + STATE(955), 1, + sym_assignment_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2248), 2, + sym_short_string, + sym_number, + STATE(1008), 10, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [41822] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2412), 1, + sym_identifier, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2414), 2, + sym_short_string, + sym_number, + STATE(869), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [41872] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2416), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2418), 2, + sym_short_string, + sym_number, + STATE(932), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [41922] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2420), 1, + sym_identifier, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2422), 2, + sym_short_string, + sym_number, + STATE(871), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [41972] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2424), 1, + sym_identifier, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2426), 2, + sym_short_string, + sym_number, + STATE(1022), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [42022] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2428), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2430), 2, + sym_short_string, + sym_number, + STATE(883), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [42072] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2432), 1, + sym_identifier, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2434), 2, + sym_short_string, + sym_number, + STATE(866), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [42122] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2436), 1, + sym_identifier, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2438), 2, + sym_short_string, + sym_number, + STATE(1021), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [42172] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2440), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2442), 2, + sym_short_string, + sym_number, + STATE(877), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [42222] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2444), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2446), 2, + sym_short_string, + sym_number, + STATE(901), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [42272] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2448), 1, + sym_identifier, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2450), 2, + sym_short_string, + sym_number, + STATE(954), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [42322] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2452), 1, + sym_identifier, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2454), 2, + sym_short_string, + sym_number, + STATE(983), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [42372] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2456), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2458), 2, + sym_short_string, + sym_number, + STATE(904), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [42422] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2330), 1, + sym_identifier, + ACTIONS(2332), 1, + sym_short_string, + ACTIONS(2460), 1, + sym_number, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + STATE(868), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [42474] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2462), 1, + sym_identifier, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2464), 2, + sym_short_string, + sym_number, + STATE(986), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [42524] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2466), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2468), 2, + sym_short_string, + sym_number, + STATE(891), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [42574] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2470), 1, + sym_identifier, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2472), 2, + sym_short_string, + sym_number, + STATE(953), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [42624] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2474), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2476), 2, + sym_short_string, + sym_number, + STATE(864), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [42674] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2478), 1, + sym_identifier, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2480), 2, + sym_short_string, + sym_number, + STATE(952), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [42724] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2482), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2484), 2, + sym_short_string, + sym_number, + STATE(929), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [42774] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2486), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2488), 2, + sym_short_string, + sym_number, + STATE(928), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [42824] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2490), 1, + sym_identifier, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2492), 2, + sym_short_string, + sym_number, + STATE(872), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [42874] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2244), 1, + anon_sym_AMP, + ACTIONS(2250), 1, + anon_sym_nondet, + ACTIONS(2252), 1, + anon_sym_LBRACK, + ACTIONS(2254), 1, + anon_sym_cast, + ACTIONS(2494), 1, + sym_identifier, + STATE(888), 1, + sym__cairo_0_call_expression, + ACTIONS(2242), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2246), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(2496), 2, + sym_short_string, + sym_number, + STATE(951), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [42924] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2498), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2500), 2, + sym_short_string, + sym_number, + STATE(879), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [42974] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2502), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2504), 2, + sym_short_string, + sym_number, + STATE(873), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [43024] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(57), 1, + anon_sym_AMP, + ACTIONS(63), 1, + anon_sym_nondet, + ACTIONS(69), 1, + anon_sym_LBRACK, + ACTIONS(71), 1, + anon_sym_cast, + ACTIONS(2506), 1, + sym_identifier, + STATE(900), 1, + sym__cairo_0_call_expression, + ACTIONS(59), 2, + anon_sym_DASH, + anon_sym_new, + ACTIONS(67), 2, + anon_sym_ap, + anon_sym_fp, + ACTIONS(2508), 2, + sym_short_string, + sym_number, + STATE(865), 11, + sym__cairo_0_expression, + sym_unary_expression, + sym_binary_expression, + sym_assignment_expression, + sym_hint_expression, + sym_register, + sym_deref_expression, + sym_subscript_expression, + sym_member_expression, + sym_cast_expression, + sym_tuple_expression, + [43074] = 12, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2528), 1, + anon_sym_LF, + ACTIONS(2530), 1, + sym_comment, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2516), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2512), 5, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_if, + anon_sym_and, + anon_sym_SEMI, + [43118] = 9, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2528), 1, + anon_sym_LF, + ACTIONS(2530), 1, + sym_comment, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2512), 11, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_SEMI, + [43156] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + STATE(916), 1, + sym_tuple_expression, + ACTIONS(2534), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2532), 9, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_RBRACK, + [43194] = 9, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2532), 1, + anon_sym_LF, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2534), 11, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_SEMI, + [43232] = 11, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2512), 1, + anon_sym_EQ, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + STATE(916), 1, + sym_tuple_expression, + ACTIONS(2544), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2546), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2528), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_and, + anon_sym_RBRACK, + [43274] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + STATE(916), 1, + sym_tuple_expression, + ACTIONS(2512), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2528), 9, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_RBRACK, + [43312] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + STATE(916), 1, + sym_tuple_expression, + ACTIONS(2512), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2528), 9, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_RBRACK, + [43350] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2512), 1, + anon_sym_EQ, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + STATE(916), 1, + sym_tuple_expression, + ACTIONS(2544), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2528), 9, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_RBRACK, + [43390] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2512), 1, + anon_sym_EQ, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + STATE(916), 1, + sym_tuple_expression, + ACTIONS(2544), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2546), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2548), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2528), 5, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_and, + anon_sym_RBRACK, + [43434] = 9, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2528), 1, + anon_sym_LF, + ACTIONS(2530), 1, + sym_comment, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2512), 11, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_SEMI, + [43472] = 11, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2528), 1, + anon_sym_LF, + ACTIONS(2530), 1, + sym_comment, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2512), 7, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_and, + anon_sym_SEMI, + [43514] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1817), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1819), 15, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + [43540] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1813), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(1815), 15, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + [43566] = 15, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2552), 1, + anon_sym_EQ, + ACTIONS(2554), 1, + anon_sym_if, + ACTIONS(2556), 1, + anon_sym_and, + ACTIONS(2558), 1, + anon_sym_LF, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2516), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2550), 2, + anon_sym_COMMA, + anon_sym_SEMI, + [43616] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + ACTIONS(2562), 1, + anon_sym_EQ, + ACTIONS(2564), 1, + anon_sym_and, + STATE(916), 1, + sym_tuple_expression, + ACTIONS(2544), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2546), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2548), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2560), 4, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_RBRACK, + [43662] = 10, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2528), 1, + anon_sym_LF, + ACTIONS(2530), 1, + sym_comment, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2512), 9, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_SEMI, + [43702] = 14, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2552), 1, + anon_sym_EQ, + ACTIONS(2556), 1, + anon_sym_and, + ACTIONS(2560), 1, + anon_sym_LF, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2516), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2566), 3, + anon_sym_COMMA, + anon_sym_if, + anon_sym_SEMI, + [43750] = 15, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2552), 1, + anon_sym_EQ, + ACTIONS(2556), 1, + anon_sym_and, + ACTIONS(2568), 1, + anon_sym_SEMI, + ACTIONS(2570), 1, + anon_sym_LF, + STATE(625), 1, + sym__separator, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2516), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + [43799] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2574), 1, + anon_sym_LF, + ACTIONS(2572), 16, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_SEMI, + [43824] = 14, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2552), 1, + anon_sym_EQ, + ACTIONS(2556), 1, + anon_sym_and, + ACTIONS(2578), 1, + anon_sym_LF, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2516), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2576), 2, + anon_sym_COMMA, + anon_sym_SEMI, + [43871] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2582), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2580), 14, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + [43896] = 14, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2552), 1, + anon_sym_EQ, + ACTIONS(2556), 1, + anon_sym_and, + ACTIONS(2586), 1, + anon_sym_LF, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2516), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2584), 2, + anon_sym_COMMA, + anon_sym_SEMI, + [43943] = 14, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2552), 1, + anon_sym_EQ, + ACTIONS(2556), 1, + anon_sym_and, + ACTIONS(2590), 1, + anon_sym_LF, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2516), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2588), 2, + anon_sym_COMMA, + anon_sym_SEMI, + [43990] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2594), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2592), 14, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + [44015] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2598), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2596), 14, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + [44040] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2602), 1, + anon_sym_LF, + ACTIONS(2600), 16, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_SEMI, + [44065] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2592), 1, + anon_sym_LF, + ACTIONS(2594), 16, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_SEMI, + [44090] = 14, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2552), 1, + anon_sym_EQ, + ACTIONS(2556), 1, + anon_sym_and, + ACTIONS(2606), 1, + anon_sym_LF, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2516), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2604), 2, + anon_sym_COMMA, + anon_sym_SEMI, + [44137] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2610), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2608), 14, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + [44162] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2614), 1, + anon_sym_LF, + ACTIONS(2612), 16, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_SEMI, + [44187] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2618), 1, + anon_sym_LF, + ACTIONS(2616), 16, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_SEMI, + [44212] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2622), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2620), 14, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + [44237] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2626), 1, + anon_sym_LF, + ACTIONS(2624), 16, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_SEMI, + [44262] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2580), 1, + anon_sym_LF, + ACTIONS(2582), 16, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_SEMI, + [44287] = 15, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2556), 1, + anon_sym_and, + ACTIONS(2628), 1, + anon_sym_EQ, + ACTIONS(2630), 1, + anon_sym_SEMI, + ACTIONS(2632), 1, + anon_sym_LF, + STATE(632), 1, + sym__separator, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2516), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + [44336] = 15, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2552), 1, + anon_sym_EQ, + ACTIONS(2556), 1, + anon_sym_and, + ACTIONS(2634), 1, + anon_sym_SEMI, + ACTIONS(2636), 1, + anon_sym_LF, + STATE(552), 1, + sym__separator, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2516), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + [44385] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2596), 1, + anon_sym_LF, + ACTIONS(2598), 16, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_SEMI, + [44410] = 15, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2552), 1, + anon_sym_EQ, + ACTIONS(2556), 1, + anon_sym_and, + ACTIONS(2638), 1, + anon_sym_SEMI, + ACTIONS(2640), 1, + anon_sym_LF, + STATE(553), 1, + sym__separator, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2516), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + [44459] = 15, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2552), 1, + anon_sym_EQ, + ACTIONS(2556), 1, + anon_sym_and, + ACTIONS(2642), 1, + anon_sym_SEMI, + ACTIONS(2644), 1, + anon_sym_LF, + STATE(548), 1, + sym__separator, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2516), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + [44508] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2608), 1, + anon_sym_LF, + ACTIONS(2610), 16, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_SEMI, + [44533] = 15, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2552), 1, + anon_sym_EQ, + ACTIONS(2556), 1, + anon_sym_and, + ACTIONS(2560), 1, + anon_sym_LF, + ACTIONS(2566), 1, + anon_sym_SEMI, + ACTIONS(2646), 1, + anon_sym_COMMA, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2516), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + [44582] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + ACTIONS(2562), 1, + anon_sym_EQ, + ACTIONS(2564), 1, + anon_sym_and, + ACTIONS(2648), 1, + anon_sym_RPAREN, + ACTIONS(2650), 1, + anon_sym_COMMA, + STATE(916), 1, + sym_tuple_expression, + STATE(1509), 1, + aux_sym_tuple_expression_repeat1, + ACTIONS(2544), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2546), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2548), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + [44631] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2572), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2574), 14, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + [44656] = 3, + ACTIONS(1815), 1, + anon_sym_LF, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(1813), 16, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_SEMI, + [44681] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2654), 1, + anon_sym_LF, + ACTIONS(2652), 16, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_SEMI, + [44706] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2620), 1, + anon_sym_LF, + ACTIONS(2622), 16, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_SEMI, + [44731] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2658), 1, + anon_sym_LF, + ACTIONS(2656), 16, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_SEMI, + [44756] = 15, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2552), 1, + anon_sym_EQ, + ACTIONS(2556), 1, + anon_sym_and, + ACTIONS(2660), 1, + anon_sym_SEMI, + ACTIONS(2662), 1, + anon_sym_LF, + STATE(624), 1, + sym__separator, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2516), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + [44805] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2666), 1, + anon_sym_LF, + ACTIONS(2664), 16, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_SEMI, + [44830] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2670), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2668), 14, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + [44855] = 15, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + ACTIONS(2562), 1, + anon_sym_EQ, + ACTIONS(2564), 1, + anon_sym_and, + ACTIONS(2672), 1, + anon_sym_RPAREN, + ACTIONS(2674), 1, + anon_sym_COMMA, + STATE(916), 1, + sym_tuple_expression, + STATE(1568), 1, + aux_sym_tuple_expression_repeat1, + ACTIONS(2544), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2546), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2548), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + [44904] = 15, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2556), 1, + anon_sym_and, + ACTIONS(2628), 1, + anon_sym_EQ, + ACTIONS(2676), 1, + anon_sym_SEMI, + ACTIONS(2678), 1, + anon_sym_LF, + STATE(575), 1, + sym__separator, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2516), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + [44953] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2682), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2680), 14, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + [44978] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2624), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2626), 14, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + [45003] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2668), 1, + anon_sym_LF, + ACTIONS(2670), 16, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_SEMI, + [45028] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2656), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2658), 14, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + [45053] = 15, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2552), 1, + anon_sym_EQ, + ACTIONS(2556), 1, + anon_sym_and, + ACTIONS(2684), 1, + anon_sym_SEMI, + ACTIONS(2686), 1, + anon_sym_LF, + STATE(623), 1, + sym__separator, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2516), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + [45102] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2680), 1, + anon_sym_LF, + ACTIONS(2682), 16, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_SEMI, + [45127] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2616), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2618), 14, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + [45152] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2690), 1, + anon_sym_LF, + ACTIONS(2688), 16, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_SEMI, + [45177] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2652), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2654), 14, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + [45202] = 15, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2552), 1, + anon_sym_EQ, + ACTIONS(2556), 1, + anon_sym_and, + ACTIONS(2692), 1, + anon_sym_SEMI, + ACTIONS(2694), 1, + anon_sym_LF, + STATE(570), 1, + sym__separator, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2516), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + [45251] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2698), 1, + anon_sym_LF, + ACTIONS(2696), 16, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_SEMI, + [45276] = 15, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2552), 1, + anon_sym_EQ, + ACTIONS(2556), 1, + anon_sym_and, + ACTIONS(2700), 1, + anon_sym_SEMI, + ACTIONS(2702), 1, + anon_sym_LF, + STATE(561), 1, + sym__separator, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2516), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + [45325] = 15, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2552), 1, + anon_sym_EQ, + ACTIONS(2556), 1, + anon_sym_and, + ACTIONS(2704), 1, + anon_sym_SEMI, + ACTIONS(2706), 1, + anon_sym_LF, + STATE(611), 1, + sym__separator, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2516), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + [45374] = 13, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2708), 1, + anon_sym_SEMI, + ACTIONS(2710), 1, + anon_sym_LF, + STATE(609), 1, + sym__separator, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2512), 4, + anon_sym_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_and, + [45419] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2696), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2698), 14, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + [45444] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2612), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2614), 14, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + [45469] = 15, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2552), 1, + anon_sym_EQ, + ACTIONS(2556), 1, + anon_sym_and, + ACTIONS(2712), 1, + anon_sym_SEMI, + ACTIONS(2714), 1, + anon_sym_LF, + STATE(628), 1, + sym__separator, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2516), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + [45518] = 3, + ACTIONS(1819), 1, + anon_sym_LF, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(1817), 16, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_if, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_SEMI, + [45543] = 13, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2716), 1, + anon_sym_SEMI, + ACTIONS(2718), 1, + anon_sym_LF, + STATE(555), 1, + sym__separator, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2512), 4, + anon_sym_EQ, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_and, + [45588] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2600), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2602), 14, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + [45613] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2688), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2690), 14, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + [45638] = 15, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2552), 1, + anon_sym_EQ, + ACTIONS(2556), 1, + anon_sym_and, + ACTIONS(2720), 1, + anon_sym_SEMI, + ACTIONS(2722), 1, + anon_sym_LF, + STATE(562), 1, + sym__separator, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2516), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + [45687] = 15, + ACTIONS(2510), 1, + anon_sym_LPAREN, + ACTIONS(2514), 1, + anon_sym_LBRACE, + ACTIONS(2520), 1, + anon_sym_STAR_STAR, + ACTIONS(2524), 1, + anon_sym_LBRACK, + ACTIONS(2526), 1, + anon_sym_DOT, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2552), 1, + anon_sym_EQ, + ACTIONS(2556), 1, + anon_sym_and, + ACTIONS(2724), 1, + anon_sym_SEMI, + ACTIONS(2726), 1, + anon_sym_LF, + STATE(642), 1, + sym__separator, + STATE(921), 1, + sym_tuple_expression, + ACTIONS(2516), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2518), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2522), 2, + anon_sym_DASH, + anon_sym_PLUS, + [45736] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2664), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2666), 14, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT, + [45761] = 4, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2732), 1, + anon_sym_LF, + ACTIONS(2730), 2, + anon_sym_COMMA, + anon_sym_SEMI, + ACTIONS(2728), 13, + anon_sym_LPAREN, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + [45787] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(662), 16, + ts_builtin_sym_end, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_GT, + [45809] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + ACTIONS(2562), 1, + anon_sym_EQ, + ACTIONS(2564), 1, + anon_sym_and, + STATE(916), 1, + sym_tuple_expression, + ACTIONS(2544), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2546), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2548), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + ACTIONS(2734), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [45853] = 4, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2592), 1, + anon_sym_LF, + ACTIONS(2736), 1, + anon_sym_PLUS_EQ, + ACTIONS(2594), 14, + anon_sym_LPAREN, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_SEMI, + [45879] = 4, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2738), 1, + anon_sym_COLON, + ACTIONS(2740), 1, + anon_sym_LF, + ACTIONS(2728), 14, + anon_sym_LPAREN, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_SEMI, + [45905] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2742), 1, + anon_sym_COMMA, + ACTIONS(2744), 1, + anon_sym_RBRACE, + STATE(1481), 1, + aux_sym__cairo_0_call_expression_repeat1, + ACTIONS(2728), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2740), 10, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + [45935] = 4, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2740), 1, + anon_sym_LF, + ACTIONS(2746), 1, + anon_sym_COLON, + ACTIONS(2728), 14, + anon_sym_LPAREN, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + anon_sym_SEMI, + [45961] = 4, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2750), 1, + anon_sym_LF, + ACTIONS(2748), 2, + anon_sym_COMMA, + anon_sym_SEMI, + ACTIONS(2728), 13, + anon_sym_LPAREN, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + [45987] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(666), 16, + ts_builtin_sym_end, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + anon_sym_GT, + [46009] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2752), 1, + anon_sym_COMMA, + ACTIONS(2754), 1, + anon_sym_RBRACE, + STATE(1402), 1, + aux_sym__cairo_0_call_expression_repeat1, + ACTIONS(2728), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2740), 10, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + [46039] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + ACTIONS(2562), 1, + anon_sym_EQ, + ACTIONS(2564), 1, + anon_sym_and, + ACTIONS(2756), 1, + anon_sym_RBRACK, + STATE(916), 1, + sym_tuple_expression, + ACTIONS(2544), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2546), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2548), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + [46082] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + ACTIONS(2562), 1, + anon_sym_EQ, + ACTIONS(2564), 1, + anon_sym_and, + ACTIONS(2758), 1, + anon_sym_COMMA, + STATE(916), 1, + sym_tuple_expression, + ACTIONS(2544), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2546), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2548), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + [46125] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + ACTIONS(2562), 1, + anon_sym_EQ, + ACTIONS(2564), 1, + anon_sym_and, + ACTIONS(2760), 1, + anon_sym_RPAREN, + STATE(916), 1, + sym_tuple_expression, + ACTIONS(2544), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2546), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2548), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + [46168] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + ACTIONS(2562), 1, + anon_sym_EQ, + ACTIONS(2564), 1, + anon_sym_and, + ACTIONS(2762), 1, + anon_sym_RBRACK, + STATE(916), 1, + sym_tuple_expression, + ACTIONS(2544), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2546), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2548), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + [46211] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + ACTIONS(2562), 1, + anon_sym_EQ, + ACTIONS(2564), 1, + anon_sym_and, + ACTIONS(2764), 1, + anon_sym_COMMA, + STATE(916), 1, + sym_tuple_expression, + ACTIONS(2544), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2546), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2548), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + [46254] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2766), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + ACTIONS(2728), 3, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2740), 10, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_STAR_STAR, + anon_sym_DASH, + anon_sym_PLUS, + anon_sym_and, + anon_sym_LBRACK, + anon_sym_DOT, + [46279] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + ACTIONS(2562), 1, + anon_sym_EQ, + ACTIONS(2564), 1, + anon_sym_and, + ACTIONS(2768), 1, + anon_sym_RPAREN, + STATE(916), 1, + sym_tuple_expression, + ACTIONS(2544), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2546), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2548), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + [46322] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + ACTIONS(2562), 1, + anon_sym_EQ, + ACTIONS(2564), 1, + anon_sym_and, + ACTIONS(2770), 1, + anon_sym_RBRACK, + STATE(916), 1, + sym_tuple_expression, + ACTIONS(2544), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2546), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2548), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + [46365] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + ACTIONS(2562), 1, + anon_sym_EQ, + ACTIONS(2564), 1, + anon_sym_and, + ACTIONS(2772), 1, + anon_sym_RBRACK, + STATE(916), 1, + sym_tuple_expression, + ACTIONS(2544), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2546), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2548), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + [46408] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1403), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46428] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1435), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46448] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1343), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46468] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1267), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46488] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1311), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46508] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1247), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46528] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1283), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46548] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + ACTIONS(2548), 1, + anon_sym_EQ_EQ, + ACTIONS(2562), 1, + anon_sym_EQ, + ACTIONS(2564), 1, + anon_sym_and, + ACTIONS(2774), 1, + anon_sym_BANG_EQ, + STATE(916), 1, + sym_tuple_expression, + ACTIONS(2544), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2546), 2, + anon_sym_DASH, + anon_sym_PLUS, + [46590] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1319), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46610] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1183), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46630] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1227), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46650] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1415), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46670] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1251), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46690] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1399), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46710] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1219), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46730] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1187), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46750] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1159), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46770] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1199), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46790] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1263), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46810] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1239), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46830] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1171), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46850] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1295), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46870] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1207), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46890] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1315), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46910] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + ACTIONS(2548), 1, + anon_sym_BANG_EQ, + ACTIONS(2562), 1, + anon_sym_EQ, + ACTIONS(2564), 1, + anon_sym_and, + ACTIONS(2776), 1, + anon_sym_EQ_EQ, + STATE(916), 1, + sym_tuple_expression, + ACTIONS(2544), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2546), 2, + anon_sym_DASH, + anon_sym_PLUS, + [46952] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1355), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46972] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1431), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [46992] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + ACTIONS(2564), 1, + anon_sym_and, + ACTIONS(2778), 1, + anon_sym_EQ, + STATE(916), 1, + sym_tuple_expression, + ACTIONS(2544), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2546), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2548), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + [47032] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1375), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47052] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1411), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47072] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1379), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47092] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1439), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47112] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1391), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47132] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1271), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47152] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1259), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47172] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1303), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47192] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1407), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47212] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1279), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47232] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1423), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47252] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1419), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47272] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1347), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47292] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1163), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47312] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1163), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47332] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1335), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47352] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1331), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47372] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1255), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47392] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1427), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47412] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1395), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47432] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1359), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47452] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + ACTIONS(2562), 1, + anon_sym_EQ, + ACTIONS(2564), 1, + anon_sym_and, + STATE(916), 1, + sym_tuple_expression, + ACTIONS(2544), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2546), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2548), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + [47492] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1351), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47512] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1155), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47532] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1371), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47552] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1387), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47572] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + ACTIONS(2548), 1, + anon_sym_EQ_EQ, + ACTIONS(2562), 1, + anon_sym_EQ, + ACTIONS(2564), 1, + anon_sym_and, + ACTIONS(2780), 1, + anon_sym_BANG_EQ, + STATE(916), 1, + sym_tuple_expression, + ACTIONS(2544), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2546), 2, + anon_sym_DASH, + anon_sym_PLUS, + [47614] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1299), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47634] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1191), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47654] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1307), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47674] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1327), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47694] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1363), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47714] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1367), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47734] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1167), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47754] = 13, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + ACTIONS(2548), 1, + anon_sym_BANG_EQ, + ACTIONS(2562), 1, + anon_sym_EQ, + ACTIONS(2564), 1, + anon_sym_and, + ACTIONS(2782), 1, + anon_sym_EQ_EQ, + STATE(916), 1, + sym_tuple_expression, + ACTIONS(2544), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2546), 2, + anon_sym_DASH, + anon_sym_PLUS, + [47796] = 12, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, + anon_sym_LPAREN, + ACTIONS(2536), 1, + anon_sym_LBRACE, + ACTIONS(2538), 1, + anon_sym_STAR_STAR, + ACTIONS(2540), 1, + anon_sym_LBRACK, + ACTIONS(2542), 1, + anon_sym_DOT, + ACTIONS(2564), 1, + anon_sym_and, + ACTIONS(2784), 1, + anon_sym_EQ, + STATE(916), 1, + sym_tuple_expression, + ACTIONS(2544), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(2546), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(2548), 2, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + [47836] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1231), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47856] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1195), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47876] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1211), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47896] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1323), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47916] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1235), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47936] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1215), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47956] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1203), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47976] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1179), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [47996] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1243), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [48016] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1175), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [48036] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1291), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [48056] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1383), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [48076] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1223), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [48096] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1287), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [48116] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1339), 14, + ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_struct, + anon_sym_let, + anon_sym_const, + anon_sym_use, + anon_sym_extern, + anon_sym_type, + anon_sym_fn, + anon_sym_POUND, + anon_sym_mod, + anon_sym_enum, + anon_sym_impl, + anon_sym_trait, + [48136] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2788), 1, + anon_sym_COLON_COLON, + ACTIONS(2790), 1, + anon_sym_LT, + STATE(1055), 1, + sym__cairo_1_type_arguments, + ACTIONS(2786), 10, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_SEMI, + anon_sym_implicits, + anon_sym_nopanic, + anon_sym_of, + anon_sym_GT, + [48161] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1451), 1, + anon_sym_PERCENT_LBRACE, + ACTIONS(2792), 1, + sym_identifier, + ACTIONS(2794), 1, + anon_sym_LPAREN, + ACTIONS(2796), 1, + anon_sym_RPAREN, + STATE(1166), 1, + sym_named_type, + STATE(1448), 1, + sym__cairo_0_type, + ACTIONS(1449), 2, + anon_sym_felt, + anon_sym_codeoffset, + STATE(1129), 5, + sym__non_identifier_type, + sym__cairo_0_builtin_type, + sym__cairo_0_pointer_type, + sym__cairo_0_tuple_type, + sym_hint, + [48194] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1451), 1, + anon_sym_PERCENT_LBRACE, + ACTIONS(2792), 1, + sym_identifier, + ACTIONS(2794), 1, + anon_sym_LPAREN, + ACTIONS(2798), 1, + anon_sym_RPAREN, + STATE(1166), 1, + sym_named_type, + STATE(1411), 1, + sym__cairo_0_type, + ACTIONS(1449), 2, + anon_sym_felt, + anon_sym_codeoffset, + STATE(1129), 5, + sym__non_identifier_type, + sym__cairo_0_builtin_type, + sym__cairo_0_pointer_type, + sym__cairo_0_tuple_type, + sym_hint, + [48227] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1451), 1, + anon_sym_PERCENT_LBRACE, + ACTIONS(2792), 1, + sym_identifier, + ACTIONS(2794), 1, + anon_sym_LPAREN, + ACTIONS(2800), 1, + anon_sym_RPAREN, + STATE(1166), 1, + sym_named_type, + STATE(1598), 1, + sym__cairo_0_type, + ACTIONS(1449), 2, + anon_sym_felt, + anon_sym_codeoffset, + STATE(1129), 5, + sym__non_identifier_type, + sym__cairo_0_builtin_type, + sym__cairo_0_pointer_type, + sym__cairo_0_tuple_type, + sym_hint, + [48260] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1451), 1, + anon_sym_PERCENT_LBRACE, + ACTIONS(2792), 1, + sym_identifier, + ACTIONS(2794), 1, + anon_sym_LPAREN, + ACTIONS(2802), 1, + anon_sym_RPAREN, + STATE(1166), 1, + sym_named_type, + STATE(1598), 1, + sym__cairo_0_type, + ACTIONS(1449), 2, + anon_sym_felt, + anon_sym_codeoffset, + STATE(1129), 5, + sym__non_identifier_type, + sym__cairo_0_builtin_type, + sym__cairo_0_pointer_type, + sym__cairo_0_tuple_type, + sym_hint, + [48293] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1451), 1, + anon_sym_PERCENT_LBRACE, + ACTIONS(2792), 1, + sym_identifier, + ACTIONS(2794), 1, + anon_sym_LPAREN, + ACTIONS(2804), 1, + anon_sym_RPAREN, + STATE(1166), 1, + sym_named_type, + STATE(1598), 1, + sym__cairo_0_type, + ACTIONS(1449), 2, + anon_sym_felt, + anon_sym_codeoffset, + STATE(1129), 5, + sym__non_identifier_type, + sym__cairo_0_builtin_type, + sym__cairo_0_pointer_type, + sym__cairo_0_tuple_type, + sym_hint, + [48326] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1451), 1, + anon_sym_PERCENT_LBRACE, + ACTIONS(2792), 1, + sym_identifier, + ACTIONS(2794), 1, + anon_sym_LPAREN, + ACTIONS(2806), 1, + anon_sym_RPAREN, + STATE(1166), 1, + sym_named_type, + STATE(1598), 1, + sym__cairo_0_type, + ACTIONS(1449), 2, + anon_sym_felt, + anon_sym_codeoffset, + STATE(1129), 5, + sym__non_identifier_type, + sym__cairo_0_builtin_type, + sym__cairo_0_pointer_type, + sym__cairo_0_tuple_type, + sym_hint, + [48359] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(894), 2, + anon_sym_EQ, + anon_sym_COLON, + ACTIONS(2808), 3, + anon_sym_LBRACE, + anon_sym_of, + anon_sym_LT, + ACTIONS(896), 8, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_if, + anon_sym_SEMI, + anon_sym_COLON_COLON, + anon_sym_EQ_GT, + [48382] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2812), 1, + anon_sym_COLON, + ACTIONS(2810), 12, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_SEMI, + anon_sym_COLON_COLON, + anon_sym_implicits, + anon_sym_nopanic, + anon_sym_of, + anon_sym_LT, + anon_sym_GT, + [48403] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(964), 2, + anon_sym_EQ, + anon_sym_COLON, + ACTIONS(2814), 3, + anon_sym_LBRACE, + anon_sym_of, + anon_sym_LT, + ACTIONS(966), 8, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_if, + anon_sym_SEMI, + anon_sym_COLON_COLON, + anon_sym_EQ_GT, + [48426] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(800), 2, + anon_sym_EQ, + anon_sym_COLON, + ACTIONS(2810), 3, + anon_sym_LBRACE, + anon_sym_of, + anon_sym_LT, + ACTIONS(802), 8, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_if, + anon_sym_SEMI, + anon_sym_COLON_COLON, + anon_sym_EQ_GT, + [48449] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2790), 1, + anon_sym_LT, + ACTIONS(2816), 1, + anon_sym_LPAREN, + ACTIONS(2822), 1, + anon_sym_LBRACE, + ACTIONS(2824), 1, + anon_sym_COLON_COLON, + STATE(1073), 1, + sym__cairo_1_type_arguments, + ACTIONS(2820), 2, + anon_sym_EQ, + anon_sym_COLON, + ACTIONS(2818), 6, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_if, + anon_sym_SEMI, + anon_sym_EQ_GT, + [48480] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1451), 1, + anon_sym_PERCENT_LBRACE, + ACTIONS(2792), 1, + sym_identifier, + ACTIONS(2794), 1, + anon_sym_LPAREN, + STATE(1166), 1, + sym_named_type, + STATE(1291), 1, + sym__cairo_0_type, + ACTIONS(1449), 2, + anon_sym_felt, + anon_sym_codeoffset, + STATE(1129), 5, + sym__non_identifier_type, + sym__cairo_0_builtin_type, + sym__cairo_0_pointer_type, + sym__cairo_0_tuple_type, + sym_hint, + [48510] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1451), 1, + anon_sym_PERCENT_LBRACE, + ACTIONS(2792), 1, + sym_identifier, + ACTIONS(2794), 1, + anon_sym_LPAREN, + STATE(1166), 1, + sym_named_type, + STATE(1756), 1, + sym__cairo_0_type, + ACTIONS(1449), 2, + anon_sym_felt, + anon_sym_codeoffset, + STATE(1129), 5, + sym__non_identifier_type, + sym__cairo_0_builtin_type, + sym__cairo_0_pointer_type, + sym__cairo_0_tuple_type, + sym_hint, + [48540] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1451), 1, + anon_sym_PERCENT_LBRACE, + ACTIONS(2792), 1, + sym_identifier, + ACTIONS(2794), 1, + anon_sym_LPAREN, + STATE(1166), 1, + sym_named_type, + STATE(1619), 1, + sym__cairo_0_type, + ACTIONS(1449), 2, + anon_sym_felt, + anon_sym_codeoffset, + STATE(1129), 5, + sym__non_identifier_type, + sym__cairo_0_builtin_type, + sym__cairo_0_pointer_type, + sym__cairo_0_tuple_type, + sym_hint, + [48570] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1451), 1, + anon_sym_PERCENT_LBRACE, + ACTIONS(2792), 1, + sym_identifier, + ACTIONS(2794), 1, + anon_sym_LPAREN, + STATE(1166), 1, + sym_named_type, + STATE(1293), 1, + sym__cairo_0_type, + ACTIONS(1449), 2, + anon_sym_felt, + anon_sym_codeoffset, + STATE(1129), 5, + sym__non_identifier_type, + sym__cairo_0_builtin_type, + sym__cairo_0_pointer_type, + sym__cairo_0_tuple_type, + sym_hint, + [48600] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2790), 1, + anon_sym_LT, + ACTIONS(2828), 1, + anon_sym_COLON_COLON, + STATE(1073), 1, + sym__cairo_1_type_arguments, + ACTIONS(2826), 9, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_SEMI, + anon_sym_implicits, + anon_sym_nopanic, + anon_sym_GT, + [48624] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2832), 1, + anon_sym_COLON, + ACTIONS(2830), 11, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_SEMI, + anon_sym_COLON_COLON, + anon_sym_implicits, + anon_sym_nopanic, + anon_sym_of, + anon_sym_GT, + [48644] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2834), 1, + sym_identifier, + ACTIONS(2836), 1, + anon_sym_LPAREN, + ACTIONS(2840), 1, + anon_sym_PERCENT_LBRACE, + STATE(1469), 1, + sym_named_type, + STATE(1471), 1, + sym__cairo_0_type, + ACTIONS(2838), 2, + anon_sym_felt, + anon_sym_codeoffset, + STATE(1231), 5, + sym__non_identifier_type, + sym__cairo_0_builtin_type, + sym__cairo_0_pointer_type, + sym__cairo_0_tuple_type, + sym_hint, + [48674] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2834), 1, + sym_identifier, + ACTIONS(2836), 1, + anon_sym_LPAREN, + ACTIONS(2840), 1, + anon_sym_PERCENT_LBRACE, + STATE(1469), 1, + sym_named_type, + STATE(1561), 1, + sym__cairo_0_type, + ACTIONS(2838), 2, + anon_sym_felt, + anon_sym_codeoffset, + STATE(1231), 5, + sym__non_identifier_type, + sym__cairo_0_builtin_type, + sym__cairo_0_pointer_type, + sym__cairo_0_tuple_type, + sym_hint, + [48704] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(748), 1, + anon_sym_COLON, + ACTIONS(750), 11, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_SEMI, + anon_sym_COLON_COLON, + anon_sym_implicits, + anon_sym_nopanic, + anon_sym_of, + anon_sym_GT, + [48724] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(966), 1, + anon_sym_COLON_COLON, + ACTIONS(2842), 1, + anon_sym_COLON, + ACTIONS(2814), 10, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_SEMI, + anon_sym_implicits, + anon_sym_nopanic, + anon_sym_LT, + anon_sym_GT, + [48746] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1451), 1, + anon_sym_PERCENT_LBRACE, + ACTIONS(2792), 1, + sym_identifier, + ACTIONS(2794), 1, + anon_sym_LPAREN, + STATE(1166), 1, + sym_named_type, + STATE(1632), 1, + sym__cairo_0_type, + ACTIONS(1449), 2, + anon_sym_felt, + anon_sym_codeoffset, + STATE(1129), 5, + sym__non_identifier_type, + sym__cairo_0_builtin_type, + sym__cairo_0_pointer_type, + sym__cairo_0_tuple_type, + sym_hint, + [48776] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1451), 1, + anon_sym_PERCENT_LBRACE, + ACTIONS(2792), 1, + sym_identifier, + ACTIONS(2794), 1, + anon_sym_LPAREN, + STATE(1166), 1, + sym_named_type, + STATE(1782), 1, + sym__cairo_0_type, + ACTIONS(1449), 2, + anon_sym_felt, + anon_sym_codeoffset, + STATE(1129), 5, + sym__non_identifier_type, + sym__cairo_0_builtin_type, + sym__cairo_0_pointer_type, + sym__cairo_0_tuple_type, + sym_hint, + [48806] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(378), 1, - anon_sym_DOT, - STATE(59), 1, - aux_sym_dotted_name_repeat1, - ACTIONS(376), 12, + ACTIONS(1451), 1, + anon_sym_PERCENT_LBRACE, + ACTIONS(2792), 1, + sym_identifier, + ACTIONS(2794), 1, + anon_sym_LPAREN, + STATE(1166), 1, + sym_named_type, + STATE(1646), 1, + sym__cairo_0_type, + ACTIONS(1449), 2, + anon_sym_felt, + anon_sym_codeoffset, + STATE(1129), 5, + sym__non_identifier_type, + sym__cairo_0_builtin_type, + sym__cairo_0_pointer_type, + sym__cairo_0_tuple_type, sym_hint, + [48836] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1451), 1, + anon_sym_PERCENT_LBRACE, + ACTIONS(2792), 1, + sym_identifier, + ACTIONS(2794), 1, anon_sym_LPAREN, + STATE(1166), 1, + sym_named_type, + STATE(1598), 1, + sym__cairo_0_type, + ACTIONS(1449), 2, + anon_sym_felt, + anon_sym_codeoffset, + STATE(1129), 5, + sym__non_identifier_type, + sym__cairo_0_builtin_type, + sym__cairo_0_pointer_type, + sym__cairo_0_tuple_type, + sym_hint, + [48866] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(802), 1, + anon_sym_COLON_COLON, + ACTIONS(2812), 1, + anon_sym_COLON, + ACTIONS(2810), 10, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + anon_sym_EQ, + anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(374), 27, - anon_sym_from, - anon_sym_as, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [53] = 5, + anon_sym_SEMI, + anon_sym_implicits, + anon_sym_nopanic, + anon_sym_LT, + anon_sym_GT, + [48888] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(385), 1, - anon_sym_DOT, - STATE(59), 1, - aux_sym_dotted_name_repeat1, - ACTIONS(383), 12, + ACTIONS(2834), 1, + sym_identifier, + ACTIONS(2836), 1, + anon_sym_LPAREN, + ACTIONS(2840), 1, + anon_sym_PERCENT_LBRACE, + STATE(1336), 1, + sym__cairo_0_type, + STATE(1469), 1, + sym_named_type, + ACTIONS(2838), 2, + anon_sym_felt, + anon_sym_codeoffset, + STATE(1231), 5, + sym__non_identifier_type, + sym__cairo_0_builtin_type, + sym__cairo_0_pointer_type, + sym__cairo_0_tuple_type, sym_hint, + [48918] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2834), 1, + sym_identifier, + ACTIONS(2836), 1, anon_sym_LPAREN, + ACTIONS(2840), 1, + anon_sym_PERCENT_LBRACE, + STATE(1343), 1, + sym__cairo_0_type, + STATE(1469), 1, + sym_named_type, + ACTIONS(2838), 2, + anon_sym_felt, + anon_sym_codeoffset, + STATE(1231), 5, + sym__non_identifier_type, + sym__cairo_0_builtin_type, + sym__cairo_0_pointer_type, + sym__cairo_0_tuple_type, + sym_hint, + [48948] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2846), 1, + anon_sym_COLON, + ACTIONS(2844), 11, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + anon_sym_EQ, + anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(381), 27, - anon_sym_from, - anon_sym_as, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [106] = 5, + anon_sym_SEMI, + anon_sym_COLON_COLON, + anon_sym_implicits, + anon_sym_nopanic, + anon_sym_of, + anon_sym_GT, + [48968] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(385), 1, - anon_sym_DOT, - STATE(60), 1, - aux_sym_dotted_name_repeat1, - ACTIONS(389), 12, - sym_hint, - anon_sym_LPAREN, + ACTIONS(896), 1, + anon_sym_COLON_COLON, + ACTIONS(2848), 1, + anon_sym_COLON, + ACTIONS(2808), 10, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + anon_sym_EQ, + anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(387), 27, - anon_sym_from, - anon_sym_as, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + anon_sym_SEMI, + anon_sym_implicits, + anon_sym_nopanic, + anon_sym_LT, + anon_sym_GT, + [48990] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2852), 1, + anon_sym_COLON, + ACTIONS(2850), 11, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_SEMI, + anon_sym_COLON_COLON, + anon_sym_implicits, + anon_sym_nopanic, + anon_sym_of, + anon_sym_GT, + [49010] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2834), 1, sym_identifier, - [159] = 5, + ACTIONS(2836), 1, + anon_sym_LPAREN, + ACTIONS(2840), 1, + anon_sym_PERCENT_LBRACE, + STATE(1342), 1, + sym__cairo_0_type, + STATE(1469), 1, + sym_named_type, + ACTIONS(2838), 2, + anon_sym_felt, + anon_sym_codeoffset, + STATE(1231), 5, + sym__non_identifier_type, + sym__cairo_0_builtin_type, + sym__cairo_0_pointer_type, + sym__cairo_0_tuple_type, + sym_hint, + [49040] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(391), 1, - anon_sym_DOT, - STATE(63), 1, - aux_sym_dotted_name_repeat1, - ACTIONS(389), 12, + ACTIONS(764), 1, + anon_sym_COLON, + ACTIONS(766), 11, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_SEMI, + anon_sym_COLON_COLON, + anon_sym_implicits, + anon_sym_nopanic, + anon_sym_of, + anon_sym_GT, + [49060] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(926), 1, + anon_sym_COLON, + ACTIONS(928), 11, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_SEMI, + anon_sym_COLON_COLON, + anon_sym_implicits, + anon_sym_nopanic, + anon_sym_of, + anon_sym_GT, + [49080] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2856), 1, + anon_sym_COLON, + ACTIONS(2854), 11, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_SEMI, + anon_sym_COLON_COLON, + anon_sym_implicits, + anon_sym_nopanic, + anon_sym_of, + anon_sym_GT, + [49100] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1451), 1, + anon_sym_PERCENT_LBRACE, + ACTIONS(2792), 1, + sym_identifier, + ACTIONS(2794), 1, + anon_sym_LPAREN, + STATE(1152), 1, + sym__cairo_0_type, + STATE(1166), 1, + sym_named_type, + ACTIONS(1449), 2, + anon_sym_felt, + anon_sym_codeoffset, + STATE(1129), 5, + sym__non_identifier_type, + sym__cairo_0_builtin_type, + sym__cairo_0_pointer_type, + sym__cairo_0_tuple_type, sym_hint, - ts_builtin_sym_end, + [49130] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1451), 1, + anon_sym_PERCENT_LBRACE, + ACTIONS(2792), 1, + sym_identifier, + ACTIONS(2794), 1, anon_sym_LPAREN, + STATE(1166), 1, + sym_named_type, + STATE(1650), 1, + sym__cairo_0_type, + ACTIONS(1449), 2, + anon_sym_felt, + anon_sym_codeoffset, + STATE(1129), 5, + sym__non_identifier_type, + sym__cairo_0_builtin_type, + sym__cairo_0_pointer_type, + sym__cairo_0_tuple_type, + sym_hint, + [49160] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2858), 1, + anon_sym_COLON_COLON, + ACTIONS(2786), 10, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(387), 27, - anon_sym_from, - anon_sym_as, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_SEMI, + anon_sym_implicits, + anon_sym_nopanic, + anon_sym_of, + anon_sym_GT, + [49179] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2860), 10, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_SEMI, + anon_sym_implicits, + anon_sym_nopanic, + anon_sym_of, + anon_sym_GT, + [49195] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2862), 10, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_SEMI, + anon_sym_implicits, + anon_sym_nopanic, + anon_sym_of, + anon_sym_GT, + [49211] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(2864), 1, sym_identifier, - [212] = 5, + ACTIONS(2866), 1, + anon_sym_COMMA, + ACTIONS(2868), 1, + anon_sym_RBRACE, + ACTIONS(2870), 1, + anon_sym_DOT_DOT, + STATE(1272), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + STATE(1627), 3, + sym_shorthand_field_initializer, + sym_field_initializer, + sym_base_field_initializer, + [49239] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(391), 1, - anon_sym_DOT, - STATE(64), 1, - aux_sym_dotted_name_repeat1, - ACTIONS(383), 12, - sym_hint, - ts_builtin_sym_end, + ACTIONS(2816), 1, anon_sym_LPAREN, + ACTIONS(2872), 1, + anon_sym_COLON_COLON, + ACTIONS(2820), 2, + anon_sym_EQ, + anon_sym_COLON, + ACTIONS(2818), 6, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(381), 27, - anon_sym_from, - anon_sym_as, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, + anon_sym_RBRACE, anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [265] = 5, + anon_sym_SEMI, + anon_sym_EQ_GT, + [49261] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(393), 1, - anon_sym_DOT, - STATE(64), 1, - aux_sym_dotted_name_repeat1, - ACTIONS(376), 12, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, + ACTIONS(2878), 1, + anon_sym_LBRACE, + ACTIONS(2880), 1, + anon_sym_COLON_COLON, + ACTIONS(2876), 2, + anon_sym_EQ, + anon_sym_COLON, + ACTIONS(2874), 6, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(374), 27, - anon_sym_from, - anon_sym_as, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, + anon_sym_RBRACE, anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + anon_sym_SEMI, + anon_sym_EQ_GT, + [49283] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(2864), 1, sym_identifier, - [318] = 3, + ACTIONS(2870), 1, + anon_sym_DOT_DOT, + ACTIONS(2882), 1, + anon_sym_COMMA, + ACTIONS(2884), 1, + anon_sym_RBRACE, + STATE(1272), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + STATE(1627), 3, + sym_shorthand_field_initializer, + sym_field_initializer, + sym_base_field_initializer, + [49311] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(376), 13, - sym_hint, - anon_sym_LPAREN, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(2864), 1, + sym_identifier, + ACTIONS(2870), 1, + anon_sym_DOT_DOT, + ACTIONS(2886), 1, anon_sym_COMMA, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(2888), 1, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - anon_sym_DOT, - sym_number, - ACTIONS(374), 27, - anon_sym_from, - anon_sym_as, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + STATE(1272), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + STATE(1627), 3, + sym_shorthand_field_initializer, + sym_field_initializer, + sym_base_field_initializer, + [49339] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(2864), 1, sym_identifier, - [366] = 6, + ACTIONS(2870), 1, + anon_sym_DOT_DOT, + ACTIONS(2890), 1, + anon_sym_COMMA, + ACTIONS(2892), 1, + anon_sym_RBRACE, + STATE(1272), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + STATE(1373), 3, + sym_shorthand_field_initializer, + sym_field_initializer, + sym_base_field_initializer, + [49367] = 8, ACTIONS(3), 1, sym_comment, - ACTIONS(400), 1, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(2864), 1, + sym_identifier, + ACTIONS(2870), 1, + anon_sym_DOT_DOT, + ACTIONS(2894), 1, anon_sym_COMMA, - ACTIONS(402), 1, - anon_sym_as, - STATE(75), 1, - aux_sym__import_list_repeat1, - ACTIONS(398), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(2896), 1, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(396), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + STATE(1272), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + STATE(1627), 3, + sym_shorthand_field_initializer, + sym_field_initializer, + sym_base_field_initializer, + [49395] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2898), 10, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_SEMI, + anon_sym_implicits, + anon_sym_nopanic, + anon_sym_of, + anon_sym_GT, + [49411] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2900), 1, + anon_sym_COLON_COLON, + ACTIONS(2786), 9, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_SEMI, + anon_sym_implicits, + anon_sym_nopanic, + anon_sym_GT, + [49429] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2902), 10, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_SEMI, + anon_sym_implicits, + anon_sym_nopanic, + anon_sym_of, + anon_sym_GT, + [49445] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2904), 10, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_SEMI, + anon_sym_implicits, + anon_sym_nopanic, + anon_sym_of, + anon_sym_GT, + [49461] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(2864), 1, sym_identifier, - [420] = 6, + ACTIONS(2870), 1, + anon_sym_DOT_DOT, + ACTIONS(2906), 1, + anon_sym_COMMA, + ACTIONS(2908), 1, + anon_sym_RBRACE, + STATE(1272), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + STATE(1529), 3, + sym_shorthand_field_initializer, + sym_field_initializer, + sym_base_field_initializer, + [49489] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2910), 10, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_SEMI, + anon_sym_implicits, + anon_sym_nopanic, + anon_sym_of, + anon_sym_GT, + [49505] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2912), 10, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_SEMI, + anon_sym_implicits, + anon_sym_nopanic, + anon_sym_of, + anon_sym_GT, + [49521] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2914), 10, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_SEMI, + anon_sym_implicits, + anon_sym_nopanic, + anon_sym_of, + anon_sym_GT, + [49537] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2790), 1, + anon_sym_LT, + ACTIONS(2828), 1, + anon_sym_COLON_COLON, + ACTIONS(2918), 1, + anon_sym_COLON, + ACTIONS(2920), 1, + anon_sym_STAR, + ACTIONS(2922), 1, + anon_sym_STAR_STAR, + STATE(1073), 1, + sym__cairo_1_type_arguments, + ACTIONS(2916), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + [49564] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(404), 1, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(1681), 1, + anon_sym_local, + ACTIONS(2924), 1, + sym_identifier, + ACTIONS(2926), 1, anon_sym_COMMA, - ACTIONS(406), 1, - anon_sym_as, - STATE(82), 1, - aux_sym__import_list_repeat1, - ACTIONS(398), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, + ACTIONS(2928), 1, + anon_sym_RBRACE, + STATE(1451), 1, + sym_field_declaration, + STATE(1460), 1, + sym_typed_identifier, + STATE(1228), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [49593] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(19), 1, anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(396), 26, - anon_sym_from, - anon_sym_using, + ACTIONS(2930), 1, anon_sym_namespace, + ACTIONS(2932), 1, anon_sym_struct, + ACTIONS(2934), 1, anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [474] = 3, + STATE(1173), 2, + sym_decorator, + aux_sym__cairo_0_decorated_definition_repeat1, + STATE(644), 3, + sym__cairo_0_namespace_definition, + sym__cairo_0_struct_definition, + sym__cairo_0_function_definition, + [49618] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(376), 13, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, + ACTIONS(19), 1, anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - anon_sym_DOT, - sym_number, - ACTIONS(374), 27, - anon_sym_from, - anon_sym_as, - anon_sym_using, + ACTIONS(2936), 1, anon_sym_namespace, + ACTIONS(2938), 1, anon_sym_struct, + ACTIONS(2940), 1, anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, + STATE(1173), 2, + sym_decorator, + aux_sym__cairo_0_decorated_definition_repeat1, + STATE(569), 3, + sym__cairo_0_namespace_definition, + sym__cairo_0_struct_definition, + sym__cairo_0_function_definition, + [49643] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2944), 1, + anon_sym_EQ, + ACTIONS(2942), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [522] = 5, + anon_sym_SEMI, + anon_sym_EQ_GT, + [49659] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(412), 1, + ACTIONS(2948), 1, + anon_sym_EQ, + ACTIONS(2946), 7, + anon_sym_RPAREN, anon_sym_COMMA, - STATE(69), 1, - aux_sym__import_list_repeat1, - ACTIONS(408), 11, - sym_hint, - ts_builtin_sym_end, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_if, + anon_sym_SEMI, + anon_sym_EQ_GT, + [49675] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2790), 1, + anon_sym_LT, + ACTIONS(2816), 1, anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(410), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, + ACTIONS(2818), 1, + anon_sym_SEMI, + ACTIONS(2822), 1, + anon_sym_LBRACE, + ACTIONS(2824), 1, + anon_sym_COLON_COLON, + ACTIONS(2950), 1, + anon_sym_EQ, + ACTIONS(2953), 1, + anon_sym_COLON, + STATE(1073), 1, + sym__cairo_1_type_arguments, + [49703] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2958), 1, + anon_sym_EQ, + ACTIONS(2956), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [573] = 5, + anon_sym_SEMI, + anon_sym_EQ_GT, + [49719] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(404), 1, + ACTIONS(2962), 1, + anon_sym_EQ, + ACTIONS(2960), 7, + anon_sym_RPAREN, anon_sym_COMMA, - STATE(83), 1, - aux_sym__import_list_repeat1, - ACTIONS(398), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(396), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, + anon_sym_RBRACE, + anon_sym_COLON, anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [624] = 6, + anon_sym_SEMI, + anon_sym_EQ_GT, + [49735] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2966), 1, + anon_sym_EQ, + ACTIONS(2964), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_if, + anon_sym_SEMI, + anon_sym_EQ_GT, + [49751] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2820), 1, + anon_sym_EQ, + ACTIONS(2818), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_if, + anon_sym_SEMI, + anon_sym_EQ_GT, + [49767] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2970), 1, + anon_sym_STAR, + ACTIONS(2968), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_STAR_STAR, + [49783] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2974), 1, + anon_sym_EQ, + ACTIONS(2972), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_if, + anon_sym_SEMI, + anon_sym_EQ_GT, + [49799] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2978), 1, + anon_sym_EQ, + ACTIONS(2976), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_if, + anon_sym_SEMI, + anon_sym_EQ_GT, + [49815] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2982), 1, + anon_sym_EQ, + ACTIONS(2980), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_if, + anon_sym_SEMI, + anon_sym_EQ_GT, + [49831] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2986), 1, + anon_sym_STAR, + ACTIONS(2984), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_STAR_STAR, + [49847] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(415), 1, - sym_identifier, - STATE(72), 1, - sym_dotted_name, - STATE(89), 1, - sym_aliased_import, - ACTIONS(419), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(2990), 1, + anon_sym_EQ, + ACTIONS(2988), 7, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(417), 25, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, + anon_sym_COLON, anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - [677] = 4, + anon_sym_SEMI, + anon_sym_EQ_GT, + [49863] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(402), 1, - anon_sym_as, - ACTIONS(423), 12, - sym_hint, - anon_sym_LPAREN, + ACTIONS(2994), 1, + anon_sym_STAR, + ACTIONS(2992), 7, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + anon_sym_EQ, + anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(421), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [726] = 5, + anon_sym_COLON, + anon_sym_STAR_STAR, + [49879] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(400), 1, + ACTIONS(2998), 1, + anon_sym_EQ, + ACTIONS(2996), 7, + anon_sym_RPAREN, anon_sym_COMMA, - STATE(76), 1, - aux_sym__import_list_repeat1, - ACTIONS(398), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(396), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, + anon_sym_COLON, anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [777] = 6, + anon_sym_SEMI, + anon_sym_EQ_GT, + [49895] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(425), 1, - sym_identifier, - STATE(81), 1, - sym_dotted_name, - STATE(88), 1, - sym_aliased_import, - ACTIONS(419), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(417), 25, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, + ACTIONS(3002), 1, + anon_sym_EQ, + ACTIONS(3000), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - [830] = 5, + anon_sym_SEMI, + anon_sym_EQ_GT, + [49911] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(431), 1, + ACTIONS(3006), 1, + anon_sym_EQ, + ACTIONS(3004), 7, + anon_sym_RPAREN, anon_sym_COMMA, - STATE(79), 1, - aux_sym__import_list_repeat1, - ACTIONS(429), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(427), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, + anon_sym_COLON, anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [881] = 5, + anon_sym_SEMI, + anon_sym_EQ_GT, + [49927] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(433), 1, + ACTIONS(3010), 1, + anon_sym_EQ, + ACTIONS(3008), 7, + anon_sym_RPAREN, anon_sym_COMMA, - STATE(79), 1, - aux_sym__import_list_repeat1, - ACTIONS(429), 11, - sym_hint, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_if, + anon_sym_SEMI, + anon_sym_EQ_GT, + [49943] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2790), 1, + anon_sym_LT, + ACTIONS(2816), 1, anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(2822), 1, + anon_sym_LBRACE, + ACTIONS(2824), 1, + anon_sym_COLON_COLON, + ACTIONS(3012), 1, + anon_sym_COLON, + STATE(1073), 1, + sym__cairo_1_type_arguments, + ACTIONS(2950), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [49969] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3016), 1, + anon_sym_STAR, + ACTIONS(3014), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(427), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, + anon_sym_COLON, + anon_sym_STAR_STAR, + [49985] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3020), 1, + anon_sym_EQ, + ACTIONS(3018), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [932] = 6, + anon_sym_SEMI, + anon_sym_EQ_GT, + [50001] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(415), 1, - sym_identifier, - STATE(72), 1, - sym_dotted_name, - STATE(89), 1, - sym_aliased_import, - ACTIONS(437), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3024), 1, + anon_sym_EQ, + ACTIONS(3022), 7, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(435), 25, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, + anon_sym_COLON, anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - [985] = 6, + anon_sym_SEMI, + anon_sym_EQ_GT, + [50017] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(415), 1, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(2864), 1, sym_identifier, - STATE(72), 1, - sym_dotted_name, - STATE(89), 1, - sym_aliased_import, - ACTIONS(419), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(2870), 1, + anon_sym_DOT_DOT, + STATE(1272), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + STATE(1627), 3, + sym_shorthand_field_initializer, + sym_field_initializer, + sym_base_field_initializer, + [50039] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3028), 1, + anon_sym_EQ, + ACTIONS(3026), 7, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(417), 25, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, + anon_sym_COLON, anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - [1038] = 5, + anon_sym_SEMI, + anon_sym_EQ_GT, + [50055] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(439), 1, + ACTIONS(3032), 1, + anon_sym_EQ, + ACTIONS(3030), 7, + anon_sym_RPAREN, anon_sym_COMMA, - STATE(79), 1, - aux_sym__import_list_repeat1, - ACTIONS(408), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(410), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, + anon_sym_COLON, anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [1089] = 6, + anon_sym_SEMI, + anon_sym_EQ_GT, + [50071] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(425), 1, - sym_identifier, - STATE(81), 1, - sym_dotted_name, - STATE(88), 1, - sym_aliased_import, - ACTIONS(419), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(417), 25, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - [1142] = 4, + ACTIONS(3036), 1, + anon_sym_STAR, + ACTIONS(3034), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_STAR_STAR, + [50087] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(406), 1, - anon_sym_as, - ACTIONS(423), 12, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, + ACTIONS(2920), 1, + anon_sym_STAR, + ACTIONS(2922), 1, + anon_sym_STAR_STAR, + ACTIONS(3038), 1, + anon_sym_COLON, + ACTIONS(2916), 5, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(421), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + [50107] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3042), 1, + anon_sym_STAR, + ACTIONS(3040), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_STAR_STAR, + [50123] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3046), 1, + anon_sym_EQ, + ACTIONS(3044), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [1191] = 5, + anon_sym_SEMI, + anon_sym_EQ_GT, + [50139] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3050), 1, + anon_sym_EQ, + ACTIONS(3048), 7, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_if, + anon_sym_SEMI, + anon_sym_EQ_GT, + [50155] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(442), 1, + ACTIONS(3054), 1, + anon_sym_EQ, + ACTIONS(3052), 7, + anon_sym_RPAREN, anon_sym_COMMA, - STATE(69), 1, - aux_sym__import_list_repeat1, - ACTIONS(429), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(427), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, + anon_sym_RBRACE, + anon_sym_COLON, anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [1242] = 5, + anon_sym_SEMI, + anon_sym_EQ_GT, + [50171] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(444), 1, + ACTIONS(2920), 1, + anon_sym_STAR, + ACTIONS(2922), 1, + anon_sym_STAR_STAR, + ACTIONS(3056), 6, + anon_sym_RPAREN, anon_sym_COMMA, - STATE(69), 1, - aux_sym__import_list_repeat1, - ACTIONS(429), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(427), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [1293] = 6, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + [50189] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(425), 1, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3058), 1, sym_identifier, - STATE(81), 1, - sym_dotted_name, - STATE(88), 1, - sym_aliased_import, - ACTIONS(437), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(435), 25, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - [1346] = 5, + ACTIONS(3060), 1, + anon_sym_COMMA, + ACTIONS(3062), 1, + anon_sym_RBRACE, + STATE(1594), 1, + sym_enum_variant, + STATE(1205), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [50212] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(448), 1, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3064), 1, sym_identifier, - STATE(85), 1, - aux_sym_builtin_directive_repeat1, - ACTIONS(446), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(451), 25, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - [1396] = 3, + ACTIONS(3066), 1, + anon_sym_COMMA, + ACTIONS(3068), 1, + anon_sym_RBRACE, + STATE(1577), 1, + sym_field_declaration, + STATE(1245), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [50235] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(453), 12, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3058), 1, + sym_identifier, + ACTIONS(3070), 1, anon_sym_COMMA, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(455), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3072), 1, + anon_sym_RBRACE, + STATE(1594), 1, + sym_enum_variant, + STATE(1205), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [50258] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3064), 1, sym_identifier, - [1442] = 5, + ACTIONS(3074), 1, + anon_sym_COMMA, + ACTIONS(3076), 1, + anon_sym_RBRACE, + STATE(1577), 1, + sym_field_declaration, + STATE(1245), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [50281] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3078), 1, + anon_sym_LBRACE, + ACTIONS(3080), 1, + anon_sym_COLON, + ACTIONS(3082), 1, + anon_sym_SEMI, + ACTIONS(3084), 1, + anon_sym_LT2, + STATE(968), 1, + sym_declaration_list, + STATE(1206), 1, + sym_type_parameters, + STATE(1505), 1, + sym_trait_bounds, + [50306] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(457), 1, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3058), 1, sym_identifier, - STATE(87), 1, - aux_sym_builtin_directive_repeat1, - ACTIONS(446), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3086), 1, + anon_sym_COMMA, + ACTIONS(3088), 1, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(451), 25, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - [1492] = 3, + STATE(1594), 1, + sym_enum_variant, + STATE(1205), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [50329] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(2926), 1, + anon_sym_COMMA, + ACTIONS(3064), 1, + sym_identifier, + ACTIONS(3090), 1, + anon_sym_RBRACE, + STATE(1451), 1, + sym_field_declaration, + STATE(1228), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [50352] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(423), 12, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3064), 1, + sym_identifier, + ACTIONS(3092), 1, anon_sym_COMMA, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(421), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3094), 1, + anon_sym_RBRACE, + STATE(1577), 1, + sym_field_declaration, + STATE(1245), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [50375] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3080), 1, + anon_sym_COLON, + ACTIONS(3084), 1, + anon_sym_LT2, + ACTIONS(3096), 1, + anon_sym_LBRACE, + ACTIONS(3098), 1, + anon_sym_SEMI, + STATE(322), 1, + sym_declaration_list, + STATE(1220), 1, + sym_type_parameters, + STATE(1507), 1, + sym_trait_bounds, + [50400] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3058), 1, sym_identifier, - [1538] = 3, + ACTIONS(3100), 1, + anon_sym_COMMA, + ACTIONS(3102), 1, + anon_sym_RBRACE, + STATE(1594), 1, + sym_enum_variant, + STATE(1205), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [50423] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(423), 12, - sym_hint, - anon_sym_LPAREN, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3058), 1, + sym_identifier, + ACTIONS(3104), 1, anon_sym_COMMA, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3106), 1, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(421), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + STATE(1459), 1, + sym_enum_variant, + STATE(1201), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [50446] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3058), 1, sym_identifier, - [1584] = 4, + ACTIONS(3108), 1, + anon_sym_COMMA, + ACTIONS(3110), 1, + anon_sym_RBRACE, + STATE(1594), 1, + sym_enum_variant, + STATE(1205), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [50469] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(464), 1, - anon_sym_else, - ACTIONS(460), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(462), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3064), 1, sym_identifier, - [1632] = 5, + ACTIONS(3112), 1, + anon_sym_COMMA, + ACTIONS(3114), 1, + anon_sym_RBRACE, + STATE(1577), 1, + sym_field_declaration, + STATE(1245), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [50492] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(468), 1, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3064), 1, sym_identifier, - STATE(85), 1, - aux_sym_builtin_directive_repeat1, - ACTIONS(466), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(470), 25, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - [1682] = 4, + ACTIONS(3116), 1, + anon_sym_COMMA, + ACTIONS(3118), 1, + anon_sym_RBRACE, + STATE(1498), 1, + sym_field_declaration, + STATE(1208), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [50515] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(476), 1, - anon_sym_else, - ACTIONS(472), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(474), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3064), 1, sym_identifier, - [1730] = 4, + ACTIONS(3120), 1, + anon_sym_COMMA, + ACTIONS(3122), 1, + anon_sym_RBRACE, + STATE(1577), 1, + sym_field_declaration, + STATE(1245), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [50538] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(478), 1, - anon_sym_else, - ACTIONS(472), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3058), 1, + sym_identifier, + ACTIONS(3124), 1, + anon_sym_COMMA, + ACTIONS(3126), 1, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(474), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + STATE(1594), 1, + sym_enum_variant, + STATE(1205), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [50561] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3064), 1, + sym_identifier, + ACTIONS(3128), 1, + anon_sym_COMMA, + ACTIONS(3130), 1, + anon_sym_RBRACE, + STATE(1577), 1, + sym_field_declaration, + STATE(1245), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [50584] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3058), 1, + sym_identifier, + ACTIONS(3132), 1, + anon_sym_COMMA, + ACTIONS(3134), 1, + anon_sym_RBRACE, + STATE(1384), 1, + sym_enum_variant, + STATE(1191), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [50607] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3138), 1, + anon_sym_RPAREN, + STATE(1623), 1, + sym_parameter, + ACTIONS(3136), 2, sym_identifier, - [1778] = 5, + sym_self, + ACTIONS(3140), 2, + anon_sym_ref, + anon_sym_mut, + [50625] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(480), 1, + ACTIONS(3142), 1, sym_identifier, - STATE(87), 1, - aux_sym_builtin_directive_repeat1, - ACTIONS(466), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3144), 1, + anon_sym_COMMA, + ACTIONS(3146), 1, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(470), 25, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - [1828] = 3, + ACTIONS(3148), 1, + anon_sym_ref, + ACTIONS(3150), 1, + anon_sym_mut, + STATE(1584), 1, + sym_field_pattern, + [50647] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(453), 12, - sym_hint, - anon_sym_LPAREN, + ACTIONS(3152), 1, + anon_sym_RPAREN, + STATE(1623), 1, + sym_parameter, + ACTIONS(3136), 2, + sym_identifier, + sym_self, + ACTIONS(3140), 2, + anon_sym_ref, + anon_sym_mut, + [50665] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3154), 1, + anon_sym_RPAREN, + STATE(1369), 1, + sym_parameter, + ACTIONS(3136), 2, + sym_identifier, + sym_self, + ACTIONS(3140), 2, + anon_sym_ref, + anon_sym_mut, + [50683] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3156), 6, + anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + anon_sym_EQ, + anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(455), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + anon_sym_COLON, + [50695] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3142), 1, sym_identifier, - [1874] = 4, + ACTIONS(3148), 1, + anon_sym_ref, + ACTIONS(3150), 1, + anon_sym_mut, + ACTIONS(3158), 1, + anon_sym_COMMA, + ACTIONS(3160), 1, + anon_sym_RBRACE, + STATE(1584), 1, + sym_field_pattern, + [50717] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(482), 1, - anon_sym_else, - ACTIONS(460), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3162), 1, + anon_sym_DOT, + STATE(1154), 1, + aux_sym_dotted_name_repeat1, + ACTIONS(1502), 4, + anon_sym_import, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + [50733] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3142), 1, + sym_identifier, + ACTIONS(3148), 1, + anon_sym_ref, + ACTIONS(3150), 1, + anon_sym_mut, + ACTIONS(3165), 1, + anon_sym_COMMA, + ACTIONS(3167), 1, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(462), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + STATE(1584), 1, + sym_field_pattern, + [50755] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3169), 1, + anon_sym_RPAREN, + STATE(1623), 1, + sym_parameter, + ACTIONS(3136), 2, sym_identifier, - [1922] = 3, + sym_self, + ACTIONS(3140), 2, + anon_sym_ref, + anon_sym_mut, + [50773] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(486), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3142), 1, + sym_identifier, + ACTIONS(3148), 1, + anon_sym_ref, + ACTIONS(3150), 1, + anon_sym_mut, + ACTIONS(3171), 1, + anon_sym_COMMA, + ACTIONS(3173), 1, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(484), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + STATE(1335), 1, + sym_field_pattern, + [50795] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3175), 1, + anon_sym_RPAREN, + STATE(1623), 1, + sym_parameter, + ACTIONS(3136), 2, sym_identifier, - [1967] = 3, + sym_self, + ACTIONS(3140), 2, + anon_sym_ref, + anon_sym_mut, + [50813] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(488), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(490), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(3177), 1, + sym_identifier, + ACTIONS(3179), 1, anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3181), 1, + anon_sym_GT, + STATE(1573), 2, + sym_abstract_type, + sym_constrained_type_parameter, + [50833] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3183), 1, + anon_sym_RPAREN, + STATE(1490), 1, + sym_parameter, + ACTIONS(3136), 2, sym_identifier, - [2012] = 3, + sym_self, + ACTIONS(3140), 2, + anon_sym_ref, + anon_sym_mut, + [50851] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(492), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(494), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, + ACTIONS(3185), 1, + anon_sym_RPAREN, + STATE(1623), 1, + sym_parameter, + ACTIONS(3136), 2, + sym_identifier, + sym_self, + ACTIONS(3140), 2, + anon_sym_ref, + anon_sym_mut, + [50869] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3187), 1, + anon_sym_RPAREN, + STATE(1463), 1, + sym_parameter, + ACTIONS(3136), 2, + sym_identifier, + sym_self, + ACTIONS(3140), 2, + anon_sym_ref, + anon_sym_mut, + [50887] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3189), 1, + anon_sym_RPAREN, + STATE(1623), 1, + sym_parameter, + ACTIONS(3136), 2, + sym_identifier, + sym_self, + ACTIONS(3140), 2, + anon_sym_ref, + anon_sym_mut, + [50905] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3191), 1, + anon_sym_RPAREN, + STATE(1623), 1, + sym_parameter, + ACTIONS(3136), 2, + sym_identifier, + sym_self, + ACTIONS(3140), 2, + anon_sym_ref, + anon_sym_mut, + [50923] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3142), 1, + sym_identifier, + ACTIONS(3148), 1, + anon_sym_ref, + ACTIONS(3150), 1, + anon_sym_mut, + ACTIONS(3193), 1, + anon_sym_COMMA, + ACTIONS(3195), 1, + anon_sym_RBRACE, + STATE(1584), 1, + sym_field_pattern, + [50945] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3056), 6, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + [50957] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(3177), 1, + sym_identifier, + ACTIONS(3179), 1, anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3197), 1, + anon_sym_GT, + STATE(1573), 2, + sym_abstract_type, + sym_constrained_type_parameter, + [50977] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3199), 1, + anon_sym_RPAREN, + STATE(1504), 1, + sym_parameter, + ACTIONS(3136), 2, sym_identifier, - [2057] = 3, + sym_self, + ACTIONS(3140), 2, + anon_sym_ref, + anon_sym_mut, + [50995] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(496), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(498), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(3177), 1, + sym_identifier, + ACTIONS(3179), 1, anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3201), 1, + anon_sym_GT, + STATE(1573), 2, + sym_abstract_type, + sym_constrained_type_parameter, + [51015] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3203), 1, + anon_sym_RPAREN, + STATE(1519), 1, + sym_parameter, + ACTIONS(3136), 2, sym_identifier, - [2102] = 3, + sym_self, + ACTIONS(3140), 2, + anon_sym_ref, + anon_sym_mut, + [51033] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(502), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3142), 1, + sym_identifier, + ACTIONS(3148), 1, + anon_sym_ref, + ACTIONS(3150), 1, + anon_sym_mut, + ACTIONS(3205), 1, + anon_sym_COMMA, + ACTIONS(3207), 1, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(500), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + STATE(1372), 1, + sym_field_pattern, + [51055] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(3177), 1, sym_identifier, - [2147] = 3, + ACTIONS(3179), 1, + anon_sym_const, + ACTIONS(3209), 1, + anon_sym_GT, + STATE(1573), 2, + sym_abstract_type, + sym_constrained_type_parameter, + [51075] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(506), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, + ACTIONS(3211), 1, anon_sym_AT, - anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(504), 26, - anon_sym_from, - anon_sym_using, + STATE(1173), 2, + sym_decorator, + aux_sym__cairo_0_decorated_definition_repeat1, + ACTIONS(3214), 3, anon_sym_namespace, anon_sym_struct, anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + [51091] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3216), 1, + anon_sym_RPAREN, + STATE(1623), 1, + sym_parameter, + ACTIONS(3136), 2, sym_identifier, - [2192] = 3, + sym_self, + ACTIONS(3140), 2, + anon_sym_ref, + anon_sym_mut, + [51109] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(510), 11, - sym_hint, + ACTIONS(3218), 1, + anon_sym_RPAREN, + STATE(1623), 1, + sym_parameter, + ACTIONS(3136), 2, + sym_identifier, + sym_self, + ACTIONS(3140), 2, + anon_sym_ref, + anon_sym_mut, + [51127] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3220), 1, + anon_sym_DOT, + STATE(1154), 1, + aux_sym_dotted_name_repeat1, + ACTIONS(1521), 4, + anon_sym_import, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + [51143] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3222), 1, + anon_sym_RPAREN, + STATE(1623), 1, + sym_parameter, + ACTIONS(3136), 2, + sym_identifier, + sym_self, + ACTIONS(3140), 2, + anon_sym_ref, + anon_sym_mut, + [51161] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3220), 1, + anon_sym_DOT, + STATE(1176), 1, + aux_sym_dotted_name_repeat1, + ACTIONS(1515), 4, + anon_sym_import, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + [51177] = 5, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2916), 1, + anon_sym_LF, + ACTIONS(3226), 1, + anon_sym_COLON, + ACTIONS(3224), 2, + anon_sym_EQ, + anon_sym_SEMI, + ACTIONS(3228), 2, + anon_sym_STAR, + anon_sym_STAR_STAR, + [51195] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3230), 5, anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(508), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_SEMI, + [51206] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3232), 1, + sym_identifier, + ACTIONS(3234), 1, + anon_sym_LPAREN, + STATE(421), 1, + sym_dotted_name, + STATE(486), 1, + sym_aliased_import, + STATE(567), 1, + sym__import_list, + [51225] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3236), 1, + anon_sym_LBRACE, + ACTIONS(3238), 1, + anon_sym_DASH_GT, + ACTIONS(3240), 1, + anon_sym_SEMI, + ACTIONS(3242), 1, + anon_sym_implicits, + ACTIONS(3244), 1, + anon_sym_nopanic, + [51244] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3084), 1, + anon_sym_LT2, + ACTIONS(3246), 1, + anon_sym_LBRACE, + ACTIONS(3248), 1, + anon_sym_SEMI, + STATE(998), 1, + sym_field_declaration_list, + STATE(1514), 1, + sym_type_parameters, + [51263] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2968), 1, + anon_sym_LF, + ACTIONS(2970), 4, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_SEMI, + [51276] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3250), 1, + anon_sym_LBRACE, + ACTIONS(3252), 1, + anon_sym_DASH_GT, + ACTIONS(3254), 1, + anon_sym_SEMI, + ACTIONS(3256), 1, + anon_sym_implicits, + ACTIONS(3258), 1, + anon_sym_nopanic, + [51295] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3058), 1, sym_identifier, - [2237] = 3, + STATE(1594), 1, + sym_enum_variant, + STATE(1205), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [51312] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3260), 1, + anon_sym_LBRACE, + ACTIONS(3262), 1, + anon_sym_DASH_GT, + ACTIONS(3264), 1, + anon_sym_SEMI, + ACTIONS(3266), 1, + anon_sym_implicits, + ACTIONS(3268), 1, + anon_sym_nopanic, + [51331] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3254), 1, + anon_sym_SEMI, + ACTIONS(3270), 1, + anon_sym_LBRACE, + ACTIONS(3272), 1, + anon_sym_DASH_GT, + ACTIONS(3274), 1, + anon_sym_implicits, + ACTIONS(3276), 1, + anon_sym_nopanic, + [51350] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(3040), 1, + anon_sym_LF, + ACTIONS(3042), 4, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_SEMI, + [51363] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(3014), 1, + anon_sym_LF, + ACTIONS(3016), 4, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_SEMI, + [51376] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(514), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(512), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3058), 1, sym_identifier, - [2282] = 3, + STATE(1525), 1, + sym_enum_variant, + STATE(1310), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [51393] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(518), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(516), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + STATE(1623), 1, + sym_parameter, + ACTIONS(3136), 2, sym_identifier, - [2327] = 3, + sym_self, + ACTIONS(3140), 2, + anon_sym_ref, + anon_sym_mut, + [51408] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(488), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3250), 1, + anon_sym_LBRACE, + ACTIONS(3256), 1, + anon_sym_implicits, + ACTIONS(3278), 1, + anon_sym_DASH_GT, + ACTIONS(3280), 1, + anon_sym_SEMI, + ACTIONS(3282), 1, + anon_sym_nopanic, + [51427] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3236), 1, + anon_sym_LBRACE, + ACTIONS(3242), 1, + anon_sym_implicits, + ACTIONS(3264), 1, + anon_sym_SEMI, + ACTIONS(3284), 1, + anon_sym_DASH_GT, + ACTIONS(3286), 1, + anon_sym_nopanic, + [51446] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3290), 1, + anon_sym_as, + ACTIONS(3292), 1, + anon_sym_COLON_COLON, + ACTIONS(3288), 3, + anon_sym_COMMA, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(490), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [2372] = 3, + anon_sym_SEMI, + [51461] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(520), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(522), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [2417] = 3, + ACTIONS(3260), 1, + anon_sym_LBRACE, + ACTIONS(3266), 1, + anon_sym_implicits, + ACTIONS(3294), 1, + anon_sym_DASH_GT, + ACTIONS(3296), 1, + anon_sym_SEMI, + ACTIONS(3298), 1, + anon_sym_nopanic, + [51480] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(524), 11, - sym_hint, - ts_builtin_sym_end, + ACTIONS(3270), 1, + anon_sym_LBRACE, + ACTIONS(3274), 1, + anon_sym_implicits, + ACTIONS(3296), 1, + anon_sym_SEMI, + ACTIONS(3300), 1, + anon_sym_DASH_GT, + ACTIONS(3302), 1, + anon_sym_nopanic, + [51499] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3304), 5, anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(526), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [2462] = 3, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_SEMI, + [51510] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(530), 11, - sym_hint, + ACTIONS(3306), 5, anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(528), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_SEMI, + [51521] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1681), 1, + anon_sym_local, + ACTIONS(3308), 1, sym_identifier, - [2507] = 3, + ACTIONS(3310), 1, + anon_sym_RPAREN, + ACTIONS(3312), 1, + anon_sym_COMMA, + STATE(1435), 1, + sym_typed_identifier, + [51540] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(524), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(526), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3058), 1, sym_identifier, - [2552] = 3, + STATE(1398), 1, + sym_enum_variant, + STATE(1310), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [51557] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(492), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3316), 1, + anon_sym_as, + ACTIONS(3318), 1, + anon_sym_COLON_COLON, + ACTIONS(3314), 3, + anon_sym_COMMA, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(494), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [2597] = 3, + anon_sym_SEMI, + [51572] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(534), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3290), 1, + anon_sym_as, + ACTIONS(3320), 1, + anon_sym_COLON_COLON, + ACTIONS(3288), 3, + anon_sym_COMMA, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(532), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + anon_sym_SEMI, + [51587] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3290), 1, + anon_sym_as, + ACTIONS(3322), 1, + anon_sym_COLON_COLON, + ACTIONS(3288), 3, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_SEMI, + [51602] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3058), 1, sym_identifier, - [2642] = 3, + STATE(1647), 1, + sym_enum_variant, + STATE(1310), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [51619] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(536), 11, - sym_hint, - ts_builtin_sym_end, + ACTIONS(3078), 1, + anon_sym_LBRACE, + ACTIONS(3080), 1, + anon_sym_COLON, + ACTIONS(3324), 1, + anon_sym_SEMI, + STATE(1012), 1, + sym_declaration_list, + STATE(1395), 1, + sym_trait_bounds, + [51638] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3326), 5, anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(538), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_SEMI, + [51649] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3064), 1, sym_identifier, - [2687] = 3, + STATE(1442), 1, + sym_field_declaration, + STATE(1310), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [51666] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(534), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(532), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, + ACTIONS(3236), 1, + anon_sym_LBRACE, + ACTIONS(3242), 1, + anon_sym_implicits, + ACTIONS(3328), 1, + anon_sym_DASH_GT, + ACTIONS(3330), 1, + anon_sym_SEMI, + ACTIONS(3332), 1, + anon_sym_nopanic, + [51685] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(3177), 1, + sym_identifier, + ACTIONS(3179), 1, anon_sym_const, + STATE(1573), 2, + sym_abstract_type, + sym_constrained_type_parameter, + [51702] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3334), 5, + anon_sym_LPAREN, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_SEMI, + [51713] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1681), 1, anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3308), 1, + sym_identifier, + ACTIONS(3336), 1, + anon_sym_LPAREN, + STATE(1893), 2, + sym__ref_binding, + sym_typed_identifier, + [51730] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3260), 1, + anon_sym_LBRACE, + ACTIONS(3266), 1, + anon_sym_implicits, + ACTIONS(3330), 1, + anon_sym_SEMI, + ACTIONS(3338), 1, + anon_sym_DASH_GT, + ACTIONS(3340), 1, + anon_sym_nopanic, + [51749] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2788), 1, + anon_sym_COLON_COLON, + ACTIONS(2790), 1, + anon_sym_LT, + ACTIONS(3342), 1, + anon_sym_COLON, + STATE(1055), 1, + sym__cairo_1_type_arguments, + STATE(1091), 1, + sym_trait_bounds, + [51768] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2790), 1, + anon_sym_LT, + ACTIONS(2828), 1, + anon_sym_COLON_COLON, + ACTIONS(3342), 1, + anon_sym_COLON, + STATE(1073), 1, + sym__cairo_1_type_arguments, + STATE(1089), 1, + sym_trait_bounds, + [51787] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3064), 1, sym_identifier, - [2732] = 3, + STATE(1577), 1, + sym_field_declaration, + STATE(1245), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [51804] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3040), 1, + anon_sym_STAR_STAR, + ACTIONS(3042), 1, + anon_sym_STAR, + ACTIONS(3344), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + [51819] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3349), 1, + anon_sym_COLON, + ACTIONS(3347), 4, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_RBRACE, + [51832] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2992), 1, + anon_sym_LF, + ACTIONS(2994), 4, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_SEMI, + [51845] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(540), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(542), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [2777] = 3, + ACTIONS(3080), 1, + anon_sym_COLON, + ACTIONS(3096), 1, + anon_sym_LBRACE, + ACTIONS(3351), 1, + anon_sym_SEMI, + STATE(375), 1, + sym_declaration_list, + STATE(1456), 1, + sym_trait_bounds, + [51864] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(544), 11, - sym_hint, - ts_builtin_sym_end, + ACTIONS(3353), 1, + sym_identifier, + ACTIONS(3355), 1, anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(546), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, + STATE(473), 1, + sym_dotted_name, + STATE(509), 1, + sym_aliased_import, + STATE(627), 1, + sym__import_list, + [51883] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1455), 1, + anon_sym_impl, + ACTIONS(3179), 1, anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3357), 1, sym_identifier, - [2822] = 3, + STATE(1433), 2, + sym_abstract_type, + sym_constrained_type_parameter, + [51900] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(486), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(484), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, + ACTIONS(1681), 1, anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3308), 1, sym_identifier, - [2867] = 3, + ACTIONS(3359), 1, + anon_sym_RPAREN, + ACTIONS(3361), 1, + anon_sym_COMMA, + STATE(1419), 1, + sym_typed_identifier, + [51919] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(548), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(550), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3236), 1, + anon_sym_LBRACE, + ACTIONS(3242), 1, + anon_sym_implicits, + ACTIONS(3363), 1, + anon_sym_DASH_GT, + ACTIONS(3365), 1, + anon_sym_SEMI, + ACTIONS(3367), 1, + anon_sym_nopanic, + [51938] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3270), 1, + anon_sym_LBRACE, + ACTIONS(3274), 1, + anon_sym_implicits, + ACTIONS(3369), 1, + anon_sym_DASH_GT, + ACTIONS(3371), 1, + anon_sym_SEMI, + ACTIONS(3373), 1, + anon_sym_nopanic, + [51957] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3080), 1, + anon_sym_COLON, + ACTIONS(3375), 1, + anon_sym_COMMA, + ACTIONS(3377), 1, + anon_sym_GT, + STATE(1332), 1, + aux_sym_type_parameters_repeat1, + STATE(1658), 1, + sym_trait_bounds, + [51976] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3084), 1, + anon_sym_LT2, + ACTIONS(3379), 1, + anon_sym_LBRACE, + ACTIONS(3381), 1, + anon_sym_SEMI, + STATE(383), 1, + sym_field_declaration_list, + STATE(1564), 1, + sym_type_parameters, + [51995] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3064), 1, sym_identifier, - [2912] = 3, + STATE(1421), 1, + sym_field_declaration, + STATE(1310), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [52012] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(540), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(542), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, + ACTIONS(1681), 1, anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3308), 1, sym_identifier, - [2957] = 3, + ACTIONS(3336), 1, + anon_sym_LPAREN, + STATE(1827), 2, + sym__ref_binding, + sym_typed_identifier, + [52029] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(530), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(528), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3385), 1, + anon_sym_COLON, + ACTIONS(3383), 4, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, + anon_sym_RBRACE, + [52042] = 4, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(3056), 1, + anon_sym_LF, + ACTIONS(3228), 2, + anon_sym_STAR, + anon_sym_STAR_STAR, + ACTIONS(3387), 2, + anon_sym_EQ, + anon_sym_SEMI, + [52057] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3270), 1, + anon_sym_LBRACE, + ACTIONS(3274), 1, + anon_sym_implicits, + ACTIONS(3389), 1, + anon_sym_DASH_GT, + ACTIONS(3391), 1, + anon_sym_SEMI, + ACTIONS(3393), 1, + anon_sym_nopanic, + [52076] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3260), 1, + anon_sym_LBRACE, + ACTIONS(3266), 1, + anon_sym_implicits, + ACTIONS(3391), 1, + anon_sym_SEMI, + ACTIONS(3395), 1, + anon_sym_DASH_GT, + ACTIONS(3397), 1, + anon_sym_nopanic, + [52095] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(3034), 1, + anon_sym_LF, + ACTIONS(3036), 4, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_SEMI, + [52108] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3250), 1, + anon_sym_LBRACE, + ACTIONS(3256), 1, + anon_sym_implicits, + ACTIONS(3371), 1, + anon_sym_SEMI, + ACTIONS(3399), 1, + anon_sym_DASH_GT, + ACTIONS(3401), 1, + anon_sym_nopanic, + [52127] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2130), 1, + anon_sym_LBRACE, + ACTIONS(2790), 1, + anon_sym_LT, + ACTIONS(3403), 1, sym_identifier, - [3002] = 3, + STATE(1360), 1, + sym_use_list, + STATE(1732), 1, + sym__cairo_1_type_arguments, + [52146] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(554), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(552), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(2130), 1, + anon_sym_LBRACE, + ACTIONS(2790), 1, + anon_sym_LT, + ACTIONS(3403), 1, sym_identifier, - [3047] = 3, + STATE(1360), 1, + sym_use_list, + STATE(1725), 1, + sym__cairo_1_type_arguments, + [52165] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(554), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(552), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, + ACTIONS(1681), 1, anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3308), 1, sym_identifier, - [3092] = 3, + ACTIONS(3405), 1, + anon_sym_RPAREN, + ACTIONS(3407), 1, + anon_sym_COMMA, + STATE(1435), 1, + sym_typed_identifier, + [52184] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2984), 1, + anon_sym_LF, + ACTIONS(2986), 4, + anon_sym_EQ, + anon_sym_STAR, + anon_sym_STAR_STAR, + anon_sym_SEMI, + [52197] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(496), 11, - sym_hint, + ACTIONS(3250), 1, + anon_sym_LBRACE, + ACTIONS(3256), 1, + anon_sym_implicits, + ACTIONS(3409), 1, + anon_sym_DASH_GT, + ACTIONS(3411), 1, + anon_sym_SEMI, + ACTIONS(3413), 1, + anon_sym_nopanic, + [52216] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1502), 5, + anon_sym_import, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_as, + anon_sym_DOT, + [52227] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3084), 1, + anon_sym_LT2, + ACTIONS(3248), 1, + anon_sym_SEMI, + ACTIONS(3415), 1, + anon_sym_LBRACE, + STATE(998), 1, + sym_field_declaration_list, + STATE(1514), 1, + sym_type_parameters, + [52246] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3417), 5, anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(498), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_COLON, + anon_sym_SEMI, + [52257] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2790), 1, + anon_sym_LT, + ACTIONS(2828), 1, + anon_sym_COLON_COLON, + ACTIONS(3419), 1, + anon_sym_COLON, + STATE(1073), 1, + sym__cairo_1_type_arguments, + STATE(1089), 1, + sym_trait_bounds, + [52276] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3064), 1, sym_identifier, - [3137] = 3, + STATE(1599), 1, + sym_field_declaration, + STATE(1310), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [52293] = 6, ACTIONS(3), 1, sym_comment, - ACTIONS(520), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(522), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, + ACTIONS(2788), 1, + anon_sym_COLON_COLON, + ACTIONS(2790), 1, + anon_sym_LT, + ACTIONS(3419), 1, + anon_sym_COLON, + STATE(1055), 1, + sym__cairo_1_type_arguments, + STATE(1091), 1, + sym_trait_bounds, + [52312] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1681), 1, anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3308), 1, sym_identifier, - [3182] = 3, + ACTIONS(3421), 1, + anon_sym_RPAREN, + STATE(1435), 1, + sym_typed_identifier, + [52328] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(536), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(538), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(1598), 1, + anon_sym_RPAREN, + ACTIONS(3423), 1, sym_identifier, - [3227] = 3, + STATE(1357), 1, + sym_dotted_name, + STATE(1708), 1, + sym_aliased_import, + [52344] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3425), 1, + anon_sym_PERCENT_RBRACE, + ACTIONS(3427), 1, + sym_code_line, + STATE(1473), 1, + aux_sym_python_code_repeat1, + STATE(1787), 1, + sym_python_code, + [52360] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3080), 1, + anon_sym_COLON, + STATE(1658), 1, + sym_trait_bounds, + ACTIONS(3429), 2, + anon_sym_COMMA, + anon_sym_GT, + [52374] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3431), 1, + anon_sym_LPAREN, + ACTIONS(3433), 1, + anon_sym_RBRACK, + ACTIONS(3435), 1, + anon_sym_COLON_COLON, + STATE(1795), 1, + sym_attribute_arguments, + [52390] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1509), 1, + anon_sym_COLON_COLON, + ACTIONS(3431), 1, + anon_sym_LPAREN, + ACTIONS(3437), 1, + anon_sym_RBRACK, + STATE(1796), 1, + sym_attribute_arguments, + [52406] = 5, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(3439), 1, + anon_sym_EQ, + ACTIONS(3441), 1, + anon_sym_SEMI, + ACTIONS(3443), 1, + anon_sym_LF, + STATE(559), 1, + sym__separator, + [52422] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(556), 11, - sym_hint, - ts_builtin_sym_end, + ACTIONS(3084), 1, + anon_sym_LT2, + ACTIONS(3445), 1, + anon_sym_LBRACE, + STATE(327), 1, + sym_enum_variant_list, + STATE(1596), 1, + sym_type_parameters, + [52438] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1566), 1, + anon_sym_COLON_COLON, + ACTIONS(3431), 1, anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(558), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [3272] = 3, + ACTIONS(3433), 1, + anon_sym_RBRACK, + STATE(1795), 1, + sym_attribute_arguments, + [52454] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(562), 11, - sym_hint, + ACTIONS(3447), 1, + anon_sym_LBRACE, + ACTIONS(3449), 1, + anon_sym_SEMI, + ACTIONS(3451), 1, + anon_sym_implicits, + ACTIONS(3453), 1, + anon_sym_nopanic, + [52470] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3431), 1, anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(560), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, + ACTIONS(3433), 1, + anon_sym_RBRACK, + ACTIONS(3455), 1, + anon_sym_COLON_COLON, + STATE(1795), 1, + sym_attribute_arguments, + [52486] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1681), 1, anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3308), 1, sym_identifier, - [3317] = 3, + ACTIONS(3457), 1, + anon_sym_RPAREN, + STATE(1532), 1, + sym_typed_identifier, + [52502] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(566), 11, - sym_hint, + ACTIONS(3431), 1, anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(564), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [3362] = 3, + ACTIONS(3455), 1, + anon_sym_COLON_COLON, + ACTIONS(3459), 1, + anon_sym_RBRACK, + STATE(1738), 1, + sym_attribute_arguments, + [52518] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(570), 11, - sym_hint, + ACTIONS(1566), 1, + anon_sym_COLON_COLON, + ACTIONS(3431), 1, anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(568), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [3407] = 3, + ACTIONS(3459), 1, + anon_sym_RBRACK, + STATE(1738), 1, + sym_attribute_arguments, + [52534] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(572), 11, - sym_hint, - ts_builtin_sym_end, + ACTIONS(1509), 1, + anon_sym_COLON_COLON, + ACTIONS(3431), 1, anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(574), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, + ACTIONS(3461), 1, + anon_sym_RBRACK, + STATE(1745), 1, + sym_attribute_arguments, + [52550] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3431), 1, + anon_sym_LPAREN, + ACTIONS(3435), 1, + anon_sym_COLON_COLON, + ACTIONS(3459), 1, + anon_sym_RBRACK, + STATE(1738), 1, + sym_attribute_arguments, + [52566] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1681), 1, anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3308), 1, sym_identifier, - [3452] = 3, + ACTIONS(3463), 1, + anon_sym_RBRACE, + STATE(1435), 1, + sym_typed_identifier, + [52582] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(578), 11, - sym_hint, + ACTIONS(3084), 1, + anon_sym_LT2, + ACTIONS(3465), 1, anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(576), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + STATE(1698), 1, + sym_type_parameters, + STATE(1726), 1, + sym__function_signature, + [52598] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3423), 1, sym_identifier, - [3497] = 3, + STATE(1277), 1, + sym_dotted_name, + STATE(1344), 1, + sym_aliased_import, + STATE(1753), 1, + sym__import_list, + [52614] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1131), 1, + anon_sym_LBRACE, + ACTIONS(3467), 1, + anon_sym_if, + STATE(307), 1, + sym_block, + STATE(310), 1, + sym__cairo_1_if_expression, + [52630] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3427), 1, + sym_code_line, + ACTIONS(3469), 1, + anon_sym_PERCENT_RBRACE, + STATE(1473), 1, + aux_sym_python_code_repeat1, + STATE(1809), 1, + sym_python_code, + [52646] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3431), 1, + anon_sym_LPAREN, + ACTIONS(3435), 1, + anon_sym_COLON_COLON, + ACTIONS(3471), 1, + anon_sym_RBRACK, + STATE(1773), 1, + sym_attribute_arguments, + [52662] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(582), 11, - sym_hint, + ACTIONS(3427), 1, + sym_code_line, + ACTIONS(3473), 1, + anon_sym_PERCENT_RBRACE, + STATE(1473), 1, + aux_sym_python_code_repeat1, + STATE(1825), 1, + sym_python_code, + [52678] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3084), 1, + anon_sym_LT2, + ACTIONS(3475), 1, anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(580), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + STATE(1589), 1, + sym__function_signature, + STATE(1603), 1, + sym_type_parameters, + [52694] = 5, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(3477), 1, + anon_sym_COMMA, + ACTIONS(3479), 1, + anon_sym_SEMI, + ACTIONS(3481), 1, + anon_sym_LF, + STATE(596), 1, + sym__separator, + [52710] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(173), 1, + anon_sym_POUND, + ACTIONS(3483), 1, sym_identifier, - [3542] = 3, + STATE(1310), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [52724] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(586), 11, - sym_hint, + ACTIONS(3270), 1, + anon_sym_SEMI, + ACTIONS(3274), 1, + anon_sym_implicits, + ACTIONS(3485), 1, + anon_sym_DASH_GT, + ACTIONS(3487), 1, + anon_sym_nopanic, + [52740] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3489), 1, + anon_sym_LBRACE, + ACTIONS(3491), 1, + anon_sym_SEMI, + ACTIONS(3493), 1, + anon_sym_implicits, + ACTIONS(3495), 1, + anon_sym_nopanic, + [52756] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1509), 1, + anon_sym_COLON_COLON, + ACTIONS(3431), 1, anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(584), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [3587] = 3, + ACTIONS(3497), 1, + anon_sym_RBRACK, + STATE(1771), 1, + sym_attribute_arguments, + [52772] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(588), 11, - sym_hint, - ts_builtin_sym_end, + ACTIONS(1566), 1, + anon_sym_COLON_COLON, + ACTIONS(3431), 1, anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(590), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, + ACTIONS(3471), 1, + anon_sym_RBRACK, + STATE(1773), 1, + sym_attribute_arguments, + [52788] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1536), 1, + anon_sym_RPAREN, + ACTIONS(3499), 1, + anon_sym_COMMA, + ACTIONS(3501), 1, + anon_sym_as, + STATE(1337), 1, + aux_sym__import_list_repeat1, + [52804] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3503), 1, + anon_sym_LBRACE, + ACTIONS(3505), 1, + anon_sym_SEMI, + ACTIONS(3507), 1, + anon_sym_implicits, + ACTIONS(3509), 1, + anon_sym_nopanic, + [52820] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1681), 1, anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3308), 1, sym_identifier, - [3632] = 3, + ACTIONS(3511), 1, + anon_sym_RBRACE, + STATE(1410), 1, + sym_typed_identifier, + [52836] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(594), 11, - sym_hint, + ACTIONS(3447), 1, + anon_sym_LBRACE, + ACTIONS(3451), 1, + anon_sym_implicits, + ACTIONS(3505), 1, + anon_sym_SEMI, + ACTIONS(3513), 1, + anon_sym_nopanic, + [52852] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3084), 1, + anon_sym_LT2, + ACTIONS(3465), 1, anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(592), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, + STATE(1609), 1, + sym_type_parameters, + STATE(1776), 1, + sym__function_signature, + [52868] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3515), 1, + anon_sym_LBRACE, + ACTIONS(3517), 1, + anon_sym_SEMI, + ACTIONS(3519), 1, + anon_sym_implicits, + ACTIONS(3521), 1, + anon_sym_nopanic, + [52884] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3447), 1, + anon_sym_LBRACE, + ACTIONS(3451), 1, + anon_sym_implicits, + ACTIONS(3523), 1, + anon_sym_SEMI, + ACTIONS(3525), 1, + anon_sym_nopanic, + [52900] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1681), 1, anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3308), 1, sym_identifier, - [3677] = 3, + ACTIONS(3527), 1, + anon_sym_RBRACE, + STATE(1435), 1, + sym_typed_identifier, + [52916] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(598), 11, - sym_hint, + ACTIONS(3503), 1, + anon_sym_LBRACE, + ACTIONS(3507), 1, + anon_sym_implicits, + ACTIONS(3517), 1, + anon_sym_SEMI, + ACTIONS(3529), 1, + anon_sym_nopanic, + [52932] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3431), 1, anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3455), 1, + anon_sym_COLON_COLON, + ACTIONS(3471), 1, + anon_sym_RBRACK, + STATE(1773), 1, + sym_attribute_arguments, + [52948] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3250), 1, + anon_sym_SEMI, + ACTIONS(3256), 1, + anon_sym_implicits, + ACTIONS(3531), 1, + anon_sym_DASH_GT, + ACTIONS(3533), 1, + anon_sym_nopanic, + [52964] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3537), 1, + anon_sym_COMMA, + STATE(1288), 1, + aux_sym__cairo_0_with_statement_repeat1, + ACTIONS(3535), 2, + anon_sym_RPAREN, + anon_sym_LBRACE, + [52978] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1598), 1, + anon_sym_RPAREN, + ACTIONS(3423), 1, + sym_identifier, + STATE(1357), 1, + sym_dotted_name, + STATE(1708), 1, + sym_aliased_import, + [52994] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3423), 1, + sym_identifier, + STATE(1277), 1, + sym_dotted_name, + STATE(1344), 1, + sym_aliased_import, + STATE(1769), 1, + sym__import_list, + [53010] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3540), 4, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(596), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + [53020] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1627), 1, + anon_sym_RPAREN, + ACTIONS(3423), 1, sym_identifier, - [3722] = 3, + STATE(1357), 1, + sym_dotted_name, + STATE(1708), 1, + sym_aliased_import, + [53036] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(602), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3542), 4, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_EQ, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(600), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, + [53046] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1681), 1, anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3308), 1, sym_identifier, - [3767] = 3, + ACTIONS(3544), 1, + anon_sym_RBRACE, + STATE(1499), 1, + sym_typed_identifier, + [53062] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(606), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(604), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, + ACTIONS(3489), 1, + anon_sym_LBRACE, + ACTIONS(3493), 1, + anon_sym_implicits, + ACTIONS(3546), 1, + anon_sym_SEMI, + ACTIONS(3548), 1, + anon_sym_nopanic, + [53078] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1681), 1, anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3308), 1, sym_identifier, - [3812] = 3, + ACTIONS(3550), 1, + anon_sym_RBRACE, + STATE(1435), 1, + sym_typed_identifier, + [53094] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(610), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(608), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3142), 1, sym_identifier, - [3857] = 3, + ACTIONS(3148), 1, + anon_sym_ref, + ACTIONS(3150), 1, + anon_sym_mut, + STATE(1584), 1, + sym_field_pattern, + [53110] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(612), 11, - sym_hint, - ts_builtin_sym_end, + ACTIONS(133), 1, + anon_sym_LBRACE, + ACTIONS(3552), 1, + anon_sym_if, + STATE(425), 1, + sym__cairo_1_if_expression, + STATE(426), 1, + sym_block, + [53126] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3515), 1, + anon_sym_LBRACE, + ACTIONS(3519), 1, + anon_sym_implicits, + ACTIONS(3546), 1, + anon_sym_SEMI, + ACTIONS(3554), 1, + anon_sym_nopanic, + [53142] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2790), 1, + anon_sym_LT, + ACTIONS(2824), 1, + anon_sym_COLON_COLON, + ACTIONS(2826), 1, + anon_sym_of, + STATE(1073), 1, + sym__cairo_1_type_arguments, + [53158] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3084), 1, + anon_sym_LT2, + ACTIONS(3556), 1, + anon_sym_LBRACE, + STATE(1029), 1, + sym_enum_variant_list, + STATE(1591), 1, + sym_type_parameters, + [53174] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3084), 1, + anon_sym_LT2, + ACTIONS(3558), 1, anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(614), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, + STATE(1578), 1, + sym__function_signature, + STATE(1583), 1, + sym_type_parameters, + [53190] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3260), 1, + anon_sym_SEMI, + ACTIONS(3266), 1, + anon_sym_implicits, + ACTIONS(3560), 1, + anon_sym_DASH_GT, + ACTIONS(3562), 1, + anon_sym_nopanic, + [53206] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3503), 1, + anon_sym_LBRACE, + ACTIONS(3507), 1, + anon_sym_implicits, + ACTIONS(3564), 1, + anon_sym_SEMI, + ACTIONS(3566), 1, + anon_sym_nopanic, + [53222] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3515), 1, + anon_sym_LBRACE, + ACTIONS(3519), 1, + anon_sym_implicits, + ACTIONS(3568), 1, + anon_sym_SEMI, + ACTIONS(3570), 1, + anon_sym_nopanic, + [53238] = 4, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(3383), 1, + anon_sym_LF, + ACTIONS(3574), 1, + anon_sym_COLON, + ACTIONS(3572), 2, + anon_sym_EQ, + anon_sym_SEMI, + [53252] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1681), 1, anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3308), 1, sym_identifier, - [3902] = 3, + ACTIONS(3576), 1, + anon_sym_RPAREN, + STATE(1435), 1, + sym_typed_identifier, + [53268] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(562), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(560), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, + ACTIONS(101), 1, + anon_sym_LBRACE, + ACTIONS(3578), 1, + anon_sym_if, + STATE(169), 1, + sym__cairo_1_if_expression, + STATE(170), 1, + sym_block, + [53284] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1681), 1, anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, + ACTIONS(3308), 1, + sym_identifier, + ACTIONS(3580), 1, + anon_sym_RBRACE, + STATE(1435), 1, + sym_typed_identifier, + [53300] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1495), 1, + sym_identifier, + ACTIONS(3582), 1, + anon_sym_POUND, + STATE(1310), 2, + sym_attribute_item, + aux_sym_enum_variant_list_repeat1, + [53314] = 4, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(3587), 1, anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3589), 1, + anon_sym_LF, + ACTIONS(3585), 2, + anon_sym_COMMA, + anon_sym_SEMI, + [53328] = 5, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(3591), 1, + anon_sym_EQ, + ACTIONS(3593), 1, + anon_sym_SEMI, + ACTIONS(3595), 1, + anon_sym_LF, + STATE(619), 1, + sym__separator, + [53344] = 5, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(3597), 1, + anon_sym_EQ, + ACTIONS(3599), 1, + anon_sym_SEMI, + ACTIONS(3601), 1, + anon_sym_LF, + STATE(617), 1, + sym__separator, + [53360] = 4, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(3347), 1, + anon_sym_LF, + ACTIONS(3605), 1, + anon_sym_COLON, + ACTIONS(3603), 2, + anon_sym_EQ, + anon_sym_SEMI, + [53374] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2788), 1, + anon_sym_COLON_COLON, + ACTIONS(2790), 1, + anon_sym_LT, + ACTIONS(2878), 1, + anon_sym_LBRACE, + STATE(1055), 1, + sym__cairo_1_type_arguments, + [53390] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3489), 1, + anon_sym_LBRACE, + ACTIONS(3493), 1, + anon_sym_implicits, + ACTIONS(3607), 1, + anon_sym_SEMI, + ACTIONS(3609), 1, + anon_sym_nopanic, + [53406] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3489), 1, + anon_sym_LBRACE, + ACTIONS(3493), 1, + anon_sym_implicits, + ACTIONS(3568), 1, + anon_sym_SEMI, + ACTIONS(3611), 1, + anon_sym_nopanic, + [53422] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1681), 1, + anon_sym_local, + ACTIONS(3308), 1, sym_identifier, - [3947] = 3, + ACTIONS(3613), 1, + anon_sym_RBRACE, + STATE(1435), 1, + sym_typed_identifier, + [53438] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(570), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(568), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, + ACTIONS(1681), 1, anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3308), 1, sym_identifier, - [3992] = 3, + ACTIONS(3615), 1, + anon_sym_RBRACE, + STATE(1460), 1, + sym_typed_identifier, + [53454] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(582), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(580), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, + ACTIONS(1681), 1, anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3308), 1, sym_identifier, - [4037] = 3, + ACTIONS(3617), 1, + anon_sym_RBRACE, + STATE(1435), 1, + sym_typed_identifier, + [53470] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(518), 11, - sym_hint, - ts_builtin_sym_end, + ACTIONS(3619), 1, anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, + ACTIONS(3621), 1, + anon_sym_LBRACE, + STATE(1527), 1, + sym_arguments, + STATE(1593), 1, + sym_implicit_arguments, + [53486] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3625), 1, + anon_sym_COMMA, + STATE(1322), 1, + aux_sym__cairo_0_struct_definition_repeat1, + ACTIONS(3623), 2, + anon_sym_RPAREN, + anon_sym_RBRACE, + [53500] = 5, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(3628), 1, + anon_sym_EQ, + ACTIONS(3630), 1, + anon_sym_SEMI, + ACTIONS(3632), 1, + anon_sym_LF, + STATE(556), 1, + sym__separator, + [53516] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3634), 4, anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(516), 26, - anon_sym_from, - anon_sym_using, anon_sym_namespace, anon_sym_struct, anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + [53526] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3503), 1, + anon_sym_LBRACE, + ACTIONS(3507), 1, + anon_sym_implicits, + ACTIONS(3636), 1, + anon_sym_SEMI, + ACTIONS(3638), 1, + anon_sym_nopanic, + [53542] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3447), 1, + anon_sym_LBRACE, + ACTIONS(3451), 1, + anon_sym_implicits, + ACTIONS(3564), 1, + anon_sym_SEMI, + ACTIONS(3640), 1, + anon_sym_nopanic, + [53558] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3236), 1, + anon_sym_SEMI, + ACTIONS(3242), 1, + anon_sym_implicits, + ACTIONS(3642), 1, + anon_sym_DASH_GT, + ACTIONS(3644), 1, + anon_sym_nopanic, + [53574] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3427), 1, + sym_code_line, + ACTIONS(3646), 1, + anon_sym_PERCENT_RBRACE, + STATE(1473), 1, + aux_sym_python_code_repeat1, + STATE(1880), 1, + sym_python_code, + [53590] = 5, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(3648), 1, + anon_sym_COMMA, + ACTIONS(3650), 1, + anon_sym_SEMI, + ACTIONS(3652), 1, + anon_sym_LF, + STATE(622), 1, + sym__separator, + [53606] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3619), 1, + anon_sym_LPAREN, + ACTIONS(3621), 1, + anon_sym_LBRACE, + STATE(1537), 1, + sym_arguments, + STATE(1660), 1, + sym_implicit_arguments, + [53622] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3515), 1, + anon_sym_LBRACE, + ACTIONS(3519), 1, + anon_sym_implicits, + ACTIONS(3636), 1, + anon_sym_SEMI, + ACTIONS(3654), 1, + anon_sym_nopanic, + [53638] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3201), 1, + anon_sym_GT, + ACTIONS(3656), 1, + anon_sym_COMMA, + STATE(1560), 1, + aux_sym_type_parameters_repeat1, + [53651] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3195), 1, + anon_sym_RBRACE, + ACTIONS(3658), 1, + anon_sym_COMMA, + STATE(1535), 1, + aux_sym_struct_pattern_repeat1, + [53664] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3660), 1, sym_identifier, - [4082] = 3, + ACTIONS(3662), 1, + anon_sym_LT, + STATE(163), 1, + sym__cairo_1_type_arguments, + [53677] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3664), 1, + anon_sym_COMMA, + ACTIONS(3666), 1, + anon_sym_RBRACE, + STATE(1478), 1, + aux_sym_struct_pattern_repeat1, + [53690] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(3540), 1, + anon_sym_LF, + ACTIONS(3668), 2, + anon_sym_EQ, + anon_sym_SEMI, + [53701] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1619), 1, + anon_sym_RPAREN, + ACTIONS(3670), 1, + anon_sym_COMMA, + STATE(1359), 1, + aux_sym__import_list_repeat1, + [53714] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1619), 1, + anon_sym_RPAREN, + ACTIONS(3672), 1, + anon_sym_COMMA, + STATE(1359), 1, + aux_sym__import_list_repeat1, + [53727] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3674), 1, + anon_sym_RPAREN, + ACTIONS(3676), 1, + anon_sym_COMMA, + STATE(1288), 1, + aux_sym__cairo_0_with_statement_repeat1, + [53740] = 4, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(3678), 1, + anon_sym_SEMI, + ACTIONS(3680), 1, + anon_sym_LF, + STATE(572), 1, + sym__separator, + [53753] = 4, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2692), 1, + anon_sym_SEMI, + ACTIONS(2694), 1, + anon_sym_LF, + STATE(570), 1, + sym__separator, + [53766] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(3542), 1, + anon_sym_LF, + ACTIONS(3682), 2, + anon_sym_EQ, + anon_sym_SEMI, + [53777] = 4, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(3684), 1, + anon_sym_SEMI, + ACTIONS(3686), 1, + anon_sym_LF, + STATE(549), 1, + sym__separator, + [53790] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1536), 1, + anon_sym_RPAREN, + ACTIONS(3499), 1, + anon_sym_COMMA, + STATE(1338), 1, + aux_sym__import_list_repeat1, + [53803] = 4, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(3688), 1, + anon_sym_SEMI, + ACTIONS(3690), 1, + anon_sym_LF, + STATE(651), 1, + sym__separator, + [53816] = 4, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(2724), 1, + anon_sym_SEMI, + ACTIONS(2726), 1, + anon_sym_LF, + STATE(642), 1, + sym__separator, + [53829] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3694), 1, + anon_sym_nopanic, + ACTIONS(3692), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [53840] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3696), 1, + anon_sym_RPAREN, + ACTIONS(3698), 1, + anon_sym_COMMA, + STATE(1464), 1, + aux_sym__cairo_1_call_expression_repeat1, + [53853] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2884), 1, + anon_sym_RBRACE, + ACTIONS(3700), 1, + anon_sym_COMMA, + STATE(1468), 1, + aux_sym_field_initializer_list_repeat1, + [53866] = 4, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(3702), 1, + anon_sym_SEMI, + ACTIONS(3704), 1, + anon_sym_LF, + STATE(641), 1, + sym__separator, + [53879] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3706), 1, + anon_sym_RPAREN, + ACTIONS(3708), 1, + sym_string, + STATE(1492), 1, + aux_sym__cairo_0_attribute_statement_repeat1, + [53892] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3712), 1, + anon_sym_nopanic, + ACTIONS(3710), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [53903] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3535), 3, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + [53912] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3716), 1, + anon_sym_nopanic, + ACTIONS(3714), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [53923] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3718), 3, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_SEMI, + [53932] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2140), 1, + anon_sym_RBRACE, + ACTIONS(3720), 1, + anon_sym_COMMA, + STATE(1500), 1, + aux_sym_use_list_repeat1, + [53945] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3501), 1, + anon_sym_as, + ACTIONS(1609), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [53956] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3722), 3, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_SEMI, + [53965] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1602), 1, + anon_sym_RPAREN, + ACTIONS(3724), 1, + anon_sym_COMMA, + STATE(1359), 1, + aux_sym__import_list_repeat1, + [53978] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3727), 3, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_SEMI, + [53987] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(616), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(618), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [4127] = 3, + ACTIONS(3731), 1, + anon_sym_nopanic, + ACTIONS(3729), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [53998] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(588), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3708), 1, + sym_string, + ACTIONS(3733), 1, + anon_sym_RPAREN, + STATE(1492), 1, + aux_sym__cairo_0_attribute_statement_repeat1, + [54011] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3735), 3, + anon_sym_COMMA, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(590), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + anon_sym_SEMI, + [54020] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3739), 1, + anon_sym_nopanic, + ACTIONS(3737), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [54031] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3232), 1, sym_identifier, - [4172] = 3, + STATE(479), 1, + sym_dotted_name, + STATE(507), 1, + sym_aliased_import, + [54044] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(572), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3062), 1, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(574), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [4217] = 3, + ACTIONS(3741), 1, + anon_sym_COMMA, + STATE(1512), 1, + aux_sym_enum_variant_list_repeat2, + [54057] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(548), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3743), 3, + anon_sym_COMMA, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(550), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + anon_sym_SEMI, + [54066] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3747), 1, + anon_sym_nopanic, + ACTIONS(3745), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [54077] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3749), 1, + anon_sym_RPAREN, + ACTIONS(3751), 1, + anon_sym_COMMA, + STATE(1517), 1, + aux_sym__function_signature_repeat1, + [54090] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3755), 1, + anon_sym_nopanic, + ACTIONS(3753), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [54101] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2790), 1, + anon_sym_LT, + ACTIONS(3403), 1, sym_identifier, - [4262] = 3, + STATE(1732), 1, + sym__cairo_1_type_arguments, + [54114] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(544), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3757), 1, + anon_sym_COMMA, + ACTIONS(3759), 1, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(546), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [4307] = 3, + STATE(1333), 1, + aux_sym_struct_pattern_repeat1, + [54127] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(606), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(604), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [4352] = 3, + ACTIONS(3761), 1, + anon_sym_COMMA, + ACTIONS(3763), 1, + anon_sym_RBRACE, + STATE(1349), 1, + aux_sym_field_initializer_list_repeat1, + [54140] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3765), 1, + anon_sym_RPAREN, + ACTIONS(3767), 1, + anon_sym_COMMA, + STATE(1339), 1, + aux_sym__cairo_0_with_statement_repeat1, + [54153] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(622), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3771), 1, + anon_sym_nopanic, + ACTIONS(3769), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [54164] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3775), 1, + anon_sym_nopanic, + ACTIONS(3773), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [54175] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3777), 1, + anon_sym_RPAREN, + ACTIONS(3779), 1, + anon_sym_COMMA, + STATE(1288), 1, + aux_sym__cairo_0_with_statement_repeat1, + [54188] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3783), 1, + anon_sym_COLON, + ACTIONS(3781), 2, + anon_sym_COMMA, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(620), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + [54199] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3787), 1, + anon_sym_nopanic, + ACTIONS(3785), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [54210] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2790), 1, + anon_sym_LT, + ACTIONS(3403), 1, sym_identifier, - [4397] = 3, + STATE(1725), 1, + sym__cairo_1_type_arguments, + [54223] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(626), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3789), 1, + anon_sym_RPAREN, + ACTIONS(3791), 1, + anon_sym_COMMA, + STATE(1453), 1, + aux_sym_tuple_pattern_repeat1, + [54236] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3793), 1, + anon_sym_RPAREN, + ACTIONS(3795), 1, + anon_sym_COMMA, + STATE(1464), 1, + aux_sym__cairo_1_call_expression_repeat1, + [54249] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3799), 1, + anon_sym_nopanic, + ACTIONS(3797), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [54260] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3801), 1, + anon_sym_COMMA, + ACTIONS(3803), 1, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(624), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [4442] = 3, + STATE(1522), 1, + aux_sym_enum_variant_list_repeat2, + [54273] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(514), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(512), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [4487] = 3, + ACTIONS(3807), 1, + anon_sym_nopanic, + ACTIONS(3805), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [54284] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(628), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(630), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [4532] = 3, + ACTIONS(1972), 1, + anon_sym_RPAREN, + ACTIONS(3809), 1, + anon_sym_COMMA, + STATE(1536), 1, + aux_sym__cairo_1_tuple_type_repeat1, + [54297] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(510), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(508), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [4577] = 3, + ACTIONS(3094), 1, + anon_sym_RBRACE, + ACTIONS(3811), 1, + anon_sym_COMMA, + STATE(1521), 1, + aux_sym_field_declaration_list_repeat1, + [54310] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3813), 1, + anon_sym_RPAREN, + ACTIONS(3815), 1, + anon_sym_COMMA, + STATE(1288), 1, + aux_sym__cairo_0_with_statement_repeat1, + [54323] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1574), 1, + anon_sym_LBRACE, + ACTIONS(3817), 1, + anon_sym_SEMI, + STATE(1011), 1, + sym_block, + [54336] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1940), 1, + anon_sym_RPAREN, + ACTIONS(3819), 1, + anon_sym_COMMA, + STATE(1447), 1, + aux_sym_tuple_pattern_repeat1, + [54349] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3821), 1, + anon_sym_RPAREN, + ACTIONS(3823), 1, + anon_sym_COMMA, + STATE(1377), 1, + aux_sym__cairo_0_with_statement_repeat1, + [54362] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3827), 1, + anon_sym_nopanic, + ACTIONS(3825), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [54373] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3831), 1, + anon_sym_nopanic, + ACTIONS(3829), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [54384] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3833), 1, + anon_sym_RPAREN, + ACTIONS(3835), 1, + anon_sym_COMMA, + STATE(1288), 1, + aux_sym__cairo_0_with_statement_repeat1, + [54397] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3078), 1, + anon_sym_LBRACE, + ACTIONS(3837), 1, + anon_sym_SEMI, + STATE(1009), 1, + sym_declaration_list, + [54410] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3841), 1, + anon_sym_nopanic, + ACTIONS(3839), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [54421] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(632), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(634), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [4622] = 3, + ACTIONS(2800), 1, + anon_sym_RPAREN, + ACTIONS(3843), 1, + anon_sym_COMMA, + STATE(1506), 1, + aux_sym__cairo_0_tuple_type_repeat1, + [54434] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(616), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3088), 1, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(618), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [4667] = 3, + ACTIONS(3845), 1, + anon_sym_COMMA, + STATE(1366), 1, + aux_sym_enum_variant_list_repeat2, + [54447] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(586), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(584), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3088), 1, + anon_sym_RBRACE, + ACTIONS(3845), 1, + anon_sym_COMMA, + STATE(1512), 1, + aux_sym_enum_variant_list_repeat2, + [54460] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3423), 1, sym_identifier, - [4712] = 3, + STATE(1357), 1, + sym_dotted_name, + STATE(1708), 1, + sym_aliased_import, + [54473] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(638), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3849), 1, + anon_sym_nopanic, + ACTIONS(3847), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [54484] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2258), 1, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(636), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [4757] = 3, + ACTIONS(3851), 1, + anon_sym_COMMA, + STATE(1546), 1, + aux_sym__cairo_0_call_expression_repeat1, + [54497] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(594), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(592), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, + ACTIONS(3853), 1, + sym_identifier, + ACTIONS(3855), 1, anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + STATE(1313), 1, + sym_typed_identifier, + [54510] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3857), 1, + anon_sym_RPAREN, + ACTIONS(3859), 1, + sym_string, + STATE(1362), 1, + aux_sym__cairo_0_attribute_statement_repeat1, + [54523] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3421), 1, + anon_sym_RPAREN, + ACTIONS(3861), 1, + anon_sym_COMMA, + STATE(1322), 1, + aux_sym__cairo_0_struct_definition_repeat1, + [54536] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3863), 1, + anon_sym_RPAREN, + ACTIONS(3865), 1, + anon_sym_COMMA, + STATE(1388), 1, + aux_sym__cairo_0_with_statement_repeat1, + [54549] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3867), 1, + anon_sym_LBRACE, + ACTIONS(3869), 1, + anon_sym_DASH_GT, + ACTIONS(3871), 1, + anon_sym_COLON, + [54562] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3853), 1, sym_identifier, - [4802] = 3, + ACTIONS(3855), 1, + anon_sym_local, + STATE(1312), 1, + sym_typed_identifier, + [54575] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3863), 1, + anon_sym_RPAREN, + ACTIONS(3865), 1, + anon_sym_COMMA, + STATE(1288), 1, + aux_sym__cairo_0_with_statement_repeat1, + [54588] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3873), 1, + anon_sym_COMMA, + ACTIONS(3875), 1, + anon_sym_RBRACE, + STATE(1432), 1, + aux_sym__cairo_0_struct_definition_repeat1, + [54601] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3877), 1, + anon_sym_RPAREN, + ACTIONS(3879), 1, + anon_sym_COMMA, + STATE(1567), 1, + aux_sym__cairo_0_tuple_type_repeat1, + [54614] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3881), 1, + anon_sym_RPAREN, + ACTIONS(3883), 1, + anon_sym_COMMA, + STATE(1394), 1, + aux_sym__cairo_0_with_statement_repeat1, + [54627] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3887), 1, + anon_sym_nopanic, + ACTIONS(3885), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [54638] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3891), 1, + anon_sym_nopanic, + ACTIONS(3889), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [54649] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3613), 1, + anon_sym_RBRACE, + ACTIONS(3893), 1, + anon_sym_COMMA, + STATE(1322), 1, + aux_sym__cairo_0_struct_definition_repeat1, + [54662] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3895), 1, + anon_sym_RPAREN, + ACTIONS(3897), 1, + anon_sym_COMMA, + STATE(1288), 1, + aux_sym__cairo_0_with_statement_repeat1, + [54675] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3068), 1, + anon_sym_RBRACE, + ACTIONS(3899), 1, + anon_sym_COMMA, + STATE(1521), 1, + aux_sym_field_declaration_list_repeat1, + [54688] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3903), 1, + anon_sym_nopanic, + ACTIONS(3901), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [54699] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(642), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3905), 1, + anon_sym_RPAREN, + ACTIONS(3907), 1, + anon_sym_COMMA, + STATE(1427), 1, + aux_sym__cairo_0_struct_definition_repeat1, + [54712] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3447), 1, + anon_sym_SEMI, + ACTIONS(3451), 1, + anon_sym_implicits, + ACTIONS(3909), 1, + anon_sym_nopanic, + [54725] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3068), 1, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(640), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3899), 1, + anon_sym_COMMA, + STATE(1566), 1, + aux_sym_field_declaration_list_repeat1, + [54738] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3911), 1, + anon_sym_RPAREN, + ACTIONS(3913), 1, + anon_sym_COMMA, + STATE(1464), 1, + aux_sym__cairo_1_call_expression_repeat1, + [54751] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3915), 1, sym_identifier, - [4847] = 3, + ACTIONS(3917), 1, + anon_sym_rel, + ACTIONS(3919), 1, + anon_sym_abs, + [54764] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(632), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3084), 1, + anon_sym_LT2, + ACTIONS(3921), 1, + anon_sym_EQ, + STATE(1937), 1, + sym_type_parameters, + [54777] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3197), 1, + anon_sym_GT, + ACTIONS(3923), 1, + anon_sym_COMMA, + STATE(1560), 1, + aux_sym_type_parameters_repeat1, + [54790] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3925), 3, + anon_sym_LBRACE, + anon_sym_DASH_GT, + anon_sym_COLON, + [54799] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3310), 1, + anon_sym_RPAREN, + ACTIONS(3927), 1, + anon_sym_COMMA, + STATE(1322), 1, + aux_sym__cairo_0_struct_definition_repeat1, + [54812] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3929), 1, + anon_sym_RPAREN, + ACTIONS(3931), 1, + anon_sym_COMMA, + STATE(1409), 1, + aux_sym__cairo_0_with_statement_repeat1, + [54825] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1615), 1, + anon_sym_GT, + ACTIONS(3933), 1, + anon_sym_COMMA, + STATE(1533), 1, + aux_sym__cairo_1_type_arguments_repeat1, + [54838] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3935), 3, + anon_sym_LBRACE, + anon_sym_DASH_GT, + anon_sym_COLON, + [54847] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3929), 1, + anon_sym_RPAREN, + ACTIONS(3931), 1, + anon_sym_COMMA, + STATE(1288), 1, + aux_sym__cairo_0_with_statement_repeat1, + [54860] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3580), 1, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(634), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [4892] = 3, + ACTIONS(3937), 1, + anon_sym_COMMA, + STATE(1322), 1, + aux_sym__cairo_0_struct_definition_repeat1, + [54873] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(628), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3939), 1, + anon_sym_COMMA, + ACTIONS(3941), 1, + anon_sym_GT, + STATE(1425), 1, + aux_sym_type_parameters_repeat1, + [54886] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3945), 1, + anon_sym_nopanic, + ACTIONS(3943), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [54897] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3623), 3, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(630), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [4937] = 3, + [54906] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(602), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(600), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [4982] = 3, + ACTIONS(3947), 1, + anon_sym_RPAREN, + ACTIONS(3949), 1, + anon_sym_COMMA, + STATE(1416), 1, + aux_sym__cairo_0_with_statement_repeat1, + [54919] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(506), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(504), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [5027] = 3, + ACTIONS(3953), 1, + anon_sym_nopanic, + ACTIONS(3951), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [54930] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3503), 1, + anon_sym_SEMI, + ACTIONS(3507), 1, + anon_sym_implicits, + ACTIONS(3955), 1, + anon_sym_nopanic, + [54943] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3957), 1, + anon_sym_RPAREN, + ACTIONS(3959), 1, + anon_sym_COMMA, + STATE(1464), 1, + aux_sym__cairo_1_call_expression_repeat1, + [54956] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3961), 1, + anon_sym_RPAREN, + ACTIONS(3963), 1, + anon_sym_COMMA, + STATE(1464), 1, + aux_sym__cairo_1_call_expression_repeat1, + [54969] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(598), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(596), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [5072] = 3, + ACTIONS(3965), 1, + anon_sym_RPAREN, + ACTIONS(3967), 1, + anon_sym_COMMA, + STATE(1464), 1, + aux_sym__cairo_1_call_expression_repeat1, + [54982] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(502), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(500), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [5117] = 3, + ACTIONS(3130), 1, + anon_sym_RBRACE, + ACTIONS(3969), 1, + anon_sym_COMMA, + STATE(1387), 1, + aux_sym_field_declaration_list_repeat1, + [54995] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(612), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3130), 1, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(614), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3969), 1, + anon_sym_COMMA, + STATE(1521), 1, + aux_sym_field_declaration_list_repeat1, + [55008] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3971), 1, sym_identifier, - [5162] = 3, + ACTIONS(3973), 2, + anon_sym_rel, + anon_sym_abs, + [55019] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(556), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(1117), 1, + anon_sym_RPAREN, + ACTIONS(3975), 1, + anon_sym_COMMA, + STATE(1477), 1, + aux_sym_attribute_arguments_repeat1, + [55032] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3550), 1, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(558), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [5207] = 3, + ACTIONS(3977), 1, + anon_sym_COMMA, + STATE(1322), 1, + aux_sym__cairo_0_struct_definition_repeat1, + [55045] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(644), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(646), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [5252] = 3, + ACTIONS(3979), 1, + anon_sym_RPAREN, + ACTIONS(3981), 1, + anon_sym_COMMA, + STATE(1447), 1, + aux_sym_tuple_pattern_repeat1, + [55058] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(638), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(636), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [5297] = 3, + ACTIONS(3984), 1, + anon_sym_RPAREN, + ACTIONS(3986), 1, + anon_sym_COMMA, + STATE(1397), 1, + aux_sym__cairo_0_tuple_type_repeat1, + [55071] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3988), 1, + anon_sym_RPAREN, + ACTIONS(3990), 1, + anon_sym_COMMA, + STATE(1464), 1, + aux_sym__cairo_1_call_expression_repeat1, + [55084] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3222), 1, + anon_sym_RPAREN, + ACTIONS(3992), 1, + anon_sym_COMMA, + STATE(1520), 1, + aux_sym__function_signature_repeat1, + [55097] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3994), 1, + anon_sym_COMMA, + ACTIONS(3996), 1, + anon_sym_RBRACE, + STATE(1417), 1, + aux_sym_field_declaration_list_repeat1, + [55110] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3998), 1, + anon_sym_RPAREN, + ACTIONS(4000), 1, + anon_sym_COMMA, + STATE(1431), 1, + aux_sym__cairo_0_with_statement_repeat1, + [55123] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1944), 1, + anon_sym_RPAREN, + ACTIONS(4002), 1, + anon_sym_COMMA, + STATE(1447), 1, + aux_sym_tuple_pattern_repeat1, + [55136] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(648), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(650), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [5342] = 3, + ACTIONS(4004), 1, + anon_sym_EQ, + ACTIONS(4006), 1, + anon_sym_COLON, + ACTIONS(4008), 1, + anon_sym_SEMI, + [55149] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(654), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(3998), 1, + anon_sym_RPAREN, + ACTIONS(4000), 1, + anon_sym_COMMA, + STATE(1288), 1, + aux_sym__cairo_0_with_statement_repeat1, + [55162] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3096), 1, + anon_sym_LBRACE, + ACTIONS(4010), 1, + anon_sym_SEMI, + STATE(366), 1, + sym_declaration_list, + [55175] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4014), 1, + anon_sym_nopanic, + ACTIONS(4012), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [55186] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4016), 1, + anon_sym_LBRACE, + ACTIONS(4018), 1, + anon_sym_SEMI, + STATE(371), 1, + sym_block, + [55199] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4020), 1, + anon_sym_COMMA, + ACTIONS(4022), 1, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(652), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [5387] = 3, + STATE(1399), 1, + aux_sym_enum_variant_list_repeat2, + [55212] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(656), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(658), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [5432] = 3, + ACTIONS(4024), 1, + anon_sym_COMMA, + ACTIONS(4026), 1, + anon_sym_RBRACE, + STATE(1415), 1, + aux_sym__cairo_0_struct_definition_repeat1, + [55225] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(654), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(652), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [5477] = 3, + ACTIONS(3515), 1, + anon_sym_SEMI, + ACTIONS(3519), 1, + anon_sym_implicits, + ACTIONS(4028), 1, + anon_sym_nopanic, + [55238] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(626), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(624), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [5522] = 3, + ACTIONS(4032), 1, + anon_sym_COLON, + ACTIONS(4030), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + [55249] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(622), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(620), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [5567] = 3, + ACTIONS(4034), 1, + anon_sym_RPAREN, + ACTIONS(4036), 1, + anon_sym_COMMA, + STATE(1450), 1, + aux_sym__function_signature_repeat1, + [55262] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4038), 1, + anon_sym_RPAREN, + ACTIONS(4040), 1, + anon_sym_COMMA, + STATE(1464), 1, + aux_sym__cairo_1_call_expression_repeat1, + [55275] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(656), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(658), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [5612] = 3, + ACTIONS(4043), 1, + anon_sym_RPAREN, + ACTIONS(4045), 1, + anon_sym_COMMA, + STATE(1464), 1, + aux_sym__cairo_1_call_expression_repeat1, + [55288] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(610), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(608), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [5657] = 3, + ACTIONS(3191), 1, + anon_sym_RPAREN, + ACTIONS(4047), 1, + anon_sym_COMMA, + STATE(1520), 1, + aux_sym__function_signature_repeat1, + [55301] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(648), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, + ACTIONS(4049), 1, + anon_sym_COLON, + ACTIONS(3347), 2, + anon_sym_COMMA, anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(650), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [5702] = 3, + [55312] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(578), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(576), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [5747] = 3, + ACTIONS(4051), 1, + anon_sym_COMMA, + ACTIONS(4054), 1, + anon_sym_RBRACE, + STATE(1468), 1, + aux_sym_field_initializer_list_repeat1, + [55325] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(3056), 1, + anon_sym_LF, + ACTIONS(3387), 2, + anon_sym_EQ, + anon_sym_SEMI, + [55336] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(644), 11, - sym_hint, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_RBRACE, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(646), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [5792] = 3, + ACTIONS(4056), 1, + anon_sym_COMMA, + ACTIONS(4058), 1, + anon_sym_LBRACE, + STATE(1556), 1, + aux_sym__cairo_0_with_statement_repeat1, + [55349] = 4, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(4060), 1, + anon_sym_SEMI, + ACTIONS(4062), 1, + anon_sym_LF, + STATE(613), 1, + sym__separator, + [55362] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(566), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(564), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, - sym_identifier, - [5837] = 3, + ACTIONS(4064), 3, + anon_sym_LBRACE, + anon_sym_DASH_GT, + anon_sym_COLON, + [55371] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4066), 1, + anon_sym_PERCENT_RBRACE, + ACTIONS(4068), 1, + sym_code_line, + STATE(1557), 1, + aux_sym_python_code_repeat1, + [55384] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4070), 1, + anon_sym_COMMA, + ACTIONS(4072), 1, + anon_sym_GT, + STATE(1476), 1, + aux_sym__cairo_1_type_arguments_repeat1, + [55397] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(4076), 1, + anon_sym_LF, + ACTIONS(4074), 2, + anon_sym_COMMA, + anon_sym_SEMI, + [55408] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1588), 1, + anon_sym_GT, + ACTIONS(4078), 1, + anon_sym_COMMA, + STATE(1533), 1, + aux_sym__cairo_1_type_arguments_repeat1, + [55421] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2078), 1, + anon_sym_RPAREN, + ACTIONS(4080), 1, + anon_sym_COMMA, + STATE(1477), 1, + aux_sym_attribute_arguments_repeat1, + [55434] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3146), 1, + anon_sym_RBRACE, + ACTIONS(4083), 1, + anon_sym_COMMA, + STATE(1535), 1, + aux_sym_struct_pattern_repeat1, + [55447] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(642), 11, - sym_hint, - ts_builtin_sym_end, - anon_sym_LPAREN, - anon_sym_PERCENTbuiltins, - anon_sym_PERCENTlang, - anon_sym_AT, - anon_sym_AMP, - anon_sym_DASH, - sym_short_string, - anon_sym_LBRACK, - sym_number, - ACTIONS(640), 26, - anon_sym_from, - anon_sym_using, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - anon_sym_alloc_locals, - anon_sym_assert, - anon_sym_static_assert, - anon_sym_let, - anon_sym_const, - anon_sym_local, - anon_sym_tempvar, - anon_sym_ap, - anon_sym_jmp, - anon_sym_if, - sym_inst_ret, - anon_sym_dw, - anon_sym_with_attr, - anon_sym_with, - anon_sym_return, - anon_sym_new, - anon_sym_nondet, - anon_sym_fp, - anon_sym_cast, - anon_sym_call, + ACTIONS(3403), 1, sym_identifier, - [5882] = 15, + ACTIONS(4085), 1, + anon_sym_LT, + STATE(415), 1, + sym__cairo_1_type_arguments, + [55460] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - ACTIONS(662), 1, + ACTIONS(2734), 1, + anon_sym_RPAREN, + ACTIONS(4087), 1, anon_sym_COMMA, - ACTIONS(664), 1, + STATE(1480), 1, + aux_sym_tuple_expression_repeat1, + [55473] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2266), 1, anon_sym_RBRACE, - STATE(262), 1, - sym_assignment_expression, - STATE(293), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 10, - sym_unary_expression, - sym_binary_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [5940] = 14, + ACTIONS(4090), 1, + anon_sym_COMMA, + STATE(1546), 1, + aux_sym__cairo_0_call_expression_repeat1, + [55486] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(71), 1, - anon_sym_call, - ACTIONS(660), 1, + ACTIONS(3403), 1, sym_identifier, - STATE(277), 1, - sym_expression, - STATE(448), 1, - sym_call_instruction, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [5996] = 14, + ACTIONS(4085), 1, + anon_sym_LT, + STATE(424), 1, + sym__cairo_1_type_arguments, + [55499] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(71), 1, - anon_sym_call, - ACTIONS(660), 1, + ACTIONS(4092), 1, + anon_sym_COMMA, + ACTIONS(4094), 1, + anon_sym_GT, + STATE(1429), 1, + aux_sym__cairo_1_type_arguments_repeat1, + [55512] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4096), 1, + anon_sym_RPAREN, + ACTIONS(4098), 1, + anon_sym_COMMA, + STATE(1455), 1, + aux_sym__cairo_0_with_statement_repeat1, + [55525] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3644), 1, + anon_sym_nopanic, + ACTIONS(3236), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [55536] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4100), 1, + anon_sym_RPAREN, + ACTIONS(4102), 1, + anon_sym_COMMA, + STATE(1464), 1, + aux_sym__cairo_1_call_expression_repeat1, + [55549] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3660), 1, sym_identifier, - STATE(272), 1, - sym_expression, - STATE(513), 1, - sym_call_instruction, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [6052] = 13, + ACTIONS(3662), 1, + anon_sym_LT, + STATE(102), 1, + sym__cairo_1_type_arguments, + [55562] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, + ACTIONS(2130), 1, + anon_sym_LBRACE, + ACTIONS(4104), 1, sym_identifier, - ACTIONS(666), 1, + STATE(1563), 1, + sym_use_list, + [55575] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3489), 1, + anon_sym_SEMI, + ACTIONS(3493), 1, + anon_sym_implicits, + ACTIONS(4106), 1, + anon_sym_nopanic, + [55588] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4108), 1, anon_sym_RPAREN, - STATE(259), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [6105] = 13, + ACTIONS(4110), 1, + anon_sym_COMMA, + STATE(1466), 1, + aux_sym__function_signature_repeat1, + [55601] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - ACTIONS(668), 1, + ACTIONS(4112), 1, anon_sym_RPAREN, - STATE(259), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [6158] = 14, + ACTIONS(4114), 1, + anon_sym_COMMA, + STATE(1464), 1, + aux_sym__cairo_1_call_expression_repeat1, + [55614] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - ACTIONS(670), 1, + ACTIONS(4116), 1, + anon_sym_RPAREN, + ACTIONS(4118), 1, + sym_string, + STATE(1492), 1, + aux_sym__cairo_0_attribute_statement_repeat1, + [55627] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4121), 3, + anon_sym_COMMA, anon_sym_RBRACE, - STATE(290), 1, - sym_assignment_expression, - STATE(293), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 10, - sym_unary_expression, - sym_binary_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [6213] = 13, + anon_sym_SEMI, + [55636] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3084), 1, + anon_sym_LT2, + ACTIONS(4123), 1, + anon_sym_EQ, + STATE(1802), 1, + sym_type_parameters, + [55649] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4127), 1, + anon_sym_COLON, + ACTIONS(4125), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + [55660] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2888), 1, + anon_sym_RBRACE, + ACTIONS(4129), 1, + anon_sym_COMMA, + STATE(1468), 1, + aux_sym_field_initializer_list_repeat1, + [55673] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3078), 1, + anon_sym_LBRACE, + ACTIONS(4131), 1, + anon_sym_SEMI, + STATE(1025), 1, + sym_declaration_list, + [55686] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4133), 1, + anon_sym_COMMA, + ACTIONS(4135), 1, + anon_sym_RBRACE, + STATE(1443), 1, + aux_sym_field_declaration_list_repeat1, + [55699] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4137), 1, + anon_sym_COMMA, + ACTIONS(4139), 1, + anon_sym_RBRACE, + STATE(1446), 1, + aux_sym__cairo_0_struct_definition_repeat1, + [55712] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4141), 1, + anon_sym_COMMA, + ACTIONS(4144), 1, + anon_sym_RBRACE, + STATE(1500), 1, + aux_sym_use_list_repeat1, + [55725] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4146), 1, + anon_sym_LBRACE, + ACTIONS(4148), 1, + anon_sym_DASH_GT, + ACTIONS(4150), 1, + anon_sym_COLON, + [55738] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - ACTIONS(672), 1, + ACTIONS(2858), 1, + anon_sym_COLON_COLON, + ACTIONS(3342), 1, + anon_sym_COLON, + STATE(1091), 1, + sym_trait_bounds, + [55751] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4152), 3, + anon_sym_LBRACE, + anon_sym_DASH_GT, + anon_sym_COLON, + [55760] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4154), 1, anon_sym_RPAREN, - STATE(257), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [6266] = 14, + ACTIONS(4156), 1, + anon_sym_COMMA, + STATE(1526), 1, + aux_sym__function_signature_repeat1, + [55773] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - ACTIONS(674), 1, - anon_sym_RBRACE, - STATE(290), 1, - sym_assignment_expression, - STATE(293), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 10, - sym_unary_expression, - sym_binary_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [6321] = 12, + ACTIONS(3078), 1, + anon_sym_LBRACE, + ACTIONS(4158), 1, + anon_sym_SEMI, + STATE(1005), 1, + sym_declaration_list, + [55786] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(259), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [6371] = 12, + ACTIONS(4160), 1, + anon_sym_RPAREN, + ACTIONS(4162), 1, + anon_sym_COMMA, + STATE(1506), 1, + aux_sym__cairo_0_tuple_type_repeat1, + [55799] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(292), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [6421] = 13, + ACTIONS(3096), 1, + anon_sym_LBRACE, + ACTIONS(4165), 1, + anon_sym_SEMI, + STATE(385), 1, + sym_declaration_list, + [55812] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, + ACTIONS(3353), 1, sym_identifier, - STATE(290), 1, - sym_assignment_expression, - STATE(293), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 10, - sym_unary_expression, - sym_binary_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [6473] = 12, + STATE(531), 1, + sym_dotted_name, + STATE(594), 1, + sym_aliased_import, + [55825] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(233), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [6523] = 12, + ACTIONS(2300), 1, + anon_sym_RPAREN, + ACTIONS(4167), 1, + anon_sym_COMMA, + STATE(1480), 1, + aux_sym_tuple_expression_repeat1, + [55838] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(234), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [6573] = 12, + ACTIONS(2858), 1, + anon_sym_COLON_COLON, + ACTIONS(3419), 1, + anon_sym_COLON, + STATE(1091), 1, + sym_trait_bounds, + [55851] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(267), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [6623] = 12, + ACTIONS(3102), 1, + anon_sym_RBRACE, + ACTIONS(4169), 1, + anon_sym_COMMA, + STATE(1512), 1, + aux_sym_enum_variant_list_repeat2, + [55864] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(258), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [6673] = 12, + ACTIONS(4171), 1, + anon_sym_COMMA, + ACTIONS(4174), 1, + anon_sym_RBRACE, + STATE(1512), 1, + aux_sym_enum_variant_list_repeat2, + [55877] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4176), 1, + anon_sym_RPAREN, + ACTIONS(4178), 1, + anon_sym_COMMA, + STATE(1386), 1, + aux_sym__cairo_1_tuple_type_repeat1, + [55890] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(235), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [6723] = 12, + ACTIONS(3415), 1, + anon_sym_LBRACE, + ACTIONS(4180), 1, + anon_sym_SEMI, + STATE(1004), 1, + sym_field_declaration_list, + [55903] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(256), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [6773] = 12, + ACTIONS(4184), 1, + anon_sym_EQ, + ACTIONS(4182), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + [55914] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(263), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [6823] = 12, + ACTIONS(1123), 1, + anon_sym_RPAREN, + ACTIONS(4186), 1, + anon_sym_COMMA, + STATE(1477), 1, + aux_sym_attribute_arguments_repeat1, + [55927] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(236), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [6873] = 12, + ACTIONS(3216), 1, + anon_sym_RPAREN, + ACTIONS(4188), 1, + anon_sym_COMMA, + STATE(1520), 1, + aux_sym__function_signature_repeat1, + [55940] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(268), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [6923] = 13, + ACTIONS(3138), 1, + anon_sym_RPAREN, + ACTIONS(4190), 1, + anon_sym_COMMA, + STATE(1520), 1, + aux_sym__function_signature_repeat1, + [55953] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(61), 1, - sym_short_string, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - ACTIONS(676), 1, - sym_number, - STATE(233), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [6975] = 12, + ACTIONS(4192), 1, + anon_sym_RPAREN, + ACTIONS(4194), 1, + anon_sym_COMMA, + STATE(1518), 1, + aux_sym__function_signature_repeat1, + [55966] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(239), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [7025] = 12, + ACTIONS(4196), 1, + anon_sym_RPAREN, + ACTIONS(4198), 1, + anon_sym_COMMA, + STATE(1520), 1, + aux_sym__function_signature_repeat1, + [55979] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(288), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [7075] = 12, + ACTIONS(4201), 1, + anon_sym_COMMA, + ACTIONS(4204), 1, + anon_sym_RBRACE, + STATE(1521), 1, + aux_sym_field_declaration_list_repeat1, + [55992] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(261), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [7125] = 12, + ACTIONS(3072), 1, + anon_sym_RBRACE, + ACTIONS(4206), 1, + anon_sym_COMMA, + STATE(1512), 1, + aux_sym_enum_variant_list_repeat2, + [56005] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4056), 1, + anon_sym_COMMA, + ACTIONS(4208), 1, + anon_sym_LBRACE, + STATE(1288), 1, + aux_sym__cairo_0_with_statement_repeat1, + [56018] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3084), 1, + anon_sym_LT2, + ACTIONS(4210), 1, + anon_sym_SEMI, + STATE(1777), 1, + sym_type_parameters, + [56031] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3072), 1, + anon_sym_RBRACE, + ACTIONS(4206), 1, + anon_sym_COMMA, + STATE(1511), 1, + aux_sym_enum_variant_list_repeat2, + [56044] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(281), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [7175] = 12, + ACTIONS(3175), 1, + anon_sym_RPAREN, + ACTIONS(4212), 1, + anon_sym_COMMA, + STATE(1520), 1, + aux_sym__function_signature_repeat1, + [56057] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(237), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [7225] = 12, + ACTIONS(4214), 1, + anon_sym_LBRACE, + ACTIONS(4216), 1, + anon_sym_DASH_GT, + ACTIONS(4218), 1, + anon_sym_COLON, + [56070] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(294), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [7275] = 12, + ACTIONS(4220), 3, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_SEMI, + [56079] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(266), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [7325] = 12, + ACTIONS(4222), 1, + anon_sym_COMMA, + ACTIONS(4224), 1, + anon_sym_RBRACE, + STATE(1496), 1, + aux_sym_field_initializer_list_repeat1, + [56092] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(295), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [7375] = 12, + ACTIONS(4228), 1, + anon_sym_COLON, + ACTIONS(4226), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + [56103] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(279), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [7425] = 12, + ACTIONS(4230), 1, + anon_sym_EQ, + ACTIONS(3026), 2, + anon_sym_COLON, + anon_sym_SEMI, + [56114] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(278), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [7475] = 12, + ACTIONS(4233), 1, + anon_sym_RPAREN, + ACTIONS(4235), 1, + anon_sym_COMMA, + STATE(1405), 1, + aux_sym__cairo_0_struct_definition_repeat1, + [56127] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(271), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [7525] = 12, + ACTIONS(4237), 1, + anon_sym_COMMA, + ACTIONS(4240), 1, + anon_sym_GT, + STATE(1533), 1, + aux_sym__cairo_1_type_arguments_repeat1, + [56140] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(238), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [7575] = 12, + ACTIONS(4242), 1, + anon_sym_COMMA, + ACTIONS(4244), 1, + anon_sym_GT, + STATE(1544), 1, + aux_sym__cairo_1_type_arguments_repeat1, + [56153] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4246), 1, + anon_sym_COMMA, + ACTIONS(4249), 1, + anon_sym_RBRACE, + STATE(1535), 1, + aux_sym_struct_pattern_repeat1, + [56166] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4251), 1, + anon_sym_RPAREN, + ACTIONS(4253), 1, + anon_sym_COMMA, + STATE(1536), 1, + aux_sym__cairo_1_tuple_type_repeat1, + [56179] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4256), 1, + anon_sym_LBRACE, + ACTIONS(4258), 1, + anon_sym_DASH_GT, + ACTIONS(4260), 1, + anon_sym_COLON, + [56192] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, + ACTIONS(2790), 1, + anon_sym_LT, + ACTIONS(4262), 1, sym_identifier, - STATE(269), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [7625] = 12, + STATE(1725), 1, + sym__cairo_1_type_arguments, + [56205] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, + ACTIONS(4264), 1, + anon_sym_RPAREN, + ACTIONS(4266), 1, + anon_sym_COMMA, + STATE(1390), 1, + aux_sym_tuple_pattern_repeat1, + [56218] = 4, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(4268), 1, + anon_sym_SEMI, + ACTIONS(4270), 1, + anon_sym_LF, + STATE(595), 1, + sym__separator, + [56231] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3853), 1, sym_identifier, - STATE(270), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [7675] = 12, + ACTIONS(3855), 1, + anon_sym_local, + STATE(1253), 1, + sym_typed_identifier, + [56244] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, + ACTIONS(3853), 1, sym_identifier, - STATE(276), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [7725] = 12, + ACTIONS(3855), 1, + anon_sym_local, + STATE(1323), 1, + sym_typed_identifier, + [56257] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, + ACTIONS(4274), 1, + anon_sym_COLON, + ACTIONS(4272), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + [56268] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1611), 1, + anon_sym_GT, + ACTIONS(4276), 1, + anon_sym_COMMA, + STATE(1533), 1, + aux_sym__cairo_1_type_arguments_repeat1, + [56281] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2790), 1, + anon_sym_LT, + ACTIONS(4278), 1, sym_identifier, - STATE(260), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [7775] = 12, + STATE(1069), 1, + sym__cairo_1_type_arguments, + [56294] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, + ACTIONS(2766), 1, + anon_sym_RBRACE, + ACTIONS(4280), 1, + anon_sym_COMMA, + STATE(1546), 1, + aux_sym__cairo_0_call_expression_repeat1, + [56307] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4283), 1, + anon_sym_EQ, + ACTIONS(4285), 1, + anon_sym_COLON, + ACTIONS(4287), 1, + anon_sym_SEMI, + [56320] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1681), 1, + anon_sym_local, + ACTIONS(3308), 1, sym_identifier, - STATE(275), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [7825] = 13, + STATE(1435), 1, + sym_typed_identifier, + [56333] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(61), 1, - sym_short_string, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, + ACTIONS(4056), 1, + anon_sym_COMMA, + ACTIONS(4289), 1, + anon_sym_LBRACE, + STATE(1523), 1, + aux_sym__cairo_0_with_statement_repeat1, + [56346] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3084), 1, + anon_sym_LT2, + ACTIONS(4291), 1, + anon_sym_SEMI, + STATE(1728), 1, + sym_type_parameters, + [56359] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4293), 1, + anon_sym_EQ, + ACTIONS(4295), 1, + anon_sym_COLON, + ACTIONS(4297), 1, + anon_sym_SEMI, + [56372] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2790), 1, + anon_sym_LT, + ACTIONS(4278), 1, sym_identifier, - ACTIONS(678), 1, - sym_number, - STATE(233), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [7877] = 12, + STATE(1725), 1, + sym__cairo_1_type_arguments, + [56385] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, + ACTIONS(4299), 1, + anon_sym_EQ, + ACTIONS(4301), 1, + anon_sym_COLON, + ACTIONS(4303), 1, + anon_sym_SEMI, + [56398] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2790), 1, + anon_sym_LT, + ACTIONS(4262), 1, sym_identifier, - STATE(265), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [7927] = 12, + STATE(1069), 1, + sym__cairo_1_type_arguments, + [56411] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4305), 1, + anon_sym_RPAREN, + ACTIONS(4307), 1, + sym_string, + STATE(1351), 1, + aux_sym__cairo_0_attribute_statement_repeat1, + [56424] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4056), 1, + anon_sym_COMMA, + ACTIONS(4309), 1, + anon_sym_LBRACE, + STATE(1288), 1, + aux_sym__cairo_0_with_statement_repeat1, + [56437] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4311), 1, + anon_sym_PERCENT_RBRACE, + ACTIONS(4313), 1, + sym_code_line, + STATE(1557), 1, + aux_sym_python_code_repeat1, + [56450] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3096), 1, + anon_sym_LBRACE, + ACTIONS(4316), 1, + anon_sym_SEMI, + STATE(329), 1, + sym_declaration_list, + [56463] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4318), 3, + anon_sym_LBRACE, + anon_sym_DASH_GT, + anon_sym_COLON, + [56472] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4320), 1, + anon_sym_COMMA, + ACTIONS(4323), 1, + anon_sym_GT, + STATE(1560), 1, + aux_sym_type_parameters_repeat1, + [56485] = 3, + ACTIONS(2530), 1, + sym_comment, + ACTIONS(3156), 1, + anon_sym_LF, + ACTIONS(4325), 2, + anon_sym_EQ, + anon_sym_SEMI, + [56496] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4327), 1, + anon_sym_COMMA, + ACTIONS(4329), 1, + anon_sym_RBRACE, + STATE(1356), 1, + aux_sym_use_list_repeat1, + [56509] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4331), 3, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_SEMI, + [56518] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3379), 1, + anon_sym_LBRACE, + ACTIONS(4333), 1, + anon_sym_SEMI, + STATE(340), 1, + sym_field_declaration_list, + [56531] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, + ACTIONS(2130), 1, + anon_sym_LBRACE, + ACTIONS(4335), 1, sym_identifier, - STATE(273), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [7977] = 12, + STATE(1367), 1, + sym_use_list, + [56544] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(296), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [8027] = 12, + ACTIONS(3076), 1, + anon_sym_RBRACE, + ACTIONS(4337), 1, + anon_sym_COMMA, + STATE(1521), 1, + aux_sym_field_declaration_list_repeat1, + [56557] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(264), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [8077] = 12, + ACTIONS(2802), 1, + anon_sym_RPAREN, + ACTIONS(4339), 1, + anon_sym_COMMA, + STATE(1506), 1, + aux_sym__cairo_0_tuple_type_repeat1, + [56570] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, + ACTIONS(2314), 1, + anon_sym_RPAREN, + ACTIONS(4341), 1, + anon_sym_COMMA, + STATE(1480), 1, + aux_sym_tuple_expression_repeat1, + [56583] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2130), 1, + anon_sym_LBRACE, + ACTIONS(3403), 1, sym_identifier, - STATE(284), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [8127] = 12, + STATE(1360), 1, + sym_use_list, + [56596] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, + ACTIONS(3423), 1, sym_identifier, - STATE(298), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [8177] = 12, + STATE(1820), 1, + sym_dotted_name, + [56606] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, + ACTIONS(3236), 1, + anon_sym_LBRACE, + ACTIONS(3365), 1, + anon_sym_SEMI, + [56616] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4343), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + [56624] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4323), 2, + anon_sym_COMMA, + anon_sym_GT, + [56632] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3979), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [56640] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2790), 1, + anon_sym_LT, + STATE(1067), 1, + sym__cairo_1_type_arguments, + [56650] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4345), 1, anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, + ACTIONS(4347), 1, + anon_sym_LBRACE, + [56660] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4204), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + [56668] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1574), 1, + anon_sym_LBRACE, + STATE(978), 1, + sym_block, + [56678] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1451), 1, + anon_sym_PERCENT_LBRACE, + STATE(906), 1, + sym_hint, + [56688] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4349), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + [56696] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4351), 1, sym_identifier, - STATE(280), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [8227] = 12, + STATE(522), 1, + aux_sym_builtin_directive_repeat1, + [56706] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, - sym_identifier, - STATE(274), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, + STATE(908), 1, sym_tuple_expression, - sym_call_expression, - [8277] = 12, + [56716] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, + ACTIONS(4353), 1, anon_sym_LPAREN, - ACTIONS(59), 1, - anon_sym_new, - ACTIONS(63), 1, - anon_sym_nondet, - ACTIONS(67), 1, - anon_sym_LBRACK, - ACTIONS(69), 1, - anon_sym_cast, - ACTIONS(660), 1, + STATE(1657), 1, + sym__function_signature, + [56726] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4249), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + [56734] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4240), 2, + anon_sym_COMMA, + anon_sym_GT, + [56742] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4251), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [56750] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4355), 1, sym_identifier, - STATE(297), 1, - sym_expression, - ACTIONS(57), 2, - anon_sym_AMP, - anon_sym_DASH, - ACTIONS(61), 2, - sym_short_string, - sym_number, - ACTIONS(65), 2, - anon_sym_ap, - anon_sym_fp, - STATE(255), 11, - sym_unary_expression, - sym_binary_expression, - sym_assignment_expression, - sym_hint_expression, - sym_register, - sym_deref_expression, - sym_subscript_expression, - sym_member_expression, - sym_cast_expression, - sym_tuple_expression, - sym_call_expression, - [8327] = 11, + ACTIONS(4357), 1, + anon_sym_RPAREN, + [56760] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4359), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [56768] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4016), 1, + anon_sym_LBRACE, + STATE(336), 1, + sym_block, + [56778] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(682), 1, - anon_sym_EQ, - ACTIONS(684), 1, + ACTIONS(3260), 1, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(680), 9, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(3391), 1, anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_EQ_EQ, - anon_sym_if, - anon_sym_BANG_EQ, - anon_sym_and, - anon_sym_RBRACK, - [8371] = 9, + [56788] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(3556), 1, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(682), 3, - anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(680), 11, - anon_sym_RPAREN, - anon_sym_COMMA, + STATE(990), 1, + sym_enum_variant_list, + [56798] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3270), 1, + anon_sym_LBRACE, + ACTIONS(3391), 1, anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_EQ_EQ, - anon_sym_if, - anon_sym_BANG_EQ, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_RBRACK, - [8411] = 9, + [56808] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, + ACTIONS(3619), 1, anon_sym_LPAREN, - ACTIONS(684), 1, - anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(682), 3, - anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(680), 11, - anon_sym_RPAREN, + STATE(1407), 1, + sym_arguments, + [56818] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4174), 2, anon_sym_COMMA, - anon_sym_SEMI, anon_sym_RBRACE, - anon_sym_EQ_EQ, - anon_sym_if, - anon_sym_BANG_EQ, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_RBRACK, - [8451] = 10, + [56826] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(682), 1, - anon_sym_EQ, - ACTIONS(684), 1, + ACTIONS(3270), 1, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(680), 11, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(3371), 1, anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_EQ_EQ, - anon_sym_if, - anon_sym_BANG_EQ, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_RBRACK, - [8493] = 12, + [56836] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3445), 1, + anon_sym_LBRACE, + STATE(388), 1, + sym_enum_variant_list, + [56846] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, anon_sym_LPAREN, - ACTIONS(682), 1, - anon_sym_EQ, - ACTIONS(684), 1, - anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - STATE(252), 1, + STATE(910), 1, sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - ACTIONS(680), 7, + [56856] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4160), 2, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_SEMI, + [56864] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4361), 2, + anon_sym_COMMA, anon_sym_RBRACE, - anon_sym_if, - anon_sym_and, - anon_sym_RBRACK, - [8539] = 13, + [56872] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, + ACTIONS(2236), 1, anon_sym_LPAREN, - ACTIONS(684), 1, - anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - STATE(252), 1, + STATE(917), 1, sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - ACTIONS(698), 6, - anon_sym_RPAREN, - anon_sym_COMMA, + [56882] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4363), 1, + anon_sym_LBRACE, + ACTIONS(4365), 1, anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_if, - anon_sym_RBRACK, - [8587] = 9, + [56892] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, anon_sym_LPAREN, - ACTIONS(684), 1, - anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - STATE(252), 1, + STATE(896), 1, sym_tuple_expression, - ACTIONS(706), 3, - anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(704), 11, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_EQ_EQ, - anon_sym_if, - anon_sym_BANG_EQ, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_RBRACK, - [8627] = 3, + [56902] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(710), 3, - anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(708), 16, + ACTIONS(4367), 1, anon_sym_LPAREN, - anon_sym_RPAREN, + STATE(1629), 1, + sym__function_signature, + [56912] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3423), 1, + sym_identifier, + STATE(1901), 1, + sym_dotted_name, + [56922] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4144), 2, anon_sym_COMMA, - anon_sym_SEMI, - anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_EQ_EQ, - anon_sym_if, - anon_sym_BANG_EQ, - anon_sym_STAR_STAR, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - [8654] = 3, + [56930] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(714), 3, - anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(712), 16, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_SEMI, + ACTIONS(4369), 1, anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ_EQ, - anon_sym_if, - anon_sym_BANG_EQ, - anon_sym_STAR_STAR, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - [8681] = 3, + ACTIONS(4371), 1, + anon_sym_SEMI, + [56940] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(718), 3, - anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(716), 16, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(4373), 2, anon_sym_COMMA, - anon_sym_SEMI, - anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_EQ_EQ, - anon_sym_if, - anon_sym_BANG_EQ, - anon_sym_STAR_STAR, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - [8708] = 3, + [56948] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(722), 3, - anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(720), 16, + ACTIONS(2786), 1, + anon_sym_of, + ACTIONS(2880), 1, + anon_sym_COLON_COLON, + [56958] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3465), 1, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_SEMI, + STATE(1755), 1, + sym__function_signature, + [56968] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4363), 1, anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ_EQ, + ACTIONS(4371), 1, + anon_sym_SEMI, + [56978] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4375), 1, anon_sym_if, - anon_sym_BANG_EQ, - anon_sym_STAR_STAR, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - [8735] = 3, + ACTIONS(4377), 1, + anon_sym_EQ_GT, + [56988] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(726), 3, - anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(724), 16, - anon_sym_LPAREN, + ACTIONS(4379), 1, + anon_sym_LBRACE, + ACTIONS(4381), 1, + anon_sym_SEMI, + [56998] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4383), 2, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_SEMI, + [57006] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4096), 1, + anon_sym_RPAREN, + ACTIONS(4385), 1, + sym_identifier, + [57016] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4085), 1, + anon_sym_LT, + STATE(470), 1, + sym__cairo_1_type_arguments, + [57026] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3236), 1, anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ_EQ, - anon_sym_if, - anon_sym_BANG_EQ, - anon_sym_STAR_STAR, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - [8762] = 3, + ACTIONS(3264), 1, + anon_sym_SEMI, + [57036] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(730), 3, - anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(728), 16, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(3260), 1, + anon_sym_LBRACE, + ACTIONS(3264), 1, anon_sym_SEMI, + [57046] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(101), 1, anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ_EQ, - anon_sym_if, - anon_sym_BANG_EQ, - anon_sym_STAR_STAR, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - [8789] = 3, + STATE(126), 1, + sym_block, + [57056] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(734), 3, - anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(732), 16, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_SEMI, + ACTIONS(4387), 1, anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ_EQ, - anon_sym_if, - anon_sym_BANG_EQ, - anon_sym_STAR_STAR, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - [8816] = 3, + ACTIONS(4389), 1, + anon_sym_COLON, + [57066] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(738), 3, + ACTIONS(4391), 1, anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(736), 16, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(4393), 1, anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ_EQ, - anon_sym_if, - anon_sym_BANG_EQ, - anon_sym_STAR_STAR, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - [8843] = 3, + [57076] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(742), 3, + ACTIONS(4395), 1, anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(740), 16, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(4397), 1, anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ_EQ, - anon_sym_if, - anon_sym_BANG_EQ, - anon_sym_STAR_STAR, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - [8870] = 3, + [57086] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(746), 3, + ACTIONS(4399), 1, anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(744), 16, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(4401), 1, anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ_EQ, - anon_sym_if, - anon_sym_BANG_EQ, - anon_sym_STAR_STAR, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - [8897] = 3, + [57096] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(750), 3, - anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(748), 16, - anon_sym_LPAREN, + ACTIONS(4196), 2, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ_EQ, - anon_sym_if, - anon_sym_BANG_EQ, - anon_sym_STAR_STAR, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - [8924] = 3, + [57104] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(754), 3, - anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(752), 16, + ACTIONS(11), 1, anon_sym_LPAREN, - anon_sym_RPAREN, + STATE(909), 1, + sym_tuple_expression, + [57114] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4403), 2, anon_sym_COMMA, - anon_sym_SEMI, - anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_EQ_EQ, - anon_sym_if, - anon_sym_BANG_EQ, - anon_sym_STAR_STAR, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - [8951] = 3, + [57122] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(758), 3, - anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(756), 16, - anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(4012), 1, + anon_sym_LBRACE, + ACTIONS(4405), 1, + anon_sym_SEMI, + [57132] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4054), 2, anon_sym_COMMA, + anon_sym_RBRACE, + [57140] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4407), 1, + anon_sym_LBRACE, + ACTIONS(4409), 1, anon_sym_SEMI, + [57150] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4016), 1, anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ_EQ, - anon_sym_if, - anon_sym_BANG_EQ, - anon_sym_STAR_STAR, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - [8978] = 3, + STATE(370), 1, + sym_block, + [57160] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(762), 3, - anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(760), 16, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(4369), 1, + anon_sym_LBRACE, + ACTIONS(4409), 1, anon_sym_SEMI, + [57170] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4411), 1, + anon_sym_LPAREN, + ACTIONS(4413), 1, anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ_EQ, - anon_sym_if, - anon_sym_BANG_EQ, - anon_sym_STAR_STAR, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - [9005] = 3, + [57180] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4415), 1, + anon_sym_LBRACE, + ACTIONS(4417), 1, + anon_sym_COLON, + [57190] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(766), 3, + ACTIONS(4419), 1, anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(764), 16, - anon_sym_LPAREN, + ACTIONS(4421), 1, + anon_sym_COLON, + [57200] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4423), 1, + sym_identifier, + ACTIONS(4425), 1, anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_SEMI, + [57210] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4012), 2, anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ_EQ, - anon_sym_if, - anon_sym_BANG_EQ, - anon_sym_STAR_STAR, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - [9032] = 3, + anon_sym_SEMI, + [57218] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(770), 3, - anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(768), 16, + ACTIONS(3998), 1, + anon_sym_RPAREN, + ACTIONS(4427), 1, + sym_identifier, + [57228] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, anon_sym_LPAREN, + STATE(884), 1, + sym_tuple_expression, + [57238] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4407), 1, + anon_sym_LBRACE, + ACTIONS(4429), 1, + anon_sym_SEMI, + [57248] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3998), 1, anon_sym_RPAREN, - anon_sym_COMMA, + ACTIONS(4431), 1, + sym_identifier, + [57258] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3240), 1, anon_sym_SEMI, + ACTIONS(4012), 1, anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_EQ_EQ, - anon_sym_if, - anon_sym_BANG_EQ, - anon_sym_STAR_STAR, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT, - [9059] = 14, + [57268] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(4379), 1, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(774), 1, - anon_sym_if, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - ACTIONS(772), 2, - anon_sym_COMMA, + ACTIONS(4429), 1, + anon_sym_SEMI, + [57278] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3236), 1, + anon_sym_LBRACE, + ACTIONS(3240), 1, + anon_sym_SEMI, + [57288] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4433), 1, + anon_sym_type, + ACTIONS(4435), 1, + anon_sym_fn, + [57298] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4012), 1, + anon_sym_LBRACE, + ACTIONS(4437), 1, anon_sym_SEMI, - [9106] = 15, + [57308] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, - anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(776), 1, - anon_sym_RPAREN, - ACTIONS(778), 1, + ACTIONS(4439), 2, anon_sym_COMMA, - STATE(252), 1, - sym_tuple_expression, - STATE(384), 1, - aux_sym_tuple_expression_repeat1, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [9155] = 13, + anon_sym_GT, + [57316] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(4441), 1, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - ACTIONS(780), 2, + ACTIONS(4443), 1, + anon_sym_COLON, + [57326] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4445), 2, anon_sym_COMMA, - anon_sym_SEMI, - [9199] = 13, + anon_sym_RBRACE, + [57334] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(3943), 2, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - ACTIONS(782), 2, + anon_sym_SEMI, + [57342] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3929), 1, anon_sym_RPAREN, - anon_sym_COMMA, - [9243] = 13, + ACTIONS(4427), 1, + sym_identifier, + [57352] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(4447), 1, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - ACTIONS(784), 2, - anon_sym_COMMA, - anon_sym_SEMI, - [9287] = 13, + ACTIONS(4449), 1, + anon_sym_COLON, + [57362] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(4451), 1, + sym_identifier, + ACTIONS(4453), 1, + anon_sym_RPAREN, + [57372] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4455), 1, + anon_sym_type, + ACTIONS(4457), 1, + anon_sym_fn, + [57382] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4369), 1, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - ACTIONS(786), 2, - anon_sym_COMMA, + ACTIONS(4459), 1, anon_sym_SEMI, - [9331] = 6, + [57392] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(788), 1, - anon_sym_COMMA, - ACTIONS(790), 1, - anon_sym_RBRACE, - STATE(409), 1, - aux_sym_call_expression_repeat1, - ACTIONS(770), 3, - anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(768), 10, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_STAR_STAR, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_LBRACK, - anon_sym_DOT, - [9361] = 13, + ACTIONS(3929), 1, + anon_sym_RPAREN, + ACTIONS(4461), 1, + sym_identifier, + [57402] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, - anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, + ACTIONS(4463), 1, anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - ACTIONS(792), 2, - anon_sym_COMMA, + ACTIONS(4465), 1, anon_sym_SEMI, - [9405] = 14, + [57412] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(4407), 1, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(698), 1, + ACTIONS(4459), 1, anon_sym_SEMI, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(794), 1, - anon_sym_COMMA, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [9451] = 13, + [57422] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(1574), 1, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(796), 1, + STATE(1019), 1, + sym_block, + [57432] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4467), 2, anon_sym_COMMA, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [9494] = 13, + anon_sym_GT, + [57440] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, - anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(798), 1, - anon_sym_RBRACK, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [9537] = 13, + ACTIONS(3080), 1, + anon_sym_COLON, + STATE(1645), 1, + sym_trait_bounds, + [57450] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, + ACTIONS(3619), 1, anon_sym_LPAREN, - ACTIONS(684), 1, + STATE(1501), 1, + sym_arguments, + [57460] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3901), 2, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(800), 1, + anon_sym_SEMI, + [57468] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3895), 1, anon_sym_RPAREN, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [9580] = 13, + ACTIONS(4427), 1, + sym_identifier, + [57478] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(2840), 1, + anon_sym_PERCENT_LBRACE, + STATE(882), 1, + sym_hint, + [57488] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3662), 1, + anon_sym_LT, + STATE(162), 1, + sym__cairo_1_type_arguments, + [57498] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3889), 2, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(802), 1, - anon_sym_RBRACK, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [9623] = 13, + anon_sym_SEMI, + [57506] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(3863), 1, + anon_sym_RPAREN, + ACTIONS(4427), 1, + sym_identifier, + [57516] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4379), 1, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(804), 1, + ACTIONS(4469), 1, anon_sym_SEMI, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [9666] = 12, + [57526] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(682), 1, - anon_sym_EQ, - ACTIONS(684), 1, + ACTIONS(3365), 1, + anon_sym_SEMI, + ACTIONS(4012), 1, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(806), 1, + [57536] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4471), 1, + sym_identifier, + ACTIONS(4473), 1, + anon_sym_RPAREN, + [57546] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4407), 1, + anon_sym_LBRACE, + ACTIONS(4469), 1, anon_sym_SEMI, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(680), 3, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_and, - [9707] = 13, + [57556] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(3254), 1, + anon_sym_SEMI, + ACTIONS(3270), 1, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(808), 1, - anon_sym_RPAREN, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [9750] = 13, + [57566] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(4363), 1, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(810), 1, + ACTIONS(4475), 1, anon_sym_SEMI, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [9793] = 13, + [57576] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(4369), 1, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(812), 1, + ACTIONS(4475), 1, anon_sym_SEMI, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [9836] = 13, + [57586] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(3847), 2, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(814), 1, anon_sym_SEMI, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [9879] = 13, + [57594] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(4427), 1, + sym_identifier, + ACTIONS(4477), 1, + anon_sym_RPAREN, + [57604] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3829), 2, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(816), 1, anon_sym_SEMI, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [9922] = 13, + [57612] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, + ACTIONS(2236), 1, anon_sym_LPAREN, - ACTIONS(684), 1, - anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(818), 1, - anon_sym_SEMI, - STATE(252), 1, + STATE(924), 1, sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [9965] = 13, + [57622] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, anon_sym_LPAREN, - ACTIONS(684), 1, - anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(820), 1, - anon_sym_SEMI, - STATE(252), 1, + STATE(897), 1, sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [10008] = 12, + [57632] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(682), 1, - anon_sym_EQ, - ACTIONS(684), 1, + ACTIONS(3839), 2, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(822), 1, anon_sym_SEMI, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(680), 3, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_and, - [10049] = 13, + [57640] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(3833), 1, + anon_sym_RPAREN, + ACTIONS(4427), 1, + sym_identifier, + [57650] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3813), 1, + anon_sym_RPAREN, + ACTIONS(4427), 1, + sym_identifier, + [57660] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4479), 1, + sym_identifier, + ACTIONS(4481), 1, + anon_sym_RPAREN, + [57670] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4363), 1, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(824), 1, + ACTIONS(4483), 1, anon_sym_SEMI, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [10092] = 13, + [57680] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(3805), 2, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(826), 1, anon_sym_SEMI, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [10135] = 13, + [57688] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(3797), 2, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(828), 1, anon_sym_SEMI, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [10178] = 4, + [57696] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(830), 2, - anon_sym_COMMA, - anon_sym_SEMI, - ACTIONS(770), 3, - anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(768), 10, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_STAR_STAR, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_LBRACK, - anon_sym_DOT, - [10203] = 13, + ACTIONS(4427), 1, + sym_identifier, + ACTIONS(4485), 1, + anon_sym_RPAREN, + [57706] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(3773), 2, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(832), 1, - anon_sym_EQ, - ACTIONS(834), 1, anon_sym_SEMI, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [10246] = 13, + [57714] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(3785), 2, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(836), 1, anon_sym_SEMI, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [10289] = 4, + [57722] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(838), 1, - anon_sym_COLON, - ACTIONS(770), 3, - anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(768), 11, - anon_sym_LPAREN, - anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_STAR_STAR, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_LBRACK, - anon_sym_DOT, - [10314] = 4, + ACTIONS(3777), 1, + anon_sym_RPAREN, + ACTIONS(4427), 1, + sym_identifier, + [57732] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(840), 2, - anon_sym_COMMA, - anon_sym_SEMI, - ACTIONS(770), 3, - anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(768), 10, + ACTIONS(4487), 1, + sym_identifier, + ACTIONS(4489), 1, + anon_sym_mut, + [57742] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4427), 1, + sym_identifier, + ACTIONS(4491), 1, + anon_sym_RPAREN, + [57752] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2236), 1, anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_STAR_STAR, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_LBRACK, - anon_sym_DOT, - [10339] = 4, + STATE(895), 1, + sym_tuple_expression, + [57762] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(842), 1, - anon_sym_PLUS_EQ, - ACTIONS(762), 4, - anon_sym_EQ, - anon_sym_STAR, - anon_sym_PLUS, - anon_sym_SLASH, - ACTIONS(760), 10, - anon_sym_LPAREN, - anon_sym_SEMI, + ACTIONS(4493), 2, anon_sym_LBRACE, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_STAR_STAR, - anon_sym_DASH, - anon_sym_and, - anon_sym_LBRACK, - anon_sym_DOT, - [10364] = 13, + anon_sym_SEMI, + [57770] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(3753), 2, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(844), 1, anon_sym_SEMI, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [10407] = 4, + [57778] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(846), 1, - anon_sym_COLON, - ACTIONS(770), 3, + ACTIONS(4495), 1, anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(768), 11, - anon_sym_LPAREN, + ACTIONS(4497), 1, anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_STAR_STAR, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_LBRACK, - anon_sym_DOT, - [10432] = 4, + [57788] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(848), 2, - anon_sym_COMMA, - anon_sym_RBRACE, - ACTIONS(770), 3, - anon_sym_EQ, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(768), 10, - anon_sym_LPAREN, + ACTIONS(3745), 2, anon_sym_LBRACE, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_STAR_STAR, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_and, - anon_sym_LBRACK, - anon_sym_DOT, - [10457] = 13, + anon_sym_SEMI, + [57796] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, + ACTIONS(4499), 2, + sym_identifier, + sym_self, + [57804] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3465), 1, anon_sym_LPAREN, - ACTIONS(684), 1, + STATE(1789), 1, + sym__function_signature, + [57814] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3260), 1, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(832), 1, - anon_sym_EQ, - ACTIONS(850), 1, + ACTIONS(3296), 1, anon_sym_SEMI, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [10500] = 13, + [57824] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(3270), 1, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(696), 1, - anon_sym_EQ_EQ, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(852), 1, - anon_sym_BANG_EQ, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - [10542] = 12, + ACTIONS(3296), 1, + anon_sym_SEMI, + [57834] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(4427), 1, + sym_identifier, + ACTIONS(4501), 1, + anon_sym_RPAREN, + [57844] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3729), 2, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [10582] = 13, + anon_sym_SEMI, + [57852] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, + ACTIONS(2236), 1, anon_sym_LPAREN, - ACTIONS(684), 1, - anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(696), 1, - anon_sym_BANG_EQ, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(854), 1, - anon_sym_EQ_EQ, - STATE(252), 1, + STATE(919), 1, sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - [10624] = 12, + [57862] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(3737), 2, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(856), 1, - anon_sym_EQ, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [10664] = 13, + anon_sym_SEMI, + [57870] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(3674), 1, + anon_sym_RPAREN, + ACTIONS(4427), 1, + sym_identifier, + [57880] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(1645), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [57888] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4503), 2, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(696), 1, - anon_sym_EQ_EQ, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(858), 1, - anon_sym_BANG_EQ, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - [10706] = 13, + anon_sym_SEMI, + [57896] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(1609), 2, + anon_sym_RPAREN, + anon_sym_COMMA, + [57904] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3714), 2, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(696), 1, - anon_sym_BANG_EQ, - ACTIONS(700), 1, - anon_sym_EQ, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(860), 1, - anon_sym_EQ_EQ, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - [10748] = 12, + anon_sym_SEMI, + [57912] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - ACTIONS(684), 1, + ACTIONS(3710), 2, anon_sym_LBRACE, - ACTIONS(688), 1, - anon_sym_STAR_STAR, - ACTIONS(692), 1, - anon_sym_LBRACK, - ACTIONS(694), 1, - anon_sym_DOT, - ACTIONS(702), 1, - anon_sym_and, - ACTIONS(862), 1, - anon_sym_EQ, - STATE(252), 1, - sym_tuple_expression, - ACTIONS(686), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(690), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(696), 2, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - [10788] = 12, + anon_sym_SEMI, + [57920] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(864), 1, + ACTIONS(4427), 1, sym_identifier, - ACTIONS(866), 1, - anon_sym_LPAREN, - ACTIONS(868), 1, + ACTIONS(4505), 1, anon_sym_RPAREN, - ACTIONS(870), 1, - anon_sym_COMMA, - ACTIONS(872), 1, - anon_sym_local, - ACTIONS(876), 1, - sym_hint, - STATE(310), 1, - sym_non_identifier_type, - STATE(333), 1, - sym_named_type, - STATE(393), 1, - sym_typed_identifier, - STATE(436), 1, - sym_type, - ACTIONS(874), 2, - anon_sym_felt, - anon_sym_codeoffset, - [10826] = 9, + [57930] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(876), 1, - sym_hint, - ACTIONS(878), 1, - sym_identifier, - ACTIONS(880), 1, - anon_sym_LPAREN, - STATE(310), 1, - sym_non_identifier_type, - STATE(315), 1, - sym_named_type, - STATE(403), 1, - sym_type, - STATE(511), 1, - sym_arguments, - ACTIONS(874), 2, - anon_sym_felt, - anon_sym_codeoffset, - [10855] = 7, + ACTIONS(4507), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [57938] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(19), 1, - anon_sym_AT, - ACTIONS(882), 1, - anon_sym_namespace, - ACTIONS(884), 1, - anon_sym_struct, - ACTIONS(886), 1, - anon_sym_func, - STATE(325), 2, - sym_decorator, - aux_sym_decorated_definition_repeat1, - STATE(157), 3, - sym_namespace_definition, - sym_struct_definition, - sym_function_definition, - [10880] = 9, + ACTIONS(4509), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [57946] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(876), 1, - sym_hint, - ACTIONS(878), 1, - sym_identifier, - ACTIONS(880), 1, - anon_sym_LPAREN, - STATE(310), 1, - sym_non_identifier_type, - STATE(315), 1, - sym_named_type, - STATE(391), 1, - sym_type, - STATE(492), 1, - sym_arguments, - ACTIONS(874), 2, - anon_sym_felt, - anon_sym_codeoffset, - [10909] = 9, + ACTIONS(4511), 1, + anon_sym_EQ, + ACTIONS(4513), 1, + anon_sym_SEMI, + [57956] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(876), 1, - sym_hint, - ACTIONS(878), 1, - sym_identifier, - ACTIONS(880), 1, - anon_sym_LPAREN, - STATE(310), 1, - sym_non_identifier_type, - STATE(315), 1, - sym_named_type, - STATE(390), 1, - sym_type, - STATE(489), 1, - sym_arguments, - ACTIONS(874), 2, - anon_sym_felt, - anon_sym_codeoffset, - [10938] = 9, + ACTIONS(3692), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [57964] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(876), 1, - sym_hint, - ACTIONS(878), 1, - sym_identifier, - ACTIONS(880), 1, - anon_sym_LPAREN, - STATE(310), 1, - sym_non_identifier_type, - STATE(315), 1, - sym_named_type, - STATE(411), 1, - sym_type, - STATE(508), 1, - sym_arguments, - ACTIONS(874), 2, - anon_sym_felt, - anon_sym_codeoffset, - [10967] = 7, + ACTIONS(133), 1, + anon_sym_LBRACE, + STATE(455), 1, + sym_block, + [57974] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4379), 1, + anon_sym_LBRACE, + ACTIONS(4515), 1, + anon_sym_SEMI, + [57984] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(19), 1, - anon_sym_AT, - ACTIONS(888), 1, - anon_sym_namespace, - ACTIONS(890), 1, - anon_sym_struct, - ACTIONS(892), 1, - anon_sym_func, - STATE(325), 2, - sym_decorator, - aux_sym_decorated_definition_repeat1, - STATE(145), 3, - sym_namespace_definition, - sym_struct_definition, - sym_function_definition, - [10992] = 4, + ACTIONS(4517), 2, + anon_sym_LBRACE, + anon_sym_SEMI, + [57992] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(896), 1, - anon_sym_COLON, - ACTIONS(898), 1, - anon_sym_STAR, - ACTIONS(894), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_EQ, - anon_sym_SEMI, + ACTIONS(3236), 1, anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - [11011] = 8, + ACTIONS(3330), 1, + anon_sym_SEMI, + [58002] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(866), 1, - anon_sym_LPAREN, - ACTIONS(876), 1, - sym_hint, - ACTIONS(878), 1, + ACTIONS(4519), 1, sym_identifier, - STATE(310), 1, - sym_non_identifier_type, - STATE(353), 1, - sym_named_type, - STATE(436), 1, - sym_type, - ACTIONS(874), 2, - anon_sym_felt, - anon_sym_codeoffset, - [11037] = 8, + STATE(586), 1, + aux_sym_builtin_directive_repeat1, + [58012] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(866), 1, - anon_sym_LPAREN, - ACTIONS(876), 1, - sym_hint, - ACTIONS(878), 1, - sym_identifier, - STATE(310), 1, - sym_non_identifier_type, - STATE(315), 1, - sym_named_type, - STATE(324), 1, - sym_type, - ACTIONS(874), 2, - anon_sym_felt, - anon_sym_codeoffset, - [11063] = 8, + ACTIONS(3260), 1, + anon_sym_LBRACE, + ACTIONS(3330), 1, + anon_sym_SEMI, + [58022] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(866), 1, + ACTIONS(4521), 1, anon_sym_LPAREN, - ACTIONS(876), 1, - sym_hint, - ACTIONS(878), 1, - sym_identifier, - STATE(310), 1, - sym_non_identifier_type, - STATE(315), 1, - sym_named_type, - STATE(343), 1, - sym_type, - ACTIONS(874), 2, - anon_sym_felt, - anon_sym_codeoffset, - [11089] = 3, + [58029] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(898), 1, - anon_sym_STAR, - ACTIONS(894), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_EQ, + ACTIONS(4523), 1, anon_sym_SEMI, - anon_sym_LBRACE, + [58036] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4525), 1, anon_sym_RBRACE, - anon_sym_STAR_STAR, - [11105] = 8, + [58043] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(866), 1, - anon_sym_LPAREN, - ACTIONS(876), 1, - sym_hint, - ACTIONS(878), 1, - sym_identifier, - STATE(310), 1, - sym_non_identifier_type, - STATE(315), 1, - sym_named_type, - STATE(323), 1, - sym_type, - ACTIONS(874), 2, - anon_sym_felt, - anon_sym_codeoffset, - [11131] = 3, + ACTIONS(1568), 1, + anon_sym_COLON_COLON, + [58050] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(902), 1, - anon_sym_STAR, - ACTIONS(900), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_EQ, + ACTIONS(4527), 1, anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - [11147] = 8, + [58057] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(866), 1, - anon_sym_LPAREN, - ACTIONS(876), 1, - sym_hint, - ACTIONS(878), 1, - sym_identifier, - STATE(310), 1, - sym_non_identifier_type, - STATE(315), 1, - sym_named_type, - STATE(386), 1, - sym_type, - ACTIONS(874), 2, - anon_sym_felt, - anon_sym_codeoffset, - [11173] = 3, + ACTIONS(4529), 1, + anon_sym_COLON, + [58064] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(906), 1, - anon_sym_STAR, - ACTIONS(904), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_EQ, + ACTIONS(4531), 1, anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_STAR_STAR, - [11189] = 3, + [58071] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(910), 1, - anon_sym_STAR, - ACTIONS(908), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_EQ, - anon_sym_SEMI, - anon_sym_LBRACE, + ACTIONS(3062), 1, anon_sym_RBRACE, - anon_sym_STAR_STAR, - [11205] = 8, + [58078] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(866), 1, - anon_sym_LPAREN, - ACTIONS(876), 1, - sym_hint, - ACTIONS(878), 1, - sym_identifier, - STATE(310), 1, - sym_non_identifier_type, - STATE(315), 1, - sym_named_type, - STATE(379), 1, - sym_type, - ACTIONS(874), 2, - anon_sym_felt, - anon_sym_codeoffset, - [11231] = 8, + ACTIONS(3122), 1, + anon_sym_RBRACE, + [58085] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(866), 1, - anon_sym_LPAREN, - ACTIONS(876), 1, - sym_hint, - ACTIONS(878), 1, - sym_identifier, - STATE(310), 1, - sym_non_identifier_type, - STATE(333), 1, - sym_named_type, - STATE(436), 1, - sym_type, - ACTIONS(874), 2, - anon_sym_felt, - anon_sym_codeoffset, - [11257] = 8, + ACTIONS(4533), 1, + anon_sym_LBRACE, + [58092] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(866), 1, - anon_sym_LPAREN, - ACTIONS(876), 1, - sym_hint, - ACTIONS(878), 1, - sym_identifier, - STATE(310), 1, - sym_non_identifier_type, - STATE(315), 1, - sym_named_type, - STATE(394), 1, - sym_type, - ACTIONS(874), 2, - anon_sym_felt, - anon_sym_codeoffset, - [11283] = 3, + ACTIONS(1529), 1, + anon_sym_COLON_COLON, + [58099] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(914), 1, - anon_sym_STAR, - ACTIONS(912), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_EQ, - anon_sym_SEMI, - anon_sym_LBRACE, + ACTIONS(3666), 1, anon_sym_RBRACE, - anon_sym_STAR_STAR, - [11299] = 3, + [58106] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(918), 1, - anon_sym_STAR, - ACTIONS(916), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_EQ, - anon_sym_SEMI, + ACTIONS(4535), 1, anon_sym_LBRACE, + [58113] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2900), 1, + anon_sym_COLON_COLON, + [58120] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3110), 1, anon_sym_RBRACE, - anon_sym_STAR_STAR, - [11315] = 3, + [58127] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(922), 1, - anon_sym_STAR, - ACTIONS(920), 7, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_EQ, - anon_sym_SEMI, - anon_sym_LBRACE, + ACTIONS(4537), 1, + anon_sym_RBRACK, + [58134] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4539), 1, + anon_sym_RBRACK, + [58141] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4541), 1, anon_sym_RBRACE, - anon_sym_STAR_STAR, - [11331] = 8, + [58148] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(866), 1, - anon_sym_LPAREN, - ACTIONS(876), 1, - sym_hint, - ACTIONS(878), 1, + ACTIONS(4543), 1, sym_identifier, - STATE(310), 1, - sym_non_identifier_type, - STATE(312), 1, - sym_type, - STATE(315), 1, - sym_named_type, - ACTIONS(874), 2, - anon_sym_felt, - anon_sym_codeoffset, - [11357] = 4, + [58155] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(926), 1, - anon_sym_STAR, - ACTIONS(928), 1, - anon_sym_STAR_STAR, - ACTIONS(924), 5, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_EQ, - anon_sym_SEMI, - anon_sym_RBRACE, - [11374] = 4, + ACTIONS(4335), 1, + sym_identifier, + [58162] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(926), 1, - anon_sym_STAR, - ACTIONS(928), 1, - anon_sym_STAR_STAR, - ACTIONS(930), 5, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_EQ, - anon_sym_SEMI, + ACTIONS(3763), 1, anon_sym_RBRACE, - [11391] = 4, + [58169] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(932), 1, - anon_sym_AT, - STATE(325), 2, - sym_decorator, - aux_sym_decorated_definition_repeat1, - ACTIONS(935), 3, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - [11407] = 3, + ACTIONS(3759), 1, + anon_sym_RBRACE, + [58176] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(939), 1, - anon_sym_COLON, - ACTIONS(937), 5, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_EQ, - anon_sym_SEMI, + ACTIONS(2868), 1, anon_sym_RBRACE, - [11421] = 4, + [58183] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(941), 1, - anon_sym_DOT, - STATE(328), 1, - aux_sym_dotted_name_repeat1, - ACTIONS(383), 4, - anon_sym_import, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - [11437] = 4, + ACTIONS(4545), 1, + anon_sym_RBRACK, + [58190] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(943), 1, - anon_sym_DOT, - STATE(328), 1, - aux_sym_dotted_name_repeat1, - ACTIONS(376), 4, - anon_sym_import, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - [11453] = 4, + ACTIONS(4547), 1, + anon_sym_RBRACE, + [58197] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(941), 1, - anon_sym_DOT, - STATE(327), 1, - aux_sym_dotted_name_repeat1, - ACTIONS(389), 4, - anon_sym_import, + ACTIONS(3789), 1, anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - [11469] = 3, + [58204] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3803), 1, + anon_sym_RBRACE, + [58211] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(948), 1, + ACTIONS(4549), 1, anon_sym_COLON, - ACTIONS(946), 5, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_EQ, - anon_sym_SEMI, + [58218] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3094), 1, anon_sym_RBRACE, - [11483] = 2, + [58225] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(376), 5, - anon_sym_import, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_as, - anon_sym_DOT, - [11494] = 5, + ACTIONS(4551), 1, + anon_sym_EQ, + [58232] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(872), 1, - anon_sym_local, - ACTIONS(950), 1, - sym_identifier, - ACTIONS(952), 1, - anon_sym_LPAREN, - STATE(505), 2, - sym__ref_binding, - sym_typed_identifier, - [11511] = 6, + ACTIONS(4553), 1, + anon_sym_EQ, + [58239] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(908), 1, - anon_sym_STAR_STAR, - ACTIONS(910), 1, - anon_sym_STAR, - ACTIONS(954), 1, + ACTIONS(4555), 1, anon_sym_RPAREN, - ACTIONS(956), 1, - anon_sym_COMMA, - STATE(401), 1, - aux_sym_non_identifier_type_repeat1, - [11530] = 6, + [58246] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(958), 1, - sym_identifier, - ACTIONS(960), 1, - anon_sym_LPAREN, - STATE(67), 1, - sym_dotted_name, - STATE(70), 1, - sym_aliased_import, - STATE(150), 1, - sym__import_list, - [11549] = 6, + ACTIONS(4557), 1, + anon_sym_SEMI, + [58253] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(962), 1, - sym_identifier, - ACTIONS(964), 1, - anon_sym_LPAREN, - STATE(66), 1, - sym_dotted_name, - STATE(73), 1, - sym_aliased_import, - STATE(138), 1, - sym__import_list, - [11568] = 5, + ACTIONS(4559), 1, + anon_sym_SEMI, + [58260] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(872), 1, - anon_sym_local, - ACTIONS(950), 1, - sym_identifier, - ACTIONS(952), 1, - anon_sym_LPAREN, - STATE(447), 2, - sym__ref_binding, - sym_typed_identifier, - [11585] = 4, + ACTIONS(4561), 1, + anon_sym_RPAREN, + [58267] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(898), 1, - anon_sym_STAR, - ACTIONS(966), 1, - anon_sym_COLON, - ACTIONS(894), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_STAR_STAR, - [11600] = 6, + ACTIONS(4563), 1, + anon_sym_LPAREN, + [58274] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(868), 1, - anon_sym_RPAREN, - ACTIONS(870), 1, - anon_sym_COMMA, - ACTIONS(872), 1, - anon_sym_local, - ACTIONS(950), 1, + ACTIONS(4565), 1, sym_identifier, - STATE(393), 1, - sym_typed_identifier, - [11619] = 5, + [58281] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(872), 1, - anon_sym_local, - ACTIONS(950), 1, + ACTIONS(4567), 1, sym_identifier, - ACTIONS(968), 1, + [58288] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4569), 1, anon_sym_RBRACE, - STATE(388), 1, - sym_typed_identifier, - [11635] = 5, + [58295] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3905), 1, + anon_sym_RPAREN, + [58302] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(872), 1, - anon_sym_local, - ACTIONS(950), 1, - sym_identifier, - ACTIONS(970), 1, + ACTIONS(4571), 1, anon_sym_RBRACE, - STATE(402), 1, - sym_typed_identifier, - [11651] = 5, + [58309] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(872), 1, - anon_sym_local, - ACTIONS(950), 1, - sym_identifier, - ACTIONS(972), 1, - anon_sym_RBRACE, - STATE(405), 1, - sym_typed_identifier, - [11667] = 5, + ACTIONS(4573), 1, + anon_sym_COLON, + [58316] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(974), 1, + ACTIONS(4575), 1, anon_sym_LPAREN, - ACTIONS(976), 1, - anon_sym_LBRACE, - STATE(433), 1, - sym_implicit_arguments, - STATE(442), 1, - sym_arguments, - [11683] = 3, + [58323] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(902), 1, - anon_sym_STAR, - ACTIONS(900), 3, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_STAR_STAR, - [11695] = 5, + ACTIONS(4577), 1, + anon_sym_EQ, + [58330] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(872), 1, - anon_sym_local, - ACTIONS(950), 1, + ACTIONS(4579), 1, sym_identifier, - ACTIONS(978), 1, - anon_sym_RPAREN, - STATE(369), 1, - sym_typed_identifier, - [11711] = 2, + [58337] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(980), 4, - anon_sym_AT, - anon_sym_namespace, - anon_sym_struct, - anon_sym_func, - [11721] = 5, + ACTIONS(1936), 1, + anon_sym_RPAREN, + [58344] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(872), 1, - anon_sym_local, - ACTIONS(950), 1, + ACTIONS(4581), 1, sym_identifier, - ACTIONS(982), 1, - anon_sym_RBRACE, - STATE(402), 1, - sym_typed_identifier, - [11737] = 5, + [58351] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(872), 1, - anon_sym_local, - ACTIONS(950), 1, - sym_identifier, - ACTIONS(984), 1, + ACTIONS(4583), 1, anon_sym_RPAREN, - STATE(402), 1, - sym_typed_identifier, - [11753] = 5, + [58358] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(872), 1, - anon_sym_local, - ACTIONS(950), 1, - sym_identifier, - ACTIONS(986), 1, + ACTIONS(4022), 1, anon_sym_RBRACE, - STATE(402), 1, - sym_typed_identifier, - [11769] = 5, + [58365] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(872), 1, - anon_sym_local, - ACTIONS(950), 1, - sym_identifier, - ACTIONS(988), 1, + ACTIONS(4585), 1, + anon_sym_RBRACK, + [58372] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3996), 1, anon_sym_RBRACE, - STATE(402), 1, - sym_typed_identifier, - [11785] = 5, + [58379] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(974), 1, - anon_sym_LPAREN, - ACTIONS(976), 1, - anon_sym_LBRACE, - STATE(413), 1, - sym_arguments, - STATE(419), 1, - sym_implicit_arguments, - [11801] = 5, + ACTIONS(4587), 1, + anon_sym_RBRACK, + [58386] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(872), 1, - anon_sym_local, - ACTIONS(950), 1, + ACTIONS(4589), 1, sym_identifier, - ACTIONS(990), 1, - anon_sym_RPAREN, - STATE(402), 1, - sym_typed_identifier, - [11817] = 5, + [58393] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(872), 1, - anon_sym_local, - ACTIONS(950), 1, - sym_identifier, - ACTIONS(992), 1, - anon_sym_RBRACE, - STATE(402), 1, - sym_typed_identifier, - [11833] = 4, + ACTIONS(4591), 1, + anon_sym_SEMI, + [58400] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(908), 1, - anon_sym_STAR_STAR, - ACTIONS(910), 1, - anon_sym_STAR, - ACTIONS(994), 2, - anon_sym_RPAREN, - anon_sym_COMMA, - [11847] = 5, + ACTIONS(4593), 1, + anon_sym_SEMI, + [58407] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(872), 1, - anon_sym_local, - ACTIONS(950), 1, - sym_identifier, - ACTIONS(996), 1, - anon_sym_RBRACE, - STATE(402), 1, - sym_typed_identifier, - [11863] = 5, + ACTIONS(4595), 1, + anon_sym_SEMI, + [58414] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(872), 1, - anon_sym_local, - ACTIONS(950), 1, - sym_identifier, - ACTIONS(998), 1, - anon_sym_RBRACE, - STATE(398), 1, - sym_typed_identifier, - [11879] = 5, + ACTIONS(4421), 1, + anon_sym_COLON, + [58421] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(419), 1, - anon_sym_RPAREN, - ACTIONS(1000), 1, + ACTIONS(4597), 1, sym_identifier, - STATE(372), 1, - sym_dotted_name, - STATE(427), 1, - sym_aliased_import, - [11895] = 5, + [58428] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1000), 1, - sym_identifier, - STATE(359), 1, - sym_dotted_name, - STATE(373), 1, - sym_aliased_import, - STATE(509), 1, - sym__import_list, - [11911] = 5, + ACTIONS(4419), 1, + anon_sym_EQ, + [58435] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(419), 1, - anon_sym_RPAREN, - ACTIONS(1000), 1, - sym_identifier, - STATE(372), 1, - sym_dotted_name, - STATE(427), 1, - sym_aliased_import, - [11927] = 5, + ACTIONS(4599), 1, + anon_sym_LBRACE, + [58442] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(398), 1, + ACTIONS(4601), 1, anon_sym_RPAREN, - ACTIONS(1002), 1, - anon_sym_COMMA, - ACTIONS(1004), 1, - anon_sym_as, - STATE(364), 1, - aux_sym__import_list_repeat1, - [11943] = 5, + [58449] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1000), 1, - sym_identifier, - STATE(359), 1, - sym_dotted_name, - STATE(373), 1, - sym_aliased_import, - STATE(444), 1, - sym__import_list, - [11959] = 4, + ACTIONS(4603), 1, + anon_sym_LBRACE, + [58456] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1008), 1, - anon_sym_COMMA, - STATE(361), 1, - aux_sym_struct_definition_repeat1, - ACTIONS(1006), 2, - anon_sym_RPAREN, + ACTIONS(4135), 1, anon_sym_RBRACE, - [11973] = 5, + [58463] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(437), 1, - anon_sym_RPAREN, - ACTIONS(1000), 1, + ACTIONS(4605), 1, + anon_sym_EQ, + [58470] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(2754), 1, + anon_sym_RBRACE, + [58477] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4607), 1, + anon_sym_PERCENT_RBRACE, + [58484] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4609), 1, sym_identifier, - STATE(372), 1, - sym_dotted_name, - STATE(427), 1, - sym_aliased_import, - [11989] = 4, + [58491] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(429), 1, - anon_sym_RPAREN, - ACTIONS(1011), 1, - anon_sym_COMMA, - STATE(374), 1, - aux_sym__import_list_repeat1, - [12002] = 4, + ACTIONS(4611), 1, + anon_sym_SEMI, + [58498] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(429), 1, - anon_sym_RPAREN, - ACTIONS(1013), 1, - anon_sym_COMMA, - STATE(374), 1, - aux_sym__import_list_repeat1, - [12015] = 4, + ACTIONS(4613), 1, + anon_sym_SEMI, + [58505] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1015), 1, - anon_sym_COMMA, - ACTIONS(1017), 1, - anon_sym_LBRACE, - STATE(408), 1, - aux_sym_with_statement_repeat1, - [12028] = 4, + ACTIONS(4615), 1, + anon_sym_PLUS_PLUS, + [58512] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1015), 1, - anon_sym_COMMA, - ACTIONS(1019), 1, - anon_sym_LBRACE, - STATE(408), 1, - aux_sym_with_statement_repeat1, - [12041] = 4, + ACTIONS(4617), 1, + anon_sym_LPAREN, + [58519] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1021), 1, - anon_sym_RPAREN, - ACTIONS(1023), 1, - sym_string, - STATE(395), 1, - aux_sym_attribute_statement_repeat1, - [12054] = 4, + ACTIONS(4619), 1, + anon_sym_COLON, + [58526] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1015), 1, - anon_sym_COMMA, - ACTIONS(1025), 1, - anon_sym_LBRACE, - STATE(366), 1, - aux_sym_with_statement_repeat1, - [12067] = 4, + ACTIONS(4621), 1, + anon_sym_LPAREN, + [58533] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1027), 1, - anon_sym_RPAREN, - ACTIONS(1029), 1, - anon_sym_COMMA, - STATE(407), 1, - aux_sym_struct_definition_repeat1, - [12080] = 4, + ACTIONS(4623), 1, + anon_sym_RBRACK, + [58540] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(872), 1, - anon_sym_local, - ACTIONS(950), 1, + ACTIONS(4625), 1, + anon_sym_RBRACK, + [58547] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4627), 1, sym_identifier, - STATE(421), 1, - sym_typed_identifier, - [12093] = 4, + [58554] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(872), 1, - anon_sym_local, - ACTIONS(950), 1, + ACTIONS(4104), 1, sym_identifier, - STATE(420), 1, - sym_typed_identifier, - [12106] = 3, + [58561] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1004), 1, - anon_sym_as, - ACTIONS(423), 2, - anon_sym_RPAREN, - anon_sym_COMMA, - [12117] = 4, + ACTIONS(4629), 1, + anon_sym_PLUS_PLUS, + [58568] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(398), 1, - anon_sym_RPAREN, - ACTIONS(1002), 1, - anon_sym_COMMA, - STATE(363), 1, - aux_sym__import_list_repeat1, - [12130] = 4, + ACTIONS(2270), 1, + anon_sym_RBRACE, + [58575] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(408), 1, - anon_sym_RPAREN, - ACTIONS(1031), 1, - anon_sym_COMMA, - STATE(374), 1, - aux_sym__import_list_repeat1, - [12143] = 4, + ACTIONS(3660), 1, + sym_identifier, + [58582] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(872), 1, - anon_sym_local, - ACTIONS(950), 1, + ACTIONS(4631), 1, + anon_sym_EQ, + [58589] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4262), 1, sym_identifier, - STATE(438), 1, - sym_typed_identifier, - [12156] = 4, + [58596] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(782), 1, - anon_sym_RPAREN, - ACTIONS(1034), 1, - anon_sym_COMMA, - STATE(376), 1, - aux_sym_tuple_expression_repeat1, - [12169] = 4, + ACTIONS(4633), 1, + sym_identifier, + [58603] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(872), 1, - anon_sym_local, - ACTIONS(950), 1, + ACTIONS(3076), 1, + anon_sym_RBRACE, + [58610] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4635), 1, + anon_sym_RBRACE, + [58617] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4637), 1, + anon_sym_RBRACE, + [58624] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4639), 1, sym_identifier, - STATE(439), 1, - sym_typed_identifier, - [12182] = 4, + [58631] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1037), 1, - anon_sym_RPAREN, - ACTIONS(1039), 1, - sym_string, - STATE(378), 1, - aux_sym_attribute_statement_repeat1, - [12195] = 4, + ACTIONS(4641), 1, + anon_sym_PERCENT_RBRACE, + [58638] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(926), 1, - anon_sym_STAR, - ACTIONS(928), 1, - anon_sym_STAR_STAR, - ACTIONS(1042), 1, - anon_sym_SEMI, - [12208] = 4, + ACTIONS(4643), 1, + sym_identifier, + [58645] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(958), 1, + ACTIONS(4645), 1, sym_identifier, - STATE(81), 1, - sym_dotted_name, - STATE(88), 1, - sym_aliased_import, - [12221] = 4, + [58652] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(990), 1, - anon_sym_RPAREN, - ACTIONS(1044), 1, - anon_sym_COMMA, - STATE(361), 1, - aux_sym_struct_definition_repeat1, - [12234] = 4, + ACTIONS(4647), 1, + sym_identifier, + [58659] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1000), 1, + ACTIONS(4649), 1, sym_identifier, - STATE(372), 1, - sym_dotted_name, - STATE(427), 1, - sym_aliased_import, - [12247] = 4, + [58666] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1046), 1, + ACTIONS(4651), 1, + anon_sym_SEMI, + [58673] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4427), 1, sym_identifier, - ACTIONS(1048), 1, - anon_sym_rel, - ACTIONS(1050), 1, - anon_sym_abs, - [12260] = 4, + [58680] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(666), 1, + ACTIONS(3405), 1, anon_sym_RPAREN, - ACTIONS(1052), 1, - anon_sym_COMMA, - STATE(376), 1, - aux_sym_tuple_expression_repeat1, - [12273] = 4, + [58687] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(962), 1, + ACTIONS(4653), 1, sym_identifier, - STATE(72), 1, - sym_dotted_name, - STATE(89), 1, - sym_aliased_import, - [12286] = 4, + [58694] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(926), 1, - anon_sym_STAR, - ACTIONS(928), 1, - anon_sym_STAR_STAR, - ACTIONS(1054), 1, - anon_sym_RPAREN, - [12299] = 3, + ACTIONS(4655), 1, + sym_identifier, + [58701] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1056), 1, + ACTIONS(4657), 1, sym_identifier, - ACTIONS(1058), 2, - anon_sym_rel, - anon_sym_abs, - [12310] = 4, + [58708] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1060), 1, - anon_sym_COMMA, - ACTIONS(1062), 1, - anon_sym_RBRACE, - STATE(399), 1, - aux_sym_struct_definition_repeat1, - [12323] = 4, + ACTIONS(4659), 1, + anon_sym_import, + [58715] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(994), 1, - anon_sym_RPAREN, - ACTIONS(1064), 1, - anon_sym_COMMA, - STATE(389), 1, - aux_sym_non_identifier_type_repeat1, - [12336] = 4, + ACTIONS(4661), 1, + anon_sym_EQ, + [58722] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(926), 1, - anon_sym_STAR, - ACTIONS(928), 1, - anon_sym_STAR_STAR, - ACTIONS(1067), 1, + ACTIONS(4663), 1, anon_sym_LBRACE, - [12349] = 4, + [58729] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(926), 1, - anon_sym_STAR, - ACTIONS(928), 1, - anon_sym_STAR_STAR, - ACTIONS(1069), 1, + ACTIONS(2872), 1, + anon_sym_COLON_COLON, + [58736] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4665), 1, anon_sym_LBRACE, - [12362] = 4, + [58743] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(848), 1, - anon_sym_RBRACE, - ACTIONS(1071), 1, - anon_sym_COMMA, - STATE(392), 1, - aux_sym_call_expression_repeat1, - [12375] = 4, + ACTIONS(4667), 1, + anon_sym_PERCENT_RBRACE, + [58750] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1074), 1, - anon_sym_RPAREN, - ACTIONS(1076), 1, - anon_sym_COMMA, - STATE(381), 1, - aux_sym_struct_definition_repeat1, - [12388] = 4, + ACTIONS(4669), 1, + anon_sym_COLON_COLON, + [58757] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(926), 1, - anon_sym_STAR, - ACTIONS(928), 1, - anon_sym_STAR_STAR, - ACTIONS(1078), 1, - anon_sym_SEMI, - [12401] = 4, + ACTIONS(4671), 1, + anon_sym_EQ, + [58764] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1080), 1, - anon_sym_RPAREN, - ACTIONS(1082), 1, - sym_string, - STATE(378), 1, - aux_sym_attribute_statement_repeat1, - [12414] = 4, + ACTIONS(836), 1, + anon_sym_COLON_COLON, + [58771] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1015), 1, - anon_sym_COMMA, - ACTIONS(1084), 1, - anon_sym_LBRACE, - STATE(365), 1, - aux_sym_with_statement_repeat1, - [12427] = 4, + ACTIONS(4673), 1, + anon_sym_ap, + [58778] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4675), 1, + sym_identifier, + [58785] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4677), 1, + sym_identifier, + [58792] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4679), 1, + sym_identifier, + [58799] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(3403), 1, + sym_identifier, + [58806] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(4681), 1, + sym_identifier, + [58813] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(988), 1, - anon_sym_RBRACE, - ACTIONS(1086), 1, - anon_sym_COMMA, - STATE(361), 1, - aux_sym_struct_definition_repeat1, - [12440] = 4, + ACTIONS(4278), 1, + sym_identifier, + [58820] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1088), 1, - anon_sym_COMMA, - ACTIONS(1090), 1, - anon_sym_RBRACE, - STATE(412), 1, - aux_sym_struct_definition_repeat1, - [12453] = 4, + ACTIONS(4683), 1, + sym_identifier, + [58827] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(992), 1, - anon_sym_RBRACE, - ACTIONS(1092), 1, - anon_sym_COMMA, - STATE(361), 1, - aux_sym_struct_definition_repeat1, - [12466] = 3, + ACTIONS(4685), 1, + anon_sym_COLON_COLON, + [58834] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1096), 1, - anon_sym_if, - ACTIONS(1094), 2, - anon_sym_COMMA, - anon_sym_SEMI, - [12477] = 4, + ACTIONS(4687), 1, + anon_sym_EQ, + [58841] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(956), 1, - anon_sym_COMMA, - ACTIONS(1098), 1, + ACTIONS(4689), 1, anon_sym_RPAREN, - STATE(389), 1, - aux_sym_non_identifier_type_repeat1, - [12490] = 2, + [58848] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1006), 3, + ACTIONS(1954), 1, anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_RBRACE, - [12499] = 4, + [58855] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(926), 1, - anon_sym_STAR, - ACTIONS(928), 1, - anon_sym_STAR_STAR, - ACTIONS(1100), 1, - anon_sym_LBRACE, - [12512] = 4, + ACTIONS(4691), 1, + sym_identifier, + [58862] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(872), 1, - anon_sym_local, - ACTIONS(950), 1, + ACTIONS(4693), 1, sym_identifier, - STATE(402), 1, - sym_typed_identifier, - [12525] = 4, + [58869] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1102), 1, - anon_sym_COMMA, - ACTIONS(1104), 1, + ACTIONS(3160), 1, anon_sym_RBRACE, - STATE(397), 1, - aux_sym_struct_definition_repeat1, - [12538] = 4, + [58876] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1106), 1, + ACTIONS(4264), 1, anon_sym_RPAREN, - ACTIONS(1108), 1, - sym_string, - STATE(410), 1, - aux_sym_attribute_statement_repeat1, - [12551] = 4, + [58883] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1029), 1, - anon_sym_COMMA, - ACTIONS(1110), 1, - anon_sym_RPAREN, - STATE(361), 1, - aux_sym_struct_definition_repeat1, - [12564] = 4, + ACTIONS(3167), 1, + anon_sym_RBRACE, + [58890] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1112), 1, - anon_sym_COMMA, - ACTIONS(1115), 1, - anon_sym_LBRACE, - STATE(408), 1, - aux_sym_with_statement_repeat1, - [12577] = 4, + ACTIONS(4224), 1, + anon_sym_RBRACE, + [58897] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(670), 1, - anon_sym_RBRACE, - ACTIONS(1117), 1, - anon_sym_COMMA, - STATE(392), 1, - aux_sym_call_expression_repeat1, - [12590] = 4, + ACTIONS(3270), 1, + anon_sym_SEMI, + [58904] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1082), 1, - sym_string, - ACTIONS(1119), 1, - anon_sym_RPAREN, - STATE(378), 1, - aux_sym_attribute_statement_repeat1, - [12603] = 4, + ACTIONS(4695), 1, + anon_sym_LPAREN, + [58911] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(926), 1, - anon_sym_STAR, - ACTIONS(928), 1, - anon_sym_STAR_STAR, - ACTIONS(1121), 1, - anon_sym_LBRACE, - [12616] = 4, + ACTIONS(4697), 1, + anon_sym_RBRACK, + [58918] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(970), 1, + ACTIONS(3102), 1, anon_sym_RBRACE, - ACTIONS(1123), 1, - anon_sym_COMMA, - STATE(361), 1, - aux_sym_struct_definition_repeat1, - [12629] = 3, + [58925] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1125), 1, - anon_sym_LBRACE, - ACTIONS(1127), 1, - anon_sym_DASH_GT, - [12639] = 3, + ACTIONS(4699), 1, + anon_sym_RBRACE, + [58932] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - STATE(247), 1, - sym_tuple_expression, - [12649] = 3, + ACTIONS(4701), 1, + sym_identifier, + [58939] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1129), 1, - sym_identifier, - STATE(94), 1, - aux_sym_builtin_directive_repeat1, - [12659] = 3, + ACTIONS(3114), 1, + anon_sym_RBRACE, + [58946] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1131), 1, + ACTIONS(4703), 1, sym_identifier, - STATE(91), 1, - aux_sym_builtin_directive_repeat1, - [12669] = 3, + [58953] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1133), 1, - anon_sym_LBRACE, - ACTIONS(1135), 1, - anon_sym_DASH_GT, - [12679] = 3, + ACTIONS(4705), 1, + sym_identifier, + [58960] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1137), 1, - anon_sym_COMMA, - ACTIONS(1139), 1, - anon_sym_SEMI, - [12689] = 3, + ACTIONS(2744), 1, + anon_sym_RBRACE, + [58967] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(974), 1, - anon_sym_LPAREN, - STATE(425), 1, - sym_arguments, - [12699] = 3, + ACTIONS(4707), 1, + sym_identifier, + [58974] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1141), 1, - anon_sym_EQ, - ACTIONS(1143), 1, - anon_sym_SEMI, - [12709] = 3, + ACTIONS(4709), 1, + anon_sym_LBRACE, + [58981] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1145), 1, - anon_sym_EQ, - ACTIONS(1147), 1, - anon_sym_SEMI, - [12719] = 3, + ACTIONS(4711), 1, + anon_sym_COLON, + [58988] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1000), 1, + ACTIONS(4713), 1, sym_identifier, - STATE(470), 1, - sym_dotted_name, - [12729] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1149), 2, - anon_sym_LBRACE, - anon_sym_DASH_GT, - [12737] = 3, + [58995] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - STATE(245), 1, - sym_tuple_expression, - [12747] = 3, + ACTIONS(4715), 1, + sym_identifier, + [59002] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1151), 1, - anon_sym_LBRACE, - ACTIONS(1153), 1, - anon_sym_DASH_GT, - [12757] = 3, + ACTIONS(4717), 1, + anon_sym_RPAREN, + [59009] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1155), 1, + ACTIONS(4719), 1, anon_sym_LPAREN, - ACTIONS(1157), 1, - anon_sym_LBRACE, - [12767] = 2, + [59016] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(423), 2, - anon_sym_RPAREN, - anon_sym_COMMA, - [12775] = 2, + ACTIONS(4721), 1, + anon_sym_of, + [59023] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(453), 2, + ACTIONS(4723), 1, anon_sym_RPAREN, - anon_sym_COMMA, - [12783] = 2, + [59030] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1159), 2, - anon_sym_LBRACE, - anon_sym_DASH_GT, - [12791] = 2, + ACTIONS(4725), 1, + anon_sym_RBRACE, + [59037] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1115), 2, - anon_sym_COMMA, + ACTIONS(4727), 1, anon_sym_LBRACE, - [12799] = 3, + [59044] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1161), 1, - anon_sym_LPAREN, - ACTIONS(1163), 1, + ACTIONS(4729), 1, anon_sym_LBRACE, - [12809] = 3, + [59051] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1000), 1, - sym_identifier, - STATE(451), 1, - sym_dotted_name, - [12819] = 3, + ACTIONS(4731), 1, + anon_sym_RBRACE, + [59058] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(974), 1, - anon_sym_LPAREN, - STATE(417), 1, - sym_arguments, - [12829] = 2, + ACTIONS(4733), 1, + anon_sym_RBRACE, + [59065] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1165), 2, - anon_sym_LBRACE, - anon_sym_DASH_GT, - [12837] = 2, + ACTIONS(4735), 1, + sym_identifier, + [59072] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1167), 2, - anon_sym_COMMA, - anon_sym_SEMI, - [12845] = 3, + ACTIONS(4737), 1, + anon_sym_EQ_GT, + [59079] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(926), 1, - anon_sym_STAR, - ACTIONS(928), 1, - anon_sym_STAR_STAR, - [12855] = 3, + ACTIONS(4739), 1, + sym_identifier, + [59086] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1169), 1, - anon_sym_COMMA, - ACTIONS(1171), 1, + ACTIONS(4741), 1, anon_sym_SEMI, - [12865] = 3, + [59093] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1173), 1, - anon_sym_EQ, - ACTIONS(1175), 1, - anon_sym_SEMI, - [12875] = 3, + ACTIONS(4743), 1, + anon_sym_LBRACE, + [59100] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1177), 1, - anon_sym_EQ, - ACTIONS(1179), 1, + ACTIONS(3260), 1, anon_sym_SEMI, - [12885] = 2, + [59107] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1181), 2, - anon_sym_LBRACE, - anon_sym_DASH_GT, - [12893] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(11), 1, + ACTIONS(4745), 1, anon_sym_LPAREN, - STATE(250), 1, - sym_tuple_expression, - [12903] = 3, + [59114] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1183), 1, - anon_sym_LBRACE, - ACTIONS(1185), 1, - anon_sym_DASH_GT, - [12913] = 3, + ACTIONS(4747), 1, + anon_sym_RBRACK, + [59121] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(11), 1, - anon_sym_LPAREN, - STATE(254), 1, - sym_tuple_expression, - [12923] = 2, + ACTIONS(3126), 1, + anon_sym_RBRACE, + [59128] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1187), 1, - anon_sym_RPAREN, - [12930] = 2, + ACTIONS(4749), 1, + anon_sym_PERCENT_RBRACE, + [59135] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1189), 1, - anon_sym_PLUS_PLUS, - [12937] = 2, + ACTIONS(4751), 1, + anon_sym_LBRACE, + [59142] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1191), 1, - anon_sym_LPAREN, - [12944] = 2, + ACTIONS(4753), 1, + anon_sym_RBRACE, + [59149] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1193), 1, - anon_sym_EQ, - [12951] = 2, + ACTIONS(2896), 1, + anon_sym_RBRACE, + [59156] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(820), 1, - anon_sym_SEMI, - [12958] = 2, + ACTIONS(4755), 1, + anon_sym_EQ_GT, + [59163] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1195), 1, - anon_sym_EQ, - [12965] = 2, + ACTIONS(4757), 1, + anon_sym_RBRACE, + [59170] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1197), 1, - anon_sym_SEMI, - [12972] = 2, + ACTIONS(2262), 1, + anon_sym_RBRACE, + [59177] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1199), 1, - anon_sym_import, - [12979] = 2, + ACTIONS(4759), 1, + anon_sym_ap, + [59184] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1201), 1, + ACTIONS(4761), 1, sym_identifier, - [12986] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1203), 1, - anon_sym_ap, - [12993] = 2, + [59191] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1205), 1, - ts_builtin_sym_end, - [13000] = 2, + ACTIONS(4379), 1, + anon_sym_SEMI, + [59198] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1207), 1, - sym_identifier, - [13007] = 2, + ACTIONS(3236), 1, + anon_sym_SEMI, + [59205] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1209), 1, - sym_identifier, - [13014] = 2, + ACTIONS(1566), 1, + anon_sym_COLON_COLON, + [59212] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1211), 1, - anon_sym_LPAREN, - [13021] = 2, + ACTIONS(2858), 1, + anon_sym_COLON_COLON, + [59219] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1213), 1, - sym_hint, - [13028] = 2, + ACTIONS(4763), 1, + anon_sym_EQ, + [59226] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1215), 1, - anon_sym_LBRACE, - [13035] = 2, + ACTIONS(4765), 1, + anon_sym_COLON_COLON, + [59233] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1217), 1, + ACTIONS(4767), 1, sym_identifier, - [13042] = 2, + [59240] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1219), 1, + ACTIONS(4769), 1, sym_identifier, - [13049] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1221), 1, - anon_sym_LPAREN, - [13056] = 2, + [59247] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1223), 1, + ACTIONS(4771), 1, anon_sym_LPAREN, - [13063] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1225), 1, - anon_sym_SEMI, - [13070] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1227), 1, - sym_identifier, - [13077] = 2, + [59254] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1229), 1, - sym_identifier, - [13084] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(1231), 1, - sym_identifier, - [13091] = 2, + ACTIONS(4773), 1, + anon_sym_RBRACE, + [59261] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1233), 1, - sym_identifier, - [13098] = 2, + ACTIONS(4775), 1, + anon_sym_LBRACE, + [59268] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1235), 1, - sym_identifier, - [13105] = 2, + ACTIONS(4777), 1, + anon_sym_EQ, + [59275] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1237), 1, + ACTIONS(4779), 1, anon_sym_import, - [13112] = 2, + [59282] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1239), 1, + ACTIONS(4781), 1, anon_sym_LBRACE, - [13119] = 2, + [59289] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1241), 1, - anon_sym_LBRACE, - [13126] = 2, + ACTIONS(4783), 1, + ts_builtin_sym_end, + [59296] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1243), 1, - anon_sym_LBRACE, - [13133] = 2, + ACTIONS(4785), 1, + ts_builtin_sym_end, + [59303] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1245), 1, - anon_sym_EQ, - [13140] = 2, + ACTIONS(4787), 1, + sym_identifier, + [59310] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1247), 1, - anon_sym_LBRACE, - [13147] = 2, + ACTIONS(4789), 1, + sym_identifier, + [59317] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1249), 1, + ACTIONS(4791), 1, anon_sym_LBRACE, - [13154] = 2, + [59324] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1251), 1, - anon_sym_PLUS_PLUS, - [13161] = 2, + ACTIONS(4793), 1, + sym_identifier, + [59331] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1253), 1, - anon_sym_SEMI, - [13168] = 2, + ACTIONS(4795), 1, + anon_sym_LBRACK, + [59338] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1255), 1, + ACTIONS(4797), 1, sym_identifier, - [13175] = 2, + [59345] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1257), 1, + ACTIONS(4799), 1, sym_identifier, - [13182] = 2, + [59352] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1259), 1, - sym_identifier, - [13189] = 2, + ACTIONS(4801), 1, + anon_sym_LPAREN, + [59359] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1261), 1, - sym_identifier, - [13196] = 2, + ACTIONS(4803), 1, + anon_sym_RBRACK, + [59366] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1263), 1, - anon_sym_EQ, - [13203] = 2, + ACTIONS(4805), 1, + anon_sym_LPAREN, + [59373] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1265), 1, - sym_identifier, - [13210] = 2, + ACTIONS(4807), 1, + anon_sym_RBRACE, + [59380] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(790), 1, + ACTIONS(4809), 1, anon_sym_RBRACE, - [13217] = 2, + [59387] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1267), 1, - anon_sym_LBRACE, - [13224] = 2, + ACTIONS(4811), 1, + sym_identifier, + [59394] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1269), 1, - anon_sym_LBRACE, - [13231] = 2, + ACTIONS(4813), 1, + sym_identifier, + [59401] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1271), 1, - anon_sym_LBRACE, - [13238] = 2, + ACTIONS(4815), 1, + sym_identifier, + [59408] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1067), 1, - anon_sym_LBRACE, - [13245] = 2, + ACTIONS(4817), 1, + sym_identifier, + [59415] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1273), 1, - anon_sym_LBRACE, - [13252] = 2, + ACTIONS(4819), 1, + sym_identifier, + [59422] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1275), 1, - anon_sym_LBRACE, - [13259] = 2, + ACTIONS(4821), 1, + sym_identifier, + [59429] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1069), 1, - anon_sym_LBRACE, - [13266] = 2, + ACTIONS(4823), 1, + anon_sym_EQ_GT, + [59436] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1277), 1, + ACTIONS(4825), 1, sym_identifier, - [13273] = 2, + [59443] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1279), 1, - anon_sym_LBRACE, - [13280] = 2, + ACTIONS(4827), 1, + anon_sym_LBRACK, + [59450] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1281), 1, - anon_sym_LBRACE, - [13287] = 2, + ACTIONS(4829), 1, + anon_sym_LPAREN, + [59457] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1283), 1, + ACTIONS(4831), 1, sym_identifier, - [13294] = 2, + [59464] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1285), 1, - sym_identifier, - [13301] = 2, + ACTIONS(4833), 1, + anon_sym_LPAREN, + [59471] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1287), 1, - sym_identifier, - [13308] = 2, + ACTIONS(4835), 1, + anon_sym_RBRACK, + [59478] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1289), 1, - sym_identifier, - [13315] = 2, + ACTIONS(4837), 1, + anon_sym_of, + [59485] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1291), 1, + ACTIONS(4839), 1, sym_identifier, - [13322] = 2, + [59492] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1293), 1, - anon_sym_EQ, - [13329] = 2, + ACTIONS(4841), 1, + sym_identifier, + [59499] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1074), 1, - anon_sym_RPAREN, - [13336] = 2, + ACTIONS(4843), 1, + anon_sym_EQ_GT, + [59506] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1295), 1, - anon_sym_EQ, - [13343] = 2, + ACTIONS(4369), 1, + anon_sym_SEMI, + [59513] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1297), 1, + ACTIONS(4845), 1, anon_sym_LPAREN, - [13350] = 2, + [59520] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1299), 1, - anon_sym_EQ, - [13357] = 2, + ACTIONS(4847), 1, + anon_sym_RBRACK, + [59527] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1301), 1, + ACTIONS(4849), 1, anon_sym_EQ, - [13364] = 2, + [59534] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1303), 1, - anon_sym_ap, - [13371] = 2, + ACTIONS(4851), 1, + sym_identifier, + [59541] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1121), 1, - anon_sym_LBRACE, - [13378] = 2, + ACTIONS(4363), 1, + anon_sym_SEMI, + [59548] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1305), 1, - anon_sym_RPAREN, - [13385] = 2, + ACTIONS(4407), 1, + anon_sym_SEMI, + [59555] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1307), 1, - anon_sym_EQ, - [13392] = 2, + ACTIONS(4853), 1, + sym_identifier, + [59562] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1100), 1, - anon_sym_LBRACE, - [13399] = 2, + ACTIONS(4855), 1, + sym_identifier, + [59569] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1309), 1, - anon_sym_LBRACE, - [13406] = 2, + ACTIONS(4857), 1, + sym_identifier, + [59576] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(810), 1, - anon_sym_SEMI, - [13413] = 2, + ACTIONS(4859), 1, + anon_sym_LBRACK, + [59583] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1311), 1, + ACTIONS(4861), 1, sym_identifier, - [13420] = 2, + [59590] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1313), 1, + ACTIONS(4863), 1, sym_identifier, - [13427] = 2, + [59597] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1315), 1, + ACTIONS(4865), 1, sym_identifier, - [13434] = 2, + [59604] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1317), 1, - anon_sym_SEMI, - [13441] = 2, + ACTIONS(4867), 1, + sym_identifier, + [59611] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1319), 1, - anon_sym_LPAREN, - [13448] = 2, + ACTIONS(4869), 1, + sym_identifier, + [59618] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1321), 1, + ACTIONS(4871), 1, sym_identifier, - [13455] = 2, + [59625] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1323), 1, - sym_identifier, - [13462] = 2, + ACTIONS(4873), 1, + anon_sym_LPAREN, + [59632] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(1325), 1, + ACTIONS(4875), 1, anon_sym_LPAREN, }; static const uint32_t ts_small_parse_table_map[] = { - [SMALL_STATE(59)] = 0, - [SMALL_STATE(60)] = 53, - [SMALL_STATE(61)] = 106, - [SMALL_STATE(62)] = 159, - [SMALL_STATE(63)] = 212, - [SMALL_STATE(64)] = 265, - [SMALL_STATE(65)] = 318, - [SMALL_STATE(66)] = 366, - [SMALL_STATE(67)] = 420, - [SMALL_STATE(68)] = 474, - [SMALL_STATE(69)] = 522, - [SMALL_STATE(70)] = 573, - [SMALL_STATE(71)] = 624, - [SMALL_STATE(72)] = 677, - [SMALL_STATE(73)] = 726, - [SMALL_STATE(74)] = 777, - [SMALL_STATE(75)] = 830, - [SMALL_STATE(76)] = 881, - [SMALL_STATE(77)] = 932, - [SMALL_STATE(78)] = 985, - [SMALL_STATE(79)] = 1038, - [SMALL_STATE(80)] = 1089, - [SMALL_STATE(81)] = 1142, - [SMALL_STATE(82)] = 1191, - [SMALL_STATE(83)] = 1242, - [SMALL_STATE(84)] = 1293, - [SMALL_STATE(85)] = 1346, - [SMALL_STATE(86)] = 1396, - [SMALL_STATE(87)] = 1442, - [SMALL_STATE(88)] = 1492, - [SMALL_STATE(89)] = 1538, - [SMALL_STATE(90)] = 1584, - [SMALL_STATE(91)] = 1632, - [SMALL_STATE(92)] = 1682, - [SMALL_STATE(93)] = 1730, - [SMALL_STATE(94)] = 1778, - [SMALL_STATE(95)] = 1828, - [SMALL_STATE(96)] = 1874, - [SMALL_STATE(97)] = 1922, - [SMALL_STATE(98)] = 1967, - [SMALL_STATE(99)] = 2012, - [SMALL_STATE(100)] = 2057, - [SMALL_STATE(101)] = 2102, - [SMALL_STATE(102)] = 2147, - [SMALL_STATE(103)] = 2192, - [SMALL_STATE(104)] = 2237, - [SMALL_STATE(105)] = 2282, - [SMALL_STATE(106)] = 2327, - [SMALL_STATE(107)] = 2372, - [SMALL_STATE(108)] = 2417, - [SMALL_STATE(109)] = 2462, - [SMALL_STATE(110)] = 2507, - [SMALL_STATE(111)] = 2552, - [SMALL_STATE(112)] = 2597, - [SMALL_STATE(113)] = 2642, - [SMALL_STATE(114)] = 2687, - [SMALL_STATE(115)] = 2732, - [SMALL_STATE(116)] = 2777, - [SMALL_STATE(117)] = 2822, - [SMALL_STATE(118)] = 2867, - [SMALL_STATE(119)] = 2912, - [SMALL_STATE(120)] = 2957, - [SMALL_STATE(121)] = 3002, - [SMALL_STATE(122)] = 3047, - [SMALL_STATE(123)] = 3092, - [SMALL_STATE(124)] = 3137, - [SMALL_STATE(125)] = 3182, - [SMALL_STATE(126)] = 3227, - [SMALL_STATE(127)] = 3272, - [SMALL_STATE(128)] = 3317, - [SMALL_STATE(129)] = 3362, - [SMALL_STATE(130)] = 3407, - [SMALL_STATE(131)] = 3452, - [SMALL_STATE(132)] = 3497, - [SMALL_STATE(133)] = 3542, - [SMALL_STATE(134)] = 3587, - [SMALL_STATE(135)] = 3632, - [SMALL_STATE(136)] = 3677, - [SMALL_STATE(137)] = 3722, - [SMALL_STATE(138)] = 3767, - [SMALL_STATE(139)] = 3812, - [SMALL_STATE(140)] = 3857, - [SMALL_STATE(141)] = 3902, - [SMALL_STATE(142)] = 3947, - [SMALL_STATE(143)] = 3992, - [SMALL_STATE(144)] = 4037, - [SMALL_STATE(145)] = 4082, - [SMALL_STATE(146)] = 4127, - [SMALL_STATE(147)] = 4172, - [SMALL_STATE(148)] = 4217, - [SMALL_STATE(149)] = 4262, - [SMALL_STATE(150)] = 4307, - [SMALL_STATE(151)] = 4352, - [SMALL_STATE(152)] = 4397, - [SMALL_STATE(153)] = 4442, - [SMALL_STATE(154)] = 4487, - [SMALL_STATE(155)] = 4532, - [SMALL_STATE(156)] = 4577, - [SMALL_STATE(157)] = 4622, - [SMALL_STATE(158)] = 4667, - [SMALL_STATE(159)] = 4712, - [SMALL_STATE(160)] = 4757, - [SMALL_STATE(161)] = 4802, - [SMALL_STATE(162)] = 4847, - [SMALL_STATE(163)] = 4892, - [SMALL_STATE(164)] = 4937, - [SMALL_STATE(165)] = 4982, - [SMALL_STATE(166)] = 5027, - [SMALL_STATE(167)] = 5072, - [SMALL_STATE(168)] = 5117, - [SMALL_STATE(169)] = 5162, - [SMALL_STATE(170)] = 5207, - [SMALL_STATE(171)] = 5252, - [SMALL_STATE(172)] = 5297, - [SMALL_STATE(173)] = 5342, - [SMALL_STATE(174)] = 5387, - [SMALL_STATE(175)] = 5432, - [SMALL_STATE(176)] = 5477, - [SMALL_STATE(177)] = 5522, - [SMALL_STATE(178)] = 5567, - [SMALL_STATE(179)] = 5612, - [SMALL_STATE(180)] = 5657, - [SMALL_STATE(181)] = 5702, - [SMALL_STATE(182)] = 5747, - [SMALL_STATE(183)] = 5792, - [SMALL_STATE(184)] = 5837, - [SMALL_STATE(185)] = 5882, - [SMALL_STATE(186)] = 5940, - [SMALL_STATE(187)] = 5996, - [SMALL_STATE(188)] = 6052, - [SMALL_STATE(189)] = 6105, - [SMALL_STATE(190)] = 6158, - [SMALL_STATE(191)] = 6213, - [SMALL_STATE(192)] = 6266, - [SMALL_STATE(193)] = 6321, - [SMALL_STATE(194)] = 6371, - [SMALL_STATE(195)] = 6421, - [SMALL_STATE(196)] = 6473, - [SMALL_STATE(197)] = 6523, - [SMALL_STATE(198)] = 6573, - [SMALL_STATE(199)] = 6623, - [SMALL_STATE(200)] = 6673, - [SMALL_STATE(201)] = 6723, - [SMALL_STATE(202)] = 6773, - [SMALL_STATE(203)] = 6823, - [SMALL_STATE(204)] = 6873, - [SMALL_STATE(205)] = 6923, - [SMALL_STATE(206)] = 6975, - [SMALL_STATE(207)] = 7025, - [SMALL_STATE(208)] = 7075, - [SMALL_STATE(209)] = 7125, - [SMALL_STATE(210)] = 7175, - [SMALL_STATE(211)] = 7225, - [SMALL_STATE(212)] = 7275, - [SMALL_STATE(213)] = 7325, - [SMALL_STATE(214)] = 7375, - [SMALL_STATE(215)] = 7425, - [SMALL_STATE(216)] = 7475, - [SMALL_STATE(217)] = 7525, - [SMALL_STATE(218)] = 7575, - [SMALL_STATE(219)] = 7625, - [SMALL_STATE(220)] = 7675, - [SMALL_STATE(221)] = 7725, - [SMALL_STATE(222)] = 7775, - [SMALL_STATE(223)] = 7825, - [SMALL_STATE(224)] = 7877, - [SMALL_STATE(225)] = 7927, - [SMALL_STATE(226)] = 7977, - [SMALL_STATE(227)] = 8027, - [SMALL_STATE(228)] = 8077, - [SMALL_STATE(229)] = 8127, - [SMALL_STATE(230)] = 8177, - [SMALL_STATE(231)] = 8227, - [SMALL_STATE(232)] = 8277, - [SMALL_STATE(233)] = 8327, - [SMALL_STATE(234)] = 8371, - [SMALL_STATE(235)] = 8411, - [SMALL_STATE(236)] = 8451, - [SMALL_STATE(237)] = 8493, - [SMALL_STATE(238)] = 8539, - [SMALL_STATE(239)] = 8587, - [SMALL_STATE(240)] = 8627, - [SMALL_STATE(241)] = 8654, - [SMALL_STATE(242)] = 8681, - [SMALL_STATE(243)] = 8708, - [SMALL_STATE(244)] = 8735, - [SMALL_STATE(245)] = 8762, - [SMALL_STATE(246)] = 8789, - [SMALL_STATE(247)] = 8816, - [SMALL_STATE(248)] = 8843, - [SMALL_STATE(249)] = 8870, - [SMALL_STATE(250)] = 8897, - [SMALL_STATE(251)] = 8924, - [SMALL_STATE(252)] = 8951, - [SMALL_STATE(253)] = 8978, - [SMALL_STATE(254)] = 9005, - [SMALL_STATE(255)] = 9032, - [SMALL_STATE(256)] = 9059, - [SMALL_STATE(257)] = 9106, - [SMALL_STATE(258)] = 9155, - [SMALL_STATE(259)] = 9199, - [SMALL_STATE(260)] = 9243, - [SMALL_STATE(261)] = 9287, - [SMALL_STATE(262)] = 9331, - [SMALL_STATE(263)] = 9361, - [SMALL_STATE(264)] = 9405, - [SMALL_STATE(265)] = 9451, - [SMALL_STATE(266)] = 9494, - [SMALL_STATE(267)] = 9537, - [SMALL_STATE(268)] = 9580, - [SMALL_STATE(269)] = 9623, - [SMALL_STATE(270)] = 9666, - [SMALL_STATE(271)] = 9707, - [SMALL_STATE(272)] = 9750, - [SMALL_STATE(273)] = 9793, - [SMALL_STATE(274)] = 9836, - [SMALL_STATE(275)] = 9879, - [SMALL_STATE(276)] = 9922, - [SMALL_STATE(277)] = 9965, - [SMALL_STATE(278)] = 10008, - [SMALL_STATE(279)] = 10049, - [SMALL_STATE(280)] = 10092, - [SMALL_STATE(281)] = 10135, - [SMALL_STATE(282)] = 10178, - [SMALL_STATE(283)] = 10203, - [SMALL_STATE(284)] = 10246, - [SMALL_STATE(285)] = 10289, - [SMALL_STATE(286)] = 10314, - [SMALL_STATE(287)] = 10339, - [SMALL_STATE(288)] = 10364, - [SMALL_STATE(289)] = 10407, - [SMALL_STATE(290)] = 10432, - [SMALL_STATE(291)] = 10457, - [SMALL_STATE(292)] = 10500, - [SMALL_STATE(293)] = 10542, - [SMALL_STATE(294)] = 10582, - [SMALL_STATE(295)] = 10624, - [SMALL_STATE(296)] = 10664, - [SMALL_STATE(297)] = 10706, - [SMALL_STATE(298)] = 10748, - [SMALL_STATE(299)] = 10788, - [SMALL_STATE(300)] = 10826, - [SMALL_STATE(301)] = 10855, - [SMALL_STATE(302)] = 10880, - [SMALL_STATE(303)] = 10909, - [SMALL_STATE(304)] = 10938, - [SMALL_STATE(305)] = 10967, - [SMALL_STATE(306)] = 10992, - [SMALL_STATE(307)] = 11011, - [SMALL_STATE(308)] = 11037, - [SMALL_STATE(309)] = 11063, - [SMALL_STATE(310)] = 11089, - [SMALL_STATE(311)] = 11105, - [SMALL_STATE(312)] = 11131, - [SMALL_STATE(313)] = 11147, - [SMALL_STATE(314)] = 11173, - [SMALL_STATE(315)] = 11189, - [SMALL_STATE(316)] = 11205, - [SMALL_STATE(317)] = 11231, - [SMALL_STATE(318)] = 11257, - [SMALL_STATE(319)] = 11283, - [SMALL_STATE(320)] = 11299, - [SMALL_STATE(321)] = 11315, - [SMALL_STATE(322)] = 11331, - [SMALL_STATE(323)] = 11357, - [SMALL_STATE(324)] = 11374, - [SMALL_STATE(325)] = 11391, - [SMALL_STATE(326)] = 11407, - [SMALL_STATE(327)] = 11421, - [SMALL_STATE(328)] = 11437, - [SMALL_STATE(329)] = 11453, - [SMALL_STATE(330)] = 11469, - [SMALL_STATE(331)] = 11483, - [SMALL_STATE(332)] = 11494, - [SMALL_STATE(333)] = 11511, - [SMALL_STATE(334)] = 11530, - [SMALL_STATE(335)] = 11549, - [SMALL_STATE(336)] = 11568, - [SMALL_STATE(337)] = 11585, - [SMALL_STATE(338)] = 11600, - [SMALL_STATE(339)] = 11619, - [SMALL_STATE(340)] = 11635, - [SMALL_STATE(341)] = 11651, - [SMALL_STATE(342)] = 11667, - [SMALL_STATE(343)] = 11683, - [SMALL_STATE(344)] = 11695, - [SMALL_STATE(345)] = 11711, - [SMALL_STATE(346)] = 11721, - [SMALL_STATE(347)] = 11737, - [SMALL_STATE(348)] = 11753, - [SMALL_STATE(349)] = 11769, - [SMALL_STATE(350)] = 11785, - [SMALL_STATE(351)] = 11801, - [SMALL_STATE(352)] = 11817, - [SMALL_STATE(353)] = 11833, - [SMALL_STATE(354)] = 11847, - [SMALL_STATE(355)] = 11863, - [SMALL_STATE(356)] = 11879, - [SMALL_STATE(357)] = 11895, - [SMALL_STATE(358)] = 11911, - [SMALL_STATE(359)] = 11927, - [SMALL_STATE(360)] = 11943, - [SMALL_STATE(361)] = 11959, - [SMALL_STATE(362)] = 11973, - [SMALL_STATE(363)] = 11989, - [SMALL_STATE(364)] = 12002, - [SMALL_STATE(365)] = 12015, - [SMALL_STATE(366)] = 12028, - [SMALL_STATE(367)] = 12041, - [SMALL_STATE(368)] = 12054, - [SMALL_STATE(369)] = 12067, - [SMALL_STATE(370)] = 12080, - [SMALL_STATE(371)] = 12093, - [SMALL_STATE(372)] = 12106, - [SMALL_STATE(373)] = 12117, - [SMALL_STATE(374)] = 12130, - [SMALL_STATE(375)] = 12143, - [SMALL_STATE(376)] = 12156, - [SMALL_STATE(377)] = 12169, - [SMALL_STATE(378)] = 12182, - [SMALL_STATE(379)] = 12195, - [SMALL_STATE(380)] = 12208, - [SMALL_STATE(381)] = 12221, - [SMALL_STATE(382)] = 12234, - [SMALL_STATE(383)] = 12247, - [SMALL_STATE(384)] = 12260, - [SMALL_STATE(385)] = 12273, - [SMALL_STATE(386)] = 12286, - [SMALL_STATE(387)] = 12299, - [SMALL_STATE(388)] = 12310, - [SMALL_STATE(389)] = 12323, - [SMALL_STATE(390)] = 12336, - [SMALL_STATE(391)] = 12349, - [SMALL_STATE(392)] = 12362, - [SMALL_STATE(393)] = 12375, - [SMALL_STATE(394)] = 12388, - [SMALL_STATE(395)] = 12401, - [SMALL_STATE(396)] = 12414, - [SMALL_STATE(397)] = 12427, - [SMALL_STATE(398)] = 12440, - [SMALL_STATE(399)] = 12453, - [SMALL_STATE(400)] = 12466, - [SMALL_STATE(401)] = 12477, - [SMALL_STATE(402)] = 12490, - [SMALL_STATE(403)] = 12499, - [SMALL_STATE(404)] = 12512, - [SMALL_STATE(405)] = 12525, - [SMALL_STATE(406)] = 12538, - [SMALL_STATE(407)] = 12551, - [SMALL_STATE(408)] = 12564, - [SMALL_STATE(409)] = 12577, - [SMALL_STATE(410)] = 12590, - [SMALL_STATE(411)] = 12603, - [SMALL_STATE(412)] = 12616, - [SMALL_STATE(413)] = 12629, - [SMALL_STATE(414)] = 12639, - [SMALL_STATE(415)] = 12649, - [SMALL_STATE(416)] = 12659, - [SMALL_STATE(417)] = 12669, - [SMALL_STATE(418)] = 12679, - [SMALL_STATE(419)] = 12689, - [SMALL_STATE(420)] = 12699, - [SMALL_STATE(421)] = 12709, - [SMALL_STATE(422)] = 12719, - [SMALL_STATE(423)] = 12729, - [SMALL_STATE(424)] = 12737, - [SMALL_STATE(425)] = 12747, - [SMALL_STATE(426)] = 12757, - [SMALL_STATE(427)] = 12767, - [SMALL_STATE(428)] = 12775, - [SMALL_STATE(429)] = 12783, - [SMALL_STATE(430)] = 12791, - [SMALL_STATE(431)] = 12799, - [SMALL_STATE(432)] = 12809, - [SMALL_STATE(433)] = 12819, - [SMALL_STATE(434)] = 12829, - [SMALL_STATE(435)] = 12837, - [SMALL_STATE(436)] = 12845, - [SMALL_STATE(437)] = 12855, - [SMALL_STATE(438)] = 12865, - [SMALL_STATE(439)] = 12875, - [SMALL_STATE(440)] = 12885, - [SMALL_STATE(441)] = 12893, - [SMALL_STATE(442)] = 12903, - [SMALL_STATE(443)] = 12913, - [SMALL_STATE(444)] = 12923, - [SMALL_STATE(445)] = 12930, - [SMALL_STATE(446)] = 12937, - [SMALL_STATE(447)] = 12944, - [SMALL_STATE(448)] = 12951, - [SMALL_STATE(449)] = 12958, - [SMALL_STATE(450)] = 12965, - [SMALL_STATE(451)] = 12972, - [SMALL_STATE(452)] = 12979, - [SMALL_STATE(453)] = 12986, - [SMALL_STATE(454)] = 12993, - [SMALL_STATE(455)] = 13000, - [SMALL_STATE(456)] = 13007, - [SMALL_STATE(457)] = 13014, - [SMALL_STATE(458)] = 13021, - [SMALL_STATE(459)] = 13028, - [SMALL_STATE(460)] = 13035, - [SMALL_STATE(461)] = 13042, - [SMALL_STATE(462)] = 13049, - [SMALL_STATE(463)] = 13056, - [SMALL_STATE(464)] = 13063, - [SMALL_STATE(465)] = 13070, - [SMALL_STATE(466)] = 13077, - [SMALL_STATE(467)] = 13084, - [SMALL_STATE(468)] = 13091, - [SMALL_STATE(469)] = 13098, - [SMALL_STATE(470)] = 13105, - [SMALL_STATE(471)] = 13112, - [SMALL_STATE(472)] = 13119, - [SMALL_STATE(473)] = 13126, - [SMALL_STATE(474)] = 13133, - [SMALL_STATE(475)] = 13140, - [SMALL_STATE(476)] = 13147, - [SMALL_STATE(477)] = 13154, - [SMALL_STATE(478)] = 13161, - [SMALL_STATE(479)] = 13168, - [SMALL_STATE(480)] = 13175, - [SMALL_STATE(481)] = 13182, - [SMALL_STATE(482)] = 13189, - [SMALL_STATE(483)] = 13196, - [SMALL_STATE(484)] = 13203, - [SMALL_STATE(485)] = 13210, - [SMALL_STATE(486)] = 13217, - [SMALL_STATE(487)] = 13224, - [SMALL_STATE(488)] = 13231, - [SMALL_STATE(489)] = 13238, - [SMALL_STATE(490)] = 13245, - [SMALL_STATE(491)] = 13252, - [SMALL_STATE(492)] = 13259, - [SMALL_STATE(493)] = 13266, - [SMALL_STATE(494)] = 13273, - [SMALL_STATE(495)] = 13280, - [SMALL_STATE(496)] = 13287, - [SMALL_STATE(497)] = 13294, - [SMALL_STATE(498)] = 13301, - [SMALL_STATE(499)] = 13308, - [SMALL_STATE(500)] = 13315, - [SMALL_STATE(501)] = 13322, - [SMALL_STATE(502)] = 13329, - [SMALL_STATE(503)] = 13336, - [SMALL_STATE(504)] = 13343, - [SMALL_STATE(505)] = 13350, - [SMALL_STATE(506)] = 13357, - [SMALL_STATE(507)] = 13364, - [SMALL_STATE(508)] = 13371, - [SMALL_STATE(509)] = 13378, - [SMALL_STATE(510)] = 13385, - [SMALL_STATE(511)] = 13392, - [SMALL_STATE(512)] = 13399, - [SMALL_STATE(513)] = 13406, - [SMALL_STATE(514)] = 13413, - [SMALL_STATE(515)] = 13420, - [SMALL_STATE(516)] = 13427, - [SMALL_STATE(517)] = 13434, - [SMALL_STATE(518)] = 13441, - [SMALL_STATE(519)] = 13448, - [SMALL_STATE(520)] = 13455, - [SMALL_STATE(521)] = 13462, + [SMALL_STATE(210)] = 0, + [SMALL_STATE(211)] = 125, + [SMALL_STATE(212)] = 250, + [SMALL_STATE(213)] = 375, + [SMALL_STATE(214)] = 500, + [SMALL_STATE(215)] = 575, + [SMALL_STATE(216)] = 700, + [SMALL_STATE(217)] = 825, + [SMALL_STATE(218)] = 950, + [SMALL_STATE(219)] = 1075, + [SMALL_STATE(220)] = 1197, + [SMALL_STATE(221)] = 1319, + [SMALL_STATE(222)] = 1441, + [SMALL_STATE(223)] = 1563, + [SMALL_STATE(224)] = 1685, + [SMALL_STATE(225)] = 1807, + [SMALL_STATE(226)] = 1929, + [SMALL_STATE(227)] = 2051, + [SMALL_STATE(228)] = 2173, + [SMALL_STATE(229)] = 2295, + [SMALL_STATE(230)] = 2417, + [SMALL_STATE(231)] = 2539, + [SMALL_STATE(232)] = 2661, + [SMALL_STATE(233)] = 2783, + [SMALL_STATE(234)] = 2905, + [SMALL_STATE(235)] = 3027, + [SMALL_STATE(236)] = 3149, + [SMALL_STATE(237)] = 3271, + [SMALL_STATE(238)] = 3393, + [SMALL_STATE(239)] = 3515, + [SMALL_STATE(240)] = 3637, + [SMALL_STATE(241)] = 3759, + [SMALL_STATE(242)] = 3881, + [SMALL_STATE(243)] = 4003, + [SMALL_STATE(244)] = 4125, + [SMALL_STATE(245)] = 4249, + [SMALL_STATE(246)] = 4371, + [SMALL_STATE(247)] = 4493, + [SMALL_STATE(248)] = 4615, + [SMALL_STATE(249)] = 4737, + [SMALL_STATE(250)] = 4859, + [SMALL_STATE(251)] = 4983, + [SMALL_STATE(252)] = 5105, + [SMALL_STATE(253)] = 5227, + [SMALL_STATE(254)] = 5349, + [SMALL_STATE(255)] = 5471, + [SMALL_STATE(256)] = 5593, + [SMALL_STATE(257)] = 5715, + [SMALL_STATE(258)] = 5837, + [SMALL_STATE(259)] = 5959, + [SMALL_STATE(260)] = 6081, + [SMALL_STATE(261)] = 6203, + [SMALL_STATE(262)] = 6325, + [SMALL_STATE(263)] = 6447, + [SMALL_STATE(264)] = 6569, + [SMALL_STATE(265)] = 6691, + [SMALL_STATE(266)] = 6813, + [SMALL_STATE(267)] = 6935, + [SMALL_STATE(268)] = 7057, + [SMALL_STATE(269)] = 7179, + [SMALL_STATE(270)] = 7301, + [SMALL_STATE(271)] = 7423, + [SMALL_STATE(272)] = 7547, + [SMALL_STATE(273)] = 7669, + [SMALL_STATE(274)] = 7791, + [SMALL_STATE(275)] = 7913, + [SMALL_STATE(276)] = 8035, + [SMALL_STATE(277)] = 8157, + [SMALL_STATE(278)] = 8279, + [SMALL_STATE(279)] = 8401, + [SMALL_STATE(280)] = 8523, + [SMALL_STATE(281)] = 8645, + [SMALL_STATE(282)] = 8767, + [SMALL_STATE(283)] = 8889, + [SMALL_STATE(284)] = 9011, + [SMALL_STATE(285)] = 9133, + [SMALL_STATE(286)] = 9255, + [SMALL_STATE(287)] = 9377, + [SMALL_STATE(288)] = 9499, + [SMALL_STATE(289)] = 9621, + [SMALL_STATE(290)] = 9743, + [SMALL_STATE(291)] = 9865, + [SMALL_STATE(292)] = 9935, + [SMALL_STATE(293)] = 10005, + [SMALL_STATE(294)] = 10127, + [SMALL_STATE(295)] = 10249, + [SMALL_STATE(296)] = 10371, + [SMALL_STATE(297)] = 10493, + [SMALL_STATE(298)] = 10615, + [SMALL_STATE(299)] = 10737, + [SMALL_STATE(300)] = 10859, + [SMALL_STATE(301)] = 10981, + [SMALL_STATE(302)] = 11105, + [SMALL_STATE(303)] = 11227, + [SMALL_STATE(304)] = 11296, + [SMALL_STATE(305)] = 11365, + [SMALL_STATE(306)] = 11438, + [SMALL_STATE(307)] = 11507, + [SMALL_STATE(308)] = 11576, + [SMALL_STATE(309)] = 11649, + [SMALL_STATE(310)] = 11722, + [SMALL_STATE(311)] = 11791, + [SMALL_STATE(312)] = 11860, + [SMALL_STATE(313)] = 11929, + [SMALL_STATE(314)] = 12002, + [SMALL_STATE(315)] = 12061, + [SMALL_STATE(316)] = 12120, + [SMALL_STATE(317)] = 12179, + [SMALL_STATE(318)] = 12238, + [SMALL_STATE(319)] = 12297, + [SMALL_STATE(320)] = 12356, + [SMALL_STATE(321)] = 12415, + [SMALL_STATE(322)] = 12474, + [SMALL_STATE(323)] = 12533, + [SMALL_STATE(324)] = 12592, + [SMALL_STATE(325)] = 12651, + [SMALL_STATE(326)] = 12710, + [SMALL_STATE(327)] = 12769, + [SMALL_STATE(328)] = 12828, + [SMALL_STATE(329)] = 12887, + [SMALL_STATE(330)] = 12946, + [SMALL_STATE(331)] = 13005, + [SMALL_STATE(332)] = 13064, + [SMALL_STATE(333)] = 13123, + [SMALL_STATE(334)] = 13182, + [SMALL_STATE(335)] = 13241, + [SMALL_STATE(336)] = 13300, + [SMALL_STATE(337)] = 13359, + [SMALL_STATE(338)] = 13418, + [SMALL_STATE(339)] = 13477, + [SMALL_STATE(340)] = 13536, + [SMALL_STATE(341)] = 13595, + [SMALL_STATE(342)] = 13654, + [SMALL_STATE(343)] = 13713, + [SMALL_STATE(344)] = 13772, + [SMALL_STATE(345)] = 13831, + [SMALL_STATE(346)] = 13890, + [SMALL_STATE(347)] = 13949, + [SMALL_STATE(348)] = 14008, + [SMALL_STATE(349)] = 14067, + [SMALL_STATE(350)] = 14126, + [SMALL_STATE(351)] = 14185, + [SMALL_STATE(352)] = 14244, + [SMALL_STATE(353)] = 14303, + [SMALL_STATE(354)] = 14362, + [SMALL_STATE(355)] = 14421, + [SMALL_STATE(356)] = 14480, + [SMALL_STATE(357)] = 14539, + [SMALL_STATE(358)] = 14598, + [SMALL_STATE(359)] = 14657, + [SMALL_STATE(360)] = 14716, + [SMALL_STATE(361)] = 14775, + [SMALL_STATE(362)] = 14834, + [SMALL_STATE(363)] = 14893, + [SMALL_STATE(364)] = 14952, + [SMALL_STATE(365)] = 15011, + [SMALL_STATE(366)] = 15070, + [SMALL_STATE(367)] = 15129, + [SMALL_STATE(368)] = 15188, + [SMALL_STATE(369)] = 15247, + [SMALL_STATE(370)] = 15306, + [SMALL_STATE(371)] = 15365, + [SMALL_STATE(372)] = 15424, + [SMALL_STATE(373)] = 15483, + [SMALL_STATE(374)] = 15542, + [SMALL_STATE(375)] = 15601, + [SMALL_STATE(376)] = 15660, + [SMALL_STATE(377)] = 15719, + [SMALL_STATE(378)] = 15778, + [SMALL_STATE(379)] = 15837, + [SMALL_STATE(380)] = 15896, + [SMALL_STATE(381)] = 15955, + [SMALL_STATE(382)] = 16014, + [SMALL_STATE(383)] = 16073, + [SMALL_STATE(384)] = 16132, + [SMALL_STATE(385)] = 16191, + [SMALL_STATE(386)] = 16250, + [SMALL_STATE(387)] = 16309, + [SMALL_STATE(388)] = 16368, + [SMALL_STATE(389)] = 16427, + [SMALL_STATE(390)] = 16513, + [SMALL_STATE(391)] = 16575, + [SMALL_STATE(392)] = 16658, + [SMALL_STATE(393)] = 16710, + [SMALL_STATE(394)] = 16795, + [SMALL_STATE(395)] = 16880, + [SMALL_STATE(396)] = 16965, + [SMALL_STATE(397)] = 17015, + [SMALL_STATE(398)] = 17069, + [SMALL_STATE(399)] = 17123, + [SMALL_STATE(400)] = 17173, + [SMALL_STATE(401)] = 17227, + [SMALL_STATE(402)] = 17309, + [SMALL_STATE(403)] = 17365, + [SMALL_STATE(404)] = 17447, + [SMALL_STATE(405)] = 17503, + [SMALL_STATE(406)] = 17557, + [SMALL_STATE(407)] = 17639, + [SMALL_STATE(408)] = 17693, + [SMALL_STATE(409)] = 17746, + [SMALL_STATE(410)] = 17795, + [SMALL_STATE(411)] = 17846, + [SMALL_STATE(412)] = 17895, + [SMALL_STATE(413)] = 17944, + [SMALL_STATE(414)] = 17993, + [SMALL_STATE(415)] = 18044, + [SMALL_STATE(416)] = 18095, + [SMALL_STATE(417)] = 18144, + [SMALL_STATE(418)] = 18193, + [SMALL_STATE(419)] = 18242, + [SMALL_STATE(420)] = 18295, + [SMALL_STATE(421)] = 18348, + [SMALL_STATE(422)] = 18403, + [SMALL_STATE(423)] = 18482, + [SMALL_STATE(424)] = 18533, + [SMALL_STATE(425)] = 18584, + [SMALL_STATE(426)] = 18632, + [SMALL_STATE(427)] = 18680, + [SMALL_STATE(428)] = 18754, + [SMALL_STATE(429)] = 18802, + [SMALL_STATE(430)] = 18850, + [SMALL_STATE(431)] = 18904, + [SMALL_STATE(432)] = 18952, + [SMALL_STATE(433)] = 19026, + [SMALL_STATE(434)] = 19074, + [SMALL_STATE(435)] = 19122, + [SMALL_STATE(436)] = 19170, + [SMALL_STATE(437)] = 19218, + [SMALL_STATE(438)] = 19266, + [SMALL_STATE(439)] = 19314, + [SMALL_STATE(440)] = 19362, + [SMALL_STATE(441)] = 19410, + [SMALL_STATE(442)] = 19458, + [SMALL_STATE(443)] = 19506, + [SMALL_STATE(444)] = 19554, + [SMALL_STATE(445)] = 19602, + [SMALL_STATE(446)] = 19650, + [SMALL_STATE(447)] = 19698, + [SMALL_STATE(448)] = 19746, + [SMALL_STATE(449)] = 19794, + [SMALL_STATE(450)] = 19842, + [SMALL_STATE(451)] = 19890, + [SMALL_STATE(452)] = 19938, + [SMALL_STATE(453)] = 19986, + [SMALL_STATE(454)] = 20060, + [SMALL_STATE(455)] = 20108, + [SMALL_STATE(456)] = 20156, + [SMALL_STATE(457)] = 20204, + [SMALL_STATE(458)] = 20252, + [SMALL_STATE(459)] = 20300, + [SMALL_STATE(460)] = 20348, + [SMALL_STATE(461)] = 20396, + [SMALL_STATE(462)] = 20444, + [SMALL_STATE(463)] = 20492, + [SMALL_STATE(464)] = 20540, + [SMALL_STATE(465)] = 20588, + [SMALL_STATE(466)] = 20636, + [SMALL_STATE(467)] = 20684, + [SMALL_STATE(468)] = 20738, + [SMALL_STATE(469)] = 20786, + [SMALL_STATE(470)] = 20834, + [SMALL_STATE(471)] = 20882, + [SMALL_STATE(472)] = 20930, + [SMALL_STATE(473)] = 20978, + [SMALL_STATE(474)] = 21032, + [SMALL_STATE(475)] = 21080, + [SMALL_STATE(476)] = 21134, + [SMALL_STATE(477)] = 21182, + [SMALL_STATE(478)] = 21234, + [SMALL_STATE(479)] = 21288, + [SMALL_STATE(480)] = 21338, + [SMALL_STATE(481)] = 21386, + [SMALL_STATE(482)] = 21434, + [SMALL_STATE(483)] = 21482, + [SMALL_STATE(484)] = 21556, + [SMALL_STATE(485)] = 21604, + [SMALL_STATE(486)] = 21678, + [SMALL_STATE(487)] = 21730, + [SMALL_STATE(488)] = 21778, + [SMALL_STATE(489)] = 21826, + [SMALL_STATE(490)] = 21874, + [SMALL_STATE(491)] = 21922, + [SMALL_STATE(492)] = 21970, + [SMALL_STATE(493)] = 22018, + [SMALL_STATE(494)] = 22066, + [SMALL_STATE(495)] = 22114, + [SMALL_STATE(496)] = 22188, + [SMALL_STATE(497)] = 22236, + [SMALL_STATE(498)] = 22288, + [SMALL_STATE(499)] = 22340, + [SMALL_STATE(500)] = 22394, + [SMALL_STATE(501)] = 22465, + [SMALL_STATE(502)] = 22520, + [SMALL_STATE(503)] = 22595, + [SMALL_STATE(504)] = 22666, + [SMALL_STATE(505)] = 22737, + [SMALL_STATE(506)] = 22786, + [SMALL_STATE(507)] = 22841, + [SMALL_STATE(508)] = 22888, + [SMALL_STATE(509)] = 22935, + [SMALL_STATE(510)] = 22986, + [SMALL_STATE(511)] = 23045, + [SMALL_STATE(512)] = 23100, + [SMALL_STATE(513)] = 23171, + [SMALL_STATE(514)] = 23218, + [SMALL_STATE(515)] = 23269, + [SMALL_STATE(516)] = 23338, + [SMALL_STATE(517)] = 23389, + [SMALL_STATE(518)] = 23442, + [SMALL_STATE(519)] = 23497, + [SMALL_STATE(520)] = 23560, + [SMALL_STATE(521)] = 23637, + [SMALL_STATE(522)] = 23694, + [SMALL_STATE(523)] = 23745, + [SMALL_STATE(524)] = 23806, + [SMALL_STATE(525)] = 23881, + [SMALL_STATE(526)] = 23954, + [SMALL_STATE(527)] = 24019, + [SMALL_STATE(528)] = 24074, + [SMALL_STATE(529)] = 24147, + [SMALL_STATE(530)] = 24202, + [SMALL_STATE(531)] = 24257, + [SMALL_STATE(532)] = 24306, + [SMALL_STATE(533)] = 24377, + [SMALL_STATE(534)] = 24430, + [SMALL_STATE(535)] = 24481, + [SMALL_STATE(536)] = 24556, + [SMALL_STATE(537)] = 24611, + [SMALL_STATE(538)] = 24666, + [SMALL_STATE(539)] = 24719, + [SMALL_STATE(540)] = 24770, + [SMALL_STATE(541)] = 24847, + [SMALL_STATE(542)] = 24922, + [SMALL_STATE(543)] = 24971, + [SMALL_STATE(544)] = 25017, + [SMALL_STATE(545)] = 25063, + [SMALL_STATE(546)] = 25109, + [SMALL_STATE(547)] = 25157, + [SMALL_STATE(548)] = 25203, + [SMALL_STATE(549)] = 25249, + [SMALL_STATE(550)] = 25295, + [SMALL_STATE(551)] = 25341, + [SMALL_STATE(552)] = 25387, + [SMALL_STATE(553)] = 25433, + [SMALL_STATE(554)] = 25479, + [SMALL_STATE(555)] = 25525, + [SMALL_STATE(556)] = 25571, + [SMALL_STATE(557)] = 25617, + [SMALL_STATE(558)] = 25663, + [SMALL_STATE(559)] = 25709, + [SMALL_STATE(560)] = 25755, + [SMALL_STATE(561)] = 25801, + [SMALL_STATE(562)] = 25847, + [SMALL_STATE(563)] = 25893, + [SMALL_STATE(564)] = 25939, + [SMALL_STATE(565)] = 25985, + [SMALL_STATE(566)] = 26031, + [SMALL_STATE(567)] = 26077, + [SMALL_STATE(568)] = 26123, + [SMALL_STATE(569)] = 26169, + [SMALL_STATE(570)] = 26215, + [SMALL_STATE(571)] = 26261, + [SMALL_STATE(572)] = 26307, + [SMALL_STATE(573)] = 26353, + [SMALL_STATE(574)] = 26399, + [SMALL_STATE(575)] = 26445, + [SMALL_STATE(576)] = 26491, + [SMALL_STATE(577)] = 26537, + [SMALL_STATE(578)] = 26583, + [SMALL_STATE(579)] = 26629, + [SMALL_STATE(580)] = 26675, + [SMALL_STATE(581)] = 26721, + [SMALL_STATE(582)] = 26767, + [SMALL_STATE(583)] = 26813, + [SMALL_STATE(584)] = 26859, + [SMALL_STATE(585)] = 26909, + [SMALL_STATE(586)] = 26955, + [SMALL_STATE(587)] = 27005, + [SMALL_STATE(588)] = 27053, + [SMALL_STATE(589)] = 27099, + [SMALL_STATE(590)] = 27145, + [SMALL_STATE(591)] = 27191, + [SMALL_STATE(592)] = 27237, + [SMALL_STATE(593)] = 27307, + [SMALL_STATE(594)] = 27353, + [SMALL_STATE(595)] = 27399, + [SMALL_STATE(596)] = 27445, + [SMALL_STATE(597)] = 27491, + [SMALL_STATE(598)] = 27537, + [SMALL_STATE(599)] = 27583, + [SMALL_STATE(600)] = 27628, + [SMALL_STATE(601)] = 27673, + [SMALL_STATE(602)] = 27718, + [SMALL_STATE(603)] = 27763, + [SMALL_STATE(604)] = 27808, + [SMALL_STATE(605)] = 27853, + [SMALL_STATE(606)] = 27924, + [SMALL_STATE(607)] = 27995, + [SMALL_STATE(608)] = 28066, + [SMALL_STATE(609)] = 28137, + [SMALL_STATE(610)] = 28182, + [SMALL_STATE(611)] = 28227, + [SMALL_STATE(612)] = 28272, + [SMALL_STATE(613)] = 28317, + [SMALL_STATE(614)] = 28362, + [SMALL_STATE(615)] = 28407, + [SMALL_STATE(616)] = 28452, + [SMALL_STATE(617)] = 28497, + [SMALL_STATE(618)] = 28542, + [SMALL_STATE(619)] = 28587, + [SMALL_STATE(620)] = 28632, + [SMALL_STATE(621)] = 28677, + [SMALL_STATE(622)] = 28722, + [SMALL_STATE(623)] = 28767, + [SMALL_STATE(624)] = 28812, + [SMALL_STATE(625)] = 28857, + [SMALL_STATE(626)] = 28902, + [SMALL_STATE(627)] = 28947, + [SMALL_STATE(628)] = 28992, + [SMALL_STATE(629)] = 29037, + [SMALL_STATE(630)] = 29108, + [SMALL_STATE(631)] = 29153, + [SMALL_STATE(632)] = 29224, + [SMALL_STATE(633)] = 29269, + [SMALL_STATE(634)] = 29314, + [SMALL_STATE(635)] = 29359, + [SMALL_STATE(636)] = 29404, + [SMALL_STATE(637)] = 29449, + [SMALL_STATE(638)] = 29494, + [SMALL_STATE(639)] = 29539, + [SMALL_STATE(640)] = 29584, + [SMALL_STATE(641)] = 29629, + [SMALL_STATE(642)] = 29674, + [SMALL_STATE(643)] = 29719, + [SMALL_STATE(644)] = 29764, + [SMALL_STATE(645)] = 29809, + [SMALL_STATE(646)] = 29854, + [SMALL_STATE(647)] = 29899, + [SMALL_STATE(648)] = 29944, + [SMALL_STATE(649)] = 29989, + [SMALL_STATE(650)] = 30034, + [SMALL_STATE(651)] = 30079, + [SMALL_STATE(652)] = 30124, + [SMALL_STATE(653)] = 30169, + [SMALL_STATE(654)] = 30214, + [SMALL_STATE(655)] = 30282, + [SMALL_STATE(656)] = 30348, + [SMALL_STATE(657)] = 30398, + [SMALL_STATE(658)] = 30448, + [SMALL_STATE(659)] = 30526, + [SMALL_STATE(660)] = 30594, + [SMALL_STATE(661)] = 30660, + [SMALL_STATE(662)] = 30738, + [SMALL_STATE(663)] = 30816, + [SMALL_STATE(664)] = 30894, + [SMALL_STATE(665)] = 30972, + [SMALL_STATE(666)] = 31050, + [SMALL_STATE(667)] = 31128, + [SMALL_STATE(668)] = 31206, + [SMALL_STATE(669)] = 31284, + [SMALL_STATE(670)] = 31362, + [SMALL_STATE(671)] = 31428, + [SMALL_STATE(672)] = 31506, + [SMALL_STATE(673)] = 31584, + [SMALL_STATE(674)] = 31659, + [SMALL_STATE(675)] = 31722, + [SMALL_STATE(676)] = 31795, + [SMALL_STATE(677)] = 31870, + [SMALL_STATE(678)] = 31933, + [SMALL_STATE(679)] = 31996, + [SMALL_STATE(680)] = 32059, + [SMALL_STATE(681)] = 32122, + [SMALL_STATE(682)] = 32197, + [SMALL_STATE(683)] = 32272, + [SMALL_STATE(684)] = 32335, + [SMALL_STATE(685)] = 32410, + [SMALL_STATE(686)] = 32475, + [SMALL_STATE(687)] = 32538, + [SMALL_STATE(688)] = 32613, + [SMALL_STATE(689)] = 32676, + [SMALL_STATE(690)] = 32741, + [SMALL_STATE(691)] = 32804, + [SMALL_STATE(692)] = 32877, + [SMALL_STATE(693)] = 32950, + [SMALL_STATE(694)] = 33023, + [SMALL_STATE(695)] = 33086, + [SMALL_STATE(696)] = 33149, + [SMALL_STATE(697)] = 33212, + [SMALL_STATE(698)] = 33275, + [SMALL_STATE(699)] = 33348, + [SMALL_STATE(700)] = 33421, + [SMALL_STATE(701)] = 33484, + [SMALL_STATE(702)] = 33547, + [SMALL_STATE(703)] = 33610, + [SMALL_STATE(704)] = 33673, + [SMALL_STATE(705)] = 33746, + [SMALL_STATE(706)] = 33819, + [SMALL_STATE(707)] = 33894, + [SMALL_STATE(708)] = 33957, + [SMALL_STATE(709)] = 34020, + [SMALL_STATE(710)] = 34083, + [SMALL_STATE(711)] = 34148, + [SMALL_STATE(712)] = 34223, + [SMALL_STATE(713)] = 34286, + [SMALL_STATE(714)] = 34349, + [SMALL_STATE(715)] = 34412, + [SMALL_STATE(716)] = 34475, + [SMALL_STATE(717)] = 34538, + [SMALL_STATE(718)] = 34603, + [SMALL_STATE(719)] = 34666, + [SMALL_STATE(720)] = 34731, + [SMALL_STATE(721)] = 34794, + [SMALL_STATE(722)] = 34857, + [SMALL_STATE(723)] = 34920, + [SMALL_STATE(724)] = 34995, + [SMALL_STATE(725)] = 35058, + [SMALL_STATE(726)] = 35121, + [SMALL_STATE(727)] = 35184, + [SMALL_STATE(728)] = 35247, + [SMALL_STATE(729)] = 35320, + [SMALL_STATE(730)] = 35385, + [SMALL_STATE(731)] = 35460, + [SMALL_STATE(732)] = 35533, + [SMALL_STATE(733)] = 35608, + [SMALL_STATE(734)] = 35683, + [SMALL_STATE(735)] = 35746, + [SMALL_STATE(736)] = 35809, + [SMALL_STATE(737)] = 35872, + [SMALL_STATE(738)] = 35935, + [SMALL_STATE(739)] = 35998, + [SMALL_STATE(740)] = 36061, + [SMALL_STATE(741)] = 36134, + [SMALL_STATE(742)] = 36209, + [SMALL_STATE(743)] = 36284, + [SMALL_STATE(744)] = 36347, + [SMALL_STATE(745)] = 36420, + [SMALL_STATE(746)] = 36495, + [SMALL_STATE(747)] = 36570, + [SMALL_STATE(748)] = 36633, + [SMALL_STATE(749)] = 36696, + [SMALL_STATE(750)] = 36764, + [SMALL_STATE(751)] = 36830, + [SMALL_STATE(752)] = 36902, + [SMALL_STATE(753)] = 36974, + [SMALL_STATE(754)] = 37046, + [SMALL_STATE(755)] = 37118, + [SMALL_STATE(756)] = 37190, + [SMALL_STATE(757)] = 37262, + [SMALL_STATE(758)] = 37334, + [SMALL_STATE(759)] = 37406, + [SMALL_STATE(760)] = 37478, + [SMALL_STATE(761)] = 37550, + [SMALL_STATE(762)] = 37622, + [SMALL_STATE(763)] = 37692, + [SMALL_STATE(764)] = 37752, + [SMALL_STATE(765)] = 37806, + [SMALL_STATE(766)] = 37878, + [SMALL_STATE(767)] = 37950, + [SMALL_STATE(768)] = 38000, + [SMALL_STATE(769)] = 38072, + [SMALL_STATE(770)] = 38140, + [SMALL_STATE(771)] = 38204, + [SMALL_STATE(772)] = 38276, + [SMALL_STATE(773)] = 38334, + [SMALL_STATE(774)] = 38406, + [SMALL_STATE(775)] = 38458, + [SMALL_STATE(776)] = 38530, + [SMALL_STATE(777)] = 38602, + [SMALL_STATE(778)] = 38658, + [SMALL_STATE(779)] = 38730, + [SMALL_STATE(780)] = 38783, + [SMALL_STATE(781)] = 38836, + [SMALL_STATE(782)] = 38886, + [SMALL_STATE(783)] = 38936, + [SMALL_STATE(784)] = 39002, + [SMALL_STATE(785)] = 39052, + [SMALL_STATE(786)] = 39102, + [SMALL_STATE(787)] = 39167, + [SMALL_STATE(788)] = 39232, + [SMALL_STATE(789)] = 39297, + [SMALL_STATE(790)] = 39362, + [SMALL_STATE(791)] = 39427, + [SMALL_STATE(792)] = 39465, + [SMALL_STATE(793)] = 39503, + [SMALL_STATE(794)] = 39538, + [SMALL_STATE(795)] = 39585, + [SMALL_STATE(796)] = 39620, + [SMALL_STATE(797)] = 39667, + [SMALL_STATE(798)] = 39723, + [SMALL_STATE(799)] = 39781, + [SMALL_STATE(800)] = 39839, + [SMALL_STATE(801)] = 39897, + [SMALL_STATE(802)] = 39955, + [SMALL_STATE(803)] = 40013, + [SMALL_STATE(804)] = 40071, + [SMALL_STATE(805)] = 40127, + [SMALL_STATE(806)] = 40180, + [SMALL_STATE(807)] = 40221, + [SMALL_STATE(808)] = 40274, + [SMALL_STATE(809)] = 40327, + [SMALL_STATE(810)] = 40380, + [SMALL_STATE(811)] = 40421, + [SMALL_STATE(812)] = 40462, + [SMALL_STATE(813)] = 40515, + [SMALL_STATE(814)] = 40568, + [SMALL_STATE(815)] = 40618, + [SMALL_STATE(816)] = 40668, + [SMALL_STATE(817)] = 40720, + [SMALL_STATE(818)] = 40770, + [SMALL_STATE(819)] = 40820, + [SMALL_STATE(820)] = 40870, + [SMALL_STATE(821)] = 40920, + [SMALL_STATE(822)] = 40970, + [SMALL_STATE(823)] = 41020, + [SMALL_STATE(824)] = 41070, + [SMALL_STATE(825)] = 41120, + [SMALL_STATE(826)] = 41170, + [SMALL_STATE(827)] = 41220, + [SMALL_STATE(828)] = 41270, + [SMALL_STATE(829)] = 41320, + [SMALL_STATE(830)] = 41370, + [SMALL_STATE(831)] = 41420, + [SMALL_STATE(832)] = 41470, + [SMALL_STATE(833)] = 41520, + [SMALL_STATE(834)] = 41570, + [SMALL_STATE(835)] = 41620, + [SMALL_STATE(836)] = 41670, + [SMALL_STATE(837)] = 41720, + [SMALL_STATE(838)] = 41770, + [SMALL_STATE(839)] = 41822, + [SMALL_STATE(840)] = 41872, + [SMALL_STATE(841)] = 41922, + [SMALL_STATE(842)] = 41972, + [SMALL_STATE(843)] = 42022, + [SMALL_STATE(844)] = 42072, + [SMALL_STATE(845)] = 42122, + [SMALL_STATE(846)] = 42172, + [SMALL_STATE(847)] = 42222, + [SMALL_STATE(848)] = 42272, + [SMALL_STATE(849)] = 42322, + [SMALL_STATE(850)] = 42372, + [SMALL_STATE(851)] = 42422, + [SMALL_STATE(852)] = 42474, + [SMALL_STATE(853)] = 42524, + [SMALL_STATE(854)] = 42574, + [SMALL_STATE(855)] = 42624, + [SMALL_STATE(856)] = 42674, + [SMALL_STATE(857)] = 42724, + [SMALL_STATE(858)] = 42774, + [SMALL_STATE(859)] = 42824, + [SMALL_STATE(860)] = 42874, + [SMALL_STATE(861)] = 42924, + [SMALL_STATE(862)] = 42974, + [SMALL_STATE(863)] = 43024, + [SMALL_STATE(864)] = 43074, + [SMALL_STATE(865)] = 43118, + [SMALL_STATE(866)] = 43156, + [SMALL_STATE(867)] = 43194, + [SMALL_STATE(868)] = 43232, + [SMALL_STATE(869)] = 43274, + [SMALL_STATE(870)] = 43312, + [SMALL_STATE(871)] = 43350, + [SMALL_STATE(872)] = 43390, + [SMALL_STATE(873)] = 43434, + [SMALL_STATE(874)] = 43472, + [SMALL_STATE(875)] = 43514, + [SMALL_STATE(876)] = 43540, + [SMALL_STATE(877)] = 43566, + [SMALL_STATE(878)] = 43616, + [SMALL_STATE(879)] = 43662, + [SMALL_STATE(880)] = 43702, + [SMALL_STATE(881)] = 43750, + [SMALL_STATE(882)] = 43799, + [SMALL_STATE(883)] = 43824, + [SMALL_STATE(884)] = 43871, + [SMALL_STATE(885)] = 43896, + [SMALL_STATE(886)] = 43943, + [SMALL_STATE(887)] = 43990, + [SMALL_STATE(888)] = 44015, + [SMALL_STATE(889)] = 44040, + [SMALL_STATE(890)] = 44065, + [SMALL_STATE(891)] = 44090, + [SMALL_STATE(892)] = 44137, + [SMALL_STATE(893)] = 44162, + [SMALL_STATE(894)] = 44187, + [SMALL_STATE(895)] = 44212, + [SMALL_STATE(896)] = 44237, + [SMALL_STATE(897)] = 44262, + [SMALL_STATE(898)] = 44287, + [SMALL_STATE(899)] = 44336, + [SMALL_STATE(900)] = 44385, + [SMALL_STATE(901)] = 44410, + [SMALL_STATE(902)] = 44459, + [SMALL_STATE(903)] = 44508, + [SMALL_STATE(904)] = 44533, + [SMALL_STATE(905)] = 44582, + [SMALL_STATE(906)] = 44631, + [SMALL_STATE(907)] = 44656, + [SMALL_STATE(908)] = 44681, + [SMALL_STATE(909)] = 44706, + [SMALL_STATE(910)] = 44731, + [SMALL_STATE(911)] = 44756, + [SMALL_STATE(912)] = 44805, + [SMALL_STATE(913)] = 44830, + [SMALL_STATE(914)] = 44855, + [SMALL_STATE(915)] = 44904, + [SMALL_STATE(916)] = 44953, + [SMALL_STATE(917)] = 44978, + [SMALL_STATE(918)] = 45003, + [SMALL_STATE(919)] = 45028, + [SMALL_STATE(920)] = 45053, + [SMALL_STATE(921)] = 45102, + [SMALL_STATE(922)] = 45127, + [SMALL_STATE(923)] = 45152, + [SMALL_STATE(924)] = 45177, + [SMALL_STATE(925)] = 45202, + [SMALL_STATE(926)] = 45251, + [SMALL_STATE(927)] = 45276, + [SMALL_STATE(928)] = 45325, + [SMALL_STATE(929)] = 45374, + [SMALL_STATE(930)] = 45419, + [SMALL_STATE(931)] = 45444, + [SMALL_STATE(932)] = 45469, + [SMALL_STATE(933)] = 45518, + [SMALL_STATE(934)] = 45543, + [SMALL_STATE(935)] = 45588, + [SMALL_STATE(936)] = 45613, + [SMALL_STATE(937)] = 45638, + [SMALL_STATE(938)] = 45687, + [SMALL_STATE(939)] = 45736, + [SMALL_STATE(940)] = 45761, + [SMALL_STATE(941)] = 45787, + [SMALL_STATE(942)] = 45809, + [SMALL_STATE(943)] = 45853, + [SMALL_STATE(944)] = 45879, + [SMALL_STATE(945)] = 45905, + [SMALL_STATE(946)] = 45935, + [SMALL_STATE(947)] = 45961, + [SMALL_STATE(948)] = 45987, + [SMALL_STATE(949)] = 46009, + [SMALL_STATE(950)] = 46039, + [SMALL_STATE(951)] = 46082, + [SMALL_STATE(952)] = 46125, + [SMALL_STATE(953)] = 46168, + [SMALL_STATE(954)] = 46211, + [SMALL_STATE(955)] = 46254, + [SMALL_STATE(956)] = 46279, + [SMALL_STATE(957)] = 46322, + [SMALL_STATE(958)] = 46365, + [SMALL_STATE(959)] = 46408, + [SMALL_STATE(960)] = 46428, + [SMALL_STATE(961)] = 46448, + [SMALL_STATE(962)] = 46468, + [SMALL_STATE(963)] = 46488, + [SMALL_STATE(964)] = 46508, + [SMALL_STATE(965)] = 46528, + [SMALL_STATE(966)] = 46548, + [SMALL_STATE(967)] = 46590, + [SMALL_STATE(968)] = 46610, + [SMALL_STATE(969)] = 46630, + [SMALL_STATE(970)] = 46650, + [SMALL_STATE(971)] = 46670, + [SMALL_STATE(972)] = 46690, + [SMALL_STATE(973)] = 46710, + [SMALL_STATE(974)] = 46730, + [SMALL_STATE(975)] = 46750, + [SMALL_STATE(976)] = 46770, + [SMALL_STATE(977)] = 46790, + [SMALL_STATE(978)] = 46810, + [SMALL_STATE(979)] = 46830, + [SMALL_STATE(980)] = 46850, + [SMALL_STATE(981)] = 46870, + [SMALL_STATE(982)] = 46890, + [SMALL_STATE(983)] = 46910, + [SMALL_STATE(984)] = 46952, + [SMALL_STATE(985)] = 46972, + [SMALL_STATE(986)] = 46992, + [SMALL_STATE(987)] = 47032, + [SMALL_STATE(988)] = 47052, + [SMALL_STATE(989)] = 47072, + [SMALL_STATE(990)] = 47092, + [SMALL_STATE(991)] = 47112, + [SMALL_STATE(992)] = 47132, + [SMALL_STATE(993)] = 47152, + [SMALL_STATE(994)] = 47172, + [SMALL_STATE(995)] = 47192, + [SMALL_STATE(996)] = 47212, + [SMALL_STATE(997)] = 47232, + [SMALL_STATE(998)] = 47252, + [SMALL_STATE(999)] = 47272, + [SMALL_STATE(1000)] = 47292, + [SMALL_STATE(1001)] = 47312, + [SMALL_STATE(1002)] = 47332, + [SMALL_STATE(1003)] = 47352, + [SMALL_STATE(1004)] = 47372, + [SMALL_STATE(1005)] = 47392, + [SMALL_STATE(1006)] = 47412, + [SMALL_STATE(1007)] = 47432, + [SMALL_STATE(1008)] = 47452, + [SMALL_STATE(1009)] = 47492, + [SMALL_STATE(1010)] = 47512, + [SMALL_STATE(1011)] = 47532, + [SMALL_STATE(1012)] = 47552, + [SMALL_STATE(1013)] = 47572, + [SMALL_STATE(1014)] = 47614, + [SMALL_STATE(1015)] = 47634, + [SMALL_STATE(1016)] = 47654, + [SMALL_STATE(1017)] = 47674, + [SMALL_STATE(1018)] = 47694, + [SMALL_STATE(1019)] = 47714, + [SMALL_STATE(1020)] = 47734, + [SMALL_STATE(1021)] = 47754, + [SMALL_STATE(1022)] = 47796, + [SMALL_STATE(1023)] = 47836, + [SMALL_STATE(1024)] = 47856, + [SMALL_STATE(1025)] = 47876, + [SMALL_STATE(1026)] = 47896, + [SMALL_STATE(1027)] = 47916, + [SMALL_STATE(1028)] = 47936, + [SMALL_STATE(1029)] = 47956, + [SMALL_STATE(1030)] = 47976, + [SMALL_STATE(1031)] = 47996, + [SMALL_STATE(1032)] = 48016, + [SMALL_STATE(1033)] = 48036, + [SMALL_STATE(1034)] = 48056, + [SMALL_STATE(1035)] = 48076, + [SMALL_STATE(1036)] = 48096, + [SMALL_STATE(1037)] = 48116, + [SMALL_STATE(1038)] = 48136, + [SMALL_STATE(1039)] = 48161, + [SMALL_STATE(1040)] = 48194, + [SMALL_STATE(1041)] = 48227, + [SMALL_STATE(1042)] = 48260, + [SMALL_STATE(1043)] = 48293, + [SMALL_STATE(1044)] = 48326, + [SMALL_STATE(1045)] = 48359, + [SMALL_STATE(1046)] = 48382, + [SMALL_STATE(1047)] = 48403, + [SMALL_STATE(1048)] = 48426, + [SMALL_STATE(1049)] = 48449, + [SMALL_STATE(1050)] = 48480, + [SMALL_STATE(1051)] = 48510, + [SMALL_STATE(1052)] = 48540, + [SMALL_STATE(1053)] = 48570, + [SMALL_STATE(1054)] = 48600, + [SMALL_STATE(1055)] = 48624, + [SMALL_STATE(1056)] = 48644, + [SMALL_STATE(1057)] = 48674, + [SMALL_STATE(1058)] = 48704, + [SMALL_STATE(1059)] = 48724, + [SMALL_STATE(1060)] = 48746, + [SMALL_STATE(1061)] = 48776, + [SMALL_STATE(1062)] = 48806, + [SMALL_STATE(1063)] = 48836, + [SMALL_STATE(1064)] = 48866, + [SMALL_STATE(1065)] = 48888, + [SMALL_STATE(1066)] = 48918, + [SMALL_STATE(1067)] = 48948, + [SMALL_STATE(1068)] = 48968, + [SMALL_STATE(1069)] = 48990, + [SMALL_STATE(1070)] = 49010, + [SMALL_STATE(1071)] = 49040, + [SMALL_STATE(1072)] = 49060, + [SMALL_STATE(1073)] = 49080, + [SMALL_STATE(1074)] = 49100, + [SMALL_STATE(1075)] = 49130, + [SMALL_STATE(1076)] = 49160, + [SMALL_STATE(1077)] = 49179, + [SMALL_STATE(1078)] = 49195, + [SMALL_STATE(1079)] = 49211, + [SMALL_STATE(1080)] = 49239, + [SMALL_STATE(1081)] = 49261, + [SMALL_STATE(1082)] = 49283, + [SMALL_STATE(1083)] = 49311, + [SMALL_STATE(1084)] = 49339, + [SMALL_STATE(1085)] = 49367, + [SMALL_STATE(1086)] = 49395, + [SMALL_STATE(1087)] = 49411, + [SMALL_STATE(1088)] = 49429, + [SMALL_STATE(1089)] = 49445, + [SMALL_STATE(1090)] = 49461, + [SMALL_STATE(1091)] = 49489, + [SMALL_STATE(1092)] = 49505, + [SMALL_STATE(1093)] = 49521, + [SMALL_STATE(1094)] = 49537, + [SMALL_STATE(1095)] = 49564, + [SMALL_STATE(1096)] = 49593, + [SMALL_STATE(1097)] = 49618, + [SMALL_STATE(1098)] = 49643, + [SMALL_STATE(1099)] = 49659, + [SMALL_STATE(1100)] = 49675, + [SMALL_STATE(1101)] = 49703, + [SMALL_STATE(1102)] = 49719, + [SMALL_STATE(1103)] = 49735, + [SMALL_STATE(1104)] = 49751, + [SMALL_STATE(1105)] = 49767, + [SMALL_STATE(1106)] = 49783, + [SMALL_STATE(1107)] = 49799, + [SMALL_STATE(1108)] = 49815, + [SMALL_STATE(1109)] = 49831, + [SMALL_STATE(1110)] = 49847, + [SMALL_STATE(1111)] = 49863, + [SMALL_STATE(1112)] = 49879, + [SMALL_STATE(1113)] = 49895, + [SMALL_STATE(1114)] = 49911, + [SMALL_STATE(1115)] = 49927, + [SMALL_STATE(1116)] = 49943, + [SMALL_STATE(1117)] = 49969, + [SMALL_STATE(1118)] = 49985, + [SMALL_STATE(1119)] = 50001, + [SMALL_STATE(1120)] = 50017, + [SMALL_STATE(1121)] = 50039, + [SMALL_STATE(1122)] = 50055, + [SMALL_STATE(1123)] = 50071, + [SMALL_STATE(1124)] = 50087, + [SMALL_STATE(1125)] = 50107, + [SMALL_STATE(1126)] = 50123, + [SMALL_STATE(1127)] = 50139, + [SMALL_STATE(1128)] = 50155, + [SMALL_STATE(1129)] = 50171, + [SMALL_STATE(1130)] = 50189, + [SMALL_STATE(1131)] = 50212, + [SMALL_STATE(1132)] = 50235, + [SMALL_STATE(1133)] = 50258, + [SMALL_STATE(1134)] = 50281, + [SMALL_STATE(1135)] = 50306, + [SMALL_STATE(1136)] = 50329, + [SMALL_STATE(1137)] = 50352, + [SMALL_STATE(1138)] = 50375, + [SMALL_STATE(1139)] = 50400, + [SMALL_STATE(1140)] = 50423, + [SMALL_STATE(1141)] = 50446, + [SMALL_STATE(1142)] = 50469, + [SMALL_STATE(1143)] = 50492, + [SMALL_STATE(1144)] = 50515, + [SMALL_STATE(1145)] = 50538, + [SMALL_STATE(1146)] = 50561, + [SMALL_STATE(1147)] = 50584, + [SMALL_STATE(1148)] = 50607, + [SMALL_STATE(1149)] = 50625, + [SMALL_STATE(1150)] = 50647, + [SMALL_STATE(1151)] = 50665, + [SMALL_STATE(1152)] = 50683, + [SMALL_STATE(1153)] = 50695, + [SMALL_STATE(1154)] = 50717, + [SMALL_STATE(1155)] = 50733, + [SMALL_STATE(1156)] = 50755, + [SMALL_STATE(1157)] = 50773, + [SMALL_STATE(1158)] = 50795, + [SMALL_STATE(1159)] = 50813, + [SMALL_STATE(1160)] = 50833, + [SMALL_STATE(1161)] = 50851, + [SMALL_STATE(1162)] = 50869, + [SMALL_STATE(1163)] = 50887, + [SMALL_STATE(1164)] = 50905, + [SMALL_STATE(1165)] = 50923, + [SMALL_STATE(1166)] = 50945, + [SMALL_STATE(1167)] = 50957, + [SMALL_STATE(1168)] = 50977, + [SMALL_STATE(1169)] = 50995, + [SMALL_STATE(1170)] = 51015, + [SMALL_STATE(1171)] = 51033, + [SMALL_STATE(1172)] = 51055, + [SMALL_STATE(1173)] = 51075, + [SMALL_STATE(1174)] = 51091, + [SMALL_STATE(1175)] = 51109, + [SMALL_STATE(1176)] = 51127, + [SMALL_STATE(1177)] = 51143, + [SMALL_STATE(1178)] = 51161, + [SMALL_STATE(1179)] = 51177, + [SMALL_STATE(1180)] = 51195, + [SMALL_STATE(1181)] = 51206, + [SMALL_STATE(1182)] = 51225, + [SMALL_STATE(1183)] = 51244, + [SMALL_STATE(1184)] = 51263, + [SMALL_STATE(1185)] = 51276, + [SMALL_STATE(1186)] = 51295, + [SMALL_STATE(1187)] = 51312, + [SMALL_STATE(1188)] = 51331, + [SMALL_STATE(1189)] = 51350, + [SMALL_STATE(1190)] = 51363, + [SMALL_STATE(1191)] = 51376, + [SMALL_STATE(1192)] = 51393, + [SMALL_STATE(1193)] = 51408, + [SMALL_STATE(1194)] = 51427, + [SMALL_STATE(1195)] = 51446, + [SMALL_STATE(1196)] = 51461, + [SMALL_STATE(1197)] = 51480, + [SMALL_STATE(1198)] = 51499, + [SMALL_STATE(1199)] = 51510, + [SMALL_STATE(1200)] = 51521, + [SMALL_STATE(1201)] = 51540, + [SMALL_STATE(1202)] = 51557, + [SMALL_STATE(1203)] = 51572, + [SMALL_STATE(1204)] = 51587, + [SMALL_STATE(1205)] = 51602, + [SMALL_STATE(1206)] = 51619, + [SMALL_STATE(1207)] = 51638, + [SMALL_STATE(1208)] = 51649, + [SMALL_STATE(1209)] = 51666, + [SMALL_STATE(1210)] = 51685, + [SMALL_STATE(1211)] = 51702, + [SMALL_STATE(1212)] = 51713, + [SMALL_STATE(1213)] = 51730, + [SMALL_STATE(1214)] = 51749, + [SMALL_STATE(1215)] = 51768, + [SMALL_STATE(1216)] = 51787, + [SMALL_STATE(1217)] = 51804, + [SMALL_STATE(1218)] = 51819, + [SMALL_STATE(1219)] = 51832, + [SMALL_STATE(1220)] = 51845, + [SMALL_STATE(1221)] = 51864, + [SMALL_STATE(1222)] = 51883, + [SMALL_STATE(1223)] = 51900, + [SMALL_STATE(1224)] = 51919, + [SMALL_STATE(1225)] = 51938, + [SMALL_STATE(1226)] = 51957, + [SMALL_STATE(1227)] = 51976, + [SMALL_STATE(1228)] = 51995, + [SMALL_STATE(1229)] = 52012, + [SMALL_STATE(1230)] = 52029, + [SMALL_STATE(1231)] = 52042, + [SMALL_STATE(1232)] = 52057, + [SMALL_STATE(1233)] = 52076, + [SMALL_STATE(1234)] = 52095, + [SMALL_STATE(1235)] = 52108, + [SMALL_STATE(1236)] = 52127, + [SMALL_STATE(1237)] = 52146, + [SMALL_STATE(1238)] = 52165, + [SMALL_STATE(1239)] = 52184, + [SMALL_STATE(1240)] = 52197, + [SMALL_STATE(1241)] = 52216, + [SMALL_STATE(1242)] = 52227, + [SMALL_STATE(1243)] = 52246, + [SMALL_STATE(1244)] = 52257, + [SMALL_STATE(1245)] = 52276, + [SMALL_STATE(1246)] = 52293, + [SMALL_STATE(1247)] = 52312, + [SMALL_STATE(1248)] = 52328, + [SMALL_STATE(1249)] = 52344, + [SMALL_STATE(1250)] = 52360, + [SMALL_STATE(1251)] = 52374, + [SMALL_STATE(1252)] = 52390, + [SMALL_STATE(1253)] = 52406, + [SMALL_STATE(1254)] = 52422, + [SMALL_STATE(1255)] = 52438, + [SMALL_STATE(1256)] = 52454, + [SMALL_STATE(1257)] = 52470, + [SMALL_STATE(1258)] = 52486, + [SMALL_STATE(1259)] = 52502, + [SMALL_STATE(1260)] = 52518, + [SMALL_STATE(1261)] = 52534, + [SMALL_STATE(1262)] = 52550, + [SMALL_STATE(1263)] = 52566, + [SMALL_STATE(1264)] = 52582, + [SMALL_STATE(1265)] = 52598, + [SMALL_STATE(1266)] = 52614, + [SMALL_STATE(1267)] = 52630, + [SMALL_STATE(1268)] = 52646, + [SMALL_STATE(1269)] = 52662, + [SMALL_STATE(1270)] = 52678, + [SMALL_STATE(1271)] = 52694, + [SMALL_STATE(1272)] = 52710, + [SMALL_STATE(1273)] = 52724, + [SMALL_STATE(1274)] = 52740, + [SMALL_STATE(1275)] = 52756, + [SMALL_STATE(1276)] = 52772, + [SMALL_STATE(1277)] = 52788, + [SMALL_STATE(1278)] = 52804, + [SMALL_STATE(1279)] = 52820, + [SMALL_STATE(1280)] = 52836, + [SMALL_STATE(1281)] = 52852, + [SMALL_STATE(1282)] = 52868, + [SMALL_STATE(1283)] = 52884, + [SMALL_STATE(1284)] = 52900, + [SMALL_STATE(1285)] = 52916, + [SMALL_STATE(1286)] = 52932, + [SMALL_STATE(1287)] = 52948, + [SMALL_STATE(1288)] = 52964, + [SMALL_STATE(1289)] = 52978, + [SMALL_STATE(1290)] = 52994, + [SMALL_STATE(1291)] = 53010, + [SMALL_STATE(1292)] = 53020, + [SMALL_STATE(1293)] = 53036, + [SMALL_STATE(1294)] = 53046, + [SMALL_STATE(1295)] = 53062, + [SMALL_STATE(1296)] = 53078, + [SMALL_STATE(1297)] = 53094, + [SMALL_STATE(1298)] = 53110, + [SMALL_STATE(1299)] = 53126, + [SMALL_STATE(1300)] = 53142, + [SMALL_STATE(1301)] = 53158, + [SMALL_STATE(1302)] = 53174, + [SMALL_STATE(1303)] = 53190, + [SMALL_STATE(1304)] = 53206, + [SMALL_STATE(1305)] = 53222, + [SMALL_STATE(1306)] = 53238, + [SMALL_STATE(1307)] = 53252, + [SMALL_STATE(1308)] = 53268, + [SMALL_STATE(1309)] = 53284, + [SMALL_STATE(1310)] = 53300, + [SMALL_STATE(1311)] = 53314, + [SMALL_STATE(1312)] = 53328, + [SMALL_STATE(1313)] = 53344, + [SMALL_STATE(1314)] = 53360, + [SMALL_STATE(1315)] = 53374, + [SMALL_STATE(1316)] = 53390, + [SMALL_STATE(1317)] = 53406, + [SMALL_STATE(1318)] = 53422, + [SMALL_STATE(1319)] = 53438, + [SMALL_STATE(1320)] = 53454, + [SMALL_STATE(1321)] = 53470, + [SMALL_STATE(1322)] = 53486, + [SMALL_STATE(1323)] = 53500, + [SMALL_STATE(1324)] = 53516, + [SMALL_STATE(1325)] = 53526, + [SMALL_STATE(1326)] = 53542, + [SMALL_STATE(1327)] = 53558, + [SMALL_STATE(1328)] = 53574, + [SMALL_STATE(1329)] = 53590, + [SMALL_STATE(1330)] = 53606, + [SMALL_STATE(1331)] = 53622, + [SMALL_STATE(1332)] = 53638, + [SMALL_STATE(1333)] = 53651, + [SMALL_STATE(1334)] = 53664, + [SMALL_STATE(1335)] = 53677, + [SMALL_STATE(1336)] = 53690, + [SMALL_STATE(1337)] = 53701, + [SMALL_STATE(1338)] = 53714, + [SMALL_STATE(1339)] = 53727, + [SMALL_STATE(1340)] = 53740, + [SMALL_STATE(1341)] = 53753, + [SMALL_STATE(1342)] = 53766, + [SMALL_STATE(1343)] = 53777, + [SMALL_STATE(1344)] = 53790, + [SMALL_STATE(1345)] = 53803, + [SMALL_STATE(1346)] = 53816, + [SMALL_STATE(1347)] = 53829, + [SMALL_STATE(1348)] = 53840, + [SMALL_STATE(1349)] = 53853, + [SMALL_STATE(1350)] = 53866, + [SMALL_STATE(1351)] = 53879, + [SMALL_STATE(1352)] = 53892, + [SMALL_STATE(1353)] = 53903, + [SMALL_STATE(1354)] = 53912, + [SMALL_STATE(1355)] = 53923, + [SMALL_STATE(1356)] = 53932, + [SMALL_STATE(1357)] = 53945, + [SMALL_STATE(1358)] = 53956, + [SMALL_STATE(1359)] = 53965, + [SMALL_STATE(1360)] = 53978, + [SMALL_STATE(1361)] = 53987, + [SMALL_STATE(1362)] = 53998, + [SMALL_STATE(1363)] = 54011, + [SMALL_STATE(1364)] = 54020, + [SMALL_STATE(1365)] = 54031, + [SMALL_STATE(1366)] = 54044, + [SMALL_STATE(1367)] = 54057, + [SMALL_STATE(1368)] = 54066, + [SMALL_STATE(1369)] = 54077, + [SMALL_STATE(1370)] = 54090, + [SMALL_STATE(1371)] = 54101, + [SMALL_STATE(1372)] = 54114, + [SMALL_STATE(1373)] = 54127, + [SMALL_STATE(1374)] = 54140, + [SMALL_STATE(1375)] = 54153, + [SMALL_STATE(1376)] = 54164, + [SMALL_STATE(1377)] = 54175, + [SMALL_STATE(1378)] = 54188, + [SMALL_STATE(1379)] = 54199, + [SMALL_STATE(1380)] = 54210, + [SMALL_STATE(1381)] = 54223, + [SMALL_STATE(1382)] = 54236, + [SMALL_STATE(1383)] = 54249, + [SMALL_STATE(1384)] = 54260, + [SMALL_STATE(1385)] = 54273, + [SMALL_STATE(1386)] = 54284, + [SMALL_STATE(1387)] = 54297, + [SMALL_STATE(1388)] = 54310, + [SMALL_STATE(1389)] = 54323, + [SMALL_STATE(1390)] = 54336, + [SMALL_STATE(1391)] = 54349, + [SMALL_STATE(1392)] = 54362, + [SMALL_STATE(1393)] = 54373, + [SMALL_STATE(1394)] = 54384, + [SMALL_STATE(1395)] = 54397, + [SMALL_STATE(1396)] = 54410, + [SMALL_STATE(1397)] = 54421, + [SMALL_STATE(1398)] = 54434, + [SMALL_STATE(1399)] = 54447, + [SMALL_STATE(1400)] = 54460, + [SMALL_STATE(1401)] = 54473, + [SMALL_STATE(1402)] = 54484, + [SMALL_STATE(1403)] = 54497, + [SMALL_STATE(1404)] = 54510, + [SMALL_STATE(1405)] = 54523, + [SMALL_STATE(1406)] = 54536, + [SMALL_STATE(1407)] = 54549, + [SMALL_STATE(1408)] = 54562, + [SMALL_STATE(1409)] = 54575, + [SMALL_STATE(1410)] = 54588, + [SMALL_STATE(1411)] = 54601, + [SMALL_STATE(1412)] = 54614, + [SMALL_STATE(1413)] = 54627, + [SMALL_STATE(1414)] = 54638, + [SMALL_STATE(1415)] = 54649, + [SMALL_STATE(1416)] = 54662, + [SMALL_STATE(1417)] = 54675, + [SMALL_STATE(1418)] = 54688, + [SMALL_STATE(1419)] = 54699, + [SMALL_STATE(1420)] = 54712, + [SMALL_STATE(1421)] = 54725, + [SMALL_STATE(1422)] = 54738, + [SMALL_STATE(1423)] = 54751, + [SMALL_STATE(1424)] = 54764, + [SMALL_STATE(1425)] = 54777, + [SMALL_STATE(1426)] = 54790, + [SMALL_STATE(1427)] = 54799, + [SMALL_STATE(1428)] = 54812, + [SMALL_STATE(1429)] = 54825, + [SMALL_STATE(1430)] = 54838, + [SMALL_STATE(1431)] = 54847, + [SMALL_STATE(1432)] = 54860, + [SMALL_STATE(1433)] = 54873, + [SMALL_STATE(1434)] = 54886, + [SMALL_STATE(1435)] = 54897, + [SMALL_STATE(1436)] = 54906, + [SMALL_STATE(1437)] = 54919, + [SMALL_STATE(1438)] = 54930, + [SMALL_STATE(1439)] = 54943, + [SMALL_STATE(1440)] = 54956, + [SMALL_STATE(1441)] = 54969, + [SMALL_STATE(1442)] = 54982, + [SMALL_STATE(1443)] = 54995, + [SMALL_STATE(1444)] = 55008, + [SMALL_STATE(1445)] = 55019, + [SMALL_STATE(1446)] = 55032, + [SMALL_STATE(1447)] = 55045, + [SMALL_STATE(1448)] = 55058, + [SMALL_STATE(1449)] = 55071, + [SMALL_STATE(1450)] = 55084, + [SMALL_STATE(1451)] = 55097, + [SMALL_STATE(1452)] = 55110, + [SMALL_STATE(1453)] = 55123, + [SMALL_STATE(1454)] = 55136, + [SMALL_STATE(1455)] = 55149, + [SMALL_STATE(1456)] = 55162, + [SMALL_STATE(1457)] = 55175, + [SMALL_STATE(1458)] = 55186, + [SMALL_STATE(1459)] = 55199, + [SMALL_STATE(1460)] = 55212, + [SMALL_STATE(1461)] = 55225, + [SMALL_STATE(1462)] = 55238, + [SMALL_STATE(1463)] = 55249, + [SMALL_STATE(1464)] = 55262, + [SMALL_STATE(1465)] = 55275, + [SMALL_STATE(1466)] = 55288, + [SMALL_STATE(1467)] = 55301, + [SMALL_STATE(1468)] = 55312, + [SMALL_STATE(1469)] = 55325, + [SMALL_STATE(1470)] = 55336, + [SMALL_STATE(1471)] = 55349, + [SMALL_STATE(1472)] = 55362, + [SMALL_STATE(1473)] = 55371, + [SMALL_STATE(1474)] = 55384, + [SMALL_STATE(1475)] = 55397, + [SMALL_STATE(1476)] = 55408, + [SMALL_STATE(1477)] = 55421, + [SMALL_STATE(1478)] = 55434, + [SMALL_STATE(1479)] = 55447, + [SMALL_STATE(1480)] = 55460, + [SMALL_STATE(1481)] = 55473, + [SMALL_STATE(1482)] = 55486, + [SMALL_STATE(1483)] = 55499, + [SMALL_STATE(1484)] = 55512, + [SMALL_STATE(1485)] = 55525, + [SMALL_STATE(1486)] = 55536, + [SMALL_STATE(1487)] = 55549, + [SMALL_STATE(1488)] = 55562, + [SMALL_STATE(1489)] = 55575, + [SMALL_STATE(1490)] = 55588, + [SMALL_STATE(1491)] = 55601, + [SMALL_STATE(1492)] = 55614, + [SMALL_STATE(1493)] = 55627, + [SMALL_STATE(1494)] = 55636, + [SMALL_STATE(1495)] = 55649, + [SMALL_STATE(1496)] = 55660, + [SMALL_STATE(1497)] = 55673, + [SMALL_STATE(1498)] = 55686, + [SMALL_STATE(1499)] = 55699, + [SMALL_STATE(1500)] = 55712, + [SMALL_STATE(1501)] = 55725, + [SMALL_STATE(1502)] = 55738, + [SMALL_STATE(1503)] = 55751, + [SMALL_STATE(1504)] = 55760, + [SMALL_STATE(1505)] = 55773, + [SMALL_STATE(1506)] = 55786, + [SMALL_STATE(1507)] = 55799, + [SMALL_STATE(1508)] = 55812, + [SMALL_STATE(1509)] = 55825, + [SMALL_STATE(1510)] = 55838, + [SMALL_STATE(1511)] = 55851, + [SMALL_STATE(1512)] = 55864, + [SMALL_STATE(1513)] = 55877, + [SMALL_STATE(1514)] = 55890, + [SMALL_STATE(1515)] = 55903, + [SMALL_STATE(1516)] = 55914, + [SMALL_STATE(1517)] = 55927, + [SMALL_STATE(1518)] = 55940, + [SMALL_STATE(1519)] = 55953, + [SMALL_STATE(1520)] = 55966, + [SMALL_STATE(1521)] = 55979, + [SMALL_STATE(1522)] = 55992, + [SMALL_STATE(1523)] = 56005, + [SMALL_STATE(1524)] = 56018, + [SMALL_STATE(1525)] = 56031, + [SMALL_STATE(1526)] = 56044, + [SMALL_STATE(1527)] = 56057, + [SMALL_STATE(1528)] = 56070, + [SMALL_STATE(1529)] = 56079, + [SMALL_STATE(1530)] = 56092, + [SMALL_STATE(1531)] = 56103, + [SMALL_STATE(1532)] = 56114, + [SMALL_STATE(1533)] = 56127, + [SMALL_STATE(1534)] = 56140, + [SMALL_STATE(1535)] = 56153, + [SMALL_STATE(1536)] = 56166, + [SMALL_STATE(1537)] = 56179, + [SMALL_STATE(1538)] = 56192, + [SMALL_STATE(1539)] = 56205, + [SMALL_STATE(1540)] = 56218, + [SMALL_STATE(1541)] = 56231, + [SMALL_STATE(1542)] = 56244, + [SMALL_STATE(1543)] = 56257, + [SMALL_STATE(1544)] = 56268, + [SMALL_STATE(1545)] = 56281, + [SMALL_STATE(1546)] = 56294, + [SMALL_STATE(1547)] = 56307, + [SMALL_STATE(1548)] = 56320, + [SMALL_STATE(1549)] = 56333, + [SMALL_STATE(1550)] = 56346, + [SMALL_STATE(1551)] = 56359, + [SMALL_STATE(1552)] = 56372, + [SMALL_STATE(1553)] = 56385, + [SMALL_STATE(1554)] = 56398, + [SMALL_STATE(1555)] = 56411, + [SMALL_STATE(1556)] = 56424, + [SMALL_STATE(1557)] = 56437, + [SMALL_STATE(1558)] = 56450, + [SMALL_STATE(1559)] = 56463, + [SMALL_STATE(1560)] = 56472, + [SMALL_STATE(1561)] = 56485, + [SMALL_STATE(1562)] = 56496, + [SMALL_STATE(1563)] = 56509, + [SMALL_STATE(1564)] = 56518, + [SMALL_STATE(1565)] = 56531, + [SMALL_STATE(1566)] = 56544, + [SMALL_STATE(1567)] = 56557, + [SMALL_STATE(1568)] = 56570, + [SMALL_STATE(1569)] = 56583, + [SMALL_STATE(1570)] = 56596, + [SMALL_STATE(1571)] = 56606, + [SMALL_STATE(1572)] = 56616, + [SMALL_STATE(1573)] = 56624, + [SMALL_STATE(1574)] = 56632, + [SMALL_STATE(1575)] = 56640, + [SMALL_STATE(1576)] = 56650, + [SMALL_STATE(1577)] = 56660, + [SMALL_STATE(1578)] = 56668, + [SMALL_STATE(1579)] = 56678, + [SMALL_STATE(1580)] = 56688, + [SMALL_STATE(1581)] = 56696, + [SMALL_STATE(1582)] = 56706, + [SMALL_STATE(1583)] = 56716, + [SMALL_STATE(1584)] = 56726, + [SMALL_STATE(1585)] = 56734, + [SMALL_STATE(1586)] = 56742, + [SMALL_STATE(1587)] = 56750, + [SMALL_STATE(1588)] = 56760, + [SMALL_STATE(1589)] = 56768, + [SMALL_STATE(1590)] = 56778, + [SMALL_STATE(1591)] = 56788, + [SMALL_STATE(1592)] = 56798, + [SMALL_STATE(1593)] = 56808, + [SMALL_STATE(1594)] = 56818, + [SMALL_STATE(1595)] = 56826, + [SMALL_STATE(1596)] = 56836, + [SMALL_STATE(1597)] = 56846, + [SMALL_STATE(1598)] = 56856, + [SMALL_STATE(1599)] = 56864, + [SMALL_STATE(1600)] = 56872, + [SMALL_STATE(1601)] = 56882, + [SMALL_STATE(1602)] = 56892, + [SMALL_STATE(1603)] = 56902, + [SMALL_STATE(1604)] = 56912, + [SMALL_STATE(1605)] = 56922, + [SMALL_STATE(1606)] = 56930, + [SMALL_STATE(1607)] = 56940, + [SMALL_STATE(1608)] = 56948, + [SMALL_STATE(1609)] = 56958, + [SMALL_STATE(1610)] = 56968, + [SMALL_STATE(1611)] = 56978, + [SMALL_STATE(1612)] = 56988, + [SMALL_STATE(1613)] = 56998, + [SMALL_STATE(1614)] = 57006, + [SMALL_STATE(1615)] = 57016, + [SMALL_STATE(1616)] = 57026, + [SMALL_STATE(1617)] = 57036, + [SMALL_STATE(1618)] = 57046, + [SMALL_STATE(1619)] = 57056, + [SMALL_STATE(1620)] = 57066, + [SMALL_STATE(1621)] = 57076, + [SMALL_STATE(1622)] = 57086, + [SMALL_STATE(1623)] = 57096, + [SMALL_STATE(1624)] = 57104, + [SMALL_STATE(1625)] = 57114, + [SMALL_STATE(1626)] = 57122, + [SMALL_STATE(1627)] = 57132, + [SMALL_STATE(1628)] = 57140, + [SMALL_STATE(1629)] = 57150, + [SMALL_STATE(1630)] = 57160, + [SMALL_STATE(1631)] = 57170, + [SMALL_STATE(1632)] = 57180, + [SMALL_STATE(1633)] = 57190, + [SMALL_STATE(1634)] = 57200, + [SMALL_STATE(1635)] = 57210, + [SMALL_STATE(1636)] = 57218, + [SMALL_STATE(1637)] = 57228, + [SMALL_STATE(1638)] = 57238, + [SMALL_STATE(1639)] = 57248, + [SMALL_STATE(1640)] = 57258, + [SMALL_STATE(1641)] = 57268, + [SMALL_STATE(1642)] = 57278, + [SMALL_STATE(1643)] = 57288, + [SMALL_STATE(1644)] = 57298, + [SMALL_STATE(1645)] = 57308, + [SMALL_STATE(1646)] = 57316, + [SMALL_STATE(1647)] = 57326, + [SMALL_STATE(1648)] = 57334, + [SMALL_STATE(1649)] = 57342, + [SMALL_STATE(1650)] = 57352, + [SMALL_STATE(1651)] = 57362, + [SMALL_STATE(1652)] = 57372, + [SMALL_STATE(1653)] = 57382, + [SMALL_STATE(1654)] = 57392, + [SMALL_STATE(1655)] = 57402, + [SMALL_STATE(1656)] = 57412, + [SMALL_STATE(1657)] = 57422, + [SMALL_STATE(1658)] = 57432, + [SMALL_STATE(1659)] = 57440, + [SMALL_STATE(1660)] = 57450, + [SMALL_STATE(1661)] = 57460, + [SMALL_STATE(1662)] = 57468, + [SMALL_STATE(1663)] = 57478, + [SMALL_STATE(1664)] = 57488, + [SMALL_STATE(1665)] = 57498, + [SMALL_STATE(1666)] = 57506, + [SMALL_STATE(1667)] = 57516, + [SMALL_STATE(1668)] = 57526, + [SMALL_STATE(1669)] = 57536, + [SMALL_STATE(1670)] = 57546, + [SMALL_STATE(1671)] = 57556, + [SMALL_STATE(1672)] = 57566, + [SMALL_STATE(1673)] = 57576, + [SMALL_STATE(1674)] = 57586, + [SMALL_STATE(1675)] = 57594, + [SMALL_STATE(1676)] = 57604, + [SMALL_STATE(1677)] = 57612, + [SMALL_STATE(1678)] = 57622, + [SMALL_STATE(1679)] = 57632, + [SMALL_STATE(1680)] = 57640, + [SMALL_STATE(1681)] = 57650, + [SMALL_STATE(1682)] = 57660, + [SMALL_STATE(1683)] = 57670, + [SMALL_STATE(1684)] = 57680, + [SMALL_STATE(1685)] = 57688, + [SMALL_STATE(1686)] = 57696, + [SMALL_STATE(1687)] = 57706, + [SMALL_STATE(1688)] = 57714, + [SMALL_STATE(1689)] = 57722, + [SMALL_STATE(1690)] = 57732, + [SMALL_STATE(1691)] = 57742, + [SMALL_STATE(1692)] = 57752, + [SMALL_STATE(1693)] = 57762, + [SMALL_STATE(1694)] = 57770, + [SMALL_STATE(1695)] = 57778, + [SMALL_STATE(1696)] = 57788, + [SMALL_STATE(1697)] = 57796, + [SMALL_STATE(1698)] = 57804, + [SMALL_STATE(1699)] = 57814, + [SMALL_STATE(1700)] = 57824, + [SMALL_STATE(1701)] = 57834, + [SMALL_STATE(1702)] = 57844, + [SMALL_STATE(1703)] = 57852, + [SMALL_STATE(1704)] = 57862, + [SMALL_STATE(1705)] = 57870, + [SMALL_STATE(1706)] = 57880, + [SMALL_STATE(1707)] = 57888, + [SMALL_STATE(1708)] = 57896, + [SMALL_STATE(1709)] = 57904, + [SMALL_STATE(1710)] = 57912, + [SMALL_STATE(1711)] = 57920, + [SMALL_STATE(1712)] = 57930, + [SMALL_STATE(1713)] = 57938, + [SMALL_STATE(1714)] = 57946, + [SMALL_STATE(1715)] = 57956, + [SMALL_STATE(1716)] = 57964, + [SMALL_STATE(1717)] = 57974, + [SMALL_STATE(1718)] = 57984, + [SMALL_STATE(1719)] = 57992, + [SMALL_STATE(1720)] = 58002, + [SMALL_STATE(1721)] = 58012, + [SMALL_STATE(1722)] = 58022, + [SMALL_STATE(1723)] = 58029, + [SMALL_STATE(1724)] = 58036, + [SMALL_STATE(1725)] = 58043, + [SMALL_STATE(1726)] = 58050, + [SMALL_STATE(1727)] = 58057, + [SMALL_STATE(1728)] = 58064, + [SMALL_STATE(1729)] = 58071, + [SMALL_STATE(1730)] = 58078, + [SMALL_STATE(1731)] = 58085, + [SMALL_STATE(1732)] = 58092, + [SMALL_STATE(1733)] = 58099, + [SMALL_STATE(1734)] = 58106, + [SMALL_STATE(1735)] = 58113, + [SMALL_STATE(1736)] = 58120, + [SMALL_STATE(1737)] = 58127, + [SMALL_STATE(1738)] = 58134, + [SMALL_STATE(1739)] = 58141, + [SMALL_STATE(1740)] = 58148, + [SMALL_STATE(1741)] = 58155, + [SMALL_STATE(1742)] = 58162, + [SMALL_STATE(1743)] = 58169, + [SMALL_STATE(1744)] = 58176, + [SMALL_STATE(1745)] = 58183, + [SMALL_STATE(1746)] = 58190, + [SMALL_STATE(1747)] = 58197, + [SMALL_STATE(1748)] = 58204, + [SMALL_STATE(1749)] = 58211, + [SMALL_STATE(1750)] = 58218, + [SMALL_STATE(1751)] = 58225, + [SMALL_STATE(1752)] = 58232, + [SMALL_STATE(1753)] = 58239, + [SMALL_STATE(1754)] = 58246, + [SMALL_STATE(1755)] = 58253, + [SMALL_STATE(1756)] = 58260, + [SMALL_STATE(1757)] = 58267, + [SMALL_STATE(1758)] = 58274, + [SMALL_STATE(1759)] = 58281, + [SMALL_STATE(1760)] = 58288, + [SMALL_STATE(1761)] = 58295, + [SMALL_STATE(1762)] = 58302, + [SMALL_STATE(1763)] = 58309, + [SMALL_STATE(1764)] = 58316, + [SMALL_STATE(1765)] = 58323, + [SMALL_STATE(1766)] = 58330, + [SMALL_STATE(1767)] = 58337, + [SMALL_STATE(1768)] = 58344, + [SMALL_STATE(1769)] = 58351, + [SMALL_STATE(1770)] = 58358, + [SMALL_STATE(1771)] = 58365, + [SMALL_STATE(1772)] = 58372, + [SMALL_STATE(1773)] = 58379, + [SMALL_STATE(1774)] = 58386, + [SMALL_STATE(1775)] = 58393, + [SMALL_STATE(1776)] = 58400, + [SMALL_STATE(1777)] = 58407, + [SMALL_STATE(1778)] = 58414, + [SMALL_STATE(1779)] = 58421, + [SMALL_STATE(1780)] = 58428, + [SMALL_STATE(1781)] = 58435, + [SMALL_STATE(1782)] = 58442, + [SMALL_STATE(1783)] = 58449, + [SMALL_STATE(1784)] = 58456, + [SMALL_STATE(1785)] = 58463, + [SMALL_STATE(1786)] = 58470, + [SMALL_STATE(1787)] = 58477, + [SMALL_STATE(1788)] = 58484, + [SMALL_STATE(1789)] = 58491, + [SMALL_STATE(1790)] = 58498, + [SMALL_STATE(1791)] = 58505, + [SMALL_STATE(1792)] = 58512, + [SMALL_STATE(1793)] = 58519, + [SMALL_STATE(1794)] = 58526, + [SMALL_STATE(1795)] = 58533, + [SMALL_STATE(1796)] = 58540, + [SMALL_STATE(1797)] = 58547, + [SMALL_STATE(1798)] = 58554, + [SMALL_STATE(1799)] = 58561, + [SMALL_STATE(1800)] = 58568, + [SMALL_STATE(1801)] = 58575, + [SMALL_STATE(1802)] = 58582, + [SMALL_STATE(1803)] = 58589, + [SMALL_STATE(1804)] = 58596, + [SMALL_STATE(1805)] = 58603, + [SMALL_STATE(1806)] = 58610, + [SMALL_STATE(1807)] = 58617, + [SMALL_STATE(1808)] = 58624, + [SMALL_STATE(1809)] = 58631, + [SMALL_STATE(1810)] = 58638, + [SMALL_STATE(1811)] = 58645, + [SMALL_STATE(1812)] = 58652, + [SMALL_STATE(1813)] = 58659, + [SMALL_STATE(1814)] = 58666, + [SMALL_STATE(1815)] = 58673, + [SMALL_STATE(1816)] = 58680, + [SMALL_STATE(1817)] = 58687, + [SMALL_STATE(1818)] = 58694, + [SMALL_STATE(1819)] = 58701, + [SMALL_STATE(1820)] = 58708, + [SMALL_STATE(1821)] = 58715, + [SMALL_STATE(1822)] = 58722, + [SMALL_STATE(1823)] = 58729, + [SMALL_STATE(1824)] = 58736, + [SMALL_STATE(1825)] = 58743, + [SMALL_STATE(1826)] = 58750, + [SMALL_STATE(1827)] = 58757, + [SMALL_STATE(1828)] = 58764, + [SMALL_STATE(1829)] = 58771, + [SMALL_STATE(1830)] = 58778, + [SMALL_STATE(1831)] = 58785, + [SMALL_STATE(1832)] = 58792, + [SMALL_STATE(1833)] = 58799, + [SMALL_STATE(1834)] = 58806, + [SMALL_STATE(1835)] = 58813, + [SMALL_STATE(1836)] = 58820, + [SMALL_STATE(1837)] = 58827, + [SMALL_STATE(1838)] = 58834, + [SMALL_STATE(1839)] = 58841, + [SMALL_STATE(1840)] = 58848, + [SMALL_STATE(1841)] = 58855, + [SMALL_STATE(1842)] = 58862, + [SMALL_STATE(1843)] = 58869, + [SMALL_STATE(1844)] = 58876, + [SMALL_STATE(1845)] = 58883, + [SMALL_STATE(1846)] = 58890, + [SMALL_STATE(1847)] = 58897, + [SMALL_STATE(1848)] = 58904, + [SMALL_STATE(1849)] = 58911, + [SMALL_STATE(1850)] = 58918, + [SMALL_STATE(1851)] = 58925, + [SMALL_STATE(1852)] = 58932, + [SMALL_STATE(1853)] = 58939, + [SMALL_STATE(1854)] = 58946, + [SMALL_STATE(1855)] = 58953, + [SMALL_STATE(1856)] = 58960, + [SMALL_STATE(1857)] = 58967, + [SMALL_STATE(1858)] = 58974, + [SMALL_STATE(1859)] = 58981, + [SMALL_STATE(1860)] = 58988, + [SMALL_STATE(1861)] = 58995, + [SMALL_STATE(1862)] = 59002, + [SMALL_STATE(1863)] = 59009, + [SMALL_STATE(1864)] = 59016, + [SMALL_STATE(1865)] = 59023, + [SMALL_STATE(1866)] = 59030, + [SMALL_STATE(1867)] = 59037, + [SMALL_STATE(1868)] = 59044, + [SMALL_STATE(1869)] = 59051, + [SMALL_STATE(1870)] = 59058, + [SMALL_STATE(1871)] = 59065, + [SMALL_STATE(1872)] = 59072, + [SMALL_STATE(1873)] = 59079, + [SMALL_STATE(1874)] = 59086, + [SMALL_STATE(1875)] = 59093, + [SMALL_STATE(1876)] = 59100, + [SMALL_STATE(1877)] = 59107, + [SMALL_STATE(1878)] = 59114, + [SMALL_STATE(1879)] = 59121, + [SMALL_STATE(1880)] = 59128, + [SMALL_STATE(1881)] = 59135, + [SMALL_STATE(1882)] = 59142, + [SMALL_STATE(1883)] = 59149, + [SMALL_STATE(1884)] = 59156, + [SMALL_STATE(1885)] = 59163, + [SMALL_STATE(1886)] = 59170, + [SMALL_STATE(1887)] = 59177, + [SMALL_STATE(1888)] = 59184, + [SMALL_STATE(1889)] = 59191, + [SMALL_STATE(1890)] = 59198, + [SMALL_STATE(1891)] = 59205, + [SMALL_STATE(1892)] = 59212, + [SMALL_STATE(1893)] = 59219, + [SMALL_STATE(1894)] = 59226, + [SMALL_STATE(1895)] = 59233, + [SMALL_STATE(1896)] = 59240, + [SMALL_STATE(1897)] = 59247, + [SMALL_STATE(1898)] = 59254, + [SMALL_STATE(1899)] = 59261, + [SMALL_STATE(1900)] = 59268, + [SMALL_STATE(1901)] = 59275, + [SMALL_STATE(1902)] = 59282, + [SMALL_STATE(1903)] = 59289, + [SMALL_STATE(1904)] = 59296, + [SMALL_STATE(1905)] = 59303, + [SMALL_STATE(1906)] = 59310, + [SMALL_STATE(1907)] = 59317, + [SMALL_STATE(1908)] = 59324, + [SMALL_STATE(1909)] = 59331, + [SMALL_STATE(1910)] = 59338, + [SMALL_STATE(1911)] = 59345, + [SMALL_STATE(1912)] = 59352, + [SMALL_STATE(1913)] = 59359, + [SMALL_STATE(1914)] = 59366, + [SMALL_STATE(1915)] = 59373, + [SMALL_STATE(1916)] = 59380, + [SMALL_STATE(1917)] = 59387, + [SMALL_STATE(1918)] = 59394, + [SMALL_STATE(1919)] = 59401, + [SMALL_STATE(1920)] = 59408, + [SMALL_STATE(1921)] = 59415, + [SMALL_STATE(1922)] = 59422, + [SMALL_STATE(1923)] = 59429, + [SMALL_STATE(1924)] = 59436, + [SMALL_STATE(1925)] = 59443, + [SMALL_STATE(1926)] = 59450, + [SMALL_STATE(1927)] = 59457, + [SMALL_STATE(1928)] = 59464, + [SMALL_STATE(1929)] = 59471, + [SMALL_STATE(1930)] = 59478, + [SMALL_STATE(1931)] = 59485, + [SMALL_STATE(1932)] = 59492, + [SMALL_STATE(1933)] = 59499, + [SMALL_STATE(1934)] = 59506, + [SMALL_STATE(1935)] = 59513, + [SMALL_STATE(1936)] = 59520, + [SMALL_STATE(1937)] = 59527, + [SMALL_STATE(1938)] = 59534, + [SMALL_STATE(1939)] = 59541, + [SMALL_STATE(1940)] = 59548, + [SMALL_STATE(1941)] = 59555, + [SMALL_STATE(1942)] = 59562, + [SMALL_STATE(1943)] = 59569, + [SMALL_STATE(1944)] = 59576, + [SMALL_STATE(1945)] = 59583, + [SMALL_STATE(1946)] = 59590, + [SMALL_STATE(1947)] = 59597, + [SMALL_STATE(1948)] = 59604, + [SMALL_STATE(1949)] = 59611, + [SMALL_STATE(1950)] = 59618, + [SMALL_STATE(1951)] = 59625, + [SMALL_STATE(1952)] = 59632, }; static const TSParseActionEntry ts_parse_actions[] = { @@ -19467,631 +76066,2362 @@ static const TSParseActionEntry ts_parse_actions[] = { [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(), [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_program, 0), - [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(289), - [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(432), - [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), - [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(520), - [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(416), - [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(516), - [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(482), - [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(481), - [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(480), - [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(479), - [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(478), - [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(213), - [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(211), - [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(336), - [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(469), - [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(375), - [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(377), - [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(287), - [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(383), - [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(462), - [47] = {.entry = {.count = 1, .reusable = false}}, SHIFT(437), - [49] = {.entry = {.count = 1, .reusable = false}}, SHIFT(208), - [51] = {.entry = {.count = 1, .reusable = false}}, SHIFT(461), - [53] = {.entry = {.count = 1, .reusable = false}}, SHIFT(460), - [55] = {.entry = {.count = 1, .reusable = false}}, SHIFT(207), - [57] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206), - [59] = {.entry = {.count = 1, .reusable = false}}, SHIFT(206), - [61] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255), - [63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(458), - [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(253), - [67] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), - [69] = {.entry = {.count = 1, .reusable = false}}, SHIFT(457), - [71] = {.entry = {.count = 1, .reusable = false}}, SHIFT(387), - [73] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), - [75] = {.entry = {.count = 1, .reusable = false}}, SHIFT(285), - [77] = {.entry = {.count = 1, .reusable = false}}, SHIFT(422), - [79] = {.entry = {.count = 1, .reusable = false}}, SHIFT(514), - [81] = {.entry = {.count = 1, .reusable = true}}, SHIFT(415), - [83] = {.entry = {.count = 1, .reusable = true}}, SHIFT(467), - [85] = {.entry = {.count = 1, .reusable = false}}, SHIFT(497), - [87] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), - [89] = {.entry = {.count = 1, .reusable = false}}, SHIFT(498), - [91] = {.entry = {.count = 1, .reusable = false}}, SHIFT(515), - [93] = {.entry = {.count = 1, .reusable = false}}, SHIFT(517), - [95] = {.entry = {.count = 1, .reusable = false}}, SHIFT(229), - [97] = {.entry = {.count = 1, .reusable = false}}, SHIFT(232), - [99] = {.entry = {.count = 1, .reusable = false}}, SHIFT(332), - [101] = {.entry = {.count = 1, .reusable = false}}, SHIFT(519), - [103] = {.entry = {.count = 1, .reusable = false}}, SHIFT(371), - [105] = {.entry = {.count = 1, .reusable = false}}, SHIFT(370), - [107] = {.entry = {.count = 1, .reusable = false}}, SHIFT(521), - [109] = {.entry = {.count = 1, .reusable = false}}, SHIFT(418), - [111] = {.entry = {.count = 1, .reusable = false}}, SHIFT(499), - [113] = {.entry = {.count = 1, .reusable = false}}, SHIFT(500), - [115] = {.entry = {.count = 1, .reusable = false}}, SHIFT(209), - [117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), - [119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), - [121] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), - [123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), - [125] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), - [127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), - [129] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), - [131] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), - [133] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), - [135] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), - [137] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2), - [139] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(289), - [142] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(432), - [145] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(191), - [148] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(520), - [151] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(416), - [154] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(516), - [157] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(482), - [160] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(481), - [163] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(480), - [166] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(479), - [169] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(478), - [172] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(213), - [175] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(211), - [178] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(336), - [181] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(469), - [184] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(375), - [187] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(377), - [190] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(287), - [193] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(383), - [196] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(462), - [199] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(437), - [202] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(208), - [205] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(461), - [208] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(460), - [211] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(207), - [214] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(206), - [217] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(206), - [220] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(255), - [223] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(458), - [226] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(253), - [229] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(204), - [232] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(457), - [235] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(387), - [238] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(126), - [241] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), - [243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182), - [245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180), - [247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), - [249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), - [251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(152), - [253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), - [255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), - [257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), - [259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), - [261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), - [263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), - [265] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(285), - [268] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(422), - [271] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(514), - [274] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(415), - [277] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(467), - [280] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(497), - [283] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(498), - [286] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(515), - [289] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(517), - [292] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(229), - [295] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(232), - [298] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(332), - [301] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(519), - [304] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(371), - [307] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(370), - [310] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(521), - [313] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(418), - [316] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(499), - [319] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(500), - [322] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(209), - [325] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_program_repeat1, 2), SHIFT_REPEAT(169), - [328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), - [330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), - [332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), - [334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), - [336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), - [338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), - [340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), - [342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), - [344] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_program, 1), - [346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), - [348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), - [350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), - [352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), - [354] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), - [356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), - [358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133), - [360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135), - [362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), - [364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), - [366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), - [368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), - [370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), - [372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), - [374] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_dotted_name_repeat1, 2), - [376] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dotted_name_repeat1, 2), - [378] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dotted_name_repeat1, 2), SHIFT_REPEAT(465), - [381] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dotted_name, 2), - [383] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 2), - [385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(465), - [387] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dotted_name, 1), - [389] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 1), - [391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(496), - [393] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dotted_name_repeat1, 2), SHIFT_REPEAT(496), - [396] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__import_list, 1, .production_id = 5), - [398] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 1, .production_id = 5), - [400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), - [402] = {.entry = {.count = 1, .reusable = false}}, SHIFT(466), - [404] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), - [406] = {.entry = {.count = 1, .reusable = false}}, SHIFT(493), - [408] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 10), - [410] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 10), - [412] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 10), SHIFT_REPEAT(380), - [415] = {.entry = {.count = 1, .reusable = false}}, SHIFT(61), - [417] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__import_list, 3, .production_id = 6), - [419] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 3, .production_id = 6), - [421] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 9), - [423] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 9), - [425] = {.entry = {.count = 1, .reusable = false}}, SHIFT(62), - [427] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__import_list, 2, .production_id = 6), - [429] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, .production_id = 6), - [431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), - [433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), - [435] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__import_list, 2, .production_id = 5), - [437] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, .production_id = 5), - [439] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 10), SHIFT_REPEAT(385), - [442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), - [444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), - [446] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_builtin_directive_repeat1, 2), - [448] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_builtin_directive_repeat1, 2), SHIFT_REPEAT(85), - [451] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_builtin_directive_repeat1, 2), - [453] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aliased_import, 3, .production_id = 11), - [455] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_aliased_import, 3, .production_id = 11), - [457] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_builtin_directive_repeat1, 2), SHIFT_REPEAT(87), - [460] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6), - [462] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6), - [464] = {.entry = {.count = 1, .reusable = false}}, SHIFT(473), - [466] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_builtin_directive, 2), - [468] = {.entry = {.count = 1, .reusable = false}}, SHIFT(85), - [470] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_builtin_directive, 2), - [472] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 7), - [474] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 7), - [476] = {.entry = {.count = 1, .reusable = false}}, SHIFT(512), - [478] = {.entry = {.count = 1, .reusable = false}}, SHIFT(495), - [480] = {.entry = {.count = 1, .reusable = false}}, SHIFT(87), - [482] = {.entry = {.count = 1, .reusable = false}}, SHIFT(494), - [484] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_const_var_declaration, 5), - [486] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_var_declaration, 5), - [488] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_statement, 6, .production_id = 8), - [490] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_statement, 6, .production_id = 8), - [492] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_instruction, 5), - [494] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_instruction, 5), - [496] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_static_assert_statement, 5), - [498] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_static_assert_statement, 5), - [500] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_definition, 7), - [502] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_definition, 7), - [504] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 6), - [506] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 6), - [508] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute_statement, 6), - [510] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_statement, 6), - [512] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6), - [514] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6), - [516] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_definition, 6), - [518] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_definition, 6), - [520] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_statement, 5), - [522] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assert_statement, 5), - [524] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_statement, 5), - [526] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute_statement, 5), - [528] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 5), - [530] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 5), - [532] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_temp_var_declaration, 5), - [534] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_temp_var_declaration, 5), - [536] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 5), - [538] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 5), - [540] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_local_var_declaration, 5), - [542] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_local_var_declaration, 5), - [544] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_local_var_declaration, 3), - [546] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_local_var_declaration, 3), - [548] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_temp_var_declaration, 3), - [550] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_temp_var_declaration, 3), - [552] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_binding, 5, .production_id = 7), - [554] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_binding, 5, .production_id = 7), - [556] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cairo_0_statement, 1), - [558] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cairo_0_statement, 1), - [560] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_definition, 5), - [562] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_definition, 5), - [564] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, .production_id = 12), - [566] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, .production_id = 12), - [568] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_namespace_definition, 5), - [570] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_namespace_definition, 5), - [572] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 3), - [574] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_statement, 3), - [576] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute_statement, 7), - [578] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_statement, 7), - [580] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_definition, 5), - [582] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_definition, 5), - [584] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 4), - [586] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 4), - [588] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_label, 3), - [590] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_label, 3), - [592] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute_statement, 4), - [594] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_statement, 4), - [596] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_definition, 4), - [598] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_definition, 4), - [600] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_namespace_definition, 4), - [602] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_namespace_definition, 4), - [604] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_statement, 4, .production_id = 4), - [606] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_statement, 4, .production_id = 4), - [608] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, .production_id = 13), - [610] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, .production_id = 13), - [612] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7), - [614] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7), - [616] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decorated_definition, 2, .production_id = 2), - [618] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_decorated_definition, 2, .production_id = 2), - [620] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, .production_id = 12), - [622] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, .production_id = 12), - [624] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute_statement, 8), - [626] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_statement, 8), - [628] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lang_directive, 2), - [630] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lang_directive, 2), - [632] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alloc_locals, 2), - [634] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alloc_locals, 2), - [636] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_statement, 2), - [638] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 2), - [640] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_instruction, 2), - [642] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_instruction, 2), - [644] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 11), - [646] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 11), - [648] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 10), - [650] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 10), - [652] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, .production_id = 13), - [654] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, .production_id = 13), - [656] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 9), - [658] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 9), - [660] = {.entry = {.count = 1, .reusable = false}}, SHIFT(255), - [662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(485), - [664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(424), - [666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249), - [668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(243), - [670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(443), - [672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), - [674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(414), - [676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(282), - [678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), - [680] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 3, .production_id = 3), - [682] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_expression, 3, .production_id = 3), - [684] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), - [686] = {.entry = {.count = 1, .reusable = false}}, SHIFT(197), - [688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), - [690] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203), - [692] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), - [694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(455), - [696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), - [698] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_expression, 3, .production_id = 3), - [700] = {.entry = {.count = 1, .reusable = false}}, SHIFT(217), - [702] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210), - [704] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 2, .production_id = 1), - [706] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expression, 2, .production_id = 1), - [708] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_deref_expression, 3), - [710] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_deref_expression, 3), - [712] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hint_expression, 2), - [714] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hint_expression, 2), - [716] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 2), - [718] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 2), - [720] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 5), - [722] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 5), - [724] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_subscript_expression, 4), - [726] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_subscript_expression, 4), - [728] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_expression, 4), - [730] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_expression, 4), - [732] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_member_expression, 3), - [734] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_member_expression, 3), - [736] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_expression, 7), - [738] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_expression, 7), - [740] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cast_expression, 6), - [742] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cast_expression, 6), - [744] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 4), - [746] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 4), - [748] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_expression, 5), - [750] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_expression, 5), - [752] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 3), - [754] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 3), - [756] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_expression, 2), - [758] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_expression, 2), - [760] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_register, 1), - [762] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_register, 1), - [764] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_expression, 6), - [766] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_expression, 6), - [768] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1), - [770] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 1), - [772] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inst_jmp_rel, 3), - [774] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226), - [776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251), - [778] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), - [780] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inst_jmp_abs, 3), - [782] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 2), - [784] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_instruction, 3), - [786] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inst_data_word, 2), - [788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), - [790] = {.entry = {.count = 1, .reusable = true}}, SHIFT(441), - [792] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inst_add_ap, 3), - [794] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inst_assert_eq, 3), - [796] = {.entry = {.count = 1, .reusable = true}}, SHIFT(313), - [798] = {.entry = {.count = 1, .reusable = true}}, SHIFT(244), - [800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(476), - [802] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240), - [804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), - [806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), - [808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(487), - [810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), - [812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), - [814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), - [816] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), - [818] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), - [820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), - [822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), - [824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), - [826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), - [828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147), - [830] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inst_jnz, 7), - [832] = {.entry = {.count = 1, .reusable = false}}, SHIFT(227), - [834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), - [836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), - [838] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), - [840] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inst_jnz_to_label, 6), - [842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202), - [844] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130), - [846] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), - [848] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_call_expression_repeat1, 2), - [850] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), - [852] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), - [854] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219), - [856] = {.entry = {.count = 1, .reusable = false}}, SHIFT(218), - [858] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), - [860] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), - [862] = {.entry = {.count = 1, .reusable = false}}, SHIFT(214), - [864] = {.entry = {.count = 1, .reusable = false}}, SHIFT(337), - [866] = {.entry = {.count = 1, .reusable = true}}, SHIFT(317), - [868] = {.entry = {.count = 1, .reusable = true}}, SHIFT(423), - [870] = {.entry = {.count = 1, .reusable = true}}, SHIFT(502), - [872] = {.entry = {.count = 1, .reusable = false}}, SHIFT(468), - [874] = {.entry = {.count = 1, .reusable = false}}, SHIFT(321), - [876] = {.entry = {.count = 1, .reusable = true}}, SHIFT(321), - [878] = {.entry = {.count = 1, .reusable = false}}, SHIFT(306), - [880] = {.entry = {.count = 1, .reusable = true}}, SHIFT(299), - [882] = {.entry = {.count = 1, .reusable = true}}, SHIFT(497), - [884] = {.entry = {.count = 1, .reusable = true}}, SHIFT(498), - [886] = {.entry = {.count = 1, .reusable = true}}, SHIFT(515), - [888] = {.entry = {.count = 1, .reusable = true}}, SHIFT(481), - [890] = {.entry = {.count = 1, .reusable = true}}, SHIFT(480), - [892] = {.entry = {.count = 1, .reusable = true}}, SHIFT(479), - [894] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_type, 1), - [896] = {.entry = {.count = 1, .reusable = true}}, SHIFT(322), - [898] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_type, 1), - [900] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_type, 3), - [902] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_type, 3), - [904] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_non_identifier_type, 4), - [906] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_non_identifier_type, 4), - [908] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1), - [910] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 1), - [912] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_non_identifier_type, 2), - [914] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_non_identifier_type, 2), - [916] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_non_identifier_type, 3), - [918] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_non_identifier_type, 3), - [920] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_non_identifier_type, 1), - [922] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_non_identifier_type, 1), - [924] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_identifier, 3), - [926] = {.entry = {.count = 1, .reusable = false}}, SHIFT(319), - [928] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), - [930] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_identifier, 4), - [932] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_decorated_definition_repeat1, 2), SHIFT_REPEAT(482), - [935] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_decorated_definition_repeat1, 2), - [937] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_identifier, 1), - [939] = {.entry = {.count = 1, .reusable = true}}, SHIFT(311), - [941] = {.entry = {.count = 1, .reusable = true}}, SHIFT(456), - [943] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dotted_name_repeat1, 2), SHIFT_REPEAT(456), - [946] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_identifier, 2), - [948] = {.entry = {.count = 1, .reusable = true}}, SHIFT(308), - [950] = {.entry = {.count = 1, .reusable = false}}, SHIFT(326), - [952] = {.entry = {.count = 1, .reusable = true}}, SHIFT(344), - [954] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), - [956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(307), - [958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), - [960] = {.entry = {.count = 1, .reusable = true}}, SHIFT(357), - [962] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), - [964] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360), - [966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(309), - [968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), - [970] = {.entry = {.count = 1, .reusable = true}}, SHIFT(446), - [972] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), - [974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(338), - [976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355), - [978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(474), - [980] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decorator, 2), - [982] = {.entry = {.count = 1, .reusable = true}}, SHIFT(463), - [984] = {.entry = {.count = 1, .reusable = true}}, SHIFT(440), - [986] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), - [988] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), - [990] = {.entry = {.count = 1, .reusable = true}}, SHIFT(434), - [992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144), - [994] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_non_identifier_type_repeat1, 2), - [996] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), - [998] = {.entry = {.count = 1, .reusable = true}}, SHIFT(504), - [1000] = {.entry = {.count = 1, .reusable = true}}, SHIFT(329), - [1002] = {.entry = {.count = 1, .reusable = true}}, SHIFT(362), - [1004] = {.entry = {.count = 1, .reusable = true}}, SHIFT(452), - [1006] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_struct_definition_repeat1, 2), - [1008] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_struct_definition_repeat1, 2), SHIFT_REPEAT(404), - [1011] = {.entry = {.count = 1, .reusable = true}}, SHIFT(358), - [1013] = {.entry = {.count = 1, .reusable = true}}, SHIFT(356), - [1015] = {.entry = {.count = 1, .reusable = true}}, SHIFT(484), - [1017] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), - [1019] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), - [1021] = {.entry = {.count = 1, .reusable = true}}, SHIFT(459), - [1023] = {.entry = {.count = 1, .reusable = true}}, SHIFT(395), - [1025] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), - [1027] = {.entry = {.count = 1, .reusable = true}}, SHIFT(510), - [1029] = {.entry = {.count = 1, .reusable = true}}, SHIFT(404), - [1031] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 10), SHIFT_REPEAT(382), - [1034] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 2), SHIFT_REPEAT(193), - [1037] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_attribute_statement_repeat1, 2), - [1039] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_attribute_statement_repeat1, 2), SHIFT_REPEAT(378), - [1042] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), - [1044] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347), - [1046] = {.entry = {.count = 1, .reusable = false}}, SHIFT(400), - [1048] = {.entry = {.count = 1, .reusable = false}}, SHIFT(201), - [1050] = {.entry = {.count = 1, .reusable = false}}, SHIFT(199), - [1052] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), - [1054] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), - [1056] = {.entry = {.count = 1, .reusable = false}}, SHIFT(435), - [1058] = {.entry = {.count = 1, .reusable = false}}, SHIFT(221), - [1060] = {.entry = {.count = 1, .reusable = true}}, SHIFT(352), - [1062] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141), - [1064] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_non_identifier_type_repeat1, 2), SHIFT_REPEAT(307), - [1067] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), - [1069] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [1071] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_call_expression_repeat1, 2), SHIFT_REPEAT(195), - [1074] = {.entry = {.count = 1, .reusable = true}}, SHIFT(429), - [1076] = {.entry = {.count = 1, .reusable = true}}, SHIFT(351), - [1078] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), - [1080] = {.entry = {.count = 1, .reusable = true}}, SHIFT(475), - [1082] = {.entry = {.count = 1, .reusable = true}}, SHIFT(378), - [1084] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), - [1086] = {.entry = {.count = 1, .reusable = true}}, SHIFT(354), - [1088] = {.entry = {.count = 1, .reusable = true}}, SHIFT(340), - [1090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(518), - [1092] = {.entry = {.count = 1, .reusable = true}}, SHIFT(348), - [1094] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inst_jmp_to_label, 2), - [1096] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), - [1098] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314), - [1100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), - [1102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(349), - [1104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), - [1106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(488), - [1108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(410), - [1110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(503), - [1112] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_with_statement_repeat1, 2), SHIFT_REPEAT(484), - [1115] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_with_statement_repeat1, 2), - [1117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), - [1119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(491), - [1121] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), - [1123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(346), - [1125] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), - [1127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), - [1129] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), - [1131] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), - [1133] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), - [1135] = {.entry = {.count = 1, .reusable = true}}, SHIFT(304), - [1137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(507), - [1139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), - [1141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222), - [1143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), - [1145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225), - [1147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), - [1149] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 2), - [1151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), - [1153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(302), - [1155] = {.entry = {.count = 1, .reusable = true}}, SHIFT(406), - [1157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), - [1159] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 3), - [1161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(367), - [1163] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), - [1165] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 4), - [1167] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_instruction, 2), - [1169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(453), - [1171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), - [1173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), - [1175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), - [1177] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), - [1179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), - [1181] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 5), - [1183] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), - [1185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), - [1187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), - [1189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(450), - [1191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_implicit_arguments, 4), - [1193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), - [1195] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), - [1197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), - [1199] = {.entry = {.count = 1, .reusable = true}}, SHIFT(334), - [1201] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428), - [1203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(477), - [1205] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [1207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246), - [1209] = {.entry = {.count = 1, .reusable = true}}, SHIFT(331), - [1211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224), - [1213] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241), - [1215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), - [1217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(396), - [1219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(431), - [1221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), - [1223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_implicit_arguments, 5), - [1225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), - [1227] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), - [1229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), - [1231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), - [1233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(330), - [1235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(449), - [1237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(335), - [1239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), - [1241] = {.entry = {.count = 1, .reusable = true}}, SHIFT(341), - [1243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), - [1245] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__ref_binding, 2), - [1247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), - [1249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), - [1251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(464), - [1253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), - [1255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342), - [1257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(490), - [1259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(486), - [1261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(345), - [1263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(316), - [1265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(430), - [1267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), - [1269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [1271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), - [1273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(339), - [1275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [1277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), - [1279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), - [1281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), - [1283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), - [1285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(471), - [1287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(472), - [1289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(426), - [1291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368), - [1293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(318), - [1295] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__ref_binding, 4), - [1297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_implicit_arguments, 2), - [1299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186), - [1301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220), - [1303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(445), - [1305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), - [1307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__ref_binding, 3), - [1309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [1311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(501), - [1313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(350), - [1315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), - [1317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), - [1319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_implicit_arguments, 3), - [1321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(506), - [1323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(483), - [1325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), + [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(944), + [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1604), + [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(813), + [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1950), + [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1720), + [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1948), + [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1947), + [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1943), + [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1942), + [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1941), + [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1345), + [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(852), + [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(849), + [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(535), + [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1938), + [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1403), + [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1408), + [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(943), + [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1423), + [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1926), + [47] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1329), + [49] = {.entry = {.count = 1, .reusable = false}}, SHIFT(843), + [51] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1920), + [53] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1919), + [55] = {.entry = {.count = 1, .reusable = false}}, SHIFT(840), + [57] = {.entry = {.count = 1, .reusable = true}}, SHIFT(815), + [59] = {.entry = {.count = 1, .reusable = false}}, SHIFT(815), + [61] = {.entry = {.count = 1, .reusable = true}}, SHIFT(898), + [63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1663), + [65] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1328), + [67] = {.entry = {.count = 1, .reusable = false}}, SHIFT(890), + [69] = {.entry = {.count = 1, .reusable = true}}, SHIFT(834), + [71] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1914), + [73] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1444), + [75] = {.entry = {.count = 1, .reusable = false}}, SHIFT(782), + [77] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1643), + [79] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1911), + [81] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1910), + [83] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1909), + [85] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1908), + [87] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1906), + [89] = {.entry = {.count = 1, .reusable = false}}, SHIFT(695), + [91] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1905), + [93] = {.entry = {.count = 1, .reusable = false}}, SHIFT(88), + [95] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), + [97] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_return_expression, 1), + [99] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256), + [101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), + [103] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_return_expression, 1), + [105] = {.entry = {.count = 1, .reusable = false}}, SHIFT(255), + [107] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2), + [109] = {.entry = {.count = 1, .reusable = false}}, SHIFT(254), + [111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), + [113] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1949), + [115] = {.entry = {.count = 1, .reusable = false}}, SHIFT(89), + [117] = {.entry = {.count = 1, .reusable = false}}, SHIFT(259), + [119] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1618), + [121] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), + [123] = {.entry = {.count = 1, .reusable = false}}, SHIFT(128), + [125] = {.entry = {.count = 1, .reusable = false}}, SHIFT(129), + [127] = {.entry = {.count = 1, .reusable = false}}, SHIFT(404), + [129] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), + [131] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249), + [133] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [135] = {.entry = {.count = 1, .reusable = false}}, SHIFT(248), + [137] = {.entry = {.count = 1, .reusable = false}}, SHIFT(3), + [139] = {.entry = {.count = 1, .reusable = false}}, SHIFT(239), + [141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(450), + [143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1798), + [145] = {.entry = {.count = 1, .reusable = false}}, SHIFT(402), + [147] = {.entry = {.count = 1, .reusable = false}}, SHIFT(238), + [149] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1716), + [151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(239), + [153] = {.entry = {.count = 1, .reusable = false}}, SHIFT(445), + [155] = {.entry = {.count = 1, .reusable = false}}, SHIFT(423), + [157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(941), + [159] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1812), + [161] = {.entry = {.count = 1, .reusable = false}}, SHIFT(659), + [163] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1932), + [165] = {.entry = {.count = 1, .reusable = false}}, SHIFT(781), + [167] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1652), + [169] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1946), + [171] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1924), + [173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1925), + [175] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1817), + [177] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1818), + [179] = {.entry = {.count = 1, .reusable = false}}, SHIFT(701), + [181] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1819), + [183] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), + [185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), + [187] = {.entry = {.count = 1, .reusable = false}}, SHIFT(656), + [189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), + [191] = {.entry = {.count = 1, .reusable = false}}, SHIFT(7), + [193] = {.entry = {.count = 1, .reusable = false}}, SHIFT(228), + [195] = {.entry = {.count = 1, .reusable = false}}, SHIFT(657), + [197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), + [199] = {.entry = {.count = 1, .reusable = true}}, SHIFT(345), + [201] = {.entry = {.count = 1, .reusable = true}}, SHIFT(948), + [203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(341), + [205] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(88), + [208] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(174), + [211] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(256), + [214] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(5), + [217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), + [219] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(1812), + [222] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(659), + [225] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(1932), + [228] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(255), + [231] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(2), + [234] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(254), + [237] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(254), + [240] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(127), + [243] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(781), + [246] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(1652), + [249] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(1946), + [252] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(1949), + [255] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(1924), + [258] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(1925), + [261] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(1817), + [264] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(1818), + [267] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(701), + [270] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(1819), + [273] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(89), + [276] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(259), + [279] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(1618), + [282] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(128), + [285] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_block_repeat1, 2), SHIFT_REPEAT(129), + [288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291), + [290] = {.entry = {.count = 1, .reusable = true}}, SHIFT(412), + [292] = {.entry = {.count = 1, .reusable = true}}, SHIFT(411), + [294] = {.entry = {.count = 1, .reusable = true}}, SHIFT(292), + [296] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(946), + [299] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1570), + [302] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(813), + [305] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1917), + [308] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1581), + [311] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1842), + [314] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1947), + [317] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1918), + [320] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), + [322] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1931), + [325] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1945), + [328] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), + [330] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1540), + [333] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(842), + [336] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(845), + [339] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1229), + [342] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1841), + [345] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1541), + [348] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1542), + [351] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(943), + [354] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1423), + [357] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1951), + [360] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1271), + [363] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(843), + [366] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1921), + [369] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1922), + [372] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(847), + [375] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(815), + [378] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(815), + [381] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(915), + [384] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1663), + [387] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1267), + [390] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(890), + [393] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(834), + [396] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1914), + [399] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1444), + [402] = {.entry = {.count = 1, .reusable = false}}, SHIFT(946), + [404] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1570), + [406] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1917), + [408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1581), + [410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1842), + [412] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1918), + [414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(585), + [416] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1931), + [418] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1945), + [420] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1540), + [422] = {.entry = {.count = 1, .reusable = false}}, SHIFT(842), + [424] = {.entry = {.count = 1, .reusable = false}}, SHIFT(845), + [426] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1229), + [428] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1841), + [430] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1541), + [432] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1542), + [434] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1951), + [436] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1271), + [438] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1921), + [440] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1922), + [442] = {.entry = {.count = 1, .reusable = false}}, SHIFT(847), + [444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(915), + [446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1267), + [448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(649), + [450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(554), + [452] = {.entry = {.count = 1, .reusable = false}}, SHIFT(643), + [454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(626), + [456] = {.entry = {.count = 1, .reusable = false}}, SHIFT(574), + [458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(610), + [460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(577), + [462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(614), + [464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(647), + [466] = {.entry = {.count = 1, .reusable = false}}, SHIFT(577), + [468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(646), + [470] = {.entry = {.count = 1, .reusable = true}}, SHIFT(618), + [472] = {.entry = {.count = 1, .reusable = false}}, SHIFT(543), + [474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(568), + [476] = {.entry = {.count = 1, .reusable = true}}, SHIFT(604), + [478] = {.entry = {.count = 1, .reusable = true}}, SHIFT(543), + [480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(653), + [482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(615), + [484] = {.entry = {.count = 1, .reusable = false}}, SHIFT(564), + [486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(564), + [488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(616), + [490] = {.entry = {.count = 1, .reusable = true}}, SHIFT(578), + [492] = {.entry = {.count = 1, .reusable = false}}, SHIFT(653), + [494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(643), + [496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(597), + [498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(545), + [500] = {.entry = {.count = 1, .reusable = false}}, SHIFT(554), + [502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(574), + [504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(589), + [506] = {.entry = {.count = 1, .reusable = true}}, SHIFT(571), + [508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(591), + [510] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cairo_0_file, 1), + [512] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1860), + [514] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1212), + [516] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1857), + [518] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(944), + [521] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1604), + [524] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1950), + [527] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1720), + [530] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1948), + [533] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1943), + [536] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1860), + [539] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1941), + [542] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1345), + [545] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(852), + [548] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(849), + [551] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1212), + [554] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1857), + [557] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1403), + [560] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1408), + [563] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1926), + [566] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1329), + [569] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1920), + [572] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1919), + [575] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(840), + [578] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(898), + [581] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_0_file_repeat1, 2), SHIFT_REPEAT(1328), + [584] = {.entry = {.count = 1, .reusable = true}}, SHIFT(590), + [586] = {.entry = {.count = 1, .reusable = false}}, SHIFT(649), + [588] = {.entry = {.count = 1, .reusable = true}}, SHIFT(546), + [590] = {.entry = {.count = 1, .reusable = true}}, SHIFT(544), + [592] = {.entry = {.count = 1, .reusable = false}}, SHIFT(544), + [594] = {.entry = {.count = 1, .reusable = true}}, SHIFT(602), + [596] = {.entry = {.count = 1, .reusable = true}}, SHIFT(580), + [598] = {.entry = {.count = 1, .reusable = true}}, SHIFT(582), + [600] = {.entry = {.count = 1, .reusable = true}}, SHIFT(505), + [602] = {.entry = {.count = 1, .reusable = false}}, SHIFT(652), + [604] = {.entry = {.count = 1, .reusable = false}}, SHIFT(620), + [606] = {.entry = {.count = 1, .reusable = true}}, SHIFT(620), + [608] = {.entry = {.count = 1, .reusable = true}}, SHIFT(579), + [610] = {.entry = {.count = 1, .reusable = false}}, SHIFT(634), + [612] = {.entry = {.count = 1, .reusable = true}}, SHIFT(542), + [614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(587), + [616] = {.entry = {.count = 1, .reusable = true}}, SHIFT(599), + [618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(612), + [620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(634), + [622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(601), + [624] = {.entry = {.count = 1, .reusable = true}}, SHIFT(563), + [626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(652), + [628] = {.entry = {.count = 1, .reusable = false}}, SHIFT(600), + [630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(600), + [632] = {.entry = {.count = 1, .reusable = false}}, SHIFT(551), + [634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(551), + [636] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_if_expression, 3, .production_id = 74), + [638] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_if_expression, 3, .production_id = 74), + [640] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1308), + [642] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_expression, 1), + [644] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_expression, 1), + [646] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__cairo_1_expression, 1), SHIFT(1084), + [649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1487), + [651] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_expression, 1, .production_id = 6), + [653] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_expression, 1, .production_id = 6), + [655] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__cairo_1_expression, 1, .production_id = 6), SHIFT(1084), + [658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1888), + [660] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 3), + [662] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 3), + [664] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 2), + [666] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 2), + [668] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_at_expression, 2), + [670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), + [672] = {.entry = {.count = 1, .reusable = false}}, SHIFT(226), + [674] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_at_expression, 2), + [676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225), + [678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297), + [680] = {.entry = {.count = 1, .reusable = false}}, SHIFT(289), + [682] = {.entry = {.count = 1, .reusable = false}}, SHIFT(288), + [684] = {.entry = {.count = 1, .reusable = false}}, SHIFT(282), + [686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(279), + [688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1759), + [690] = {.entry = {.count = 1, .reusable = false}}, SHIFT(225), + [692] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), + [694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), + [696] = {.entry = {.count = 1, .reusable = false}}, SHIFT(263), + [698] = {.entry = {.count = 1, .reusable = false}}, SHIFT(294), + [700] = {.entry = {.count = 1, .reusable = false}}, SHIFT(295), + [702] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), + [704] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_call_expression, 7, .production_id = 104), + [706] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_call_expression, 7, .production_id = 104), + [708] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_call_expression, 7, .production_id = 105), + [710] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_call_expression, 7, .production_id = 105), + [712] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_expression, 3, .production_id = 75), + [714] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_expression, 3, .production_id = 75), + [716] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_call_expression, 7, .production_id = 108), + [718] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_call_expression, 7, .production_id = 108), + [720] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_call_expression, 7, .production_id = 9), + [722] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_call_expression, 7, .production_id = 9), + [724] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_call_expression, 7, .production_id = 109), + [726] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_call_expression, 7, .production_id = 109), + [728] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_call_expression, 7, .production_id = 110), + [730] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_call_expression, 7, .production_id = 110), + [732] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_generic_function, 3, .production_id = 9), + [734] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_generic_function, 3, .production_id = 9), + [736] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_tuple_expression, 4), + [738] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_tuple_expression, 4), + [740] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_initializer_list, 2), + [742] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_initializer_list, 2), + [744] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_tuple_expression, 7), + [746] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_tuple_expression, 7), + [748] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_type_arguments, 4), + [750] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_type_arguments, 4), + [752] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_initializer_list, 6), + [754] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_initializer_list, 6), + [756] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_parenthesized_expression, 3), + [758] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_parenthesized_expression, 3), + [760] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_if_expression, 4, .production_id = 86), + [762] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_if_expression, 4, .production_id = 86), + [764] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_type_arguments, 5), + [766] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_type_arguments, 5), + [768] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_unit_expression, 2), + [770] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_unit_expression, 2), + [772] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_initializer_list, 3), + [774] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_initializer_list, 3), + [776] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_block, 2), + [778] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_block, 2), + [780] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_call_expression, 4, .production_id = 9), + [782] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_call_expression, 4, .production_id = 9), + [784] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_index_expression, 4), + [786] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_index_expression, 4), + [788] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_return_expression, 2), + [790] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_return_expression, 2), + [792] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_call_expression, 6, .production_id = 97), + [794] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_call_expression, 6, .production_id = 97), + [796] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_unary_expression, 2), + [798] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_unary_expression, 2), + [800] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_scoped_identifier, 3, .production_id = 27), + [802] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_identifier, 3, .production_id = 27), + [804] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_struct_expression, 2, .production_id = 55), + [806] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_struct_expression, 2, .production_id = 55), + [808] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_call_expression, 6, .production_id = 105), + [810] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_call_expression, 6, .production_id = 105), + [812] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_call_expression, 6, .production_id = 104), + [814] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_call_expression, 6, .production_id = 104), + [816] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_struct_expression, 2, .production_id = 56), + [818] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_struct_expression, 2, .production_id = 56), + [820] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_call_expression, 8, .production_id = 108), + [822] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_call_expression, 8, .production_id = 108), + [824] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_call_expression, 8, .production_id = 109), + [826] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_call_expression, 8, .production_id = 109), + [828] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_loop_expression, 2, .production_id = 57), + [830] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_loop_expression, 2, .production_id = 57), + [832] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean, 1), + [834] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean, 1), + [836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1801), + [838] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_call_expression, 6, .production_id = 9), + [840] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_call_expression, 6, .production_id = 9), + [842] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_call_expression, 8, .production_id = 110), + [844] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_call_expression, 8, .production_id = 110), + [846] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_expression, 1, .production_id = 4), + [848] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_expression, 1, .production_id = 4), + [850] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_call_expression, 8, .production_id = 112), + [852] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_call_expression, 8, .production_id = 112), + [854] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_block, 4), + [856] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_block, 4), + [858] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_call_expression, 3, .production_id = 9), + [860] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_call_expression, 3, .production_id = 9), + [862] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_assignment_expression, 3, .production_id = 76), + [864] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_assignment_expression, 3, .production_id = 76), + [866] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_expression, 1, .production_id = 32), + [868] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_expression, 1, .production_id = 32), + [870] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_expression, 1, .production_id = 33), + [872] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_expression, 1, .production_id = 33), + [874] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_binary_expression, 3, .production_id = 20), + [876] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_binary_expression, 3, .production_id = 20), + [878] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_expression, 1, .production_id = 34), + [880] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_expression, 1, .production_id = 34), + [882] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_expression, 1, .production_id = 3), + [884] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_expression, 1, .production_id = 3), + [886] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_expression, 1, .production_id = 35), + [888] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_expression, 1, .production_id = 35), + [890] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_initializer_list, 5), + [892] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_initializer_list, 5), + [894] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_scoped_identifier, 2, .production_id = 14), + [896] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_identifier, 2, .production_id = 14), + [898] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_compound_assignment_expression, 3, .production_id = 20), + [900] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_compound_assignment_expression, 3, .production_id = 20), + [902] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_tuple_expression, 6), + [904] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_tuple_expression, 6), + [906] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_call_expression, 9, .production_id = 112), + [908] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_call_expression, 9, .production_id = 112), + [910] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_field_expression, 3, .production_id = 77), + [912] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_field_expression, 3, .production_id = 77), + [914] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_expression_statement, 1), + [916] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_expression_statement, 1), + [918] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347), + [920] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_expression, 1, .production_id = 36), + [922] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_expression, 1, .production_id = 36), + [924] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1664), + [926] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_type_arguments, 3), + [928] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_type_arguments, 3), + [930] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_expression, 1, .production_id = 37), + [932] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_expression, 1, .production_id = 37), + [934] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_generic_function, 3, .production_id = 78), + [936] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_generic_function, 3, .production_id = 78), + [938] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1334), + [940] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_call_expression, 5, .production_id = 97), + [942] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_call_expression, 5, .production_id = 97), + [944] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_call_expression, 5, .production_id = 9), + [946] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_call_expression, 5, .production_id = 9), + [948] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_block, 3), + [950] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_block, 3), + [952] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_initializer_list, 4), + [954] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_initializer_list, 4), + [956] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_else_clause, 2, .production_id = 95), + [958] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_else_clause, 2, .production_id = 95), + [960] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_else_clause, 2), + [962] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_else_clause, 2), + [964] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_scoped_identifier, 3, .production_id = 30), + [966] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_identifier, 3, .production_id = 30), + [968] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_tuple_expression, 5), + [970] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_tuple_expression, 5), + [972] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_try_expression, 2), + [974] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_try_expression, 2), + [976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), + [978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1944), + [980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(446), + [982] = {.entry = {.count = 1, .reusable = false}}, SHIFT(518), + [984] = {.entry = {.count = 1, .reusable = true}}, SHIFT(462), + [986] = {.entry = {.count = 1, .reusable = false}}, SHIFT(267), + [988] = {.entry = {.count = 1, .reusable = false}}, SHIFT(210), + [990] = {.entry = {.count = 1, .reusable = true}}, SHIFT(429), + [992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), + [994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), + [996] = {.entry = {.count = 1, .reusable = true}}, SHIFT(471), + [998] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), + [1000] = {.entry = {.count = 1, .reusable = true}}, SHIFT(442), + [1002] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), + [1004] = {.entry = {.count = 1, .reusable = true}}, SHIFT(443), + [1006] = {.entry = {.count = 1, .reusable = true}}, SHIFT(469), + [1008] = {.entry = {.count = 1, .reusable = true}}, SHIFT(476), + [1010] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), + [1012] = {.entry = {.count = 1, .reusable = true}}, SHIFT(449), + [1014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130), + [1016] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), + [1018] = {.entry = {.count = 1, .reusable = true}}, SHIFT(457), + [1020] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), + [1022] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131), + [1024] = {.entry = {.count = 1, .reusable = true}}, SHIFT(468), + [1026] = {.entry = {.count = 1, .reusable = false}}, SHIFT(536), + [1028] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135), + [1030] = {.entry = {.count = 1, .reusable = false}}, SHIFT(277), + [1032] = {.entry = {.count = 1, .reusable = false}}, SHIFT(218), + [1034] = {.entry = {.count = 1, .reusable = false}}, SHIFT(530), + [1036] = {.entry = {.count = 1, .reusable = true}}, SHIFT(452), + [1038] = {.entry = {.count = 1, .reusable = false}}, SHIFT(260), + [1040] = {.entry = {.count = 1, .reusable = false}}, SHIFT(211), + [1042] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), + [1044] = {.entry = {.count = 1, .reusable = true}}, SHIFT(487), + [1046] = {.entry = {.count = 1, .reusable = true}}, SHIFT(466), + [1048] = {.entry = {.count = 1, .reusable = true}}, SHIFT(150), + [1050] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), + [1052] = {.entry = {.count = 1, .reusable = true}}, SHIFT(460), + [1054] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__cairo_1_tuple_expression_repeat1, 2), SHIFT_REPEAT(404), + [1057] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__cairo_1_tuple_expression_repeat1, 2), SHIFT_REPEAT(175), + [1060] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__cairo_1_tuple_expression_repeat1, 2), + [1062] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__cairo_1_tuple_expression_repeat1, 2), SHIFT_REPEAT(249), + [1065] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__cairo_1_tuple_expression_repeat1, 2), SHIFT_REPEAT(13), + [1068] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__cairo_1_tuple_expression_repeat1, 2), SHIFT_REPEAT(248), + [1071] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__cairo_1_tuple_expression_repeat1, 2), SHIFT_REPEAT(3), + [1074] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__cairo_1_tuple_expression_repeat1, 2), SHIFT_REPEAT(239), + [1077] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__cairo_1_tuple_expression_repeat1, 2), SHIFT_REPEAT(239), + [1080] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__cairo_1_tuple_expression_repeat1, 2), SHIFT_REPEAT(450), + [1083] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__cairo_1_tuple_expression_repeat1, 2), SHIFT_REPEAT(1798), + [1086] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__cairo_1_tuple_expression_repeat1, 2), SHIFT_REPEAT(402), + [1089] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__cairo_1_tuple_expression_repeat1, 2), SHIFT_REPEAT(238), + [1092] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__cairo_1_tuple_expression_repeat1, 2), SHIFT_REPEAT(1716), + [1095] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__cairo_1_tuple_expression_repeat1, 2), SHIFT_REPEAT(445), + [1098] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__cairo_1_tuple_expression_repeat1, 2), SHIFT_REPEAT(423), + [1101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), + [1103] = {.entry = {.count = 1, .reusable = false}}, SHIFT(529), + [1105] = {.entry = {.count = 1, .reusable = false}}, SHIFT(232), + [1107] = {.entry = {.count = 1, .reusable = false}}, SHIFT(501), + [1109] = {.entry = {.count = 1, .reusable = false}}, SHIFT(270), + [1111] = {.entry = {.count = 1, .reusable = false}}, SHIFT(527), + [1113] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1737), + [1115] = {.entry = {.count = 1, .reusable = false}}, SHIFT(506), + [1117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1929), + [1119] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1266), + [1121] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1913), + [1123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1878), + [1125] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1936), + [1127] = {.entry = {.count = 1, .reusable = false}}, SHIFT(537), + [1129] = {.entry = {.count = 1, .reusable = false}}, SHIFT(245), + [1131] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), + [1133] = {.entry = {.count = 1, .reusable = false}}, SHIFT(230), + [1135] = {.entry = {.count = 1, .reusable = false}}, SHIFT(283), + [1137] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_arm, 4, .production_id = 107), + [1139] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_arm, 4, .production_id = 107), + [1141] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_arm, 3, .production_id = 101), + [1143] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_arm, 3, .production_id = 101), + [1145] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_arm, 3, .production_id = 102), + [1147] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_arm, 3, .production_id = 102), + [1149] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_arm, 4, .production_id = 58), + [1151] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_arm, 4, .production_id = 58), + [1153] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 5, .production_id = 63), + [1155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 5, .production_id = 63), + [1157] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_function_signature, 8), + [1159] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_function_signature, 8), + [1161] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_statement, 1, .production_id = 5), + [1163] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_statement, 1, .production_id = 5), + [1165] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_item, 6, .production_id = 81), + [1167] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_item, 6, .production_id = 81), + [1169] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute_item, 4), + [1171] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_item, 4), + [1173] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_function_signature, 9, .production_id = 106), + [1175] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_function_signature, 9, .production_id = 106), + [1177] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_function_signature, 9, .production_id = 98), + [1179] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_function_signature, 9, .production_id = 98), + [1181] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 3, .production_id = 12), + [1183] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 3, .production_id = 12), + [1185] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_extern_type_statement, 4, .production_id = 42), + [1187] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_extern_type_statement, 4, .production_id = 42), + [1189] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_variant_list, 3), + [1191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_variant_list, 3), + [1193] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_function_signature, 6), + [1195] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_function_signature, 6), + [1197] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 3, .production_id = 11), + [1199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 3, .production_id = 11), + [1201] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_item, 3, .production_id = 12), + [1203] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_item, 3, .production_id = 12), + [1205] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration_list, 5), + [1207] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration_list, 5), + [1209] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_mod_item, 3, .production_id = 19), + [1211] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_mod_item, 3, .production_id = 19), + [1213] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_item, 5, .production_id = 62), + [1215] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_item, 5, .production_id = 62), + [1217] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_variant_list, 7), + [1219] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_variant_list, 7), + [1221] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_variant_list, 4), + [1223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_variant_list, 4), + [1225] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 6, .production_id = 73), + [1227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 6, .production_id = 73), + [1229] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_mod_item, 3, .production_id = 14), + [1231] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_mod_item, 3, .production_id = 14), + [1233] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_function_signature, 5), + [1235] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_function_signature, 5), + [1237] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_function_definition, 4, .production_id = 43), + [1239] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_function_definition, 4, .production_id = 43), + [1241] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_extern_function_statement, 5, .production_id = 61), + [1243] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_extern_function_statement, 5, .production_id = 61), + [1245] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_use_declaration, 3, .production_id = 18), + [1247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_declaration, 3, .production_id = 18), + [1249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 4, .production_id = 23), + [1251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 4, .production_id = 23), + [1253] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 4, .production_id = 24), + [1255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 4, .production_id = 24), + [1257] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_function_signature, 10, .production_id = 106), + [1259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_function_signature, 10, .production_id = 106), + [1261] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_function_signature, 10, .production_id = 111), + [1263] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_function_signature, 10, .production_id = 111), + [1265] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 5, .production_id = 58), + [1267] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 5, .production_id = 58), + [1269] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration_list, 4), + [1271] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration_list, 4), + [1273] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_expression_statement, 2), + [1275] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_expression_statement, 2), + [1277] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_const_item, 5, .production_id = 60), + [1279] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_item, 5, .production_id = 60), + [1281] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration_list, 2), + [1283] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration_list, 2), + [1285] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_extern_type_statement, 5, .production_id = 42), + [1287] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_extern_type_statement, 5, .production_id = 42), + [1289] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_function_signature, 10), + [1291] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_function_signature, 10), + [1293] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 5, .production_id = 59), + [1295] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 5, .production_id = 59), + [1297] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 3, .production_id = 15), + [1299] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 3, .production_id = 15), + [1301] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 8, .production_id = 94), + [1303] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 8, .production_id = 94), + [1305] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_declaration_list, 3), + [1307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_declaration_list, 3), + [1309] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 4, .production_id = 29), + [1311] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 4, .production_id = 29), + [1313] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute_item, 4, .production_id = 44), + [1315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_item, 4, .production_id = 44), + [1317] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_function_signature, 8, .production_id = 89), + [1319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_function_signature, 8, .production_id = 89), + [1321] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration_list, 3), + [1323] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration_list, 3), + [1325] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute_item, 5, .production_id = 44), + [1327] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_item, 5, .production_id = 44), + [1329] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 7, .production_id = 87), + [1331] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 7, .production_id = 87), + [1333] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_const_item, 7, .production_id = 88), + [1335] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_item, 7, .production_id = 88), + [1337] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_function_signature, 9), + [1339] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_function_signature, 9), + [1341] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_declaration_list, 2), + [1343] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_declaration_list, 2), + [1345] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_function_signature, 8, .production_id = 98), + [1347] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_function_signature, 8, .production_id = 98), + [1349] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 5, .production_id = 64), + [1351] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 5, .production_id = 64), + [1353] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration_list, 6), + [1355] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration_list, 6), + [1357] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_extern_function_statement, 6, .production_id = 80), + [1359] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_extern_function_statement, 6, .production_id = 80), + [1361] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute_item, 5), + [1363] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_item, 5), + [1365] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_function_definition, 5, .production_id = 61), + [1367] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_function_definition, 5, .production_id = 61), + [1369] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_impl_item, 5), + [1371] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_impl_item, 5), + [1373] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_field_declaration_list, 7), + [1375] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration_list, 7), + [1377] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_function_signature, 11, .production_id = 111), + [1379] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_function_signature, 11, .production_id = 111), + [1381] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_function_signature, 12, .production_id = 113), + [1383] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_function_signature, 12, .production_id = 113), + [1385] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 4, .production_id = 24), + [1387] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 4, .production_id = 24), + [1389] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_function_signature, 11, .production_id = 113), + [1391] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_function_signature, 11, .production_id = 113), + [1393] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 4, .production_id = 23), + [1395] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 4, .production_id = 23), + [1397] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_declaration, 6, .production_id = 72), + [1399] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_declaration, 6, .production_id = 72), + [1401] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_variant_list, 5), + [1403] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_variant_list, 5), + [1405] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_function_signature, 7, .production_id = 89), + [1407] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_function_signature, 7, .production_id = 89), + [1409] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_variant_list, 2), + [1411] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_variant_list, 2), + [1413] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_1_function_signature, 7), + [1415] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_function_signature, 7), + [1417] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 3, .production_id = 12), + [1419] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 3, .production_id = 12), + [1421] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_item, 3, .production_id = 11), + [1423] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_item, 3, .production_id = 11), + [1425] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 4, .production_id = 48), + [1427] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 4, .production_id = 48), + [1429] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_variant_list, 6), + [1431] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_variant_list, 6), + [1433] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_trait_item, 4, .production_id = 47), + [1435] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_item, 4, .production_id = 47), + [1437] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_enum_item, 4, .production_id = 24), + [1439] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_item, 4, .production_id = 24), + [1441] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1094), + [1443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(389), + [1445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1217), + [1447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(737), + [1449] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1123), + [1451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1249), + [1453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1830), + [1455] = {.entry = {.count = 1, .reusable = false}}, SHIFT(796), + [1457] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1087), + [1459] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1826), + [1461] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_field_declaration_list, 2), REDUCE(sym__cairo_0_struct_definition, 4), + [1464] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_struct_definition, 4), + [1466] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_struct_definition, 4), + [1468] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_field_declaration_list, 2), REDUCE(sym__cairo_0_struct_definition, 4), + [1471] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1049), + [1473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(608), + [1475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), + [1477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1104), + [1479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1895), + [1481] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1081), + [1483] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1104), + [1485] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1894), + [1487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306), + [1489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(490), + [1491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1298), + [1493] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_enum_variant_list_repeat1, 2), + [1495] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_enum_variant_list_repeat1, 2), + [1497] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_enum_variant_list_repeat1, 2), SHIFT_REPEAT(1944), + [1500] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_dotted_name_repeat1, 2), + [1502] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dotted_name_repeat1, 2), + [1504] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dotted_name_repeat1, 2), SHIFT_REPEAT(1788), + [1507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1090), + [1509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1741), + [1511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1479), + [1513] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dotted_name, 1), + [1515] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 1), + [1517] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1788), + [1519] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dotted_name, 2), + [1521] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 2), + [1523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1810), + [1525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1482), + [1527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1615), + [1529] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generic_type_with_turbofish, 3, .production_id = 13), + [1531] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dotted_name_repeat1, 2), SHIFT_REPEAT(1810), + [1534] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__import_list, 1, .production_id = 22), + [1536] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 1, .production_id = 22), + [1538] = {.entry = {.count = 1, .reusable = true}}, SHIFT(499), + [1540] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1797), + [1542] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_block_repeat1, 2), SHIFT_REPEAT(1049), + [1545] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_block_repeat1, 2), SHIFT_REPEAT(608), + [1548] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_block_repeat1, 2), SHIFT_REPEAT(1104), + [1551] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_block_repeat1, 2), SHIFT_REPEAT(1895), + [1554] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_block_repeat1, 2), SHIFT_REPEAT(1944), + [1557] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_block_repeat1, 2), SHIFT_REPEAT(1081), + [1560] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_block_repeat1, 2), SHIFT_REPEAT(1104), + [1563] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_block_repeat1, 2), SHIFT_REPEAT(1894), + [1566] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1833), + [1568] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generic_type_with_turbofish, 3, .production_id = 16), + [1570] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1054), + [1572] = {.entry = {.count = 1, .reusable = true}}, SHIFT(655), + [1574] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), + [1576] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1585), + [1578] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1071), + [1580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), + [1582] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219), + [1584] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1779), + [1586] = {.entry = {.count = 1, .reusable = true}}, SHIFT(416), + [1588] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1058), + [1590] = {.entry = {.count = 1, .reusable = true}}, SHIFT(517), + [1592] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1758), + [1594] = {.entry = {.count = 1, .reusable = false}}, SHIFT(405), + [1596] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__import_list, 3, .production_id = 49), + [1598] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 3, .production_id = 49), + [1600] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 66), + [1602] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 66), + [1604] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 66), SHIFT_REPEAT(1365), + [1607] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 14), + [1609] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 14), + [1611] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), + [1613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), + [1615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(409), + [1617] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__import_list, 2, .production_id = 49), + [1619] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, .production_id = 49), + [1621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(475), + [1623] = {.entry = {.count = 1, .reusable = true}}, SHIFT(478), + [1625] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__import_list, 2, .production_id = 22), + [1627] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, .production_id = 22), + [1629] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1474), + [1631] = {.entry = {.count = 1, .reusable = false}}, SHIFT(264), + [1633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1483), + [1635] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_if_statement, 7), + [1637] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_if_statement, 7), + [1639] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1907), + [1641] = {.entry = {.count = 1, .reusable = false}}, SHIFT(299), + [1643] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_aliased_import, 3, .production_id = 67), + [1645] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aliased_import, 3, .production_id = 67), + [1647] = {.entry = {.count = 1, .reusable = false}}, SHIFT(253), + [1649] = {.entry = {.count = 1, .reusable = false}}, SHIFT(272), + [1651] = {.entry = {.count = 1, .reusable = false}}, SHIFT(275), + [1653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(280), + [1655] = {.entry = {.count = 1, .reusable = false}}, SHIFT(269), + [1657] = {.entry = {.count = 1, .reusable = false}}, SHIFT(246), + [1659] = {.entry = {.count = 1, .reusable = false}}, SHIFT(280), + [1661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224), + [1663] = {.entry = {.count = 1, .reusable = false}}, SHIFT(273), + [1665] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__cairo_1_tuple_expression_repeat1, 2), + [1667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(538), + [1669] = {.entry = {.count = 1, .reusable = true}}, SHIFT(533), + [1671] = {.entry = {.count = 1, .reusable = false}}, SHIFT(420), + [1673] = {.entry = {.count = 1, .reusable = false}}, SHIFT(233), + [1675] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1116), + [1677] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1531), + [1679] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1844), + [1681] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1896), + [1683] = {.entry = {.count = 1, .reusable = false}}, SHIFT(539), + [1685] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_builtin_directive, 2), + [1687] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_builtin_directive, 2), + [1689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(268), + [1691] = {.entry = {.count = 1, .reusable = false}}, SHIFT(296), + [1693] = {.entry = {.count = 1, .reusable = false}}, SHIFT(290), + [1695] = {.entry = {.count = 1, .reusable = false}}, SHIFT(265), + [1697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1534), + [1699] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 66), SHIFT_REPEAT(1508), + [1702] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1100), + [1704] = {.entry = {.count = 1, .reusable = true}}, SHIFT(520), + [1706] = {.entry = {.count = 1, .reusable = false}}, SHIFT(717), + [1708] = {.entry = {.count = 1, .reusable = false}}, SHIFT(276), + [1710] = {.entry = {.count = 1, .reusable = false}}, SHIFT(234), + [1712] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_builtin_directive_repeat1, 2), SHIFT_REPEAT(539), + [1715] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_builtin_directive_repeat1, 2), + [1717] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_builtin_directive_repeat1, 2), + [1719] = {.entry = {.count = 1, .reusable = false}}, SHIFT(278), + [1721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(243), + [1723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(491), + [1725] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_if_statement, 6), + [1727] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_if_statement, 6), + [1729] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1902), + [1731] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_function_definition, 7, .production_id = 84), + [1733] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_function_definition, 7, .production_id = 84), + [1735] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_function_definition, 9, .production_id = 92), + [1737] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_function_definition, 9, .production_id = 92), + [1739] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_namespace_definition, 5), + [1741] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_namespace_definition, 5), + [1743] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1875), + [1745] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_struct_definition, 5), + [1747] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_struct_definition, 5), + [1749] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_const_var_declaration, 5), + [1751] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_const_var_declaration, 5), + [1753] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_definition, 5, .production_id = 50), + [1755] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_definition, 5, .production_id = 50), + [1757] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_label, 3), + [1759] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_label, 3), + [1761] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_function_definition, 5), + [1763] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_function_definition, 5), + [1765] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_assert_statement, 5), + [1767] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_assert_statement, 5), + [1769] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_return_statement, 3), + [1771] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_return_statement, 3), + [1773] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_function_definition, 6), + [1775] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_function_definition, 6), + [1777] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_static_assert_statement, 5), + [1779] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_static_assert_statement, 5), + [1781] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_temp_var_declaration, 3), + [1783] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_temp_var_declaration, 3), + [1785] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_struct_definition, 6), + [1787] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_struct_definition, 6), + [1789] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_import_statement, 6, .production_id = 65), + [1791] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_import_statement, 6, .production_id = 65), + [1793] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_local_var_declaration, 3), + [1795] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_local_var_declaration, 3), + [1797] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_local_var_declaration, 5), + [1799] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_local_var_declaration, 5), + [1801] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_temp_var_declaration, 5), + [1803] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_temp_var_declaration, 5), + [1805] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_if_statement, 10), + [1807] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_if_statement, 10), + [1809] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_function_definition, 7), + [1811] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_function_definition, 7), + [1813] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hint, 2), + [1815] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hint, 2), + [1817] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hint, 3), + [1819] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hint, 3), + [1821] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_import_statement, 4, .production_id = 21), + [1823] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_import_statement, 4, .production_id = 21), + [1825] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_if_statement, 11), + [1827] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_if_statement, 11), + [1829] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_decorated_definition, 2, .production_id = 10), + [1831] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_decorated_definition, 2, .production_id = 10), + [1833] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_let_binding, 5, .production_id = 54), + [1835] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_let_binding, 5, .production_id = 54), + [1837] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_with_statement, 4), + [1839] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_with_statement, 4), + [1841] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_instruction, 5), + [1843] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_instruction, 5), + [1845] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_statement, 1, .production_id = 1), + [1847] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_statement, 1, .production_id = 1), + [1849] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_function_definition, 8, .production_id = 92), + [1851] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_function_definition, 8, .production_id = 92), + [1853] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_expression_statement, 2), + [1855] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_expression_statement, 2), + [1857] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_struct_definition, 7), + [1859] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_struct_definition, 7), + [1861] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_function_definition, 8, .production_id = 84), + [1863] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_function_definition, 8, .production_id = 84), + [1865] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_namespace_definition, 4), + [1867] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_namespace_definition, 4), + [1869] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_if_statement, 9), + [1871] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_if_statement, 9), + [1873] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_with_statement, 6), + [1875] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_with_statement, 6), + [1877] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_statement, 1), + [1879] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_statement, 1), + [1881] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_attribute_statement, 6), + [1883] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_attribute_statement, 6), + [1885] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_statement, 1, .production_id = 2), + [1887] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_statement, 1, .production_id = 2), + [1889] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_builtin_directive_repeat1, 2), SHIFT_REPEAT(584), + [1892] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_with_statement, 5), + [1894] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_with_statement, 5), + [1896] = {.entry = {.count = 1, .reusable = false}}, SHIFT(584), + [1898] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1824), + [1900] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_statement, 1, .production_id = 3), + [1902] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_statement, 1, .production_id = 3), + [1904] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_attribute_statement, 4), + [1906] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_attribute_statement, 4), + [1908] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_attribute_statement, 5), + [1910] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_attribute_statement, 5), + [1912] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_attribute_statement, 7), + [1914] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_attribute_statement, 7), + [1916] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_variant, 2, .production_id = 22), + [1918] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293), + [1920] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_lang_directive, 2), + [1922] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lang_directive, 2), + [1924] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_alloc_locals, 2), + [1926] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_alloc_locals, 2), + [1928] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_instruction, 2), + [1930] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_instruction, 2), + [1932] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_attribute_statement, 8), + [1934] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_attribute_statement, 8), + [1936] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1113), + [1938] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1839), + [1940] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1099), + [1942] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1767), + [1944] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1112), + [1946] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1840), + [1948] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1121), + [1950] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1118), + [1952] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1747), + [1954] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1128), + [1956] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1865), + [1958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1092), + [1960] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__cairo_1_expression, 1), SHIFT(1090), + [1963] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__cairo_1_expression, 1, .production_id = 6), SHIFT(1090), + [1966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(454), + [1968] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), + [1970] = {.entry = {.count = 1, .reusable = false}}, SHIFT(719), + [1972] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1078), + [1974] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), + [1976] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), + [1978] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), + [1980] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182), + [1982] = {.entry = {.count = 1, .reusable = true}}, SHIFT(494), + [1984] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), + [1986] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), + [1988] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), + [1990] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195), + [1992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), + [1994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), + [1996] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1849), + [1998] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), + [2000] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1077), + [2002] = {.entry = {.count = 1, .reusable = true}}, SHIFT(484), + [2004] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), + [2006] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), + [2008] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), + [2010] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), + [2012] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), + [2014] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_initializer, 4, .production_id = 100), + [2016] = {.entry = {.count = 1, .reusable = true}}, SHIFT(791), + [2018] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_last_match_arm, 3, .production_id = 101), + [2020] = {.entry = {.count = 1, .reusable = false}}, SHIFT(258), + [2022] = {.entry = {.count = 1, .reusable = true}}, SHIFT(394), + [2024] = {.entry = {.count = 1, .reusable = true}}, SHIFT(257), + [2026] = {.entry = {.count = 1, .reusable = true}}, SHIFT(266), + [2028] = {.entry = {.count = 1, .reusable = false}}, SHIFT(221), + [2030] = {.entry = {.count = 1, .reusable = false}}, SHIFT(222), + [2032] = {.entry = {.count = 1, .reusable = false}}, SHIFT(229), + [2034] = {.entry = {.count = 1, .reusable = false}}, SHIFT(257), + [2036] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237), + [2038] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240), + [2040] = {.entry = {.count = 1, .reusable = false}}, SHIFT(241), + [2042] = {.entry = {.count = 1, .reusable = false}}, SHIFT(261), + [2044] = {.entry = {.count = 1, .reusable = false}}, SHIFT(262), + [2046] = {.entry = {.count = 1, .reusable = true}}, SHIFT(513), + [2048] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__cairo_1_call_expression_repeat1, 3), + [2050] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_initializer, 3, .production_id = 96), + [2052] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__cairo_1_call_expression_repeat1, 5, .production_id = 42), + [2054] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1300), + [2056] = {.entry = {.count = 1, .reusable = true}}, SHIFT(748), + [2058] = {.entry = {.count = 1, .reusable = false}}, SHIFT(794), + [2060] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1608), + [2062] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_attribute_arguments_repeat1, 4), + [2064] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__cairo_1_call_expression_repeat1, 4), + [2066] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_base_field_initializer, 2), + [2068] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__cairo_1_call_expression_repeat1, 4, .production_id = 14), + [2070] = {.entry = {.count = 1, .reusable = true}}, SHIFT(434), + [2072] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__cairo_1_call_expression_repeat1, 2), + [2074] = {.entry = {.count = 1, .reusable = true}}, SHIFT(792), + [2076] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_last_match_arm, 4, .production_id = 58), + [2078] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_attribute_arguments_repeat1, 2), + [2080] = {.entry = {.count = 1, .reusable = true}}, SHIFT(395), + [2082] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_variant, 5, .production_id = 99), + [2084] = {.entry = {.count = 1, .reusable = true}}, SHIFT(431), + [2086] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), + [2088] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_variant, 4, .production_id = 91), + [2090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), + [2092] = {.entry = {.count = 1, .reusable = true}}, SHIFT(393), + [2094] = {.entry = {.count = 1, .reusable = true}}, SHIFT(344), + [2096] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1003), + [2098] = {.entry = {.count = 1, .reusable = true}}, SHIFT(362), + [2100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1002), + [2102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), + [2104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(972), + [2106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(496), + [2108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206), + [2110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(378), + [2112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(793), + [2114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(962), + [2116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(361), + [2118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(994), + [2120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), + [2122] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_pattern, 3, .production_id = 103), + [2124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(354), + [2126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(795), + [2128] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1195), + [2130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(784), + [2132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1528), + [2134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1488), + [2136] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1202), + [2138] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1203), + [2140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1493), + [2142] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_cairo_1_file_repeat1, 2), + [2144] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_1_file_repeat1, 2), SHIFT_REPEAT(1855), + [2147] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_1_file_repeat1, 2), SHIFT_REPEAT(654), + [2150] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_1_file_repeat1, 2), SHIFT_REPEAT(1854), + [2153] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_1_file_repeat1, 2), SHIFT_REPEAT(782), + [2156] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_1_file_repeat1, 2), SHIFT_REPEAT(1643), + [2159] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_1_file_repeat1, 2), SHIFT_REPEAT(1911), + [2162] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_1_file_repeat1, 2), SHIFT_REPEAT(1910), + [2165] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_1_file_repeat1, 2), SHIFT_REPEAT(1909), + [2168] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_1_file_repeat1, 2), SHIFT_REPEAT(1908), + [2171] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_1_file_repeat1, 2), SHIFT_REPEAT(1906), + [2174] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_1_file_repeat1, 2), SHIFT_REPEAT(695), + [2177] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_cairo_1_file_repeat1, 2), SHIFT_REPEAT(1905), + [2180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1016), + [2182] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1855), + [2184] = {.entry = {.count = 1, .reusable = true}}, SHIFT(654), + [2186] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1854), + [2188] = {.entry = {.count = 1, .reusable = true}}, SHIFT(782), + [2190] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1643), + [2192] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1911), + [2194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1910), + [2196] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1908), + [2198] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1906), + [2200] = {.entry = {.count = 1, .reusable = true}}, SHIFT(695), + [2202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1905), + [2204] = {.entry = {.count = 1, .reusable = true}}, SHIFT(961), + [2206] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cairo_1_file, 1), + [2208] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355), + [2210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(364), + [2212] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_arm, 4, .production_id = 101), + [2214] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_arm, 4, .production_id = 101), + [2216] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_last_match_arm, 4, .production_id = 101), + [2218] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_arm, 5, .production_id = 58), + [2220] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_arm, 5, .production_id = 58), + [2222] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_last_match_arm, 5, .production_id = 58), + [2224] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1244), + [2226] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1735), + [2228] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1215), + [2230] = {.entry = {.count = 1, .reusable = false}}, SHIFT(938), + [2232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(938), + [2234] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1008), + [2236] = {.entry = {.count = 1, .reusable = true}}, SHIFT(805), + [2238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1856), + [2240] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1600), + [2242] = {.entry = {.count = 1, .reusable = false}}, SHIFT(887), + [2244] = {.entry = {.count = 1, .reusable = true}}, SHIFT(844), + [2246] = {.entry = {.count = 1, .reusable = false}}, SHIFT(844), + [2248] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1008), + [2250] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1579), + [2252] = {.entry = {.count = 1, .reusable = true}}, SHIFT(814), + [2254] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1952), + [2256] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1800), + [2258] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1582), + [2260] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1898), + [2262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1703), + [2264] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1886), + [2266] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1677), + [2268] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1851), + [2270] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1597), + [2272] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1786), + [2274] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1602), + [2276] = {.entry = {.count = 1, .reusable = false}}, SHIFT(925), + [2278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(925), + [2280] = {.entry = {.count = 1, .reusable = false}}, SHIFT(914), + [2282] = {.entry = {.count = 1, .reusable = true}}, SHIFT(892), + [2284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(914), + [2286] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1268), + [2288] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1275), + [2290] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1276), + [2292] = {.entry = {.count = 1, .reusable = false}}, SHIFT(942), + [2294] = {.entry = {.count = 1, .reusable = true}}, SHIFT(889), + [2296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(942), + [2298] = {.entry = {.count = 1, .reusable = true}}, SHIFT(935), + [2300] = {.entry = {.count = 1, .reusable = true}}, SHIFT(926), + [2302] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1251), + [2304] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1252), + [2306] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1255), + [2308] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1262), + [2310] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1261), + [2312] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1260), + [2314] = {.entry = {.count = 1, .reusable = true}}, SHIFT(930), + [2316] = {.entry = {.count = 1, .reusable = false}}, SHIFT(905), + [2318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(903), + [2320] = {.entry = {.count = 1, .reusable = true}}, SHIFT(905), + [2322] = {.entry = {.count = 1, .reusable = false}}, SHIFT(957), + [2324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(957), + [2326] = {.entry = {.count = 1, .reusable = false}}, SHIFT(867), + [2328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(867), + [2330] = {.entry = {.count = 1, .reusable = false}}, SHIFT(868), + [2332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(868), + [2334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(940), + [2336] = {.entry = {.count = 1, .reusable = false}}, SHIFT(950), + [2338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(950), + [2340] = {.entry = {.count = 1, .reusable = false}}, SHIFT(874), + [2342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(874), + [2344] = {.entry = {.count = 1, .reusable = false}}, SHIFT(899), + [2346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(899), + [2348] = {.entry = {.count = 1, .reusable = false}}, SHIFT(934), + [2350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(934), + [2352] = {.entry = {.count = 1, .reusable = false}}, SHIFT(880), + [2354] = {.entry = {.count = 1, .reusable = true}}, SHIFT(880), + [2356] = {.entry = {.count = 1, .reusable = false}}, SHIFT(902), + [2358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(902), + [2360] = {.entry = {.count = 1, .reusable = false}}, SHIFT(927), + [2362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(927), + [2364] = {.entry = {.count = 1, .reusable = false}}, SHIFT(956), + [2366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(956), + [2368] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1013), + [2370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1013), + [2372] = {.entry = {.count = 1, .reusable = false}}, SHIFT(937), + [2374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(937), + [2376] = {.entry = {.count = 1, .reusable = false}}, SHIFT(966), + [2378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(966), + [2380] = {.entry = {.count = 1, .reusable = false}}, SHIFT(885), + [2382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(885), + [2384] = {.entry = {.count = 1, .reusable = false}}, SHIFT(881), + [2386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(881), + [2388] = {.entry = {.count = 1, .reusable = false}}, SHIFT(878), + [2390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(878), + [2392] = {.entry = {.count = 1, .reusable = false}}, SHIFT(911), + [2394] = {.entry = {.count = 1, .reusable = true}}, SHIFT(911), + [2396] = {.entry = {.count = 1, .reusable = false}}, SHIFT(870), + [2398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(870), + [2400] = {.entry = {.count = 1, .reusable = false}}, SHIFT(958), + [2402] = {.entry = {.count = 1, .reusable = true}}, SHIFT(958), + [2404] = {.entry = {.count = 1, .reusable = false}}, SHIFT(920), + [2406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(920), + [2408] = {.entry = {.count = 1, .reusable = false}}, SHIFT(886), + [2410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(886), + [2412] = {.entry = {.count = 1, .reusable = false}}, SHIFT(869), + [2414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(869), + [2416] = {.entry = {.count = 1, .reusable = false}}, SHIFT(932), + [2418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(932), + [2420] = {.entry = {.count = 1, .reusable = false}}, SHIFT(871), + [2422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(871), + [2424] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1022), + [2426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1022), + [2428] = {.entry = {.count = 1, .reusable = false}}, SHIFT(883), + [2430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(883), + [2432] = {.entry = {.count = 1, .reusable = false}}, SHIFT(866), + [2434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(866), + [2436] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1021), + [2438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1021), + [2440] = {.entry = {.count = 1, .reusable = false}}, SHIFT(877), + [2442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(877), + [2444] = {.entry = {.count = 1, .reusable = false}}, SHIFT(901), + [2446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(901), + [2448] = {.entry = {.count = 1, .reusable = false}}, SHIFT(954), + [2450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(954), + [2452] = {.entry = {.count = 1, .reusable = false}}, SHIFT(983), + [2454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(983), + [2456] = {.entry = {.count = 1, .reusable = false}}, SHIFT(904), + [2458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(904), + [2460] = {.entry = {.count = 1, .reusable = true}}, SHIFT(947), + [2462] = {.entry = {.count = 1, .reusable = false}}, SHIFT(986), + [2464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(986), + [2466] = {.entry = {.count = 1, .reusable = false}}, SHIFT(891), + [2468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(891), + [2470] = {.entry = {.count = 1, .reusable = false}}, SHIFT(953), + [2472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(953), + [2474] = {.entry = {.count = 1, .reusable = false}}, SHIFT(864), + [2476] = {.entry = {.count = 1, .reusable = true}}, SHIFT(864), + [2478] = {.entry = {.count = 1, .reusable = false}}, SHIFT(952), + [2480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(952), + [2482] = {.entry = {.count = 1, .reusable = false}}, SHIFT(929), + [2484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(929), + [2486] = {.entry = {.count = 1, .reusable = false}}, SHIFT(928), + [2488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(928), + [2490] = {.entry = {.count = 1, .reusable = false}}, SHIFT(872), + [2492] = {.entry = {.count = 1, .reusable = true}}, SHIFT(872), + [2494] = {.entry = {.count = 1, .reusable = false}}, SHIFT(951), + [2496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(951), + [2498] = {.entry = {.count = 1, .reusable = false}}, SHIFT(879), + [2500] = {.entry = {.count = 1, .reusable = true}}, SHIFT(879), + [2502] = {.entry = {.count = 1, .reusable = false}}, SHIFT(873), + [2504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(873), + [2506] = {.entry = {.count = 1, .reusable = false}}, SHIFT(865), + [2508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(865), + [2510] = {.entry = {.count = 1, .reusable = false}}, SHIFT(813), + [2512] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_expression, 3, .production_id = 20), + [2514] = {.entry = {.count = 1, .reusable = false}}, SHIFT(803), + [2516] = {.entry = {.count = 1, .reusable = false}}, SHIFT(819), + [2518] = {.entry = {.count = 1, .reusable = false}}, SHIFT(863), + [2520] = {.entry = {.count = 1, .reusable = false}}, SHIFT(862), + [2522] = {.entry = {.count = 1, .reusable = false}}, SHIFT(861), + [2524] = {.entry = {.count = 1, .reusable = false}}, SHIFT(818), + [2526] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1861), + [2528] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 3, .production_id = 20), + [2530] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(), + [2532] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 2, .production_id = 7), + [2534] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expression, 2, .production_id = 7), + [2536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(798), + [2538] = {.entry = {.count = 1, .reusable = true}}, SHIFT(833), + [2540] = {.entry = {.count = 1, .reusable = true}}, SHIFT(854), + [2542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1813), + [2544] = {.entry = {.count = 1, .reusable = false}}, SHIFT(839), + [2546] = {.entry = {.count = 1, .reusable = true}}, SHIFT(841), + [2548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(817), + [2550] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_inst_jmp_rel, 3), + [2552] = {.entry = {.count = 1, .reusable = false}}, SHIFT(822), + [2554] = {.entry = {.count = 1, .reusable = false}}, SHIFT(826), + [2556] = {.entry = {.count = 1, .reusable = false}}, SHIFT(855), + [2558] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inst_jmp_rel, 3), + [2560] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_expression, 3, .production_id = 20), + [2562] = {.entry = {.count = 1, .reusable = false}}, SHIFT(831), + [2564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(859), + [2566] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment_expression, 3, .production_id = 20), + [2568] = {.entry = {.count = 1, .reusable = false}}, SHIFT(625), + [2570] = {.entry = {.count = 1, .reusable = true}}, SHIFT(625), + [2572] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_hint_expression, 2), + [2574] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_hint_expression, 2), + [2576] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_inst_data_word, 2), + [2578] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inst_data_word, 2), + [2580] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_call_expression, 5, .production_id = 9), + [2582] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_call_expression, 5, .production_id = 9), + [2584] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_inst_jmp_abs, 3), + [2586] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inst_jmp_abs, 3), + [2588] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_inst_add_ap, 3), + [2590] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inst_add_ap, 3), + [2592] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_register, 1), + [2594] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_register, 1), + [2596] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_expression, 1, .production_id = 4), + [2598] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_expression, 1, .production_id = 4), + [2600] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 5), + [2602] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 5), + [2604] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_instruction, 3), + [2606] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_instruction, 3), + [2608] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 2), + [2610] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 2), + [2612] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_deref_expression, 3), + [2614] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_deref_expression, 3), + [2616] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_subscript_expression, 4), + [2618] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_subscript_expression, 4), + [2620] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_call_expression, 8, .production_id = 9), + [2622] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_call_expression, 8, .production_id = 9), + [2624] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_call_expression, 4, .production_id = 9), + [2626] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_call_expression, 4, .production_id = 9), + [2628] = {.entry = {.count = 1, .reusable = false}}, SHIFT(850), + [2630] = {.entry = {.count = 1, .reusable = false}}, SHIFT(632), + [2632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(632), + [2634] = {.entry = {.count = 1, .reusable = false}}, SHIFT(552), + [2636] = {.entry = {.count = 1, .reusable = true}}, SHIFT(552), + [2638] = {.entry = {.count = 1, .reusable = false}}, SHIFT(553), + [2640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(553), + [2642] = {.entry = {.count = 1, .reusable = false}}, SHIFT(548), + [2644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(548), + [2646] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_inst_assert_eq, 3), + [2648] = {.entry = {.count = 1, .reusable = true}}, SHIFT(912), + [2650] = {.entry = {.count = 1, .reusable = true}}, SHIFT(809), + [2652] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_call_expression, 6, .production_id = 9), + [2654] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_call_expression, 6, .production_id = 9), + [2656] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_call_expression, 7, .production_id = 9), + [2658] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_call_expression, 7, .production_id = 9), + [2660] = {.entry = {.count = 1, .reusable = false}}, SHIFT(624), + [2662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(624), + [2664] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 3), + [2666] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 3), + [2668] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_cast_expression, 6, .production_id = 79), + [2670] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_cast_expression, 6, .production_id = 79), + [2672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(939), + [2674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(812), + [2676] = {.entry = {.count = 1, .reusable = false}}, SHIFT(575), + [2678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(575), + [2680] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_call_expression, 2, .production_id = 9), + [2682] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_call_expression, 2, .production_id = 9), + [2684] = {.entry = {.count = 1, .reusable = false}}, SHIFT(623), + [2686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(623), + [2688] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_member_expression, 3), + [2690] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_member_expression, 3), + [2692] = {.entry = {.count = 1, .reusable = false}}, SHIFT(570), + [2694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(570), + [2696] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_expression, 4), + [2698] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_expression, 4), + [2700] = {.entry = {.count = 1, .reusable = false}}, SHIFT(561), + [2702] = {.entry = {.count = 1, .reusable = true}}, SHIFT(561), + [2704] = {.entry = {.count = 1, .reusable = false}}, SHIFT(611), + [2706] = {.entry = {.count = 1, .reusable = true}}, SHIFT(611), + [2708] = {.entry = {.count = 1, .reusable = false}}, SHIFT(609), + [2710] = {.entry = {.count = 1, .reusable = true}}, SHIFT(609), + [2712] = {.entry = {.count = 1, .reusable = false}}, SHIFT(628), + [2714] = {.entry = {.count = 1, .reusable = true}}, SHIFT(628), + [2716] = {.entry = {.count = 1, .reusable = false}}, SHIFT(555), + [2718] = {.entry = {.count = 1, .reusable = true}}, SHIFT(555), + [2720] = {.entry = {.count = 1, .reusable = false}}, SHIFT(562), + [2722] = {.entry = {.count = 1, .reusable = true}}, SHIFT(562), + [2724] = {.entry = {.count = 1, .reusable = false}}, SHIFT(642), + [2726] = {.entry = {.count = 1, .reusable = true}}, SHIFT(642), + [2728] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_expression, 1), + [2730] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_inst_jnz, 7), + [2732] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inst_jnz, 7), + [2734] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 2), + [2736] = {.entry = {.count = 1, .reusable = false}}, SHIFT(837), + [2738] = {.entry = {.count = 1, .reusable = false}}, SHIFT(90), + [2740] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_expression, 1), + [2742] = {.entry = {.count = 1, .reusable = true}}, SHIFT(801), + [2744] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1637), + [2746] = {.entry = {.count = 1, .reusable = false}}, SHIFT(93), + [2748] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_inst_jnz_to_label, 6), + [2750] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inst_jnz_to_label, 6), + [2752] = {.entry = {.count = 1, .reusable = true}}, SHIFT(799), + [2754] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1678), + [2756] = {.entry = {.count = 1, .reusable = true}}, SHIFT(894), + [2758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1051), + [2760] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1867), + [2762] = {.entry = {.count = 1, .reusable = true}}, SHIFT(922), + [2764] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1061), + [2766] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__cairo_0_call_expression_repeat1, 2), + [2768] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1734), + [2770] = {.entry = {.count = 1, .reusable = true}}, SHIFT(931), + [2772] = {.entry = {.count = 1, .reusable = true}}, SHIFT(893), + [2774] = {.entry = {.count = 1, .reusable = true}}, SHIFT(851), + [2776] = {.entry = {.count = 1, .reusable = true}}, SHIFT(857), + [2778] = {.entry = {.count = 1, .reusable = false}}, SHIFT(858), + [2780] = {.entry = {.count = 1, .reusable = true}}, SHIFT(816), + [2782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(821), + [2784] = {.entry = {.count = 1, .reusable = false}}, SHIFT(820), + [2786] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_type, 1), + [2788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1575), + [2790] = {.entry = {.count = 1, .reusable = true}}, SHIFT(500), + [2792] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1124), + [2794] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1039), + [2796] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1125), + [2798] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1189), + [2800] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1111), + [2802] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1219), + [2804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1184), + [2806] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1105), + [2808] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_type_identifier, 2, .production_id = 11), + [2810] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_type_identifier, 3, .production_id = 28), + [2812] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_scoped_type_identifier, 3, .production_id = 28), + [2814] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_type_identifier, 3, .production_id = 31), + [2816] = {.entry = {.count = 1, .reusable = true}}, SHIFT(629), + [2818] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__pattern, 1), + [2820] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__pattern, 1), + [2822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1171), + [2824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1545), + [2826] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_type, 1, .production_id = 8), + [2828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1554), + [2830] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generic_type, 2, .production_id = 16), + [2832] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generic_type, 2, .production_id = 16), + [2834] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1179), + [2836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1040), + [2838] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1234), + [2840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1269), + [2842] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_scoped_type_identifier, 3, .production_id = 31), + [2844] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generic_type, 3, .production_id = 16), + [2846] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generic_type, 3, .production_id = 16), + [2848] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_scoped_type_identifier, 2, .production_id = 11), + [2850] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generic_type, 3, .production_id = 13), + [2852] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generic_type, 3, .production_id = 13), + [2854] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generic_type, 2, .production_id = 13), + [2856] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generic_type, 2, .production_id = 13), + [2858] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1834), + [2860] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_tuple_type, 5), + [2862] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_tuple_type, 4), + [2864] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1530), + [2866] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1762), + [2868] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144), + [2870] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), + [2872] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1552), + [2874] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__pattern, 1, .production_id = 6), + [2876] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__pattern, 1, .production_id = 6), + [2878] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1157), + [2880] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1836), + [2882] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1744), + [2884] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), + [2886] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1883), + [2888] = {.entry = {.count = 1, .reusable = true}}, SHIFT(482), + [2890] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1742), + [2892] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), + [2894] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1916), + [2896] = {.entry = {.count = 1, .reusable = true}}, SHIFT(459), + [2898] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_at_type, 2), + [2900] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1804), + [2902] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_1_tuple_type, 3), + [2904] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_type, 3, .production_id = 45), + [2906] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1846), + [2908] = {.entry = {.count = 1, .reusable = true}}, SHIFT(465), + [2910] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_abstract_type, 3, .production_id = 46), + [2912] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unit_type, 2), + [2914] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_trait_bounds, 2), + [2916] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_type, 1), + [2918] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1074), + [2920] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1117), + [2922] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1117), + [2924] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1467), + [2926] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1772), + [2928] = {.entry = {.count = 1, .reusable = true}}, SHIFT(390), + [2930] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1943), + [2932] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1860), + [2934] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1941), + [2936] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1918), + [2938] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1931), + [2940] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1945), + [2942] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_pattern, 4, .production_id = 16), + [2944] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_pattern, 4, .production_id = 16), + [2946] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 4), + [2948] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 4), + [2950] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_typed_identifier, 1), REDUCE(sym__pattern, 1), + [2953] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym__pattern, 1), SHIFT(1053), + [2956] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_pattern, 7, .production_id = 16), + [2958] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_pattern, 7, .production_id = 16), + [2960] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_pattern, 7, .production_id = 13), + [2962] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_pattern, 7, .production_id = 13), + [2964] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_struct_pattern, 7, .production_id = 16), + [2966] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_struct_pattern, 7, .production_id = 16), + [2968] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_tuple_type, 5), + [2970] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_tuple_type, 5), + [2972] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_pattern, 3, .production_id = 16), + [2974] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_pattern, 3, .production_id = 16), + [2976] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_pattern, 3, .production_id = 13), + [2978] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_pattern, 3, .production_id = 13), + [2980] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_pattern, 5, .production_id = 16), + [2982] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_pattern, 5, .production_id = 16), + [2984] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_tuple_type, 3), + [2986] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_tuple_type, 3), + [2988] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_pattern, 5, .production_id = 13), + [2990] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_pattern, 5, .production_id = 13), + [2992] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_tuple_type, 4), + [2994] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_tuple_type, 4), + [2996] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_struct_pattern, 5, .production_id = 16), + [2998] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_struct_pattern, 5, .production_id = 16), + [3000] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 5), + [3002] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 5), + [3004] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_struct_pattern, 4, .production_id = 16), + [3006] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_struct_pattern, 4, .production_id = 16), + [3008] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_pattern, 4, .production_id = 13), + [3010] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_pattern, 4, .production_id = 13), + [3012] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1053), + [3014] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_pointer_type, 2), + [3016] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_pointer_type, 2), + [3018] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_struct_pattern, 3, .production_id = 16), + [3020] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_struct_pattern, 3, .production_id = 16), + [3022] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 3), + [3024] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 3), + [3026] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 2), + [3028] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 2), + [3030] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_pattern, 6, .production_id = 16), + [3032] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_pattern, 6, .production_id = 16), + [3034] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_builtin_type, 1), + [3036] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_builtin_type, 1), + [3038] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1074), + [3040] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_tuple_type, 2), + [3042] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_tuple_type, 2), + [3044] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 6), + [3046] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 6), + [3048] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_struct_pattern, 6, .production_id = 13), + [3050] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_struct_pattern, 6, .production_id = 13), + [3052] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_struct_pattern, 6, .production_id = 16), + [3054] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_struct_pattern, 6, .production_id = 16), + [3056] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__cairo_0_type, 1), + [3058] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1749), + [3060] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1736), + [3062] = {.entry = {.count = 1, .reusable = true}}, SHIFT(379), + [3064] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1763), + [3066] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1805), + [3068] = {.entry = {.count = 1, .reusable = true}}, SHIFT(992), + [3070] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1850), + [3072] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1035), + [3074] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1853), + [3076] = {.entry = {.count = 1, .reusable = true}}, SHIFT(981), + [3078] = {.entry = {.count = 1, .reusable = true}}, SHIFT(787), + [3080] = {.entry = {.count = 1, .reusable = true}}, SHIFT(747), + [3082] = {.entry = {.count = 1, .reusable = true}}, SHIFT(976), + [3084] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1222), + [3086] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1729), + [3088] = {.entry = {.count = 1, .reusable = true}}, SHIFT(332), + [3090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(965), + [3092] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1730), + [3094] = {.entry = {.count = 1, .reusable = true}}, SHIFT(328), + [3096] = {.entry = {.count = 1, .reusable = true}}, SHIFT(790), + [3098] = {.entry = {.count = 1, .reusable = true}}, SHIFT(326), + [3100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1879), + [3102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(959), + [3104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1770), + [3106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(381), + [3108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1760), + [3110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(386), + [3112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1882), + [3114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(984), + [3116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1784), + [3118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(349), + [3120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1739), + [3122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(367), + [3124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1915), + [3126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(985), + [3128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1750), + [3130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(346), + [3132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1748), + [3134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(988), + [3136] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1727), + [3138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1187), + [3140] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1697), + [3142] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1378), + [3144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1845), + [3146] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1108), + [3148] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1690), + [3150] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1740), + [3152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1327), + [3154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1193), + [3156] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_type, 3, .production_id = 26), + [3158] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1866), + [3160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1127), + [3162] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dotted_name_repeat1, 2), SHIFT_REPEAT(1852), + [3165] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1869), + [3167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1122), + [3169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1224), + [3171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1733), + [3173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1106), + [3175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1303), + [3177] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1250), + [3179] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1766), + [3181] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1207), + [3183] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1240), + [3185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1194), + [3187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1185), + [3189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1182), + [3191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1196), + [3193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1843), + [3195] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1110), + [3197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1243), + [3199] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1287), + [3201] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1180), + [3203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1235), + [3205] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1743), + [3207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1107), + [3209] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1211), + [3211] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__cairo_0_decorated_definition_repeat1, 2), SHIFT_REPEAT(1947), + [3214] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__cairo_0_decorated_definition_repeat1, 2), + [3216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1233), + [3218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1209), + [3220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1852), + [3222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1213), + [3224] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_type, 1), + [3226] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1057), + [3228] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1190), + [3230] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 4, .production_id = 51), + [3232] = {.entry = {.count = 1, .reusable = true}}, SHIFT(405), + [3234] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1290), + [3236] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 5), + [3238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(678), + [3240] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1037), + [3242] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1912), + [3244] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1644), + [3246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1095), + [3248] = {.entry = {.count = 1, .reusable = true}}, SHIFT(997), + [3250] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 2), + [3252] = {.entry = {.count = 1, .reusable = true}}, SHIFT(725), + [3254] = {.entry = {.count = 1, .reusable = true}}, SHIFT(325), + [3256] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1792), + [3258] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1700), + [3260] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 4), + [3262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(677), + [3264] = {.entry = {.count = 1, .reusable = true}}, SHIFT(975), + [3266] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1877), + [3268] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1642), + [3270] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 3), + [3272] = {.entry = {.count = 1, .reusable = true}}, SHIFT(707), + [3274] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1848), + [3276] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1699), + [3278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(722), + [3280] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1027), + [3282] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1595), + [3284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(694), + [3286] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1640), + [3288] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__use_clause, 1), + [3290] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1811), + [3292] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1236), + [3294] = {.entry = {.count = 1, .reusable = true}}, SHIFT(683), + [3296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382), + [3298] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1719), + [3300] = {.entry = {.count = 1, .reusable = true}}, SHIFT(688), + [3302] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1721), + [3304] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 3, .production_id = 51), + [3306] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 3), + [3308] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1218), + [3310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1559), + [3312] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1816), + [3314] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__use_clause, 1, .production_id = 6), + [3316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1808), + [3318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1565), + [3320] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1569), + [3322] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1237), + [3324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1006), + [3326] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 5), + [3328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(696), + [3330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(315), + [3332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1668), + [3334] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 5, .production_id = 51), + [3336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1258), + [3338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(697), + [3340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1571), + [3342] = {.entry = {.count = 1, .reusable = false}}, SHIFT(747), + [3344] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__cairo_0_tuple_type, 2), REDUCE(sym_unit_type, 2), + [3347] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_identifier, 1), + [3349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1053), + [3351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(377), + [3353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(420), + [3355] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1265), + [3357] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1226), + [3359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1430), + [3361] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1761), + [3363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(702), + [3365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(363), + [3367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1626), + [3369] = {.entry = {.count = 1, .reusable = true}}, SHIFT(713), + [3371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1024), + [3373] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1590), + [3375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1169), + [3377] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1198), + [3379] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1143), + [3381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(384), + [3383] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_identifier, 2), + [3385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1050), + [3387] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__cairo_0_type, 1), + [3389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(720), + [3391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(970), + [3393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1617), + [3395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(718), + [3397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1616), + [3399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(709), + [3401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1592), + [3403] = {.entry = {.count = 1, .reusable = true}}, SHIFT(392), + [3405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1503), + [3407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1862), + [3409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(703), + [3411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(335), + [3413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1671), + [3415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1136), + [3417] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameters, 4), + [3419] = {.entry = {.count = 1, .reusable = false}}, SHIFT(724), + [3421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1765), + [3423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1178), + [3425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(876), + [3427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1473), + [3429] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2, .production_id = 51), + [3431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), + [3433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(492), + [3435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1371), + [3437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(493), + [3439] = {.entry = {.count = 1, .reusable = false}}, SHIFT(824), + [3441] = {.entry = {.count = 1, .reusable = false}}, SHIFT(559), + [3443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(559), + [3445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1140), + [3447] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 7, .production_id = 98), + [3449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(376), + [3451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1935), + [3453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1601), + [3455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1380), + [3457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1752), + [3459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(979), + [3461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(982), + [3463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1863), + [3465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1168), + [3467] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), + [3469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(565), + [3471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), + [3473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(907), + [3475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1160), + [3477] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1829), + [3479] = {.entry = {.count = 1, .reusable = false}}, SHIFT(596), + [3481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(596), + [3483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1495), + [3485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(739), + [3487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1876), + [3489] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 4, .production_id = 82), + [3491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(995), + [3493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1722), + [3495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1612), + [3497] = {.entry = {.count = 1, .reusable = true}}, SHIFT(357), + [3499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1292), + [3501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1768), + [3503] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 6, .production_id = 89), + [3505] = {.entry = {.count = 1, .reusable = true}}, SHIFT(343), + [3507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1928), + [3509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1606), + [3511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1757), + [3513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1610), + [3515] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 5, .production_id = 90), + [3517] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), + [3519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1897), + [3521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1628), + [3523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(991), + [3525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1683), + [3527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(645), + [3529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1630), + [3531] = {.entry = {.count = 1, .reusable = true}}, SHIFT(735), + [3533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1847), + [3535] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__cairo_0_with_statement_repeat1, 2), + [3537] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__cairo_0_with_statement_repeat1, 2), SHIFT_REPEAT(1815), + [3540] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_identifier, 4, .production_id = 50), + [3542] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_identifier, 3, .production_id = 26), + [3544] = {.entry = {.count = 1, .reusable = true}}, SHIFT(560), + [3546] = {.entry = {.count = 1, .reusable = true}}, SHIFT(365), + [3548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1667), + [3550] = {.entry = {.count = 1, .reusable = true}}, SHIFT(557), + [3552] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), + [3554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1670), + [3556] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1147), + [3558] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1151), + [3560] = {.entry = {.count = 1, .reusable = true}}, SHIFT(712), + [3562] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1890), + [3564] = {.entry = {.count = 1, .reusable = true}}, SHIFT(977), + [3566] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1673), + [3568] = {.entry = {.count = 1, .reusable = true}}, SHIFT(999), + [3570] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1638), + [3572] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_typed_identifier, 2), + [3574] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1065), + [3576] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1838), + [3578] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255), + [3580] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1794), + [3582] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_enum_variant_list_repeat1, 2), SHIFT_REPEAT(1925), + [3585] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_inst_jmp_to_label, 2), + [3587] = {.entry = {.count = 1, .reusable = false}}, SHIFT(828), + [3589] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_inst_jmp_to_label, 2), + [3591] = {.entry = {.count = 1, .reusable = false}}, SHIFT(830), + [3593] = {.entry = {.count = 1, .reusable = false}}, SHIFT(619), + [3595] = {.entry = {.count = 1, .reusable = true}}, SHIFT(619), + [3597] = {.entry = {.count = 1, .reusable = false}}, SHIFT(832), + [3599] = {.entry = {.count = 1, .reusable = false}}, SHIFT(617), + [3601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(617), + [3603] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_typed_identifier, 1), + [3605] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1070), + [3607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(380), + [3609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1717), + [3611] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1641), + [3613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(650), + [3615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(638), + [3617] = {.entry = {.count = 1, .reusable = true}}, SHIFT(576), + [3619] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1223), + [3621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1279), + [3623] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__cairo_0_struct_definition_repeat1, 2), + [3625] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__cairo_0_struct_definition_repeat1, 2), SHIFT_REPEAT(1548), + [3628] = {.entry = {.count = 1, .reusable = false}}, SHIFT(827), + [3630] = {.entry = {.count = 1, .reusable = false}}, SHIFT(556), + [3632] = {.entry = {.count = 1, .reusable = true}}, SHIFT(556), + [3634] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decorator, 2), + [3636] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1032), + [3638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1653), + [3640] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1672), + [3642] = {.entry = {.count = 1, .reusable = true}}, SHIFT(708), + [3644] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1635), + [3646] = {.entry = {.count = 1, .reusable = true}}, SHIFT(621), + [3648] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1887), + [3650] = {.entry = {.count = 1, .reusable = false}}, SHIFT(622), + [3652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(622), + [3654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1656), + [3656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1172), + [3658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1153), + [3660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), + [3662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(532), + [3664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1149), + [3666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1098), + [3668] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_typed_identifier, 4, .production_id = 50), + [3670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1289), + [3672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1248), + [3674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1352), + [3676] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1711), + [3678] = {.entry = {.count = 1, .reusable = false}}, SHIFT(572), + [3680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(572), + [3682] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_typed_identifier, 3, .production_id = 26), + [3684] = {.entry = {.count = 1, .reusable = false}}, SHIFT(549), + [3686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(549), + [3688] = {.entry = {.count = 1, .reusable = false}}, SHIFT(651), + [3690] = {.entry = {.count = 1, .reusable = true}}, SHIFT(651), + [3692] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 13, .production_id = 98), + [3694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1718), + [3696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), + [3698] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), + [3700] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1079), + [3702] = {.entry = {.count = 1, .reusable = false}}, SHIFT(641), + [3704] = {.entry = {.count = 1, .reusable = true}}, SHIFT(641), + [3706] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1781), + [3708] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1492), + [3710] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 12, .production_id = 98), + [3712] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1715), + [3714] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 12, .production_id = 89), + [3716] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1713), + [3718] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_list, 3), + [3720] = {.entry = {.count = 1, .reusable = true}}, SHIFT(779), + [3722] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_as_clause, 3, .production_id = 38), + [3724] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 66), SHIFT_REPEAT(1400), + [3727] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_use_list, 3, .production_id = 39), + [3729] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 11), + [3731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1712), + [3733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1881), + [3735] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_as_clause, 3, .production_id = 40), + [3737] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 11, .production_id = 98), + [3739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1710), + [3741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1141), + [3743] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_use_list, 3, .production_id = 41), + [3745] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 11, .production_id = 89), + [3747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1709), + [3749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1225), + [3751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1174), + [3753] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 11, .production_id = 90), + [3755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1707), + [3757] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1165), + [3759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1115), + [3761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1082), + [3763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), + [3765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1364), + [3767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1705), + [3769] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 10, .production_id = 98), + [3771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1704), + [3773] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 10), + [3775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1702), + [3777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1368), + [3779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1701), + [3781] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_pattern, 1, .production_id = 25), + [3783] = {.entry = {.count = 1, .reusable = true}}, SHIFT(729), + [3785] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 10, .production_id = 89), + [3787] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1696), + [3789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1114), + [3791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(607), + [3793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), + [3795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180), + [3797] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 10, .production_id = 90), + [3799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1694), + [3801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1132), + [3803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1015), + [3805] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 10, .production_id = 82), + [3807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1693), + [3809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(670), + [3811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1144), + [3813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1376), + [3815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1691), + [3817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1011), + [3819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(605), + [3821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1379), + [3823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1689), + [3825] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 9, .production_id = 89), + [3827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1688), + [3829] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 9), + [3831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1687), + [3833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1383), + [3835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1686), + [3837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1010), + [3839] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 9, .production_id = 90), + [3841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1685), + [3843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1044), + [3845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1130), + [3847] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 9, .production_id = 82), + [3849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1684), + [3851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(802), + [3853] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1314), + [3855] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1831), + [3857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1868), + [3859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1362), + [3861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1307), + [3863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1393), + [3865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1681), + [3867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), + [3869] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1062), + [3871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), + [3873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1309), + [3875] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1764), + [3877] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1239), + [3879] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1042), + [3881] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1396), + [3883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1680), + [3885] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 8, .production_id = 90), + [3887] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1679), + [3889] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 8), + [3891] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1676), + [3893] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1284), + [3895] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1401), + [3897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1675), + [3899] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1133), + [3901] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 8, .production_id = 82), + [3903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1674), + [3905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1426), + [3907] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1200), + [3909] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1939), + [3911] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428), + [3913] = {.entry = {.count = 1, .reusable = true}}, SHIFT(186), + [3915] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1311), + [3917] = {.entry = {.count = 1, .reusable = false}}, SHIFT(846), + [3919] = {.entry = {.count = 1, .reusable = false}}, SHIFT(829), + [3921] = {.entry = {.count = 1, .reusable = true}}, SHIFT(736), + [3923] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1159), + [3925] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 3), + [3927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1238), + [3929] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1414), + [3931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1666), + [3933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(432), + [3935] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 2), + [3937] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1263), + [3939] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1167), + [3941] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1199), + [3943] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 7), + [3945] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1665), + [3947] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1418), + [3949] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1662), + [3951] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 7, .production_id = 82), + [3953] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1661), + [3955] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1934), + [3957] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), + [3959] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), + [3961] = {.entry = {.count = 1, .reusable = true}}, SHIFT(480), + [3963] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), + [3965] = {.entry = {.count = 1, .reusable = true}}, SHIFT(474), + [3967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), + [3969] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1137), + [3971] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1475), + [3973] = {.entry = {.count = 1, .reusable = false}}, SHIFT(853), + [3975] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217), + [3977] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1320), + [3979] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_tuple_pattern_repeat1, 2), + [3981] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_pattern_repeat1, 2), SHIFT_REPEAT(685), + [3984] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1109), + [3986] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1041), + [3988] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), + [3990] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), + [3992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1156), + [3994] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1131), + [3996] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1026), + [3998] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1434), + [4000] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1649), + [4002] = {.entry = {.count = 1, .reusable = true}}, SHIFT(631), + [4004] = {.entry = {.count = 1, .reusable = true}}, SHIFT(281), + [4006] = {.entry = {.count = 1, .reusable = true}}, SHIFT(715), + [4008] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1014), + [4010] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314), + [4012] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 6), + [4014] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1648), + [4016] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), + [4018] = {.entry = {.count = 1, .reusable = true}}, SHIFT(371), + [4020] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1135), + [4022] = {.entry = {.count = 1, .reusable = true}}, SHIFT(324), + [4024] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1318), + [4026] = {.entry = {.count = 1, .reusable = true}}, SHIFT(603), + [4028] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1940), + [4030] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_pattern, 2, .production_id = 53), + [4032] = {.entry = {.count = 1, .reusable = true}}, SHIFT(689), + [4034] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1197), + [4036] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1177), + [4038] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__cairo_1_call_expression_repeat1, 2, .production_id = 66), + [4040] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__cairo_1_call_expression_repeat1, 2, .production_id = 66), SHIFT_REPEAT(207), + [4043] = {.entry = {.count = 1, .reusable = true}}, SHIFT(456), + [4045] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), + [4047] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1175), + [4049] = {.entry = {.count = 1, .reusable = true}}, SHIFT(391), + [4051] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_field_initializer_list_repeat1, 2), SHIFT_REPEAT(1120), + [4054] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_field_initializer_list_repeat1, 2), + [4056] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1815), + [4058] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), + [4060] = {.entry = {.count = 1, .reusable = false}}, SHIFT(613), + [4062] = {.entry = {.count = 1, .reusable = true}}, SHIFT(613), + [4064] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 6), + [4066] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_python_code, 1), + [4068] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1557), + [4070] = {.entry = {.count = 1, .reusable = true}}, SHIFT(453), + [4072] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1072), + [4074] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call_instruction, 2), + [4076] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call_instruction, 2), + [4078] = {.entry = {.count = 1, .reusable = true}}, SHIFT(427), + [4080] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_attribute_arguments_repeat1, 2), SHIFT_REPEAT(298), + [4083] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1155), + [4085] = {.entry = {.count = 1, .reusable = true}}, SHIFT(504), + [4087] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_tuple_expression_repeat1, 2), SHIFT_REPEAT(836), + [4090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(800), + [4092] = {.entry = {.count = 1, .reusable = true}}, SHIFT(495), + [4094] = {.entry = {.count = 1, .reusable = true}}, SHIFT(418), + [4096] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1457), + [4098] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1636), + [4100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133), + [4102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), + [4104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(399), + [4106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1889), + [4108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1188), + [4110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1164), + [4112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(461), + [4114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), + [4116] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__cairo_0_attribute_statement_repeat1, 2), + [4118] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__cairo_0_attribute_statement_repeat1, 2), SHIFT_REPEAT(1492), + [4121] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_list, 4), + [4123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(680), + [4125] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shorthand_field_initializer, 2), + [4127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(302), + [4129] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1085), + [4131] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1023), + [4133] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1146), + [4135] = {.entry = {.count = 1, .reusable = true}}, SHIFT(359), + [4137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1296), + [4139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(547), + [4141] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_use_list_repeat1, 2), SHIFT_REPEAT(785), + [4144] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_use_list_repeat1, 2), + [4146] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), + [4148] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1060), + [4150] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), + [4152] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 5), + [4154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1273), + [4156] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1158), + [4158] = {.entry = {.count = 1, .reusable = true}}, SHIFT(960), + [4160] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__cairo_0_tuple_type_repeat1, 2), + [4162] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__cairo_0_tuple_type_repeat1, 2), SHIFT_REPEAT(1063), + [4165] = {.entry = {.count = 1, .reusable = true}}, SHIFT(387), + [4167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(807), + [4169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1145), + [4171] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_enum_variant_list_repeat2, 2), SHIFT_REPEAT(1186), + [4174] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_enum_variant_list_repeat2, 2), + [4176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1088), + [4178] = {.entry = {.count = 1, .reusable = true}}, SHIFT(660), + [4180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(971), + [4182] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_enum_variant, 3, .production_id = 83), + [4184] = {.entry = {.count = 1, .reusable = true}}, SHIFT(287), + [4186] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), + [4188] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1161), + [4190] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1163), + [4192] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1232), + [4194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1148), + [4196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__function_signature_repeat1, 2), + [4198] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__function_signature_repeat1, 2), SHIFT_REPEAT(1192), + [4201] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_field_declaration_list_repeat1, 2), SHIFT_REPEAT(1216), + [4204] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_field_declaration_list_repeat1, 2), + [4206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1139), + [4208] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), + [4210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(323), + [4212] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1150), + [4214] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), + [4216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1075), + [4218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), + [4220] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_use_list, 5), + [4222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1083), + [4224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(489), + [4226] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_shorthand_field_initializer, 1), + [4228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223), + [4230] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__ref_binding, 2), REDUCE(sym_tuple_pattern, 2), + [4233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1751), + [4235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1247), + [4237] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__cairo_1_type_arguments_repeat1, 2), SHIFT_REPEAT(503), + [4240] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__cairo_1_type_arguments_repeat1, 2), + [4242] = {.entry = {.count = 1, .reusable = true}}, SHIFT(483), + [4244] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), + [4246] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_struct_pattern_repeat1, 2), SHIFT_REPEAT(1297), + [4249] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_struct_pattern_repeat1, 2), + [4251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__cairo_1_tuple_type_repeat1, 2), + [4253] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__cairo_1_tuple_type_repeat1, 2), SHIFT_REPEAT(686), + [4256] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), + [4258] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1052), + [4260] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), + [4262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1064), + [4264] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1119), + [4266] = {.entry = {.count = 1, .reusable = true}}, SHIFT(606), + [4268] = {.entry = {.count = 1, .reusable = false}}, SHIFT(595), + [4270] = {.entry = {.count = 1, .reusable = true}}, SHIFT(595), + [4272] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_pattern, 3, .production_id = 71), + [4274] = {.entry = {.count = 1, .reusable = true}}, SHIFT(710), + [4276] = {.entry = {.count = 1, .reusable = true}}, SHIFT(485), + [4278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1048), + [4280] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__cairo_0_call_expression_repeat1, 2), SHIFT_REPEAT(838), + [4283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220), + [4285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(726), + [4287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(963), + [4289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), + [4291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(974), + [4293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(247), + [4295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(721), + [4297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(356), + [4299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252), + [4301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(727), + [4303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(353), + [4305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1731), + [4307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1351), + [4309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), + [4311] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_python_code_repeat1, 2), + [4313] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_python_code_repeat1, 2), SHIFT_REPEAT(1557), + [4316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(334), + [4318] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 4), + [4320] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2), SHIFT_REPEAT(1210), + [4323] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_parameters_repeat1, 2), + [4325] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_named_type, 3, .production_id = 26), + [4327] = {.entry = {.count = 1, .reusable = true}}, SHIFT(780), + [4329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1355), + [4331] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_scoped_use_list, 2, .production_id = 17), + [4333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(339), + [4335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(396), + [4337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1142), + [4339] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1043), + [4341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(808), + [4343] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_declaration, 3, .production_id = 68), + [4345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1404), + [4347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), + [4349] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_pattern, 3, .production_id = 70), + [4351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(522), + [4353] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1170), + [4355] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1484), + [4357] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1485), + [4359] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 3), + [4361] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_field_declaration_list_repeat1, 3), + [4363] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 8, .production_id = 98), + [4365] = {.entry = {.count = 1, .reusable = true}}, SHIFT(374), + [4367] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1162), + [4369] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 7, .production_id = 89), + [4371] = {.entry = {.count = 1, .reusable = true}}, SHIFT(373), + [4373] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_pattern, 4, .production_id = 85), + [4375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251), + [4377] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_pattern, 1), + [4379] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 5, .production_id = 82), + [4381] = {.entry = {.count = 1, .reusable = true}}, SHIFT(967), + [4383] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 4), + [4385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1452), + [4387] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), + [4389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), + [4391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), + [4393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(352), + [4395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), + [4397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(348), + [4399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), + [4401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(969), + [4403] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field_pattern, 5, .production_id = 93), + [4405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(351), + [4407] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 6, .production_id = 90), + [4409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342), + [4411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1555), + [4413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), + [4415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [4417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [4419] = {.entry = {.count = 1, .reusable = true}}, SHIFT(835), + [4421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(674), + [4423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1436), + [4425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1437), + [4427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1353), + [4429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1030), + [4431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1428), + [4433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1873), + [4435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1871), + [4437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1033), + [4439] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constrained_type_parameter, 3, .production_id = 69), + [4441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), + [4443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), + [4445] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_enum_variant_list_repeat2, 3), + [4447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), + [4449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), + [4451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1412), + [4453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1413), + [4455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1832), + [4457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1927), + [4459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(993), + [4461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1406), + [4463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(300), + [4465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(333), + [4467] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constrained_type_parameter, 2, .production_id = 52), + [4469] = {.entry = {.count = 1, .reusable = true}}, SHIFT(321), + [4471] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1391), + [4473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1392), + [4475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(989), + [4477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1385), + [4479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1374), + [4481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1375), + [4483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1034), + [4485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1370), + [4487] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1462), + [4489] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1774), + [4491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1361), + [4493] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 11, .production_id = 82), + [4495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236), + [4497] = {.entry = {.count = 1, .reusable = true}}, SHIFT(996), + [4499] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1793), + [4501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1354), + [4503] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 12, .production_id = 90), + [4505] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1347), + [4507] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 12), + [4509] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 13, .production_id = 89), + [4511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), + [4513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(980), + [4515] = {.entry = {.count = 1, .reusable = true}}, SHIFT(358), + [4517] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_signature, 14, .production_id = 98), + [4519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(586), + [4521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1634), + [4523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1028), + [4525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), + [4527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1031), + [4529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(714), + [4531] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1036), + [4533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), + [4535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), + [4537] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_arguments, 2), + [4539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1018), + [4541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(372), + [4543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1462), + [4545] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1017), + [4547] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), + [4549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(592), + [4551] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__ref_binding, 3), + [4553] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__ref_binding, 2), + [4555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(639), + [4557] = {.entry = {.count = 1, .reusable = true}}, SHIFT(317), + [4559] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368), + [4561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(913), + [4563] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_implicit_arguments, 2), + [4565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(598), + [4567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(152), + [4569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(331), + [4571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), + [4573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(743), + [4575] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_implicit_arguments, 3), + [4577] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__ref_binding, 4), + [4579] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1659), + [4581] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1706), + [4583] = {.entry = {.count = 1, .reusable = true}}, SHIFT(558), + [4585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360), + [4587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(369), + [4589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1543), + [4591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(330), + [4593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(337), + [4595] = {.entry = {.count = 1, .reusable = true}}, SHIFT(350), + [4597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417), + [4599] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), + [4601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(918), + [4603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1319), + [4605] = {.entry = {.count = 1, .reusable = true}}, SHIFT(823), + [4607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(875), + [4609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(413), + [4611] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1007), + [4613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1020), + [4615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1350), + [4617] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1587), + [4619] = {.entry = {.count = 1, .reusable = true}}, SHIFT(716), + [4621] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_implicit_arguments, 4), + [4623] = {.entry = {.count = 1, .reusable = true}}, SHIFT(433), + [4625] = {.entry = {.count = 1, .reusable = true}}, SHIFT(481), + [4627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(508), + [4629] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1340), + [4631] = {.entry = {.count = 1, .reusable = true}}, SHIFT(690), + [4633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1059), + [4635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(311), + [4637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(312), + [4639] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1363), + [4641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(566), + [4643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(472), + [4645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1358), + [4647] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1227), + [4649] = {.entry = {.count = 1, .reusable = true}}, SHIFT(936), + [4651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(338), + [4653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1558), + [4655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1254), + [4657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1138), + [4659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1181), + [4661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1066), + [4663] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), + [4665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [4667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(933), + [4669] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1803), + [4671] = {.entry = {.count = 1, .reusable = true}}, SHIFT(804), + [4673] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1799), + [4675] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1068), + [4677] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1306), + [4679] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1524), + [4681] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1046), + [4683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1047), + [4685] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1538), + [4687] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__ref_binding, 5), + [4689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1126), + [4691] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1785), + [4693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(593), + [4695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1614), + [4697] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_arguments, 3), + [4699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1624), + [4701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1241), + [4703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1778), + [4705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1242), + [4707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1780), + [4709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1294), + [4711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(734), + [4713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1783), + [4715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(923), + [4717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1472), + [4719] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_implicit_arguments, 5), + [4721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(700), + [4723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1103), + [4725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1102), + [4727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), + [4729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), + [4731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1101), + [4733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(463), + [4735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1264), + [4737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(250), + [4739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1550), + [4741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(964), + [4743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), + [4745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1639), + [4747] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_arguments, 4), + [4749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(630), + [4751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), + [4753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(987), + [4755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(271), + [4757] = {.entry = {.count = 1, .reusable = true}}, SHIFT(458), + [4759] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1791), + [4761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), + [4763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(797), + [4765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1835), + [4767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1045), + [4769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1230), + [4771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1651), + [4773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1692), + [4775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), + [4777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1056), + [4779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1221), + [4781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), + [4783] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_program, 1), + [4785] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [4787] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1134), + [4789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1301), + [4791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), + [4793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1497), + [4795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(811), + [4797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1302), + [4799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1494), + [4801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1654), + [4803] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_arguments, 5), + [4805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(848), + [4807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(973), + [4809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(464), + [4811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1821), + [4813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1822), + [4815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1470), + [4817] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1631), + [4819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1576), + [4821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1549), + [4823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(244), + [4825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1270), + [4827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(806), + [4829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(825), + [4831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1281), + [4833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1669), + [4835] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_arguments, 6), + [4837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(679), + [4839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1858), + [4841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1859), + [4843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), + [4845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1682), + [4847] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute_arguments, 7), + [4849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(738), + [4851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1633), + [4853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1321), + [4855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1183), + [4857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1899), + [4859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(810), + [4861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1330), + [4863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1424), + [4865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1324), + [4867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(648), + [4869] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145), + [4871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1900), + [4873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(856), + [4875] = {.entry = {.count = 1, .reusable = true}}, SHIFT(860), }; #ifdef __cplusplus