diff --git a/src/abstract_tree/value_node.rs b/src/abstract_tree/value_node.rs index 3255ebe..9a4b679 100644 --- a/src/abstract_tree/value_node.rs +++ b/src/abstract_tree/value_node.rs @@ -19,7 +19,7 @@ pub enum ValueNode { Option(Option>), Map(BTreeMap)>), BuiltInValue(BuiltInValue), - StructureDefinition(BTreeMap, Type)>), + Structure(BTreeMap, Type)>), } impl AbstractTree for ValueNode { @@ -160,7 +160,7 @@ impl AbstractTree for ValueNode { } } - ValueNode::StructureDefinition(btree_map) + ValueNode::Structure(btree_map) } _ => { return Err(Error::UnexpectedSyntaxNode { @@ -230,7 +230,7 @@ impl AbstractTree for ValueNode { Value::Map(map) } ValueNode::BuiltInValue(built_in_value) => built_in_value.run(source, context)?, - ValueNode::StructureDefinition(node_map) => { + ValueNode::Structure(node_map) => { let mut value_map = BTreeMap::new(); for (key, (statement_option, r#type)) in node_map { @@ -287,7 +287,7 @@ impl AbstractTree for ValueNode { } ValueNode::Map(_) => Type::Map(None), ValueNode::BuiltInValue(built_in_value) => built_in_value.expected_type(context)?, - ValueNode::StructureDefinition(node_map) => { + ValueNode::Structure(node_map) => { let mut value_map = BTreeMap::new(); for (key, (_statement_option, r#type)) in node_map { @@ -357,7 +357,7 @@ impl Format for ValueNode { output.push('}'); } ValueNode::BuiltInValue(built_in_value) => built_in_value.format(output, indent_level), - ValueNode::StructureDefinition(nodes) => { + ValueNode::Structure(nodes) => { output.push('{'); for (key, (value_option, r#type)) in nodes { diff --git a/tree-sitter-dust/corpus/structure.txt b/tree-sitter-dust/corpus/structure.txt index a02177f..531ef35 100644 --- a/tree-sitter-dust/corpus/structure.txt +++ b/tree-sitter-dust/corpus/structure.txt @@ -13,14 +13,13 @@ struct { (statement (expression (value - (type_definition - (structure - (identifier) - (type_specification - (type)) - (identifier) - (type_specification - (type)))))))) + (structure + (identifier) + (type_specification + (type)) + (identifier) + (type_specification + (type))))))) ================================================================================ Complex Structure @@ -45,28 +44,27 @@ Foo = struct { (statement (expression (value - (type_definition - (structure - (identifier) - (type_specification - (type)) - (identifier) - (type_specification - (type)) - (statement - (expression - (value - (float)))) - (identifier) - (type_specification - (type - (identifier))) - (statement - (expression - (new - (identifier) - (identifier) - (statement - (expression - (value - (integer))))))))))))))) + (structure + (identifier) + (type_specification + (type)) + (identifier) + (type_specification + (type)) + (statement + (expression + (value + (float)))) + (identifier) + (type_specification + (type + (identifier))) + (statement + (expression + (new + (identifier) + (identifier) + (statement + (expression + (value + (integer)))))))))))))) diff --git a/tree-sitter-dust/grammar.js b/tree-sitter-dust/grammar.js index 7aa8fee..7815f94 100644 --- a/tree-sitter-dust/grammar.js +++ b/tree-sitter-dust/grammar.js @@ -85,11 +85,6 @@ module.exports = grammar({ $.map, $.option, $.built_in_value, - $.type_definition, - ), - - type_definition: $ => - choice( $.structure, ), diff --git a/tree-sitter-dust/src/grammar.json b/tree-sitter-dust/src/grammar.json index 6ef3b2a..26738c2 100644 --- a/tree-sitter-dust/src/grammar.json +++ b/tree-sitter-dust/src/grammar.json @@ -249,15 +249,6 @@ "type": "SYMBOL", "name": "built_in_value" }, - { - "type": "SYMBOL", - "name": "type_definition" - } - ] - }, - "type_definition": { - "type": "CHOICE", - "members": [ { "type": "SYMBOL", "name": "structure" diff --git a/tree-sitter-dust/src/node-types.json b/tree-sitter-dust/src/node-types.json index 1116f24..8019149 100644 --- a/tree-sitter-dust/src/node-types.json +++ b/tree-sitter-dust/src/node-types.json @@ -602,21 +602,6 @@ ] } }, - { - "type": "type_definition", - "named": true, - "fields": {}, - "children": { - "multiple": false, - "required": true, - "types": [ - { - "type": "structure", - "named": true - } - ] - } - }, { "type": "type_specification", "named": true, @@ -677,7 +662,7 @@ "named": true }, { - "type": "type_definition", + "type": "structure", "named": true } ] diff --git a/tree-sitter-dust/src/parser.c b/tree-sitter-dust/src/parser.c index 5c55fdc..afd9851 100644 --- a/tree-sitter-dust/src/parser.c +++ b/tree-sitter-dust/src/parser.c @@ -6,9 +6,9 @@ #endif #define LANGUAGE_VERSION 14 -#define STATE_COUNT 496 +#define STATE_COUNT 493 #define LARGE_STATE_COUNT 48 -#define SYMBOL_COUNT 116 +#define SYMBOL_COUNT 115 #define ALIAS_COUNT 0 #define TOKEN_COUNT 68 #define EXTERNAL_TOKEN_COUNT 0 @@ -91,47 +91,46 @@ enum { aux_sym__expression_list = 72, sym_block = 73, sym_value = 74, - sym_type_definition = 75, - sym_structure = 76, - sym_new = 77, - sym_boolean = 78, - sym_list = 79, - sym_map = 80, - sym_option = 81, - sym_index = 82, - sym_index_expression = 83, - sym_math = 84, - sym_math_operator = 85, - sym_logic = 86, - sym_logic_operator = 87, - sym_assignment = 88, - sym_index_assignment = 89, - sym_assignment_operator = 90, - sym_if_else = 91, - sym_if = 92, - sym_else_if = 93, - sym_else = 94, - sym_match = 95, - sym_while = 96, - sym_for = 97, - sym_return = 98, - sym_type_specification = 99, - sym_type = 100, - sym_function = 101, - sym_function_expression = 102, - sym__function_expression_kind = 103, - sym_function_call = 104, - sym_yield = 105, - sym_built_in_value = 106, - aux_sym_root_repeat1 = 107, - aux_sym_structure_repeat1 = 108, - aux_sym_new_repeat1 = 109, - aux_sym_list_repeat1 = 110, - aux_sym_map_repeat1 = 111, - aux_sym_if_else_repeat1 = 112, - aux_sym_match_repeat1 = 113, - aux_sym_type_repeat1 = 114, - aux_sym_function_repeat1 = 115, + sym_structure = 75, + sym_new = 76, + sym_boolean = 77, + sym_list = 78, + sym_map = 79, + sym_option = 80, + sym_index = 81, + sym_index_expression = 82, + sym_math = 83, + sym_math_operator = 84, + sym_logic = 85, + sym_logic_operator = 86, + sym_assignment = 87, + sym_index_assignment = 88, + sym_assignment_operator = 89, + sym_if_else = 90, + sym_if = 91, + sym_else_if = 92, + sym_else = 93, + sym_match = 94, + sym_while = 95, + sym_for = 96, + sym_return = 97, + sym_type_specification = 98, + sym_type = 99, + sym_function = 100, + sym_function_expression = 101, + sym__function_expression_kind = 102, + sym_function_call = 103, + sym_yield = 104, + sym_built_in_value = 105, + aux_sym_root_repeat1 = 106, + aux_sym_structure_repeat1 = 107, + aux_sym_new_repeat1 = 108, + aux_sym_list_repeat1 = 109, + aux_sym_map_repeat1 = 110, + aux_sym_if_else_repeat1 = 111, + aux_sym_match_repeat1 = 112, + aux_sym_type_repeat1 = 113, + aux_sym_function_repeat1 = 114, }; static const char * const ts_symbol_names[] = { @@ -210,7 +209,6 @@ static const char * const ts_symbol_names[] = { [aux_sym__expression_list] = "_expression_list", [sym_block] = "block", [sym_value] = "value", - [sym_type_definition] = "type_definition", [sym_structure] = "structure", [sym_new] = "new", [sym_boolean] = "boolean", @@ -329,7 +327,6 @@ static const TSSymbol ts_symbol_map[] = { [aux_sym__expression_list] = aux_sym__expression_list, [sym_block] = sym_block, [sym_value] = sym_value, - [sym_type_definition] = sym_type_definition, [sym_structure] = sym_structure, [sym_new] = sym_new, [sym_boolean] = sym_boolean, @@ -673,10 +670,6 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, - [sym_type_definition] = { - .visible = true, - .named = true, - }, [sym_structure] = { .visible = true, .named = true, @@ -857,52 +850,52 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [6] = 6, [7] = 7, [8] = 8, - [9] = 9, + [9] = 7, [10] = 10, - [11] = 9, - [12] = 6, - [13] = 8, - [14] = 6, - [15] = 10, - [16] = 10, - [17] = 9, + [11] = 7, + [12] = 7, + [13] = 10, + [14] = 8, + [15] = 6, + [16] = 7, + [17] = 10, [18] = 8, - [19] = 10, + [19] = 6, [20] = 6, - [21] = 8, - [22] = 9, - [23] = 6, - [24] = 8, - [25] = 10, - [26] = 9, + [21] = 6, + [22] = 8, + [23] = 10, + [24] = 24, + [25] = 8, + [26] = 10, [27] = 27, [28] = 28, [29] = 29, [30] = 30, - [31] = 30, + [31] = 31, [32] = 32, - [33] = 32, + [33] = 33, [34] = 32, - [35] = 27, - [36] = 36, - [37] = 37, + [35] = 35, + [36] = 31, + [37] = 32, [38] = 38, - [39] = 39, - [40] = 40, + [39] = 31, + [40] = 29, [41] = 41, - [42] = 27, - [43] = 38, - [44] = 38, - [45] = 45, - [46] = 46, - [47] = 30, + [42] = 41, + [43] = 43, + [44] = 44, + [45] = 41, + [46] = 29, + [47] = 47, [48] = 48, [49] = 49, [50] = 50, - [51] = 49, - [52] = 50, - [53] = 48, - [54] = 54, + [51] = 51, + [52] = 48, + [53] = 50, + [54] = 49, [55] = 55, [56] = 56, [57] = 57, @@ -923,7 +916,7 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [72] = 72, [73] = 73, [74] = 74, - [75] = 75, + [75] = 64, [76] = 76, [77] = 77, [78] = 78, @@ -932,418 +925,415 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [81] = 81, [82] = 82, [83] = 83, - [84] = 58, + [84] = 84, [85] = 85, [86] = 86, [87] = 87, [88] = 88, - [89] = 89, - [90] = 48, + [89] = 49, + [90] = 50, [91] = 48, - [92] = 49, - [93] = 89, + [92] = 88, + [93] = 48, [94] = 50, - [95] = 49, - [96] = 50, - [97] = 80, - [98] = 49, - [99] = 48, - [100] = 81, - [101] = 69, - [102] = 85, - [103] = 82, - [104] = 73, - [105] = 61, - [106] = 58, - [107] = 80, - [108] = 55, - [109] = 86, - [110] = 72, - [111] = 71, - [112] = 63, - [113] = 83, - [114] = 77, - [115] = 68, - [116] = 56, - [117] = 70, - [118] = 79, - [119] = 87, - [120] = 64, - [121] = 62, - [122] = 76, - [123] = 78, - [124] = 57, - [125] = 59, - [126] = 65, - [127] = 60, - [128] = 58, - [129] = 67, - [130] = 88, - [131] = 74, + [95] = 50, + [96] = 87, + [97] = 49, + [98] = 48, + [99] = 76, + [100] = 62, + [101] = 77, + [102] = 78, + [103] = 86, + [104] = 70, + [105] = 79, + [106] = 66, + [107] = 74, + [108] = 64, + [109] = 65, + [110] = 55, + [111] = 61, + [112] = 59, + [113] = 58, + [114] = 68, + [115] = 83, + [116] = 85, + [117] = 57, + [118] = 73, + [119] = 69, + [120] = 60, + [121] = 71, + [122] = 56, + [123] = 82, + [124] = 67, + [125] = 63, + [126] = 87, + [127] = 64, + [128] = 80, + [129] = 81, + [130] = 51, + [131] = 131, [132] = 132, - [133] = 133, - [134] = 132, - [135] = 54, + [133] = 132, + [134] = 84, + [135] = 135, [136] = 136, - [137] = 75, + [137] = 137, [138] = 138, [139] = 139, - [140] = 140, + [140] = 135, [141] = 141, - [142] = 140, - [143] = 138, - [144] = 139, - [145] = 141, - [146] = 146, - [147] = 147, - [148] = 148, - [149] = 136, - [150] = 140, - [151] = 147, - [152] = 152, - [153] = 147, - [154] = 136, - [155] = 146, - [156] = 147, - [157] = 147, - [158] = 141, - [159] = 139, - [160] = 138, - [161] = 147, - [162] = 162, - [163] = 162, - [164] = 162, - [165] = 48, - [166] = 49, + [142] = 142, + [143] = 143, + [144] = 50, + [145] = 48, + [146] = 141, + [147] = 137, + [148] = 138, + [149] = 149, + [150] = 137, + [151] = 149, + [152] = 139, + [153] = 143, + [154] = 142, + [155] = 141, + [156] = 137, + [157] = 157, + [158] = 142, + [159] = 137, + [160] = 139, + [161] = 149, + [162] = 137, + [163] = 138, + [164] = 135, + [165] = 87, + [166] = 166, [167] = 167, [168] = 168, - [169] = 167, - [170] = 168, + [169] = 166, + [170] = 170, [171] = 171, [172] = 172, - [173] = 173, - [174] = 174, - [175] = 167, - [176] = 167, - [177] = 177, - [178] = 178, - [179] = 174, - [180] = 167, - [181] = 174, - [182] = 174, - [183] = 174, - [184] = 167, - [185] = 168, - [186] = 167, - [187] = 174, - [188] = 167, - [189] = 173, - [190] = 174, - [191] = 80, - [192] = 168, - [193] = 168, - [194] = 173, - [195] = 172, - [196] = 196, - [197] = 168, - [198] = 168, - [199] = 199, - [200] = 199, - [201] = 167, + [173] = 171, + [174] = 167, + [175] = 175, + [176] = 176, + [177] = 167, + [178] = 176, + [179] = 171, + [180] = 171, + [181] = 167, + [182] = 167, + [183] = 176, + [184] = 175, + [185] = 167, + [186] = 176, + [187] = 176, + [188] = 171, + [189] = 171, + [190] = 167, + [191] = 176, + [192] = 167, + [193] = 171, + [194] = 176, + [195] = 176, + [196] = 88, + [197] = 197, + [198] = 171, + [199] = 176, + [200] = 175, + [201] = 88, [202] = 167, - [203] = 199, - [204] = 174, - [205] = 196, - [206] = 178, - [207] = 174, + [203] = 176, + [204] = 197, + [205] = 171, + [206] = 176, + [207] = 171, [208] = 167, - [209] = 168, - [210] = 167, - [211] = 174, - [212] = 168, - [213] = 174, - [214] = 174, - [215] = 168, - [216] = 168, - [217] = 177, - [218] = 178, - [219] = 171, - [220] = 199, - [221] = 172, - [222] = 89, - [223] = 89, + [209] = 176, + [210] = 168, + [211] = 167, + [212] = 167, + [213] = 172, + [214] = 197, + [215] = 197, + [216] = 170, + [217] = 166, + [218] = 218, + [219] = 218, + [220] = 168, + [221] = 171, + [222] = 222, + [223] = 223, [224] = 224, [225] = 225, [226] = 226, - [227] = 227, + [227] = 82, [228] = 228, - [229] = 86, - [230] = 83, - [231] = 231, - [232] = 68, + [229] = 229, + [230] = 67, + [231] = 60, + [232] = 232, [233] = 233, [234] = 234, [235] = 235, [236] = 236, [237] = 237, - [238] = 235, + [238] = 238, [239] = 239, - [240] = 235, - [241] = 235, - [242] = 235, + [240] = 232, + [241] = 241, + [242] = 242, [243] = 243, [244] = 244, [245] = 245, - [246] = 246, - [247] = 235, - [248] = 237, - [249] = 249, - [250] = 235, - [251] = 251, - [252] = 252, - [253] = 253, - [254] = 227, - [255] = 226, - [256] = 228, - [257] = 50, + [246] = 224, + [247] = 245, + [248] = 245, + [249] = 245, + [250] = 225, + [251] = 245, + [252] = 245, + [253] = 245, + [254] = 226, + [255] = 50, + [256] = 48, + [257] = 49, [258] = 258, - [259] = 49, - [260] = 48, - [261] = 59, - [262] = 73, + [259] = 68, + [260] = 67, + [261] = 57, + [262] = 50, [263] = 48, - [264] = 49, - [265] = 81, - [266] = 70, - [267] = 50, - [268] = 61, - [269] = 82, - [270] = 68, - [271] = 85, - [272] = 64, - [273] = 57, - [274] = 231, - [275] = 80, - [276] = 65, - [277] = 67, - [278] = 69, - [279] = 55, - [280] = 58, - [281] = 83, - [282] = 74, - [283] = 88, - [284] = 72, - [285] = 71, - [286] = 63, - [287] = 60, - [288] = 86, - [289] = 83, - [290] = 68, - [291] = 78, - [292] = 77, - [293] = 86, - [294] = 233, - [295] = 76, - [296] = 62, - [297] = 56, - [298] = 87, - [299] = 79, - [300] = 58, - [301] = 253, - [302] = 239, - [303] = 237, - [304] = 246, - [305] = 237, - [306] = 251, - [307] = 245, - [308] = 249, - [309] = 243, - [310] = 252, - [311] = 236, - [312] = 234, - [313] = 244, - [314] = 314, - [315] = 54, - [316] = 75, - [317] = 80, + [264] = 73, + [265] = 87, + [266] = 80, + [267] = 60, + [268] = 64, + [269] = 71, + [270] = 62, + [271] = 83, + [272] = 228, + [273] = 49, + [274] = 58, + [275] = 59, + [276] = 61, + [277] = 69, + [278] = 82, + [279] = 81, + [280] = 55, + [281] = 65, + [282] = 85, + [283] = 67, + [284] = 82, + [285] = 74, + [286] = 60, + [287] = 76, + [288] = 63, + [289] = 66, + [290] = 56, + [291] = 77, + [292] = 229, + [293] = 79, + [294] = 70, + [295] = 78, + [296] = 86, + [297] = 64, + [298] = 234, + [299] = 244, + [300] = 232, + [301] = 232, + [302] = 238, + [303] = 233, + [304] = 237, + [305] = 243, + [306] = 239, + [307] = 236, + [308] = 241, + [309] = 235, + [310] = 242, + [311] = 51, + [312] = 312, + [313] = 313, + [314] = 84, + [315] = 87, + [316] = 50, + [317] = 48, [318] = 318, - [319] = 48, + [319] = 319, [320] = 320, [321] = 321, [322] = 49, - [323] = 323, - [324] = 324, - [325] = 89, - [326] = 49, - [327] = 89, - [328] = 50, - [329] = 48, - [330] = 330, - [331] = 330, - [332] = 48, - [333] = 330, - [334] = 334, + [323] = 88, + [324] = 88, + [325] = 48, + [326] = 50, + [327] = 327, + [328] = 328, + [329] = 49, + [330] = 48, + [331] = 327, + [332] = 50, + [333] = 333, + [334] = 328, [335] = 335, - [336] = 50, - [337] = 337, - [338] = 334, - [339] = 49, - [340] = 335, - [341] = 334, - [342] = 337, - [343] = 343, - [344] = 344, - [345] = 80, - [346] = 71, - [347] = 58, - [348] = 348, - [349] = 349, + [336] = 335, + [337] = 333, + [338] = 335, + [339] = 327, + [340] = 340, + [341] = 341, + [342] = 342, + [343] = 69, + [344] = 87, + [345] = 64, + [346] = 346, + [347] = 347, + [348] = 346, + [349] = 48, [350] = 350, - [351] = 350, - [352] = 48, + [351] = 351, + [352] = 352, [353] = 353, - [354] = 49, - [355] = 355, + [354] = 347, + [355] = 347, [356] = 356, - [357] = 350, - [358] = 349, + [357] = 50, + [358] = 358, [359] = 359, [360] = 360, [361] = 361, - [362] = 361, - [363] = 363, - [364] = 364, - [365] = 361, - [366] = 361, - [367] = 361, - [368] = 368, - [369] = 368, - [370] = 361, - [371] = 361, - [372] = 361, - [373] = 361, - [374] = 374, - [375] = 361, - [376] = 368, - [377] = 361, - [378] = 368, - [379] = 361, - [380] = 380, - [381] = 380, + [362] = 359, + [363] = 359, + [364] = 359, + [365] = 358, + [366] = 359, + [367] = 359, + [368] = 358, + [369] = 359, + [370] = 359, + [371] = 371, + [372] = 359, + [373] = 359, + [374] = 359, + [375] = 359, + [376] = 358, + [377] = 377, + [378] = 377, + [379] = 379, + [380] = 377, + [381] = 381, [382] = 382, - [383] = 380, + [383] = 383, [384] = 384, [385] = 385, [386] = 386, - [387] = 387, - [388] = 388, + [387] = 225, + [388] = 224, [389] = 389, - [390] = 227, + [390] = 390, [391] = 391, - [392] = 226, - [393] = 393, + [392] = 391, + [393] = 391, [394] = 394, - [395] = 393, - [396] = 393, + [395] = 395, + [396] = 396, [397] = 397, [398] = 398, [399] = 399, [400] = 400, - [401] = 397, + [401] = 398, [402] = 402, - [403] = 403, + [403] = 394, [404] = 404, - [405] = 405, + [405] = 399, [406] = 406, - [407] = 403, - [408] = 408, - [409] = 398, - [410] = 405, - [411] = 399, - [412] = 412, - [413] = 408, - [414] = 398, - [415] = 405, - [416] = 408, - [417] = 412, - [418] = 400, - [419] = 419, - [420] = 419, - [421] = 400, + [407] = 407, + [408] = 407, + [409] = 396, + [410] = 410, + [411] = 411, + [412] = 394, + [413] = 413, + [414] = 396, + [415] = 404, + [416] = 410, + [417] = 404, + [418] = 398, + [419] = 411, + [420] = 410, + [421] = 421, [422] = 422, - [423] = 397, - [424] = 419, - [425] = 425, - [426] = 412, - [427] = 399, + [423] = 422, + [424] = 424, + [425] = 411, + [426] = 422, + [427] = 407, [428] = 428, - [429] = 429, + [429] = 399, [430] = 430, [431] = 431, [432] = 432, - [433] = 403, + [433] = 433, [434] = 434, [435] = 435, [436] = 436, [437] = 437, - [438] = 438, + [438] = 435, [439] = 439, [440] = 440, - [441] = 440, - [442] = 442, - [443] = 443, - [444] = 438, - [445] = 436, + [441] = 432, + [442] = 435, + [443] = 439, + [444] = 444, + [445] = 445, [446] = 446, - [447] = 446, - [448] = 446, - [449] = 449, - [450] = 438, - [451] = 451, + [447] = 437, + [448] = 448, + [449] = 437, + [450] = 439, + [451] = 432, [452] = 452, - [453] = 436, - [454] = 440, + [453] = 453, + [454] = 454, [455] = 455, [456] = 456, - [457] = 456, + [457] = 457, [458] = 458, [459] = 459, - [460] = 460, - [461] = 461, - [462] = 458, - [463] = 463, - [464] = 459, + [460] = 452, + [461] = 456, + [462] = 454, + [463] = 459, + [464] = 452, [465] = 465, [466] = 466, - [467] = 466, + [467] = 467, [468] = 468, - [469] = 469, - [470] = 466, - [471] = 471, - [472] = 460, - [473] = 473, - [474] = 459, - [475] = 466, - [476] = 456, - [477] = 463, - [478] = 456, + [469] = 459, + [470] = 456, + [471] = 457, + [472] = 455, + [473] = 454, + [474] = 454, + [475] = 454, + [476] = 452, + [477] = 477, + [478] = 478, [479] = 479, [480] = 480, - [481] = 466, - [482] = 482, - [483] = 456, - [484] = 460, - [485] = 466, - [486] = 486, - [487] = 482, - [488] = 463, - [489] = 473, - [490] = 480, - [491] = 466, - [492] = 480, - [493] = 473, - [494] = 482, - [495] = 458, + [481] = 457, + [482] = 452, + [483] = 483, + [484] = 479, + [485] = 452, + [486] = 458, + [487] = 477, + [488] = 452, + [489] = 477, + [490] = 458, + [491] = 479, + [492] = 455, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { @@ -2371,15 +2361,15 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [86] = {.lex_state = 25}, [87] = {.lex_state = 25}, [88] = {.lex_state = 25}, - [89] = {.lex_state = 25}, + [89] = {.lex_state = 1}, [90] = {.lex_state = 1}, - [91] = {.lex_state = 25}, + [91] = {.lex_state = 1}, [92] = {.lex_state = 25}, [93] = {.lex_state = 25}, - [94] = {.lex_state = 1}, + [94] = {.lex_state = 25}, [95] = {.lex_state = 1}, - [96] = {.lex_state = 1}, - [97] = {.lex_state = 25}, + [96] = {.lex_state = 25}, + [97] = {.lex_state = 1}, [98] = {.lex_state = 1}, [99] = {.lex_state = 1}, [100] = {.lex_state = 1}, @@ -2506,39 +2496,39 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [221] = {.lex_state = 1}, [222] = {.lex_state = 1}, [223] = {.lex_state = 1}, - [224] = {.lex_state = 1}, - [225] = {.lex_state = 1}, + [224] = {.lex_state = 0}, + [225] = {.lex_state = 0}, [226] = {.lex_state = 0}, [227] = {.lex_state = 0}, [228] = {.lex_state = 0}, [229] = {.lex_state = 0}, [230] = {.lex_state = 0}, [231] = {.lex_state = 0}, - [232] = {.lex_state = 0}, - [233] = {.lex_state = 0}, + [232] = {.lex_state = 25}, + [233] = {.lex_state = 25}, [234] = {.lex_state = 25}, - [235] = {.lex_state = 1}, + [235] = {.lex_state = 25}, [236] = {.lex_state = 25}, [237] = {.lex_state = 25}, - [238] = {.lex_state = 1}, + [238] = {.lex_state = 25}, [239] = {.lex_state = 25}, - [240] = {.lex_state = 1}, - [241] = {.lex_state = 1}, - [242] = {.lex_state = 1}, + [240] = {.lex_state = 25}, + [241] = {.lex_state = 25}, + [242] = {.lex_state = 25}, [243] = {.lex_state = 25}, [244] = {.lex_state = 25}, - [245] = {.lex_state = 25}, - [246] = {.lex_state = 25}, + [245] = {.lex_state = 1}, + [246] = {.lex_state = 5}, [247] = {.lex_state = 1}, - [248] = {.lex_state = 25}, - [249] = {.lex_state = 25}, - [250] = {.lex_state = 1}, - [251] = {.lex_state = 25}, - [252] = {.lex_state = 25}, - [253] = {.lex_state = 25}, + [248] = {.lex_state = 1}, + [249] = {.lex_state = 1}, + [250] = {.lex_state = 5}, + [251] = {.lex_state = 1}, + [252] = {.lex_state = 1}, + [253] = {.lex_state = 1}, [254] = {.lex_state = 5}, - [255] = {.lex_state = 5}, - [256] = {.lex_state = 5}, + [255] = {.lex_state = 2}, + [256] = {.lex_state = 2}, [257] = {.lex_state = 2}, [258] = {.lex_state = 25}, [259] = {.lex_state = 2}, @@ -2554,9 +2544,9 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [269] = {.lex_state = 2}, [270] = {.lex_state = 2}, [271] = {.lex_state = 2}, - [272] = {.lex_state = 2}, + [272] = {.lex_state = 5}, [273] = {.lex_state = 2}, - [274] = {.lex_state = 5}, + [274] = {.lex_state = 2}, [275] = {.lex_state = 2}, [276] = {.lex_state = 2}, [277] = {.lex_state = 2}, @@ -2565,24 +2555,24 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [280] = {.lex_state = 2}, [281] = {.lex_state = 2}, [282] = {.lex_state = 2}, - [283] = {.lex_state = 2}, - [284] = {.lex_state = 2}, + [283] = {.lex_state = 5}, + [284] = {.lex_state = 5}, [285] = {.lex_state = 2}, - [286] = {.lex_state = 2}, + [286] = {.lex_state = 5}, [287] = {.lex_state = 2}, - [288] = {.lex_state = 5}, - [289] = {.lex_state = 5}, - [290] = {.lex_state = 5}, + [288] = {.lex_state = 2}, + [289] = {.lex_state = 2}, + [290] = {.lex_state = 2}, [291] = {.lex_state = 2}, - [292] = {.lex_state = 2}, + [292] = {.lex_state = 5}, [293] = {.lex_state = 2}, - [294] = {.lex_state = 5}, + [294] = {.lex_state = 2}, [295] = {.lex_state = 2}, [296] = {.lex_state = 2}, [297] = {.lex_state = 2}, - [298] = {.lex_state = 2}, - [299] = {.lex_state = 2}, - [300] = {.lex_state = 2}, + [298] = {.lex_state = 1}, + [299] = {.lex_state = 1}, + [300] = {.lex_state = 1}, [301] = {.lex_state = 1}, [302] = {.lex_state = 1}, [303] = {.lex_state = 1}, @@ -2593,20 +2583,20 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [308] = {.lex_state = 1}, [309] = {.lex_state = 1}, [310] = {.lex_state = 1}, - [311] = {.lex_state = 1}, + [311] = {.lex_state = 4}, [312] = {.lex_state = 1}, [313] = {.lex_state = 1}, - [314] = {.lex_state = 1}, - [315] = {.lex_state = 4}, - [316] = {.lex_state = 4}, + [314] = {.lex_state = 4}, + [315] = {.lex_state = 3}, + [316] = {.lex_state = 3}, [317] = {.lex_state = 3}, [318] = {.lex_state = 1}, - [319] = {.lex_state = 3}, + [319] = {.lex_state = 1}, [320] = {.lex_state = 1}, [321] = {.lex_state = 1}, - [322] = {.lex_state = 3}, - [323] = {.lex_state = 1}, - [324] = {.lex_state = 1}, + [322] = {.lex_state = 2}, + [323] = {.lex_state = 2}, + [324] = {.lex_state = 2}, [325] = {.lex_state = 2}, [326] = {.lex_state = 2}, [327] = {.lex_state = 2}, @@ -2622,71 +2612,71 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [337] = {.lex_state = 2}, [338] = {.lex_state = 2}, [339] = {.lex_state = 2}, - [340] = {.lex_state = 2}, - [341] = {.lex_state = 2}, + [340] = {.lex_state = 7}, + [341] = {.lex_state = 7}, [342] = {.lex_state = 2}, - [343] = {.lex_state = 7}, + [343] = {.lex_state = 2}, [344] = {.lex_state = 2}, [345] = {.lex_state = 2}, [346] = {.lex_state = 2}, [347] = {.lex_state = 2}, - [348] = {.lex_state = 7}, + [348] = {.lex_state = 2}, [349] = {.lex_state = 2}, - [350] = {.lex_state = 2}, - [351] = {.lex_state = 2}, - [352] = {.lex_state = 2}, + [350] = {.lex_state = 7}, + [351] = {.lex_state = 7}, + [352] = {.lex_state = 3}, [353] = {.lex_state = 7}, [354] = {.lex_state = 2}, - [355] = {.lex_state = 7}, - [356] = {.lex_state = 3}, + [355] = {.lex_state = 2}, + [356] = {.lex_state = 7}, [357] = {.lex_state = 2}, [358] = {.lex_state = 2}, - [359] = {.lex_state = 7}, - [360] = {.lex_state = 7}, - [361] = {.lex_state = 2}, + [359] = {.lex_state = 2}, + [360] = {.lex_state = 1}, + [361] = {.lex_state = 1}, [362] = {.lex_state = 2}, - [363] = {.lex_state = 1}, - [364] = {.lex_state = 1}, + [363] = {.lex_state = 2}, + [364] = {.lex_state = 2}, [365] = {.lex_state = 2}, [366] = {.lex_state = 2}, [367] = {.lex_state = 2}, [368] = {.lex_state = 2}, [369] = {.lex_state = 2}, [370] = {.lex_state = 2}, - [371] = {.lex_state = 2}, + [371] = {.lex_state = 1}, [372] = {.lex_state = 2}, [373] = {.lex_state = 2}, - [374] = {.lex_state = 1}, + [374] = {.lex_state = 2}, [375] = {.lex_state = 2}, [376] = {.lex_state = 2}, [377] = {.lex_state = 2}, [378] = {.lex_state = 2}, - [379] = {.lex_state = 2}, + [379] = {.lex_state = 1}, [380] = {.lex_state = 2}, - [381] = {.lex_state = 2}, + [381] = {.lex_state = 1}, [382] = {.lex_state = 1}, - [383] = {.lex_state = 2}, + [383] = {.lex_state = 1}, [384] = {.lex_state = 1}, [385] = {.lex_state = 1}, [386] = {.lex_state = 1}, - [387] = {.lex_state = 1}, - [388] = {.lex_state = 1}, + [387] = {.lex_state = 5}, + [388] = {.lex_state = 5}, [389] = {.lex_state = 1}, - [390] = {.lex_state = 5}, - [391] = {.lex_state = 1}, - [392] = {.lex_state = 5}, + [390] = {.lex_state = 25}, + [391] = {.lex_state = 25}, + [392] = {.lex_state = 25}, [393] = {.lex_state = 25}, - [394] = {.lex_state = 25}, + [394] = {.lex_state = 1}, [395] = {.lex_state = 25}, - [396] = {.lex_state = 25}, + [396] = {.lex_state = 1}, [397] = {.lex_state = 1}, [398] = {.lex_state = 1}, [399] = {.lex_state = 1}, [400] = {.lex_state = 1}, [401] = {.lex_state = 1}, - [402] = {.lex_state = 1}, + [402] = {.lex_state = 25}, [403] = {.lex_state = 1}, - [404] = {.lex_state = 25}, + [404] = {.lex_state = 1}, [405] = {.lex_state = 1}, [406] = {.lex_state = 1}, [407] = {.lex_state = 1}, @@ -2706,78 +2696,75 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [421] = {.lex_state = 1}, [422] = {.lex_state = 1}, [423] = {.lex_state = 1}, - [424] = {.lex_state = 1}, - [425] = {.lex_state = 25}, + [424] = {.lex_state = 25}, + [425] = {.lex_state = 1}, [426] = {.lex_state = 1}, [427] = {.lex_state = 1}, - [428] = {.lex_state = 25}, + [428] = {.lex_state = 1}, [429] = {.lex_state = 1}, [430] = {.lex_state = 1}, [431] = {.lex_state = 1}, [432] = {.lex_state = 1}, [433] = {.lex_state = 1}, [434] = {.lex_state = 1}, - [435] = {.lex_state = 1}, + [435] = {.lex_state = 0}, [436] = {.lex_state = 0}, - [437] = {.lex_state = 1}, - [438] = {.lex_state = 1}, + [437] = {.lex_state = 0}, + [438] = {.lex_state = 0}, [439] = {.lex_state = 0}, - [440] = {.lex_state = 0}, - [441] = {.lex_state = 0}, - [442] = {.lex_state = 1}, - [443] = {.lex_state = 1}, + [440] = {.lex_state = 1}, + [441] = {.lex_state = 1}, + [442] = {.lex_state = 0}, + [443] = {.lex_state = 0}, [444] = {.lex_state = 1}, - [445] = {.lex_state = 0}, - [446] = {.lex_state = 0}, + [445] = {.lex_state = 1}, + [446] = {.lex_state = 1}, [447] = {.lex_state = 0}, - [448] = {.lex_state = 0}, - [449] = {.lex_state = 1}, - [450] = {.lex_state = 1}, + [448] = {.lex_state = 1}, + [449] = {.lex_state = 0}, + [450] = {.lex_state = 0}, [451] = {.lex_state = 1}, - [452] = {.lex_state = 1}, - [453] = {.lex_state = 0}, + [452] = {.lex_state = 0}, + [453] = {.lex_state = 25}, [454] = {.lex_state = 0}, [455] = {.lex_state = 0}, [456] = {.lex_state = 0}, [457] = {.lex_state = 0}, [458] = {.lex_state = 0}, - [459] = {.lex_state = 0}, + [459] = {.lex_state = 1}, [460] = {.lex_state = 0}, [461] = {.lex_state = 0}, [462] = {.lex_state = 0}, [463] = {.lex_state = 1}, [464] = {.lex_state = 0}, - [465] = {.lex_state = 5}, + [465] = {.lex_state = 0}, [466] = {.lex_state = 0}, [467] = {.lex_state = 0}, - [468] = {.lex_state = 25}, - [469] = {.lex_state = 0}, + [468] = {.lex_state = 5}, + [469] = {.lex_state = 1}, [470] = {.lex_state = 0}, - [471] = {.lex_state = 25}, + [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 = 1}, - [478] = {.lex_state = 0}, - [479] = {.lex_state = 5}, - [480] = {.lex_state = 1}, + [478] = {.lex_state = 5}, + [479] = {.lex_state = 1}, + [480] = {.lex_state = 25}, [481] = {.lex_state = 0}, - [482] = {.lex_state = 1}, + [482] = {.lex_state = 0}, [483] = {.lex_state = 0}, - [484] = {.lex_state = 0}, + [484] = {.lex_state = 1}, [485] = {.lex_state = 0}, [486] = {.lex_state = 0}, [487] = {.lex_state = 1}, - [488] = {.lex_state = 1}, - [489] = {.lex_state = 0}, - [490] = {.lex_state = 1}, - [491] = {.lex_state = 0}, - [492] = {.lex_state = 1}, - [493] = {.lex_state = 0}, - [494] = {.lex_state = 1}, - [495] = {.lex_state = 0}, + [488] = {.lex_state = 0}, + [489] = {.lex_state = 1}, + [490] = {.lex_state = 0}, + [491] = {.lex_state = 1}, + [492] = {.lex_state = 0}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { @@ -2852,38 +2839,37 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_string] = ACTIONS(1), }, [1] = { - [sym_root] = STATE(486), - [sym_statement] = STATE(7), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), - [aux_sym_root_repeat1] = STATE(7), + [sym_root] = STATE(483), + [sym_statement] = STATE(24), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), + [aux_sym_root_repeat1] = STATE(24), [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(7), @@ -2916,38 +2902,37 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_string] = ACTIONS(41), }, [2] = { - [sym_statement] = STATE(26), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), - [aux_sym_root_repeat1] = STATE(26), - [aux_sym_map_repeat1] = STATE(423), + [sym_statement] = STATE(17), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), + [aux_sym_root_repeat1] = STATE(17), + [aux_sym_map_repeat1] = STATE(403), [sym_identifier] = ACTIONS(43), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(7), @@ -2981,38 +2966,37 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_string] = ACTIONS(41), }, [3] = { - [sym_statement] = STATE(11), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), - [aux_sym_root_repeat1] = STATE(11), - [aux_sym_map_repeat1] = STATE(401), + [sym_statement] = STATE(13), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), + [aux_sym_root_repeat1] = STATE(13), + [aux_sym_map_repeat1] = STATE(412), [sym_identifier] = ACTIONS(43), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(7), @@ -3046,38 +3030,37 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_string] = ACTIONS(41), }, [4] = { - [sym_statement] = STATE(9), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), - [aux_sym_root_repeat1] = STATE(9), - [aux_sym_map_repeat1] = STATE(397), + [sym_statement] = STATE(23), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), + [aux_sym_root_repeat1] = STATE(23), + [aux_sym_map_repeat1] = STATE(394), [sym_identifier] = ACTIONS(43), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(7), @@ -3112,35 +3095,34 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { }, [5] = { [sym_statement] = STATE(5), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), [aux_sym_root_repeat1] = STATE(5), [ts_builtin_sym_end] = ACTIONS(51), [sym_identifier] = ACTIONS(53), @@ -3176,43 +3158,42 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_string] = ACTIONS(107), }, [6] = { - [sym_statement] = STATE(11), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), - [aux_sym_root_repeat1] = STATE(11), + [sym_statement] = STATE(23), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), + [aux_sym_root_repeat1] = STATE(23), [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(7), [anon_sym_async] = ACTIONS(9), [anon_sym_LBRACE] = ACTIONS(11), - [anon_sym_RBRACE] = ACTIONS(47), + [anon_sym_RBRACE] = ACTIONS(49), [anon_sym_struct] = ACTIONS(13), [anon_sym_new] = ACTIONS(15), [sym_integer] = ACTIONS(17), @@ -3241,42 +3222,41 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { }, [7] = { [sym_statement] = STATE(5), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), [aux_sym_root_repeat1] = STATE(5), - [ts_builtin_sym_end] = ACTIONS(110), [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(7), [anon_sym_async] = ACTIONS(9), [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_RBRACE] = ACTIONS(110), [anon_sym_struct] = ACTIONS(13), [anon_sym_new] = ACTIONS(15), [sym_integer] = ACTIONS(17), @@ -3304,37 +3284,36 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_string] = ACTIONS(41), }, [8] = { - [sym_statement] = STATE(16), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), - [aux_sym_root_repeat1] = STATE(16), + [sym_statement] = STATE(9), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), + [aux_sym_root_repeat1] = STATE(9), [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(7), @@ -3369,35 +3348,34 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { }, [9] = { [sym_statement] = STATE(5), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), [aux_sym_root_repeat1] = STATE(5), [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), @@ -3433,99 +3411,34 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { }, [10] = { [sym_statement] = STATE(5), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), - [aux_sym_root_repeat1] = STATE(5), - [sym_identifier] = ACTIONS(5), - [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(7), - [anon_sym_async] = ACTIONS(9), - [anon_sym_LBRACE] = ACTIONS(11), - [anon_sym_RBRACE] = ACTIONS(116), - [anon_sym_struct] = ACTIONS(13), - [anon_sym_new] = ACTIONS(15), - [sym_integer] = ACTIONS(17), - [sym_float] = ACTIONS(19), - [sym_string] = ACTIONS(19), - [anon_sym_true] = ACTIONS(21), - [anon_sym_false] = ACTIONS(21), - [anon_sym_LBRACK] = ACTIONS(23), - [anon_sym_none] = ACTIONS(25), - [anon_sym_some] = ACTIONS(27), - [anon_sym_if] = ACTIONS(29), - [anon_sym_match] = ACTIONS(31), - [anon_sym_while] = ACTIONS(33), - [anon_sym_for] = ACTIONS(35), - [anon_sym_asyncfor] = ACTIONS(37), - [anon_sym_return] = ACTIONS(39), - [anon_sym_args] = ACTIONS(41), - [anon_sym_assert_equal] = ACTIONS(41), - [anon_sym_env] = ACTIONS(41), - [anon_sym_fs] = ACTIONS(41), - [anon_sym_json] = ACTIONS(41), - [anon_sym_length] = ACTIONS(41), - [anon_sym_output] = ACTIONS(41), - [anon_sym_random] = ACTIONS(41), - [anon_sym_string] = ACTIONS(41), - }, - [11] = { - [sym_statement] = STATE(5), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), [aux_sym_root_repeat1] = STATE(5), [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), @@ -3559,38 +3472,100 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_random] = ACTIONS(41), [anon_sym_string] = ACTIONS(41), }, + [11] = { + [sym_statement] = STATE(5), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), + [aux_sym_root_repeat1] = STATE(5), + [sym_identifier] = ACTIONS(5), + [sym__comment] = ACTIONS(3), + [anon_sym_LPAREN] = ACTIONS(7), + [anon_sym_async] = ACTIONS(9), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_RBRACE] = ACTIONS(116), + [anon_sym_struct] = ACTIONS(13), + [anon_sym_new] = ACTIONS(15), + [sym_integer] = ACTIONS(17), + [sym_float] = ACTIONS(19), + [sym_string] = ACTIONS(19), + [anon_sym_true] = ACTIONS(21), + [anon_sym_false] = ACTIONS(21), + [anon_sym_LBRACK] = ACTIONS(23), + [anon_sym_none] = ACTIONS(25), + [anon_sym_some] = ACTIONS(27), + [anon_sym_if] = ACTIONS(29), + [anon_sym_match] = ACTIONS(31), + [anon_sym_while] = ACTIONS(33), + [anon_sym_for] = ACTIONS(35), + [anon_sym_asyncfor] = ACTIONS(37), + [anon_sym_return] = ACTIONS(39), + [anon_sym_args] = ACTIONS(41), + [anon_sym_assert_equal] = ACTIONS(41), + [anon_sym_env] = ACTIONS(41), + [anon_sym_fs] = ACTIONS(41), + [anon_sym_json] = ACTIONS(41), + [anon_sym_length] = ACTIONS(41), + [anon_sym_output] = ACTIONS(41), + [anon_sym_random] = ACTIONS(41), + [anon_sym_string] = ACTIONS(41), + }, [12] = { - [sym_statement] = STATE(22), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), - [aux_sym_root_repeat1] = STATE(22), + [sym_statement] = STATE(5), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), + [aux_sym_root_repeat1] = STATE(5), [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(7), @@ -3624,164 +3599,35 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_string] = ACTIONS(41), }, [13] = { - [sym_statement] = STATE(19), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), - [aux_sym_root_repeat1] = STATE(19), - [sym_identifier] = ACTIONS(5), - [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(7), - [anon_sym_async] = ACTIONS(9), - [anon_sym_LBRACE] = ACTIONS(11), - [anon_sym_RBRACE] = ACTIONS(114), - [anon_sym_struct] = ACTIONS(13), - [anon_sym_new] = ACTIONS(15), - [sym_integer] = ACTIONS(17), - [sym_float] = ACTIONS(19), - [sym_string] = ACTIONS(19), - [anon_sym_true] = ACTIONS(21), - [anon_sym_false] = ACTIONS(21), - [anon_sym_LBRACK] = ACTIONS(23), - [anon_sym_none] = ACTIONS(25), - [anon_sym_some] = ACTIONS(27), - [anon_sym_if] = ACTIONS(29), - [anon_sym_match] = ACTIONS(31), - [anon_sym_while] = ACTIONS(33), - [anon_sym_for] = ACTIONS(35), - [anon_sym_asyncfor] = ACTIONS(37), - [anon_sym_return] = ACTIONS(39), - [anon_sym_args] = ACTIONS(41), - [anon_sym_assert_equal] = ACTIONS(41), - [anon_sym_env] = ACTIONS(41), - [anon_sym_fs] = ACTIONS(41), - [anon_sym_json] = ACTIONS(41), - [anon_sym_length] = ACTIONS(41), - [anon_sym_output] = ACTIONS(41), - [anon_sym_random] = ACTIONS(41), - [anon_sym_string] = ACTIONS(41), - }, - [14] = { - [sym_statement] = STATE(9), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), - [aux_sym_root_repeat1] = STATE(9), - [sym_identifier] = ACTIONS(5), - [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(7), - [anon_sym_async] = ACTIONS(9), - [anon_sym_LBRACE] = ACTIONS(11), - [anon_sym_RBRACE] = ACTIONS(49), - [anon_sym_struct] = ACTIONS(13), - [anon_sym_new] = ACTIONS(15), - [sym_integer] = ACTIONS(17), - [sym_float] = ACTIONS(19), - [sym_string] = ACTIONS(19), - [anon_sym_true] = ACTIONS(21), - [anon_sym_false] = ACTIONS(21), - [anon_sym_LBRACK] = ACTIONS(23), - [anon_sym_none] = ACTIONS(25), - [anon_sym_some] = ACTIONS(27), - [anon_sym_if] = ACTIONS(29), - [anon_sym_match] = ACTIONS(31), - [anon_sym_while] = ACTIONS(33), - [anon_sym_for] = ACTIONS(35), - [anon_sym_asyncfor] = ACTIONS(37), - [anon_sym_return] = ACTIONS(39), - [anon_sym_args] = ACTIONS(41), - [anon_sym_assert_equal] = ACTIONS(41), - [anon_sym_env] = ACTIONS(41), - [anon_sym_fs] = ACTIONS(41), - [anon_sym_json] = ACTIONS(41), - [anon_sym_length] = ACTIONS(41), - [anon_sym_output] = ACTIONS(41), - [anon_sym_random] = ACTIONS(41), - [anon_sym_string] = ACTIONS(41), - }, - [15] = { [sym_statement] = STATE(5), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), [aux_sym_root_repeat1] = STATE(5), [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), @@ -3815,37 +3661,162 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_random] = ACTIONS(41), [anon_sym_string] = ACTIONS(41), }, + [14] = { + [sym_statement] = STATE(11), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), + [aux_sym_root_repeat1] = STATE(11), + [sym_identifier] = ACTIONS(5), + [sym__comment] = ACTIONS(3), + [anon_sym_LPAREN] = ACTIONS(7), + [anon_sym_async] = ACTIONS(9), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_RBRACE] = ACTIONS(120), + [anon_sym_struct] = ACTIONS(13), + [anon_sym_new] = ACTIONS(15), + [sym_integer] = ACTIONS(17), + [sym_float] = ACTIONS(19), + [sym_string] = ACTIONS(19), + [anon_sym_true] = ACTIONS(21), + [anon_sym_false] = ACTIONS(21), + [anon_sym_LBRACK] = ACTIONS(23), + [anon_sym_none] = ACTIONS(25), + [anon_sym_some] = ACTIONS(27), + [anon_sym_if] = ACTIONS(29), + [anon_sym_match] = ACTIONS(31), + [anon_sym_while] = ACTIONS(33), + [anon_sym_for] = ACTIONS(35), + [anon_sym_asyncfor] = ACTIONS(37), + [anon_sym_return] = ACTIONS(39), + [anon_sym_args] = ACTIONS(41), + [anon_sym_assert_equal] = ACTIONS(41), + [anon_sym_env] = ACTIONS(41), + [anon_sym_fs] = ACTIONS(41), + [anon_sym_json] = ACTIONS(41), + [anon_sym_length] = ACTIONS(41), + [anon_sym_output] = ACTIONS(41), + [anon_sym_random] = ACTIONS(41), + [anon_sym_string] = ACTIONS(41), + }, + [15] = { + [sym_statement] = STATE(13), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), + [aux_sym_root_repeat1] = STATE(13), + [sym_identifier] = ACTIONS(5), + [sym__comment] = ACTIONS(3), + [anon_sym_LPAREN] = ACTIONS(7), + [anon_sym_async] = ACTIONS(9), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_RBRACE] = ACTIONS(47), + [anon_sym_struct] = ACTIONS(13), + [anon_sym_new] = ACTIONS(15), + [sym_integer] = ACTIONS(17), + [sym_float] = ACTIONS(19), + [sym_string] = ACTIONS(19), + [anon_sym_true] = ACTIONS(21), + [anon_sym_false] = ACTIONS(21), + [anon_sym_LBRACK] = ACTIONS(23), + [anon_sym_none] = ACTIONS(25), + [anon_sym_some] = ACTIONS(27), + [anon_sym_if] = ACTIONS(29), + [anon_sym_match] = ACTIONS(31), + [anon_sym_while] = ACTIONS(33), + [anon_sym_for] = ACTIONS(35), + [anon_sym_asyncfor] = ACTIONS(37), + [anon_sym_return] = ACTIONS(39), + [anon_sym_args] = ACTIONS(41), + [anon_sym_assert_equal] = ACTIONS(41), + [anon_sym_env] = ACTIONS(41), + [anon_sym_fs] = ACTIONS(41), + [anon_sym_json] = ACTIONS(41), + [anon_sym_length] = ACTIONS(41), + [anon_sym_output] = ACTIONS(41), + [anon_sym_random] = ACTIONS(41), + [anon_sym_string] = ACTIONS(41), + }, [16] = { [sym_statement] = STATE(5), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), [aux_sym_root_repeat1] = STATE(5), [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), @@ -3881,35 +3852,34 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { }, [17] = { [sym_statement] = STATE(5), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), [aux_sym_root_repeat1] = STATE(5), [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), @@ -3944,37 +3914,36 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_string] = ACTIONS(41), }, [18] = { - [sym_statement] = STATE(15), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), - [aux_sym_root_repeat1] = STATE(15), + [sym_statement] = STATE(16), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), + [aux_sym_root_repeat1] = STATE(16), [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(7), @@ -4008,37 +3977,36 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_string] = ACTIONS(41), }, [19] = { - [sym_statement] = STATE(5), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), - [aux_sym_root_repeat1] = STATE(5), + [sym_statement] = STATE(10), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), + [aux_sym_root_repeat1] = STATE(10), [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(7), @@ -4072,37 +4040,36 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_string] = ACTIONS(41), }, [20] = { - [sym_statement] = STATE(17), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), - [aux_sym_root_repeat1] = STATE(17), + [sym_statement] = STATE(26), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), + [aux_sym_root_repeat1] = STATE(26), [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(7), @@ -4136,43 +4103,42 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_string] = ACTIONS(41), }, [21] = { - [sym_statement] = STATE(25), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), - [aux_sym_root_repeat1] = STATE(25), + [sym_statement] = STATE(17), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), + [aux_sym_root_repeat1] = STATE(17), [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(7), [anon_sym_async] = ACTIONS(9), [anon_sym_LBRACE] = ACTIONS(11), - [anon_sym_RBRACE] = ACTIONS(130), + [anon_sym_RBRACE] = ACTIONS(45), [anon_sym_struct] = ACTIONS(13), [anon_sym_new] = ACTIONS(15), [sym_integer] = ACTIONS(17), @@ -4200,37 +4166,36 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_string] = ACTIONS(41), }, [22] = { - [sym_statement] = STATE(5), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), - [aux_sym_root_repeat1] = STATE(5), + [sym_statement] = STATE(12), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), + [aux_sym_root_repeat1] = STATE(12), [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(7), @@ -4264,101 +4229,36 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_string] = ACTIONS(41), }, [23] = { - [sym_statement] = STATE(26), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), - [aux_sym_root_repeat1] = STATE(26), - [sym_identifier] = ACTIONS(5), - [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(7), - [anon_sym_async] = ACTIONS(9), - [anon_sym_LBRACE] = ACTIONS(11), - [anon_sym_RBRACE] = ACTIONS(45), - [anon_sym_struct] = ACTIONS(13), - [anon_sym_new] = ACTIONS(15), - [sym_integer] = ACTIONS(17), - [sym_float] = ACTIONS(19), - [sym_string] = ACTIONS(19), - [anon_sym_true] = ACTIONS(21), - [anon_sym_false] = ACTIONS(21), - [anon_sym_LBRACK] = ACTIONS(23), - [anon_sym_none] = ACTIONS(25), - [anon_sym_some] = ACTIONS(27), - [anon_sym_if] = ACTIONS(29), - [anon_sym_match] = ACTIONS(31), - [anon_sym_while] = ACTIONS(33), - [anon_sym_for] = ACTIONS(35), - [anon_sym_asyncfor] = ACTIONS(37), - [anon_sym_return] = ACTIONS(39), - [anon_sym_args] = ACTIONS(41), - [anon_sym_assert_equal] = ACTIONS(41), - [anon_sym_env] = ACTIONS(41), - [anon_sym_fs] = ACTIONS(41), - [anon_sym_json] = ACTIONS(41), - [anon_sym_length] = ACTIONS(41), - [anon_sym_output] = ACTIONS(41), - [anon_sym_random] = ACTIONS(41), - [anon_sym_string] = ACTIONS(41), - }, - [24] = { - [sym_statement] = STATE(10), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), - [aux_sym_root_repeat1] = STATE(10), + [sym_statement] = STATE(5), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), + [aux_sym_root_repeat1] = STATE(5), [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(7), @@ -4391,44 +4291,106 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_random] = ACTIONS(41), [anon_sym_string] = ACTIONS(41), }, - [25] = { + [24] = { [sym_statement] = STATE(5), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), [aux_sym_root_repeat1] = STATE(5), + [ts_builtin_sym_end] = ACTIONS(134), [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(7), [anon_sym_async] = ACTIONS(9), [anon_sym_LBRACE] = ACTIONS(11), - [anon_sym_RBRACE] = ACTIONS(134), + [anon_sym_struct] = ACTIONS(13), + [anon_sym_new] = ACTIONS(15), + [sym_integer] = ACTIONS(17), + [sym_float] = ACTIONS(19), + [sym_string] = ACTIONS(19), + [anon_sym_true] = ACTIONS(21), + [anon_sym_false] = ACTIONS(21), + [anon_sym_LBRACK] = ACTIONS(23), + [anon_sym_none] = ACTIONS(25), + [anon_sym_some] = ACTIONS(27), + [anon_sym_if] = ACTIONS(29), + [anon_sym_match] = ACTIONS(31), + [anon_sym_while] = ACTIONS(33), + [anon_sym_for] = ACTIONS(35), + [anon_sym_asyncfor] = ACTIONS(37), + [anon_sym_return] = ACTIONS(39), + [anon_sym_args] = ACTIONS(41), + [anon_sym_assert_equal] = ACTIONS(41), + [anon_sym_env] = ACTIONS(41), + [anon_sym_fs] = ACTIONS(41), + [anon_sym_json] = ACTIONS(41), + [anon_sym_length] = ACTIONS(41), + [anon_sym_output] = ACTIONS(41), + [anon_sym_random] = ACTIONS(41), + [anon_sym_string] = ACTIONS(41), + }, + [25] = { + [sym_statement] = STATE(7), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), + [aux_sym_root_repeat1] = STATE(7), + [sym_identifier] = ACTIONS(5), + [sym__comment] = ACTIONS(3), + [anon_sym_LPAREN] = ACTIONS(7), + [anon_sym_async] = ACTIONS(9), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_RBRACE] = ACTIONS(132), [anon_sym_struct] = ACTIONS(13), [anon_sym_new] = ACTIONS(15), [sym_integer] = ACTIONS(17), @@ -4457,42 +4419,41 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { }, [26] = { [sym_statement] = STATE(5), - [sym_expression] = STATE(89), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(237), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(237), - [sym_index_assignment] = STATE(237), - [sym_if_else] = STATE(237), - [sym_if] = STATE(227), - [sym_match] = STATE(237), - [sym_while] = STATE(237), - [sym_for] = STATE(237), - [sym_return] = STATE(237), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), + [sym_expression] = STATE(92), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(240), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(240), + [sym_index_assignment] = STATE(240), + [sym_if_else] = STATE(240), + [sym_if] = STATE(224), + [sym_match] = STATE(240), + [sym_while] = STATE(240), + [sym_for] = STATE(240), + [sym_return] = STATE(240), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), [aux_sym_root_repeat1] = STATE(5), [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(7), [anon_sym_async] = ACTIONS(9), [anon_sym_LBRACE] = ACTIONS(11), - [anon_sym_RBRACE] = ACTIONS(132), + [anon_sym_RBRACE] = ACTIONS(130), [anon_sym_struct] = ACTIONS(13), [anon_sym_new] = ACTIONS(15), [sym_integer] = ACTIONS(17), @@ -4520,98 +4481,96 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_string] = ACTIONS(41), }, [27] = { - [sym_statement] = STATE(236), - [sym_expression] = STATE(93), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(248), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(248), - [sym_index_assignment] = STATE(248), - [sym_if_else] = STATE(248), - [sym_if] = STATE(227), - [sym_match] = STATE(248), - [sym_while] = STATE(248), - [sym_for] = STATE(248), - [sym_return] = STATE(248), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), - [sym_identifier] = ACTIONS(5), + [sym_statement] = STATE(428), + [sym_expression] = STATE(323), + [sym__expression_kind] = STATE(288), + [sym_block] = STATE(300), + [sym_value] = STATE(265), + [sym_structure] = STATE(279), + [sym_new] = STATE(288), + [sym_boolean] = STATE(279), + [sym_list] = STATE(279), + [sym_map] = STATE(279), + [sym_option] = STATE(279), + [sym_index] = STATE(314), + [sym_index_expression] = STATE(464), + [sym_math] = STATE(288), + [sym_logic] = STATE(288), + [sym_assignment] = STATE(300), + [sym_index_assignment] = STATE(300), + [sym_if_else] = STATE(300), + [sym_if] = STATE(388), + [sym_match] = STATE(300), + [sym_while] = STATE(300), + [sym_for] = STATE(300), + [sym_return] = STATE(300), + [sym_function] = STATE(279), + [sym_function_expression] = STATE(471), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(277), + [sym_yield] = STATE(277), + [sym_built_in_value] = STATE(279), + [sym_identifier] = ACTIONS(136), [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(7), - [anon_sym_async] = ACTIONS(9), - [anon_sym_LBRACE] = ACTIONS(11), - [anon_sym_struct] = ACTIONS(13), - [anon_sym_new] = ACTIONS(15), - [sym_integer] = ACTIONS(17), - [sym_float] = ACTIONS(19), - [sym_string] = ACTIONS(19), - [anon_sym_true] = ACTIONS(21), - [anon_sym_false] = ACTIONS(21), - [anon_sym_LBRACK] = ACTIONS(23), - [anon_sym_none] = ACTIONS(25), - [anon_sym_some] = ACTIONS(27), - [anon_sym_if] = ACTIONS(29), - [anon_sym_match] = ACTIONS(31), - [anon_sym_while] = ACTIONS(33), - [anon_sym_for] = ACTIONS(35), - [anon_sym_asyncfor] = ACTIONS(37), - [anon_sym_return] = ACTIONS(39), - [anon_sym_args] = ACTIONS(41), - [anon_sym_assert_equal] = ACTIONS(41), - [anon_sym_env] = ACTIONS(41), - [anon_sym_fs] = ACTIONS(41), - [anon_sym_json] = ACTIONS(41), - [anon_sym_length] = ACTIONS(41), - [anon_sym_output] = ACTIONS(41), - [anon_sym_random] = ACTIONS(41), - [anon_sym_string] = ACTIONS(41), + [anon_sym_LPAREN] = ACTIONS(138), + [anon_sym_async] = ACTIONS(140), + [anon_sym_LBRACE] = ACTIONS(142), + [anon_sym_struct] = ACTIONS(144), + [anon_sym_new] = ACTIONS(146), + [sym_integer] = ACTIONS(148), + [sym_float] = ACTIONS(150), + [sym_string] = ACTIONS(150), + [anon_sym_true] = ACTIONS(152), + [anon_sym_false] = ACTIONS(152), + [anon_sym_LBRACK] = ACTIONS(154), + [anon_sym_none] = ACTIONS(156), + [anon_sym_some] = ACTIONS(158), + [anon_sym_if] = ACTIONS(160), + [anon_sym_match] = ACTIONS(162), + [anon_sym_while] = ACTIONS(164), + [anon_sym_for] = ACTIONS(166), + [anon_sym_asyncfor] = ACTIONS(168), + [anon_sym_return] = ACTIONS(170), + [anon_sym_args] = ACTIONS(172), + [anon_sym_assert_equal] = ACTIONS(172), + [anon_sym_env] = ACTIONS(172), + [anon_sym_fs] = ACTIONS(172), + [anon_sym_json] = ACTIONS(172), + [anon_sym_length] = ACTIONS(172), + [anon_sym_output] = ACTIONS(172), + [anon_sym_random] = ACTIONS(172), + [anon_sym_string] = ACTIONS(172), }, [28] = { - [sym_statement] = STATE(435), - [sym_expression] = STATE(327), - [sym__expression_kind] = STATE(265), - [sym_block] = STATE(305), - [sym_value] = STATE(275), - [sym_type_definition] = STATE(268), + [sym_statement] = STATE(434), + [sym_expression] = STATE(323), + [sym__expression_kind] = STATE(288), + [sym_block] = STATE(300), + [sym_value] = STATE(265), [sym_structure] = STATE(279), - [sym_new] = STATE(265), - [sym_boolean] = STATE(268), - [sym_list] = STATE(268), - [sym_map] = STATE(268), - [sym_option] = STATE(268), - [sym_index] = STATE(316), - [sym_index_expression] = STATE(475), - [sym_math] = STATE(265), - [sym_logic] = STATE(265), - [sym_assignment] = STATE(305), - [sym_index_assignment] = STATE(305), - [sym_if_else] = STATE(305), - [sym_if] = STATE(390), - [sym_match] = STATE(305), - [sym_while] = STATE(305), - [sym_for] = STATE(305), - [sym_return] = STATE(305), - [sym_function] = STATE(268), - [sym_function_expression] = STATE(472), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(285), - [sym_yield] = STATE(285), - [sym_built_in_value] = STATE(268), + [sym_new] = STATE(288), + [sym_boolean] = STATE(279), + [sym_list] = STATE(279), + [sym_map] = STATE(279), + [sym_option] = STATE(279), + [sym_index] = STATE(314), + [sym_index_expression] = STATE(464), + [sym_math] = STATE(288), + [sym_logic] = STATE(288), + [sym_assignment] = STATE(300), + [sym_index_assignment] = STATE(300), + [sym_if_else] = STATE(300), + [sym_if] = STATE(388), + [sym_match] = STATE(300), + [sym_while] = STATE(300), + [sym_for] = STATE(300), + [sym_return] = STATE(300), + [sym_function] = STATE(279), + [sym_function_expression] = STATE(471), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(277), + [sym_yield] = STATE(277), + [sym_built_in_value] = STATE(279), [sym_identifier] = ACTIONS(136), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(138), @@ -4644,98 +4603,96 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_string] = ACTIONS(172), }, [29] = { - [sym_statement] = STATE(437), - [sym_expression] = STATE(327), - [sym__expression_kind] = STATE(265), - [sym_block] = STATE(305), - [sym_value] = STATE(275), - [sym_type_definition] = STATE(268), - [sym_structure] = STATE(279), - [sym_new] = STATE(265), - [sym_boolean] = STATE(268), - [sym_list] = STATE(268), - [sym_map] = STATE(268), - [sym_option] = STATE(268), - [sym_index] = STATE(316), - [sym_index_expression] = STATE(475), - [sym_math] = STATE(265), - [sym_logic] = STATE(265), - [sym_assignment] = STATE(305), - [sym_index_assignment] = STATE(305), - [sym_if_else] = STATE(305), - [sym_if] = STATE(390), - [sym_match] = STATE(305), - [sym_while] = STATE(305), - [sym_for] = STATE(305), - [sym_return] = STATE(305), - [sym_function] = STATE(268), - [sym_function_expression] = STATE(472), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(285), - [sym_yield] = STATE(285), - [sym_built_in_value] = STATE(268), - [sym_identifier] = ACTIONS(136), + [sym_statement] = STATE(303), + [sym_expression] = STATE(196), + [sym__expression_kind] = STATE(125), + [sym_block] = STATE(301), + [sym_value] = STATE(126), + [sym_structure] = STATE(129), + [sym_new] = STATE(125), + [sym_boolean] = STATE(129), + [sym_list] = STATE(129), + [sym_map] = STATE(129), + [sym_option] = STATE(129), + [sym_index] = STATE(134), + [sym_index_expression] = STATE(476), + [sym_math] = STATE(125), + [sym_logic] = STATE(125), + [sym_assignment] = STATE(301), + [sym_index_assignment] = STATE(301), + [sym_if_else] = STATE(301), + [sym_if] = STATE(246), + [sym_match] = STATE(301), + [sym_while] = STATE(301), + [sym_for] = STATE(301), + [sym_return] = STATE(301), + [sym_function] = STATE(129), + [sym_function_expression] = STATE(457), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(119), + [sym_yield] = STATE(119), + [sym_built_in_value] = STATE(129), + [sym_identifier] = ACTIONS(174), [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(138), - [anon_sym_async] = ACTIONS(140), - [anon_sym_LBRACE] = ACTIONS(142), - [anon_sym_struct] = ACTIONS(144), - [anon_sym_new] = ACTIONS(146), - [sym_integer] = ACTIONS(148), - [sym_float] = ACTIONS(150), - [sym_string] = ACTIONS(150), - [anon_sym_true] = ACTIONS(152), - [anon_sym_false] = ACTIONS(152), - [anon_sym_LBRACK] = ACTIONS(154), - [anon_sym_none] = ACTIONS(156), - [anon_sym_some] = ACTIONS(158), + [anon_sym_LPAREN] = ACTIONS(176), + [anon_sym_async] = ACTIONS(178), + [anon_sym_LBRACE] = ACTIONS(180), + [anon_sym_struct] = ACTIONS(182), + [anon_sym_new] = ACTIONS(184), + [sym_integer] = ACTIONS(186), + [sym_float] = ACTIONS(188), + [sym_string] = ACTIONS(188), + [anon_sym_true] = ACTIONS(190), + [anon_sym_false] = ACTIONS(190), + [anon_sym_LBRACK] = ACTIONS(192), + [anon_sym_none] = ACTIONS(194), + [anon_sym_some] = ACTIONS(196), [anon_sym_if] = ACTIONS(160), [anon_sym_match] = ACTIONS(162), - [anon_sym_while] = ACTIONS(164), - [anon_sym_for] = ACTIONS(166), - [anon_sym_asyncfor] = ACTIONS(168), - [anon_sym_return] = ACTIONS(170), - [anon_sym_args] = ACTIONS(172), - [anon_sym_assert_equal] = ACTIONS(172), - [anon_sym_env] = ACTIONS(172), - [anon_sym_fs] = ACTIONS(172), - [anon_sym_json] = ACTIONS(172), - [anon_sym_length] = ACTIONS(172), - [anon_sym_output] = ACTIONS(172), - [anon_sym_random] = ACTIONS(172), - [anon_sym_string] = ACTIONS(172), + [anon_sym_while] = ACTIONS(198), + [anon_sym_for] = ACTIONS(200), + [anon_sym_asyncfor] = ACTIONS(202), + [anon_sym_return] = ACTIONS(204), + [anon_sym_args] = ACTIONS(206), + [anon_sym_assert_equal] = ACTIONS(206), + [anon_sym_env] = ACTIONS(206), + [anon_sym_fs] = ACTIONS(206), + [anon_sym_json] = ACTIONS(206), + [anon_sym_length] = ACTIONS(206), + [anon_sym_output] = ACTIONS(206), + [anon_sym_random] = ACTIONS(206), + [anon_sym_string] = ACTIONS(206), }, [30] = { - [sym_statement] = STATE(306), - [sym_expression] = STATE(325), - [sym__expression_kind] = STATE(265), - [sym_block] = STATE(303), - [sym_value] = STATE(275), - [sym_type_definition] = STATE(268), + [sym_statement] = STATE(400), + [sym_expression] = STATE(323), + [sym__expression_kind] = STATE(288), + [sym_block] = STATE(300), + [sym_value] = STATE(265), [sym_structure] = STATE(279), - [sym_new] = STATE(265), - [sym_boolean] = STATE(268), - [sym_list] = STATE(268), - [sym_map] = STATE(268), - [sym_option] = STATE(268), - [sym_index] = STATE(316), - [sym_index_expression] = STATE(475), - [sym_math] = STATE(265), - [sym_logic] = STATE(265), - [sym_assignment] = STATE(303), - [sym_index_assignment] = STATE(303), - [sym_if_else] = STATE(303), - [sym_if] = STATE(390), - [sym_match] = STATE(303), - [sym_while] = STATE(303), - [sym_for] = STATE(303), - [sym_return] = STATE(303), - [sym_function] = STATE(268), - [sym_function_expression] = STATE(472), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(285), - [sym_yield] = STATE(285), - [sym_built_in_value] = STATE(268), + [sym_new] = STATE(288), + [sym_boolean] = STATE(279), + [sym_list] = STATE(279), + [sym_map] = STATE(279), + [sym_option] = STATE(279), + [sym_index] = STATE(314), + [sym_index_expression] = STATE(464), + [sym_math] = STATE(288), + [sym_logic] = STATE(288), + [sym_assignment] = STATE(300), + [sym_index_assignment] = STATE(300), + [sym_if_else] = STATE(300), + [sym_if] = STATE(388), + [sym_match] = STATE(300), + [sym_while] = STATE(300), + [sym_for] = STATE(300), + [sym_return] = STATE(300), + [sym_function] = STATE(279), + [sym_function_expression] = STATE(471), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(277), + [sym_yield] = STATE(277), + [sym_built_in_value] = STATE(279), [sym_identifier] = ACTIONS(136), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(138), @@ -4768,36 +4725,35 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_string] = ACTIONS(172), }, [31] = { - [sym_statement] = STATE(306), - [sym_expression] = STATE(222), - [sym__expression_kind] = STATE(100), - [sym_block] = STATE(303), - [sym_value] = STATE(107), - [sym_type_definition] = STATE(105), - [sym_structure] = STATE(108), - [sym_new] = STATE(100), - [sym_boolean] = STATE(105), - [sym_list] = STATE(105), - [sym_map] = STATE(105), - [sym_option] = STATE(105), - [sym_index] = STATE(137), - [sym_index_expression] = STATE(470), - [sym_math] = STATE(100), - [sym_logic] = STATE(100), - [sym_assignment] = STATE(303), - [sym_index_assignment] = STATE(303), - [sym_if_else] = STATE(303), - [sym_if] = STATE(254), - [sym_match] = STATE(303), - [sym_while] = STATE(303), - [sym_for] = STATE(303), - [sym_return] = STATE(303), - [sym_function] = STATE(105), - [sym_function_expression] = STATE(460), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(111), - [sym_yield] = STATE(111), - [sym_built_in_value] = STATE(105), + [sym_statement] = STATE(305), + [sym_expression] = STATE(196), + [sym__expression_kind] = STATE(125), + [sym_block] = STATE(301), + [sym_value] = STATE(126), + [sym_structure] = STATE(129), + [sym_new] = STATE(125), + [sym_boolean] = STATE(129), + [sym_list] = STATE(129), + [sym_map] = STATE(129), + [sym_option] = STATE(129), + [sym_index] = STATE(134), + [sym_index_expression] = STATE(476), + [sym_math] = STATE(125), + [sym_logic] = STATE(125), + [sym_assignment] = STATE(301), + [sym_index_assignment] = STATE(301), + [sym_if_else] = STATE(301), + [sym_if] = STATE(246), + [sym_match] = STATE(301), + [sym_while] = STATE(301), + [sym_for] = STATE(301), + [sym_return] = STATE(301), + [sym_function] = STATE(129), + [sym_function_expression] = STATE(457), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(119), + [sym_yield] = STATE(119), + [sym_built_in_value] = STATE(129), [sym_identifier] = ACTIONS(174), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(176), @@ -4831,97 +4787,34 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { }, [32] = { [sym_statement] = STATE(310), - [sym_expression] = STATE(325), - [sym__expression_kind] = STATE(265), - [sym_block] = STATE(303), - [sym_value] = STATE(275), - [sym_type_definition] = STATE(268), - [sym_structure] = STATE(279), - [sym_new] = STATE(265), - [sym_boolean] = STATE(268), - [sym_list] = STATE(268), - [sym_map] = STATE(268), - [sym_option] = STATE(268), - [sym_index] = STATE(316), - [sym_index_expression] = STATE(475), - [sym_math] = STATE(265), - [sym_logic] = STATE(265), - [sym_assignment] = STATE(303), - [sym_index_assignment] = STATE(303), - [sym_if_else] = STATE(303), - [sym_if] = STATE(390), - [sym_match] = STATE(303), - [sym_while] = STATE(303), - [sym_for] = STATE(303), - [sym_return] = STATE(303), - [sym_function] = STATE(268), - [sym_function_expression] = STATE(472), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(285), - [sym_yield] = STATE(285), - [sym_built_in_value] = STATE(268), - [sym_identifier] = ACTIONS(136), - [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(138), - [anon_sym_async] = ACTIONS(140), - [anon_sym_LBRACE] = ACTIONS(142), - [anon_sym_struct] = ACTIONS(144), - [anon_sym_new] = ACTIONS(146), - [sym_integer] = ACTIONS(148), - [sym_float] = ACTIONS(150), - [sym_string] = ACTIONS(150), - [anon_sym_true] = ACTIONS(152), - [anon_sym_false] = ACTIONS(152), - [anon_sym_LBRACK] = ACTIONS(154), - [anon_sym_none] = ACTIONS(156), - [anon_sym_some] = ACTIONS(158), - [anon_sym_if] = ACTIONS(160), - [anon_sym_match] = ACTIONS(162), - [anon_sym_while] = ACTIONS(164), - [anon_sym_for] = ACTIONS(166), - [anon_sym_asyncfor] = ACTIONS(168), - [anon_sym_return] = ACTIONS(170), - [anon_sym_args] = ACTIONS(172), - [anon_sym_assert_equal] = ACTIONS(172), - [anon_sym_env] = ACTIONS(172), - [anon_sym_fs] = ACTIONS(172), - [anon_sym_json] = ACTIONS(172), - [anon_sym_length] = ACTIONS(172), - [anon_sym_output] = ACTIONS(172), - [anon_sym_random] = ACTIONS(172), - [anon_sym_string] = ACTIONS(172), - }, - [33] = { - [sym_statement] = STATE(310), - [sym_expression] = STATE(222), - [sym__expression_kind] = STATE(100), - [sym_block] = STATE(303), - [sym_value] = STATE(107), - [sym_type_definition] = STATE(105), - [sym_structure] = STATE(108), - [sym_new] = STATE(100), - [sym_boolean] = STATE(105), - [sym_list] = STATE(105), - [sym_map] = STATE(105), - [sym_option] = STATE(105), - [sym_index] = STATE(137), - [sym_index_expression] = STATE(470), - [sym_math] = STATE(100), - [sym_logic] = STATE(100), - [sym_assignment] = STATE(303), - [sym_index_assignment] = STATE(303), - [sym_if_else] = STATE(303), - [sym_if] = STATE(254), - [sym_match] = STATE(303), - [sym_while] = STATE(303), - [sym_for] = STATE(303), - [sym_return] = STATE(303), - [sym_function] = STATE(105), - [sym_function_expression] = STATE(460), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(111), - [sym_yield] = STATE(111), - [sym_built_in_value] = STATE(105), + [sym_expression] = STATE(196), + [sym__expression_kind] = STATE(125), + [sym_block] = STATE(301), + [sym_value] = STATE(126), + [sym_structure] = STATE(129), + [sym_new] = STATE(125), + [sym_boolean] = STATE(129), + [sym_list] = STATE(129), + [sym_map] = STATE(129), + [sym_option] = STATE(129), + [sym_index] = STATE(134), + [sym_index_expression] = STATE(476), + [sym_math] = STATE(125), + [sym_logic] = STATE(125), + [sym_assignment] = STATE(301), + [sym_index_assignment] = STATE(301), + [sym_if_else] = STATE(301), + [sym_if] = STATE(246), + [sym_match] = STATE(301), + [sym_while] = STATE(301), + [sym_for] = STATE(301), + [sym_return] = STATE(301), + [sym_function] = STATE(129), + [sym_function_expression] = STATE(457), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(119), + [sym_yield] = STATE(119), + [sym_built_in_value] = STATE(129), [sym_identifier] = ACTIONS(174), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(176), @@ -4953,37 +4846,97 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_random] = ACTIONS(206), [anon_sym_string] = ACTIONS(206), }, + [33] = { + [sym_statement] = STATE(400), + [sym_expression] = STATE(323), + [sym__expression_kind] = STATE(288), + [sym_block] = STATE(300), + [sym_value] = STATE(265), + [sym_structure] = STATE(279), + [sym_new] = STATE(288), + [sym_boolean] = STATE(279), + [sym_list] = STATE(279), + [sym_map] = STATE(279), + [sym_option] = STATE(279), + [sym_index] = STATE(314), + [sym_index_expression] = STATE(464), + [sym_math] = STATE(288), + [sym_logic] = STATE(288), + [sym_assignment] = STATE(300), + [sym_index_assignment] = STATE(300), + [sym_if_else] = STATE(300), + [sym_if] = STATE(388), + [sym_match] = STATE(300), + [sym_while] = STATE(300), + [sym_for] = STATE(300), + [sym_return] = STATE(300), + [sym_function] = STATE(279), + [sym_function_expression] = STATE(471), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(277), + [sym_yield] = STATE(277), + [sym_built_in_value] = STATE(279), + [sym_identifier] = ACTIONS(136), + [sym__comment] = ACTIONS(3), + [anon_sym_LPAREN] = ACTIONS(138), + [anon_sym_async] = ACTIONS(140), + [anon_sym_LBRACE] = ACTIONS(142), + [anon_sym_struct] = ACTIONS(144), + [anon_sym_new] = ACTIONS(146), + [sym_integer] = ACTIONS(148), + [sym_float] = ACTIONS(150), + [sym_string] = ACTIONS(150), + [anon_sym_true] = ACTIONS(152), + [anon_sym_false] = ACTIONS(152), + [anon_sym_LBRACK] = ACTIONS(154), + [anon_sym_none] = ACTIONS(156), + [anon_sym_some] = ACTIONS(158), + [anon_sym_if] = ACTIONS(160), + [anon_sym_match] = ACTIONS(162), + [anon_sym_while] = ACTIONS(164), + [anon_sym_for] = ACTIONS(166), + [anon_sym_asyncfor] = ACTIONS(168), + [anon_sym_return] = ACTIONS(170), + [anon_sym_args] = ACTIONS(172), + [anon_sym_assert_equal] = ACTIONS(172), + [anon_sym_env] = ACTIONS(172), + [anon_sym_fs] = ACTIONS(172), + [anon_sym_json] = ACTIONS(172), + [anon_sym_length] = ACTIONS(172), + [anon_sym_output] = ACTIONS(172), + [anon_sym_random] = ACTIONS(172), + [anon_sym_string] = ACTIONS(172), + }, [34] = { - [sym_statement] = STATE(252), - [sym_expression] = STATE(93), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(248), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(248), - [sym_index_assignment] = STATE(248), - [sym_if_else] = STATE(248), - [sym_if] = STATE(227), - [sym_match] = STATE(248), - [sym_while] = STATE(248), - [sym_for] = STATE(248), - [sym_return] = STATE(248), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), + [sym_statement] = STATE(242), + [sym_expression] = STATE(88), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(232), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(232), + [sym_index_assignment] = STATE(232), + [sym_if_else] = STATE(232), + [sym_if] = STATE(224), + [sym_match] = STATE(232), + [sym_while] = STATE(232), + [sym_for] = STATE(232), + [sym_return] = STATE(232), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(7), @@ -5016,36 +4969,35 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_string] = ACTIONS(41), }, [35] = { - [sym_statement] = STATE(311), - [sym_expression] = STATE(325), - [sym__expression_kind] = STATE(265), - [sym_block] = STATE(303), - [sym_value] = STATE(275), - [sym_type_definition] = STATE(268), + [sym_statement] = STATE(440), + [sym_expression] = STATE(323), + [sym__expression_kind] = STATE(288), + [sym_block] = STATE(300), + [sym_value] = STATE(265), [sym_structure] = STATE(279), - [sym_new] = STATE(265), - [sym_boolean] = STATE(268), - [sym_list] = STATE(268), - [sym_map] = STATE(268), - [sym_option] = STATE(268), - [sym_index] = STATE(316), - [sym_index_expression] = STATE(475), - [sym_math] = STATE(265), - [sym_logic] = STATE(265), - [sym_assignment] = STATE(303), - [sym_index_assignment] = STATE(303), - [sym_if_else] = STATE(303), - [sym_if] = STATE(390), - [sym_match] = STATE(303), - [sym_while] = STATE(303), - [sym_for] = STATE(303), - [sym_return] = STATE(303), - [sym_function] = STATE(268), - [sym_function_expression] = STATE(472), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(285), - [sym_yield] = STATE(285), - [sym_built_in_value] = STATE(268), + [sym_new] = STATE(288), + [sym_boolean] = STATE(279), + [sym_list] = STATE(279), + [sym_map] = STATE(279), + [sym_option] = STATE(279), + [sym_index] = STATE(314), + [sym_index_expression] = STATE(464), + [sym_math] = STATE(288), + [sym_logic] = STATE(288), + [sym_assignment] = STATE(300), + [sym_index_assignment] = STATE(300), + [sym_if_else] = STATE(300), + [sym_if] = STATE(388), + [sym_match] = STATE(300), + [sym_while] = STATE(300), + [sym_for] = STATE(300), + [sym_return] = STATE(300), + [sym_function] = STATE(279), + [sym_function_expression] = STATE(471), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(277), + [sym_yield] = STATE(277), + [sym_built_in_value] = STATE(279), [sym_identifier] = ACTIONS(136), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(138), @@ -5078,98 +5030,96 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_string] = ACTIONS(172), }, [36] = { - [sym_statement] = STATE(402), - [sym_expression] = STATE(327), - [sym__expression_kind] = STATE(265), - [sym_block] = STATE(305), - [sym_value] = STATE(275), - [sym_type_definition] = STATE(268), - [sym_structure] = STATE(279), - [sym_new] = STATE(265), - [sym_boolean] = STATE(268), - [sym_list] = STATE(268), - [sym_map] = STATE(268), - [sym_option] = STATE(268), - [sym_index] = STATE(316), - [sym_index_expression] = STATE(475), - [sym_math] = STATE(265), - [sym_logic] = STATE(265), - [sym_assignment] = STATE(305), - [sym_index_assignment] = STATE(305), - [sym_if_else] = STATE(305), - [sym_if] = STATE(390), - [sym_match] = STATE(305), - [sym_while] = STATE(305), - [sym_for] = STATE(305), - [sym_return] = STATE(305), - [sym_function] = STATE(268), - [sym_function_expression] = STATE(472), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(285), - [sym_yield] = STATE(285), - [sym_built_in_value] = STATE(268), - [sym_identifier] = ACTIONS(136), + [sym_statement] = STATE(243), + [sym_expression] = STATE(88), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(232), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(232), + [sym_index_assignment] = STATE(232), + [sym_if_else] = STATE(232), + [sym_if] = STATE(224), + [sym_match] = STATE(232), + [sym_while] = STATE(232), + [sym_for] = STATE(232), + [sym_return] = STATE(232), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), + [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(138), - [anon_sym_async] = ACTIONS(140), - [anon_sym_LBRACE] = ACTIONS(142), - [anon_sym_struct] = ACTIONS(144), - [anon_sym_new] = ACTIONS(146), - [sym_integer] = ACTIONS(148), - [sym_float] = ACTIONS(150), - [sym_string] = ACTIONS(150), - [anon_sym_true] = ACTIONS(152), - [anon_sym_false] = ACTIONS(152), - [anon_sym_LBRACK] = ACTIONS(154), - [anon_sym_none] = ACTIONS(156), - [anon_sym_some] = ACTIONS(158), - [anon_sym_if] = ACTIONS(160), - [anon_sym_match] = ACTIONS(162), - [anon_sym_while] = ACTIONS(164), - [anon_sym_for] = ACTIONS(166), - [anon_sym_asyncfor] = ACTIONS(168), - [anon_sym_return] = ACTIONS(170), - [anon_sym_args] = ACTIONS(172), - [anon_sym_assert_equal] = ACTIONS(172), - [anon_sym_env] = ACTIONS(172), - [anon_sym_fs] = ACTIONS(172), - [anon_sym_json] = ACTIONS(172), - [anon_sym_length] = ACTIONS(172), - [anon_sym_output] = ACTIONS(172), - [anon_sym_random] = ACTIONS(172), - [anon_sym_string] = ACTIONS(172), + [anon_sym_LPAREN] = ACTIONS(7), + [anon_sym_async] = ACTIONS(9), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_struct] = ACTIONS(13), + [anon_sym_new] = ACTIONS(15), + [sym_integer] = ACTIONS(17), + [sym_float] = ACTIONS(19), + [sym_string] = ACTIONS(19), + [anon_sym_true] = ACTIONS(21), + [anon_sym_false] = ACTIONS(21), + [anon_sym_LBRACK] = ACTIONS(23), + [anon_sym_none] = ACTIONS(25), + [anon_sym_some] = ACTIONS(27), + [anon_sym_if] = ACTIONS(29), + [anon_sym_match] = ACTIONS(31), + [anon_sym_while] = ACTIONS(33), + [anon_sym_for] = ACTIONS(35), + [anon_sym_asyncfor] = ACTIONS(37), + [anon_sym_return] = ACTIONS(39), + [anon_sym_args] = ACTIONS(41), + [anon_sym_assert_equal] = ACTIONS(41), + [anon_sym_env] = ACTIONS(41), + [anon_sym_fs] = ACTIONS(41), + [anon_sym_json] = ACTIONS(41), + [anon_sym_length] = ACTIONS(41), + [anon_sym_output] = ACTIONS(41), + [anon_sym_random] = ACTIONS(41), + [anon_sym_string] = ACTIONS(41), }, [37] = { - [sym_statement] = STATE(443), - [sym_expression] = STATE(327), - [sym__expression_kind] = STATE(265), - [sym_block] = STATE(305), - [sym_value] = STATE(275), - [sym_type_definition] = STATE(268), + [sym_statement] = STATE(310), + [sym_expression] = STATE(324), + [sym__expression_kind] = STATE(288), + [sym_block] = STATE(301), + [sym_value] = STATE(265), [sym_structure] = STATE(279), - [sym_new] = STATE(265), - [sym_boolean] = STATE(268), - [sym_list] = STATE(268), - [sym_map] = STATE(268), - [sym_option] = STATE(268), - [sym_index] = STATE(316), - [sym_index_expression] = STATE(475), - [sym_math] = STATE(265), - [sym_logic] = STATE(265), - [sym_assignment] = STATE(305), - [sym_index_assignment] = STATE(305), - [sym_if_else] = STATE(305), - [sym_if] = STATE(390), - [sym_match] = STATE(305), - [sym_while] = STATE(305), - [sym_for] = STATE(305), - [sym_return] = STATE(305), - [sym_function] = STATE(268), - [sym_function_expression] = STATE(472), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(285), - [sym_yield] = STATE(285), - [sym_built_in_value] = STATE(268), + [sym_new] = STATE(288), + [sym_boolean] = STATE(279), + [sym_list] = STATE(279), + [sym_map] = STATE(279), + [sym_option] = STATE(279), + [sym_index] = STATE(314), + [sym_index_expression] = STATE(464), + [sym_math] = STATE(288), + [sym_logic] = STATE(288), + [sym_assignment] = STATE(301), + [sym_index_assignment] = STATE(301), + [sym_if_else] = STATE(301), + [sym_if] = STATE(388), + [sym_match] = STATE(301), + [sym_while] = STATE(301), + [sym_for] = STATE(301), + [sym_return] = STATE(301), + [sym_function] = STATE(279), + [sym_function_expression] = STATE(471), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(277), + [sym_yield] = STATE(277), + [sym_built_in_value] = STATE(279), [sym_identifier] = ACTIONS(136), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(138), @@ -5202,98 +5152,96 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_string] = ACTIONS(172), }, [38] = { - [sym_statement] = STATE(313), - [sym_expression] = STATE(325), - [sym__expression_kind] = STATE(265), - [sym_block] = STATE(303), - [sym_value] = STATE(275), - [sym_type_definition] = STATE(268), - [sym_structure] = STATE(279), - [sym_new] = STATE(265), - [sym_boolean] = STATE(268), - [sym_list] = STATE(268), - [sym_map] = STATE(268), - [sym_option] = STATE(268), - [sym_index] = STATE(316), - [sym_index_expression] = STATE(475), - [sym_math] = STATE(265), - [sym_logic] = STATE(265), - [sym_assignment] = STATE(303), - [sym_index_assignment] = STATE(303), - [sym_if_else] = STATE(303), - [sym_if] = STATE(390), - [sym_match] = STATE(303), - [sym_while] = STATE(303), - [sym_for] = STATE(303), - [sym_return] = STATE(303), - [sym_function] = STATE(268), - [sym_function_expression] = STATE(472), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(285), - [sym_yield] = STATE(285), - [sym_built_in_value] = STATE(268), - [sym_identifier] = ACTIONS(136), + [sym_statement] = STATE(312), + [sym_expression] = STATE(201), + [sym__expression_kind] = STATE(125), + [sym_block] = STATE(300), + [sym_value] = STATE(126), + [sym_structure] = STATE(129), + [sym_new] = STATE(125), + [sym_boolean] = STATE(129), + [sym_list] = STATE(129), + [sym_map] = STATE(129), + [sym_option] = STATE(129), + [sym_index] = STATE(134), + [sym_index_expression] = STATE(476), + [sym_math] = STATE(125), + [sym_logic] = STATE(125), + [sym_assignment] = STATE(300), + [sym_index_assignment] = STATE(300), + [sym_if_else] = STATE(300), + [sym_if] = STATE(246), + [sym_match] = STATE(300), + [sym_while] = STATE(300), + [sym_for] = STATE(300), + [sym_return] = STATE(300), + [sym_function] = STATE(129), + [sym_function_expression] = STATE(457), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(119), + [sym_yield] = STATE(119), + [sym_built_in_value] = STATE(129), + [sym_identifier] = ACTIONS(174), [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(138), - [anon_sym_async] = ACTIONS(140), - [anon_sym_LBRACE] = ACTIONS(142), - [anon_sym_struct] = ACTIONS(144), - [anon_sym_new] = ACTIONS(146), - [sym_integer] = ACTIONS(148), - [sym_float] = ACTIONS(150), - [sym_string] = ACTIONS(150), - [anon_sym_true] = ACTIONS(152), - [anon_sym_false] = ACTIONS(152), - [anon_sym_LBRACK] = ACTIONS(154), - [anon_sym_none] = ACTIONS(156), - [anon_sym_some] = ACTIONS(158), + [anon_sym_LPAREN] = ACTIONS(176), + [anon_sym_async] = ACTIONS(178), + [anon_sym_LBRACE] = ACTIONS(180), + [anon_sym_struct] = ACTIONS(182), + [anon_sym_new] = ACTIONS(184), + [sym_integer] = ACTIONS(186), + [sym_float] = ACTIONS(188), + [sym_string] = ACTIONS(188), + [anon_sym_true] = ACTIONS(190), + [anon_sym_false] = ACTIONS(190), + [anon_sym_LBRACK] = ACTIONS(192), + [anon_sym_none] = ACTIONS(194), + [anon_sym_some] = ACTIONS(196), [anon_sym_if] = ACTIONS(160), [anon_sym_match] = ACTIONS(162), - [anon_sym_while] = ACTIONS(164), - [anon_sym_for] = ACTIONS(166), - [anon_sym_asyncfor] = ACTIONS(168), - [anon_sym_return] = ACTIONS(170), - [anon_sym_args] = ACTIONS(172), - [anon_sym_assert_equal] = ACTIONS(172), - [anon_sym_env] = ACTIONS(172), - [anon_sym_fs] = ACTIONS(172), - [anon_sym_json] = ACTIONS(172), - [anon_sym_length] = ACTIONS(172), - [anon_sym_output] = ACTIONS(172), - [anon_sym_random] = ACTIONS(172), - [anon_sym_string] = ACTIONS(172), + [anon_sym_while] = ACTIONS(198), + [anon_sym_for] = ACTIONS(200), + [anon_sym_asyncfor] = ACTIONS(202), + [anon_sym_return] = ACTIONS(204), + [anon_sym_args] = ACTIONS(206), + [anon_sym_assert_equal] = ACTIONS(206), + [anon_sym_env] = ACTIONS(206), + [anon_sym_fs] = ACTIONS(206), + [anon_sym_json] = ACTIONS(206), + [anon_sym_length] = ACTIONS(206), + [anon_sym_output] = ACTIONS(206), + [anon_sym_random] = ACTIONS(206), + [anon_sym_string] = ACTIONS(206), }, [39] = { - [sym_statement] = STATE(432), - [sym_expression] = STATE(327), - [sym__expression_kind] = STATE(265), - [sym_block] = STATE(305), - [sym_value] = STATE(275), - [sym_type_definition] = STATE(268), + [sym_statement] = STATE(305), + [sym_expression] = STATE(324), + [sym__expression_kind] = STATE(288), + [sym_block] = STATE(301), + [sym_value] = STATE(265), [sym_structure] = STATE(279), - [sym_new] = STATE(265), - [sym_boolean] = STATE(268), - [sym_list] = STATE(268), - [sym_map] = STATE(268), - [sym_option] = STATE(268), - [sym_index] = STATE(316), - [sym_index_expression] = STATE(475), - [sym_math] = STATE(265), - [sym_logic] = STATE(265), - [sym_assignment] = STATE(305), - [sym_index_assignment] = STATE(305), - [sym_if_else] = STATE(305), - [sym_if] = STATE(390), - [sym_match] = STATE(305), - [sym_while] = STATE(305), - [sym_for] = STATE(305), - [sym_return] = STATE(305), - [sym_function] = STATE(268), - [sym_function_expression] = STATE(472), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(285), - [sym_yield] = STATE(285), - [sym_built_in_value] = STATE(268), + [sym_new] = STATE(288), + [sym_boolean] = STATE(279), + [sym_list] = STATE(279), + [sym_map] = STATE(279), + [sym_option] = STATE(279), + [sym_index] = STATE(314), + [sym_index_expression] = STATE(464), + [sym_math] = STATE(288), + [sym_logic] = STATE(288), + [sym_assignment] = STATE(301), + [sym_index_assignment] = STATE(301), + [sym_if_else] = STATE(301), + [sym_if] = STATE(388), + [sym_match] = STATE(301), + [sym_while] = STATE(301), + [sym_for] = STATE(301), + [sym_return] = STATE(301), + [sym_function] = STATE(279), + [sym_function_expression] = STATE(471), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(277), + [sym_yield] = STATE(277), + [sym_built_in_value] = STATE(279), [sym_identifier] = ACTIONS(136), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(138), @@ -5326,36 +5274,35 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_string] = ACTIONS(172), }, [40] = { - [sym_statement] = STATE(432), - [sym_expression] = STATE(327), - [sym__expression_kind] = STATE(265), - [sym_block] = STATE(305), - [sym_value] = STATE(275), - [sym_type_definition] = STATE(268), + [sym_statement] = STATE(303), + [sym_expression] = STATE(324), + [sym__expression_kind] = STATE(288), + [sym_block] = STATE(301), + [sym_value] = STATE(265), [sym_structure] = STATE(279), - [sym_new] = STATE(265), - [sym_boolean] = STATE(268), - [sym_list] = STATE(268), - [sym_map] = STATE(268), - [sym_option] = STATE(268), - [sym_index] = STATE(316), - [sym_index_expression] = STATE(475), - [sym_math] = STATE(265), - [sym_logic] = STATE(265), - [sym_assignment] = STATE(305), - [sym_index_assignment] = STATE(305), - [sym_if_else] = STATE(305), - [sym_if] = STATE(390), - [sym_match] = STATE(305), - [sym_while] = STATE(305), - [sym_for] = STATE(305), - [sym_return] = STATE(305), - [sym_function] = STATE(268), - [sym_function_expression] = STATE(472), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(285), - [sym_yield] = STATE(285), - [sym_built_in_value] = STATE(268), + [sym_new] = STATE(288), + [sym_boolean] = STATE(279), + [sym_list] = STATE(279), + [sym_map] = STATE(279), + [sym_option] = STATE(279), + [sym_index] = STATE(314), + [sym_index_expression] = STATE(464), + [sym_math] = STATE(288), + [sym_logic] = STATE(288), + [sym_assignment] = STATE(301), + [sym_index_assignment] = STATE(301), + [sym_if_else] = STATE(301), + [sym_if] = STATE(388), + [sym_match] = STATE(301), + [sym_while] = STATE(301), + [sym_for] = STATE(301), + [sym_return] = STATE(301), + [sym_function] = STATE(279), + [sym_function_expression] = STATE(471), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(277), + [sym_yield] = STATE(277), + [sym_built_in_value] = STATE(279), [sym_identifier] = ACTIONS(136), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(138), @@ -5388,284 +5335,96 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_string] = ACTIONS(172), }, [41] = { - [sym_statement] = STATE(452), - [sym_expression] = STATE(327), - [sym__expression_kind] = STATE(265), - [sym_block] = STATE(305), - [sym_value] = STATE(275), - [sym_type_definition] = STATE(268), - [sym_structure] = STATE(279), - [sym_new] = STATE(265), - [sym_boolean] = STATE(268), - [sym_list] = STATE(268), - [sym_map] = STATE(268), - [sym_option] = STATE(268), - [sym_index] = STATE(316), - [sym_index_expression] = STATE(475), - [sym_math] = STATE(265), - [sym_logic] = STATE(265), - [sym_assignment] = STATE(305), - [sym_index_assignment] = STATE(305), - [sym_if_else] = STATE(305), - [sym_if] = STATE(390), - [sym_match] = STATE(305), - [sym_while] = STATE(305), - [sym_for] = STATE(305), - [sym_return] = STATE(305), - [sym_function] = STATE(268), - [sym_function_expression] = STATE(472), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(285), - [sym_yield] = STATE(285), - [sym_built_in_value] = STATE(268), - [sym_identifier] = ACTIONS(136), + [sym_statement] = STATE(235), + [sym_expression] = STATE(88), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(232), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(232), + [sym_index_assignment] = STATE(232), + [sym_if_else] = STATE(232), + [sym_if] = STATE(224), + [sym_match] = STATE(232), + [sym_while] = STATE(232), + [sym_for] = STATE(232), + [sym_return] = STATE(232), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), + [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(138), - [anon_sym_async] = ACTIONS(140), - [anon_sym_LBRACE] = ACTIONS(142), - [anon_sym_struct] = ACTIONS(144), - [anon_sym_new] = ACTIONS(146), - [sym_integer] = ACTIONS(148), - [sym_float] = ACTIONS(150), - [sym_string] = ACTIONS(150), - [anon_sym_true] = ACTIONS(152), - [anon_sym_false] = ACTIONS(152), - [anon_sym_LBRACK] = ACTIONS(154), - [anon_sym_none] = ACTIONS(156), - [anon_sym_some] = ACTIONS(158), - [anon_sym_if] = ACTIONS(160), - [anon_sym_match] = ACTIONS(162), - [anon_sym_while] = ACTIONS(164), - [anon_sym_for] = ACTIONS(166), - [anon_sym_asyncfor] = ACTIONS(168), - [anon_sym_return] = ACTIONS(170), - [anon_sym_args] = ACTIONS(172), - [anon_sym_assert_equal] = ACTIONS(172), - [anon_sym_env] = ACTIONS(172), - [anon_sym_fs] = ACTIONS(172), - [anon_sym_json] = ACTIONS(172), - [anon_sym_length] = ACTIONS(172), - [anon_sym_output] = ACTIONS(172), - [anon_sym_random] = ACTIONS(172), - [anon_sym_string] = ACTIONS(172), + [anon_sym_LPAREN] = ACTIONS(7), + [anon_sym_async] = ACTIONS(9), + [anon_sym_LBRACE] = ACTIONS(11), + [anon_sym_struct] = ACTIONS(13), + [anon_sym_new] = ACTIONS(15), + [sym_integer] = ACTIONS(17), + [sym_float] = ACTIONS(19), + [sym_string] = ACTIONS(19), + [anon_sym_true] = ACTIONS(21), + [anon_sym_false] = ACTIONS(21), + [anon_sym_LBRACK] = ACTIONS(23), + [anon_sym_none] = ACTIONS(25), + [anon_sym_some] = ACTIONS(27), + [anon_sym_if] = ACTIONS(29), + [anon_sym_match] = ACTIONS(31), + [anon_sym_while] = ACTIONS(33), + [anon_sym_for] = ACTIONS(35), + [anon_sym_asyncfor] = ACTIONS(37), + [anon_sym_return] = ACTIONS(39), + [anon_sym_args] = ACTIONS(41), + [anon_sym_assert_equal] = ACTIONS(41), + [anon_sym_env] = ACTIONS(41), + [anon_sym_fs] = ACTIONS(41), + [anon_sym_json] = ACTIONS(41), + [anon_sym_length] = ACTIONS(41), + [anon_sym_output] = ACTIONS(41), + [anon_sym_random] = ACTIONS(41), + [anon_sym_string] = ACTIONS(41), }, [42] = { - [sym_statement] = STATE(311), - [sym_expression] = STATE(222), - [sym__expression_kind] = STATE(100), - [sym_block] = STATE(303), - [sym_value] = STATE(107), - [sym_type_definition] = STATE(105), - [sym_structure] = STATE(108), - [sym_new] = STATE(100), - [sym_boolean] = STATE(105), - [sym_list] = STATE(105), - [sym_map] = STATE(105), - [sym_option] = STATE(105), - [sym_index] = STATE(137), - [sym_index_expression] = STATE(470), - [sym_math] = STATE(100), - [sym_logic] = STATE(100), - [sym_assignment] = STATE(303), - [sym_index_assignment] = STATE(303), - [sym_if_else] = STATE(303), - [sym_if] = STATE(254), - [sym_match] = STATE(303), - [sym_while] = STATE(303), - [sym_for] = STATE(303), - [sym_return] = STATE(303), - [sym_function] = STATE(105), - [sym_function_expression] = STATE(460), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(111), - [sym_yield] = STATE(111), - [sym_built_in_value] = STATE(105), - [sym_identifier] = ACTIONS(174), - [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(176), - [anon_sym_async] = ACTIONS(178), - [anon_sym_LBRACE] = ACTIONS(180), - [anon_sym_struct] = ACTIONS(182), - [anon_sym_new] = ACTIONS(184), - [sym_integer] = ACTIONS(186), - [sym_float] = ACTIONS(188), - [sym_string] = ACTIONS(188), - [anon_sym_true] = ACTIONS(190), - [anon_sym_false] = ACTIONS(190), - [anon_sym_LBRACK] = ACTIONS(192), - [anon_sym_none] = ACTIONS(194), - [anon_sym_some] = ACTIONS(196), - [anon_sym_if] = ACTIONS(160), - [anon_sym_match] = ACTIONS(162), - [anon_sym_while] = ACTIONS(198), - [anon_sym_for] = ACTIONS(200), - [anon_sym_asyncfor] = ACTIONS(202), - [anon_sym_return] = ACTIONS(204), - [anon_sym_args] = ACTIONS(206), - [anon_sym_assert_equal] = ACTIONS(206), - [anon_sym_env] = ACTIONS(206), - [anon_sym_fs] = ACTIONS(206), - [anon_sym_json] = ACTIONS(206), - [anon_sym_length] = ACTIONS(206), - [anon_sym_output] = ACTIONS(206), - [anon_sym_random] = ACTIONS(206), - [anon_sym_string] = ACTIONS(206), - }, - [43] = { - [sym_statement] = STATE(244), - [sym_expression] = STATE(93), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(248), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(248), - [sym_index_assignment] = STATE(248), - [sym_if_else] = STATE(248), - [sym_if] = STATE(227), - [sym_match] = STATE(248), - [sym_while] = STATE(248), - [sym_for] = STATE(248), - [sym_return] = STATE(248), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), - [sym_identifier] = ACTIONS(5), - [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(7), - [anon_sym_async] = ACTIONS(9), - [anon_sym_LBRACE] = ACTIONS(11), - [anon_sym_struct] = ACTIONS(13), - [anon_sym_new] = ACTIONS(15), - [sym_integer] = ACTIONS(17), - [sym_float] = ACTIONS(19), - [sym_string] = ACTIONS(19), - [anon_sym_true] = ACTIONS(21), - [anon_sym_false] = ACTIONS(21), - [anon_sym_LBRACK] = ACTIONS(23), - [anon_sym_none] = ACTIONS(25), - [anon_sym_some] = ACTIONS(27), - [anon_sym_if] = ACTIONS(29), - [anon_sym_match] = ACTIONS(31), - [anon_sym_while] = ACTIONS(33), - [anon_sym_for] = ACTIONS(35), - [anon_sym_asyncfor] = ACTIONS(37), - [anon_sym_return] = ACTIONS(39), - [anon_sym_args] = ACTIONS(41), - [anon_sym_assert_equal] = ACTIONS(41), - [anon_sym_env] = ACTIONS(41), - [anon_sym_fs] = ACTIONS(41), - [anon_sym_json] = ACTIONS(41), - [anon_sym_length] = ACTIONS(41), - [anon_sym_output] = ACTIONS(41), - [anon_sym_random] = ACTIONS(41), - [anon_sym_string] = ACTIONS(41), - }, - [44] = { - [sym_statement] = STATE(313), - [sym_expression] = STATE(222), - [sym__expression_kind] = STATE(100), - [sym_block] = STATE(303), - [sym_value] = STATE(107), - [sym_type_definition] = STATE(105), - [sym_structure] = STATE(108), - [sym_new] = STATE(100), - [sym_boolean] = STATE(105), - [sym_list] = STATE(105), - [sym_map] = STATE(105), - [sym_option] = STATE(105), - [sym_index] = STATE(137), - [sym_index_expression] = STATE(470), - [sym_math] = STATE(100), - [sym_logic] = STATE(100), - [sym_assignment] = STATE(303), - [sym_index_assignment] = STATE(303), - [sym_if_else] = STATE(303), - [sym_if] = STATE(254), - [sym_match] = STATE(303), - [sym_while] = STATE(303), - [sym_for] = STATE(303), - [sym_return] = STATE(303), - [sym_function] = STATE(105), - [sym_function_expression] = STATE(460), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(111), - [sym_yield] = STATE(111), - [sym_built_in_value] = STATE(105), - [sym_identifier] = ACTIONS(174), - [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(176), - [anon_sym_async] = ACTIONS(178), - [anon_sym_LBRACE] = ACTIONS(180), - [anon_sym_struct] = ACTIONS(182), - [anon_sym_new] = ACTIONS(184), - [sym_integer] = ACTIONS(186), - [sym_float] = ACTIONS(188), - [sym_string] = ACTIONS(188), - [anon_sym_true] = ACTIONS(190), - [anon_sym_false] = ACTIONS(190), - [anon_sym_LBRACK] = ACTIONS(192), - [anon_sym_none] = ACTIONS(194), - [anon_sym_some] = ACTIONS(196), - [anon_sym_if] = ACTIONS(160), - [anon_sym_match] = ACTIONS(162), - [anon_sym_while] = ACTIONS(198), - [anon_sym_for] = ACTIONS(200), - [anon_sym_asyncfor] = ACTIONS(202), - [anon_sym_return] = ACTIONS(204), - [anon_sym_args] = ACTIONS(206), - [anon_sym_assert_equal] = ACTIONS(206), - [anon_sym_env] = ACTIONS(206), - [anon_sym_fs] = ACTIONS(206), - [anon_sym_json] = ACTIONS(206), - [anon_sym_length] = ACTIONS(206), - [anon_sym_output] = ACTIONS(206), - [anon_sym_random] = ACTIONS(206), - [anon_sym_string] = ACTIONS(206), - }, - [45] = { - [sym_statement] = STATE(402), - [sym_expression] = STATE(327), - [sym__expression_kind] = STATE(265), - [sym_block] = STATE(305), - [sym_value] = STATE(275), - [sym_type_definition] = STATE(268), + [sym_statement] = STATE(309), + [sym_expression] = STATE(324), + [sym__expression_kind] = STATE(288), + [sym_block] = STATE(301), + [sym_value] = STATE(265), [sym_structure] = STATE(279), - [sym_new] = STATE(265), - [sym_boolean] = STATE(268), - [sym_list] = STATE(268), - [sym_map] = STATE(268), - [sym_option] = STATE(268), - [sym_index] = STATE(316), - [sym_index_expression] = STATE(475), - [sym_math] = STATE(265), - [sym_logic] = STATE(265), - [sym_assignment] = STATE(305), - [sym_index_assignment] = STATE(305), - [sym_if_else] = STATE(305), - [sym_if] = STATE(390), - [sym_match] = STATE(305), - [sym_while] = STATE(305), - [sym_for] = STATE(305), - [sym_return] = STATE(305), - [sym_function] = STATE(268), - [sym_function_expression] = STATE(472), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(285), - [sym_yield] = STATE(285), - [sym_built_in_value] = STATE(268), + [sym_new] = STATE(288), + [sym_boolean] = STATE(279), + [sym_list] = STATE(279), + [sym_map] = STATE(279), + [sym_option] = STATE(279), + [sym_index] = STATE(314), + [sym_index_expression] = STATE(464), + [sym_math] = STATE(288), + [sym_logic] = STATE(288), + [sym_assignment] = STATE(301), + [sym_index_assignment] = STATE(301), + [sym_if_else] = STATE(301), + [sym_if] = STATE(388), + [sym_match] = STATE(301), + [sym_while] = STATE(301), + [sym_for] = STATE(301), + [sym_return] = STATE(301), + [sym_function] = STATE(279), + [sym_function_expression] = STATE(471), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(277), + [sym_yield] = STATE(277), + [sym_built_in_value] = STATE(279), [sym_identifier] = ACTIONS(136), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(138), @@ -5697,37 +5456,158 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_random] = ACTIONS(172), [anon_sym_string] = ACTIONS(172), }, - [46] = { - [sym_statement] = STATE(314), - [sym_expression] = STATE(223), - [sym__expression_kind] = STATE(100), - [sym_block] = STATE(305), - [sym_value] = STATE(107), - [sym_type_definition] = STATE(105), - [sym_structure] = STATE(108), - [sym_new] = STATE(100), - [sym_boolean] = STATE(105), - [sym_list] = STATE(105), - [sym_map] = STATE(105), - [sym_option] = STATE(105), - [sym_index] = STATE(137), - [sym_index_expression] = STATE(470), - [sym_math] = STATE(100), - [sym_logic] = STATE(100), - [sym_assignment] = STATE(305), - [sym_index_assignment] = STATE(305), - [sym_if_else] = STATE(305), - [sym_if] = STATE(254), - [sym_match] = STATE(305), - [sym_while] = STATE(305), - [sym_for] = STATE(305), - [sym_return] = STATE(305), - [sym_function] = STATE(105), - [sym_function_expression] = STATE(460), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(111), - [sym_yield] = STATE(111), - [sym_built_in_value] = STATE(105), + [43] = { + [sym_statement] = STATE(448), + [sym_expression] = STATE(323), + [sym__expression_kind] = STATE(288), + [sym_block] = STATE(300), + [sym_value] = STATE(265), + [sym_structure] = STATE(279), + [sym_new] = STATE(288), + [sym_boolean] = STATE(279), + [sym_list] = STATE(279), + [sym_map] = STATE(279), + [sym_option] = STATE(279), + [sym_index] = STATE(314), + [sym_index_expression] = STATE(464), + [sym_math] = STATE(288), + [sym_logic] = STATE(288), + [sym_assignment] = STATE(300), + [sym_index_assignment] = STATE(300), + [sym_if_else] = STATE(300), + [sym_if] = STATE(388), + [sym_match] = STATE(300), + [sym_while] = STATE(300), + [sym_for] = STATE(300), + [sym_return] = STATE(300), + [sym_function] = STATE(279), + [sym_function_expression] = STATE(471), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(277), + [sym_yield] = STATE(277), + [sym_built_in_value] = STATE(279), + [sym_identifier] = ACTIONS(136), + [sym__comment] = ACTIONS(3), + [anon_sym_LPAREN] = ACTIONS(138), + [anon_sym_async] = ACTIONS(140), + [anon_sym_LBRACE] = ACTIONS(142), + [anon_sym_struct] = ACTIONS(144), + [anon_sym_new] = ACTIONS(146), + [sym_integer] = ACTIONS(148), + [sym_float] = ACTIONS(150), + [sym_string] = ACTIONS(150), + [anon_sym_true] = ACTIONS(152), + [anon_sym_false] = ACTIONS(152), + [anon_sym_LBRACK] = ACTIONS(154), + [anon_sym_none] = ACTIONS(156), + [anon_sym_some] = ACTIONS(158), + [anon_sym_if] = ACTIONS(160), + [anon_sym_match] = ACTIONS(162), + [anon_sym_while] = ACTIONS(164), + [anon_sym_for] = ACTIONS(166), + [anon_sym_asyncfor] = ACTIONS(168), + [anon_sym_return] = ACTIONS(170), + [anon_sym_args] = ACTIONS(172), + [anon_sym_assert_equal] = ACTIONS(172), + [anon_sym_env] = ACTIONS(172), + [anon_sym_fs] = ACTIONS(172), + [anon_sym_json] = ACTIONS(172), + [anon_sym_length] = ACTIONS(172), + [anon_sym_output] = ACTIONS(172), + [anon_sym_random] = ACTIONS(172), + [anon_sym_string] = ACTIONS(172), + }, + [44] = { + [sym_statement] = STATE(445), + [sym_expression] = STATE(323), + [sym__expression_kind] = STATE(288), + [sym_block] = STATE(300), + [sym_value] = STATE(265), + [sym_structure] = STATE(279), + [sym_new] = STATE(288), + [sym_boolean] = STATE(279), + [sym_list] = STATE(279), + [sym_map] = STATE(279), + [sym_option] = STATE(279), + [sym_index] = STATE(314), + [sym_index_expression] = STATE(464), + [sym_math] = STATE(288), + [sym_logic] = STATE(288), + [sym_assignment] = STATE(300), + [sym_index_assignment] = STATE(300), + [sym_if_else] = STATE(300), + [sym_if] = STATE(388), + [sym_match] = STATE(300), + [sym_while] = STATE(300), + [sym_for] = STATE(300), + [sym_return] = STATE(300), + [sym_function] = STATE(279), + [sym_function_expression] = STATE(471), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(277), + [sym_yield] = STATE(277), + [sym_built_in_value] = STATE(279), + [sym_identifier] = ACTIONS(136), + [sym__comment] = ACTIONS(3), + [anon_sym_LPAREN] = ACTIONS(138), + [anon_sym_async] = ACTIONS(140), + [anon_sym_LBRACE] = ACTIONS(142), + [anon_sym_struct] = ACTIONS(144), + [anon_sym_new] = ACTIONS(146), + [sym_integer] = ACTIONS(148), + [sym_float] = ACTIONS(150), + [sym_string] = ACTIONS(150), + [anon_sym_true] = ACTIONS(152), + [anon_sym_false] = ACTIONS(152), + [anon_sym_LBRACK] = ACTIONS(154), + [anon_sym_none] = ACTIONS(156), + [anon_sym_some] = ACTIONS(158), + [anon_sym_if] = ACTIONS(160), + [anon_sym_match] = ACTIONS(162), + [anon_sym_while] = ACTIONS(164), + [anon_sym_for] = ACTIONS(166), + [anon_sym_asyncfor] = ACTIONS(168), + [anon_sym_return] = ACTIONS(170), + [anon_sym_args] = ACTIONS(172), + [anon_sym_assert_equal] = ACTIONS(172), + [anon_sym_env] = ACTIONS(172), + [anon_sym_fs] = ACTIONS(172), + [anon_sym_json] = ACTIONS(172), + [anon_sym_length] = ACTIONS(172), + [anon_sym_output] = ACTIONS(172), + [anon_sym_random] = ACTIONS(172), + [anon_sym_string] = ACTIONS(172), + }, + [45] = { + [sym_statement] = STATE(309), + [sym_expression] = STATE(196), + [sym__expression_kind] = STATE(125), + [sym_block] = STATE(301), + [sym_value] = STATE(126), + [sym_structure] = STATE(129), + [sym_new] = STATE(125), + [sym_boolean] = STATE(129), + [sym_list] = STATE(129), + [sym_map] = STATE(129), + [sym_option] = STATE(129), + [sym_index] = STATE(134), + [sym_index_expression] = STATE(476), + [sym_math] = STATE(125), + [sym_logic] = STATE(125), + [sym_assignment] = STATE(301), + [sym_index_assignment] = STATE(301), + [sym_if_else] = STATE(301), + [sym_if] = STATE(246), + [sym_match] = STATE(301), + [sym_while] = STATE(301), + [sym_for] = STATE(301), + [sym_return] = STATE(301), + [sym_function] = STATE(129), + [sym_function_expression] = STATE(457), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(119), + [sym_yield] = STATE(119), + [sym_built_in_value] = STATE(129), [sym_identifier] = ACTIONS(174), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(176), @@ -5759,37 +5639,36 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_random] = ACTIONS(206), [anon_sym_string] = ACTIONS(206), }, - [47] = { - [sym_statement] = STATE(251), - [sym_expression] = STATE(93), - [sym__expression_kind] = STATE(81), - [sym_block] = STATE(248), - [sym_value] = STATE(80), - [sym_type_definition] = STATE(61), - [sym_structure] = STATE(55), - [sym_new] = STATE(81), - [sym_boolean] = STATE(61), - [sym_list] = STATE(61), - [sym_map] = STATE(61), - [sym_option] = STATE(61), - [sym_index] = STATE(75), - [sym_index_expression] = STATE(485), - [sym_math] = STATE(81), - [sym_logic] = STATE(81), - [sym_assignment] = STATE(248), - [sym_index_assignment] = STATE(248), - [sym_if_else] = STATE(248), - [sym_if] = STATE(227), - [sym_match] = STATE(248), - [sym_while] = STATE(248), - [sym_for] = STATE(248), - [sym_return] = STATE(248), - [sym_function] = STATE(61), - [sym_function_expression] = STATE(484), - [sym__function_expression_kind] = STATE(72), - [sym_function_call] = STATE(71), - [sym_yield] = STATE(71), - [sym_built_in_value] = STATE(61), + [46] = { + [sym_statement] = STATE(233), + [sym_expression] = STATE(88), + [sym__expression_kind] = STATE(63), + [sym_block] = STATE(232), + [sym_value] = STATE(87), + [sym_structure] = STATE(81), + [sym_new] = STATE(63), + [sym_boolean] = STATE(81), + [sym_list] = STATE(81), + [sym_map] = STATE(81), + [sym_option] = STATE(81), + [sym_index] = STATE(84), + [sym_index_expression] = STATE(482), + [sym_math] = STATE(63), + [sym_logic] = STATE(63), + [sym_assignment] = STATE(232), + [sym_index_assignment] = STATE(232), + [sym_if_else] = STATE(232), + [sym_if] = STATE(224), + [sym_match] = STATE(232), + [sym_while] = STATE(232), + [sym_for] = STATE(232), + [sym_return] = STATE(232), + [sym_function] = STATE(81), + [sym_function_expression] = STATE(481), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(69), + [sym_yield] = STATE(69), + [sym_built_in_value] = STATE(81), [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(7), @@ -5821,6 +5700,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_random] = ACTIONS(41), [anon_sym_string] = ACTIONS(41), }, + [47] = { + [sym_statement] = STATE(428), + [sym_expression] = STATE(323), + [sym__expression_kind] = STATE(288), + [sym_block] = STATE(300), + [sym_value] = STATE(265), + [sym_structure] = STATE(279), + [sym_new] = STATE(288), + [sym_boolean] = STATE(279), + [sym_list] = STATE(279), + [sym_map] = STATE(279), + [sym_option] = STATE(279), + [sym_index] = STATE(314), + [sym_index_expression] = STATE(464), + [sym_math] = STATE(288), + [sym_logic] = STATE(288), + [sym_assignment] = STATE(300), + [sym_index_assignment] = STATE(300), + [sym_if_else] = STATE(300), + [sym_if] = STATE(388), + [sym_match] = STATE(300), + [sym_while] = STATE(300), + [sym_for] = STATE(300), + [sym_return] = STATE(300), + [sym_function] = STATE(279), + [sym_function_expression] = STATE(471), + [sym__function_expression_kind] = STATE(71), + [sym_function_call] = STATE(277), + [sym_yield] = STATE(277), + [sym_built_in_value] = STATE(279), + [sym_identifier] = ACTIONS(136), + [sym__comment] = ACTIONS(3), + [anon_sym_LPAREN] = ACTIONS(138), + [anon_sym_async] = ACTIONS(140), + [anon_sym_LBRACE] = ACTIONS(142), + [anon_sym_struct] = ACTIONS(144), + [anon_sym_new] = ACTIONS(146), + [sym_integer] = ACTIONS(148), + [sym_float] = ACTIONS(150), + [sym_string] = ACTIONS(150), + [anon_sym_true] = ACTIONS(152), + [anon_sym_false] = ACTIONS(152), + [anon_sym_LBRACK] = ACTIONS(154), + [anon_sym_none] = ACTIONS(156), + [anon_sym_some] = ACTIONS(158), + [anon_sym_if] = ACTIONS(160), + [anon_sym_match] = ACTIONS(162), + [anon_sym_while] = ACTIONS(164), + [anon_sym_for] = ACTIONS(166), + [anon_sym_asyncfor] = ACTIONS(168), + [anon_sym_return] = ACTIONS(170), + [anon_sym_args] = ACTIONS(172), + [anon_sym_assert_equal] = ACTIONS(172), + [anon_sym_env] = ACTIONS(172), + [anon_sym_fs] = ACTIONS(172), + [anon_sym_json] = ACTIONS(172), + [anon_sym_length] = ACTIONS(172), + [anon_sym_output] = ACTIONS(172), + [anon_sym_random] = ACTIONS(172), + [anon_sym_string] = ACTIONS(172), + }, }; static const uint16_t ts_small_parse_table[] = { @@ -5829,9 +5769,9 @@ static const uint16_t ts_small_parse_table[] = { sym__comment, ACTIONS(212), 1, anon_sym_DASH_GT, - STATE(176), 1, + STATE(174), 1, sym_math_operator, - STATE(179), 1, + STATE(176), 1, sym_logic_operator, ACTIONS(208), 22, ts_builtin_sym_end, @@ -5885,194 +5825,75 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [67] = 6, + [67] = 5, + ACTIONS(3), 1, + sym__comment, + STATE(174), 1, + sym_math_operator, + STATE(176), 1, + sym_logic_operator, + ACTIONS(214), 23, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_asyncfor, + anon_sym_DASH_GT, + ACTIONS(216), 28, + anon_sym_async, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_return, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [132] = 6, ACTIONS(3), 1, sym__comment, ACTIONS(212), 1, anon_sym_DASH_GT, + STATE(174), 1, + sym_math_operator, STATE(176), 1, - sym_math_operator, - STATE(179), 1, sym_logic_operator, - ACTIONS(214), 22, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_asyncfor, - ACTIONS(216), 28, - anon_sym_async, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_if, - anon_sym_match, - anon_sym_while, - anon_sym_for, - anon_sym_return, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [134] = 5, - ACTIONS(3), 1, - sym__comment, - STATE(176), 1, - sym_math_operator, - STATE(179), 1, - sym_logic_operator, - ACTIONS(218), 23, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_asyncfor, - anon_sym_DASH_GT, - ACTIONS(220), 28, - anon_sym_async, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_if, - anon_sym_match, - anon_sym_while, - anon_sym_for, - anon_sym_return, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [199] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(222), 1, - anon_sym_DASH_GT, - STATE(183), 1, - sym_logic_operator, - STATE(186), 1, - sym_math_operator, - ACTIONS(214), 21, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_COLON, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_asyncfor, - ACTIONS(216), 28, - anon_sym_async, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_if, - anon_sym_match, - anon_sym_while, - anon_sym_for, - anon_sym_return, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [265] = 5, - ACTIONS(3), 1, - sym__comment, - STATE(183), 1, - sym_logic_operator, - STATE(186), 1, - sym_math_operator, ACTIONS(218), 22, ts_builtin_sym_end, anon_sym_SEMI, @@ -6083,6 +5904,7 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_COLON, + anon_sym_DOT_DOT, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -6095,7 +5917,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_asyncfor, - anon_sym_DASH_GT, ACTIONS(220), 28, anon_sym_async, sym_identifier, @@ -6125,15 +5946,79 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [329] = 6, + [199] = 10, ACTIONS(3), 1, sym__comment, - ACTIONS(222), 1, + ACTIONS(226), 1, + anon_sym_LPAREN, + ACTIONS(228), 1, + anon_sym_EQ, + ACTIONS(230), 1, + anon_sym_COLON, + ACTIONS(232), 1, + anon_sym_LT, + STATE(46), 1, + sym_assignment_operator, + STATE(393), 1, + sym_type_specification, + ACTIONS(234), 2, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + ACTIONS(222), 18, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_asyncfor, anon_sym_DASH_GT, - STATE(183), 1, - sym_logic_operator, - STATE(186), 1, + ACTIONS(224), 26, + anon_sym_async, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_return, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [273] = 6, + ACTIONS(3), 1, + sym__comment, + ACTIONS(236), 1, + anon_sym_DASH_GT, + STATE(192), 1, sym_math_operator, + STATE(195), 1, + sym_logic_operator, ACTIONS(208), 21, ts_builtin_sym_end, anon_sym_SEMI, @@ -6185,32 +6070,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [395] = 10, + [339] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(228), 1, - anon_sym_LPAREN, - ACTIONS(230), 1, - anon_sym_EQ, - ACTIONS(232), 1, - anon_sym_COLON, - ACTIONS(234), 1, - anon_sym_LT, - STATE(47), 1, - sym_assignment_operator, - STATE(396), 1, - sym_type_specification, - ACTIONS(236), 2, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - ACTIONS(224), 18, + ACTIONS(236), 1, + anon_sym_DASH_GT, + STATE(192), 1, + sym_math_operator, + STATE(195), 1, + sym_logic_operator, + ACTIONS(218), 21, ts_builtin_sym_end, anon_sym_SEMI, + anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, anon_sym_LBRACK, + anon_sym_COLON, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -6220,12 +6098,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, anon_sym_asyncfor, - anon_sym_DASH_GT, - ACTIONS(226), 26, + ACTIONS(220), 28, anon_sym_async, sym_identifier, anon_sym_struct, + anon_sym_EQ, anon_sym_new, sym_integer, anon_sym_true, @@ -6235,6 +6115,66 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS, anon_sym_DASH, anon_sym_GT, + anon_sym_LT, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_return, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [405] = 5, + ACTIONS(3), 1, + sym__comment, + STATE(192), 1, + sym_math_operator, + STATE(195), 1, + sym_logic_operator, + ACTIONS(214), 22, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_COLON, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_asyncfor, + anon_sym_DASH_GT, + ACTIONS(216), 28, + anon_sym_async, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, anon_sym_if, anon_sym_match, anon_sym_while, @@ -6417,12 +6357,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [646] = 4, + [646] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(254), 1, - anon_sym_DOT_DOT, - ACTIONS(250), 22, + ACTIONS(250), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -6432,6 +6370,7 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_COLON, + anon_sym_DOT_DOT, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -6474,10 +6413,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [707] = 3, + [705] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(256), 23, + ACTIONS(254), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -6501,7 +6440,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(258), 28, + ACTIONS(256), 28, anon_sym_async, sym_identifier, anon_sym_struct, @@ -6530,10 +6469,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [766] = 3, + [764] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(232), 23, + ACTIONS(258), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -6586,7 +6525,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [825] = 3, + [823] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(262), 23, @@ -6642,7 +6581,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [884] = 3, + [882] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(266), 23, @@ -6698,7 +6637,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [943] = 3, + [941] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(270), 23, @@ -6754,7 +6693,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1002] = 3, + [1000] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(274), 23, @@ -6810,7 +6749,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1061] = 3, + [1059] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(278), 23, @@ -6866,25 +6805,362 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1120] = 10, + [1118] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(228), 1, + ACTIONS(282), 23, + ts_builtin_sym_end, + anon_sym_SEMI, anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_asyncfor, + anon_sym_DASH_GT, + ACTIONS(284), 28, + anon_sym_async, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_return, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [1177] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(286), 23, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_asyncfor, + anon_sym_DASH_GT, + ACTIONS(288), 28, + anon_sym_async, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_return, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [1236] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(290), 23, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_asyncfor, + anon_sym_DASH_GT, + ACTIONS(292), 28, + anon_sym_async, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_return, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [1295] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(226), 1, + anon_sym_LPAREN, + ACTIONS(222), 22, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_asyncfor, + anon_sym_DASH_GT, + ACTIONS(224), 28, + anon_sym_async, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_return, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [1356] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(294), 23, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_asyncfor, + anon_sym_DASH_GT, + ACTIONS(296), 28, + anon_sym_async, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_return, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [1415] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(298), 23, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_asyncfor, + anon_sym_DASH_GT, + ACTIONS(300), 28, + anon_sym_async, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_return, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [1474] = 10, + ACTIONS(3), 1, + sym__comment, + ACTIONS(226), 1, + anon_sym_LPAREN, + ACTIONS(230), 1, + anon_sym_COLON, ACTIONS(232), 1, - anon_sym_COLON, - ACTIONS(234), 1, anon_sym_LT, - ACTIONS(282), 1, + ACTIONS(302), 1, anon_sym_EQ, - STATE(47), 1, + STATE(46), 1, sym_assignment_operator, - STATE(394), 1, + STATE(390), 1, sym_type_specification, - ACTIONS(236), 2, + ACTIONS(234), 2, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, - ACTIONS(224), 17, + ACTIONS(222), 17, anon_sym_SEMI, anon_sym_LBRACE, anon_sym_RBRACE, @@ -6902,7 +7178,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(226), 26, + ACTIONS(224), 26, anon_sym_async, sym_identifier, anon_sym_struct, @@ -6929,344 +7205,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1193] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(284), 23, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_asyncfor, - anon_sym_DASH_GT, - ACTIONS(286), 28, - anon_sym_async, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_if, - anon_sym_match, - anon_sym_while, - anon_sym_for, - anon_sym_return, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [1252] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(288), 23, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_asyncfor, - anon_sym_DASH_GT, - ACTIONS(290), 28, - anon_sym_async, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_if, - anon_sym_match, - anon_sym_while, - anon_sym_for, - anon_sym_return, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [1311] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(292), 23, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_asyncfor, - anon_sym_DASH_GT, - ACTIONS(294), 28, - anon_sym_async, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_if, - anon_sym_match, - anon_sym_while, - anon_sym_for, - anon_sym_return, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [1370] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(296), 23, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_asyncfor, - anon_sym_DASH_GT, - ACTIONS(298), 28, - anon_sym_async, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_if, - anon_sym_match, - anon_sym_while, - anon_sym_for, - anon_sym_return, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [1429] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(228), 1, - anon_sym_LPAREN, - ACTIONS(224), 22, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_asyncfor, - anon_sym_DASH_GT, - ACTIONS(226), 28, - anon_sym_async, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_if, - anon_sym_match, - anon_sym_while, - anon_sym_for, - anon_sym_return, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [1490] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(300), 23, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_asyncfor, - anon_sym_DASH_GT, - ACTIONS(302), 28, - anon_sym_async, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_if, - anon_sym_match, - anon_sym_while, - anon_sym_for, - anon_sym_return, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [1549] = 3, + [1547] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(304), 23, @@ -7322,10 +7261,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1608] = 3, + [1606] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(308), 23, + ACTIONS(230), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -7349,7 +7288,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(310), 28, + ACTIONS(308), 28, anon_sym_async, sym_identifier, anon_sym_struct, @@ -7378,28 +7317,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1667] = 8, + [1665] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(228), 1, - anon_sym_LPAREN, - ACTIONS(230), 1, - anon_sym_EQ, - ACTIONS(232), 1, - anon_sym_COLON, - STATE(27), 1, - sym_assignment_operator, - ACTIONS(236), 2, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - ACTIONS(224), 18, + ACTIONS(310), 1, + anon_sym_DOT_DOT, + ACTIONS(274), 22, ts_builtin_sym_end, anon_sym_SEMI, + anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, anon_sym_LBRACK, + anon_sym_COLON, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -7409,12 +7341,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(226), 27, + ACTIONS(276), 28, anon_sym_async, sym_identifier, anon_sym_struct, + anon_sym_EQ, anon_sym_new, sym_integer, anon_sym_true, @@ -7439,7 +7374,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1736] = 3, + [1726] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(312), 23, @@ -7495,7 +7430,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1795] = 3, + [1785] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(316), 23, @@ -7551,7 +7486,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1854] = 3, + [1844] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(320), 23, @@ -7607,7 +7542,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1913] = 3, + [1903] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(324), 23, @@ -7663,65 +7598,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1972] = 5, - ACTIONS(3), 1, - sym__comment, - ACTIONS(228), 1, - anon_sym_LPAREN, - ACTIONS(232), 1, - anon_sym_COLON, - ACTIONS(224), 21, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_asyncfor, - anon_sym_DASH_GT, - ACTIONS(226), 28, - anon_sym_async, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_if, - anon_sym_match, - anon_sym_while, - anon_sym_for, - anon_sym_return, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [2035] = 3, + [1962] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(328), 23, @@ -7777,7 +7654,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [2094] = 3, + [2021] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(332), 23, @@ -7833,7 +7710,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [2153] = 3, + [2080] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(336), 23, @@ -7889,63 +7766,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [2212] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(250), 23, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_asyncfor, - anon_sym_DASH_GT, - ACTIONS(252), 28, - anon_sym_async, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_if, - anon_sym_match, - anon_sym_while, - anon_sym_for, - anon_sym_return, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [2271] = 3, + [2139] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(340), 23, @@ -8001,7 +7822,68 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [2330] = 3, + [2198] = 8, + ACTIONS(3), 1, + sym__comment, + ACTIONS(226), 1, + anon_sym_LPAREN, + ACTIONS(228), 1, + anon_sym_EQ, + ACTIONS(230), 1, + anon_sym_COLON, + STATE(36), 1, + sym_assignment_operator, + ACTIONS(234), 2, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + ACTIONS(222), 18, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_asyncfor, + anon_sym_DASH_GT, + ACTIONS(224), 27, + anon_sym_async, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_return, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [2267] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(344), 23, @@ -8057,7 +7939,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [2389] = 3, + [2326] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(348), 23, @@ -8113,19 +7995,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [2448] = 3, + [2385] = 5, ACTIONS(3), 1, sym__comment, - ACTIONS(352), 23, + ACTIONS(226), 1, + anon_sym_LPAREN, + ACTIONS(230), 1, + anon_sym_COLON, + ACTIONS(222), 21, ts_builtin_sym_end, anon_sym_SEMI, - anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, anon_sym_LBRACK, - anon_sym_COLON, anon_sym_DOT_DOT, anon_sym_STAR, anon_sym_SLASH, @@ -8140,7 +8024,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(354), 28, + ACTIONS(224), 28, anon_sym_async, sym_identifier, anon_sym_struct, @@ -8169,36 +8053,35 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [2507] = 11, + [2448] = 10, ACTIONS(3), 1, sym__comment, - ACTIONS(360), 1, - anon_sym_SEMI, - ACTIONS(364), 1, + ACTIONS(358), 1, anon_sym_DASH, - ACTIONS(370), 1, + ACTIONS(364), 1, anon_sym_DASH_GT, - STATE(201), 1, + STATE(181), 1, sym_math_operator, - STATE(214), 1, + STATE(191), 1, sym_logic_operator, - ACTIONS(368), 2, + ACTIONS(362), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(362), 4, + ACTIONS(356), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, + ACTIONS(360), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - ACTIONS(356), 8, + ACTIONS(352), 9, ts_builtin_sym_end, + anon_sym_SEMI, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_RBRACE, @@ -8206,7 +8089,7 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_asyncfor, - ACTIONS(358), 23, + ACTIONS(354), 23, anon_sym_async, sym_identifier, anon_sym_struct, @@ -8230,14 +8113,125 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [2579] = 6, + [2518] = 5, ACTIONS(3), 1, sym__comment, - ACTIONS(372), 1, - anon_sym_DASH_GT, - STATE(184), 1, + STATE(182), 1, sym_math_operator, - STATE(187), 1, + STATE(183), 1, + sym_logic_operator, + ACTIONS(216), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(214), 24, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_DASH_GT, + [2578] = 6, + ACTIONS(3), 1, + sym__comment, + ACTIONS(366), 1, + anon_sym_DASH_GT, + STATE(182), 1, + sym_math_operator, + STATE(183), 1, + sym_logic_operator, + ACTIONS(220), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(218), 23, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + [2640] = 6, + ACTIONS(3), 1, + sym__comment, + ACTIONS(366), 1, + anon_sym_DASH_GT, + STATE(182), 1, + sym_math_operator, + STATE(183), 1, sym_logic_operator, ACTIONS(210), 22, sym_identifier, @@ -8286,14 +8280,75 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, - [2641] = 6, + [2702] = 11, ACTIONS(3), 1, sym__comment, - ACTIONS(370), 1, + ACTIONS(358), 1, + anon_sym_DASH, + ACTIONS(364), 1, anon_sym_DASH_GT, - STATE(201), 1, + ACTIONS(368), 1, + anon_sym_SEMI, + STATE(181), 1, sym_math_operator, - STATE(214), 1, + STATE(191), 1, + sym_logic_operator, + ACTIONS(362), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(356), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(360), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + ACTIONS(352), 8, + ts_builtin_sym_end, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_asyncfor, + ACTIONS(354), 23, + anon_sym_async, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_return, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [2774] = 6, + ACTIONS(3), 1, + sym__comment, + ACTIONS(364), 1, + anon_sym_DASH_GT, + STATE(181), 1, + sym_math_operator, + STATE(191), 1, sym_logic_operator, ACTIONS(208), 19, ts_builtin_sym_end, @@ -8342,89 +8397,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [2703] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(370), 1, - anon_sym_DASH_GT, - STATE(201), 1, - sym_math_operator, - STATE(214), 1, - sym_logic_operator, - ACTIONS(214), 19, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_asyncfor, - ACTIONS(216), 26, - anon_sym_async, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_if, - anon_sym_match, - anon_sym_while, - anon_sym_for, - anon_sym_return, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [2765] = 10, + [2836] = 6, ACTIONS(3), 1, sym__comment, ACTIONS(364), 1, - anon_sym_DASH, - ACTIONS(370), 1, anon_sym_DASH_GT, - STATE(201), 1, + STATE(181), 1, sym_math_operator, - STATE(214), 1, + STATE(191), 1, sym_logic_operator, - ACTIONS(368), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(362), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(366), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - ACTIONS(356), 9, + ACTIONS(218), 19, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -8433,8 +8415,18 @@ static const uint16_t ts_small_parse_table[] = { sym_float, sym_string, anon_sym_LBRACK, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, anon_sym_asyncfor, - ACTIONS(358), 23, + ACTIONS(220), 26, anon_sym_async, sym_identifier, anon_sym_struct, @@ -8444,6 +8436,9 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_none, anon_sym_some, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, anon_sym_if, anon_sym_match, anon_sym_while, @@ -8458,13 +8453,38 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [2835] = 5, + [2898] = 6, ACTIONS(3), 1, sym__comment, - STATE(184), 1, - sym_math_operator, - STATE(187), 1, + ACTIONS(370), 1, + anon_sym_DASH_GT, + STATE(194), 1, sym_logic_operator, + STATE(202), 1, + sym_math_operator, + ACTIONS(218), 22, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, ACTIONS(220), 22, sym_identifier, anon_sym_struct, @@ -8488,19 +8508,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(218), 24, + [2959] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(230), 1, + anon_sym_COLON, + ACTIONS(226), 20, + ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, + anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -8510,18 +8532,42 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, + anon_sym_asyncfor, anon_sym_DASH_GT, - [2895] = 6, + ACTIONS(372), 26, + anon_sym_async, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_return, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [3016] = 5, ACTIONS(3), 1, sym__comment, - ACTIONS(372), 1, - anon_sym_DASH_GT, - STATE(184), 1, - sym_math_operator, - STATE(187), 1, + STATE(194), 1, sym_logic_operator, + STATE(202), 1, + sym_math_operator, ACTIONS(216), 22, sym_identifier, anon_sym_struct, @@ -8546,60 +8592,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_random, anon_sym_string, ACTIONS(214), 23, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - [2957] = 5, - ACTIONS(3), 1, - sym__comment, - STATE(169), 1, - sym_math_operator, - STATE(181), 1, - sym_logic_operator, - ACTIONS(220), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(218), 23, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -8623,123 +8615,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [3016] = 4, + [3075] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(232), 1, - anon_sym_COLON, - ACTIONS(228), 20, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_asyncfor, + ACTIONS(370), 1, anon_sym_DASH_GT, - ACTIONS(374), 26, - anon_sym_async, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_if, - anon_sym_match, - anon_sym_while, - anon_sym_for, - anon_sym_return, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [3073] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(376), 1, - anon_sym_DASH_GT, - STATE(169), 1, - sym_math_operator, - STATE(181), 1, + STATE(194), 1, sym_logic_operator, - ACTIONS(214), 22, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - ACTIONS(216), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [3134] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(376), 1, - anon_sym_DASH_GT, - STATE(169), 1, + STATE(202), 1, sym_math_operator, - STATE(181), 1, - sym_logic_operator, ACTIONS(208), 22, anon_sym_SEMI, anon_sym_LPAREN, @@ -8786,1132 +8670,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [3195] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(330), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(328), 24, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_DASH_GT, - [3249] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(294), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(292), 24, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_DASH_GT, - [3303] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(342), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(340), 24, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_DASH_GT, - [3357] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(334), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(332), 24, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_DASH_GT, - [3411] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(306), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(304), 24, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_DASH_GT, - [3465] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(264), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(262), 24, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_DASH_GT, - [3519] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(252), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(250), 24, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_DASH_GT, - [3573] = 5, - ACTIONS(3), 1, - sym__comment, - ACTIONS(228), 1, - anon_sym_LPAREN, - ACTIONS(232), 1, - anon_sym_COLON, - ACTIONS(224), 22, - anon_sym_SEMI, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_DASH_GT, - ACTIONS(226), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [3631] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(240), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(238), 24, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_DASH_GT, - [3685] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(346), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(344), 24, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_DASH_GT, - [3739] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(302), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(300), 24, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_DASH_GT, - [3793] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(228), 1, - anon_sym_LPAREN, - ACTIONS(226), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(224), 23, - anon_sym_SEMI, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_DASH_GT, - [3849] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(272), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(270), 24, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_DASH_GT, - [3903] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(338), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(336), 24, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_DASH_GT, - [3957] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(318), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(316), 24, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_DASH_GT, - [4011] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(290), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(288), 24, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_DASH_GT, - [4065] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(244), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(242), 24, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_DASH_GT, - [4119] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(298), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(296), 24, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_DASH_GT, - [4173] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(326), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(324), 24, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_DASH_GT, - [4227] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(350), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(348), 24, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_DASH_GT, - [4281] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(276), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(274), 24, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_DASH_GT, - [4335] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(268), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(266), 24, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_DASH_GT, - [4389] = 3, + [3136] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(314), 22, @@ -9962,7 +8721,109 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [4443] = 3, + [3190] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(268), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(266), 24, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_DASH_GT, + [3244] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(318), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(316), 24, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_DASH_GT, + [3298] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(322), 22, @@ -10013,10 +8874,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [4497] = 3, + [3352] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(248), 22, + ACTIONS(350), 22, sym_identifier, anon_sym_struct, anon_sym_EQ, @@ -10039,7 +8900,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(246), 24, + ACTIONS(348), 24, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -10064,10 +8925,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [4551] = 3, + [3406] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(258), 22, + ACTIONS(296), 22, sym_identifier, anon_sym_struct, anon_sym_EQ, @@ -10090,7 +8951,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(256), 24, + ACTIONS(294), 24, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -10115,7 +8976,212 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [4605] = 3, + [3460] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(326), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(324), 24, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_DASH_GT, + [3514] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(284), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(282), 24, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_DASH_GT, + [3568] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(308), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(230), 24, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_DASH_GT, + [3622] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(374), 1, + anon_sym_DOT_DOT, + ACTIONS(276), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(274), 23, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_DASH_GT, + [3678] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(280), 22, @@ -10166,7 +9232,518 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [4659] = 3, + [3732] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(240), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(238), 24, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_DASH_GT, + [3786] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(264), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(262), 24, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_DASH_GT, + [3840] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(256), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(254), 24, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_DASH_GT, + [3894] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(252), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(250), 24, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_DASH_GT, + [3948] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(292), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(290), 24, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_DASH_GT, + [4002] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(342), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(340), 24, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_DASH_GT, + [4056] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(346), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(344), 24, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_DASH_GT, + [4110] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(248), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(246), 24, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_DASH_GT, + [4164] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(306), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(304), 24, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_DASH_GT, + [4218] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(226), 1, + anon_sym_LPAREN, + ACTIONS(224), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(222), 23, + anon_sym_SEMI, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_DASH_GT, + [4274] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(260), 22, @@ -10192,7 +9769,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(232), 24, + ACTIONS(258), 24, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -10217,12 +9794,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [4713] = 4, + [4328] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(378), 1, - anon_sym_DOT_DOT, - ACTIONS(252), 22, + ACTIONS(300), 22, sym_identifier, anon_sym_struct, anon_sym_EQ, @@ -10245,57 +9820,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(250), 23, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COLON, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_DASH_GT, - [4769] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(286), 22, - sym_identifier, - anon_sym_struct, - anon_sym_EQ, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(284), 24, + ACTIONS(298), 24, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -10320,10 +9845,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [4823] = 3, + [4382] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(354), 22, + ACTIONS(244), 22, sym_identifier, anon_sym_struct, anon_sym_EQ, @@ -10346,7 +9871,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(352), 24, + ACTIONS(242), 24, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -10371,10 +9896,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [4877] = 3, + [4436] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(310), 22, + ACTIONS(338), 22, sym_identifier, anon_sym_struct, anon_sym_EQ, @@ -10397,7 +9922,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(308), 24, + ACTIONS(336), 24, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -10422,7 +9947,442 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [4931] = 25, + [4490] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(288), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(286), 24, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_DASH_GT, + [4544] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(272), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(270), 24, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_DASH_GT, + [4598] = 5, + ACTIONS(3), 1, + sym__comment, + ACTIONS(226), 1, + anon_sym_LPAREN, + ACTIONS(230), 1, + anon_sym_COLON, + ACTIONS(222), 22, + anon_sym_SEMI, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_DASH_GT, + ACTIONS(224), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [4656] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(276), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(274), 24, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_DASH_GT, + [4710] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(330), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(328), 24, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_DASH_GT, + [4764] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(334), 22, + sym_identifier, + anon_sym_struct, + anon_sym_EQ, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(332), 24, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_DASH_GT, + [4818] = 10, + ACTIONS(3), 1, + sym__comment, + ACTIONS(226), 1, + anon_sym_LPAREN, + ACTIONS(228), 1, + anon_sym_EQ, + ACTIONS(230), 1, + anon_sym_COLON, + ACTIONS(232), 1, + anon_sym_LT, + STATE(29), 1, + sym_assignment_operator, + STATE(391), 1, + sym_type_specification, + ACTIONS(234), 2, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + ACTIONS(222), 17, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_DASH_GT, + ACTIONS(224), 20, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [4885] = 24, + ACTIONS(3), 1, + sym__comment, + ACTIONS(376), 1, + sym_identifier, + ACTIONS(379), 1, + anon_sym_LPAREN, + ACTIONS(382), 1, + anon_sym_LBRACE, + ACTIONS(385), 1, + anon_sym_RBRACE, + ACTIONS(387), 1, + anon_sym_struct, + ACTIONS(390), 1, + anon_sym_new, + ACTIONS(393), 1, + sym_integer, + ACTIONS(402), 1, + anon_sym_LBRACK, + ACTIONS(405), 1, + anon_sym_none, + ACTIONS(408), 1, + anon_sym_some, + ACTIONS(411), 1, + anon_sym_STAR, + STATE(71), 1, + sym__function_expression_kind, + STATE(131), 1, + aux_sym_match_repeat1, + STATE(352), 1, + sym_expression, + STATE(464), 1, + sym_index_expression, + STATE(471), 1, + sym_function_expression, + ACTIONS(396), 2, + sym_float, + sym_string, + ACTIONS(399), 2, + anon_sym_true, + anon_sym_false, + STATE(265), 2, + sym_value, + sym_index, + STATE(277), 2, + sym_function_call, + sym_yield, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(414), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [4979] = 24, ACTIONS(3), 1, sym__comment, ACTIONS(138), 1, @@ -10439,189 +10399,43 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_none, ACTIONS(158), 1, anon_sym_some, - ACTIONS(380), 1, - sym_identifier, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(384), 1, - anon_sym_RBRACE, - ACTIONS(386), 1, - anon_sym_STAR, - STATE(72), 1, - sym__function_expression_kind, - STATE(133), 1, - aux_sym_match_repeat1, - STATE(279), 1, - sym_structure, - STATE(356), 1, - sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(475), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(285), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [5028] = 25, - ACTIONS(3), 1, - sym__comment, - ACTIONS(388), 1, - sym_identifier, - ACTIONS(391), 1, - anon_sym_LPAREN, - ACTIONS(394), 1, - anon_sym_LBRACE, - ACTIONS(397), 1, - anon_sym_RBRACE, - ACTIONS(399), 1, - anon_sym_struct, - ACTIONS(402), 1, - anon_sym_new, - ACTIONS(405), 1, - sym_integer, - ACTIONS(414), 1, - anon_sym_LBRACK, ACTIONS(417), 1, - anon_sym_none, - ACTIONS(420), 1, - anon_sym_some, + sym_identifier, + ACTIONS(419), 1, + anon_sym_LBRACE, + ACTIONS(421), 1, + anon_sym_RBRACE, ACTIONS(423), 1, anon_sym_STAR, - STATE(72), 1, + STATE(71), 1, sym__function_expression_kind, - STATE(133), 1, + STATE(131), 1, aux_sym_match_repeat1, - STATE(279), 1, - sym_structure, - STATE(356), 1, + STATE(352), 1, sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(475), 1, + STATE(464), 1, sym_index_expression, - ACTIONS(408), 2, - sym_float, - sym_string, - ACTIONS(411), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(285), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(426), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [5125] = 25, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(380), 1, - sym_identifier, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(386), 1, - anon_sym_STAR, - ACTIONS(429), 1, - anon_sym_RBRACE, - STATE(72), 1, - sym__function_expression_kind, - STATE(133), 1, - aux_sym_match_repeat1, - STATE(279), 1, - sym_structure, - STATE(356), 1, - sym_expression, - STATE(472), 1, + STATE(471), 1, sym_function_expression, - STATE(475), 1, - sym_index_expression, ACTIONS(150), 2, sym_float, sym_string, ACTIONS(152), 2, anon_sym_true, anon_sym_false, - STATE(275), 2, + STATE(265), 2, sym_value, sym_index, - STATE(285), 2, + STATE(277), 2, sym_function_call, sym_yield, - STATE(265), 4, + STATE(288), 4, sym__expression_kind, sym_new, sym_math, sym_logic, - STATE(268), 7, - sym_type_definition, + STATE(279), 7, + sym_structure, sym_boolean, sym_list, sym_map, @@ -10638,25 +10452,91 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [5222] = 10, + [5073] = 24, ACTIONS(3), 1, sym__comment, - ACTIONS(228), 1, + ACTIONS(138), 1, anon_sym_LPAREN, - ACTIONS(230), 1, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(417), 1, + sym_identifier, + ACTIONS(419), 1, + anon_sym_LBRACE, + ACTIONS(423), 1, + anon_sym_STAR, + ACTIONS(425), 1, + anon_sym_RBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(131), 1, + aux_sym_match_repeat1, + STATE(352), 1, + sym_expression, + STATE(464), 1, + sym_index_expression, + STATE(471), 1, + sym_function_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(265), 2, + sym_value, + sym_index, + STATE(277), 2, + sym_function_call, + sym_yield, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [5167] = 8, + ACTIONS(3), 1, + sym__comment, + ACTIONS(226), 1, + anon_sym_LPAREN, + ACTIONS(228), 1, anon_sym_EQ, - ACTIONS(232), 1, + ACTIONS(230), 1, anon_sym_COLON, - ACTIONS(234), 1, - anon_sym_LT, STATE(31), 1, sym_assignment_operator, - STATE(393), 1, - sym_type_specification, - ACTIONS(236), 2, + ACTIONS(234), 2, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, - ACTIONS(224), 17, + ACTIONS(222), 17, anon_sym_SEMI, anon_sym_COMMA, anon_sym_LBRACE, @@ -10674,130 +10554,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_DASH_GT, - ACTIONS(226), 20, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [5289] = 24, - ACTIONS(3), 1, - sym__comment, - ACTIONS(176), 1, - anon_sym_LPAREN, - ACTIONS(182), 1, - anon_sym_struct, - ACTIONS(184), 1, - anon_sym_new, - ACTIONS(186), 1, - sym_integer, - ACTIONS(192), 1, - anon_sym_LBRACK, - ACTIONS(194), 1, - anon_sym_none, - ACTIONS(196), 1, - anon_sym_some, - ACTIONS(431), 1, - sym_identifier, - ACTIONS(433), 1, - anon_sym_LBRACE, - ACTIONS(435), 1, - anon_sym_RBRACK, - STATE(72), 1, - sym__function_expression_kind, - STATE(108), 1, - sym_structure, - STATE(158), 1, - aux_sym_list_repeat1, - STATE(224), 1, - sym_expression, - STATE(460), 1, - sym_function_expression, - STATE(470), 1, - sym_index_expression, - ACTIONS(188), 2, - sym_float, - sym_string, - ACTIONS(190), 2, - anon_sym_true, - anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, - sym_function_call, - sym_yield, - STATE(100), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(105), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(206), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [5383] = 8, - ACTIONS(3), 1, - sym__comment, - ACTIONS(228), 1, - anon_sym_LPAREN, - ACTIONS(230), 1, - anon_sym_EQ, - ACTIONS(232), 1, - anon_sym_COLON, - STATE(42), 1, - sym_assignment_operator, - ACTIONS(236), 2, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - ACTIONS(224), 17, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_DASH_GT, - ACTIONS(226), 21, + ACTIONS(224), 21, sym_identifier, anon_sym_struct, anon_sym_new, @@ -10819,348 +10576,133 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [5445] = 25, + [5229] = 23, ACTIONS(3), 1, sym__comment, - ACTIONS(138), 1, + ACTIONS(176), 1, anon_sym_LPAREN, - ACTIONS(144), 1, + ACTIONS(182), 1, anon_sym_struct, - ACTIONS(146), 1, + ACTIONS(184), 1, anon_sym_new, - ACTIONS(148), 1, + ACTIONS(186), 1, sym_integer, - ACTIONS(154), 1, + ACTIONS(192), 1, anon_sym_LBRACK, - ACTIONS(156), 1, + ACTIONS(194), 1, anon_sym_none, - ACTIONS(158), 1, + ACTIONS(196), 1, anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(437), 1, + ACTIONS(427), 1, sym_identifier, + ACTIONS(429), 1, + anon_sym_RPAREN, + ACTIONS(431), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(157), 1, + aux_sym__expression_list, + STATE(222), 1, + sym_expression, + STATE(457), 1, + sym_function_expression, + STATE(476), 1, + sym_index_expression, + ACTIONS(188), 2, + sym_float, + sym_string, + ACTIONS(190), 2, + anon_sym_true, + anon_sym_false, + STATE(119), 2, + sym_function_call, + sym_yield, + STATE(126), 2, + sym_value, + sym_index, + STATE(125), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(129), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(206), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [5320] = 23, + ACTIONS(3), 1, + sym__comment, + ACTIONS(433), 1, + sym_identifier, + ACTIONS(436), 1, + anon_sym_LPAREN, ACTIONS(439), 1, - anon_sym_RPAREN, - STATE(72), 1, - sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(285), 1, - sym_yield, - STATE(368), 1, - sym_function_call, - STATE(371), 1, - sym_expression, - STATE(417), 1, - aux_sym_function_repeat1, - STATE(472), 1, - sym_function_expression, - STATE(475), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [5541] = 24, - ACTIONS(3), 1, - sym__comment, - ACTIONS(176), 1, - anon_sym_LPAREN, - ACTIONS(182), 1, - anon_sym_struct, - ACTIONS(184), 1, - anon_sym_new, - ACTIONS(186), 1, - sym_integer, - ACTIONS(192), 1, - anon_sym_LBRACK, - ACTIONS(194), 1, - anon_sym_none, - ACTIONS(196), 1, - anon_sym_some, - ACTIONS(431), 1, - sym_identifier, - ACTIONS(433), 1, anon_sym_LBRACE, - ACTIONS(441), 1, - anon_sym_RPAREN, - STATE(72), 1, - sym__function_expression_kind, - STATE(108), 1, - sym_structure, - STATE(140), 1, - aux_sym__expression_list, - STATE(225), 1, - sym_expression, - STATE(460), 1, - sym_function_expression, - STATE(470), 1, - sym_index_expression, - ACTIONS(188), 2, - sym_float, - sym_string, - ACTIONS(190), 2, - anon_sym_true, - anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, - sym_function_call, - sym_yield, - STATE(100), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(105), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(206), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [5635] = 24, - ACTIONS(3), 1, - sym__comment, - ACTIONS(176), 1, - anon_sym_LPAREN, - ACTIONS(182), 1, + ACTIONS(442), 1, anon_sym_struct, - ACTIONS(184), 1, - anon_sym_new, - ACTIONS(186), 1, - sym_integer, - ACTIONS(192), 1, - anon_sym_LBRACK, - ACTIONS(194), 1, - anon_sym_none, - ACTIONS(196), 1, - anon_sym_some, - ACTIONS(431), 1, - sym_identifier, - ACTIONS(433), 1, - anon_sym_LBRACE, - ACTIONS(443), 1, - anon_sym_RPAREN, - STATE(72), 1, - sym__function_expression_kind, - STATE(108), 1, - sym_structure, - STATE(152), 1, - aux_sym__expression_list, - STATE(225), 1, - sym_expression, - STATE(460), 1, - sym_function_expression, - STATE(470), 1, - sym_index_expression, - ACTIONS(188), 2, - sym_float, - sym_string, - ACTIONS(190), 2, - anon_sym_true, - anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, - sym_function_call, - sym_yield, - STATE(100), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(105), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(206), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [5729] = 24, - ACTIONS(3), 1, - sym__comment, - ACTIONS(176), 1, - anon_sym_LPAREN, - ACTIONS(182), 1, - anon_sym_struct, - ACTIONS(184), 1, - anon_sym_new, - ACTIONS(186), 1, - sym_integer, - ACTIONS(192), 1, - anon_sym_LBRACK, - ACTIONS(194), 1, - anon_sym_none, - ACTIONS(196), 1, - anon_sym_some, - ACTIONS(431), 1, - sym_identifier, - ACTIONS(433), 1, - anon_sym_LBRACE, ACTIONS(445), 1, - anon_sym_RBRACK, - STATE(72), 1, - sym__function_expression_kind, - STATE(108), 1, - sym_structure, - STATE(148), 1, - aux_sym_list_repeat1, - STATE(224), 1, - sym_expression, - STATE(460), 1, - sym_function_expression, - STATE(470), 1, - sym_index_expression, - ACTIONS(188), 2, - sym_float, - sym_string, - ACTIONS(190), 2, - anon_sym_true, - anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, - sym_function_call, - sym_yield, - STATE(100), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(105), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(206), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [5823] = 24, - ACTIONS(3), 1, - sym__comment, - ACTIONS(176), 1, - anon_sym_LPAREN, - ACTIONS(182), 1, - anon_sym_struct, - ACTIONS(184), 1, anon_sym_new, - ACTIONS(186), 1, + ACTIONS(448), 1, sym_integer, - ACTIONS(192), 1, + ACTIONS(457), 1, anon_sym_LBRACK, - ACTIONS(194), 1, + ACTIONS(460), 1, + anon_sym_RBRACK, + ACTIONS(462), 1, anon_sym_none, - ACTIONS(196), 1, + ACTIONS(465), 1, anon_sym_some, - ACTIONS(431), 1, - sym_identifier, - ACTIONS(433), 1, - anon_sym_LBRACE, - ACTIONS(447), 1, - anon_sym_RPAREN, - STATE(72), 1, + STATE(71), 1, sym__function_expression_kind, - STATE(108), 1, - sym_structure, - STATE(152), 1, - aux_sym__expression_list, - STATE(225), 1, + STATE(136), 1, + aux_sym_list_repeat1, + STATE(223), 1, sym_expression, - STATE(460), 1, + STATE(457), 1, sym_function_expression, - STATE(470), 1, + STATE(476), 1, sym_index_expression, - ACTIONS(188), 2, + ACTIONS(451), 2, sym_float, sym_string, - ACTIONS(190), 2, + ACTIONS(454), 2, anon_sym_true, anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, + STATE(119), 2, sym_function_call, sym_yield, - STATE(100), 4, + STATE(126), 2, + sym_value, + sym_index, + STATE(125), 4, sym__expression_kind, sym_new, sym_math, sym_logic, - STATE(105), 7, - sym_type_definition, + STATE(129), 7, + sym_structure, sym_boolean, sym_list, sym_map, sym_option, sym_function, sym_built_in_value, - ACTIONS(206), 9, + ACTIONS(468), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -11170,7 +10712,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [5917] = 25, + [5411] = 24, ACTIONS(3), 1, sym__comment, ACTIONS(138), 1, @@ -11187,27 +10729,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_none, ACTIONS(158), 1, anon_sym_some, - ACTIONS(382), 1, + ACTIONS(419), 1, anon_sym_LBRACE, - ACTIONS(437), 1, + ACTIONS(471), 1, sym_identifier, - ACTIONS(449), 1, + ACTIONS(473), 1, anon_sym_RPAREN, - STATE(72), 1, - sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(285), 1, + STATE(277), 1, sym_yield, - STATE(371), 1, + STATE(366), 1, sym_expression, - STATE(378), 1, + STATE(376), 1, sym_function_call, - STATE(412), 1, + STATE(426), 1, aux_sym_function_repeat1, - STATE(472), 1, + STATE(435), 1, + sym__function_expression_kind, + STATE(471), 1, sym_function_expression, - STATE(475), 1, + STATE(488), 1, sym_index_expression, ACTIONS(150), 2, sym_float, @@ -11215,16 +10755,16 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(152), 2, anon_sym_true, anon_sym_false, - STATE(275), 2, + STATE(265), 2, sym_value, sym_index, - STATE(265), 4, + STATE(377), 4, sym__expression_kind, sym_new, sym_math, sym_logic, - STATE(268), 7, - sym_type_definition, + STATE(279), 7, + sym_structure, sym_boolean, sym_list, sym_map, @@ -11241,7 +10781,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [6013] = 24, + [5504] = 23, ACTIONS(3), 1, sym__comment, ACTIONS(176), 1, @@ -11258,23 +10798,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_none, ACTIONS(196), 1, anon_sym_some, - ACTIONS(431), 1, + ACTIONS(427), 1, sym_identifier, - ACTIONS(433), 1, + ACTIONS(431), 1, anon_sym_LBRACE, - ACTIONS(451), 1, + ACTIONS(475), 1, anon_sym_RPAREN, - STATE(72), 1, + STATE(71), 1, sym__function_expression_kind, - STATE(108), 1, - sym_structure, - STATE(150), 1, + STATE(146), 1, aux_sym__expression_list, - STATE(225), 1, + STATE(222), 1, sym_expression, - STATE(460), 1, + STATE(457), 1, sym_function_expression, - STATE(470), 1, + STATE(476), 1, sym_index_expression, ACTIONS(188), 2, sym_float, @@ -11282,19 +10820,19 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(190), 2, anon_sym_true, anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, + STATE(119), 2, sym_function_call, sym_yield, - STATE(100), 4, + STATE(126), 2, + sym_value, + sym_index, + STATE(125), 4, sym__expression_kind, sym_new, sym_math, sym_logic, - STATE(105), 7, - sym_type_definition, + STATE(129), 7, + sym_structure, sym_boolean, sym_list, sym_map, @@ -11311,7 +10849,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [6107] = 24, + [5595] = 23, ACTIONS(3), 1, sym__comment, ACTIONS(176), 1, @@ -11328,23 +10866,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_none, ACTIONS(196), 1, anon_sym_some, - ACTIONS(431), 1, + ACTIONS(427), 1, sym_identifier, - ACTIONS(433), 1, + ACTIONS(431), 1, anon_sym_LBRACE, - ACTIONS(453), 1, + ACTIONS(477), 1, anon_sym_RBRACK, - STATE(72), 1, + STATE(71), 1, sym__function_expression_kind, - STATE(108), 1, - sym_structure, - STATE(148), 1, + STATE(151), 1, aux_sym_list_repeat1, - STATE(224), 1, + STATE(223), 1, sym_expression, - STATE(460), 1, + STATE(457), 1, sym_function_expression, - STATE(470), 1, + STATE(476), 1, sym_index_expression, ACTIONS(188), 2, sym_float, @@ -11352,19 +10888,19 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(190), 2, anon_sym_true, anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, + STATE(119), 2, sym_function_call, sym_yield, - STATE(100), 4, + STATE(126), 2, + sym_value, + sym_index, + STATE(125), 4, sym__expression_kind, sym_new, sym_math, sym_logic, - STATE(105), 7, - sym_type_definition, + STATE(129), 7, + sym_structure, sym_boolean, sym_list, sym_map, @@ -11381,7 +10917,143 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [6201] = 24, + [5686] = 23, + ACTIONS(3), 1, + sym__comment, + ACTIONS(176), 1, + anon_sym_LPAREN, + ACTIONS(182), 1, + anon_sym_struct, + ACTIONS(184), 1, + anon_sym_new, + ACTIONS(186), 1, + sym_integer, + ACTIONS(192), 1, + anon_sym_LBRACK, + ACTIONS(194), 1, + anon_sym_none, + ACTIONS(196), 1, + anon_sym_some, + ACTIONS(427), 1, + sym_identifier, + ACTIONS(431), 1, + anon_sym_LBRACE, + ACTIONS(479), 1, + anon_sym_RPAREN, + STATE(71), 1, + sym__function_expression_kind, + STATE(157), 1, + aux_sym__expression_list, + STATE(222), 1, + sym_expression, + STATE(457), 1, + sym_function_expression, + STATE(476), 1, + sym_index_expression, + ACTIONS(188), 2, + sym_float, + sym_string, + ACTIONS(190), 2, + anon_sym_true, + anon_sym_false, + STATE(119), 2, + sym_function_call, + sym_yield, + STATE(126), 2, + sym_value, + sym_index, + STATE(125), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(129), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(206), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [5777] = 23, + ACTIONS(3), 1, + sym__comment, + ACTIONS(176), 1, + anon_sym_LPAREN, + ACTIONS(182), 1, + anon_sym_struct, + ACTIONS(184), 1, + anon_sym_new, + ACTIONS(186), 1, + sym_integer, + ACTIONS(192), 1, + anon_sym_LBRACK, + ACTIONS(194), 1, + anon_sym_none, + ACTIONS(196), 1, + anon_sym_some, + ACTIONS(427), 1, + sym_identifier, + ACTIONS(431), 1, + anon_sym_LBRACE, + ACTIONS(481), 1, + anon_sym_RPAREN, + STATE(71), 1, + sym__function_expression_kind, + STATE(157), 1, + aux_sym__expression_list, + STATE(222), 1, + sym_expression, + STATE(457), 1, + sym_function_expression, + STATE(476), 1, + sym_index_expression, + ACTIONS(188), 2, + sym_float, + sym_string, + ACTIONS(190), 2, + anon_sym_true, + anon_sym_false, + STATE(119), 2, + sym_function_call, + sym_yield, + STATE(126), 2, + sym_value, + sym_index, + STATE(125), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(129), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(206), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [5868] = 24, ACTIONS(3), 1, sym__comment, ACTIONS(138), 1, @@ -11398,43 +11070,110 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_none, ACTIONS(158), 1, anon_sym_some, - ACTIONS(380), 1, - sym_identifier, - ACTIONS(382), 1, + ACTIONS(419), 1, anon_sym_LBRACE, - ACTIONS(386), 1, + ACTIONS(471), 1, + sym_identifier, + ACTIONS(483), 1, + anon_sym_RPAREN, + STATE(71), 1, + sym__function_expression_kind, + STATE(277), 1, + sym_yield, + STATE(358), 1, + sym_function_call, + STATE(362), 1, + sym_expression, + STATE(422), 1, + aux_sym_function_repeat1, + STATE(464), 1, + sym_index_expression, + STATE(471), 1, + sym_function_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(265), 2, + sym_value, + sym_index, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [5961] = 23, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(417), 1, + sym_identifier, + ACTIONS(419), 1, + anon_sym_LBRACE, + ACTIONS(423), 1, anon_sym_STAR, - STATE(72), 1, + STATE(71), 1, sym__function_expression_kind, STATE(132), 1, aux_sym_match_repeat1, - STATE(279), 1, - sym_structure, - STATE(356), 1, + STATE(352), 1, sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(475), 1, + STATE(464), 1, sym_index_expression, + STATE(471), 1, + sym_function_expression, ACTIONS(150), 2, sym_float, sym_string, ACTIONS(152), 2, anon_sym_true, anon_sym_false, - STATE(275), 2, + STATE(265), 2, sym_value, sym_index, - STATE(285), 2, + STATE(277), 2, sym_function_call, sym_yield, - STATE(265), 4, + STATE(288), 4, sym__expression_kind, sym_new, sym_math, sym_logic, - STATE(268), 7, - sym_type_definition, + STATE(279), 7, + sym_structure, sym_boolean, sym_list, sym_map, @@ -11451,1281 +11190,65 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [6295] = 25, + [6052] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(437), 1, - sym_identifier, - ACTIONS(439), 1, - anon_sym_RPAREN, - STATE(279), 1, - sym_structure, - STATE(285), 1, - sym_yield, - STATE(376), 1, - sym_function_call, - STATE(377), 1, - sym_expression, - STATE(417), 1, - aux_sym_function_repeat1, - STATE(447), 1, - sym__function_expression_kind, - STATE(472), 1, - sym_function_expression, - STATE(491), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(383), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [6391] = 24, - ACTIONS(3), 1, - sym__comment, - ACTIONS(455), 1, - sym_identifier, - ACTIONS(458), 1, - anon_sym_LPAREN, - ACTIONS(461), 1, - anon_sym_LBRACE, - ACTIONS(464), 1, - anon_sym_struct, - ACTIONS(467), 1, - anon_sym_new, - ACTIONS(470), 1, - sym_integer, - ACTIONS(479), 1, - anon_sym_LBRACK, - ACTIONS(482), 1, - anon_sym_RBRACK, - ACTIONS(484), 1, - anon_sym_none, - ACTIONS(487), 1, - anon_sym_some, - STATE(72), 1, - sym__function_expression_kind, - STATE(108), 1, - sym_structure, - STATE(148), 1, - aux_sym_list_repeat1, - STATE(224), 1, - sym_expression, - STATE(460), 1, - sym_function_expression, - STATE(470), 1, - sym_index_expression, - ACTIONS(473), 2, - sym_float, - sym_string, - ACTIONS(476), 2, - anon_sym_true, - anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, - sym_function_call, - sym_yield, - STATE(100), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(105), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(490), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [6485] = 24, - ACTIONS(3), 1, - sym__comment, - ACTIONS(176), 1, - anon_sym_LPAREN, - ACTIONS(182), 1, - anon_sym_struct, - ACTIONS(184), 1, - anon_sym_new, - ACTIONS(186), 1, - sym_integer, - ACTIONS(192), 1, - anon_sym_LBRACK, - ACTIONS(194), 1, - anon_sym_none, - ACTIONS(196), 1, - anon_sym_some, - ACTIONS(431), 1, - sym_identifier, - ACTIONS(433), 1, - anon_sym_LBRACE, - ACTIONS(493), 1, - anon_sym_RBRACK, - STATE(72), 1, - sym__function_expression_kind, - STATE(108), 1, - sym_structure, - STATE(145), 1, - aux_sym_list_repeat1, - STATE(224), 1, - sym_expression, - STATE(460), 1, - sym_function_expression, - STATE(470), 1, - sym_index_expression, - ACTIONS(188), 2, - sym_float, - sym_string, - ACTIONS(190), 2, - anon_sym_true, - anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, - sym_function_call, - sym_yield, - STATE(100), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(105), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(206), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [6579] = 24, - ACTIONS(3), 1, - sym__comment, - ACTIONS(176), 1, - anon_sym_LPAREN, - ACTIONS(182), 1, - anon_sym_struct, - ACTIONS(184), 1, - anon_sym_new, - ACTIONS(186), 1, - sym_integer, - ACTIONS(192), 1, - anon_sym_LBRACK, - ACTIONS(194), 1, - anon_sym_none, - ACTIONS(196), 1, - anon_sym_some, - ACTIONS(431), 1, - sym_identifier, - ACTIONS(433), 1, - anon_sym_LBRACE, - ACTIONS(495), 1, - anon_sym_RPAREN, - STATE(72), 1, - sym__function_expression_kind, - STATE(108), 1, - sym_structure, - STATE(152), 1, - aux_sym__expression_list, - STATE(225), 1, - sym_expression, - STATE(460), 1, - sym_function_expression, - STATE(470), 1, - sym_index_expression, - ACTIONS(188), 2, - sym_float, - sym_string, - ACTIONS(190), 2, - anon_sym_true, - anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, - sym_function_call, - sym_yield, - STATE(100), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(105), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(206), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [6673] = 25, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(437), 1, - sym_identifier, - ACTIONS(497), 1, - anon_sym_RPAREN, - STATE(279), 1, - sym_structure, - STATE(285), 1, - sym_yield, - STATE(376), 1, - sym_function_call, - STATE(377), 1, - sym_expression, - STATE(426), 1, - aux_sym_function_repeat1, - STATE(446), 1, - sym__function_expression_kind, - STATE(472), 1, - sym_function_expression, - STATE(491), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(383), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [6769] = 24, - ACTIONS(3), 1, - sym__comment, - ACTIONS(499), 1, - sym_identifier, - ACTIONS(502), 1, - anon_sym_LPAREN, - ACTIONS(505), 1, - anon_sym_RPAREN, - ACTIONS(507), 1, - anon_sym_LBRACE, - ACTIONS(510), 1, - anon_sym_struct, - ACTIONS(513), 1, - anon_sym_new, - ACTIONS(516), 1, - sym_integer, - ACTIONS(525), 1, - anon_sym_LBRACK, - ACTIONS(528), 1, - anon_sym_none, - ACTIONS(531), 1, - anon_sym_some, - STATE(72), 1, - sym__function_expression_kind, - STATE(108), 1, - sym_structure, - STATE(152), 1, - aux_sym__expression_list, - STATE(225), 1, - sym_expression, - STATE(460), 1, - sym_function_expression, - STATE(470), 1, - sym_index_expression, - ACTIONS(519), 2, - sym_float, - sym_string, - ACTIONS(522), 2, - anon_sym_true, - anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, - sym_function_call, - sym_yield, - STATE(100), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(105), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(534), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [6863] = 25, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(437), 1, - sym_identifier, - ACTIONS(497), 1, - anon_sym_RPAREN, - STATE(279), 1, - sym_structure, - STATE(285), 1, - sym_yield, - STATE(376), 1, - sym_function_call, - STATE(377), 1, - sym_expression, - STATE(426), 1, - aux_sym_function_repeat1, - STATE(448), 1, - sym__function_expression_kind, - STATE(472), 1, - sym_function_expression, - STATE(491), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(383), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [6959] = 24, - ACTIONS(3), 1, - sym__comment, - ACTIONS(176), 1, - anon_sym_LPAREN, - ACTIONS(182), 1, - anon_sym_struct, - ACTIONS(184), 1, - anon_sym_new, - ACTIONS(186), 1, - sym_integer, - ACTIONS(192), 1, - anon_sym_LBRACK, - ACTIONS(194), 1, - anon_sym_none, - ACTIONS(196), 1, - anon_sym_some, - ACTIONS(431), 1, - sym_identifier, - ACTIONS(433), 1, - anon_sym_LBRACE, - ACTIONS(537), 1, - anon_sym_RBRACK, - STATE(72), 1, - sym__function_expression_kind, - STATE(108), 1, - sym_structure, - STATE(141), 1, - aux_sym_list_repeat1, - STATE(224), 1, - sym_expression, - STATE(460), 1, - sym_function_expression, - STATE(470), 1, - sym_index_expression, - ACTIONS(188), 2, - sym_float, - sym_string, - ACTIONS(190), 2, - anon_sym_true, - anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, - sym_function_call, - sym_yield, - STATE(100), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(105), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(206), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [7053] = 24, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(380), 1, - sym_identifier, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(386), 1, - anon_sym_STAR, - STATE(72), 1, - sym__function_expression_kind, - STATE(134), 1, - aux_sym_match_repeat1, - STATE(279), 1, - sym_structure, - STATE(356), 1, - sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(475), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(285), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [7147] = 25, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(437), 1, - sym_identifier, - ACTIONS(449), 1, - anon_sym_RPAREN, - STATE(279), 1, - sym_structure, - STATE(285), 1, - sym_yield, - STATE(376), 1, - sym_function_call, - STATE(377), 1, - sym_expression, - STATE(412), 1, - aux_sym_function_repeat1, - STATE(446), 1, - sym__function_expression_kind, - STATE(472), 1, - sym_function_expression, - STATE(491), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(383), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [7243] = 25, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(437), 1, - sym_identifier, - ACTIONS(449), 1, - anon_sym_RPAREN, - STATE(279), 1, - sym_structure, - STATE(285), 1, - sym_yield, - STATE(376), 1, - sym_function_call, - STATE(377), 1, - sym_expression, - STATE(412), 1, - aux_sym_function_repeat1, - STATE(446), 1, - sym__function_expression_kind, - STATE(472), 1, - sym_function_expression, - STATE(491), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(380), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [7339] = 24, - ACTIONS(3), 1, - sym__comment, - ACTIONS(176), 1, - anon_sym_LPAREN, - ACTIONS(182), 1, - anon_sym_struct, - ACTIONS(184), 1, - anon_sym_new, - ACTIONS(186), 1, - sym_integer, - ACTIONS(192), 1, - anon_sym_LBRACK, - ACTIONS(194), 1, - anon_sym_none, - ACTIONS(196), 1, - anon_sym_some, - ACTIONS(431), 1, - sym_identifier, - ACTIONS(433), 1, - anon_sym_LBRACE, - ACTIONS(539), 1, - anon_sym_RBRACK, - STATE(72), 1, - sym__function_expression_kind, - STATE(108), 1, - sym_structure, - STATE(148), 1, - aux_sym_list_repeat1, - STATE(224), 1, - sym_expression, - STATE(460), 1, - sym_function_expression, - STATE(470), 1, - sym_index_expression, - ACTIONS(188), 2, - sym_float, - sym_string, - ACTIONS(190), 2, - anon_sym_true, - anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, - sym_function_call, - sym_yield, - STATE(100), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(105), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(206), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [7433] = 24, - ACTIONS(3), 1, - sym__comment, - ACTIONS(176), 1, - anon_sym_LPAREN, - ACTIONS(182), 1, - anon_sym_struct, - ACTIONS(184), 1, - anon_sym_new, - ACTIONS(186), 1, - sym_integer, - ACTIONS(192), 1, - anon_sym_LBRACK, - ACTIONS(194), 1, - anon_sym_none, - ACTIONS(196), 1, - anon_sym_some, - ACTIONS(431), 1, - sym_identifier, - ACTIONS(433), 1, - anon_sym_LBRACE, - ACTIONS(541), 1, - anon_sym_RPAREN, - STATE(72), 1, - sym__function_expression_kind, - STATE(108), 1, - sym_structure, - STATE(142), 1, - aux_sym__expression_list, - STATE(225), 1, - sym_expression, - STATE(460), 1, - sym_function_expression, - STATE(470), 1, - sym_index_expression, - ACTIONS(188), 2, - sym_float, - sym_string, - ACTIONS(190), 2, - anon_sym_true, - anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, - sym_function_call, - sym_yield, - STATE(100), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(105), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(206), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [7527] = 25, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(437), 1, - sym_identifier, - ACTIONS(497), 1, - anon_sym_RPAREN, - STATE(72), 1, - sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(285), 1, - sym_yield, - STATE(369), 1, - sym_function_call, - STATE(371), 1, - sym_expression, - STATE(426), 1, - aux_sym_function_repeat1, - STATE(472), 1, - sym_function_expression, - STATE(475), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [7623] = 25, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(437), 1, - sym_identifier, - ACTIONS(439), 1, - anon_sym_RPAREN, - STATE(279), 1, - sym_structure, - STATE(285), 1, - sym_yield, - STATE(376), 1, - sym_function_call, - STATE(377), 1, - sym_expression, - STATE(417), 1, - aux_sym_function_repeat1, - STATE(446), 1, - sym__function_expression_kind, - STATE(472), 1, - sym_function_expression, - STATE(491), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(381), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [7719] = 24, - ACTIONS(3), 1, - sym__comment, - ACTIONS(176), 1, - anon_sym_LPAREN, - ACTIONS(182), 1, - anon_sym_struct, - ACTIONS(184), 1, - anon_sym_new, - ACTIONS(186), 1, - sym_integer, - ACTIONS(192), 1, - anon_sym_LBRACK, - ACTIONS(194), 1, - anon_sym_none, - ACTIONS(196), 1, - anon_sym_some, - ACTIONS(431), 1, - sym_identifier, - ACTIONS(433), 1, - anon_sym_LBRACE, - ACTIONS(543), 1, - anon_sym_RPAREN, - STATE(72), 1, - sym__function_expression_kind, - STATE(108), 1, - sym_structure, - STATE(152), 1, - aux_sym__expression_list, - STATE(225), 1, - sym_expression, - STATE(460), 1, - sym_function_expression, - STATE(470), 1, - sym_index_expression, - ACTIONS(188), 2, - sym_float, - sym_string, - ACTIONS(190), 2, - anon_sym_true, - anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, - sym_function_call, - sym_yield, - STATE(100), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(105), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(206), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [7813] = 24, - ACTIONS(3), 1, - sym__comment, - ACTIONS(176), 1, - anon_sym_LPAREN, - ACTIONS(182), 1, - anon_sym_struct, - ACTIONS(184), 1, - anon_sym_new, - ACTIONS(186), 1, - sym_integer, - ACTIONS(192), 1, - anon_sym_LBRACK, - ACTIONS(194), 1, - anon_sym_none, - ACTIONS(196), 1, - anon_sym_some, - ACTIONS(431), 1, - sym_identifier, - ACTIONS(433), 1, - anon_sym_LBRACE, - ACTIONS(545), 1, - anon_sym_RPAREN, - STATE(72), 1, - sym__function_expression_kind, - STATE(108), 1, - sym_structure, - STATE(152), 1, - aux_sym__expression_list, - STATE(225), 1, - sym_expression, - STATE(460), 1, - sym_function_expression, - STATE(470), 1, - sym_index_expression, - ACTIONS(188), 2, - sym_float, - sym_string, - ACTIONS(190), 2, - anon_sym_true, - anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, - sym_function_call, - sym_yield, - STATE(100), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(105), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(206), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [7907] = 24, - ACTIONS(3), 1, - sym__comment, - ACTIONS(176), 1, - anon_sym_LPAREN, - ACTIONS(182), 1, - anon_sym_struct, - ACTIONS(184), 1, - anon_sym_new, - ACTIONS(186), 1, - sym_integer, - ACTIONS(192), 1, - anon_sym_LBRACK, - ACTIONS(194), 1, - anon_sym_none, - ACTIONS(196), 1, - anon_sym_some, - ACTIONS(431), 1, - sym_identifier, - ACTIONS(433), 1, - anon_sym_LBRACE, - ACTIONS(547), 1, - anon_sym_RPAREN, - STATE(72), 1, - sym__function_expression_kind, - STATE(108), 1, - sym_structure, - STATE(152), 1, - aux_sym__expression_list, - STATE(225), 1, - sym_expression, - STATE(460), 1, - sym_function_expression, - STATE(470), 1, - sym_index_expression, - ACTIONS(188), 2, - sym_float, - sym_string, - ACTIONS(190), 2, - anon_sym_true, - anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, - sym_function_call, - sym_yield, - STATE(100), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(105), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(206), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [8001] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(549), 1, + ACTIONS(485), 1, anon_sym_DASH_GT, - STATE(202), 1, + STATE(167), 1, sym_math_operator, - STATE(204), 1, + STATE(199), 1, + sym_logic_operator, + ACTIONS(218), 20, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + ACTIONS(220), 20, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [6109] = 6, + ACTIONS(3), 1, + sym__comment, + ACTIONS(485), 1, + anon_sym_DASH_GT, + STATE(167), 1, + sym_math_operator, + STATE(199), 1, sym_logic_operator, ACTIONS(208), 20, anon_sym_SEMI, @@ -12769,218 +11292,38 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [8058] = 6, + [6166] = 23, ACTIONS(3), 1, sym__comment, - ACTIONS(549), 1, - anon_sym_DASH_GT, - STATE(202), 1, - sym_math_operator, - STATE(204), 1, - sym_logic_operator, - ACTIONS(214), 20, - anon_sym_SEMI, + ACTIONS(176), 1, anon_sym_LPAREN, + ACTIONS(182), 1, + anon_sym_struct, + ACTIONS(184), 1, + anon_sym_new, + ACTIONS(186), 1, + sym_integer, + ACTIONS(192), 1, + anon_sym_LBRACK, + ACTIONS(194), 1, + anon_sym_none, + ACTIONS(196), 1, + anon_sym_some, + ACTIONS(427), 1, + sym_identifier, + ACTIONS(431), 1, + anon_sym_LBRACE, + ACTIONS(487), 1, anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - ACTIONS(216), 20, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [8115] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(551), 1, - sym_identifier, - STATE(72), 1, + STATE(71), 1, sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(329), 1, + STATE(157), 1, + aux_sym__expression_list, + STATE(222), 1, sym_expression, - STATE(467), 1, - sym_index_expression, - STATE(472), 1, + STATE(457), 1, sym_function_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(345), 2, - sym_value, - sym_index, - STATE(346), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [8203] = 21, - ACTIONS(3), 1, - sym__comment, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(553), 1, - sym_identifier, - ACTIONS(555), 1, - anon_sym_LPAREN, - STATE(279), 1, - sym_structure, - STATE(291), 1, - sym_function_expression, - STATE(371), 1, - sym_expression, - STATE(475), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(317), 2, - sym_value, - sym_index, - STATE(284), 3, - sym__function_expression_kind, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [8289] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(176), 1, - anon_sym_LPAREN, - ACTIONS(182), 1, - anon_sym_struct, - ACTIONS(184), 1, - anon_sym_new, - ACTIONS(186), 1, - sym_integer, - ACTIONS(192), 1, - anon_sym_LBRACK, - ACTIONS(194), 1, - anon_sym_none, - ACTIONS(196), 1, - anon_sym_some, - ACTIONS(431), 1, - sym_identifier, - ACTIONS(433), 1, - anon_sym_LBRACE, - STATE(72), 1, - sym__function_expression_kind, - STATE(99), 1, - sym_expression, - STATE(108), 1, - sym_structure, - STATE(460), 1, - sym_function_expression, - STATE(470), 1, + STATE(476), 1, sym_index_expression, ACTIONS(188), 2, sym_float, @@ -12988,19 +11331,19 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(190), 2, anon_sym_true, anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, + STATE(119), 2, sym_function_call, sym_yield, - STATE(100), 4, + STATE(126), 2, + sym_value, + sym_index, + STATE(125), 4, sym__expression_kind, sym_new, sym_math, sym_logic, - STATE(105), 7, - sym_type_definition, + STATE(129), 7, + sym_structure, sym_boolean, sym_list, sym_map, @@ -13017,71 +11360,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [8377] = 20, - ACTIONS(3), 1, - sym__comment, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(555), 1, - anon_sym_LPAREN, - ACTIONS(557), 1, - sym_identifier, - STATE(279), 1, - sym_structure, - STATE(291), 1, - sym_function_expression, - STATE(361), 1, - sym_expression, - STATE(491), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(284), 5, - sym_value, - sym_index, - sym__function_expression_kind, - sym_function_call, - sym_yield, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [8461] = 22, + [6257] = 24, ACTIONS(3), 1, sym__comment, ACTIONS(138), 1, @@ -13098,1841 +11377,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_none, ACTIONS(158), 1, anon_sym_some, - ACTIONS(380), 1, - sym_identifier, - ACTIONS(382), 1, + ACTIONS(419), 1, anon_sym_LBRACE, - STATE(72), 1, - sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(358), 1, - sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(475), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(285), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [8549] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(380), 1, + ACTIONS(471), 1, sym_identifier, - ACTIONS(382), 1, - anon_sym_LBRACE, - STATE(72), 1, - sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(334), 1, - sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(475), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(285), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [8637] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(551), 1, - sym_identifier, - STATE(72), 1, - sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(351), 1, - sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(491), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(345), 2, - sym_value, - sym_index, - STATE(346), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [8725] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(551), 1, - sym_identifier, - STATE(72), 1, - sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(339), 1, - sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(491), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(345), 2, - sym_value, - sym_index, - STATE(346), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [8813] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(551), 1, - sym_identifier, - STATE(72), 1, - sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(332), 1, - sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(491), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(345), 2, - sym_value, - sym_index, - STATE(346), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [8901] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(13), 1, - anon_sym_struct, - ACTIONS(15), 1, - anon_sym_new, - ACTIONS(17), 1, - sym_integer, - ACTIONS(23), 1, - anon_sym_LBRACK, - ACTIONS(25), 1, - anon_sym_none, - ACTIONS(27), 1, - anon_sym_some, - ACTIONS(559), 1, - sym_identifier, - ACTIONS(561), 1, - anon_sym_LBRACE, - STATE(48), 1, - sym_expression, - STATE(55), 1, - sym_structure, - STATE(72), 1, - sym__function_expression_kind, - STATE(466), 1, - sym_index_expression, - STATE(484), 1, - sym_function_expression, - ACTIONS(19), 2, - sym_float, - sym_string, - ACTIONS(21), 2, - anon_sym_true, - anon_sym_false, - STATE(71), 2, - sym_function_call, - sym_yield, - STATE(80), 2, - sym_value, - sym_index, - STATE(81), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(61), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(41), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [8989] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(380), 1, - sym_identifier, - ACTIONS(382), 1, - anon_sym_LBRACE, - STATE(72), 1, - sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(335), 1, - sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(475), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(285), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [9077] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(380), 1, - sym_identifier, - ACTIONS(382), 1, - anon_sym_LBRACE, - STATE(72), 1, - sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(330), 1, - sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(475), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(285), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [9165] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(13), 1, - anon_sym_struct, - ACTIONS(15), 1, - anon_sym_new, - ACTIONS(17), 1, - sym_integer, - ACTIONS(23), 1, - anon_sym_LBRACK, - ACTIONS(25), 1, - anon_sym_none, - ACTIONS(27), 1, - anon_sym_some, - ACTIONS(559), 1, - sym_identifier, - ACTIONS(561), 1, - anon_sym_LBRACE, - STATE(49), 1, - sym_expression, - STATE(55), 1, - sym_structure, - STATE(72), 1, - sym__function_expression_kind, - STATE(466), 1, - sym_index_expression, - STATE(484), 1, - sym_function_expression, - ACTIONS(19), 2, - sym_float, - sym_string, - ACTIONS(21), 2, - anon_sym_true, - anon_sym_false, - STATE(71), 2, - sym_function_call, - sym_yield, - STATE(80), 2, - sym_value, - sym_index, - STATE(81), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(61), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(41), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [9253] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(380), 1, - sym_identifier, - ACTIONS(382), 1, - anon_sym_LBRACE, - STATE(72), 1, - sym__function_expression_kind, - STATE(263), 1, - sym_expression, - STATE(279), 1, - sym_structure, - STATE(472), 1, - sym_function_expression, - STATE(475), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(285), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [9341] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(176), 1, - anon_sym_LPAREN, - ACTIONS(182), 1, - anon_sym_struct, - ACTIONS(184), 1, - anon_sym_new, - ACTIONS(186), 1, - sym_integer, - ACTIONS(192), 1, - anon_sym_LBRACK, - ACTIONS(194), 1, - anon_sym_none, - ACTIONS(196), 1, - anon_sym_some, - ACTIONS(431), 1, - sym_identifier, - ACTIONS(433), 1, - anon_sym_LBRACE, - STATE(72), 1, - sym__function_expression_kind, - STATE(98), 1, - sym_expression, - STATE(108), 1, - sym_structure, - STATE(460), 1, - sym_function_expression, - STATE(470), 1, - sym_index_expression, - ACTIONS(188), 2, - sym_float, - sym_string, - ACTIONS(190), 2, - anon_sym_true, - anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, - sym_function_call, - sym_yield, - STATE(100), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(105), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(206), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [9429] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(551), 1, - sym_identifier, - STATE(72), 1, - sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(326), 1, - sym_expression, - STATE(467), 1, - sym_index_expression, - STATE(472), 1, - sym_function_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(345), 2, - sym_value, - sym_index, - STATE(346), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [9517] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(13), 1, - anon_sym_struct, - ACTIONS(15), 1, - anon_sym_new, - ACTIONS(17), 1, - sym_integer, - ACTIONS(23), 1, - anon_sym_LBRACK, - ACTIONS(25), 1, - anon_sym_none, - ACTIONS(27), 1, - anon_sym_some, - ACTIONS(559), 1, - sym_identifier, - ACTIONS(561), 1, - anon_sym_LBRACE, - STATE(51), 1, - sym_expression, - STATE(55), 1, - sym_structure, - STATE(72), 1, - sym__function_expression_kind, - STATE(484), 1, - sym_function_expression, - STATE(485), 1, - sym_index_expression, - ACTIONS(19), 2, - sym_float, - sym_string, - ACTIONS(21), 2, - anon_sym_true, - anon_sym_false, - STATE(71), 2, - sym_function_call, - sym_yield, - STATE(80), 2, - sym_value, - sym_index, - STATE(81), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(61), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(41), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [9605] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(176), 1, - anon_sym_LPAREN, - ACTIONS(182), 1, - anon_sym_struct, - ACTIONS(184), 1, - anon_sym_new, - ACTIONS(186), 1, - sym_integer, - ACTIONS(192), 1, - anon_sym_LBRACK, - ACTIONS(194), 1, - anon_sym_none, - ACTIONS(196), 1, - anon_sym_some, - ACTIONS(431), 1, - sym_identifier, - ACTIONS(433), 1, - anon_sym_LBRACE, - STATE(72), 1, - sym__function_expression_kind, - STATE(90), 1, - sym_expression, - STATE(108), 1, - sym_structure, - STATE(460), 1, - sym_function_expression, - STATE(481), 1, - sym_index_expression, - ACTIONS(188), 2, - sym_float, - sym_string, - ACTIONS(190), 2, - anon_sym_true, - anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, - sym_function_call, - sym_yield, - STATE(100), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(105), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(206), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [9693] = 20, - ACTIONS(3), 1, - sym__comment, - ACTIONS(13), 1, - anon_sym_struct, - ACTIONS(17), 1, - sym_integer, - ACTIONS(23), 1, - anon_sym_LBRACK, - ACTIONS(25), 1, - anon_sym_none, - ACTIONS(27), 1, - anon_sym_some, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(561), 1, - anon_sym_LBRACE, - ACTIONS(563), 1, - sym_identifier, - ACTIONS(565), 1, - anon_sym_LPAREN, - STATE(55), 1, - sym_structure, - STATE(78), 1, - sym_function_expression, - STATE(362), 1, - sym_expression, - STATE(485), 1, - sym_index_expression, - ACTIONS(19), 2, - sym_float, - sym_string, - ACTIONS(21), 2, - anon_sym_true, - anon_sym_false, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(72), 5, - sym_value, - sym_index, - sym__function_expression_kind, - sym_function_call, - sym_yield, - STATE(61), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(41), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [9777] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(13), 1, - anon_sym_struct, - ACTIONS(15), 1, - anon_sym_new, - ACTIONS(17), 1, - sym_integer, - ACTIONS(23), 1, - anon_sym_LBRACK, - ACTIONS(25), 1, - anon_sym_none, - ACTIONS(27), 1, - anon_sym_some, - ACTIONS(559), 1, - sym_identifier, - ACTIONS(561), 1, - anon_sym_LBRACE, - STATE(53), 1, - sym_expression, - STATE(55), 1, - sym_structure, - STATE(72), 1, - sym__function_expression_kind, - STATE(484), 1, - sym_function_expression, - STATE(485), 1, - sym_index_expression, - ACTIONS(19), 2, - sym_float, - sym_string, - ACTIONS(21), 2, - anon_sym_true, - anon_sym_false, - STATE(71), 2, - sym_function_call, - sym_yield, - STATE(80), 2, - sym_value, - sym_index, - STATE(81), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(61), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(41), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [9865] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(176), 1, - anon_sym_LPAREN, - ACTIONS(182), 1, - anon_sym_struct, - ACTIONS(184), 1, - anon_sym_new, - ACTIONS(186), 1, - sym_integer, - ACTIONS(192), 1, - anon_sym_LBRACK, - ACTIONS(194), 1, - anon_sym_none, - ACTIONS(196), 1, - anon_sym_some, - ACTIONS(431), 1, - sym_identifier, - ACTIONS(433), 1, - anon_sym_LBRACE, - STATE(72), 1, - sym__function_expression_kind, - STATE(95), 1, - sym_expression, - STATE(108), 1, - sym_structure, - STATE(460), 1, - sym_function_expression, - STATE(481), 1, - sym_index_expression, - ACTIONS(188), 2, - sym_float, - sym_string, - ACTIONS(190), 2, - anon_sym_true, - anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, - sym_function_call, - sym_yield, - STATE(100), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(105), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(206), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [9953] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(380), 1, - sym_identifier, - ACTIONS(382), 1, - anon_sym_LBRACE, - STATE(72), 1, - sym__function_expression_kind, - STATE(260), 1, - sym_expression, - STATE(279), 1, - sym_structure, - STATE(467), 1, - sym_index_expression, - STATE(472), 1, - sym_function_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(285), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [10041] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(551), 1, - sym_identifier, - STATE(72), 1, - sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(357), 1, - sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(491), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(345), 2, - sym_value, - sym_index, - STATE(346), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [10129] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(380), 1, - sym_identifier, - ACTIONS(382), 1, - anon_sym_LBRACE, - STATE(72), 1, - sym__function_expression_kind, - STATE(259), 1, - sym_expression, - STATE(279), 1, - sym_structure, - STATE(467), 1, - sym_index_expression, - STATE(472), 1, - sym_function_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(285), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [10217] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(232), 1, - anon_sym_COLON, - ACTIONS(374), 20, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - ACTIONS(228), 21, - anon_sym_SEMI, - anon_sym_LPAREN, + ACTIONS(489), 1, anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_DASH_GT, - [10269] = 20, - ACTIONS(3), 1, - sym__comment, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(182), 1, - anon_sym_struct, - ACTIONS(186), 1, - sym_integer, - ACTIONS(192), 1, - anon_sym_LBRACK, - ACTIONS(194), 1, - anon_sym_none, - ACTIONS(196), 1, - anon_sym_some, - ACTIONS(433), 1, - anon_sym_LBRACE, - ACTIONS(567), 1, - sym_identifier, - ACTIONS(569), 1, - anon_sym_LPAREN, - STATE(108), 1, - sym_structure, - STATE(123), 1, - sym_function_expression, - STATE(379), 1, - sym_expression, - STATE(481), 1, - sym_index_expression, - ACTIONS(188), 2, - sym_float, - sym_string, - ACTIONS(190), 2, - anon_sym_true, - anon_sym_false, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(110), 5, - sym_value, - sym_index, - sym__function_expression_kind, - sym_function_call, + STATE(277), 1, sym_yield, - STATE(105), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(206), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [10353] = 20, - ACTIONS(3), 1, - sym__comment, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(555), 1, - anon_sym_LPAREN, - ACTIONS(557), 1, - sym_identifier, - STATE(279), 1, - sym_structure, - STATE(291), 1, - sym_function_expression, - STATE(375), 1, - sym_expression, - STATE(475), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(284), 5, - sym_value, - sym_index, - sym__function_expression_kind, - sym_function_call, - sym_yield, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [10437] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(551), 1, - sym_identifier, - STATE(72), 1, - sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(350), 1, - sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(491), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(345), 2, - sym_value, - sym_index, - STATE(346), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [10525] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(380), 1, - sym_identifier, - ACTIONS(382), 1, - anon_sym_LBRACE, - STATE(72), 1, - sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(338), 1, - sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(475), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(285), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [10613] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(380), 1, - sym_identifier, - ACTIONS(382), 1, - anon_sym_LBRACE, - STATE(72), 1, - sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(337), 1, - sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(475), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(285), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [10701] = 21, - ACTIONS(3), 1, - sym__comment, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(182), 1, - anon_sym_struct, - ACTIONS(186), 1, - sym_integer, - ACTIONS(192), 1, - anon_sym_LBRACK, - ACTIONS(194), 1, - anon_sym_none, - ACTIONS(196), 1, - anon_sym_some, - ACTIONS(433), 1, - anon_sym_LBRACE, - ACTIONS(569), 1, - anon_sym_LPAREN, - ACTIONS(571), 1, - sym_identifier, - STATE(108), 1, - sym_structure, - STATE(123), 1, - sym_function_expression, - STATE(365), 1, - sym_expression, - STATE(470), 1, - sym_index_expression, - ACTIONS(188), 2, - sym_float, - sym_string, - ACTIONS(190), 2, - anon_sym_true, - anon_sym_false, - STATE(191), 2, - sym_value, - sym_index, - STATE(110), 3, - sym__function_expression_kind, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(105), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(206), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [10787] = 21, - ACTIONS(3), 1, - sym__comment, - ACTIONS(13), 1, - anon_sym_struct, - ACTIONS(17), 1, - sym_integer, - ACTIONS(23), 1, - anon_sym_LBRACK, - ACTIONS(25), 1, - anon_sym_none, - ACTIONS(27), 1, - anon_sym_some, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(561), 1, - anon_sym_LBRACE, - ACTIONS(565), 1, - anon_sym_LPAREN, - ACTIONS(573), 1, - sym_identifier, - STATE(55), 1, - sym_structure, - STATE(78), 1, - sym_function_expression, STATE(366), 1, sym_expression, - STATE(485), 1, - sym_index_expression, - ACTIONS(19), 2, - sym_float, - sym_string, - ACTIONS(21), 2, - anon_sym_true, - anon_sym_false, - STATE(97), 2, - sym_value, - sym_index, - STATE(72), 3, - sym__function_expression_kind, + STATE(376), 1, sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(61), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(41), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [10873] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(551), 1, - sym_identifier, - STATE(72), 1, + STATE(423), 1, + aux_sym_function_repeat1, + STATE(435), 1, sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(336), 1, - sym_expression, - STATE(472), 1, + STATE(471), 1, sym_function_expression, - STATE(491), 1, + STATE(488), 1, sym_index_expression, ACTIONS(150), 2, sym_float, @@ -14940,19 +11403,16 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(152), 2, anon_sym_true, anon_sym_false, - STATE(345), 2, + STATE(265), 2, sym_value, sym_index, - STATE(346), 2, - sym_function_call, - sym_yield, - STATE(265), 4, + STATE(380), 4, sym__expression_kind, sym_new, sym_math, sym_logic, - STATE(268), 7, - sym_type_definition, + STATE(279), 7, + sym_structure, sym_boolean, sym_list, sym_map, @@ -14969,139 +11429,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [10961] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(13), 1, - anon_sym_struct, - ACTIONS(15), 1, - anon_sym_new, - ACTIONS(17), 1, - sym_integer, - ACTIONS(23), 1, - anon_sym_LBRACK, - ACTIONS(25), 1, - anon_sym_none, - ACTIONS(27), 1, - anon_sym_some, - ACTIONS(559), 1, - sym_identifier, - ACTIONS(561), 1, - anon_sym_LBRACE, - STATE(52), 1, - sym_expression, - STATE(55), 1, - sym_structure, - STATE(72), 1, - sym__function_expression_kind, - STATE(484), 1, - sym_function_expression, - STATE(485), 1, - sym_index_expression, - ACTIONS(19), 2, - sym_float, - sym_string, - ACTIONS(21), 2, - anon_sym_true, - anon_sym_false, - STATE(71), 2, - sym_function_call, - sym_yield, - STATE(80), 2, - sym_value, - sym_index, - STATE(81), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(61), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(41), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [11049] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(13), 1, - anon_sym_struct, - ACTIONS(15), 1, - anon_sym_new, - ACTIONS(17), 1, - sym_integer, - ACTIONS(23), 1, - anon_sym_LBRACK, - ACTIONS(25), 1, - anon_sym_none, - ACTIONS(27), 1, - anon_sym_some, - ACTIONS(559), 1, - sym_identifier, - ACTIONS(561), 1, - anon_sym_LBRACE, - STATE(55), 1, - sym_structure, - STATE(72), 1, - sym__function_expression_kind, - STATE(91), 1, - sym_expression, - STATE(484), 1, - sym_function_expression, - STATE(485), 1, - sym_index_expression, - ACTIONS(19), 2, - sym_float, - sym_string, - ACTIONS(21), 2, - anon_sym_true, - anon_sym_false, - STATE(71), 2, - sym_function_call, - sym_yield, - STATE(80), 2, - sym_value, - sym_index, - STATE(81), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(61), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(41), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [11137] = 22, + [6350] = 23, ACTIONS(3), 1, sym__comment, ACTIONS(176), 1, @@ -15118,19 +11446,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_none, ACTIONS(196), 1, anon_sym_some, - ACTIONS(431), 1, + ACTIONS(427), 1, sym_identifier, - ACTIONS(433), 1, + ACTIONS(431), 1, anon_sym_LBRACE, - STATE(72), 1, + ACTIONS(491), 1, + anon_sym_RPAREN, + STATE(71), 1, sym__function_expression_kind, - STATE(108), 1, - sym_structure, - STATE(165), 1, + STATE(141), 1, + aux_sym__expression_list, + STATE(222), 1, sym_expression, - STATE(460), 1, + STATE(457), 1, sym_function_expression, - STATE(470), 1, + STATE(476), 1, sym_index_expression, ACTIONS(188), 2, sym_float, @@ -15138,19 +11468,19 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(190), 2, anon_sym_true, anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, + STATE(119), 2, sym_function_call, sym_yield, - STATE(100), 4, + STATE(126), 2, + sym_value, + sym_index, + STATE(125), 4, sym__expression_kind, sym_new, sym_math, sym_logic, - STATE(105), 7, - sym_type_definition, + STATE(129), 7, + sym_structure, sym_boolean, sym_list, sym_map, @@ -15167,73 +11497,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [11225] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(380), 1, - sym_identifier, - ACTIONS(382), 1, - anon_sym_LBRACE, - STATE(72), 1, - sym__function_expression_kind, - STATE(267), 1, - sym_expression, - STATE(279), 1, - sym_structure, - STATE(472), 1, - sym_function_expression, - STATE(475), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(285), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [11313] = 22, + [6441] = 23, ACTIONS(3), 1, sym__comment, ACTIONS(176), 1, @@ -15250,19 +11514,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_none, ACTIONS(196), 1, anon_sym_some, - ACTIONS(431), 1, + ACTIONS(427), 1, sym_identifier, - ACTIONS(433), 1, + ACTIONS(431), 1, anon_sym_LBRACE, - STATE(72), 1, + ACTIONS(493), 1, + anon_sym_RBRACK, + STATE(71), 1, sym__function_expression_kind, - STATE(108), 1, - sym_structure, - STATE(166), 1, + STATE(136), 1, + aux_sym_list_repeat1, + STATE(223), 1, sym_expression, - STATE(460), 1, + STATE(457), 1, sym_function_expression, - STATE(470), 1, + STATE(476), 1, sym_index_expression, ACTIONS(188), 2, sym_float, @@ -15270,19 +11536,19 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(190), 2, anon_sym_true, anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, + STATE(119), 2, sym_function_call, sym_yield, - STATE(100), 4, + STATE(126), 2, + sym_value, + sym_index, + STATE(125), 4, sym__expression_kind, sym_new, sym_math, sym_logic, - STATE(105), 7, - sym_type_definition, + STATE(129), 7, + sym_structure, sym_boolean, sym_list, sym_map, @@ -15299,7 +11565,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [11401] = 22, + [6532] = 24, ACTIONS(3), 1, sym__comment, ACTIONS(138), 1, @@ -15316,19 +11582,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_none, ACTIONS(158), 1, anon_sym_some, - ACTIONS(380), 1, - sym_identifier, - ACTIONS(382), 1, + ACTIONS(419), 1, anon_sym_LBRACE, - STATE(72), 1, - sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(342), 1, + ACTIONS(471), 1, + sym_identifier, + ACTIONS(473), 1, + anon_sym_RPAREN, + STATE(277), 1, + sym_yield, + STATE(366), 1, sym_expression, - STATE(472), 1, + STATE(376), 1, + sym_function_call, + STATE(426), 1, + aux_sym_function_repeat1, + STATE(435), 1, + sym__function_expression_kind, + STATE(471), 1, sym_function_expression, - STATE(475), 1, + STATE(488), 1, sym_index_expression, ACTIONS(150), 2, sym_float, @@ -15336,19 +11608,16 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(152), 2, anon_sym_true, anon_sym_false, - STATE(275), 2, + STATE(265), 2, sym_value, sym_index, - STATE(285), 2, - sym_function_call, - sym_yield, - STATE(265), 4, + STATE(380), 4, sym__expression_kind, sym_new, sym_math, sym_logic, - STATE(268), 7, - sym_type_definition, + STATE(279), 7, + sym_structure, sym_boolean, sym_list, sym_map, @@ -15365,7 +11634,143 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [11489] = 22, + [6625] = 23, + ACTIONS(3), 1, + sym__comment, + ACTIONS(176), 1, + anon_sym_LPAREN, + ACTIONS(182), 1, + anon_sym_struct, + ACTIONS(184), 1, + anon_sym_new, + ACTIONS(186), 1, + sym_integer, + ACTIONS(192), 1, + anon_sym_LBRACK, + ACTIONS(194), 1, + anon_sym_none, + ACTIONS(196), 1, + anon_sym_some, + ACTIONS(427), 1, + sym_identifier, + ACTIONS(431), 1, + anon_sym_LBRACE, + ACTIONS(495), 1, + anon_sym_RBRACK, + STATE(71), 1, + sym__function_expression_kind, + STATE(136), 1, + aux_sym_list_repeat1, + STATE(223), 1, + sym_expression, + STATE(457), 1, + sym_function_expression, + STATE(476), 1, + sym_index_expression, + ACTIONS(188), 2, + sym_float, + sym_string, + ACTIONS(190), 2, + anon_sym_true, + anon_sym_false, + STATE(119), 2, + sym_function_call, + sym_yield, + STATE(126), 2, + sym_value, + sym_index, + STATE(125), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(129), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(206), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [6716] = 23, + ACTIONS(3), 1, + sym__comment, + ACTIONS(176), 1, + anon_sym_LPAREN, + ACTIONS(182), 1, + anon_sym_struct, + ACTIONS(184), 1, + anon_sym_new, + ACTIONS(186), 1, + sym_integer, + ACTIONS(192), 1, + anon_sym_LBRACK, + ACTIONS(194), 1, + anon_sym_none, + ACTIONS(196), 1, + anon_sym_some, + ACTIONS(427), 1, + sym_identifier, + ACTIONS(431), 1, + anon_sym_LBRACE, + ACTIONS(497), 1, + anon_sym_RBRACK, + STATE(71), 1, + sym__function_expression_kind, + STATE(149), 1, + aux_sym_list_repeat1, + STATE(223), 1, + sym_expression, + STATE(457), 1, + sym_function_expression, + STATE(476), 1, + sym_index_expression, + ACTIONS(188), 2, + sym_float, + sym_string, + ACTIONS(190), 2, + anon_sym_true, + anon_sym_false, + STATE(119), 2, + sym_function_call, + sym_yield, + STATE(126), 2, + sym_value, + sym_index, + STATE(125), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(129), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(206), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [6807] = 23, ACTIONS(3), 1, sym__comment, ACTIONS(138), 1, @@ -15382,302 +11787,41 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_none, ACTIONS(158), 1, anon_sym_some, - ACTIONS(380), 1, + ACTIONS(417), 1, sym_identifier, - ACTIONS(382), 1, + ACTIONS(419), 1, anon_sym_LBRACE, - STATE(72), 1, + ACTIONS(423), 1, + anon_sym_STAR, + STATE(71), 1, sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(331), 1, - sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(475), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(285), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [11577] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(380), 1, - sym_identifier, - ACTIONS(382), 1, - anon_sym_LBRACE, - STATE(72), 1, - sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(322), 1, - sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(475), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(285), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [11665] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(380), 1, - sym_identifier, - ACTIONS(382), 1, - anon_sym_LBRACE, - STATE(72), 1, - sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(319), 1, - sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(475), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(285), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [11753] = 21, - ACTIONS(3), 1, - sym__comment, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(553), 1, - sym_identifier, - ACTIONS(555), 1, - anon_sym_LPAREN, - STATE(279), 1, - sym_structure, - STATE(291), 1, - sym_function_expression, - STATE(373), 1, - sym_expression, - STATE(491), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(317), 2, - sym_value, - sym_index, - STATE(284), 3, - sym__function_expression_kind, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [11839] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(551), 1, - sym_identifier, - STATE(72), 1, - sym__function_expression_kind, - STATE(279), 1, - sym_structure, + STATE(133), 1, + aux_sym_match_repeat1, STATE(352), 1, sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(491), 1, + STATE(464), 1, sym_index_expression, + STATE(471), 1, + sym_function_expression, ACTIONS(150), 2, sym_float, sym_string, ACTIONS(152), 2, anon_sym_true, anon_sym_false, - STATE(345), 2, + STATE(265), 2, sym_value, sym_index, - STATE(346), 2, + STATE(277), 2, sym_function_call, sym_yield, - STATE(265), 4, + STATE(288), 4, sym__expression_kind, sym_new, sym_math, sym_logic, - STATE(268), 7, - sym_type_definition, + STATE(279), 7, + sym_structure, sym_boolean, sym_list, sym_map, @@ -15694,7 +11838,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [11927] = 22, + [6898] = 24, ACTIONS(3), 1, sym__comment, ACTIONS(138), 1, @@ -15711,39 +11855,42 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_none, ACTIONS(158), 1, anon_sym_some, - ACTIONS(382), 1, + ACTIONS(419), 1, anon_sym_LBRACE, - ACTIONS(551), 1, + ACTIONS(471), 1, sym_identifier, - STATE(72), 1, + ACTIONS(473), 1, + anon_sym_RPAREN, + STATE(71), 1, sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(354), 1, + STATE(277), 1, + sym_yield, + STATE(362), 1, sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(491), 1, + STATE(365), 1, + sym_function_call, + STATE(426), 1, + aux_sym_function_repeat1, + STATE(464), 1, sym_index_expression, + STATE(471), 1, + sym_function_expression, ACTIONS(150), 2, sym_float, sym_string, ACTIONS(152), 2, anon_sym_true, anon_sym_false, - STATE(345), 2, + STATE(265), 2, sym_value, sym_index, - STATE(346), 2, - sym_function_call, - sym_yield, - STATE(265), 4, + STATE(288), 4, sym__expression_kind, sym_new, sym_math, sym_logic, - STATE(268), 7, - sym_type_definition, + STATE(279), 7, + sym_structure, sym_boolean, sym_list, sym_map, @@ -15760,61 +11907,65 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12015] = 20, + [6991] = 23, ACTIONS(3), 1, sym__comment, - ACTIONS(13), 1, - anon_sym_struct, - ACTIONS(17), 1, - sym_integer, - ACTIONS(23), 1, - anon_sym_LBRACK, - ACTIONS(25), 1, - anon_sym_none, - ACTIONS(27), 1, - anon_sym_some, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(561), 1, - anon_sym_LBRACE, - ACTIONS(563), 1, - sym_identifier, - ACTIONS(565), 1, + ACTIONS(176), 1, anon_sym_LPAREN, - STATE(55), 1, - sym_structure, - STATE(78), 1, - sym_function_expression, - STATE(367), 1, + ACTIONS(182), 1, + anon_sym_struct, + ACTIONS(184), 1, + anon_sym_new, + ACTIONS(186), 1, + sym_integer, + ACTIONS(192), 1, + anon_sym_LBRACK, + ACTIONS(194), 1, + anon_sym_none, + ACTIONS(196), 1, + anon_sym_some, + ACTIONS(427), 1, + sym_identifier, + ACTIONS(431), 1, + anon_sym_LBRACE, + ACTIONS(499), 1, + anon_sym_RPAREN, + STATE(71), 1, + sym__function_expression_kind, + STATE(157), 1, + aux_sym__expression_list, + STATE(222), 1, sym_expression, - STATE(466), 1, + STATE(457), 1, + sym_function_expression, + STATE(476), 1, sym_index_expression, - ACTIONS(19), 2, + ACTIONS(188), 2, sym_float, sym_string, - ACTIONS(21), 2, + ACTIONS(190), 2, anon_sym_true, anon_sym_false, - STATE(265), 4, + STATE(119), 2, + sym_function_call, + sym_yield, + STATE(126), 2, + sym_value, + sym_index, + STATE(125), 4, sym__expression_kind, sym_new, sym_math, sym_logic, - STATE(72), 5, - sym_value, - sym_index, - sym__function_expression_kind, - sym_function_call, - sym_yield, - STATE(61), 7, - sym_type_definition, + STATE(129), 7, + sym_structure, sym_boolean, sym_list, sym_map, sym_option, sym_function, sym_built_in_value, - ACTIONS(41), 9, + ACTIONS(206), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -15824,7 +11975,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12099] = 22, + [7082] = 24, ACTIONS(3), 1, sym__comment, ACTIONS(138), 1, @@ -15841,19 +11992,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_none, ACTIONS(158), 1, anon_sym_some, - ACTIONS(380), 1, - sym_identifier, - ACTIONS(382), 1, + ACTIONS(419), 1, anon_sym_LBRACE, - STATE(72), 1, - sym__function_expression_kind, - STATE(264), 1, + ACTIONS(471), 1, + sym_identifier, + ACTIONS(483), 1, + anon_sym_RPAREN, + STATE(277), 1, + sym_yield, + STATE(366), 1, sym_expression, - STATE(279), 1, - sym_structure, - STATE(472), 1, + STATE(376), 1, + sym_function_call, + STATE(422), 1, + aux_sym_function_repeat1, + STATE(435), 1, + sym__function_expression_kind, + STATE(471), 1, sym_function_expression, - STATE(475), 1, + STATE(488), 1, sym_index_expression, ACTIONS(150), 2, sym_float, @@ -15861,19 +12018,16 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(152), 2, anon_sym_true, anon_sym_false, - STATE(275), 2, + STATE(265), 2, sym_value, sym_index, - STATE(285), 2, - sym_function_call, - sym_yield, - STATE(265), 4, + STATE(378), 4, sym__expression_kind, sym_new, sym_math, sym_logic, - STATE(268), 7, - sym_type_definition, + STATE(279), 7, + sym_structure, sym_boolean, sym_list, sym_map, @@ -15890,63 +12044,65 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12187] = 22, + [7175] = 23, ACTIONS(3), 1, sym__comment, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(13), 1, - anon_sym_struct, - ACTIONS(15), 1, - anon_sym_new, - ACTIONS(17), 1, - sym_integer, - ACTIONS(23), 1, - anon_sym_LBRACK, - ACTIONS(25), 1, - anon_sym_none, - ACTIONS(27), 1, - anon_sym_some, - ACTIONS(559), 1, + ACTIONS(501), 1, sym_identifier, - ACTIONS(561), 1, + ACTIONS(504), 1, + anon_sym_LPAREN, + ACTIONS(507), 1, + anon_sym_RPAREN, + ACTIONS(509), 1, anon_sym_LBRACE, - STATE(55), 1, - sym_structure, - STATE(72), 1, + ACTIONS(512), 1, + anon_sym_struct, + ACTIONS(515), 1, + anon_sym_new, + ACTIONS(518), 1, + sym_integer, + ACTIONS(527), 1, + anon_sym_LBRACK, + ACTIONS(530), 1, + anon_sym_none, + ACTIONS(533), 1, + anon_sym_some, + STATE(71), 1, sym__function_expression_kind, - STATE(92), 1, + STATE(157), 1, + aux_sym__expression_list, + STATE(222), 1, sym_expression, - STATE(484), 1, + STATE(457), 1, sym_function_expression, - STATE(485), 1, + STATE(476), 1, sym_index_expression, - ACTIONS(19), 2, + ACTIONS(521), 2, sym_float, sym_string, - ACTIONS(21), 2, + ACTIONS(524), 2, anon_sym_true, anon_sym_false, - STATE(71), 2, + STATE(119), 2, sym_function_call, sym_yield, - STATE(80), 2, + STATE(126), 2, sym_value, sym_index, - STATE(81), 4, + STATE(125), 4, sym__expression_kind, sym_new, sym_math, sym_logic, - STATE(61), 7, - sym_type_definition, + STATE(129), 7, + sym_structure, sym_boolean, sym_list, sym_map, sym_option, sym_function, sym_built_in_value, - ACTIONS(41), 9, + ACTIONS(536), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -15956,7 +12112,854 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12275] = 20, + [7266] = 24, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(419), 1, + anon_sym_LBRACE, + ACTIONS(471), 1, + sym_identifier, + ACTIONS(489), 1, + anon_sym_RPAREN, + STATE(71), 1, + sym__function_expression_kind, + STATE(277), 1, + sym_yield, + STATE(362), 1, + sym_expression, + STATE(368), 1, + sym_function_call, + STATE(423), 1, + aux_sym_function_repeat1, + STATE(464), 1, + sym_index_expression, + STATE(471), 1, + sym_function_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(265), 2, + sym_value, + sym_index, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [7359] = 24, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(419), 1, + anon_sym_LBRACE, + ACTIONS(471), 1, + sym_identifier, + ACTIONS(489), 1, + anon_sym_RPAREN, + STATE(277), 1, + sym_yield, + STATE(366), 1, + sym_expression, + STATE(376), 1, + sym_function_call, + STATE(423), 1, + aux_sym_function_repeat1, + STATE(438), 1, + sym__function_expression_kind, + STATE(471), 1, + sym_function_expression, + STATE(488), 1, + sym_index_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(265), 2, + sym_value, + sym_index, + STATE(380), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [7452] = 23, + ACTIONS(3), 1, + sym__comment, + ACTIONS(176), 1, + anon_sym_LPAREN, + ACTIONS(182), 1, + anon_sym_struct, + ACTIONS(184), 1, + anon_sym_new, + ACTIONS(186), 1, + sym_integer, + ACTIONS(192), 1, + anon_sym_LBRACK, + ACTIONS(194), 1, + anon_sym_none, + ACTIONS(196), 1, + anon_sym_some, + ACTIONS(427), 1, + sym_identifier, + ACTIONS(431), 1, + anon_sym_LBRACE, + ACTIONS(539), 1, + anon_sym_RBRACK, + STATE(71), 1, + sym__function_expression_kind, + STATE(161), 1, + aux_sym_list_repeat1, + STATE(223), 1, + sym_expression, + STATE(457), 1, + sym_function_expression, + STATE(476), 1, + sym_index_expression, + ACTIONS(188), 2, + sym_float, + sym_string, + ACTIONS(190), 2, + anon_sym_true, + anon_sym_false, + STATE(119), 2, + sym_function_call, + sym_yield, + STATE(126), 2, + sym_value, + sym_index, + STATE(125), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(129), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(206), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [7543] = 23, + ACTIONS(3), 1, + sym__comment, + ACTIONS(176), 1, + anon_sym_LPAREN, + ACTIONS(182), 1, + anon_sym_struct, + ACTIONS(184), 1, + anon_sym_new, + ACTIONS(186), 1, + sym_integer, + ACTIONS(192), 1, + anon_sym_LBRACK, + ACTIONS(194), 1, + anon_sym_none, + ACTIONS(196), 1, + anon_sym_some, + ACTIONS(427), 1, + sym_identifier, + ACTIONS(431), 1, + anon_sym_LBRACE, + ACTIONS(541), 1, + anon_sym_RBRACK, + STATE(71), 1, + sym__function_expression_kind, + STATE(136), 1, + aux_sym_list_repeat1, + STATE(223), 1, + sym_expression, + STATE(457), 1, + sym_function_expression, + STATE(476), 1, + sym_index_expression, + ACTIONS(188), 2, + sym_float, + sym_string, + ACTIONS(190), 2, + anon_sym_true, + anon_sym_false, + STATE(119), 2, + sym_function_call, + sym_yield, + STATE(126), 2, + sym_value, + sym_index, + STATE(125), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(129), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(206), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [7634] = 24, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(419), 1, + anon_sym_LBRACE, + ACTIONS(471), 1, + sym_identifier, + ACTIONS(483), 1, + anon_sym_RPAREN, + STATE(277), 1, + sym_yield, + STATE(366), 1, + sym_expression, + STATE(376), 1, + sym_function_call, + STATE(422), 1, + aux_sym_function_repeat1, + STATE(442), 1, + sym__function_expression_kind, + STATE(471), 1, + sym_function_expression, + STATE(488), 1, + sym_index_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(265), 2, + sym_value, + sym_index, + STATE(380), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [7727] = 23, + ACTIONS(3), 1, + sym__comment, + ACTIONS(176), 1, + anon_sym_LPAREN, + ACTIONS(182), 1, + anon_sym_struct, + ACTIONS(184), 1, + anon_sym_new, + ACTIONS(186), 1, + sym_integer, + ACTIONS(192), 1, + anon_sym_LBRACK, + ACTIONS(194), 1, + anon_sym_none, + ACTIONS(196), 1, + anon_sym_some, + ACTIONS(427), 1, + sym_identifier, + ACTIONS(431), 1, + anon_sym_LBRACE, + ACTIONS(543), 1, + anon_sym_RPAREN, + STATE(71), 1, + sym__function_expression_kind, + STATE(155), 1, + aux_sym__expression_list, + STATE(222), 1, + sym_expression, + STATE(457), 1, + sym_function_expression, + STATE(476), 1, + sym_index_expression, + ACTIONS(188), 2, + sym_float, + sym_string, + ACTIONS(190), 2, + anon_sym_true, + anon_sym_false, + STATE(119), 2, + sym_function_call, + sym_yield, + STATE(126), 2, + sym_value, + sym_index, + STATE(125), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(129), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(206), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [7818] = 23, + ACTIONS(3), 1, + sym__comment, + ACTIONS(176), 1, + anon_sym_LPAREN, + ACTIONS(182), 1, + anon_sym_struct, + ACTIONS(184), 1, + anon_sym_new, + ACTIONS(186), 1, + sym_integer, + ACTIONS(192), 1, + anon_sym_LBRACK, + ACTIONS(194), 1, + anon_sym_none, + ACTIONS(196), 1, + anon_sym_some, + ACTIONS(427), 1, + sym_identifier, + ACTIONS(431), 1, + anon_sym_LBRACE, + ACTIONS(545), 1, + anon_sym_RPAREN, + STATE(71), 1, + sym__function_expression_kind, + STATE(157), 1, + aux_sym__expression_list, + STATE(222), 1, + sym_expression, + STATE(457), 1, + sym_function_expression, + STATE(476), 1, + sym_index_expression, + ACTIONS(188), 2, + sym_float, + sym_string, + ACTIONS(190), 2, + anon_sym_true, + anon_sym_false, + STATE(119), 2, + sym_function_call, + sym_yield, + STATE(126), 2, + sym_value, + sym_index, + STATE(125), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(129), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(206), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [7909] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(230), 1, + anon_sym_COLON, + ACTIONS(372), 20, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + ACTIONS(226), 21, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_DASH_GT, + [7961] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(419), 1, + anon_sym_LBRACE, + ACTIONS(547), 1, + sym_identifier, + STATE(71), 1, + sym__function_expression_kind, + STATE(347), 1, + sym_expression, + STATE(471), 1, + sym_function_expression, + STATE(488), 1, + sym_index_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(343), 2, + sym_function_call, + sym_yield, + STATE(344), 2, + sym_value, + sym_index, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [8046] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(176), 1, + anon_sym_LPAREN, + ACTIONS(182), 1, + anon_sym_struct, + ACTIONS(184), 1, + anon_sym_new, + ACTIONS(186), 1, + sym_integer, + ACTIONS(192), 1, + anon_sym_LBRACK, + ACTIONS(194), 1, + anon_sym_none, + ACTIONS(196), 1, + anon_sym_some, + ACTIONS(427), 1, + sym_identifier, + ACTIONS(431), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(144), 1, + sym_expression, + STATE(457), 1, + sym_function_expression, + STATE(476), 1, + sym_index_expression, + ACTIONS(188), 2, + sym_float, + sym_string, + ACTIONS(190), 2, + anon_sym_true, + anon_sym_false, + STATE(119), 2, + sym_function_call, + sym_yield, + STATE(126), 2, + sym_value, + sym_index, + STATE(125), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(129), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(206), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [8131] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(417), 1, + sym_identifier, + ACTIONS(419), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(336), 1, + sym_expression, + STATE(464), 1, + sym_index_expression, + STATE(471), 1, + sym_function_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(265), 2, + sym_value, + sym_index, + STATE(277), 2, + sym_function_call, + sym_yield, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [8216] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(419), 1, + anon_sym_LBRACE, + ACTIONS(547), 1, + sym_identifier, + STATE(71), 1, + sym__function_expression_kind, + STATE(355), 1, + sym_expression, + STATE(471), 1, + sym_function_expression, + STATE(488), 1, + sym_index_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(343), 2, + sym_function_call, + sym_yield, + STATE(344), 2, + sym_value, + sym_index, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [8301] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(417), 1, + sym_identifier, + ACTIONS(419), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(346), 1, + sym_expression, + STATE(464), 1, + sym_index_expression, + STATE(471), 1, + sym_function_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(265), 2, + sym_value, + sym_index, + STATE(277), 2, + sym_function_call, + sym_yield, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [8386] = 19, ACTIONS(3), 1, sym__comment, ACTIONS(146), 1, @@ -15971,19 +12974,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_none, ACTIONS(196), 1, anon_sym_some, - ACTIONS(433), 1, + ACTIONS(431), 1, anon_sym_LBRACE, - ACTIONS(567), 1, + ACTIONS(549), 1, sym_identifier, - ACTIONS(569), 1, + ACTIONS(551), 1, anon_sym_LPAREN, - STATE(108), 1, - sym_structure, - STATE(123), 1, + STATE(106), 1, sym_function_expression, STATE(372), 1, sym_expression, - STATE(470), 1, + STATE(476), 1, sym_index_expression, ACTIONS(188), 2, sym_float, @@ -15991,19 +12992,19 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(190), 2, anon_sym_true, anon_sym_false, - STATE(265), 4, + STATE(288), 4, sym__expression_kind, sym_new, sym_math, sym_logic, - STATE(110), 5, + STATE(121), 5, sym_value, sym_index, sym__function_expression_kind, sym_function_call, sym_yield, - STATE(105), 7, - sym_type_definition, + STATE(129), 7, + sym_structure, sym_boolean, sym_list, sym_map, @@ -16020,71 +13021,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12359] = 20, - ACTIONS(3), 1, - sym__comment, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(555), 1, - anon_sym_LPAREN, - ACTIONS(557), 1, - sym_identifier, - STATE(279), 1, - sym_structure, - STATE(291), 1, - sym_function_expression, - STATE(370), 1, - sym_expression, - STATE(467), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(284), 5, - sym_value, - sym_index, - sym__function_expression_kind, - sym_function_call, - sym_yield, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [12443] = 22, + [8467] = 21, ACTIONS(3), 1, sym__comment, ACTIONS(138), 1, @@ -16101,105 +13038,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_none, ACTIONS(158), 1, anon_sym_some, - ACTIONS(380), 1, + ACTIONS(417), 1, sym_identifier, - ACTIONS(382), 1, + ACTIONS(419), 1, anon_sym_LBRACE, - STATE(72), 1, + STATE(71), 1, sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(340), 1, - sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(475), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(275), 2, - sym_value, - sym_index, - STATE(285), 2, - sym_function_call, - sym_yield, - STATE(265), 4, - sym__expression_kind, - sym_new, - sym_math, - sym_logic, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [12531] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(138), 1, - anon_sym_LPAREN, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(146), 1, - anon_sym_new, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(380), 1, - sym_identifier, - ACTIONS(382), 1, - anon_sym_LBRACE, - STATE(72), 1, - sym__function_expression_kind, - STATE(279), 1, - sym_structure, STATE(333), 1, sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(475), 1, + STATE(464), 1, sym_index_expression, + STATE(471), 1, + sym_function_expression, ACTIONS(150), 2, sym_float, sym_string, ACTIONS(152), 2, anon_sym_true, anon_sym_false, - STATE(275), 2, + STATE(265), 2, sym_value, sym_index, - STATE(285), 2, + STATE(277), 2, sym_function_call, sym_yield, - STATE(265), 4, + STATE(288), 4, sym__expression_kind, sym_new, sym_math, sym_logic, - STATE(268), 7, - sym_type_definition, + STATE(279), 7, + sym_structure, sym_boolean, sym_list, sym_map, @@ -16216,7 +13085,133 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12619] = 22, + [8552] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(419), 1, + anon_sym_LBRACE, + ACTIONS(553), 1, + sym_identifier, + ACTIONS(555), 1, + anon_sym_LPAREN, + STATE(289), 1, + sym_function_expression, + STATE(375), 1, + sym_expression, + STATE(488), 1, + sym_index_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(269), 5, + sym_value, + sym_index, + sym__function_expression_kind, + sym_function_call, + sym_yield, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [8633] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(7), 1, + anon_sym_LPAREN, + ACTIONS(13), 1, + anon_sym_struct, + ACTIONS(15), 1, + anon_sym_new, + ACTIONS(17), 1, + sym_integer, + ACTIONS(23), 1, + anon_sym_LBRACK, + ACTIONS(25), 1, + anon_sym_none, + ACTIONS(27), 1, + anon_sym_some, + ACTIONS(557), 1, + sym_identifier, + ACTIONS(559), 1, + anon_sym_LBRACE, + STATE(50), 1, + sym_expression, + STATE(71), 1, + sym__function_expression_kind, + STATE(452), 1, + sym_index_expression, + STATE(481), 1, + sym_function_expression, + ACTIONS(19), 2, + sym_float, + sym_string, + ACTIONS(21), 2, + anon_sym_true, + anon_sym_false, + STATE(69), 2, + sym_function_call, + sym_yield, + STATE(87), 2, + sym_value, + sym_index, + STATE(63), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(81), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(41), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [8718] = 21, ACTIONS(3), 1, sym__comment, ACTIONS(138), 1, @@ -16233,39 +13228,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_none, ACTIONS(158), 1, anon_sym_some, - ACTIONS(380), 1, + ACTIONS(417), 1, sym_identifier, - ACTIONS(382), 1, + ACTIONS(419), 1, anon_sym_LBRACE, - STATE(72), 1, + STATE(71), 1, sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(349), 1, + STATE(331), 1, sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(475), 1, + STATE(464), 1, sym_index_expression, + STATE(471), 1, + sym_function_expression, ACTIONS(150), 2, sym_float, sym_string, ACTIONS(152), 2, anon_sym_true, anon_sym_false, - STATE(275), 2, + STATE(265), 2, sym_value, sym_index, - STATE(285), 2, + STATE(277), 2, sym_function_call, sym_yield, - STATE(265), 4, + STATE(288), 4, sym__expression_kind, sym_new, sym_math, sym_logic, - STATE(268), 7, - sym_type_definition, + STATE(279), 7, + sym_structure, sym_boolean, sym_list, sym_map, @@ -16282,7 +13275,387 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12707] = 22, + [8803] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(7), 1, + anon_sym_LPAREN, + ACTIONS(13), 1, + anon_sym_struct, + ACTIONS(15), 1, + anon_sym_new, + ACTIONS(17), 1, + sym_integer, + ACTIONS(23), 1, + anon_sym_LBRACK, + ACTIONS(25), 1, + anon_sym_none, + ACTIONS(27), 1, + anon_sym_some, + ACTIONS(557), 1, + sym_identifier, + ACTIONS(559), 1, + anon_sym_LBRACE, + STATE(48), 1, + sym_expression, + STATE(71), 1, + sym__function_expression_kind, + STATE(452), 1, + sym_index_expression, + STATE(481), 1, + sym_function_expression, + ACTIONS(19), 2, + sym_float, + sym_string, + ACTIONS(21), 2, + anon_sym_true, + anon_sym_false, + STATE(69), 2, + sym_function_call, + sym_yield, + STATE(87), 2, + sym_value, + sym_index, + STATE(63), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(81), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(41), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [8888] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(419), 1, + anon_sym_LBRACE, + ACTIONS(547), 1, + sym_identifier, + STATE(71), 1, + sym__function_expression_kind, + STATE(326), 1, + sym_expression, + STATE(460), 1, + sym_index_expression, + STATE(471), 1, + sym_function_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(343), 2, + sym_function_call, + sym_yield, + STATE(344), 2, + sym_value, + sym_index, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [8973] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(419), 1, + anon_sym_LBRACE, + ACTIONS(547), 1, + sym_identifier, + STATE(71), 1, + sym__function_expression_kind, + STATE(325), 1, + sym_expression, + STATE(460), 1, + sym_index_expression, + STATE(471), 1, + sym_function_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(343), 2, + sym_function_call, + sym_yield, + STATE(344), 2, + sym_value, + sym_index, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [9058] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(419), 1, + anon_sym_LBRACE, + ACTIONS(553), 1, + sym_identifier, + ACTIONS(555), 1, + anon_sym_LPAREN, + STATE(289), 1, + sym_function_expression, + STATE(369), 1, + sym_expression, + STATE(460), 1, + sym_index_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(269), 5, + sym_value, + sym_index, + sym__function_expression_kind, + sym_function_call, + sym_yield, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [9139] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(13), 1, + anon_sym_struct, + ACTIONS(17), 1, + sym_integer, + ACTIONS(23), 1, + anon_sym_LBRACK, + ACTIONS(25), 1, + anon_sym_none, + ACTIONS(27), 1, + anon_sym_some, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(559), 1, + anon_sym_LBRACE, + ACTIONS(561), 1, + sym_identifier, + ACTIONS(563), 1, + anon_sym_LPAREN, + STATE(66), 1, + sym_function_expression, + STATE(367), 1, + sym_expression, + STATE(452), 1, + sym_index_expression, + ACTIONS(19), 2, + sym_float, + sym_string, + ACTIONS(21), 2, + anon_sym_true, + anon_sym_false, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(71), 5, + sym_value, + sym_index, + sym__function_expression_kind, + sym_function_call, + sym_yield, + STATE(81), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(41), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [9220] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(7), 1, + anon_sym_LPAREN, + ACTIONS(13), 1, + anon_sym_struct, + ACTIONS(15), 1, + anon_sym_new, + ACTIONS(17), 1, + sym_integer, + ACTIONS(23), 1, + anon_sym_LBRACK, + ACTIONS(25), 1, + anon_sym_none, + ACTIONS(27), 1, + anon_sym_some, + ACTIONS(557), 1, + sym_identifier, + ACTIONS(559), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(94), 1, + sym_expression, + STATE(481), 1, + sym_function_expression, + STATE(482), 1, + sym_index_expression, + ACTIONS(19), 2, + sym_float, + sym_string, + ACTIONS(21), 2, + anon_sym_true, + anon_sym_false, + STATE(69), 2, + sym_function_call, + sym_yield, + STATE(87), 2, + sym_value, + sym_index, + STATE(63), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(81), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(41), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [9305] = 21, ACTIONS(3), 1, sym__comment, ACTIONS(176), 1, @@ -16299,19 +13672,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_none, ACTIONS(196), 1, anon_sym_some, - ACTIONS(431), 1, + ACTIONS(427), 1, sym_identifier, - ACTIONS(433), 1, + ACTIONS(431), 1, anon_sym_LBRACE, - STATE(72), 1, + STATE(71), 1, sym__function_expression_kind, - STATE(96), 1, + STATE(90), 1, sym_expression, - STATE(108), 1, - sym_structure, - STATE(460), 1, + STATE(457), 1, sym_function_expression, - STATE(470), 1, + STATE(485), 1, sym_index_expression, ACTIONS(188), 2, sym_float, @@ -16319,19 +13690,19 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(190), 2, anon_sym_true, anon_sym_false, - STATE(107), 2, - sym_value, - sym_index, - STATE(111), 2, + STATE(119), 2, sym_function_call, sym_yield, - STATE(100), 4, + STATE(126), 2, + sym_value, + sym_index, + STATE(125), 4, sym__expression_kind, sym_new, sym_math, sym_logic, - STATE(105), 7, - sym_type_definition, + STATE(129), 7, + sym_structure, sym_boolean, sym_list, sym_map, @@ -16348,7 +13719,71 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12795] = 22, + [9390] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(176), 1, + anon_sym_LPAREN, + ACTIONS(182), 1, + anon_sym_struct, + ACTIONS(184), 1, + anon_sym_new, + ACTIONS(186), 1, + sym_integer, + ACTIONS(192), 1, + anon_sym_LBRACK, + ACTIONS(194), 1, + anon_sym_none, + ACTIONS(196), 1, + anon_sym_some, + ACTIONS(427), 1, + sym_identifier, + ACTIONS(431), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(91), 1, + sym_expression, + STATE(457), 1, + sym_function_expression, + STATE(485), 1, + sym_index_expression, + ACTIONS(188), 2, + sym_float, + sym_string, + ACTIONS(190), 2, + anon_sym_true, + anon_sym_false, + STATE(119), 2, + sym_function_call, + sym_yield, + STATE(126), 2, + sym_value, + sym_index, + STATE(125), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(129), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(206), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [9475] = 21, ACTIONS(3), 1, sym__comment, ACTIONS(138), 1, @@ -16365,39 +13800,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_none, ACTIONS(158), 1, anon_sym_some, - ACTIONS(380), 1, + ACTIONS(417), 1, sym_identifier, - ACTIONS(382), 1, + ACTIONS(419), 1, anon_sym_LBRACE, - STATE(72), 1, + STATE(71), 1, sym__function_expression_kind, - STATE(279), 1, - sym_structure, - STATE(341), 1, + STATE(339), 1, sym_expression, - STATE(472), 1, - sym_function_expression, - STATE(475), 1, + STATE(464), 1, sym_index_expression, + STATE(471), 1, + sym_function_expression, ACTIONS(150), 2, sym_float, sym_string, ACTIONS(152), 2, anon_sym_true, anon_sym_false, - STATE(275), 2, + STATE(265), 2, sym_value, sym_index, - STATE(285), 2, + STATE(277), 2, sym_function_call, sym_yield, - STATE(265), 4, + STATE(288), 4, sym__expression_kind, sym_new, sym_math, sym_logic, - STATE(268), 7, - sym_type_definition, + STATE(279), 7, + sym_structure, sym_boolean, sym_list, sym_map, @@ -16414,32 +13847,731 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12883] = 10, + [9560] = 21, ACTIONS(3), 1, sym__comment, - ACTIONS(364), 1, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(417), 1, + sym_identifier, + ACTIONS(419), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(255), 1, + sym_expression, + STATE(460), 1, + sym_index_expression, + STATE(471), 1, + sym_function_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(265), 2, + sym_value, + sym_index, + STATE(277), 2, + sym_function_call, + sym_yield, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [9645] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(417), 1, + sym_identifier, + ACTIONS(419), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(256), 1, + sym_expression, + STATE(460), 1, + sym_index_expression, + STATE(471), 1, + sym_function_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(265), 2, + sym_value, + sym_index, + STATE(277), 2, + sym_function_call, + sym_yield, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [9730] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(417), 1, + sym_identifier, + ACTIONS(419), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(263), 1, + sym_expression, + STATE(464), 1, + sym_index_expression, + STATE(471), 1, + sym_function_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(265), 2, + sym_value, + sym_index, + STATE(277), 2, + sym_function_call, + sym_yield, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [9815] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(13), 1, + anon_sym_struct, + ACTIONS(17), 1, + sym_integer, + ACTIONS(23), 1, + anon_sym_LBRACK, + ACTIONS(25), 1, + anon_sym_none, + ACTIONS(27), 1, + anon_sym_some, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(559), 1, + anon_sym_LBRACE, + ACTIONS(561), 1, + sym_identifier, + ACTIONS(563), 1, + anon_sym_LPAREN, + STATE(66), 1, + sym_function_expression, + STATE(359), 1, + sym_expression, + STATE(482), 1, + sym_index_expression, + ACTIONS(19), 2, + sym_float, + sym_string, + ACTIONS(21), 2, + anon_sym_true, + anon_sym_false, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(71), 5, + sym_value, + sym_index, + sym__function_expression_kind, + sym_function_call, + sym_yield, + STATE(81), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(41), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [9896] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(419), 1, + anon_sym_LBRACE, + ACTIONS(553), 1, + sym_identifier, + ACTIONS(555), 1, + anon_sym_LPAREN, + STATE(289), 1, + sym_function_expression, + STATE(373), 1, + sym_expression, + STATE(464), 1, + sym_index_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(269), 5, + sym_value, + sym_index, + sym__function_expression_kind, + sym_function_call, + sym_yield, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [9977] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(417), 1, + sym_identifier, + ACTIONS(419), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(262), 1, + sym_expression, + STATE(464), 1, + sym_index_expression, + STATE(471), 1, + sym_function_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(265), 2, + sym_value, + sym_index, + STATE(277), 2, + sym_function_call, + sym_yield, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [10062] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(7), 1, + anon_sym_LPAREN, + ACTIONS(13), 1, + anon_sym_struct, + ACTIONS(15), 1, + anon_sym_new, + ACTIONS(17), 1, + sym_integer, + ACTIONS(23), 1, + anon_sym_LBRACK, + ACTIONS(25), 1, + anon_sym_none, + ACTIONS(27), 1, + anon_sym_some, + ACTIONS(557), 1, + sym_identifier, + ACTIONS(559), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(93), 1, + sym_expression, + STATE(481), 1, + sym_function_expression, + STATE(482), 1, + sym_index_expression, + ACTIONS(19), 2, + sym_float, + sym_string, + ACTIONS(21), 2, + anon_sym_true, + anon_sym_false, + STATE(69), 2, + sym_function_call, + sym_yield, + STATE(87), 2, + sym_value, + sym_index, + STATE(63), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(81), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(41), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [10147] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(7), 1, + anon_sym_LPAREN, + ACTIONS(13), 1, + anon_sym_struct, + ACTIONS(15), 1, + anon_sym_new, + ACTIONS(17), 1, + sym_integer, + ACTIONS(23), 1, + anon_sym_LBRACK, + ACTIONS(25), 1, + anon_sym_none, + ACTIONS(27), 1, + anon_sym_some, + ACTIONS(557), 1, + sym_identifier, + ACTIONS(559), 1, + anon_sym_LBRACE, + STATE(53), 1, + sym_expression, + STATE(71), 1, + sym__function_expression_kind, + STATE(481), 1, + sym_function_expression, + STATE(482), 1, + sym_index_expression, + ACTIONS(19), 2, + sym_float, + sym_string, + ACTIONS(21), 2, + anon_sym_true, + anon_sym_false, + STATE(69), 2, + sym_function_call, + sym_yield, + STATE(87), 2, + sym_value, + sym_index, + STATE(63), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(81), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(41), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [10232] = 20, + ACTIONS(3), 1, + sym__comment, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(182), 1, + anon_sym_struct, + ACTIONS(186), 1, + sym_integer, + ACTIONS(192), 1, + anon_sym_LBRACK, + ACTIONS(194), 1, + anon_sym_none, + ACTIONS(196), 1, + anon_sym_some, + ACTIONS(431), 1, + anon_sym_LBRACE, + ACTIONS(551), 1, + anon_sym_LPAREN, + ACTIONS(565), 1, + sym_identifier, + STATE(106), 1, + sym_function_expression, + STATE(363), 1, + sym_expression, + STATE(476), 1, + sym_index_expression, + ACTIONS(188), 2, + sym_float, + sym_string, + ACTIONS(190), 2, + anon_sym_true, + anon_sym_false, + STATE(165), 2, + sym_value, + sym_index, + STATE(121), 3, + sym__function_expression_kind, + sym_function_call, + sym_yield, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(129), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(206), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [10315] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(176), 1, + anon_sym_LPAREN, + ACTIONS(182), 1, + anon_sym_struct, + ACTIONS(184), 1, + anon_sym_new, + ACTIONS(186), 1, + sym_integer, + ACTIONS(192), 1, + anon_sym_LBRACK, + ACTIONS(194), 1, + anon_sym_none, + ACTIONS(196), 1, + anon_sym_some, + ACTIONS(427), 1, + sym_identifier, + ACTIONS(431), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(98), 1, + sym_expression, + STATE(457), 1, + sym_function_expression, + STATE(476), 1, + sym_index_expression, + ACTIONS(188), 2, + sym_float, + sym_string, + ACTIONS(190), 2, + anon_sym_true, + anon_sym_false, + STATE(119), 2, + sym_function_call, + sym_yield, + STATE(126), 2, + sym_value, + sym_index, + STATE(125), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(129), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(206), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [10400] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(7), 1, + anon_sym_LPAREN, + ACTIONS(13), 1, + anon_sym_struct, + ACTIONS(15), 1, + anon_sym_new, + ACTIONS(17), 1, + sym_integer, + ACTIONS(23), 1, + anon_sym_LBRACK, + ACTIONS(25), 1, + anon_sym_none, + ACTIONS(27), 1, + anon_sym_some, + ACTIONS(557), 1, + sym_identifier, + ACTIONS(559), 1, + anon_sym_LBRACE, + STATE(52), 1, + sym_expression, + STATE(71), 1, + sym__function_expression_kind, + STATE(481), 1, + sym_function_expression, + STATE(482), 1, + sym_index_expression, + ACTIONS(19), 2, + sym_float, + sym_string, + ACTIONS(21), 2, + anon_sym_true, + anon_sym_false, + STATE(69), 2, + sym_function_call, + sym_yield, + STATE(87), 2, + sym_value, + sym_index, + STATE(63), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(81), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(41), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [10485] = 10, + ACTIONS(3), 1, + sym__comment, + ACTIONS(358), 1, anon_sym_DASH, - ACTIONS(549), 1, + ACTIONS(485), 1, anon_sym_DASH_GT, - STATE(202), 1, + STATE(167), 1, sym_math_operator, - STATE(204), 1, + STATE(199), 1, sym_logic_operator, - ACTIONS(368), 2, + ACTIONS(362), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(362), 3, + ACTIONS(356), 3, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, + ACTIONS(360), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - ACTIONS(356), 9, + ACTIONS(352), 9, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_COMMA, @@ -16449,7 +14581,7 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_STAR, - ACTIONS(358), 17, + ACTIONS(354), 17, sym_identifier, anon_sym_struct, anon_sym_new, @@ -16467,34 +14599,289 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12946] = 11, + [10548] = 21, ACTIONS(3), 1, sym__comment, - ACTIONS(364), 1, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(419), 1, + anon_sym_LBRACE, + ACTIONS(547), 1, + sym_identifier, + STATE(71), 1, + sym__function_expression_kind, + STATE(329), 1, + sym_expression, + STATE(471), 1, + sym_function_expression, + STATE(488), 1, + sym_index_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(343), 2, + sym_function_call, + sym_yield, + STATE(344), 2, + sym_value, + sym_index, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [10633] = 20, + ACTIONS(3), 1, + sym__comment, + ACTIONS(13), 1, + anon_sym_struct, + ACTIONS(17), 1, + sym_integer, + ACTIONS(23), 1, + anon_sym_LBRACK, + ACTIONS(25), 1, + anon_sym_none, + ACTIONS(27), 1, + anon_sym_some, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(559), 1, + anon_sym_LBRACE, + ACTIONS(563), 1, + anon_sym_LPAREN, + ACTIONS(567), 1, + sym_identifier, + STATE(66), 1, + sym_function_expression, + STATE(364), 1, + sym_expression, + STATE(482), 1, + sym_index_expression, + ACTIONS(19), 2, + sym_float, + sym_string, + ACTIONS(21), 2, + anon_sym_true, + anon_sym_false, + STATE(96), 2, + sym_value, + sym_index, + STATE(71), 3, + sym__function_expression_kind, + sym_function_call, + sym_yield, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(81), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(41), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [10716] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(176), 1, + anon_sym_LPAREN, + ACTIONS(182), 1, + anon_sym_struct, + ACTIONS(184), 1, + anon_sym_new, + ACTIONS(186), 1, + sym_integer, + ACTIONS(192), 1, + anon_sym_LBRACK, + ACTIONS(194), 1, + anon_sym_none, + ACTIONS(196), 1, + anon_sym_some, + ACTIONS(427), 1, + sym_identifier, + ACTIONS(431), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(145), 1, + sym_expression, + STATE(457), 1, + sym_function_expression, + STATE(476), 1, + sym_index_expression, + ACTIONS(188), 2, + sym_float, + sym_string, + ACTIONS(190), 2, + anon_sym_true, + anon_sym_false, + STATE(119), 2, + sym_function_call, + sym_yield, + STATE(126), 2, + sym_value, + sym_index, + STATE(125), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(129), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(206), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [10801] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(417), 1, + sym_identifier, + ACTIONS(419), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(327), 1, + sym_expression, + STATE(464), 1, + sym_index_expression, + STATE(471), 1, + sym_function_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(265), 2, + sym_value, + sym_index, + STATE(277), 2, + sym_function_call, + sym_yield, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [10886] = 11, + ACTIONS(3), 1, + sym__comment, + ACTIONS(358), 1, anon_sym_DASH, - ACTIONS(549), 1, + ACTIONS(485), 1, anon_sym_DASH_GT, - ACTIONS(575), 1, + ACTIONS(569), 1, anon_sym_SEMI, - STATE(202), 1, + STATE(167), 1, sym_math_operator, - STATE(204), 1, + STATE(199), 1, sym_logic_operator, - ACTIONS(368), 2, + ACTIONS(362), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(362), 3, + ACTIONS(356), 3, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, + ACTIONS(360), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - ACTIONS(356), 8, + ACTIONS(352), 8, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_LBRACE, @@ -16503,7 +14890,7 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_STAR, - ACTIONS(358), 17, + ACTIONS(354), 17, sym_identifier, anon_sym_struct, anon_sym_new, @@ -16521,50 +14908,61 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [13011] = 11, + [10951] = 21, ACTIONS(3), 1, sym__comment, - ACTIONS(364), 1, - anon_sym_DASH, - ACTIONS(549), 1, - anon_sym_DASH_GT, - ACTIONS(581), 1, - anon_sym_COMMA, - STATE(202), 1, - sym_math_operator, - STATE(204), 1, - sym_logic_operator, - ACTIONS(368), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(362), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(366), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - ACTIONS(579), 6, + ACTIONS(176), 1, anon_sym_LPAREN, + ACTIONS(182), 1, + anon_sym_struct, + ACTIONS(184), 1, + anon_sym_new, + ACTIONS(186), 1, + sym_integer, + ACTIONS(192), 1, + anon_sym_LBRACK, + ACTIONS(194), 1, + anon_sym_none, + ACTIONS(196), 1, + anon_sym_some, + ACTIONS(427), 1, + sym_identifier, + ACTIONS(431), 1, anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(95), 1, + sym_expression, + STATE(457), 1, + sym_function_expression, + STATE(476), 1, + sym_index_expression, + ACTIONS(188), 2, sym_float, sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - ACTIONS(577), 17, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, + ACTIONS(190), 2, anon_sym_true, anon_sym_false, - anon_sym_none, - anon_sym_some, + STATE(119), 2, + sym_function_call, + sym_yield, + STATE(126), 2, + sym_value, + sym_index, + STATE(125), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(129), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(206), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -16574,42 +14972,1254 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [13075] = 11, + [11036] = 21, ACTIONS(3), 1, sym__comment, - ACTIONS(364), 1, - anon_sym_DASH, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(419), 1, + anon_sym_LBRACE, + ACTIONS(547), 1, + sym_identifier, + STATE(71), 1, + sym__function_expression_kind, + STATE(330), 1, + sym_expression, + STATE(471), 1, + sym_function_expression, + STATE(488), 1, + sym_index_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(343), 2, + sym_function_call, + sym_yield, + STATE(344), 2, + sym_value, + sym_index, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [11121] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(417), 1, + sym_identifier, + ACTIONS(419), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(273), 1, + sym_expression, + STATE(464), 1, + sym_index_expression, + STATE(471), 1, + sym_function_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(265), 2, + sym_value, + sym_index, + STATE(277), 2, + sym_function_call, + sym_yield, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [11206] = 20, + ACTIONS(3), 1, + sym__comment, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(419), 1, + anon_sym_LBRACE, + ACTIONS(555), 1, + anon_sym_LPAREN, + ACTIONS(571), 1, + sym_identifier, + STATE(289), 1, + sym_function_expression, + STATE(362), 1, + sym_expression, + STATE(464), 1, + sym_index_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(315), 2, + sym_value, + sym_index, + STATE(269), 3, + sym__function_expression_kind, + sym_function_call, + sym_yield, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [11289] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(417), 1, + sym_identifier, + ACTIONS(419), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(317), 1, + sym_expression, + STATE(464), 1, + sym_index_expression, + STATE(471), 1, + sym_function_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(265), 2, + sym_value, + sym_index, + STATE(277), 2, + sym_function_call, + sym_yield, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [11374] = 20, + ACTIONS(3), 1, + sym__comment, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(419), 1, + anon_sym_LBRACE, + ACTIONS(555), 1, + anon_sym_LPAREN, + ACTIONS(571), 1, + sym_identifier, + STATE(289), 1, + sym_function_expression, + STATE(370), 1, + sym_expression, + STATE(488), 1, + sym_index_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(315), 2, + sym_value, + sym_index, + STATE(269), 3, + sym__function_expression_kind, + sym_function_call, + sym_yield, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [11457] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(419), 1, + anon_sym_LBRACE, + ACTIONS(547), 1, + sym_identifier, + STATE(71), 1, + sym__function_expression_kind, + STATE(357), 1, + sym_expression, + STATE(471), 1, + sym_function_expression, + STATE(488), 1, + sym_index_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(343), 2, + sym_function_call, + sym_yield, + STATE(344), 2, + sym_value, + sym_index, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [11542] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(419), 1, + anon_sym_LBRACE, + ACTIONS(547), 1, + sym_identifier, + STATE(71), 1, + sym__function_expression_kind, + STATE(349), 1, + sym_expression, + STATE(471), 1, + sym_function_expression, + STATE(488), 1, + sym_index_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(343), 2, + sym_function_call, + sym_yield, + STATE(344), 2, + sym_value, + sym_index, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [11627] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(417), 1, + sym_identifier, + ACTIONS(419), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(338), 1, + sym_expression, + STATE(464), 1, + sym_index_expression, + STATE(471), 1, + sym_function_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(265), 2, + sym_value, + sym_index, + STATE(277), 2, + sym_function_call, + sym_yield, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [11712] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(419), 1, + anon_sym_LBRACE, + ACTIONS(547), 1, + sym_identifier, + STATE(71), 1, + sym__function_expression_kind, + STATE(332), 1, + sym_expression, + STATE(471), 1, + sym_function_expression, + STATE(488), 1, + sym_index_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(343), 2, + sym_function_call, + sym_yield, + STATE(344), 2, + sym_value, + sym_index, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [11797] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(417), 1, + sym_identifier, + ACTIONS(419), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(316), 1, + sym_expression, + STATE(464), 1, + sym_index_expression, + STATE(471), 1, + sym_function_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(265), 2, + sym_value, + sym_index, + STATE(277), 2, + sym_function_call, + sym_yield, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [11882] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(417), 1, + sym_identifier, + ACTIONS(419), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(337), 1, + sym_expression, + STATE(464), 1, + sym_index_expression, + STATE(471), 1, + sym_function_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(265), 2, + sym_value, + sym_index, + STATE(277), 2, + sym_function_call, + sym_yield, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [11967] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(7), 1, + anon_sym_LPAREN, + ACTIONS(13), 1, + anon_sym_struct, + ACTIONS(15), 1, + anon_sym_new, + ACTIONS(17), 1, + sym_integer, + ACTIONS(23), 1, + anon_sym_LBRACK, + ACTIONS(25), 1, + anon_sym_none, + ACTIONS(27), 1, + anon_sym_some, + ACTIONS(557), 1, + sym_identifier, + ACTIONS(559), 1, + anon_sym_LBRACE, + STATE(54), 1, + sym_expression, + STATE(71), 1, + sym__function_expression_kind, + STATE(481), 1, + sym_function_expression, + STATE(482), 1, + sym_index_expression, + ACTIONS(19), 2, + sym_float, + sym_string, + ACTIONS(21), 2, + anon_sym_true, + anon_sym_false, + STATE(69), 2, + sym_function_call, + sym_yield, + STATE(87), 2, + sym_value, + sym_index, + STATE(63), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(81), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(41), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [12052] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(176), 1, + anon_sym_LPAREN, + ACTIONS(182), 1, + anon_sym_struct, + ACTIONS(184), 1, + anon_sym_new, + ACTIONS(186), 1, + sym_integer, + ACTIONS(192), 1, + anon_sym_LBRACK, + ACTIONS(194), 1, + anon_sym_none, + ACTIONS(196), 1, + anon_sym_some, + ACTIONS(427), 1, + sym_identifier, + ACTIONS(431), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(97), 1, + sym_expression, + STATE(457), 1, + sym_function_expression, + STATE(476), 1, + sym_index_expression, + ACTIONS(188), 2, + sym_float, + sym_string, + ACTIONS(190), 2, + anon_sym_true, + anon_sym_false, + STATE(119), 2, + sym_function_call, + sym_yield, + STATE(126), 2, + sym_value, + sym_index, + STATE(125), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(129), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(206), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [12137] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(417), 1, + sym_identifier, + ACTIONS(419), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(348), 1, + sym_expression, + STATE(464), 1, + sym_index_expression, + STATE(471), 1, + sym_function_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(265), 2, + sym_value, + sym_index, + STATE(277), 2, + sym_function_call, + sym_yield, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [12222] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(419), 1, + anon_sym_LBRACE, + ACTIONS(547), 1, + sym_identifier, + STATE(71), 1, + sym__function_expression_kind, + STATE(354), 1, + sym_expression, + STATE(471), 1, + sym_function_expression, + STATE(488), 1, + sym_index_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(343), 2, + sym_function_call, + sym_yield, + STATE(344), 2, + sym_value, + sym_index, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [12307] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(417), 1, + sym_identifier, + ACTIONS(419), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(328), 1, + sym_expression, + STATE(464), 1, + sym_index_expression, + STATE(471), 1, + sym_function_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(265), 2, + sym_value, + sym_index, + STATE(277), 2, + sym_function_call, + sym_yield, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [12392] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(417), 1, + sym_identifier, + ACTIONS(419), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(334), 1, + sym_expression, + STATE(464), 1, + sym_index_expression, + STATE(471), 1, + sym_function_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(265), 2, + sym_value, + sym_index, + STATE(277), 2, + sym_function_call, + sym_yield, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [12477] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(138), 1, + anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(417), 1, + sym_identifier, + ACTIONS(419), 1, + anon_sym_LBRACE, + STATE(71), 1, + sym__function_expression_kind, + STATE(335), 1, + sym_expression, + STATE(464), 1, + sym_index_expression, + STATE(471), 1, + sym_function_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(265), 2, + sym_value, + sym_index, + STATE(277), 2, + sym_function_call, + sym_yield, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [12562] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(146), 1, + anon_sym_new, + ACTIONS(182), 1, + anon_sym_struct, + ACTIONS(186), 1, + sym_integer, + ACTIONS(192), 1, + anon_sym_LBRACK, + ACTIONS(194), 1, + anon_sym_none, + ACTIONS(196), 1, + anon_sym_some, + ACTIONS(431), 1, + anon_sym_LBRACE, ACTIONS(549), 1, + sym_identifier, + ACTIONS(551), 1, + anon_sym_LPAREN, + STATE(106), 1, + sym_function_expression, + STATE(374), 1, + sym_expression, + STATE(485), 1, + sym_index_expression, + ACTIONS(188), 2, + sym_float, + sym_string, + ACTIONS(190), 2, + anon_sym_true, + anon_sym_false, + STATE(288), 4, + sym__expression_kind, + sym_new, + sym_math, + sym_logic, + STATE(121), 5, + sym_value, + sym_index, + sym__function_expression_kind, + sym_function_call, + sym_yield, + STATE(129), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(206), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [12643] = 11, + ACTIONS(3), 1, + sym__comment, + ACTIONS(358), 1, + anon_sym_DASH, + ACTIONS(485), 1, anon_sym_DASH_GT, - ACTIONS(587), 1, + ACTIONS(577), 1, anon_sym_COMMA, - STATE(202), 1, + STATE(167), 1, sym_math_operator, - STATE(204), 1, + STATE(199), 1, sym_logic_operator, - ACTIONS(368), 2, + ACTIONS(362), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(362), 4, + ACTIONS(356), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, + ACTIONS(360), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - ACTIONS(585), 6, + ACTIONS(575), 6, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, sym_float, sym_string, anon_sym_LBRACK, - ACTIONS(583), 17, + ACTIONS(573), 17, sym_identifier, anon_sym_struct, anon_sym_new, @@ -16627,19 +16237,72 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [13139] = 7, + [12707] = 11, ACTIONS(3), 1, sym__comment, - ACTIONS(593), 1, + ACTIONS(358), 1, + anon_sym_DASH, + ACTIONS(485), 1, + anon_sym_DASH_GT, + ACTIONS(583), 1, + anon_sym_COMMA, + STATE(167), 1, + sym_math_operator, + STATE(199), 1, + sym_logic_operator, + ACTIONS(362), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(356), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(360), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + ACTIONS(581), 6, + anon_sym_LPAREN, + anon_sym_LBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + ACTIONS(579), 17, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [12771] = 7, + ACTIONS(3), 1, + sym__comment, + ACTIONS(589), 1, anon_sym_elseif, - ACTIONS(595), 1, + ACTIONS(591), 1, anon_sym_else, - STATE(234), 1, + STATE(236), 1, sym_else, - STATE(228), 2, + STATE(225), 2, sym_else_if, aux_sym_if_else_repeat1, - ACTIONS(589), 9, + ACTIONS(585), 9, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -16649,7 +16312,7 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_asyncfor, - ACTIONS(591), 23, + ACTIONS(587), 23, anon_sym_async, sym_identifier, anon_sym_struct, @@ -16673,18 +16336,60 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [13192] = 7, + [12824] = 7, ACTIONS(3), 1, sym__comment, - ACTIONS(593), 1, + ACTIONS(589), 1, anon_sym_elseif, - ACTIONS(595), 1, + ACTIONS(591), 1, anon_sym_else, - STATE(245), 1, + STATE(241), 1, sym_else, STATE(226), 2, sym_else_if, aux_sym_if_else_repeat1, + ACTIONS(593), 9, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_asyncfor, + ACTIONS(595), 23, + anon_sym_async, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_return, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [12877] = 5, + ACTIONS(3), 1, + sym__comment, + ACTIONS(601), 1, + anon_sym_elseif, + STATE(226), 2, + sym_else_if, + aux_sym_if_else_repeat1, ACTIONS(597), 9, ts_builtin_sym_end, anon_sym_SEMI, @@ -16695,49 +16400,7 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_asyncfor, - ACTIONS(599), 23, - anon_sym_async, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_if, - anon_sym_match, - anon_sym_while, - anon_sym_for, - anon_sym_return, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [13245] = 5, - ACTIONS(3), 1, - sym__comment, - ACTIONS(605), 1, - anon_sym_elseif, - STATE(228), 2, - sym_else_if, - aux_sym_if_else_repeat1, - ACTIONS(601), 9, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_asyncfor, - ACTIONS(603), 24, + ACTIONS(599), 24, anon_sym_async, sym_identifier, anon_sym_struct, @@ -16762,46 +16425,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [13293] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(344), 10, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_elseif, - anon_sym_asyncfor, - ACTIONS(346), 24, - anon_sym_async, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_if, - anon_sym_else, - anon_sym_match, - anon_sym_while, - anon_sym_for, - anon_sym_return, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [13335] = 3, + [12925] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(336), 10, @@ -16840,7 +16464,46 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [13377] = 3, + [12967] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(604), 10, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_elseif, + anon_sym_asyncfor, + ACTIONS(606), 24, + anon_sym_async, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_if, + anon_sym_else, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_return, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [13009] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(608), 10, @@ -16879,10 +16542,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [13419] = 3, + [13051] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(288), 10, + ACTIONS(286), 10, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -16893,7 +16556,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, anon_sym_elseif, anon_sym_asyncfor, - ACTIONS(290), 24, + ACTIONS(288), 24, anon_sym_async, sym_identifier, anon_sym_struct, @@ -16918,10 +16581,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [13461] = 3, + [13093] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(612), 10, + ACTIONS(258), 10, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -16932,7 +16595,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, anon_sym_elseif, anon_sym_asyncfor, - ACTIONS(614), 24, + ACTIONS(260), 24, anon_sym_async, sym_identifier, anon_sym_struct, @@ -16957,7 +16620,81 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [13503] = 3, + [13135] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(352), 9, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_asyncfor, + ACTIONS(354), 23, + anon_sym_async, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_return, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [13175] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(612), 9, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_asyncfor, + ACTIONS(614), 23, + anon_sym_async, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_return, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [13215] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(616), 9, @@ -16994,47 +16731,34 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [13543] = 16, + [13255] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(182), 1, - anon_sym_struct, - ACTIONS(186), 1, - sym_integer, - ACTIONS(192), 1, - anon_sym_LBRACK, - ACTIONS(194), 1, - anon_sym_none, - ACTIONS(196), 1, - anon_sym_some, - ACTIONS(433), 1, - anon_sym_LBRACE, - ACTIONS(620), 1, - sym_identifier, - ACTIONS(622), 1, + ACTIONS(620), 9, + ts_builtin_sym_end, + anon_sym_SEMI, anon_sym_LPAREN, - STATE(106), 1, - sym_index_expression, - STATE(108), 1, - sym_structure, - ACTIONS(188), 2, + anon_sym_LBRACE, + anon_sym_RBRACE, sym_float, sym_string, - ACTIONS(190), 2, + anon_sym_LBRACK, + anon_sym_asyncfor, + ACTIONS(622), 23, + anon_sym_async, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, anon_sym_true, anon_sym_false, - STATE(127), 2, - sym_value, - sym_index, - STATE(105), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(206), 9, + anon_sym_none, + anon_sym_some, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_return, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -17044,7 +16768,44 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [13609] = 3, + [13295] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(593), 9, + ts_builtin_sym_end, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_asyncfor, + ACTIONS(595), 23, + anon_sym_async, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_return, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [13335] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(624), 9, @@ -17081,13 +16842,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [13649] = 4, + [13375] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(360), 1, - anon_sym_SEMI, - ACTIONS(356), 8, + ACTIONS(628), 9, ts_builtin_sym_end, + anon_sym_SEMI, anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_RBRACE, @@ -17095,7 +16855,7 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_asyncfor, - ACTIONS(358), 23, + ACTIONS(630), 23, anon_sym_async, sym_identifier, anon_sym_struct, @@ -17119,57 +16879,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [13691] = 16, - ACTIONS(3), 1, - sym__comment, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(628), 1, - sym_identifier, - ACTIONS(630), 1, - anon_sym_LPAREN, - STATE(279), 1, - sym_structure, - STATE(280), 1, - sym_index_expression, - ACTIONS(150), 2, - sym_float, - sym_string, - ACTIONS(152), 2, - anon_sym_true, - anon_sym_false, - STATE(287), 2, - sym_value, - sym_index, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [13757] = 3, + [13415] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(632), 9, @@ -17206,47 +16916,35 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [13797] = 16, + [13455] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(13), 1, - anon_sym_struct, - ACTIONS(17), 1, - sym_integer, - ACTIONS(23), 1, - anon_sym_LBRACK, - ACTIONS(25), 1, - anon_sym_none, - ACTIONS(27), 1, - anon_sym_some, - ACTIONS(561), 1, - anon_sym_LBRACE, - ACTIONS(636), 1, - sym_identifier, - ACTIONS(638), 1, + ACTIONS(368), 1, + anon_sym_SEMI, + ACTIONS(352), 8, + ts_builtin_sym_end, anon_sym_LPAREN, - STATE(55), 1, - sym_structure, - STATE(58), 1, - sym_index_expression, - ACTIONS(19), 2, + anon_sym_LBRACE, + anon_sym_RBRACE, sym_float, sym_string, - ACTIONS(21), 2, + anon_sym_LBRACK, + anon_sym_asyncfor, + ACTIONS(354), 23, + anon_sym_async, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, anon_sym_true, anon_sym_false, - STATE(60), 2, - sym_value, - sym_index, - STATE(61), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(41), 9, + anon_sym_none, + anon_sym_some, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_return, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -17256,47 +16954,34 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [13863] = 16, + [13497] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(144), 1, - anon_sym_struct, - ACTIONS(148), 1, - sym_integer, - ACTIONS(154), 1, - anon_sym_LBRACK, - ACTIONS(156), 1, - anon_sym_none, - ACTIONS(158), 1, - anon_sym_some, - ACTIONS(382), 1, - anon_sym_LBRACE, - ACTIONS(628), 1, - sym_identifier, - ACTIONS(630), 1, + ACTIONS(636), 9, + ts_builtin_sym_end, + anon_sym_SEMI, anon_sym_LPAREN, - STATE(279), 1, - sym_structure, - STATE(300), 1, - sym_index_expression, - ACTIONS(150), 2, + anon_sym_LBRACE, + anon_sym_RBRACE, sym_float, sym_string, - ACTIONS(152), 2, + anon_sym_LBRACK, + anon_sym_asyncfor, + ACTIONS(638), 23, + anon_sym_async, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, anon_sym_true, anon_sym_false, - STATE(287), 2, - sym_value, - sym_index, - STATE(268), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(172), 9, + anon_sym_none, + anon_sym_some, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_return, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -17306,57 +16991,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [13929] = 16, - ACTIONS(3), 1, - sym__comment, - ACTIONS(182), 1, - anon_sym_struct, - ACTIONS(186), 1, - sym_integer, - ACTIONS(192), 1, - anon_sym_LBRACK, - ACTIONS(194), 1, - anon_sym_none, - ACTIONS(196), 1, - anon_sym_some, - ACTIONS(433), 1, - anon_sym_LBRACE, - ACTIONS(620), 1, - sym_identifier, - ACTIONS(622), 1, - anon_sym_LPAREN, - STATE(108), 1, - sym_structure, - STATE(128), 1, - sym_index_expression, - ACTIONS(188), 2, - sym_float, - sym_string, - ACTIONS(190), 2, - anon_sym_true, - anon_sym_false, - STATE(127), 2, - sym_value, - sym_index, - STATE(105), 7, - sym_type_definition, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(206), 9, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [13995] = 3, + [13537] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(640), 9, @@ -17393,7 +17028,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [14035] = 3, + [13577] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(644), 9, @@ -17430,44 +17065,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [14075] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(589), 9, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_asyncfor, - ACTIONS(591), 23, - anon_sym_async, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_if, - anon_sym_match, - anon_sym_while, - anon_sym_for, - anon_sym_return, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [14115] = 3, + [13617] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(648), 9, @@ -17504,7 +17102,95 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [14155] = 16, + [13657] = 15, + ACTIONS(3), 1, + sym__comment, + ACTIONS(182), 1, + anon_sym_struct, + ACTIONS(186), 1, + sym_integer, + ACTIONS(192), 1, + anon_sym_LBRACK, + ACTIONS(194), 1, + anon_sym_none, + ACTIONS(196), 1, + anon_sym_some, + ACTIONS(431), 1, + anon_sym_LBRACE, + ACTIONS(652), 1, + sym_identifier, + ACTIONS(654), 1, + anon_sym_LPAREN, + STATE(108), 1, + sym_index_expression, + ACTIONS(188), 2, + sym_float, + sym_string, + ACTIONS(190), 2, + anon_sym_true, + anon_sym_false, + STATE(107), 2, + sym_value, + sym_index, + STATE(129), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(206), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [13720] = 7, + ACTIONS(3), 1, + sym__comment, + ACTIONS(656), 1, + anon_sym_elseif, + ACTIONS(658), 1, + anon_sym_else, + STATE(307), 1, + sym_else, + STATE(250), 2, + sym_else_if, + aux_sym_if_else_repeat1, + ACTIONS(585), 9, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + ACTIONS(587), 17, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [13767] = 15, ACTIONS(3), 1, sym__comment, ACTIONS(144), 1, @@ -17517,15 +17203,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_none, ACTIONS(158), 1, anon_sym_some, - ACTIONS(382), 1, + ACTIONS(419), 1, anon_sym_LBRACE, - ACTIONS(628), 1, + ACTIONS(660), 1, sym_identifier, - ACTIONS(630), 1, + ACTIONS(662), 1, anon_sym_LPAREN, - STATE(279), 1, - sym_structure, - STATE(347), 1, + STATE(297), 1, sym_index_expression, ACTIONS(150), 2, sym_float, @@ -17533,11 +17217,11 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(152), 2, anon_sym_true, anon_sym_false, - STATE(287), 2, + STATE(285), 2, sym_value, sym_index, - STATE(268), 7, - sym_type_definition, + STATE(279), 7, + sym_structure, sym_boolean, sym_list, sym_map, @@ -17554,81 +17238,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [14221] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(356), 9, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_asyncfor, - ACTIONS(358), 23, - anon_sym_async, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_if, - anon_sym_match, - anon_sym_while, - anon_sym_for, - anon_sym_return, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [14261] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(652), 9, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_asyncfor, - ACTIONS(654), 23, - anon_sym_async, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_if, - anon_sym_match, - anon_sym_while, - anon_sym_for, - anon_sym_return, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [14301] = 16, + [13830] = 15, ACTIONS(3), 1, sym__comment, ACTIONS(13), 1, @@ -17641,15 +17251,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_none, ACTIONS(27), 1, anon_sym_some, - ACTIONS(561), 1, + ACTIONS(559), 1, anon_sym_LBRACE, - ACTIONS(636), 1, + ACTIONS(664), 1, sym_identifier, - ACTIONS(638), 1, + ACTIONS(666), 1, anon_sym_LPAREN, - STATE(55), 1, - sym_structure, - STATE(84), 1, + STATE(64), 1, sym_index_expression, ACTIONS(19), 2, sym_float, @@ -17657,11 +17265,11 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(21), 2, anon_sym_true, anon_sym_false, - STATE(60), 2, + STATE(74), 2, sym_value, sym_index, - STATE(61), 7, - sym_type_definition, + STATE(81), 7, + sym_structure, sym_boolean, sym_list, sym_map, @@ -17678,34 +17286,45 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [14367] = 3, + [13893] = 15, ACTIONS(3), 1, sym__comment, - ACTIONS(656), 9, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_LPAREN, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(419), 1, anon_sym_LBRACE, - anon_sym_RBRACE, + ACTIONS(660), 1, + sym_identifier, + ACTIONS(662), 1, + anon_sym_LPAREN, + STATE(345), 1, + sym_index_expression, + ACTIONS(150), 2, sym_float, sym_string, - anon_sym_LBRACK, - anon_sym_asyncfor, - ACTIONS(658), 23, - anon_sym_async, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, + ACTIONS(152), 2, anon_sym_true, anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_if, - anon_sym_match, - anon_sym_while, - anon_sym_for, - anon_sym_return, + STATE(285), 2, + sym_value, + sym_index, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -17715,21 +17334,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [14407] = 3, + [13956] = 7, ACTIONS(3), 1, sym__comment, - ACTIONS(660), 9, - ts_builtin_sym_end, + ACTIONS(656), 1, + anon_sym_elseif, + ACTIONS(658), 1, + anon_sym_else, + STATE(308), 1, + sym_else, + STATE(254), 2, + sym_else_if, + aux_sym_if_else_repeat1, + ACTIONS(593), 9, anon_sym_SEMI, anon_sym_LPAREN, + anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, anon_sym_LBRACK, - anon_sym_asyncfor, - ACTIONS(662), 23, - anon_sym_async, + anon_sym_STAR, + ACTIONS(595), 17, sym_identifier, anon_sym_struct, anon_sym_new, @@ -17738,11 +17365,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_false, anon_sym_none, anon_sym_some, - anon_sym_if, - anon_sym_match, - anon_sym_while, - anon_sym_for, - anon_sym_return, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -17752,34 +17374,45 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [14447] = 3, + [14003] = 15, ACTIONS(3), 1, sym__comment, - ACTIONS(664), 9, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_LPAREN, + ACTIONS(182), 1, + anon_sym_struct, + ACTIONS(186), 1, + sym_integer, + ACTIONS(192), 1, + anon_sym_LBRACK, + ACTIONS(194), 1, + anon_sym_none, + ACTIONS(196), 1, + anon_sym_some, + ACTIONS(431), 1, anon_sym_LBRACE, - anon_sym_RBRACE, + ACTIONS(652), 1, + sym_identifier, + ACTIONS(654), 1, + anon_sym_LPAREN, + STATE(127), 1, + sym_index_expression, + ACTIONS(188), 2, sym_float, sym_string, - anon_sym_LBRACK, - anon_sym_asyncfor, - ACTIONS(666), 23, - anon_sym_async, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, + ACTIONS(190), 2, anon_sym_true, anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_if, - anon_sym_match, - anon_sym_while, - anon_sym_for, - anon_sym_return, + STATE(107), 2, + sym_value, + sym_index, + STATE(129), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(206), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -17789,16 +17422,108 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [14487] = 7, + [14066] = 15, + ACTIONS(3), 1, + sym__comment, + ACTIONS(144), 1, + anon_sym_struct, + ACTIONS(148), 1, + sym_integer, + ACTIONS(154), 1, + anon_sym_LBRACK, + ACTIONS(156), 1, + anon_sym_none, + ACTIONS(158), 1, + anon_sym_some, + ACTIONS(419), 1, + anon_sym_LBRACE, + ACTIONS(660), 1, + sym_identifier, + ACTIONS(662), 1, + anon_sym_LPAREN, + STATE(268), 1, + sym_index_expression, + ACTIONS(150), 2, + sym_float, + sym_string, + ACTIONS(152), 2, + anon_sym_true, + anon_sym_false, + STATE(285), 2, + sym_value, + sym_index, + STATE(279), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(172), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [14129] = 15, + ACTIONS(3), 1, + sym__comment, + ACTIONS(13), 1, + anon_sym_struct, + ACTIONS(17), 1, + sym_integer, + ACTIONS(23), 1, + anon_sym_LBRACK, + ACTIONS(25), 1, + anon_sym_none, + ACTIONS(27), 1, + anon_sym_some, + ACTIONS(559), 1, + anon_sym_LBRACE, + ACTIONS(664), 1, + sym_identifier, + ACTIONS(666), 1, + anon_sym_LPAREN, + STATE(75), 1, + sym_index_expression, + ACTIONS(19), 2, + sym_float, + sym_string, + ACTIONS(21), 2, + anon_sym_true, + anon_sym_false, + STATE(74), 2, + sym_value, + sym_index, + STATE(81), 7, + sym_structure, + sym_boolean, + sym_list, + sym_map, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(41), 9, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [14192] = 5, ACTIONS(3), 1, sym__comment, ACTIONS(668), 1, anon_sym_elseif, - ACTIONS(670), 1, - anon_sym_else, - STATE(307), 1, - sym_else, - STATE(255), 2, + STATE(254), 2, sym_else_if, aux_sym_if_else_repeat1, ACTIONS(597), 9, @@ -17811,83 +17536,7 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_STAR, - ACTIONS(599), 17, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [14534] = 7, - ACTIONS(3), 1, - sym__comment, - ACTIONS(668), 1, - anon_sym_elseif, - ACTIONS(670), 1, - anon_sym_else, - STATE(312), 1, - sym_else, - STATE(256), 2, - sym_else_if, - aux_sym_if_else_repeat1, - ACTIONS(589), 9, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_STAR, - ACTIONS(591), 17, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [14581] = 5, - ACTIONS(3), 1, - sym__comment, - ACTIONS(672), 1, - anon_sym_elseif, - STATE(256), 2, - sym_else_if, - aux_sym_if_else_repeat1, - ACTIONS(601), 9, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_STAR, - ACTIONS(603), 18, + ACTIONS(599), 18, sym_identifier, anon_sym_struct, anon_sym_new, @@ -17906,12 +17555,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [14623] = 5, + [14234] = 6, ACTIONS(3), 1, sym__comment, - STATE(188), 1, + ACTIONS(671), 1, + anon_sym_DASH_GT, + STATE(185), 1, sym_math_operator, - STATE(190), 1, + STATE(186), 1, sym_logic_operator, ACTIONS(220), 7, anon_sym_async, @@ -17921,7 +17572,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(218), 20, + ACTIONS(218), 19, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_COMMA, @@ -17941,86 +17592,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_EQ_GT, - anon_sym_DASH_GT, - [14664] = 3, + [14277] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(677), 6, - anon_sym_LPAREN, - anon_sym_LBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_asyncfor, - ACTIONS(675), 23, - anon_sym_async, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_if, - anon_sym_match, - anon_sym_while, - anon_sym_for, - anon_sym_return, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [14701] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(679), 1, + ACTIONS(671), 1, anon_sym_DASH_GT, - STATE(188), 1, + STATE(185), 1, sym_math_operator, - STATE(190), 1, - sym_logic_operator, - ACTIONS(216), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(214), 19, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_EQ_GT, - [14744] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(679), 1, - anon_sym_DASH_GT, - STATE(188), 1, - sym_math_operator, - STATE(190), 1, + STATE(186), 1, sym_logic_operator, ACTIONS(210), 7, anon_sym_async, @@ -18050,116 +17629,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_EQ_GT, - [14787] = 3, + [14320] = 5, ACTIONS(3), 1, sym__comment, - ACTIONS(258), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(256), 21, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_EQ_GT, - anon_sym_DASH_GT, - [14823] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(306), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(304), 21, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_EQ_GT, - anon_sym_DASH_GT, - [14859] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(681), 1, - anon_sym_DASH_GT, - STATE(180), 1, + STATE(185), 1, sym_math_operator, - STATE(213), 1, - sym_logic_operator, - ACTIONS(210), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(208), 18, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_EQ_GT, - [14901] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(681), 1, - anon_sym_DASH_GT, - STATE(180), 1, - sym_math_operator, - STATE(213), 1, + STATE(186), 1, sym_logic_operator, ACTIONS(216), 7, anon_sym_async, @@ -18169,13 +17644,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(214), 18, + ACTIONS(214), 20, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, anon_sym_COLON, + anon_sym_DOT_DOT, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -18188,10 +17664,45 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_EQ_GT, - [14943] = 3, + anon_sym_DASH_GT, + [14361] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(330), 7, + ACTIONS(675), 6, + anon_sym_LPAREN, + anon_sym_LBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_asyncfor, + ACTIONS(673), 23, + anon_sym_async, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_if, + anon_sym_match, + anon_sym_while, + anon_sym_for, + anon_sym_return, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [14398] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(292), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -18199,7 +17710,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(328), 21, + ACTIONS(290), 21, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -18221,10 +17732,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [14979] = 3, + [14434] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(298), 7, + ACTIONS(288), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -18232,7 +17743,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(296), 21, + ACTIONS(286), 21, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -18254,207 +17765,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [15015] = 5, - ACTIONS(3), 1, - sym__comment, - STATE(180), 1, - sym_math_operator, - STATE(213), 1, - sym_logic_operator, - ACTIONS(220), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(218), 19, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_EQ_GT, - anon_sym_DASH_GT, - [15055] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(264), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(262), 21, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_EQ_GT, - anon_sym_DASH_GT, - [15091] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(334), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(332), 21, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_EQ_GT, - anon_sym_DASH_GT, - [15127] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(290), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(288), 21, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_EQ_GT, - anon_sym_DASH_GT, - [15163] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(342), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(340), 21, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_EQ_GT, - anon_sym_DASH_GT, - [15199] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(276), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(274), 21, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_EQ_GT, - anon_sym_DASH_GT, - [15235] = 3, + [14470] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(248), 7, @@ -18487,48 +17798,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [15271] = 3, + [14506] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(608), 10, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_STAR, - anon_sym_elseif, - ACTIONS(610), 18, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_else, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [15307] = 5, - ACTIONS(3), 1, - sym__comment, - ACTIONS(232), 1, - anon_sym_COLON, - ACTIONS(228), 2, - anon_sym_LPAREN, - anon_sym_RPAREN, - ACTIONS(226), 7, + ACTIONS(677), 1, + anon_sym_DASH_GT, + STATE(187), 1, + sym_logic_operator, + STATE(190), 1, + sym_math_operator, + ACTIONS(220), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -18536,12 +17815,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(224), 18, + ACTIONS(218), 18, anon_sym_SEMI, + anon_sym_LPAREN, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, - anon_sym_DOT_DOT, + anon_sym_COLON, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -18554,11 +17834,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_EQ_GT, - anon_sym_DASH_GT, - [15347] = 3, + [14548] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(280), 7, + ACTIONS(677), 1, + anon_sym_DASH_GT, + STATE(187), 1, + sym_logic_operator, + STATE(190), 1, + sym_math_operator, + ACTIONS(210), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -18566,7 +17851,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(278), 21, + ACTIONS(208), 18, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_EQ_GT, + [14590] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(306), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(304), 21, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -18588,10 +17903,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [15383] = 3, + [14626] = 5, ACTIONS(3), 1, sym__comment, - ACTIONS(286), 7, + ACTIONS(230), 1, + anon_sym_COLON, + ACTIONS(226), 2, + anon_sym_LPAREN, + anon_sym_RPAREN, + ACTIONS(224), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -18599,7 +17919,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(284), 21, + ACTIONS(222), 18, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_EQ_GT, + anon_sym_DASH_GT, + [14666] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(330), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(328), 21, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -18621,305 +17971,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [15419] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(294), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(292), 21, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_EQ_GT, - anon_sym_DASH_GT, - [15455] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(240), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(238), 21, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_EQ_GT, - anon_sym_DASH_GT, - [15491] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(252), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(250), 21, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_EQ_GT, - anon_sym_DASH_GT, - [15527] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(338), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(336), 21, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_EQ_GT, - anon_sym_DASH_GT, - [15563] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(310), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(308), 21, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_EQ_GT, - anon_sym_DASH_GT, - [15599] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(354), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(352), 21, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_EQ_GT, - anon_sym_DASH_GT, - [15635] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(302), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(300), 21, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_EQ_GT, - anon_sym_DASH_GT, - [15671] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(228), 2, - anon_sym_LPAREN, - anon_sym_RPAREN, - ACTIONS(226), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(224), 19, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_EQ_GT, - anon_sym_DASH_GT, - [15709] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(272), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(270), 21, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_EQ_GT, - anon_sym_DASH_GT, - [15745] = 3, + [14702] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(260), 7, @@ -18930,7 +17982,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(232), 21, + ACTIONS(258), 21, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -18952,109 +18004,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [15781] = 3, + [14738] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(344), 10, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_STAR, - anon_sym_elseif, - ACTIONS(346), 18, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_else, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [15817] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(336), 10, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_STAR, - anon_sym_elseif, - ACTIONS(338), 18, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_else, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [15853] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(288), 10, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_STAR, - anon_sym_elseif, - ACTIONS(290), 18, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_else, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [15889] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(322), 7, + ACTIONS(276), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -19062,7 +18015,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(320), 21, + ACTIONS(274), 21, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -19084,10 +18037,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [15925] = 3, + [14774] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(318), 7, + ACTIONS(300), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -19095,7 +18048,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(316), 21, + ACTIONS(298), 21, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -19117,106 +18070,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [15961] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(346), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(344), 21, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_EQ_GT, - anon_sym_DASH_GT, - [15997] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(612), 10, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_STAR, - anon_sym_elseif, - ACTIONS(614), 18, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_else, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [16033] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(314), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(312), 21, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - anon_sym_EQ_GT, - anon_sym_DASH_GT, - [16069] = 3, + [14810] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(268), 7, @@ -19249,7 +18103,637 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [16105] = 3, + [14846] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(342), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(340), 21, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_EQ_GT, + anon_sym_DASH_GT, + [14882] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(604), 10, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + anon_sym_elseif, + ACTIONS(606), 18, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_else, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [14918] = 5, + ACTIONS(3), 1, + sym__comment, + STATE(187), 1, + sym_logic_operator, + STATE(190), 1, + sym_math_operator, + ACTIONS(216), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(214), 19, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_EQ_GT, + anon_sym_DASH_GT, + [14958] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(252), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(250), 21, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_EQ_GT, + anon_sym_DASH_GT, + [14994] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(256), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(254), 21, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_EQ_GT, + anon_sym_DASH_GT, + [15030] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(264), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(262), 21, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_EQ_GT, + anon_sym_DASH_GT, + [15066] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(226), 2, + anon_sym_LPAREN, + anon_sym_RPAREN, + ACTIONS(224), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(222), 19, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_EQ_GT, + anon_sym_DASH_GT, + [15104] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(338), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(336), 21, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_EQ_GT, + anon_sym_DASH_GT, + [15140] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(334), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(332), 21, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_EQ_GT, + anon_sym_DASH_GT, + [15176] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(240), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(238), 21, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_EQ_GT, + anon_sym_DASH_GT, + [15212] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(280), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(278), 21, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_EQ_GT, + anon_sym_DASH_GT, + [15248] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(346), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(344), 21, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_EQ_GT, + anon_sym_DASH_GT, + [15284] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(286), 10, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + anon_sym_elseif, + ACTIONS(288), 18, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_else, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [15320] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(336), 10, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + anon_sym_elseif, + ACTIONS(338), 18, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_else, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [15356] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(308), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(230), 21, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_EQ_GT, + anon_sym_DASH_GT, + [15392] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(258), 10, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + anon_sym_elseif, + ACTIONS(260), 18, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_else, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [15428] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(314), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(312), 21, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_EQ_GT, + anon_sym_DASH_GT, + [15464] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(272), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(270), 21, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_EQ_GT, + anon_sym_DASH_GT, + [15500] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(284), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(282), 21, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_EQ_GT, + anon_sym_DASH_GT, + [15536] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(244), 7, @@ -19282,10 +18766,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [16141] = 3, + [15572] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(350), 7, + ACTIONS(318), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -19293,7 +18777,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(348), 21, + ACTIONS(316), 21, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -19315,7 +18799,40 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [16177] = 3, + [15608] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(608), 10, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + anon_sym_elseif, + ACTIONS(610), 18, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_else, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [15644] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(326), 7, @@ -19348,12 +18865,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [16213] = 4, + [15680] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(683), 1, - anon_sym_DOT_DOT, - ACTIONS(252), 7, + ACTIONS(296), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -19361,7 +18876,108 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(250), 19, + ACTIONS(294), 21, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_EQ_GT, + anon_sym_DASH_GT, + [15716] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(322), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(320), 21, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_EQ_GT, + anon_sym_DASH_GT, + [15752] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(350), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(348), 21, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + anon_sym_EQ_GT, + anon_sym_DASH_GT, + [15788] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(679), 1, + anon_sym_DOT_DOT, + ACTIONS(276), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(274), 19, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_COMMA, @@ -19381,349 +18997,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [16250] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(664), 9, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_STAR, - ACTIONS(666), 17, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [16284] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(632), 9, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_STAR, - ACTIONS(634), 17, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [16318] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(356), 9, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_STAR, - ACTIONS(358), 17, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [16352] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(648), 9, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_STAR, - ACTIONS(650), 17, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [16386] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(575), 1, - anon_sym_SEMI, - ACTIONS(356), 8, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_STAR, - ACTIONS(358), 17, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [16422] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(656), 9, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_STAR, - ACTIONS(658), 17, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [16456] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(589), 9, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_STAR, - ACTIONS(591), 17, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [16490] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(652), 9, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_STAR, - ACTIONS(654), 17, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [16524] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(640), 9, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_STAR, - ACTIONS(642), 17, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [16558] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(660), 9, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_STAR, - ACTIONS(662), 17, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [16592] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(624), 9, - anon_sym_SEMI, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_STAR, - ACTIONS(626), 17, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [16626] = 3, + [15825] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(616), 9, @@ -19754,7 +19028,194 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [16660] = 3, + [15859] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(648), 9, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + ACTIONS(650), 17, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [15893] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(569), 1, + anon_sym_SEMI, + ACTIONS(352), 8, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + ACTIONS(354), 17, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [15929] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(352), 9, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + ACTIONS(354), 17, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [15963] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(628), 9, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + ACTIONS(630), 17, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [15997] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(612), 9, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + ACTIONS(614), 17, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [16031] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(624), 9, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + ACTIONS(626), 17, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [16065] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(644), 9, @@ -19785,20 +19246,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [16694] = 4, + [16099] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(689), 1, - anon_sym_COMMA, - ACTIONS(687), 7, + ACTIONS(632), 9, + anon_sym_SEMI, anon_sym_LPAREN, + anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, anon_sym_LBRACK, anon_sym_STAR, - ACTIONS(685), 17, + ACTIONS(634), 17, sym_identifier, anon_sym_struct, anon_sym_new, @@ -19816,29 +19277,153 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [16729] = 10, + [16133] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(228), 1, + ACTIONS(593), 9, + anon_sym_SEMI, anon_sym_LPAREN, - ACTIONS(230), 1, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + ACTIONS(595), 17, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [16167] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(636), 9, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + ACTIONS(638), 17, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [16201] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(620), 9, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + ACTIONS(622), 17, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [16235] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(640), 9, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + ACTIONS(642), 17, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [16269] = 10, + ACTIONS(3), 1, + sym__comment, + ACTIONS(226), 1, + anon_sym_LPAREN, + ACTIONS(228), 1, anon_sym_EQ, - ACTIONS(232), 1, + ACTIONS(230), 1, anon_sym_COLON, - ACTIONS(234), 1, + ACTIONS(232), 1, anon_sym_LT, - STATE(30), 1, + STATE(40), 1, sym_assignment_operator, - STATE(395), 1, + STATE(392), 1, sym_type_specification, - ACTIONS(236), 2, + ACTIONS(234), 2, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, - ACTIONS(226), 3, + ACTIONS(224), 3, anon_sym_PLUS, anon_sym_DASH, anon_sym_GT, - ACTIONS(224), 14, + ACTIONS(222), 14, anon_sym_SEMI, anon_sym_COMMA, anon_sym_RBRACE, @@ -19853,26 +19438,86 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_DASH_GT, - [16776] = 8, + [16316] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(228), 1, + ACTIONS(685), 1, + anon_sym_COMMA, + ACTIONS(683), 7, anon_sym_LPAREN, - ACTIONS(230), 1, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + ACTIONS(681), 17, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [16351] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(689), 7, + anon_sym_LPAREN, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + ACTIONS(687), 17, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [16383] = 8, + ACTIONS(3), 1, + sym__comment, + ACTIONS(226), 1, + anon_sym_LPAREN, + ACTIONS(228), 1, anon_sym_EQ, - ACTIONS(232), 1, + ACTIONS(230), 1, anon_sym_COLON, - STATE(35), 1, + STATE(39), 1, sym_assignment_operator, - ACTIONS(236), 2, + ACTIONS(234), 2, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, - ACTIONS(226), 4, + ACTIONS(224), 4, anon_sym_PLUS, anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(224), 14, + ACTIONS(222), 14, anon_sym_SEMI, anon_sym_COMMA, anon_sym_RBRACE, @@ -19887,18 +19532,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_DASH_GT, - [16818] = 4, + [16425] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(232), 1, + ACTIONS(230), 1, anon_sym_COLON, - ACTIONS(374), 5, + ACTIONS(372), 5, anon_sym_async, sym_identifier, anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(228), 18, + ACTIONS(226), 18, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -19917,43 +19562,45 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [16852] = 3, + [16459] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(693), 7, - anon_sym_LPAREN, + ACTIONS(691), 1, + anon_sym_DASH_GT, + STATE(206), 1, + sym_logic_operator, + STATE(212), 1, + sym_math_operator, + ACTIONS(220), 5, + anon_sym_async, + sym_identifier, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(218), 15, + anon_sym_SEMI, + anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, + anon_sym_PLUS, anon_sym_STAR, - ACTIONS(691), 17, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [16884] = 6, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ_GT, + [16496] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(695), 1, + ACTIONS(691), 1, anon_sym_DASH_GT, - STATE(207), 1, + STATE(206), 1, sym_logic_operator, - STATE(208), 1, + STATE(212), 1, sym_math_operator, ACTIONS(210), 5, anon_sym_async, @@ -19977,16 +19624,71 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_EQ_GT, - [16921] = 3, + [16533] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(505), 6, + ACTIONS(460), 6, + anon_sym_LPAREN, + anon_sym_LBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_RBRACK, + ACTIONS(693), 17, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [16564] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(507), 6, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, sym_float, sym_string, anon_sym_LBRACK, + ACTIONS(695), 17, + sym_identifier, + anon_sym_struct, + anon_sym_new, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_none, + anon_sym_some, + anon_sym_args, + anon_sym_assert_equal, + anon_sym_env, + anon_sym_fs, + anon_sym_json, + anon_sym_length, + anon_sym_output, + anon_sym_random, + anon_sym_string, + [16595] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(699), 5, + anon_sym_LPAREN, + anon_sym_LBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, ACTIONS(697), 17, sym_identifier, anon_sym_struct, @@ -20005,66 +19707,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [16952] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(482), 6, - anon_sym_LPAREN, - anon_sym_LBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_RBRACK, - ACTIONS(699), 17, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [16983] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(695), 1, - anon_sym_DASH_GT, - STATE(207), 1, - sym_logic_operator, - STATE(208), 1, - sym_math_operator, - ACTIONS(216), 5, - anon_sym_async, - sym_identifier, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(214), 15, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ_GT, - [17020] = 3, + [16625] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(703), 5, @@ -20091,78 +19734,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [17050] = 3, + [16655] = 5, ACTIONS(3), 1, sym__comment, - ACTIONS(707), 5, - anon_sym_LPAREN, - anon_sym_LBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - ACTIONS(705), 17, - sym_identifier, - anon_sym_struct, - anon_sym_new, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, - anon_sym_args, - anon_sym_assert_equal, - anon_sym_env, - anon_sym_fs, - anon_sym_json, - anon_sym_length, - anon_sym_output, - anon_sym_random, - anon_sym_string, - [17080] = 9, - ACTIONS(3), 1, - sym__comment, - ACTIONS(364), 1, - anon_sym_DASH, - ACTIONS(695), 1, - anon_sym_DASH_GT, - STATE(207), 1, - sym_logic_operator, - STATE(208), 1, + STATE(177), 1, sym_math_operator, - ACTIONS(368), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(356), 4, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RBRACE, - sym_identifier, - ACTIONS(362), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(366), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [17120] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(679), 1, - anon_sym_DASH_GT, - STATE(167), 1, - sym_math_operator, - STATE(182), 1, + STATE(178), 1, sym_logic_operator, ACTIONS(216), 3, anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(214), 14, + ACTIONS(214), 15, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COLON, @@ -20177,73 +19760,78 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [17154] = 10, + anon_sym_DASH_GT, + [16687] = 10, ACTIONS(3), 1, sym__comment, - ACTIONS(364), 1, + ACTIONS(358), 1, anon_sym_DASH, - ACTIONS(575), 1, + ACTIONS(569), 1, anon_sym_SEMI, - ACTIONS(695), 1, + ACTIONS(691), 1, anon_sym_DASH_GT, - STATE(207), 1, + STATE(206), 1, sym_logic_operator, - STATE(208), 1, + STATE(212), 1, sym_math_operator, - ACTIONS(368), 2, + ACTIONS(362), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(356), 3, + ACTIONS(352), 3, anon_sym_COMMA, anon_sym_RBRACE, sym_identifier, - ACTIONS(362), 4, + ACTIONS(356), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, + ACTIONS(360), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [17196] = 5, + [16729] = 9, ACTIONS(3), 1, sym__comment, - STATE(167), 1, - sym_math_operator, - STATE(182), 1, - sym_logic_operator, - ACTIONS(220), 3, + ACTIONS(358), 1, anon_sym_DASH, + ACTIONS(691), 1, + anon_sym_DASH_GT, + STATE(206), 1, + sym_logic_operator, + STATE(212), 1, + sym_math_operator, + ACTIONS(362), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(218), 15, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COLON, - anon_sym_DOT_DOT, + ACTIONS(352), 4, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_RBRACE, + sym_identifier, + ACTIONS(356), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, + ACTIONS(360), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - anon_sym_DASH_GT, - [17228] = 6, + [16769] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(679), 1, + ACTIONS(671), 1, anon_sym_DASH_GT, - STATE(167), 1, + STATE(177), 1, sym_math_operator, - STATE(182), 1, + STATE(178), 1, sym_logic_operator, ACTIONS(210), 3, anon_sym_DASH, @@ -20264,78 +19852,132 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [17262] = 11, + [16803] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(364), 1, + ACTIONS(671), 1, + anon_sym_DASH_GT, + STATE(177), 1, + sym_math_operator, + STATE(178), 1, + sym_logic_operator, + ACTIONS(220), 3, anon_sym_DASH, - ACTIONS(695), 1, + anon_sym_GT, + anon_sym_LT, + ACTIONS(218), 14, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [16837] = 11, + ACTIONS(3), 1, + sym__comment, + ACTIONS(358), 1, + anon_sym_DASH, + ACTIONS(691), 1, + anon_sym_DASH_GT, + ACTIONS(705), 1, + anon_sym_async, + ACTIONS(707), 1, + anon_sym_LBRACE, + STATE(206), 1, + sym_logic_operator, + STATE(212), 1, + sym_math_operator, + STATE(238), 1, + sym_block, + ACTIONS(362), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(356), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(360), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [16880] = 11, + ACTIONS(3), 1, + sym__comment, + ACTIONS(358), 1, + anon_sym_DASH, + ACTIONS(691), 1, anon_sym_DASH_GT, ACTIONS(709), 1, anon_sym_async, ACTIONS(711), 1, anon_sym_LBRACE, - STATE(207), 1, + STATE(206), 1, sym_logic_operator, - STATE(208), 1, + STATE(212), 1, sym_math_operator, - STATE(304), 1, + STATE(229), 1, sym_block, - ACTIONS(368), 2, + ACTIONS(362), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(362), 4, + ACTIONS(356), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, + ACTIONS(360), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [17305] = 11, + [16923] = 5, ACTIONS(3), 1, sym__comment, - ACTIONS(364), 1, + STATE(203), 1, + sym_logic_operator, + STATE(211), 1, + sym_math_operator, + ACTIONS(216), 3, anon_sym_DASH, - ACTIONS(695), 1, - anon_sym_DASH_GT, - ACTIONS(713), 1, - anon_sym_async, - ACTIONS(715), 1, - anon_sym_LBRACE, - STATE(207), 1, - sym_logic_operator, - STATE(208), 1, - sym_math_operator, - STATE(246), 1, - sym_block, - ACTIONS(368), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(362), 4, + ACTIONS(214), 14, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COLON, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [17348] = 6, + anon_sym_DASH_GT, + [16954] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(717), 1, + ACTIONS(713), 1, anon_sym_DASH_GT, - STATE(174), 1, + STATE(203), 1, sym_logic_operator, - STATE(175), 1, + STATE(211), 1, sym_math_operator, ACTIONS(210), 3, anon_sym_DASH, @@ -20355,114 +19997,52 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [17381] = 11, + [16987] = 11, ACTIONS(3), 1, sym__comment, - ACTIONS(364), 1, + ACTIONS(358), 1, anon_sym_DASH, - ACTIONS(695), 1, + ACTIONS(691), 1, anon_sym_DASH_GT, - ACTIONS(719), 1, + ACTIONS(715), 1, anon_sym_async, - ACTIONS(721), 1, + ACTIONS(717), 1, anon_sym_LBRACE, - STATE(207), 1, + STATE(206), 1, sym_logic_operator, - STATE(208), 1, - sym_math_operator, - STATE(304), 1, - sym_block, - ACTIONS(368), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(362), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(366), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [17424] = 11, - ACTIONS(3), 1, - sym__comment, - ACTIONS(364), 1, - anon_sym_DASH, - ACTIONS(695), 1, - anon_sym_DASH_GT, - ACTIONS(719), 1, - anon_sym_async, - ACTIONS(721), 1, - anon_sym_LBRACE, - STATE(207), 1, - sym_logic_operator, - STATE(208), 1, + STATE(212), 1, sym_math_operator, STATE(302), 1, sym_block, - ACTIONS(368), 2, + ACTIONS(362), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(362), 4, + ACTIONS(356), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, + ACTIONS(360), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [17467] = 11, + [17030] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(364), 1, - anon_sym_DASH, - ACTIONS(695), 1, + ACTIONS(713), 1, anon_sym_DASH_GT, - ACTIONS(723), 1, - anon_sym_async, - ACTIONS(725), 1, - anon_sym_LBRACE, - STATE(207), 1, + STATE(203), 1, sym_logic_operator, - STATE(208), 1, - sym_math_operator, - STATE(274), 1, - sym_block, - ACTIONS(368), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(362), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(366), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [17510] = 5, - ACTIONS(3), 1, - sym__comment, - STATE(174), 1, - sym_logic_operator, - STATE(175), 1, + STATE(211), 1, sym_math_operator, ACTIONS(220), 3, anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(218), 14, + ACTIONS(218), 13, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COLON, @@ -20476,207 +20056,243 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - anon_sym_DASH_GT, - [17541] = 11, + [17063] = 11, ACTIONS(3), 1, sym__comment, - ACTIONS(364), 1, + ACTIONS(358), 1, anon_sym_DASH, - ACTIONS(695), 1, - anon_sym_DASH_GT, - ACTIONS(723), 1, - anon_sym_async, - ACTIONS(725), 1, - anon_sym_LBRACE, - STATE(207), 1, - sym_logic_operator, - STATE(208), 1, - sym_math_operator, - STATE(294), 1, - sym_block, - ACTIONS(368), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(362), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(366), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [17584] = 11, - ACTIONS(3), 1, - sym__comment, - ACTIONS(364), 1, - anon_sym_DASH, - ACTIONS(695), 1, + ACTIONS(691), 1, anon_sym_DASH_GT, ACTIONS(709), 1, anon_sym_async, ACTIONS(711), 1, anon_sym_LBRACE, - STATE(207), 1, + STATE(206), 1, sym_logic_operator, - STATE(208), 1, + STATE(212), 1, sym_math_operator, - STATE(302), 1, + STATE(228), 1, sym_block, - ACTIONS(368), 2, + ACTIONS(362), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(362), 4, + ACTIONS(356), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, + ACTIONS(360), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [17627] = 6, + [17106] = 11, ACTIONS(3), 1, sym__comment, - ACTIONS(717), 1, - anon_sym_DASH_GT, - STATE(174), 1, - sym_logic_operator, - STATE(175), 1, - sym_math_operator, - ACTIONS(216), 3, + ACTIONS(358), 1, anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(214), 13, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COLON, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [17660] = 11, - ACTIONS(3), 1, - sym__comment, - ACTIONS(364), 1, - anon_sym_DASH, - ACTIONS(695), 1, + ACTIONS(691), 1, anon_sym_DASH_GT, - ACTIONS(727), 1, + ACTIONS(719), 1, anon_sym_async, - ACTIONS(729), 1, + ACTIONS(721), 1, anon_sym_LBRACE, - STATE(207), 1, + STATE(206), 1, sym_logic_operator, - STATE(208), 1, + STATE(212), 1, sym_math_operator, - STATE(231), 1, + STATE(292), 1, sym_block, - ACTIONS(368), 2, + ACTIONS(362), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(362), 4, + ACTIONS(356), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, + ACTIONS(360), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [17703] = 11, + [17149] = 11, ACTIONS(3), 1, sym__comment, - ACTIONS(364), 1, + ACTIONS(358), 1, anon_sym_DASH, - ACTIONS(695), 1, + ACTIONS(691), 1, anon_sym_DASH_GT, - ACTIONS(713), 1, + ACTIONS(723), 1, anon_sym_async, + ACTIONS(725), 1, + anon_sym_LBRACE, + STATE(206), 1, + sym_logic_operator, + STATE(212), 1, + sym_math_operator, + STATE(306), 1, + sym_block, + ACTIONS(362), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(356), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(360), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [17192] = 11, + ACTIONS(3), 1, + sym__comment, + ACTIONS(358), 1, + anon_sym_DASH, + ACTIONS(691), 1, + anon_sym_DASH_GT, ACTIONS(715), 1, + anon_sym_async, + ACTIONS(717), 1, anon_sym_LBRACE, - STATE(207), 1, + STATE(206), 1, sym_logic_operator, - STATE(208), 1, + STATE(212), 1, + sym_math_operator, + STATE(306), 1, + sym_block, + ACTIONS(362), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(356), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(360), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [17235] = 11, + ACTIONS(3), 1, + sym__comment, + ACTIONS(358), 1, + anon_sym_DASH, + ACTIONS(691), 1, + anon_sym_DASH_GT, + ACTIONS(719), 1, + anon_sym_async, + ACTIONS(721), 1, + anon_sym_LBRACE, + STATE(206), 1, + sym_logic_operator, + STATE(212), 1, + sym_math_operator, + STATE(272), 1, + sym_block, + ACTIONS(362), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(356), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(360), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [17278] = 11, + ACTIONS(3), 1, + sym__comment, + ACTIONS(358), 1, + anon_sym_DASH, + ACTIONS(691), 1, + anon_sym_DASH_GT, + ACTIONS(705), 1, + anon_sym_async, + ACTIONS(707), 1, + anon_sym_LBRACE, + STATE(206), 1, + sym_logic_operator, + STATE(212), 1, sym_math_operator, STATE(239), 1, sym_block, - ACTIONS(368), 2, + ACTIONS(362), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(362), 4, + ACTIONS(356), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, + ACTIONS(360), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [17746] = 11, + [17321] = 11, ACTIONS(3), 1, sym__comment, - ACTIONS(364), 1, + ACTIONS(358), 1, anon_sym_DASH, - ACTIONS(695), 1, + ACTIONS(691), 1, anon_sym_DASH_GT, - ACTIONS(727), 1, + ACTIONS(723), 1, anon_sym_async, - ACTIONS(729), 1, + ACTIONS(725), 1, anon_sym_LBRACE, - STATE(207), 1, + STATE(206), 1, sym_logic_operator, - STATE(208), 1, + STATE(212), 1, sym_math_operator, - STATE(233), 1, + STATE(302), 1, sym_block, - ACTIONS(368), 2, + ACTIONS(362), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(362), 4, + ACTIONS(356), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, + ACTIONS(360), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [17789] = 4, + [17364] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(735), 1, + ACTIONS(731), 1, anon_sym_DASH_GT, - ACTIONS(733), 6, + ACTIONS(729), 6, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_GT, - ACTIONS(731), 11, + ACTIONS(727), 11, sym_identifier, anon_sym_none, anon_sym_any, @@ -20688,92 +20304,116 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_num, anon_sym_str, anon_sym_option, - [17817] = 7, - ACTIONS(3), 1, - sym__comment, - ACTIONS(232), 1, - anon_sym_COLON, - ACTIONS(234), 1, - anon_sym_LT, - STATE(429), 1, - sym_type_specification, - ACTIONS(226), 2, - anon_sym_DASH, - anon_sym_GT, - ACTIONS(228), 2, - anon_sym_LPAREN, - anon_sym_RPAREN, - ACTIONS(224), 11, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_DASH_GT, - [17851] = 5, - ACTIONS(3), 1, - sym__comment, - ACTIONS(228), 1, - anon_sym_LPAREN, - ACTIONS(232), 1, - anon_sym_COLON, - ACTIONS(226), 3, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(224), 13, - anon_sym_RPAREN, - anon_sym_DOT_DOT, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_DASH_GT, - [17881] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(228), 1, - anon_sym_LPAREN, - ACTIONS(226), 3, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(224), 14, - anon_sym_RPAREN, - anon_sym_COLON, - anon_sym_DOT_DOT, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_DASH_GT, - [17909] = 4, + [17392] = 4, ACTIONS(3), 1, sym__comment, ACTIONS(737), 1, - anon_sym_DOT_DOT, - ACTIONS(252), 3, + anon_sym_DASH_GT, + ACTIONS(735), 6, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_GT, + ACTIONS(733), 11, + sym_identifier, + anon_sym_none, + anon_sym_any, + anon_sym_bool, + anon_sym_collection, + anon_sym_float, + anon_sym_int, + anon_sym_map, + anon_sym_num, + anon_sym_str, + anon_sym_option, + [17420] = 7, + ACTIONS(3), 1, + sym__comment, + ACTIONS(230), 1, + anon_sym_COLON, + ACTIONS(232), 1, + anon_sym_LT, + STATE(421), 1, + sym_type_specification, + ACTIONS(224), 2, + anon_sym_DASH, + anon_sym_GT, + ACTIONS(226), 2, + anon_sym_LPAREN, + anon_sym_RPAREN, + ACTIONS(222), 11, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_DASH_GT, + [17454] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(226), 1, + anon_sym_LPAREN, + ACTIONS(224), 3, anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(250), 14, + ACTIONS(222), 14, + anon_sym_RPAREN, + anon_sym_COLON, + anon_sym_DOT_DOT, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_DASH_GT, + [17482] = 5, + ACTIONS(3), 1, + sym__comment, + ACTIONS(226), 1, + anon_sym_LPAREN, + ACTIONS(230), 1, + anon_sym_COLON, + ACTIONS(224), 3, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(222), 13, + anon_sym_RPAREN, + anon_sym_DOT_DOT, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_DASH_GT, + [17512] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(739), 1, + anon_sym_DOT_DOT, + ACTIONS(276), 3, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(274), 14, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COLON, @@ -20788,122 +20428,98 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_DASH_GT, - [17937] = 4, + [17540] = 9, ACTIONS(3), 1, sym__comment, - ACTIONS(743), 1, - anon_sym_DASH_GT, - ACTIONS(741), 6, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_GT, - ACTIONS(739), 11, - sym_identifier, - anon_sym_none, - anon_sym_any, - anon_sym_bool, - anon_sym_collection, - anon_sym_float, - anon_sym_int, - anon_sym_map, - anon_sym_num, - anon_sym_str, - anon_sym_option, - [17965] = 9, - ACTIONS(3), 1, - sym__comment, - ACTIONS(364), 1, + ACTIONS(358), 1, anon_sym_DASH, - ACTIONS(695), 1, + ACTIONS(691), 1, anon_sym_DASH_GT, - ACTIONS(745), 1, + ACTIONS(741), 1, anon_sym_LBRACE, - STATE(207), 1, + STATE(206), 1, sym_logic_operator, + STATE(212), 1, + sym_math_operator, + ACTIONS(362), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(356), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(360), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [17577] = 9, + ACTIONS(3), 1, + sym__comment, + ACTIONS(358), 1, + anon_sym_DASH, + ACTIONS(743), 1, + anon_sym_RPAREN, + ACTIONS(745), 1, + anon_sym_DASH_GT, STATE(208), 1, sym_math_operator, - ACTIONS(368), 2, + STATE(209), 1, + sym_logic_operator, + ACTIONS(362), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(362), 4, + ACTIONS(356), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, + ACTIONS(360), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [18002] = 9, + [17614] = 9, ACTIONS(3), 1, sym__comment, - ACTIONS(364), 1, + ACTIONS(358), 1, anon_sym_DASH, + ACTIONS(691), 1, + anon_sym_DASH_GT, ACTIONS(747), 1, - anon_sym_RPAREN, - ACTIONS(749), 1, - anon_sym_DASH_GT, - STATE(210), 1, - sym_math_operator, - STATE(211), 1, + anon_sym_LBRACE, + STATE(206), 1, sym_logic_operator, - ACTIONS(368), 2, + STATE(212), 1, + sym_math_operator, + ACTIONS(362), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(362), 4, + ACTIONS(356), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, + ACTIONS(360), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [18039] = 9, + [17651] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(364), 1, - anon_sym_DASH, - ACTIONS(749), 1, + ACTIONS(745), 1, anon_sym_DASH_GT, - ACTIONS(751), 1, - anon_sym_RPAREN, - STATE(210), 1, + STATE(208), 1, sym_math_operator, - STATE(211), 1, - sym_logic_operator, - ACTIONS(368), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(362), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(366), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [18076] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(749), 1, - anon_sym_DASH_GT, - STATE(210), 1, - sym_math_operator, - STATE(211), 1, + STATE(209), 1, sym_logic_operator, ACTIONS(210), 3, anon_sym_DASH, @@ -20921,7 +20537,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [18107] = 3, + [17682] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(751), 6, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_GT, + ACTIONS(749), 11, + sym_identifier, + anon_sym_none, + anon_sym_any, + anon_sym_bool, + anon_sym_collection, + anon_sym_float, + anon_sym_int, + anon_sym_map, + anon_sym_num, + anon_sym_str, + anon_sym_option, + [17707] = 3, ACTIONS(3), 1, sym__comment, ACTIONS(755), 6, @@ -20943,42 +20581,45 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_num, anon_sym_str, anon_sym_option, - [18132] = 6, + [17732] = 9, ACTIONS(3), 1, sym__comment, - ACTIONS(749), 1, - anon_sym_DASH_GT, - STATE(210), 1, - sym_math_operator, - STATE(211), 1, - sym_logic_operator, - ACTIONS(216), 3, + ACTIONS(358), 1, anon_sym_DASH, + ACTIONS(691), 1, + anon_sym_DASH_GT, + ACTIONS(757), 1, + anon_sym_EQ_GT, + STATE(206), 1, + sym_logic_operator, + STATE(212), 1, + sym_math_operator, + ACTIONS(362), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(214), 11, - anon_sym_RPAREN, + ACTIONS(356), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, + ACTIONS(360), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [18163] = 3, + [17769] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(759), 6, + ACTIONS(761), 6, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_GT, - ACTIONS(757), 11, + ACTIONS(759), 11, sym_identifier, anon_sym_none, anon_sym_any, @@ -20990,101 +20631,73 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_num, anon_sym_str, anon_sym_option, - [18188] = 9, + [17794] = 9, ACTIONS(3), 1, sym__comment, - ACTIONS(364), 1, + ACTIONS(358), 1, anon_sym_DASH, - ACTIONS(695), 1, - anon_sym_DASH_GT, - ACTIONS(761), 1, - anon_sym_EQ_GT, - STATE(207), 1, - sym_logic_operator, - STATE(208), 1, - sym_math_operator, - ACTIONS(368), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(362), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(366), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [18225] = 9, - ACTIONS(3), 1, - sym__comment, - ACTIONS(364), 1, - anon_sym_DASH, - ACTIONS(749), 1, + ACTIONS(745), 1, anon_sym_DASH_GT, ACTIONS(763), 1, anon_sym_RPAREN, - STATE(210), 1, + STATE(208), 1, sym_math_operator, - STATE(211), 1, + STATE(209), 1, sym_logic_operator, - ACTIONS(368), 2, + ACTIONS(362), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(362), 4, + ACTIONS(356), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, + ACTIONS(360), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [18262] = 9, + [17831] = 9, ACTIONS(3), 1, sym__comment, - ACTIONS(364), 1, + ACTIONS(358), 1, anon_sym_DASH, - ACTIONS(695), 1, + ACTIONS(745), 1, anon_sym_DASH_GT, ACTIONS(765), 1, - anon_sym_LBRACE, - STATE(207), 1, - sym_logic_operator, + anon_sym_RPAREN, STATE(208), 1, sym_math_operator, - ACTIONS(368), 2, + STATE(209), 1, + sym_logic_operator, + ACTIONS(362), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(362), 4, + ACTIONS(356), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, + ACTIONS(360), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [18299] = 3, + [17868] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(769), 6, + ACTIONS(729), 6, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_GT, - ACTIONS(767), 11, + ACTIONS(727), 11, sym_identifier, anon_sym_none, anon_sym_any, @@ -21096,96 +20709,96 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_num, anon_sym_str, anon_sym_option, - [18324] = 3, + [17893] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(741), 6, - anon_sym_LPAREN, + ACTIONS(745), 1, + anon_sym_DASH_GT, + STATE(208), 1, + sym_math_operator, + STATE(209), 1, + sym_logic_operator, + ACTIONS(220), 3, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(218), 11, anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_GT, - ACTIONS(739), 11, - sym_identifier, - anon_sym_none, - anon_sym_any, - anon_sym_bool, - anon_sym_collection, - anon_sym_float, - anon_sym_int, - anon_sym_map, - anon_sym_num, - anon_sym_str, - anon_sym_option, - [18349] = 8, - ACTIONS(3), 1, - sym__comment, - ACTIONS(364), 1, - anon_sym_DASH, - ACTIONS(717), 1, - anon_sym_DASH_GT, - STATE(207), 1, - sym_logic_operator, - STATE(208), 1, - sym_math_operator, - ACTIONS(368), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(362), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [18383] = 8, + [17924] = 5, ACTIONS(3), 1, sym__comment, - ACTIONS(222), 1, - anon_sym_DASH_GT, - ACTIONS(364), 1, - anon_sym_DASH, - STATE(207), 1, - sym_logic_operator, - STATE(208), 1, - sym_math_operator, - ACTIONS(368), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(362), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(366), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [18417] = 8, - ACTIONS(3), 1, - sym__comment, - ACTIONS(774), 1, + ACTIONS(226), 1, anon_sym_LPAREN, + ACTIONS(767), 1, + anon_sym_RPAREN, + ACTIONS(224), 3, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(222), 11, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_DASH_GT, + [17952] = 8, + ACTIONS(3), 1, + sym__comment, + ACTIONS(236), 1, + anon_sym_DASH_GT, + ACTIONS(358), 1, + anon_sym_DASH, + STATE(206), 1, + sym_logic_operator, + STATE(212), 1, + sym_math_operator, + ACTIONS(362), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(356), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(360), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [17986] = 8, + ACTIONS(3), 1, + sym__comment, + ACTIONS(771), 1, + anon_sym_LPAREN, + ACTIONS(773), 1, + anon_sym_RPAREN, + ACTIONS(775), 1, + anon_sym_LBRACK, ACTIONS(777), 1, - anon_sym_RPAREN, - ACTIONS(779), 1, - anon_sym_LBRACK, - ACTIONS(782), 1, anon_sym_option, - STATE(363), 1, + STATE(371), 1, aux_sym_type_repeat1, - STATE(382), 1, + STATE(379), 1, sym_type, - ACTIONS(771), 10, + ACTIONS(769), 10, sym_identifier, anon_sym_none, anon_sym_any, @@ -21196,22 +20809,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_map, anon_sym_num, anon_sym_str, - [18451] = 8, + [18020] = 8, ACTIONS(3), 1, sym__comment, - ACTIONS(787), 1, + ACTIONS(771), 1, anon_sym_LPAREN, - ACTIONS(789), 1, - anon_sym_RPAREN, - ACTIONS(791), 1, + ACTIONS(775), 1, anon_sym_LBRACK, - ACTIONS(793), 1, + ACTIONS(777), 1, anon_sym_option, - STATE(363), 1, + ACTIONS(779), 1, + anon_sym_RPAREN, + STATE(360), 1, aux_sym_type_repeat1, - STATE(382), 1, + STATE(379), 1, sym_type, - ACTIONS(785), 10, + ACTIONS(769), 10, sym_identifier, anon_sym_none, anon_sym_any, @@ -21222,96 +20835,171 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_map, anon_sym_num, anon_sym_str, - [18485] = 8, + [18054] = 8, ACTIONS(3), 1, sym__comment, - ACTIONS(364), 1, + ACTIONS(358), 1, anon_sym_DASH, - ACTIONS(549), 1, + ACTIONS(691), 1, anon_sym_DASH_GT, - STATE(207), 1, + STATE(206), 1, sym_logic_operator, - STATE(208), 1, + STATE(212), 1, sym_math_operator, - ACTIONS(368), 2, + ACTIONS(362), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(362), 4, + ACTIONS(356), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, + ACTIONS(360), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [18519] = 8, + [18088] = 8, ACTIONS(3), 1, sym__comment, - ACTIONS(364), 1, + ACTIONS(358), 1, anon_sym_DASH, - ACTIONS(370), 1, + ACTIONS(485), 1, anon_sym_DASH_GT, - STATE(207), 1, + STATE(206), 1, sym_logic_operator, - STATE(208), 1, + STATE(212), 1, sym_math_operator, - ACTIONS(368), 2, + ACTIONS(362), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(362), 4, + ACTIONS(356), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, + ACTIONS(360), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [18553] = 8, + [18122] = 8, + ACTIONS(3), 1, + sym__comment, + ACTIONS(358), 1, + anon_sym_DASH, + ACTIONS(364), 1, + anon_sym_DASH_GT, + STATE(206), 1, + sym_logic_operator, + STATE(212), 1, + sym_math_operator, + ACTIONS(362), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(356), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(360), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [18156] = 5, + ACTIONS(3), 1, + sym__comment, + ACTIONS(226), 1, + anon_sym_LPAREN, + ACTIONS(781), 1, + anon_sym_RPAREN, + ACTIONS(224), 3, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(222), 11, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_DASH_GT, + [18184] = 8, + ACTIONS(3), 1, + sym__comment, + ACTIONS(358), 1, + anon_sym_DASH, + ACTIONS(745), 1, + anon_sym_DASH_GT, + STATE(208), 1, + sym_math_operator, + STATE(209), 1, + sym_logic_operator, + ACTIONS(362), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(356), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(360), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [18218] = 8, ACTIONS(3), 1, sym__comment, ACTIONS(212), 1, anon_sym_DASH_GT, - ACTIONS(364), 1, + ACTIONS(358), 1, anon_sym_DASH, - STATE(207), 1, + STATE(206), 1, sym_logic_operator, - STATE(208), 1, + STATE(212), 1, sym_math_operator, - ACTIONS(368), 2, + ACTIONS(362), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(362), 4, + ACTIONS(356), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, + ACTIONS(360), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [18587] = 5, + [18252] = 5, ACTIONS(3), 1, sym__comment, - ACTIONS(228), 1, + ACTIONS(226), 1, anon_sym_LPAREN, - ACTIONS(795), 1, + ACTIONS(783), 1, anon_sym_RPAREN, - ACTIONS(226), 3, + ACTIONS(224), 3, anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(224), 11, + ACTIONS(222), 11, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, @@ -21323,147 +21011,72 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_DASH_GT, - [18615] = 5, + [18280] = 8, ACTIONS(3), 1, sym__comment, - ACTIONS(228), 1, - anon_sym_LPAREN, - ACTIONS(797), 1, - anon_sym_RPAREN, - ACTIONS(226), 3, + ACTIONS(358), 1, anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(224), 11, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, + ACTIONS(671), 1, anon_sym_DASH_GT, - [18643] = 8, - ACTIONS(3), 1, - sym__comment, - ACTIONS(364), 1, - anon_sym_DASH, - ACTIONS(679), 1, - anon_sym_DASH_GT, - STATE(207), 1, + STATE(206), 1, sym_logic_operator, - STATE(208), 1, + STATE(212), 1, sym_math_operator, - ACTIONS(368), 2, + ACTIONS(362), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(362), 4, + ACTIONS(356), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, + ACTIONS(360), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [18677] = 8, + [18314] = 8, ACTIONS(3), 1, sym__comment, - ACTIONS(364), 1, + ACTIONS(358), 1, anon_sym_DASH, - ACTIONS(695), 1, + ACTIONS(745), 1, anon_sym_DASH_GT, - STATE(207), 1, + STATE(206), 1, sym_logic_operator, - STATE(208), 1, + STATE(212), 1, sym_math_operator, - ACTIONS(368), 2, + ACTIONS(362), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(362), 4, + ACTIONS(356), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, + ACTIONS(360), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [18711] = 8, + [18348] = 8, ACTIONS(3), 1, sym__comment, - ACTIONS(364), 1, - anon_sym_DASH, - ACTIONS(376), 1, - anon_sym_DASH_GT, - STATE(207), 1, - sym_logic_operator, - STATE(208), 1, - sym_math_operator, - ACTIONS(368), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(362), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(366), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [18745] = 8, - ACTIONS(3), 1, - sym__comment, - ACTIONS(364), 1, - anon_sym_DASH, - ACTIONS(749), 1, - anon_sym_DASH_GT, - STATE(207), 1, - sym_logic_operator, - STATE(208), 1, - sym_math_operator, - ACTIONS(368), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(362), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(366), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [18779] = 8, - ACTIONS(3), 1, - sym__comment, - ACTIONS(787), 1, + ACTIONS(788), 1, anon_sym_LPAREN, ACTIONS(791), 1, - anon_sym_LBRACK, - ACTIONS(793), 1, - anon_sym_option, - ACTIONS(799), 1, anon_sym_RPAREN, - STATE(364), 1, + ACTIONS(793), 1, + anon_sym_LBRACK, + ACTIONS(796), 1, + anon_sym_option, + STATE(371), 1, aux_sym_type_repeat1, - STATE(382), 1, + STATE(379), 1, sym_type, ACTIONS(785), 10, sym_identifier, @@ -21476,43 +21089,121 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_map, anon_sym_num, anon_sym_str, - [18813] = 8, + [18382] = 8, ACTIONS(3), 1, sym__comment, - ACTIONS(364), 1, + ACTIONS(358), 1, anon_sym_DASH, - ACTIONS(681), 1, + ACTIONS(370), 1, anon_sym_DASH_GT, - STATE(207), 1, + STATE(206), 1, sym_logic_operator, - STATE(208), 1, + STATE(212), 1, sym_math_operator, - ACTIONS(368), 2, + ACTIONS(362), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(362), 4, + ACTIONS(356), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, + ACTIONS(360), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [18847] = 4, + [18416] = 8, ACTIONS(3), 1, sym__comment, - ACTIONS(228), 2, + ACTIONS(358), 1, + anon_sym_DASH, + ACTIONS(677), 1, + anon_sym_DASH_GT, + STATE(206), 1, + sym_logic_operator, + STATE(212), 1, + sym_math_operator, + ACTIONS(362), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(356), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(360), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [18450] = 8, + ACTIONS(3), 1, + sym__comment, + ACTIONS(358), 1, + anon_sym_DASH, + ACTIONS(366), 1, + anon_sym_DASH_GT, + STATE(206), 1, + sym_logic_operator, + STATE(212), 1, + sym_math_operator, + ACTIONS(362), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(356), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(360), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [18484] = 8, + ACTIONS(3), 1, + sym__comment, + ACTIONS(358), 1, + anon_sym_DASH, + ACTIONS(713), 1, + anon_sym_DASH_GT, + STATE(206), 1, + sym_logic_operator, + STATE(212), 1, + sym_math_operator, + ACTIONS(362), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(356), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(360), 6, + anon_sym_EQ_EQ, + anon_sym_BANG_EQ, + anon_sym_AMP_AMP, + anon_sym_PIPE_PIPE, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + [18518] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(226), 2, anon_sym_LPAREN, anon_sym_RPAREN, - ACTIONS(226), 3, + ACTIONS(224), 3, anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(224), 11, + ACTIONS(222), 11, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, @@ -21524,44 +21215,37 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_DASH_GT, - [18873] = 8, + [18544] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(364), 1, + ACTIONS(799), 1, + anon_sym_RPAREN, + ACTIONS(272), 3, anon_sym_DASH, - ACTIONS(749), 1, - anon_sym_DASH_GT, - STATE(210), 1, - sym_math_operator, - STATE(211), 1, - sym_logic_operator, - ACTIONS(368), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(362), 4, + ACTIONS(270), 11, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(366), 6, anon_sym_EQ_EQ, anon_sym_BANG_EQ, anon_sym_AMP_AMP, anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [18907] = 5, + anon_sym_DASH_GT, + [18569] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(228), 1, - anon_sym_LPAREN, ACTIONS(801), 1, anon_sym_RPAREN, - ACTIONS(226), 3, + ACTIONS(272), 3, anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(224), 11, + ACTIONS(270), 11, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, @@ -21573,84 +21257,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_DASH_GT, - [18935] = 8, + [18594] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(364), 1, - anon_sym_DASH, - ACTIONS(372), 1, - anon_sym_DASH_GT, - STATE(207), 1, - sym_logic_operator, - STATE(208), 1, - sym_math_operator, - ACTIONS(368), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(362), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(366), 6, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - [18969] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(803), 1, - anon_sym_RPAREN, - ACTIONS(330), 3, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 11, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_DASH_GT, - [18994] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(805), 1, - anon_sym_RPAREN, - ACTIONS(330), 3, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 11, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - anon_sym_EQ_EQ, - anon_sym_BANG_EQ, - anon_sym_AMP_AMP, - anon_sym_PIPE_PIPE, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_DASH_GT, - [19019] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(811), 1, + ACTIONS(807), 1, anon_sym_COMMA, - ACTIONS(809), 3, + ACTIONS(805), 3, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACK, - ACTIONS(807), 11, + ACTIONS(803), 11, sym_identifier, anon_sym_none, anon_sym_any, @@ -21662,16 +21278,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_num, anon_sym_str, anon_sym_option, - [19044] = 4, + [18619] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(813), 1, + ACTIONS(809), 1, anon_sym_RPAREN, - ACTIONS(330), 3, + ACTIONS(272), 3, anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(328), 11, + ACTIONS(270), 11, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, @@ -21683,18 +21299,125 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_DASH_GT, - [19069] = 6, + [18644] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(787), 1, + ACTIONS(771), 1, anon_sym_LPAREN, - ACTIONS(791), 1, + ACTIONS(775), 1, anon_sym_LBRACK, - ACTIONS(793), 1, + ACTIONS(777), 1, + anon_sym_option, + STATE(468), 1, + sym_type, + ACTIONS(769), 10, + sym_identifier, + anon_sym_none, + anon_sym_any, + anon_sym_bool, + anon_sym_collection, + anon_sym_float, + anon_sym_int, + anon_sym_map, + anon_sym_num, + anon_sym_str, + [18672] = 6, + ACTIONS(3), 1, + sym__comment, + ACTIONS(771), 1, + anon_sym_LPAREN, + ACTIONS(775), 1, + anon_sym_LBRACK, + ACTIONS(777), 1, + anon_sym_option, + STATE(466), 1, + sym_type, + ACTIONS(769), 10, + sym_identifier, + anon_sym_none, + anon_sym_any, + anon_sym_bool, + anon_sym_collection, + anon_sym_float, + anon_sym_int, + anon_sym_map, + anon_sym_num, + anon_sym_str, + [18700] = 6, + ACTIONS(3), 1, + sym__comment, + ACTIONS(771), 1, + anon_sym_LPAREN, + ACTIONS(775), 1, + anon_sym_LBRACK, + ACTIONS(777), 1, + anon_sym_option, + STATE(351), 1, + sym_type, + ACTIONS(769), 10, + sym_identifier, + anon_sym_none, + anon_sym_any, + anon_sym_bool, + anon_sym_collection, + anon_sym_float, + anon_sym_int, + anon_sym_map, + anon_sym_num, + anon_sym_str, + [18728] = 6, + ACTIONS(3), 1, + sym__comment, + ACTIONS(771), 1, + anon_sym_LPAREN, + ACTIONS(775), 1, + anon_sym_LBRACK, + ACTIONS(777), 1, + anon_sym_option, + STATE(465), 1, + sym_type, + ACTIONS(769), 10, + sym_identifier, + anon_sym_none, + anon_sym_any, + anon_sym_bool, + anon_sym_collection, + anon_sym_float, + anon_sym_int, + anon_sym_map, + anon_sym_num, + anon_sym_str, + [18756] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(791), 3, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_LBRACK, + ACTIONS(811), 11, + sym_identifier, + anon_sym_none, + anon_sym_any, + anon_sym_bool, + anon_sym_collection, + anon_sym_float, + anon_sym_int, + anon_sym_map, + anon_sym_num, + anon_sym_str, + anon_sym_option, + [18778] = 6, + ACTIONS(3), 1, + sym__comment, + ACTIONS(771), 1, + anon_sym_LPAREN, + ACTIONS(775), 1, + anon_sym_LBRACK, + ACTIONS(777), 1, anon_sym_option, STATE(353), 1, sym_type, - ACTIONS(785), 10, + ACTIONS(769), 10, sym_identifier, anon_sym_none, anon_sym_any, @@ -21705,138 +21428,49 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_map, anon_sym_num, anon_sym_str, - [19097] = 6, + [18806] = 7, ACTIONS(3), 1, sym__comment, - ACTIONS(787), 1, - anon_sym_LPAREN, - ACTIONS(791), 1, - anon_sym_LBRACK, - ACTIONS(793), 1, - anon_sym_option, - STATE(479), 1, - sym_type, - ACTIONS(785), 10, + ACTIONS(595), 1, sym_identifier, - anon_sym_none, - anon_sym_any, - anon_sym_bool, - anon_sym_collection, - anon_sym_float, - anon_sym_int, - anon_sym_map, - anon_sym_num, - anon_sym_str, - [19125] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(787), 1, - anon_sym_LPAREN, - ACTIONS(791), 1, - anon_sym_LBRACK, - ACTIONS(793), 1, - anon_sym_option, - STATE(355), 1, - sym_type, - ACTIONS(785), 10, - sym_identifier, - anon_sym_none, - anon_sym_any, - anon_sym_bool, - anon_sym_collection, - anon_sym_float, - anon_sym_int, - anon_sym_map, - anon_sym_num, - anon_sym_str, - [19153] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(787), 1, - anon_sym_LPAREN, - ACTIONS(791), 1, - anon_sym_LBRACK, - ACTIONS(793), 1, - anon_sym_option, - STATE(455), 1, - sym_type, - ACTIONS(785), 10, - sym_identifier, - anon_sym_none, - anon_sym_any, - anon_sym_bool, - anon_sym_collection, - anon_sym_float, - anon_sym_int, - anon_sym_map, - anon_sym_num, - anon_sym_str, - [19181] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(777), 3, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_LBRACK, - ACTIONS(815), 11, - sym_identifier, - anon_sym_none, - anon_sym_any, - anon_sym_bool, - anon_sym_collection, - anon_sym_float, - anon_sym_int, - anon_sym_map, - anon_sym_num, - anon_sym_str, - anon_sym_option, - [19203] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(787), 1, - anon_sym_LPAREN, - ACTIONS(791), 1, - anon_sym_LBRACK, - ACTIONS(793), 1, - anon_sym_option, - STATE(469), 1, - sym_type, - ACTIONS(785), 10, - sym_identifier, - anon_sym_none, - anon_sym_any, - anon_sym_bool, - anon_sym_collection, - anon_sym_float, - anon_sym_int, - anon_sym_map, - anon_sym_num, - anon_sym_str, - [19231] = 7, - ACTIONS(3), 1, - sym__comment, - ACTIONS(599), 1, - sym_identifier, - ACTIONS(668), 1, + ACTIONS(656), 1, anon_sym_elseif, - ACTIONS(817), 1, + ACTIONS(813), 1, + anon_sym_else, + STATE(308), 1, + sym_else, + STATE(254), 2, + sym_else_if, + aux_sym_if_else_repeat1, + ACTIONS(593), 3, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_RBRACE, + [18831] = 7, + ACTIONS(3), 1, + sym__comment, + ACTIONS(587), 1, + sym_identifier, + ACTIONS(656), 1, + anon_sym_elseif, + ACTIONS(813), 1, anon_sym_else, STATE(307), 1, sym_else, - STATE(392), 2, + STATE(387), 2, sym_else_if, aux_sym_if_else_repeat1, - ACTIONS(597), 3, + ACTIONS(585), 3, anon_sym_SEMI, anon_sym_COMMA, anon_sym_RBRACE, - [19256] = 3, + [18856] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(819), 2, + ACTIONS(815), 2, anon_sym_async, sym_identifier, - ACTIONS(821), 7, + ACTIONS(817), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_LBRACE, @@ -21844,1662 +21478,1639 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, - [19273] = 7, + [18873] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(591), 1, + ACTIONS(819), 1, + anon_sym_EQ, + STATE(34), 1, + sym_assignment_operator, + ACTIONS(234), 2, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + [18887] = 3, + ACTIONS(3), 1, + sym__comment, + STATE(32), 1, + sym_assignment_operator, + ACTIONS(234), 3, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + [18899] = 3, + ACTIONS(3), 1, + sym__comment, + STATE(37), 1, + sym_assignment_operator, + ACTIONS(234), 3, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + [18911] = 3, + ACTIONS(3), 1, + sym__comment, + STATE(34), 1, + sym_assignment_operator, + ACTIONS(234), 3, + anon_sym_EQ, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + [18923] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(821), 1, sym_identifier, - ACTIONS(668), 1, - anon_sym_elseif, - ACTIONS(817), 1, - anon_sym_else, - STATE(312), 1, - sym_else, - STATE(256), 2, - sym_else_if, - aux_sym_if_else_repeat1, - ACTIONS(589), 3, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RBRACE, - [19298] = 3, - ACTIONS(3), 1, - sym__comment, - STATE(44), 1, - sym_assignment_operator, - ACTIONS(236), 3, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - [19310] = 4, - ACTIONS(3), 1, - sym__comment, ACTIONS(823), 1, - anon_sym_EQ, - STATE(43), 1, - sym_assignment_operator, - ACTIONS(236), 2, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - [19324] = 3, - ACTIONS(3), 1, - sym__comment, - STATE(38), 1, - sym_assignment_operator, - ACTIONS(236), 3, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - [19336] = 3, - ACTIONS(3), 1, - sym__comment, - STATE(43), 1, - sym_assignment_operator, - ACTIONS(236), 3, - anon_sym_EQ, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - [19348] = 4, + anon_sym_RBRACE, + STATE(430), 1, + aux_sym_map_repeat1, + [18936] = 4, ACTIONS(3), 1, sym__comment, ACTIONS(825), 1, - sym_identifier, + anon_sym_EQ, ACTIONS(827), 1, - anon_sym_RBRACE, - STATE(434), 1, - aux_sym_map_repeat1, - [19361] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(709), 1, - anon_sym_async, - ACTIONS(711), 1, - anon_sym_LBRACE, - STATE(301), 1, - sym_block, - [19374] = 4, + anon_sym_LT, + STATE(480), 1, + sym_type_specification, + [18949] = 4, ACTIONS(3), 1, sym__comment, ACTIONS(829), 1, sym_identifier, ACTIONS(831), 1, anon_sym_RBRACE, - STATE(422), 1, + STATE(406), 1, aux_sym_new_repeat1, - [19387] = 4, + [18962] = 4, ACTIONS(3), 1, sym__comment, ACTIONS(833), 1, sym_identifier, - ACTIONS(835), 1, + ACTIONS(836), 1, anon_sym_RBRACE, - STATE(431), 1, + STATE(397), 1, aux_sym_structure_repeat1, - [19400] = 4, + [18975] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(825), 1, + ACTIONS(838), 1, sym_identifier, - ACTIONS(837), 1, + ACTIONS(840), 1, anon_sym_RBRACE, - STATE(434), 1, - aux_sym_map_repeat1, - [19413] = 3, + STATE(397), 1, + aux_sym_structure_repeat1, + [18988] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(841), 1, + ACTIONS(723), 1, + anon_sym_async, + ACTIONS(725), 1, + anon_sym_LBRACE, + STATE(271), 1, + sym_block, + [19001] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(844), 1, anon_sym_COMMA, - ACTIONS(839), 2, + ACTIONS(842), 2, anon_sym_RBRACE, sym_identifier, - [19424] = 4, + [19012] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(709), 1, - anon_sym_async, - ACTIONS(711), 1, - anon_sym_LBRACE, - STATE(273), 1, - sym_block, - [19437] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(843), 1, - anon_sym_EQ, - ACTIONS(845), 1, - anon_sym_LT, - STATE(468), 1, - sym_type_specification, - [19450] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(713), 1, - anon_sym_async, - ACTIONS(715), 1, - anon_sym_LBRACE, - STATE(74), 1, - sym_block, - [19463] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(849), 1, - anon_sym_EQ, - ACTIONS(847), 2, - anon_sym_RBRACE, + ACTIONS(838), 1, sym_identifier, - [19474] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(713), 1, - anon_sym_async, - ACTIONS(715), 1, - anon_sym_LBRACE, - STATE(57), 1, - sym_block, - [19487] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(833), 1, - sym_identifier, - ACTIONS(851), 1, + ACTIONS(846), 1, anon_sym_RBRACE, - STATE(418), 1, + STATE(397), 1, aux_sym_structure_repeat1, - [19500] = 4, + [19025] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(719), 1, - anon_sym_async, - ACTIONS(721), 1, - anon_sym_LBRACE, - STATE(301), 1, - sym_block, - [19513] = 4, + ACTIONS(827), 1, + anon_sym_LT, + ACTIONS(848), 1, + anon_sym_EQ, + STATE(453), 1, + sym_type_specification, + [19038] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(719), 1, - anon_sym_async, - ACTIONS(721), 1, - anon_sym_LBRACE, - STATE(131), 1, - sym_block, - [19526] = 4, + ACTIONS(821), 1, + sym_identifier, + ACTIONS(850), 1, + anon_sym_RBRACE, + STATE(430), 1, + aux_sym_map_repeat1, + [19051] = 4, ACTIONS(3), 1, sym__comment, ACTIONS(829), 1, sym_identifier, - ACTIONS(853), 1, + ACTIONS(852), 1, anon_sym_RBRACE, - STATE(422), 1, + STATE(414), 1, aux_sym_new_repeat1, - [19539] = 4, + [19064] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(855), 1, + ACTIONS(705), 1, + anon_sym_async, + ACTIONS(707), 1, + anon_sym_LBRACE, + STATE(83), 1, + sym_block, + [19077] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(854), 1, sym_identifier, ACTIONS(857), 1, - anon_sym_RPAREN, - STATE(430), 1, - aux_sym_function_repeat1, - [19552] = 4, + anon_sym_RBRACE, + STATE(406), 1, + aux_sym_new_repeat1, + [19090] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(833), 1, + ACTIONS(705), 1, + anon_sym_async, + ACTIONS(707), 1, + anon_sym_LBRACE, + STATE(55), 1, + sym_block, + [19103] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(715), 1, + anon_sym_async, + ACTIONS(717), 1, + anon_sym_LBRACE, + STATE(110), 1, + sym_block, + [19116] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(829), 1, sym_identifier, ACTIONS(859), 1, anon_sym_RBRACE, - STATE(400), 1, - aux_sym_structure_repeat1, - [19565] = 4, + STATE(406), 1, + aux_sym_new_repeat1, + [19129] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(713), 1, - anon_sym_async, - ACTIONS(715), 1, - anon_sym_LBRACE, - STATE(253), 1, - sym_block, - [19578] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(709), 1, - anon_sym_async, - ACTIONS(711), 1, - anon_sym_LBRACE, - STATE(282), 1, - sym_block, - [19591] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(833), 1, + ACTIONS(838), 1, sym_identifier, ACTIONS(861), 1, anon_sym_RBRACE, - STATE(421), 1, + STATE(401), 1, aux_sym_structure_repeat1, - [19604] = 4, + [19142] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(855), 1, + ACTIONS(705), 1, + anon_sym_async, + ACTIONS(707), 1, + anon_sym_LBRACE, + STATE(244), 1, + sym_block, + [19155] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(821), 1, sym_identifier, ACTIONS(863), 1, - anon_sym_RPAREN, + anon_sym_RBRACE, STATE(430), 1, - aux_sym_function_repeat1, - [19617] = 4, + aux_sym_map_repeat1, + [19168] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(833), 1, - sym_identifier, ACTIONS(865), 1, - anon_sym_RBRACE, - STATE(431), 1, - aux_sym_structure_repeat1, - [19630] = 4, + sym_identifier, + ACTIONS(868), 1, + anon_sym_RPAREN, + STATE(413), 1, + aux_sym_function_repeat1, + [19181] = 4, ACTIONS(3), 1, sym__comment, ACTIONS(829), 1, sym_identifier, - ACTIONS(867), 1, + ACTIONS(870), 1, anon_sym_RBRACE, - STATE(427), 1, + STATE(406), 1, aux_sym_new_repeat1, - [19643] = 4, + [19194] = 4, ACTIONS(3), 1, sym__comment, ACTIONS(829), 1, sym_identifier, - ACTIONS(869), 1, + ACTIONS(872), 1, anon_sym_RBRACE, - STATE(411), 1, + STATE(396), 1, aux_sym_new_repeat1, - [19656] = 4, + [19207] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(833), 1, + ACTIONS(838), 1, sym_identifier, - ACTIONS(871), 1, + ACTIONS(874), 1, anon_sym_RBRACE, - STATE(431), 1, + STATE(398), 1, aux_sym_structure_repeat1, - [19669] = 4, + [19220] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(873), 1, + ACTIONS(829), 1, sym_identifier, ACTIONS(876), 1, anon_sym_RBRACE, - STATE(422), 1, + STATE(409), 1, aux_sym_new_repeat1, - [19682] = 4, + [19233] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(825), 1, + ACTIONS(838), 1, sym_identifier, ACTIONS(878), 1, anon_sym_RBRACE, - STATE(434), 1, - aux_sym_map_repeat1, - [19695] = 4, + STATE(397), 1, + aux_sym_structure_repeat1, + [19246] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(829), 1, + ACTIONS(715), 1, + anon_sym_async, + ACTIONS(717), 1, + anon_sym_LBRACE, + STATE(299), 1, + sym_block, + [19259] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(838), 1, sym_identifier, ACTIONS(880), 1, anon_sym_RBRACE, - STATE(399), 1, - aux_sym_new_repeat1, - [19708] = 4, + STATE(418), 1, + aux_sym_structure_repeat1, + [19272] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(845), 1, - anon_sym_LT, ACTIONS(882), 1, - anon_sym_EQ, - STATE(471), 1, - sym_type_specification, - [19721] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(855), 1, - sym_identifier, - ACTIONS(884), 1, + anon_sym_COMMA, + ACTIONS(868), 2, anon_sym_RPAREN, - STATE(430), 1, - aux_sym_function_repeat1, - [19734] = 4, + sym_identifier, + [19283] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(829), 1, + ACTIONS(884), 1, sym_identifier, ACTIONS(886), 1, - anon_sym_RBRACE, - STATE(422), 1, - aux_sym_new_repeat1, - [19747] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(845), 1, - anon_sym_LT, - ACTIONS(888), 1, - anon_sym_EQ, - STATE(406), 1, - sym_type_specification, - [19760] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(892), 1, - anon_sym_COMMA, - ACTIONS(890), 2, anon_sym_RPAREN, - sym_identifier, - [19771] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(890), 1, - anon_sym_RPAREN, - ACTIONS(894), 1, - sym_identifier, - STATE(430), 1, + STATE(413), 1, aux_sym_function_repeat1, - [19784] = 4, + [19296] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(847), 1, - anon_sym_RBRACE, - ACTIONS(897), 1, + ACTIONS(884), 1, sym_identifier, + ACTIONS(888), 1, + anon_sym_RPAREN, + STATE(413), 1, + aux_sym_function_repeat1, + [19309] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(827), 1, + anon_sym_LT, + ACTIONS(890), 1, + anon_sym_EQ, STATE(431), 1, - aux_sym_structure_repeat1, - [19797] = 3, + sym_type_specification, + [19322] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(902), 1, - anon_sym_COMMA, - ACTIONS(900), 2, - anon_sym_RBRACE, - sym_identifier, - [19808] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(719), 1, + ACTIONS(723), 1, anon_sym_async, - ACTIONS(721), 1, + ACTIONS(725), 1, anon_sym_LBRACE, - STATE(124), 1, + STATE(299), 1, sym_block, - [19821] = 4, + [19335] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(904), 1, + ACTIONS(884), 1, sym_identifier, - ACTIONS(907), 1, + ACTIONS(892), 1, + anon_sym_RPAREN, + STATE(413), 1, + aux_sym_function_repeat1, + [19348] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(723), 1, + anon_sym_async, + ACTIONS(725), 1, + anon_sym_LBRACE, + STATE(280), 1, + sym_block, + [19361] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(896), 1, + anon_sym_COMMA, + ACTIONS(894), 2, anon_sym_RBRACE, - STATE(434), 1, + sym_identifier, + [19372] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(715), 1, + anon_sym_async, + ACTIONS(717), 1, + anon_sym_LBRACE, + STATE(115), 1, + sym_block, + [19385] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(898), 1, + sym_identifier, + ACTIONS(901), 1, + anon_sym_RBRACE, + STATE(430), 1, aux_sym_map_repeat1, - [19834] = 2, + [19398] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(909), 2, + ACTIONS(903), 1, + anon_sym_EQ, + ACTIONS(836), 2, anon_sym_RBRACE, sym_identifier, - [19842] = 3, + [19409] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(845), 1, + ACTIONS(821), 1, + sym_identifier, + STATE(412), 1, + aux_sym_map_repeat1, + [19419] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(894), 2, + anon_sym_RBRACE, + sym_identifier, + [19427] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(905), 2, + anon_sym_RBRACE, + sym_identifier, + [19435] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(298), 1, + anon_sym_LPAREN, + ACTIONS(907), 1, + anon_sym_RPAREN, + [19445] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(827), 1, + anon_sym_LT, + STATE(421), 1, + sym_type_specification, + [19455] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(827), 1, anon_sym_LT, STATE(405), 1, sym_type_specification, - [19852] = 2, + [19465] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(298), 1, + anon_sym_LPAREN, + ACTIONS(909), 1, + anon_sym_RPAREN, + [19475] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(827), 1, + anon_sym_LT, + STATE(427), 1, + sym_type_specification, + [19485] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(911), 2, anon_sym_RBRACE, sym_identifier, - [19860] = 3, + [19493] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(825), 1, + ACTIONS(821), 1, sym_identifier, - STATE(401), 1, + STATE(403), 1, aux_sym_map_repeat1, - [19870] = 3, + [19503] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(845), 1, - anon_sym_LT, - STATE(429), 1, - sym_type_specification, - [19880] = 3, + ACTIONS(298), 1, + anon_sym_LPAREN, + ACTIONS(913), 1, + anon_sym_RPAREN, + [19513] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(845), 1, + ACTIONS(827), 1, anon_sym_LT, STATE(407), 1, sym_type_specification, - [19890] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(845), 1, - anon_sym_LT, - STATE(433), 1, - sym_type_specification, - [19900] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(913), 2, - anon_sym_RPAREN, - sym_identifier, - [19908] = 2, + [19523] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(915), 2, anon_sym_RBRACE, sym_identifier, - [19916] = 3, + [19531] = 2, ACTIONS(3), 1, sym__comment, - ACTIONS(825), 1, + ACTIONS(917), 2, + anon_sym_RBRACE, sym_identifier, - STATE(423), 1, + [19539] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(919), 2, + anon_sym_RPAREN, + sym_identifier, + [19547] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(827), 1, + anon_sym_LT, + STATE(429), 1, + sym_type_specification, + [19557] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(921), 2, + anon_sym_RBRACE, + sym_identifier, + [19565] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(827), 1, + anon_sym_LT, + STATE(399), 1, + sym_type_specification, + [19575] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(827), 1, + anon_sym_LT, + STATE(408), 1, + sym_type_specification, + [19585] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(821), 1, + sym_identifier, + STATE(394), 1, aux_sym_map_repeat1, - [19926] = 3, + [19595] = 2, ACTIONS(3), 1, sym__comment, - ACTIONS(845), 1, - anon_sym_LT, - STATE(415), 1, - sym_type_specification, - [19936] = 3, + ACTIONS(923), 1, + anon_sym_COLON, + [19602] = 2, ACTIONS(3), 1, sym__comment, - ACTIONS(300), 1, - anon_sym_LPAREN, - ACTIONS(917), 1, - anon_sym_RPAREN, - [19946] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(300), 1, - anon_sym_LPAREN, - ACTIONS(919), 1, - anon_sym_RPAREN, - [19956] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(300), 1, - anon_sym_LPAREN, - ACTIONS(921), 1, - anon_sym_RPAREN, - [19966] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(900), 2, - anon_sym_RBRACE, - sym_identifier, - [19974] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(825), 1, - sym_identifier, - STATE(397), 1, - aux_sym_map_repeat1, - [19984] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(923), 2, - anon_sym_RBRACE, - sym_identifier, - [19992] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(925), 2, - anon_sym_RBRACE, - sym_identifier, - [20000] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(845), 1, - anon_sym_LT, - STATE(410), 1, - sym_type_specification, - [20010] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(845), 1, - anon_sym_LT, - STATE(403), 1, - sym_type_specification, - [20020] = 2, + ACTIONS(925), 1, + anon_sym_EQ, + [19609] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(927), 1, - anon_sym_RPAREN, - [20027] = 2, + anon_sym_LBRACE, + [19616] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(929), 1, anon_sym_LBRACE, - [20034] = 2, + [19623] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(931), 1, anon_sym_LBRACE, - [20041] = 2, + [19630] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(933), 1, - anon_sym_LBRACE, - [20048] = 2, + anon_sym_LPAREN, + [19637] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(935), 1, - anon_sym_LBRACE, - [20055] = 2, + anon_sym_LPAREN, + [19644] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(937), 1, - anon_sym_LPAREN, - [20062] = 2, + anon_sym_in, + [19651] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(939), 1, - anon_sym_LPAREN, - [20069] = 2, + anon_sym_COLON, + [19658] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(941), 1, anon_sym_LBRACE, - [20076] = 2, + [19665] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(943), 1, - anon_sym_in, - [20083] = 2, + anon_sym_LBRACE, + [19672] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(945), 1, - anon_sym_LBRACE, - [20090] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(761), 1, - anon_sym_EQ_GT, - [20097] = 2, + anon_sym_in, + [19679] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(947), 1, anon_sym_COLON, - [20104] = 2, + [19686] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(949), 1, - anon_sym_COLON, - [20111] = 2, + anon_sym_RPAREN, + [19693] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(951), 1, - anon_sym_EQ, - [20118] = 2, + anon_sym_RBRACK, + [19700] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(953), 1, - anon_sym_RBRACK, - [20125] = 2, + anon_sym_LPAREN, + [19707] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(955), 1, - anon_sym_COLON, - [20132] = 2, + anon_sym_GT, + [19714] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(957), 1, - anon_sym_EQ, - [20139] = 2, + anon_sym_in, + [19721] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(959), 1, - anon_sym_LPAREN, - [20146] = 2, + anon_sym_LBRACE, + [19728] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(961), 1, anon_sym_LPAREN, - [20153] = 2, + [19735] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(963), 1, anon_sym_LBRACE, - [20160] = 2, + [19742] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(965), 1, - anon_sym_COLON, - [20167] = 2, + anon_sym_LBRACE, + [19749] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(967), 1, anon_sym_LBRACE, - [20174] = 2, + [19756] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(969), 1, - anon_sym_in, - [20181] = 2, + anon_sym_LBRACE, + [19763] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(971), 1, - anon_sym_LBRACE, - [20188] = 2, + anon_sym_COLON, + [19770] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(973), 1, - anon_sym_GT, - [20195] = 2, + sym_identifier, + [19777] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(757), 1, + anon_sym_EQ_GT, + [19784] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(975), 1, sym_identifier, - [20202] = 2, + [19791] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(977), 1, - anon_sym_COLON, - [20209] = 2, + anon_sym_EQ, + [19798] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(979), 1, - sym_identifier, - [20216] = 2, + anon_sym_LPAREN, + [19805] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(981), 1, - anon_sym_LBRACE, - [20223] = 2, + anon_sym_COLON, + [19812] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(983), 1, - anon_sym_LPAREN, - [20230] = 2, + ts_builtin_sym_end, + [19819] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(985), 1, - anon_sym_COLON, - [20237] = 2, + sym_identifier, + [19826] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(987), 1, - ts_builtin_sym_end, - [20244] = 2, + anon_sym_COLON, + [19833] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(989), 1, - sym_identifier, - [20251] = 2, + anon_sym_LPAREN, + [19840] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(991), 1, - anon_sym_in, - [20258] = 2, + sym_identifier, + [19847] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(993), 1, - anon_sym_LPAREN, - [20265] = 2, + anon_sym_COLON, + [19854] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(995), 1, sym_identifier, - [20272] = 2, + [19861] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(997), 1, - anon_sym_COLON, - [20279] = 2, + anon_sym_LPAREN, + [19868] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(999), 1, sym_identifier, - [20286] = 2, + [19875] = 2, ACTIONS(3), 1, sym__comment, ACTIONS(1001), 1, - anon_sym_LPAREN, - [20293] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(1003), 1, - sym_identifier, - [20300] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(1005), 1, anon_sym_LBRACE, }; static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(48)] = 0, [SMALL_STATE(49)] = 67, - [SMALL_STATE(50)] = 134, + [SMALL_STATE(50)] = 132, [SMALL_STATE(51)] = 199, - [SMALL_STATE(52)] = 265, - [SMALL_STATE(53)] = 329, - [SMALL_STATE(54)] = 395, + [SMALL_STATE(52)] = 273, + [SMALL_STATE(53)] = 339, + [SMALL_STATE(54)] = 405, [SMALL_STATE(55)] = 469, [SMALL_STATE(56)] = 528, [SMALL_STATE(57)] = 587, [SMALL_STATE(58)] = 646, - [SMALL_STATE(59)] = 707, - [SMALL_STATE(60)] = 766, - [SMALL_STATE(61)] = 825, - [SMALL_STATE(62)] = 884, - [SMALL_STATE(63)] = 943, - [SMALL_STATE(64)] = 1002, - [SMALL_STATE(65)] = 1061, - [SMALL_STATE(66)] = 1120, - [SMALL_STATE(67)] = 1193, - [SMALL_STATE(68)] = 1252, - [SMALL_STATE(69)] = 1311, - [SMALL_STATE(70)] = 1370, - [SMALL_STATE(71)] = 1429, - [SMALL_STATE(72)] = 1490, - [SMALL_STATE(73)] = 1549, - [SMALL_STATE(74)] = 1608, - [SMALL_STATE(75)] = 1667, - [SMALL_STATE(76)] = 1736, - [SMALL_STATE(77)] = 1795, - [SMALL_STATE(78)] = 1854, - [SMALL_STATE(79)] = 1913, - [SMALL_STATE(80)] = 1972, - [SMALL_STATE(81)] = 2035, - [SMALL_STATE(82)] = 2094, - [SMALL_STATE(83)] = 2153, - [SMALL_STATE(84)] = 2212, - [SMALL_STATE(85)] = 2271, - [SMALL_STATE(86)] = 2330, - [SMALL_STATE(87)] = 2389, + [SMALL_STATE(59)] = 705, + [SMALL_STATE(60)] = 764, + [SMALL_STATE(61)] = 823, + [SMALL_STATE(62)] = 882, + [SMALL_STATE(63)] = 941, + [SMALL_STATE(64)] = 1000, + [SMALL_STATE(65)] = 1059, + [SMALL_STATE(66)] = 1118, + [SMALL_STATE(67)] = 1177, + [SMALL_STATE(68)] = 1236, + [SMALL_STATE(69)] = 1295, + [SMALL_STATE(70)] = 1356, + [SMALL_STATE(71)] = 1415, + [SMALL_STATE(72)] = 1474, + [SMALL_STATE(73)] = 1547, + [SMALL_STATE(74)] = 1606, + [SMALL_STATE(75)] = 1665, + [SMALL_STATE(76)] = 1726, + [SMALL_STATE(77)] = 1785, + [SMALL_STATE(78)] = 1844, + [SMALL_STATE(79)] = 1903, + [SMALL_STATE(80)] = 1962, + [SMALL_STATE(81)] = 2021, + [SMALL_STATE(82)] = 2080, + [SMALL_STATE(83)] = 2139, + [SMALL_STATE(84)] = 2198, + [SMALL_STATE(85)] = 2267, + [SMALL_STATE(86)] = 2326, + [SMALL_STATE(87)] = 2385, [SMALL_STATE(88)] = 2448, - [SMALL_STATE(89)] = 2507, - [SMALL_STATE(90)] = 2579, - [SMALL_STATE(91)] = 2641, - [SMALL_STATE(92)] = 2703, - [SMALL_STATE(93)] = 2765, - [SMALL_STATE(94)] = 2835, - [SMALL_STATE(95)] = 2895, - [SMALL_STATE(96)] = 2957, + [SMALL_STATE(89)] = 2518, + [SMALL_STATE(90)] = 2578, + [SMALL_STATE(91)] = 2640, + [SMALL_STATE(92)] = 2702, + [SMALL_STATE(93)] = 2774, + [SMALL_STATE(94)] = 2836, + [SMALL_STATE(95)] = 2898, + [SMALL_STATE(96)] = 2959, [SMALL_STATE(97)] = 3016, - [SMALL_STATE(98)] = 3073, - [SMALL_STATE(99)] = 3134, - [SMALL_STATE(100)] = 3195, - [SMALL_STATE(101)] = 3249, - [SMALL_STATE(102)] = 3303, - [SMALL_STATE(103)] = 3357, - [SMALL_STATE(104)] = 3411, - [SMALL_STATE(105)] = 3465, - [SMALL_STATE(106)] = 3519, - [SMALL_STATE(107)] = 3573, - [SMALL_STATE(108)] = 3631, - [SMALL_STATE(109)] = 3685, - [SMALL_STATE(110)] = 3739, - [SMALL_STATE(111)] = 3793, - [SMALL_STATE(112)] = 3849, - [SMALL_STATE(113)] = 3903, - [SMALL_STATE(114)] = 3957, - [SMALL_STATE(115)] = 4011, - [SMALL_STATE(116)] = 4065, - [SMALL_STATE(117)] = 4119, - [SMALL_STATE(118)] = 4173, - [SMALL_STATE(119)] = 4227, - [SMALL_STATE(120)] = 4281, - [SMALL_STATE(121)] = 4335, - [SMALL_STATE(122)] = 4389, - [SMALL_STATE(123)] = 4443, - [SMALL_STATE(124)] = 4497, - [SMALL_STATE(125)] = 4551, - [SMALL_STATE(126)] = 4605, - [SMALL_STATE(127)] = 4659, - [SMALL_STATE(128)] = 4713, - [SMALL_STATE(129)] = 4769, - [SMALL_STATE(130)] = 4823, - [SMALL_STATE(131)] = 4877, - [SMALL_STATE(132)] = 4931, - [SMALL_STATE(133)] = 5028, - [SMALL_STATE(134)] = 5125, - [SMALL_STATE(135)] = 5222, - [SMALL_STATE(136)] = 5289, - [SMALL_STATE(137)] = 5383, - [SMALL_STATE(138)] = 5445, - [SMALL_STATE(139)] = 5541, - [SMALL_STATE(140)] = 5635, - [SMALL_STATE(141)] = 5729, - [SMALL_STATE(142)] = 5823, - [SMALL_STATE(143)] = 5917, - [SMALL_STATE(144)] = 6013, - [SMALL_STATE(145)] = 6107, - [SMALL_STATE(146)] = 6201, - [SMALL_STATE(147)] = 6295, - [SMALL_STATE(148)] = 6391, - [SMALL_STATE(149)] = 6485, - [SMALL_STATE(150)] = 6579, - [SMALL_STATE(151)] = 6673, - [SMALL_STATE(152)] = 6769, - [SMALL_STATE(153)] = 6863, - [SMALL_STATE(154)] = 6959, - [SMALL_STATE(155)] = 7053, - [SMALL_STATE(156)] = 7147, - [SMALL_STATE(157)] = 7243, - [SMALL_STATE(158)] = 7339, - [SMALL_STATE(159)] = 7433, - [SMALL_STATE(160)] = 7527, - [SMALL_STATE(161)] = 7623, - [SMALL_STATE(162)] = 7719, - [SMALL_STATE(163)] = 7813, - [SMALL_STATE(164)] = 7907, - [SMALL_STATE(165)] = 8001, - [SMALL_STATE(166)] = 8058, - [SMALL_STATE(167)] = 8115, - [SMALL_STATE(168)] = 8203, - [SMALL_STATE(169)] = 8289, - [SMALL_STATE(170)] = 8377, - [SMALL_STATE(171)] = 8461, - [SMALL_STATE(172)] = 8549, - [SMALL_STATE(173)] = 8637, - [SMALL_STATE(174)] = 8725, - [SMALL_STATE(175)] = 8813, - [SMALL_STATE(176)] = 8901, - [SMALL_STATE(177)] = 8989, - [SMALL_STATE(178)] = 9077, - [SMALL_STATE(179)] = 9165, - [SMALL_STATE(180)] = 9253, - [SMALL_STATE(181)] = 9341, - [SMALL_STATE(182)] = 9429, - [SMALL_STATE(183)] = 9517, - [SMALL_STATE(184)] = 9605, - [SMALL_STATE(185)] = 9693, - [SMALL_STATE(186)] = 9777, - [SMALL_STATE(187)] = 9865, - [SMALL_STATE(188)] = 9953, - [SMALL_STATE(189)] = 10041, - [SMALL_STATE(190)] = 10129, - [SMALL_STATE(191)] = 10217, - [SMALL_STATE(192)] = 10269, - [SMALL_STATE(193)] = 10353, - [SMALL_STATE(194)] = 10437, - [SMALL_STATE(195)] = 10525, - [SMALL_STATE(196)] = 10613, - [SMALL_STATE(197)] = 10701, - [SMALL_STATE(198)] = 10787, - [SMALL_STATE(199)] = 10873, - [SMALL_STATE(200)] = 10961, - [SMALL_STATE(201)] = 11049, - [SMALL_STATE(202)] = 11137, - [SMALL_STATE(203)] = 11225, - [SMALL_STATE(204)] = 11313, - [SMALL_STATE(205)] = 11401, - [SMALL_STATE(206)] = 11489, - [SMALL_STATE(207)] = 11577, - [SMALL_STATE(208)] = 11665, - [SMALL_STATE(209)] = 11753, - [SMALL_STATE(210)] = 11839, - [SMALL_STATE(211)] = 11927, - [SMALL_STATE(212)] = 12015, - [SMALL_STATE(213)] = 12099, - [SMALL_STATE(214)] = 12187, - [SMALL_STATE(215)] = 12275, - [SMALL_STATE(216)] = 12359, - [SMALL_STATE(217)] = 12443, - [SMALL_STATE(218)] = 12531, - [SMALL_STATE(219)] = 12619, - [SMALL_STATE(220)] = 12707, - [SMALL_STATE(221)] = 12795, - [SMALL_STATE(222)] = 12883, - [SMALL_STATE(223)] = 12946, - [SMALL_STATE(224)] = 13011, - [SMALL_STATE(225)] = 13075, - [SMALL_STATE(226)] = 13139, - [SMALL_STATE(227)] = 13192, - [SMALL_STATE(228)] = 13245, - [SMALL_STATE(229)] = 13293, - [SMALL_STATE(230)] = 13335, - [SMALL_STATE(231)] = 13377, - [SMALL_STATE(232)] = 13419, - [SMALL_STATE(233)] = 13461, - [SMALL_STATE(234)] = 13503, - [SMALL_STATE(235)] = 13543, - [SMALL_STATE(236)] = 13609, - [SMALL_STATE(237)] = 13649, - [SMALL_STATE(238)] = 13691, - [SMALL_STATE(239)] = 13757, - [SMALL_STATE(240)] = 13797, - [SMALL_STATE(241)] = 13863, - [SMALL_STATE(242)] = 13929, - [SMALL_STATE(243)] = 13995, - [SMALL_STATE(244)] = 14035, - [SMALL_STATE(245)] = 14075, - [SMALL_STATE(246)] = 14115, - [SMALL_STATE(247)] = 14155, - [SMALL_STATE(248)] = 14221, - [SMALL_STATE(249)] = 14261, - [SMALL_STATE(250)] = 14301, - [SMALL_STATE(251)] = 14367, - [SMALL_STATE(252)] = 14407, - [SMALL_STATE(253)] = 14447, - [SMALL_STATE(254)] = 14487, - [SMALL_STATE(255)] = 14534, - [SMALL_STATE(256)] = 14581, - [SMALL_STATE(257)] = 14623, - [SMALL_STATE(258)] = 14664, - [SMALL_STATE(259)] = 14701, - [SMALL_STATE(260)] = 14744, - [SMALL_STATE(261)] = 14787, - [SMALL_STATE(262)] = 14823, - [SMALL_STATE(263)] = 14859, - [SMALL_STATE(264)] = 14901, - [SMALL_STATE(265)] = 14943, - [SMALL_STATE(266)] = 14979, - [SMALL_STATE(267)] = 15015, - [SMALL_STATE(268)] = 15055, - [SMALL_STATE(269)] = 15091, - [SMALL_STATE(270)] = 15127, - [SMALL_STATE(271)] = 15163, - [SMALL_STATE(272)] = 15199, - [SMALL_STATE(273)] = 15235, - [SMALL_STATE(274)] = 15271, - [SMALL_STATE(275)] = 15307, - [SMALL_STATE(276)] = 15347, - [SMALL_STATE(277)] = 15383, - [SMALL_STATE(278)] = 15419, - [SMALL_STATE(279)] = 15455, - [SMALL_STATE(280)] = 15491, - [SMALL_STATE(281)] = 15527, - [SMALL_STATE(282)] = 15563, - [SMALL_STATE(283)] = 15599, - [SMALL_STATE(284)] = 15635, - [SMALL_STATE(285)] = 15671, - [SMALL_STATE(286)] = 15709, - [SMALL_STATE(287)] = 15745, - [SMALL_STATE(288)] = 15781, - [SMALL_STATE(289)] = 15817, - [SMALL_STATE(290)] = 15853, - [SMALL_STATE(291)] = 15889, - [SMALL_STATE(292)] = 15925, - [SMALL_STATE(293)] = 15961, - [SMALL_STATE(294)] = 15997, - [SMALL_STATE(295)] = 16033, - [SMALL_STATE(296)] = 16069, - [SMALL_STATE(297)] = 16105, - [SMALL_STATE(298)] = 16141, - [SMALL_STATE(299)] = 16177, - [SMALL_STATE(300)] = 16213, - [SMALL_STATE(301)] = 16250, - [SMALL_STATE(302)] = 16284, - [SMALL_STATE(303)] = 16318, - [SMALL_STATE(304)] = 16352, - [SMALL_STATE(305)] = 16386, - [SMALL_STATE(306)] = 16422, - [SMALL_STATE(307)] = 16456, - [SMALL_STATE(308)] = 16490, - [SMALL_STATE(309)] = 16524, - [SMALL_STATE(310)] = 16558, - [SMALL_STATE(311)] = 16592, - [SMALL_STATE(312)] = 16626, - [SMALL_STATE(313)] = 16660, - [SMALL_STATE(314)] = 16694, - [SMALL_STATE(315)] = 16729, - [SMALL_STATE(316)] = 16776, - [SMALL_STATE(317)] = 16818, - [SMALL_STATE(318)] = 16852, - [SMALL_STATE(319)] = 16884, - [SMALL_STATE(320)] = 16921, - [SMALL_STATE(321)] = 16952, - [SMALL_STATE(322)] = 16983, - [SMALL_STATE(323)] = 17020, - [SMALL_STATE(324)] = 17050, - [SMALL_STATE(325)] = 17080, - [SMALL_STATE(326)] = 17120, - [SMALL_STATE(327)] = 17154, - [SMALL_STATE(328)] = 17196, - [SMALL_STATE(329)] = 17228, - [SMALL_STATE(330)] = 17262, - [SMALL_STATE(331)] = 17305, - [SMALL_STATE(332)] = 17348, - [SMALL_STATE(333)] = 17381, - [SMALL_STATE(334)] = 17424, - [SMALL_STATE(335)] = 17467, - [SMALL_STATE(336)] = 17510, - [SMALL_STATE(337)] = 17541, - [SMALL_STATE(338)] = 17584, - [SMALL_STATE(339)] = 17627, - [SMALL_STATE(340)] = 17660, - [SMALL_STATE(341)] = 17703, - [SMALL_STATE(342)] = 17746, - [SMALL_STATE(343)] = 17789, - [SMALL_STATE(344)] = 17817, - [SMALL_STATE(345)] = 17851, - [SMALL_STATE(346)] = 17881, - [SMALL_STATE(347)] = 17909, - [SMALL_STATE(348)] = 17937, - [SMALL_STATE(349)] = 17965, - [SMALL_STATE(350)] = 18002, - [SMALL_STATE(351)] = 18039, - [SMALL_STATE(352)] = 18076, - [SMALL_STATE(353)] = 18107, - [SMALL_STATE(354)] = 18132, - [SMALL_STATE(355)] = 18163, - [SMALL_STATE(356)] = 18188, - [SMALL_STATE(357)] = 18225, - [SMALL_STATE(358)] = 18262, - [SMALL_STATE(359)] = 18299, - [SMALL_STATE(360)] = 18324, - [SMALL_STATE(361)] = 18349, - [SMALL_STATE(362)] = 18383, - [SMALL_STATE(363)] = 18417, - [SMALL_STATE(364)] = 18451, - [SMALL_STATE(365)] = 18485, - [SMALL_STATE(366)] = 18519, - [SMALL_STATE(367)] = 18553, - [SMALL_STATE(368)] = 18587, - [SMALL_STATE(369)] = 18615, - [SMALL_STATE(370)] = 18643, - [SMALL_STATE(371)] = 18677, - [SMALL_STATE(372)] = 18711, - [SMALL_STATE(373)] = 18745, - [SMALL_STATE(374)] = 18779, - [SMALL_STATE(375)] = 18813, - [SMALL_STATE(376)] = 18847, - [SMALL_STATE(377)] = 18873, - [SMALL_STATE(378)] = 18907, - [SMALL_STATE(379)] = 18935, - [SMALL_STATE(380)] = 18969, - [SMALL_STATE(381)] = 18994, - [SMALL_STATE(382)] = 19019, - [SMALL_STATE(383)] = 19044, - [SMALL_STATE(384)] = 19069, - [SMALL_STATE(385)] = 19097, - [SMALL_STATE(386)] = 19125, - [SMALL_STATE(387)] = 19153, - [SMALL_STATE(388)] = 19181, - [SMALL_STATE(389)] = 19203, - [SMALL_STATE(390)] = 19231, - [SMALL_STATE(391)] = 19256, - [SMALL_STATE(392)] = 19273, - [SMALL_STATE(393)] = 19298, - [SMALL_STATE(394)] = 19310, - [SMALL_STATE(395)] = 19324, - [SMALL_STATE(396)] = 19336, - [SMALL_STATE(397)] = 19348, - [SMALL_STATE(398)] = 19361, - [SMALL_STATE(399)] = 19374, - [SMALL_STATE(400)] = 19387, - [SMALL_STATE(401)] = 19400, - [SMALL_STATE(402)] = 19413, - [SMALL_STATE(403)] = 19424, - [SMALL_STATE(404)] = 19437, - [SMALL_STATE(405)] = 19450, - [SMALL_STATE(406)] = 19463, - [SMALL_STATE(407)] = 19474, - [SMALL_STATE(408)] = 19487, - [SMALL_STATE(409)] = 19500, - [SMALL_STATE(410)] = 19513, - [SMALL_STATE(411)] = 19526, - [SMALL_STATE(412)] = 19539, - [SMALL_STATE(413)] = 19552, - [SMALL_STATE(414)] = 19565, - [SMALL_STATE(415)] = 19578, - [SMALL_STATE(416)] = 19591, - [SMALL_STATE(417)] = 19604, - [SMALL_STATE(418)] = 19617, - [SMALL_STATE(419)] = 19630, - [SMALL_STATE(420)] = 19643, - [SMALL_STATE(421)] = 19656, - [SMALL_STATE(422)] = 19669, - [SMALL_STATE(423)] = 19682, - [SMALL_STATE(424)] = 19695, - [SMALL_STATE(425)] = 19708, - [SMALL_STATE(426)] = 19721, - [SMALL_STATE(427)] = 19734, - [SMALL_STATE(428)] = 19747, - [SMALL_STATE(429)] = 19760, - [SMALL_STATE(430)] = 19771, - [SMALL_STATE(431)] = 19784, - [SMALL_STATE(432)] = 19797, - [SMALL_STATE(433)] = 19808, - [SMALL_STATE(434)] = 19821, - [SMALL_STATE(435)] = 19834, - [SMALL_STATE(436)] = 19842, - [SMALL_STATE(437)] = 19852, - [SMALL_STATE(438)] = 19860, - [SMALL_STATE(439)] = 19870, - [SMALL_STATE(440)] = 19880, - [SMALL_STATE(441)] = 19890, - [SMALL_STATE(442)] = 19900, - [SMALL_STATE(443)] = 19908, - [SMALL_STATE(444)] = 19916, - [SMALL_STATE(445)] = 19926, - [SMALL_STATE(446)] = 19936, - [SMALL_STATE(447)] = 19946, - [SMALL_STATE(448)] = 19956, - [SMALL_STATE(449)] = 19966, - [SMALL_STATE(450)] = 19974, - [SMALL_STATE(451)] = 19984, - [SMALL_STATE(452)] = 19992, - [SMALL_STATE(453)] = 20000, - [SMALL_STATE(454)] = 20010, - [SMALL_STATE(455)] = 20020, - [SMALL_STATE(456)] = 20027, - [SMALL_STATE(457)] = 20034, - [SMALL_STATE(458)] = 20041, - [SMALL_STATE(459)] = 20048, - [SMALL_STATE(460)] = 20055, - [SMALL_STATE(461)] = 20062, - [SMALL_STATE(462)] = 20069, - [SMALL_STATE(463)] = 20076, - [SMALL_STATE(464)] = 20083, - [SMALL_STATE(465)] = 20090, - [SMALL_STATE(466)] = 20097, - [SMALL_STATE(467)] = 20104, - [SMALL_STATE(468)] = 20111, - [SMALL_STATE(469)] = 20118, - [SMALL_STATE(470)] = 20125, - [SMALL_STATE(471)] = 20132, - [SMALL_STATE(472)] = 20139, - [SMALL_STATE(473)] = 20146, - [SMALL_STATE(474)] = 20153, - [SMALL_STATE(475)] = 20160, - [SMALL_STATE(476)] = 20167, - [SMALL_STATE(477)] = 20174, - [SMALL_STATE(478)] = 20181, - [SMALL_STATE(479)] = 20188, - [SMALL_STATE(480)] = 20195, - [SMALL_STATE(481)] = 20202, - [SMALL_STATE(482)] = 20209, - [SMALL_STATE(483)] = 20216, - [SMALL_STATE(484)] = 20223, - [SMALL_STATE(485)] = 20230, - [SMALL_STATE(486)] = 20237, - [SMALL_STATE(487)] = 20244, - [SMALL_STATE(488)] = 20251, - [SMALL_STATE(489)] = 20258, - [SMALL_STATE(490)] = 20265, - [SMALL_STATE(491)] = 20272, - [SMALL_STATE(492)] = 20279, - [SMALL_STATE(493)] = 20286, - [SMALL_STATE(494)] = 20293, - [SMALL_STATE(495)] = 20300, + [SMALL_STATE(98)] = 3075, + [SMALL_STATE(99)] = 3136, + [SMALL_STATE(100)] = 3190, + [SMALL_STATE(101)] = 3244, + [SMALL_STATE(102)] = 3298, + [SMALL_STATE(103)] = 3352, + [SMALL_STATE(104)] = 3406, + [SMALL_STATE(105)] = 3460, + [SMALL_STATE(106)] = 3514, + [SMALL_STATE(107)] = 3568, + [SMALL_STATE(108)] = 3622, + [SMALL_STATE(109)] = 3678, + [SMALL_STATE(110)] = 3732, + [SMALL_STATE(111)] = 3786, + [SMALL_STATE(112)] = 3840, + [SMALL_STATE(113)] = 3894, + [SMALL_STATE(114)] = 3948, + [SMALL_STATE(115)] = 4002, + [SMALL_STATE(116)] = 4056, + [SMALL_STATE(117)] = 4110, + [SMALL_STATE(118)] = 4164, + [SMALL_STATE(119)] = 4218, + [SMALL_STATE(120)] = 4274, + [SMALL_STATE(121)] = 4328, + [SMALL_STATE(122)] = 4382, + [SMALL_STATE(123)] = 4436, + [SMALL_STATE(124)] = 4490, + [SMALL_STATE(125)] = 4544, + [SMALL_STATE(126)] = 4598, + [SMALL_STATE(127)] = 4656, + [SMALL_STATE(128)] = 4710, + [SMALL_STATE(129)] = 4764, + [SMALL_STATE(130)] = 4818, + [SMALL_STATE(131)] = 4885, + [SMALL_STATE(132)] = 4979, + [SMALL_STATE(133)] = 5073, + [SMALL_STATE(134)] = 5167, + [SMALL_STATE(135)] = 5229, + [SMALL_STATE(136)] = 5320, + [SMALL_STATE(137)] = 5411, + [SMALL_STATE(138)] = 5504, + [SMALL_STATE(139)] = 5595, + [SMALL_STATE(140)] = 5686, + [SMALL_STATE(141)] = 5777, + [SMALL_STATE(142)] = 5868, + [SMALL_STATE(143)] = 5961, + [SMALL_STATE(144)] = 6052, + [SMALL_STATE(145)] = 6109, + [SMALL_STATE(146)] = 6166, + [SMALL_STATE(147)] = 6257, + [SMALL_STATE(148)] = 6350, + [SMALL_STATE(149)] = 6441, + [SMALL_STATE(150)] = 6532, + [SMALL_STATE(151)] = 6625, + [SMALL_STATE(152)] = 6716, + [SMALL_STATE(153)] = 6807, + [SMALL_STATE(154)] = 6898, + [SMALL_STATE(155)] = 6991, + [SMALL_STATE(156)] = 7082, + [SMALL_STATE(157)] = 7175, + [SMALL_STATE(158)] = 7266, + [SMALL_STATE(159)] = 7359, + [SMALL_STATE(160)] = 7452, + [SMALL_STATE(161)] = 7543, + [SMALL_STATE(162)] = 7634, + [SMALL_STATE(163)] = 7727, + [SMALL_STATE(164)] = 7818, + [SMALL_STATE(165)] = 7909, + [SMALL_STATE(166)] = 7961, + [SMALL_STATE(167)] = 8046, + [SMALL_STATE(168)] = 8131, + [SMALL_STATE(169)] = 8216, + [SMALL_STATE(170)] = 8301, + [SMALL_STATE(171)] = 8386, + [SMALL_STATE(172)] = 8467, + [SMALL_STATE(173)] = 8552, + [SMALL_STATE(174)] = 8633, + [SMALL_STATE(175)] = 8718, + [SMALL_STATE(176)] = 8803, + [SMALL_STATE(177)] = 8888, + [SMALL_STATE(178)] = 8973, + [SMALL_STATE(179)] = 9058, + [SMALL_STATE(180)] = 9139, + [SMALL_STATE(181)] = 9220, + [SMALL_STATE(182)] = 9305, + [SMALL_STATE(183)] = 9390, + [SMALL_STATE(184)] = 9475, + [SMALL_STATE(185)] = 9560, + [SMALL_STATE(186)] = 9645, + [SMALL_STATE(187)] = 9730, + [SMALL_STATE(188)] = 9815, + [SMALL_STATE(189)] = 9896, + [SMALL_STATE(190)] = 9977, + [SMALL_STATE(191)] = 10062, + [SMALL_STATE(192)] = 10147, + [SMALL_STATE(193)] = 10232, + [SMALL_STATE(194)] = 10315, + [SMALL_STATE(195)] = 10400, + [SMALL_STATE(196)] = 10485, + [SMALL_STATE(197)] = 10548, + [SMALL_STATE(198)] = 10633, + [SMALL_STATE(199)] = 10716, + [SMALL_STATE(200)] = 10801, + [SMALL_STATE(201)] = 10886, + [SMALL_STATE(202)] = 10951, + [SMALL_STATE(203)] = 11036, + [SMALL_STATE(204)] = 11121, + [SMALL_STATE(205)] = 11206, + [SMALL_STATE(206)] = 11289, + [SMALL_STATE(207)] = 11374, + [SMALL_STATE(208)] = 11457, + [SMALL_STATE(209)] = 11542, + [SMALL_STATE(210)] = 11627, + [SMALL_STATE(211)] = 11712, + [SMALL_STATE(212)] = 11797, + [SMALL_STATE(213)] = 11882, + [SMALL_STATE(214)] = 11967, + [SMALL_STATE(215)] = 12052, + [SMALL_STATE(216)] = 12137, + [SMALL_STATE(217)] = 12222, + [SMALL_STATE(218)] = 12307, + [SMALL_STATE(219)] = 12392, + [SMALL_STATE(220)] = 12477, + [SMALL_STATE(221)] = 12562, + [SMALL_STATE(222)] = 12643, + [SMALL_STATE(223)] = 12707, + [SMALL_STATE(224)] = 12771, + [SMALL_STATE(225)] = 12824, + [SMALL_STATE(226)] = 12877, + [SMALL_STATE(227)] = 12925, + [SMALL_STATE(228)] = 12967, + [SMALL_STATE(229)] = 13009, + [SMALL_STATE(230)] = 13051, + [SMALL_STATE(231)] = 13093, + [SMALL_STATE(232)] = 13135, + [SMALL_STATE(233)] = 13175, + [SMALL_STATE(234)] = 13215, + [SMALL_STATE(235)] = 13255, + [SMALL_STATE(236)] = 13295, + [SMALL_STATE(237)] = 13335, + [SMALL_STATE(238)] = 13375, + [SMALL_STATE(239)] = 13415, + [SMALL_STATE(240)] = 13455, + [SMALL_STATE(241)] = 13497, + [SMALL_STATE(242)] = 13537, + [SMALL_STATE(243)] = 13577, + [SMALL_STATE(244)] = 13617, + [SMALL_STATE(245)] = 13657, + [SMALL_STATE(246)] = 13720, + [SMALL_STATE(247)] = 13767, + [SMALL_STATE(248)] = 13830, + [SMALL_STATE(249)] = 13893, + [SMALL_STATE(250)] = 13956, + [SMALL_STATE(251)] = 14003, + [SMALL_STATE(252)] = 14066, + [SMALL_STATE(253)] = 14129, + [SMALL_STATE(254)] = 14192, + [SMALL_STATE(255)] = 14234, + [SMALL_STATE(256)] = 14277, + [SMALL_STATE(257)] = 14320, + [SMALL_STATE(258)] = 14361, + [SMALL_STATE(259)] = 14398, + [SMALL_STATE(260)] = 14434, + [SMALL_STATE(261)] = 14470, + [SMALL_STATE(262)] = 14506, + [SMALL_STATE(263)] = 14548, + [SMALL_STATE(264)] = 14590, + [SMALL_STATE(265)] = 14626, + [SMALL_STATE(266)] = 14666, + [SMALL_STATE(267)] = 14702, + [SMALL_STATE(268)] = 14738, + [SMALL_STATE(269)] = 14774, + [SMALL_STATE(270)] = 14810, + [SMALL_STATE(271)] = 14846, + [SMALL_STATE(272)] = 14882, + [SMALL_STATE(273)] = 14918, + [SMALL_STATE(274)] = 14958, + [SMALL_STATE(275)] = 14994, + [SMALL_STATE(276)] = 15030, + [SMALL_STATE(277)] = 15066, + [SMALL_STATE(278)] = 15104, + [SMALL_STATE(279)] = 15140, + [SMALL_STATE(280)] = 15176, + [SMALL_STATE(281)] = 15212, + [SMALL_STATE(282)] = 15248, + [SMALL_STATE(283)] = 15284, + [SMALL_STATE(284)] = 15320, + [SMALL_STATE(285)] = 15356, + [SMALL_STATE(286)] = 15392, + [SMALL_STATE(287)] = 15428, + [SMALL_STATE(288)] = 15464, + [SMALL_STATE(289)] = 15500, + [SMALL_STATE(290)] = 15536, + [SMALL_STATE(291)] = 15572, + [SMALL_STATE(292)] = 15608, + [SMALL_STATE(293)] = 15644, + [SMALL_STATE(294)] = 15680, + [SMALL_STATE(295)] = 15716, + [SMALL_STATE(296)] = 15752, + [SMALL_STATE(297)] = 15788, + [SMALL_STATE(298)] = 15825, + [SMALL_STATE(299)] = 15859, + [SMALL_STATE(300)] = 15893, + [SMALL_STATE(301)] = 15929, + [SMALL_STATE(302)] = 15963, + [SMALL_STATE(303)] = 15997, + [SMALL_STATE(304)] = 16031, + [SMALL_STATE(305)] = 16065, + [SMALL_STATE(306)] = 16099, + [SMALL_STATE(307)] = 16133, + [SMALL_STATE(308)] = 16167, + [SMALL_STATE(309)] = 16201, + [SMALL_STATE(310)] = 16235, + [SMALL_STATE(311)] = 16269, + [SMALL_STATE(312)] = 16316, + [SMALL_STATE(313)] = 16351, + [SMALL_STATE(314)] = 16383, + [SMALL_STATE(315)] = 16425, + [SMALL_STATE(316)] = 16459, + [SMALL_STATE(317)] = 16496, + [SMALL_STATE(318)] = 16533, + [SMALL_STATE(319)] = 16564, + [SMALL_STATE(320)] = 16595, + [SMALL_STATE(321)] = 16625, + [SMALL_STATE(322)] = 16655, + [SMALL_STATE(323)] = 16687, + [SMALL_STATE(324)] = 16729, + [SMALL_STATE(325)] = 16769, + [SMALL_STATE(326)] = 16803, + [SMALL_STATE(327)] = 16837, + [SMALL_STATE(328)] = 16880, + [SMALL_STATE(329)] = 16923, + [SMALL_STATE(330)] = 16954, + [SMALL_STATE(331)] = 16987, + [SMALL_STATE(332)] = 17030, + [SMALL_STATE(333)] = 17063, + [SMALL_STATE(334)] = 17106, + [SMALL_STATE(335)] = 17149, + [SMALL_STATE(336)] = 17192, + [SMALL_STATE(337)] = 17235, + [SMALL_STATE(338)] = 17278, + [SMALL_STATE(339)] = 17321, + [SMALL_STATE(340)] = 17364, + [SMALL_STATE(341)] = 17392, + [SMALL_STATE(342)] = 17420, + [SMALL_STATE(343)] = 17454, + [SMALL_STATE(344)] = 17482, + [SMALL_STATE(345)] = 17512, + [SMALL_STATE(346)] = 17540, + [SMALL_STATE(347)] = 17577, + [SMALL_STATE(348)] = 17614, + [SMALL_STATE(349)] = 17651, + [SMALL_STATE(350)] = 17682, + [SMALL_STATE(351)] = 17707, + [SMALL_STATE(352)] = 17732, + [SMALL_STATE(353)] = 17769, + [SMALL_STATE(354)] = 17794, + [SMALL_STATE(355)] = 17831, + [SMALL_STATE(356)] = 17868, + [SMALL_STATE(357)] = 17893, + [SMALL_STATE(358)] = 17924, + [SMALL_STATE(359)] = 17952, + [SMALL_STATE(360)] = 17986, + [SMALL_STATE(361)] = 18020, + [SMALL_STATE(362)] = 18054, + [SMALL_STATE(363)] = 18088, + [SMALL_STATE(364)] = 18122, + [SMALL_STATE(365)] = 18156, + [SMALL_STATE(366)] = 18184, + [SMALL_STATE(367)] = 18218, + [SMALL_STATE(368)] = 18252, + [SMALL_STATE(369)] = 18280, + [SMALL_STATE(370)] = 18314, + [SMALL_STATE(371)] = 18348, + [SMALL_STATE(372)] = 18382, + [SMALL_STATE(373)] = 18416, + [SMALL_STATE(374)] = 18450, + [SMALL_STATE(375)] = 18484, + [SMALL_STATE(376)] = 18518, + [SMALL_STATE(377)] = 18544, + [SMALL_STATE(378)] = 18569, + [SMALL_STATE(379)] = 18594, + [SMALL_STATE(380)] = 18619, + [SMALL_STATE(381)] = 18644, + [SMALL_STATE(382)] = 18672, + [SMALL_STATE(383)] = 18700, + [SMALL_STATE(384)] = 18728, + [SMALL_STATE(385)] = 18756, + [SMALL_STATE(386)] = 18778, + [SMALL_STATE(387)] = 18806, + [SMALL_STATE(388)] = 18831, + [SMALL_STATE(389)] = 18856, + [SMALL_STATE(390)] = 18873, + [SMALL_STATE(391)] = 18887, + [SMALL_STATE(392)] = 18899, + [SMALL_STATE(393)] = 18911, + [SMALL_STATE(394)] = 18923, + [SMALL_STATE(395)] = 18936, + [SMALL_STATE(396)] = 18949, + [SMALL_STATE(397)] = 18962, + [SMALL_STATE(398)] = 18975, + [SMALL_STATE(399)] = 18988, + [SMALL_STATE(400)] = 19001, + [SMALL_STATE(401)] = 19012, + [SMALL_STATE(402)] = 19025, + [SMALL_STATE(403)] = 19038, + [SMALL_STATE(404)] = 19051, + [SMALL_STATE(405)] = 19064, + [SMALL_STATE(406)] = 19077, + [SMALL_STATE(407)] = 19090, + [SMALL_STATE(408)] = 19103, + [SMALL_STATE(409)] = 19116, + [SMALL_STATE(410)] = 19129, + [SMALL_STATE(411)] = 19142, + [SMALL_STATE(412)] = 19155, + [SMALL_STATE(413)] = 19168, + [SMALL_STATE(414)] = 19181, + [SMALL_STATE(415)] = 19194, + [SMALL_STATE(416)] = 19207, + [SMALL_STATE(417)] = 19220, + [SMALL_STATE(418)] = 19233, + [SMALL_STATE(419)] = 19246, + [SMALL_STATE(420)] = 19259, + [SMALL_STATE(421)] = 19272, + [SMALL_STATE(422)] = 19283, + [SMALL_STATE(423)] = 19296, + [SMALL_STATE(424)] = 19309, + [SMALL_STATE(425)] = 19322, + [SMALL_STATE(426)] = 19335, + [SMALL_STATE(427)] = 19348, + [SMALL_STATE(428)] = 19361, + [SMALL_STATE(429)] = 19372, + [SMALL_STATE(430)] = 19385, + [SMALL_STATE(431)] = 19398, + [SMALL_STATE(432)] = 19409, + [SMALL_STATE(433)] = 19419, + [SMALL_STATE(434)] = 19427, + [SMALL_STATE(435)] = 19435, + [SMALL_STATE(436)] = 19445, + [SMALL_STATE(437)] = 19455, + [SMALL_STATE(438)] = 19465, + [SMALL_STATE(439)] = 19475, + [SMALL_STATE(440)] = 19485, + [SMALL_STATE(441)] = 19493, + [SMALL_STATE(442)] = 19503, + [SMALL_STATE(443)] = 19513, + [SMALL_STATE(444)] = 19523, + [SMALL_STATE(445)] = 19531, + [SMALL_STATE(446)] = 19539, + [SMALL_STATE(447)] = 19547, + [SMALL_STATE(448)] = 19557, + [SMALL_STATE(449)] = 19565, + [SMALL_STATE(450)] = 19575, + [SMALL_STATE(451)] = 19585, + [SMALL_STATE(452)] = 19595, + [SMALL_STATE(453)] = 19602, + [SMALL_STATE(454)] = 19609, + [SMALL_STATE(455)] = 19616, + [SMALL_STATE(456)] = 19623, + [SMALL_STATE(457)] = 19630, + [SMALL_STATE(458)] = 19637, + [SMALL_STATE(459)] = 19644, + [SMALL_STATE(460)] = 19651, + [SMALL_STATE(461)] = 19658, + [SMALL_STATE(462)] = 19665, + [SMALL_STATE(463)] = 19672, + [SMALL_STATE(464)] = 19679, + [SMALL_STATE(465)] = 19686, + [SMALL_STATE(466)] = 19693, + [SMALL_STATE(467)] = 19700, + [SMALL_STATE(468)] = 19707, + [SMALL_STATE(469)] = 19714, + [SMALL_STATE(470)] = 19721, + [SMALL_STATE(471)] = 19728, + [SMALL_STATE(472)] = 19735, + [SMALL_STATE(473)] = 19742, + [SMALL_STATE(474)] = 19749, + [SMALL_STATE(475)] = 19756, + [SMALL_STATE(476)] = 19763, + [SMALL_STATE(477)] = 19770, + [SMALL_STATE(478)] = 19777, + [SMALL_STATE(479)] = 19784, + [SMALL_STATE(480)] = 19791, + [SMALL_STATE(481)] = 19798, + [SMALL_STATE(482)] = 19805, + [SMALL_STATE(483)] = 19812, + [SMALL_STATE(484)] = 19819, + [SMALL_STATE(485)] = 19826, + [SMALL_STATE(486)] = 19833, + [SMALL_STATE(487)] = 19840, + [SMALL_STATE(488)] = 19847, + [SMALL_STATE(489)] = 19854, + [SMALL_STATE(490)] = 19861, + [SMALL_STATE(491)] = 19868, + [SMALL_STATE(492)] = 19875, }; static const TSParseActionEntry ts_parse_actions[] = { [0] = {.entry = {.count = 0, .reusable = false}}, [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(), - [5] = {.entry = {.count = 1, .reusable = false}}, SHIFT(54), - [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), - [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(483), + [5] = {.entry = {.count = 1, .reusable = false}}, SHIFT(51), + [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), + [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(462), [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), - [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(495), - [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(490), - [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(61), - [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), - [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(73), - [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), - [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(82), - [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(489), - [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(205), - [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(219), - [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(221), - [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(487), - [37] = {.entry = {.count = 1, .reusable = true}}, SHIFT(487), - [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(34), - [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(85), - [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(66), - [45] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), - [47] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270), - [49] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), + [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(492), + [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(487), + [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(81), + [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), + [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(80), + [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), + [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(56), + [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(486), + [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(218), + [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(216), + [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(210), + [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(484), + [37] = {.entry = {.count = 1, .reusable = true}}, SHIFT(484), + [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(41), + [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(57), + [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(72), + [45] = {.entry = {.count = 1, .reusable = true}}, SHIFT(267), + [47] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), + [49] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), [51] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), - [53] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(54), - [56] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(157), - [59] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(483), + [53] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(51), + [56] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(137), + [59] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(462), [62] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(4), - [65] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(495), - [68] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(490), - [71] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(61), - [74] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(61), - [77] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(73), - [80] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(154), - [83] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(82), - [86] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(489), - [89] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(205), - [92] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(219), - [95] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(221), - [98] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(487), - [101] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(487), - [104] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(34), - [107] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(85), - [110] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_root, 1), - [112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(281), - [114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), - [116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), - [118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(290), - [120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229), - [122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293), - [124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), - [126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), - [128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(232), - [130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(289), - [132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), - [134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(288), - [136] = {.entry = {.count = 1, .reusable = false}}, SHIFT(315), - [138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), - [140] = {.entry = {.count = 1, .reusable = false}}, SHIFT(457), - [142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [144] = {.entry = {.count = 1, .reusable = false}}, SHIFT(462), - [146] = {.entry = {.count = 1, .reusable = false}}, SHIFT(480), - [148] = {.entry = {.count = 1, .reusable = false}}, SHIFT(268), - [150] = {.entry = {.count = 1, .reusable = true}}, SHIFT(268), - [152] = {.entry = {.count = 1, .reusable = false}}, SHIFT(262), - [154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), - [156] = {.entry = {.count = 1, .reusable = false}}, SHIFT(269), - [158] = {.entry = {.count = 1, .reusable = false}}, SHIFT(473), - [160] = {.entry = {.count = 1, .reusable = false}}, SHIFT(196), - [162] = {.entry = {.count = 1, .reusable = false}}, SHIFT(171), - [164] = {.entry = {.count = 1, .reusable = false}}, SHIFT(195), - [166] = {.entry = {.count = 1, .reusable = false}}, SHIFT(482), - [168] = {.entry = {.count = 1, .reusable = true}}, SHIFT(482), - [170] = {.entry = {.count = 1, .reusable = false}}, SHIFT(32), - [172] = {.entry = {.count = 1, .reusable = false}}, SHIFT(271), - [174] = {.entry = {.count = 1, .reusable = false}}, SHIFT(135), - [176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), - [178] = {.entry = {.count = 1, .reusable = false}}, SHIFT(456), - [180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), - [182] = {.entry = {.count = 1, .reusable = false}}, SHIFT(458), - [184] = {.entry = {.count = 1, .reusable = false}}, SHIFT(492), - [186] = {.entry = {.count = 1, .reusable = false}}, SHIFT(105), - [188] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), - [190] = {.entry = {.count = 1, .reusable = false}}, SHIFT(104), - [192] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), - [194] = {.entry = {.count = 1, .reusable = false}}, SHIFT(103), - [196] = {.entry = {.count = 1, .reusable = false}}, SHIFT(493), - [198] = {.entry = {.count = 1, .reusable = false}}, SHIFT(172), - [200] = {.entry = {.count = 1, .reusable = false}}, SHIFT(494), - [202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(494), - [204] = {.entry = {.count = 1, .reusable = false}}, SHIFT(33), - [206] = {.entry = {.count = 1, .reusable = false}}, SHIFT(102), - [208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_math, 3), - [210] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_math, 3), - [212] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), - [214] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_logic, 3), - [216] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_logic, 3), - [218] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 5), - [220] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index, 5), - [222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), - [224] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_kind, 1), - [226] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression_kind, 1), - [228] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_expression_kind, 1), - [230] = {.entry = {.count = 1, .reusable = false}}, SHIFT(258), - [232] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression, 1), - [234] = {.entry = {.count = 1, .reusable = false}}, SHIFT(385), - [236] = {.entry = {.count = 1, .reusable = true}}, SHIFT(258), - [238] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_definition, 1), - [240] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_definition, 1), - [242] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_expression, 3), - [244] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_expression, 3), - [246] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function, 5), - [248] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function, 5), - [250] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 3), - [252] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index, 3), - [254] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), - [256] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 4), - [258] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 4), - [260] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index_expression, 1), - [262] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value, 1), - [264] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_value, 1), - [266] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_structure, 3), - [268] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_structure, 3), - [270] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 2), - [272] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 2), - [274] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new, 5), - [276] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new, 5), - [278] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_option, 4), - [280] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_option, 4), - [282] = {.entry = {.count = 1, .reusable = false}}, SHIFT(36), - [284] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new, 4), - [286] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new, 4), - [288] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 2), - [290] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 2), - [292] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_structure, 4), - [294] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_structure, 4), - [296] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 6), - [298] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yield, 6), - [300] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_expression, 1), - [302] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_expression, 1), - [304] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean, 1), - [306] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean, 1), - [308] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function, 4), - [310] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function, 4), - [312] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 3), - [314] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 3), - [316] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 3), - [318] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 3), - [320] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 3), - [322] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yield, 3), - [324] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression, 3), - [326] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index_expression, 3), - [328] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1), - [330] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 1), - [332] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_option, 1), - [334] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_option, 1), + [65] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(492), + [68] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(487), + [71] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(81), + [74] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(81), + [77] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(80), + [80] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(139), + [83] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(56), + [86] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(486), + [89] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(218), + [92] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(216), + [95] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(210), + [98] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(484), + [101] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(484), + [104] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(41), + [107] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(57), + [110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), + [112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284), + [114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(283), + [116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), + [118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230), + [120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), + [122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260), + [124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278), + [126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), + [128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), + [130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(227), + [132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), + [134] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_root, 1), + [136] = {.entry = {.count = 1, .reusable = false}}, SHIFT(311), + [138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147), + [140] = {.entry = {.count = 1, .reusable = false}}, SHIFT(454), + [142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), + [144] = {.entry = {.count = 1, .reusable = false}}, SHIFT(472), + [146] = {.entry = {.count = 1, .reusable = false}}, SHIFT(477), + [148] = {.entry = {.count = 1, .reusable = false}}, SHIFT(279), + [150] = {.entry = {.count = 1, .reusable = true}}, SHIFT(279), + [152] = {.entry = {.count = 1, .reusable = false}}, SHIFT(266), + [154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), + [156] = {.entry = {.count = 1, .reusable = false}}, SHIFT(290), + [158] = {.entry = {.count = 1, .reusable = false}}, SHIFT(458), + [160] = {.entry = {.count = 1, .reusable = false}}, SHIFT(219), + [162] = {.entry = {.count = 1, .reusable = false}}, SHIFT(170), + [164] = {.entry = {.count = 1, .reusable = false}}, SHIFT(220), + [166] = {.entry = {.count = 1, .reusable = false}}, SHIFT(479), + [168] = {.entry = {.count = 1, .reusable = true}}, SHIFT(479), + [170] = {.entry = {.count = 1, .reusable = false}}, SHIFT(42), + [172] = {.entry = {.count = 1, .reusable = false}}, SHIFT(261), + [174] = {.entry = {.count = 1, .reusable = false}}, SHIFT(130), + [176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), + [178] = {.entry = {.count = 1, .reusable = false}}, SHIFT(473), + [180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [182] = {.entry = {.count = 1, .reusable = false}}, SHIFT(455), + [184] = {.entry = {.count = 1, .reusable = false}}, SHIFT(489), + [186] = {.entry = {.count = 1, .reusable = false}}, SHIFT(129), + [188] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), + [190] = {.entry = {.count = 1, .reusable = false}}, SHIFT(128), + [192] = {.entry = {.count = 1, .reusable = true}}, SHIFT(152), + [194] = {.entry = {.count = 1, .reusable = false}}, SHIFT(122), + [196] = {.entry = {.count = 1, .reusable = false}}, SHIFT(490), + [198] = {.entry = {.count = 1, .reusable = false}}, SHIFT(168), + [200] = {.entry = {.count = 1, .reusable = false}}, SHIFT(491), + [202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(491), + [204] = {.entry = {.count = 1, .reusable = false}}, SHIFT(45), + [206] = {.entry = {.count = 1, .reusable = false}}, SHIFT(117), + [208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_logic, 3), + [210] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_logic, 3), + [212] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180), + [214] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 5), + [216] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index, 5), + [218] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_math, 3), + [220] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_math, 3), + [222] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_kind, 1), + [224] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression_kind, 1), + [226] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_expression_kind, 1), + [228] = {.entry = {.count = 1, .reusable = false}}, SHIFT(258), + [230] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression, 1), + [232] = {.entry = {.count = 1, .reusable = false}}, SHIFT(381), + [234] = {.entry = {.count = 1, .reusable = true}}, SHIFT(258), + [236] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), + [238] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function, 4), + [240] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function, 4), + [242] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_option, 1), + [244] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_option, 1), + [246] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_built_in_value, 1), + [248] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_built_in_value, 1), + [250] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_option, 4), + [252] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_option, 4), + [254] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new, 4), + [256] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new, 4), + [258] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 2), + [260] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 2), + [262] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_structure, 4), + [264] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_structure, 4), + [266] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_new, 5), + [268] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_new, 5), + [270] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1), + [272] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 1), + [274] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 3), + [276] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index, 3), + [278] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 3), + [280] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 3), + [282] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 3), + [284] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yield, 3), + [286] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 4), + [288] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 4), + [290] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 4), + [292] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 4), + [294] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_structure, 3), + [296] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_structure, 3), + [298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_expression, 1), + [300] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_expression, 1), + [302] = {.entry = {.count = 1, .reusable = false}}, SHIFT(30), + [304] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 6), + [306] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yield, 6), + [308] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index_expression, 1), + [310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214), + [312] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 3), + [314] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 3), + [316] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_expression, 3), + [318] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_expression, 3), + [320] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression, 3), + [322] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index_expression, 3), + [324] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 3), + [326] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 3), + [328] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean, 1), + [330] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean, 1), + [332] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value, 1), + [334] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_value, 1), [336] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 3), [338] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 3), - [340] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_built_in_value, 1), - [342] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_built_in_value, 1), - [344] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 4), - [346] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 4), + [340] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function, 5), + [342] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function, 5), + [344] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 2), + [346] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 2), [348] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map, 3), [350] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_map, 3), - [352] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 3), - [354] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 3), - [356] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 1), - [358] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 1), - [360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249), - [362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(323), - [364] = {.entry = {.count = 1, .reusable = false}}, SHIFT(323), - [366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(324), - [368] = {.entry = {.count = 1, .reusable = false}}, SHIFT(324), - [370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), - [372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), - [374] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__function_expression_kind, 1), - [376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), - [378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220), - [380] = {.entry = {.count = 1, .reusable = false}}, SHIFT(275), - [382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(438), - [384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(243), - [386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(465), - [388] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(275), - [391] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(151), - [394] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(438), - [397] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), - [399] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(462), - [402] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(480), - [405] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(268), - [408] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(268), - [411] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(262), - [414] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(136), - [417] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(269), - [420] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(473), - [423] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(465), - [426] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(271), - [429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(309), - [431] = {.entry = {.count = 1, .reusable = false}}, SHIFT(107), - [433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(444), - [435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(286), - [437] = {.entry = {.count = 1, .reusable = false}}, SHIFT(344), - [439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(453), - [441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), - [443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), - [445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), - [447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261), - [449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(436), - [451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130), - [453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), - [455] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(107), - [458] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(161), - [461] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(444), - [464] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(458), - [467] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(492), - [470] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(105), - [473] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(105), - [476] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(104), - [479] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(149), - [482] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), - [484] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(103), - [487] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(493), - [490] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(102), - [493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), - [495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), - [497] = {.entry = {.count = 1, .reusable = true}}, SHIFT(445), - [499] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(107), - [502] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(161), - [505] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__expression_list, 2), - [507] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(444), - [510] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(458), - [513] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(492), - [516] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(105), - [519] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(105), - [522] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(104), - [525] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(149), - [528] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(103), - [531] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(493), - [534] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(102), - [537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), - [539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), - [541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(283), - [543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), - [545] = {.entry = {.count = 1, .reusable = true}}, SHIFT(266), - [547] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), - [549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), - [551] = {.entry = {.count = 1, .reusable = false}}, SHIFT(345), - [553] = {.entry = {.count = 1, .reusable = false}}, SHIFT(317), - [555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), - [557] = {.entry = {.count = 1, .reusable = false}}, SHIFT(284), - [559] = {.entry = {.count = 1, .reusable = false}}, SHIFT(80), - [561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(450), - [563] = {.entry = {.count = 1, .reusable = false}}, SHIFT(72), - [565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), - [567] = {.entry = {.count = 1, .reusable = false}}, SHIFT(110), - [569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147), - [571] = {.entry = {.count = 1, .reusable = false}}, SHIFT(191), - [573] = {.entry = {.count = 1, .reusable = false}}, SHIFT(97), - [575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(308), - [577] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 1), - [579] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 1), - [581] = {.entry = {.count = 1, .reusable = true}}, SHIFT(321), - [583] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__expression_list, 1), - [585] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__expression_list, 1), - [587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), - [589] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_else, 2), - [591] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_else, 2), - [593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217), - [595] = {.entry = {.count = 1, .reusable = false}}, SHIFT(414), - [597] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_else, 1), - [599] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_else, 1), - [601] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_else_repeat1, 2), - [603] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_else_repeat1, 2), - [605] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_if_else_repeat1, 2), SHIFT_REPEAT(217), - [608] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_if, 3), - [610] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_if, 3), - [612] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if, 3), - [614] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if, 3), - [616] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_else, 3), - [618] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_else, 3), - [620] = {.entry = {.count = 1, .reusable = false}}, SHIFT(127), - [622] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), - [624] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_assignment, 3), - [626] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index_assignment, 3), - [628] = {.entry = {.count = 1, .reusable = false}}, SHIFT(287), - [630] = {.entry = {.count = 1, .reusable = true}}, SHIFT(160), + [352] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 1), + [354] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 1), + [356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), + [358] = {.entry = {.count = 1, .reusable = false}}, SHIFT(320), + [360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(321), + [362] = {.entry = {.count = 1, .reusable = false}}, SHIFT(321), + [364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), + [366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221), + [368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237), + [370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), + [372] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__function_expression_kind, 1), + [374] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), + [376] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(265), + [379] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(147), + [382] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(441), + [385] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), + [387] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(472), + [390] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(477), + [393] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(279), + [396] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(279), + [399] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(266), + [402] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(160), + [405] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(290), + [408] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(458), + [411] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(478), + [414] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(261), + [417] = {.entry = {.count = 1, .reusable = false}}, SHIFT(265), + [419] = {.entry = {.count = 1, .reusable = true}}, SHIFT(441), + [421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), + [423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(478), + [425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), + [427] = {.entry = {.count = 1, .reusable = false}}, SHIFT(126), + [429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), + [431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(432), + [433] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(126), + [436] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(156), + [439] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(432), + [442] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(455), + [445] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(489), + [448] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(129), + [451] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(129), + [454] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(128), + [457] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(152), + [460] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), + [462] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(122), + [465] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(490), + [468] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(117), + [471] = {.entry = {.count = 1, .reusable = false}}, SHIFT(342), + [473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(443), + [475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), + [477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), + [479] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), + [481] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), + [483] = {.entry = {.count = 1, .reusable = true}}, SHIFT(450), + [485] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), + [487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), + [489] = {.entry = {.count = 1, .reusable = true}}, SHIFT(439), + [491] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), + [493] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), + [495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), + [497] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), + [499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259), + [501] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(126), + [504] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(156), + [507] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__expression_list, 2), + [509] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(432), + [512] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(455), + [515] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(489), + [518] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(129), + [521] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(129), + [524] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(128), + [527] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(152), + [530] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(122), + [533] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(490), + [536] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(117), + [539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(282), + [541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293), + [543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(281), + [545] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264), + [547] = {.entry = {.count = 1, .reusable = false}}, SHIFT(344), + [549] = {.entry = {.count = 1, .reusable = false}}, SHIFT(121), + [551] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), + [553] = {.entry = {.count = 1, .reusable = false}}, SHIFT(269), + [555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), + [557] = {.entry = {.count = 1, .reusable = false}}, SHIFT(87), + [559] = {.entry = {.count = 1, .reusable = true}}, SHIFT(451), + [561] = {.entry = {.count = 1, .reusable = false}}, SHIFT(71), + [563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(150), + [565] = {.entry = {.count = 1, .reusable = false}}, SHIFT(165), + [567] = {.entry = {.count = 1, .reusable = false}}, SHIFT(96), + [569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(304), + [571] = {.entry = {.count = 1, .reusable = false}}, SHIFT(315), + [573] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__expression_list, 1), + [575] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__expression_list, 1), + [577] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), + [579] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 1), + [581] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 1), + [583] = {.entry = {.count = 1, .reusable = true}}, SHIFT(318), + [585] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_else, 1), + [587] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_else, 1), + [589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(172), + [591] = {.entry = {.count = 1, .reusable = false}}, SHIFT(411), + [593] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_else, 2), + [595] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_else, 2), + [597] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_else_repeat1, 2), + [599] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_else_repeat1, 2), + [601] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_if_else_repeat1, 2), SHIFT_REPEAT(172), + [604] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_if, 3), + [606] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_if, 3), + [608] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if, 3), + [610] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if, 3), + [612] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3), + [614] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment, 3), + [616] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match, 5), + [618] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match, 5), + [620] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return, 2), + [622] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return, 2), + [624] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 2), + [626] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 2), + [628] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for, 5), + [630] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for, 5), [632] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while, 3), [634] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while, 3), - [636] = {.entry = {.count = 1, .reusable = false}}, SHIFT(60), - [638] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), - [640] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match, 5), - [642] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match, 5), - [644] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 4), - [646] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment, 4), - [648] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for, 5), - [650] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for, 5), - [652] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 2), - [654] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 2), - [656] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3), - [658] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment, 3), - [660] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return, 2), - [662] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return, 2), - [664] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else, 2), - [666] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else, 2), - [668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), - [670] = {.entry = {.count = 1, .reusable = false}}, SHIFT(409), - [672] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_if_else_repeat1, 2), SHIFT_REPEAT(177), - [675] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment_operator, 1), - [677] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_operator, 1), - [679] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216), - [681] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), - [683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203), - [685] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 3), - [687] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 3), - [689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(318), - [691] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 4), - [693] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 4), - [695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), - [697] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), - [699] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), - [701] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_math_operator, 1), - [703] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_math_operator, 1), - [705] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_logic_operator, 1), - [707] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_logic_operator, 1), - [709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(457), - [711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), - [713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(483), - [715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), - [717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), - [719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(456), - [721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(478), - [725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), - [727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(476), - [729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), - [731] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 2), - [733] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 2), - [735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(384), - [737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), - [739] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 3), - [741] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 3), - [743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(386), - [745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(146), - [747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(276), - [749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), - [751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), + [636] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_else, 3), + [638] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_else, 3), + [640] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 4), + [642] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment, 4), + [644] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_assignment, 3), + [646] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index_assignment, 3), + [648] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else, 2), + [650] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else, 2), + [652] = {.entry = {.count = 1, .reusable = false}}, SHIFT(107), + [654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), + [656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), + [658] = {.entry = {.count = 1, .reusable = false}}, SHIFT(419), + [660] = {.entry = {.count = 1, .reusable = false}}, SHIFT(285), + [662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), + [664] = {.entry = {.count = 1, .reusable = false}}, SHIFT(74), + [666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), + [668] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_if_else_repeat1, 2), SHIFT_REPEAT(213), + [671] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), + [673] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment_operator, 1), + [675] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_operator, 1), + [677] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), + [679] = {.entry = {.count = 1, .reusable = true}}, SHIFT(204), + [681] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 3), + [683] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 3), + [685] = {.entry = {.count = 1, .reusable = true}}, SHIFT(313), + [687] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 4), + [689] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 4), + [691] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), + [693] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), + [695] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), + [697] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_math_operator, 1), + [699] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_math_operator, 1), + [701] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_logic_operator, 1), + [703] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_logic_operator, 1), + [705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(462), + [707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), + [709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(474), + [711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), + [715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(473), + [717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(475), + [721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [723] = {.entry = {.count = 1, .reusable = true}}, SHIFT(454), + [725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), + [727] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 3), + [729] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 3), + [731] = {.entry = {.count = 1, .reusable = true}}, SHIFT(386), + [733] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 2), + [735] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 2), + [737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(383), + [739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197), + [741] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), + [743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), + [745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), + [747] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), + [749] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 1), + [751] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1), [753] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 4), [755] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 4), - [757] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 5), - [759] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 5), - [761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), - [763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), - [765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), - [767] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 1), - [769] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1), - [771] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_type_repeat1, 2), SHIFT_REPEAT(359), - [774] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat1, 2), SHIFT_REPEAT(374), - [777] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_repeat1, 2), - [779] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat1, 2), SHIFT_REPEAT(389), - [782] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_type_repeat1, 2), SHIFT_REPEAT(461), - [785] = {.entry = {.count = 1, .reusable = false}}, SHIFT(359), - [787] = {.entry = {.count = 1, .reusable = true}}, SHIFT(374), - [789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(348), - [791] = {.entry = {.count = 1, .reusable = true}}, SHIFT(389), - [793] = {.entry = {.count = 1, .reusable = false}}, SHIFT(461), - [795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), - [797] = {.entry = {.count = 1, .reusable = true}}, SHIFT(299), - [799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(343), - [801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), - [803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), - [805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), - [807] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_type_repeat1, 1), - [809] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_repeat1, 1), - [811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(388), - [813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(292), - [815] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_type_repeat1, 2), - [817] = {.entry = {.count = 1, .reusable = false}}, SHIFT(398), - [819] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_specification, 3), - [821] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_specification, 3), - [823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), - [825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(425), - [827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), - [829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(404), - [831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), - [833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428), - [835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), - [837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), - [839] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 3), - [841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(449), - [843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), - [845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(385), - [847] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_structure_repeat1, 2), - [849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), - [851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), - [853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), - [855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(439), - [857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(440), - [859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), - [861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), - [863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(441), - [865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278), - [867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(277), - [869] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), - [871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), - [873] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_new_repeat1, 2), SHIFT_REPEAT(404), - [876] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_new_repeat1, 2), - [878] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), - [880] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), - [882] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), - [884] = {.entry = {.count = 1, .reusable = true}}, SHIFT(454), - [886] = {.entry = {.count = 1, .reusable = true}}, SHIFT(272), - [888] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), - [890] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 2), - [892] = {.entry = {.count = 1, .reusable = true}}, SHIFT(442), - [894] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 2), SHIFT_REPEAT(439), - [897] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_structure_repeat1, 2), SHIFT_REPEAT(428), - [900] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 4), - [902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(451), - [904] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 2), SHIFT_REPEAT(425), - [907] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 2), - [909] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_new_repeat1, 3), - [911] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_structure_repeat1, 3), - [913] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 3), - [915] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_new_repeat1, 4), - [917] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), - [919] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), - [921] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297), - [923] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 5), - [925] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_structure_repeat1, 4), - [927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(353), - [929] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), - [931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), - [933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(413), - [935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(420), - [937] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144), - [939] = {.entry = {.count = 1, .reusable = true}}, SHIFT(387), - [941] = {.entry = {.count = 1, .reusable = true}}, SHIFT(408), - [943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206), - [945] = {.entry = {.count = 1, .reusable = true}}, SHIFT(424), - [947] = {.entry = {.count = 1, .reusable = true}}, SHIFT(250), - [949] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238), - [951] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), - [953] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360), - [955] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), - [957] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), - [959] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), - [961] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), - [963] = {.entry = {.count = 1, .reusable = true}}, SHIFT(419), - [965] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241), - [967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [969] = {.entry = {.count = 1, .reusable = true}}, SHIFT(178), - [971] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), - [973] = {.entry = {.count = 1, .reusable = true}}, SHIFT(391), - [975] = {.entry = {.count = 1, .reusable = true}}, SHIFT(474), - [977] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), - [979] = {.entry = {.count = 1, .reusable = true}}, SHIFT(477), - [981] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [983] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), - [985] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240), - [987] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [989] = {.entry = {.count = 1, .reusable = true}}, SHIFT(463), - [991] = {.entry = {.count = 1, .reusable = true}}, SHIFT(218), - [993] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), - [995] = {.entry = {.count = 1, .reusable = true}}, SHIFT(459), - [997] = {.entry = {.count = 1, .reusable = true}}, SHIFT(247), - [999] = {.entry = {.count = 1, .reusable = true}}, SHIFT(464), - [1001] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), - [1003] = {.entry = {.count = 1, .reusable = true}}, SHIFT(488), - [1005] = {.entry = {.count = 1, .reusable = true}}, SHIFT(416), + [757] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), + [759] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 5), + [761] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 5), + [763] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), + [765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), + [767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), + [769] = {.entry = {.count = 1, .reusable = false}}, SHIFT(350), + [771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(361), + [773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(340), + [775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382), + [777] = {.entry = {.count = 1, .reusable = false}}, SHIFT(467), + [779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(341), + [781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), + [783] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), + [785] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_type_repeat1, 2), SHIFT_REPEAT(350), + [788] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat1, 2), SHIFT_REPEAT(361), + [791] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_repeat1, 2), + [793] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat1, 2), SHIFT_REPEAT(382), + [796] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_type_repeat1, 2), SHIFT_REPEAT(467), + [799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), + [801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), + [803] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_type_repeat1, 1), + [805] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_repeat1, 1), + [807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(385), + [809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(287), + [811] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_type_repeat1, 2), + [813] = {.entry = {.count = 1, .reusable = false}}, SHIFT(425), + [815] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_specification, 3), + [817] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_specification, 3), + [819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [821] = {.entry = {.count = 1, .reusable = true}}, SHIFT(395), + [823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), + [825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [827] = {.entry = {.count = 1, .reusable = true}}, SHIFT(381), + [829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(402), + [831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), + [833] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_structure_repeat1, 2), SHIFT_REPEAT(424), + [836] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_structure_repeat1, 2), + [838] = {.entry = {.count = 1, .reusable = true}}, SHIFT(424), + [840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(276), + [842] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 3), + [844] = {.entry = {.count = 1, .reusable = true}}, SHIFT(433), + [846] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), + [848] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), + [850] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), + [852] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275), + [854] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_new_repeat1, 2), SHIFT_REPEAT(402), + [857] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_new_repeat1, 2), + [859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), + [861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), + [863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), + [865] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 2), SHIFT_REPEAT(436), + [868] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 2), + [870] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270), + [872] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), + [874] = {.entry = {.count = 1, .reusable = true}}, SHIFT(294), + [876] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), + [878] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), + [880] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), + [882] = {.entry = {.count = 1, .reusable = true}}, SHIFT(446), + [884] = {.entry = {.count = 1, .reusable = true}}, SHIFT(436), + [886] = {.entry = {.count = 1, .reusable = true}}, SHIFT(447), + [888] = {.entry = {.count = 1, .reusable = true}}, SHIFT(449), + [890] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), + [892] = {.entry = {.count = 1, .reusable = true}}, SHIFT(437), + [894] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 4), + [896] = {.entry = {.count = 1, .reusable = true}}, SHIFT(444), + [898] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 2), SHIFT_REPEAT(395), + [901] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 2), + [903] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), + [905] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_structure_repeat1, 3), + [907] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), + [909] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291), + [911] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_new_repeat1, 4), + [913] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), + [915] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 5), + [917] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_structure_repeat1, 4), + [919] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 3), + [921] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_new_repeat1, 3), + [923] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248), + [925] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), + [927] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), + [929] = {.entry = {.count = 1, .reusable = true}}, SHIFT(410), + [931] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417), + [933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), + [935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), + [937] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), + [939] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252), + [941] = {.entry = {.count = 1, .reusable = true}}, SHIFT(415), + [943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), + [945] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), + [947] = {.entry = {.count = 1, .reusable = true}}, SHIFT(247), + [949] = {.entry = {.count = 1, .reusable = true}}, SHIFT(351), + [951] = {.entry = {.count = 1, .reusable = true}}, SHIFT(356), + [953] = {.entry = {.count = 1, .reusable = true}}, SHIFT(384), + [955] = {.entry = {.count = 1, .reusable = true}}, SHIFT(389), + [957] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), + [959] = {.entry = {.count = 1, .reusable = true}}, SHIFT(404), + [961] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), + [963] = {.entry = {.count = 1, .reusable = true}}, SHIFT(416), + [965] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), + [967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [969] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), + [971] = {.entry = {.count = 1, .reusable = true}}, SHIFT(245), + [973] = {.entry = {.count = 1, .reusable = true}}, SHIFT(470), + [975] = {.entry = {.count = 1, .reusable = true}}, SHIFT(469), + [977] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [979] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), + [981] = {.entry = {.count = 1, .reusable = true}}, SHIFT(253), + [983] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [985] = {.entry = {.count = 1, .reusable = true}}, SHIFT(459), + [987] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251), + [989] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217), + [991] = {.entry = {.count = 1, .reusable = true}}, SHIFT(456), + [993] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249), + [995] = {.entry = {.count = 1, .reusable = true}}, SHIFT(461), + [997] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), + [999] = {.entry = {.count = 1, .reusable = true}}, SHIFT(463), + [1001] = {.entry = {.count = 1, .reusable = true}}, SHIFT(420), }; #ifdef __cplusplus