diff --git a/tree-sitter-dust/corpus/functions.txt b/tree-sitter-dust/corpus/functions.txt index 1530c92..7980e32 100644 --- a/tree-sitter-dust/corpus/functions.txt +++ b/tree-sitter-dust/corpus/functions.txt @@ -151,10 +151,7 @@ Complex Function Call foobar( "hi" 42 - { - x = 1 - y = 2 - } + Baz:new() ) -------------------------------------------------------------------------------- @@ -172,18 +169,13 @@ foobar( (value (integer))) (expression - (value - (map - (identifier) - (statement - (expression - (value - (integer)))) - (identifier) - (statement - (expression - (value - (integer))))))))))) + (function_call + (function_expression + (index + (index_expression + (identifier)) + (index_expression + (identifier)))))))))) ================================================================================ Callback Function Call diff --git a/tree-sitter-dust/corpus/maps.txt b/tree-sitter-dust/corpus/structure.txt similarity index 57% rename from tree-sitter-dust/corpus/maps.txt rename to tree-sitter-dust/corpus/structure.txt index de21453..d4b1eca 100644 --- a/tree-sitter-dust/corpus/maps.txt +++ b/tree-sitter-dust/corpus/structure.txt @@ -1,8 +1,8 @@ ================================================================================ -Simple Map +Simple Structure ================================================================================ -{ answer = 42 } +struct { answer = 42 } -------------------------------------------------------------------------------- @@ -10,7 +10,7 @@ Simple Map (statement (expression (value - (map + (structure (identifier) (statement (expression @@ -18,10 +18,10 @@ Simple Map (integer))))))))) ================================================================================ -Map with Types +Structure with Types ================================================================================ -{ +struct { answer = 42 stuff <[str]> = [ "some" "stuff" ] } @@ -32,7 +32,7 @@ Map with Types (statement (expression (value - (map + (structure (identifier) (type_definition (type)) @@ -56,52 +56,26 @@ Map with Types (string)))))))))))) ================================================================================ -Nested Maps +Nested Structures ================================================================================ -x = { - y = { - foo = 'bar' - z = { - message = 'hiya' - } - } - f = 12 +struct { + bar + baz } -------------------------------------------------------------------------------- (root (statement - (assignment - (identifier) - (assignment_operator) - (statement - (expression - (value - (map - (identifier) - (statement - (expression - (value - (map - (identifier) - (statement - (expression - (value - (string)))) - (identifier) - (statement - (expression - (value - (map - (identifier) - (statement - (expression - (value - (string)))))))))))) - (identifier) - (statement - (expression - (value - (integer))))))))))) + (expression + (value + (structure + (identifier) + (type_definition + (type + (identifier))) + (identifier) + (type_definition + (type + (identifier)))))))) diff --git a/tree-sitter-dust/grammar.js b/tree-sitter-dust/grammar.js index e28cec7..5b08b02 100644 --- a/tree-sitter-dust/grammar.js +++ b/tree-sitter-dust/grammar.js @@ -81,7 +81,7 @@ module.exports = grammar({ $.string, $.boolean, $.list, - $.map, + $.structure, $.option, $.built_in_value, ), @@ -167,15 +167,17 @@ module.exports = grammar({ ']', ), - map: $ => + structure: $ => seq( + 'struct', '{', repeat1( seq( $.identifier, optional($.type_definition), - '=', - $.statement, + optional( + seq('=', $.statement), + ), optional(','), ), ), @@ -347,10 +349,10 @@ module.exports = grammar({ 'collection', 'float', 'int', - 'map', 'none', 'num', 'str', + $.identifier, seq('[', $.type, ']'), seq( '{', diff --git a/tree-sitter-dust/src/grammar.json b/tree-sitter-dust/src/grammar.json index 34287c7..a035338 100644 --- a/tree-sitter-dust/src/grammar.json +++ b/tree-sitter-dust/src/grammar.json @@ -235,7 +235,7 @@ }, { "type": "SYMBOL", - "name": "map" + "name": "structure" }, { "type": "SYMBOL", @@ -501,9 +501,13 @@ } ] }, - "map": { + "structure": { "type": "SEQ", "members": [ + { + "type": "STRING", + "value": "struct" + }, { "type": "STRING", "value": "{" @@ -530,12 +534,25 @@ ] }, { - "type": "STRING", - "value": "=" - }, - { - "type": "SYMBOL", - "name": "statement" + "type": "CHOICE", + "members": [ + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "=" + }, + { + "type": "SYMBOL", + "name": "statement" + } + ] + }, + { + "type": "BLANK" + } + ] }, { "type": "CHOICE", @@ -1099,10 +1116,6 @@ "type": "STRING", "value": "int" }, - { - "type": "STRING", - "value": "map" - }, { "type": "STRING", "value": "none" @@ -1115,6 +1128,10 @@ "type": "STRING", "value": "str" }, + { + "type": "SYMBOL", + "name": "identifier" + }, { "type": "SEQ", "members": [ diff --git a/tree-sitter-dust/src/node-types.json b/tree-sitter-dust/src/node-types.json index 5cc8aa3..ca654ab 100644 --- a/tree-sitter-dust/src/node-types.json +++ b/tree-sitter-dust/src/node-types.json @@ -375,29 +375,6 @@ "named": true, "fields": {} }, - { - "type": "map", - "named": true, - "fields": {}, - "children": { - "multiple": true, - "required": true, - "types": [ - { - "type": "identifier", - "named": true - }, - { - "type": "statement", - "named": true - }, - { - "type": "type_definition", - "named": true - } - ] - } - }, { "type": "match", "named": true, @@ -533,6 +510,29 @@ ] } }, + { + "type": "structure", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "identifier", + "named": true + }, + { + "type": "statement", + "named": true + }, + { + "type": "type_definition", + "named": true + } + ] + } + }, { "type": "type", "named": true, @@ -603,10 +603,6 @@ "type": "list", "named": true }, - { - "type": "map", - "named": true - }, { "type": "option", "named": true @@ -614,6 +610,10 @@ { "type": "string", "named": true + }, + { + "type": "structure", + "named": true } ] } @@ -802,11 +802,11 @@ }, { "type": "float", - "named": true + "named": false }, { "type": "float", - "named": false + "named": true }, { "type": "for", @@ -844,10 +844,6 @@ "type": "length", "named": false }, - { - "type": "map", - "named": false - }, { "type": "match", "named": false @@ -892,6 +888,10 @@ "type": "string", "named": false }, + { + "type": "struct", + "named": false + }, { "type": "true", "named": false diff --git a/tree-sitter-dust/src/parser.c b/tree-sitter-dust/src/parser.c index 21c8a85..5274899 100644 --- a/tree-sitter-dust/src/parser.c +++ b/tree-sitter-dust/src/parser.c @@ -6,8 +6,8 @@ #endif #define LANGUAGE_VERSION 14 -#define STATE_COUNT 449 -#define LARGE_STATE_COUNT 44 +#define STATE_COUNT 447 +#define LARGE_STATE_COUNT 39 #define SYMBOL_COUNT 109 #define ALIAS_COUNT 0 #define TOKEN_COUNT 66 @@ -33,42 +33,42 @@ enum { anon_sym_false = 14, anon_sym_LBRACK = 15, anon_sym_RBRACK = 16, - anon_sym_EQ = 17, - anon_sym_none = 18, - anon_sym_some = 19, - anon_sym_COLON = 20, - anon_sym_DOT_DOT = 21, - anon_sym_PLUS = 22, - anon_sym_DASH = 23, - anon_sym_STAR = 24, - anon_sym_SLASH = 25, - anon_sym_PERCENT = 26, - anon_sym_EQ_EQ = 27, - anon_sym_BANG_EQ = 28, - anon_sym_AMP_AMP = 29, - anon_sym_PIPE_PIPE = 30, - anon_sym_GT = 31, - anon_sym_LT = 32, - anon_sym_GT_EQ = 33, - anon_sym_LT_EQ = 34, - anon_sym_PLUS_EQ = 35, - anon_sym_DASH_EQ = 36, - anon_sym_if = 37, - anon_sym_elseif = 38, - anon_sym_else = 39, - anon_sym_match = 40, - anon_sym_EQ_GT = 41, - anon_sym_while = 42, - anon_sym_for = 43, - anon_sym_asyncfor = 44, - anon_sym_in = 45, - anon_sym_return = 46, - anon_sym_any = 47, - anon_sym_bool = 48, - anon_sym_collection = 49, - anon_sym_float = 50, - anon_sym_int = 51, - anon_sym_map = 52, + anon_sym_struct = 17, + anon_sym_EQ = 18, + anon_sym_none = 19, + anon_sym_some = 20, + anon_sym_COLON = 21, + anon_sym_DOT_DOT = 22, + anon_sym_PLUS = 23, + anon_sym_DASH = 24, + anon_sym_STAR = 25, + anon_sym_SLASH = 26, + anon_sym_PERCENT = 27, + anon_sym_EQ_EQ = 28, + anon_sym_BANG_EQ = 29, + anon_sym_AMP_AMP = 30, + anon_sym_PIPE_PIPE = 31, + anon_sym_GT = 32, + anon_sym_LT = 33, + anon_sym_GT_EQ = 34, + anon_sym_LT_EQ = 35, + anon_sym_PLUS_EQ = 36, + anon_sym_DASH_EQ = 37, + anon_sym_if = 38, + anon_sym_elseif = 39, + anon_sym_else = 40, + anon_sym_match = 41, + anon_sym_EQ_GT = 42, + anon_sym_while = 43, + anon_sym_for = 44, + anon_sym_asyncfor = 45, + anon_sym_in = 46, + anon_sym_return = 47, + anon_sym_any = 48, + anon_sym_bool = 49, + anon_sym_collection = 50, + anon_sym_float = 51, + anon_sym_int = 52, anon_sym_num = 53, anon_sym_str = 54, anon_sym_DASH_GT = 55, @@ -91,7 +91,7 @@ enum { sym_value = 72, sym_boolean = 73, sym_list = 74, - sym_map = 75, + sym_structure = 75, sym_option = 76, sym_index = 77, sym_index_expression = 78, @@ -120,7 +120,7 @@ enum { sym_built_in_value = 101, aux_sym_root_repeat1 = 102, aux_sym_list_repeat1 = 103, - aux_sym_map_repeat1 = 104, + aux_sym_structure_repeat1 = 104, aux_sym_if_else_repeat1 = 105, aux_sym_match_repeat1 = 106, aux_sym_type_repeat1 = 107, @@ -145,6 +145,7 @@ static const char * const ts_symbol_names[] = { [anon_sym_false] = "false", [anon_sym_LBRACK] = "[", [anon_sym_RBRACK] = "]", + [anon_sym_struct] = "struct", [anon_sym_EQ] = "=", [anon_sym_none] = "none", [anon_sym_some] = "some", @@ -180,7 +181,6 @@ static const char * const ts_symbol_names[] = { [anon_sym_collection] = "collection", [anon_sym_float] = "float", [anon_sym_int] = "int", - [anon_sym_map] = "map", [anon_sym_num] = "num", [anon_sym_str] = "str", [anon_sym_DASH_GT] = "->", @@ -203,7 +203,7 @@ static const char * const ts_symbol_names[] = { [sym_value] = "value", [sym_boolean] = "boolean", [sym_list] = "list", - [sym_map] = "map", + [sym_structure] = "structure", [sym_option] = "option", [sym_index] = "index", [sym_index_expression] = "index_expression", @@ -232,7 +232,7 @@ static const char * const ts_symbol_names[] = { [sym_built_in_value] = "built_in_value", [aux_sym_root_repeat1] = "root_repeat1", [aux_sym_list_repeat1] = "list_repeat1", - [aux_sym_map_repeat1] = "map_repeat1", + [aux_sym_structure_repeat1] = "structure_repeat1", [aux_sym_if_else_repeat1] = "if_else_repeat1", [aux_sym_match_repeat1] = "match_repeat1", [aux_sym_type_repeat1] = "type_repeat1", @@ -257,6 +257,7 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_false] = anon_sym_false, [anon_sym_LBRACK] = anon_sym_LBRACK, [anon_sym_RBRACK] = anon_sym_RBRACK, + [anon_sym_struct] = anon_sym_struct, [anon_sym_EQ] = anon_sym_EQ, [anon_sym_none] = anon_sym_none, [anon_sym_some] = anon_sym_some, @@ -292,7 +293,6 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_collection] = anon_sym_collection, [anon_sym_float] = anon_sym_float, [anon_sym_int] = anon_sym_int, - [anon_sym_map] = anon_sym_map, [anon_sym_num] = anon_sym_num, [anon_sym_str] = anon_sym_str, [anon_sym_DASH_GT] = anon_sym_DASH_GT, @@ -315,7 +315,7 @@ static const TSSymbol ts_symbol_map[] = { [sym_value] = sym_value, [sym_boolean] = sym_boolean, [sym_list] = sym_list, - [sym_map] = sym_map, + [sym_structure] = sym_structure, [sym_option] = sym_option, [sym_index] = sym_index, [sym_index_expression] = sym_index_expression, @@ -344,7 +344,7 @@ static const TSSymbol ts_symbol_map[] = { [sym_built_in_value] = sym_built_in_value, [aux_sym_root_repeat1] = aux_sym_root_repeat1, [aux_sym_list_repeat1] = aux_sym_list_repeat1, - [aux_sym_map_repeat1] = aux_sym_map_repeat1, + [aux_sym_structure_repeat1] = aux_sym_structure_repeat1, [aux_sym_if_else_repeat1] = aux_sym_if_else_repeat1, [aux_sym_match_repeat1] = aux_sym_match_repeat1, [aux_sym_type_repeat1] = aux_sym_type_repeat1, @@ -420,6 +420,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, + [anon_sym_struct] = { + .visible = true, + .named = false, + }, [anon_sym_EQ] = { .visible = true, .named = false, @@ -560,10 +564,6 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [anon_sym_map] = { - .visible = true, - .named = false, - }, [anon_sym_num] = { .visible = true, .named = false, @@ -652,7 +652,7 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, - [sym_map] = { + [sym_structure] = { .visible = true, .named = true, }, @@ -768,7 +768,7 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = false, }, - [aux_sym_map_repeat1] = { + [aux_sym_structure_repeat1] = { .visible = false, .named = false, }, @@ -803,53 +803,53 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [1] = 1, [2] = 2, [3] = 3, - [4] = 3, - [5] = 3, - [6] = 6, - [7] = 7, + [4] = 4, + [5] = 5, + [6] = 3, + [7] = 4, [8] = 8, - [9] = 9, - [10] = 6, - [11] = 8, - [12] = 7, - [13] = 9, - [14] = 8, - [15] = 7, - [16] = 7, - [17] = 9, - [18] = 6, - [19] = 9, - [20] = 7, - [21] = 8, - [22] = 6, - [23] = 9, + [9] = 5, + [10] = 8, + [11] = 4, + [12] = 4, + [13] = 3, + [14] = 4, + [15] = 8, + [16] = 16, + [17] = 3, + [18] = 5, + [19] = 5, + [20] = 8, + [21] = 3, + [22] = 5, + [23] = 8, [24] = 24, - [25] = 6, - [26] = 8, + [25] = 25, + [26] = 25, [27] = 27, - [28] = 28, - [29] = 27, - [30] = 28, - [31] = 31, - [32] = 32, + [28] = 24, + [29] = 29, + [30] = 25, + [31] = 29, + [32] = 27, [33] = 27, - [34] = 32, - [35] = 28, + [34] = 29, + [35] = 35, [36] = 36, [37] = 37, - [38] = 37, + [38] = 24, [39] = 39, - [40] = 32, - [41] = 37, - [42] = 42, - [43] = 43, - [44] = 44, + [40] = 40, + [41] = 41, + [42] = 41, + [43] = 40, + [44] = 39, [45] = 45, [46] = 46, - [47] = 45, - [48] = 44, + [47] = 47, + [48] = 48, [49] = 49, - [50] = 46, + [50] = 50, [51] = 51, [52] = 52, [53] = 53, @@ -860,10 +860,10 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [58] = 58, [59] = 59, [60] = 60, - [61] = 61, + [61] = 50, [62] = 62, [63] = 63, - [64] = 56, + [64] = 64, [65] = 65, [66] = 66, [67] = 67, @@ -873,381 +873,379 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [71] = 71, [72] = 72, [73] = 73, - [74] = 74, + [74] = 39, [75] = 75, - [76] = 76, - [77] = 77, - [78] = 78, - [79] = 79, - [80] = 45, - [81] = 44, - [82] = 44, - [83] = 45, - [84] = 84, - [85] = 84, - [86] = 46, - [87] = 68, - [88] = 44, - [89] = 45, - [90] = 46, - [91] = 53, - [92] = 77, - [93] = 52, - [94] = 75, - [95] = 72, - [96] = 78, - [97] = 58, - [98] = 57, - [99] = 59, - [100] = 60, - [101] = 74, - [102] = 71, - [103] = 76, + [76] = 40, + [77] = 75, + [78] = 54, + [79] = 40, + [80] = 41, + [81] = 39, + [82] = 39, + [83] = 40, + [84] = 41, + [85] = 62, + [86] = 58, + [87] = 65, + [88] = 52, + [89] = 46, + [90] = 72, + [91] = 54, + [92] = 53, + [93] = 48, + [94] = 59, + [95] = 66, + [96] = 69, + [97] = 70, + [98] = 71, + [99] = 47, + [100] = 68, + [101] = 50, + [102] = 50, + [103] = 55, [104] = 51, - [105] = 70, - [106] = 55, + [105] = 63, + [106] = 49, [107] = 56, - [108] = 73, - [109] = 68, - [110] = 63, - [111] = 79, - [112] = 69, - [113] = 66, - [114] = 62, - [115] = 61, - [116] = 56, - [117] = 65, - [118] = 49, - [119] = 67, - [120] = 44, - [121] = 45, - [122] = 68, + [108] = 57, + [109] = 64, + [110] = 67, + [111] = 73, + [112] = 45, + [113] = 60, + [114] = 39, + [115] = 40, + [116] = 116, + [117] = 117, + [118] = 54, + [119] = 117, + [120] = 120, + [121] = 121, + [122] = 75, [123] = 123, [124] = 124, - [125] = 123, - [126] = 126, - [127] = 127, - [128] = 128, - [129] = 126, - [130] = 84, - [131] = 131, - [132] = 126, - [133] = 126, + [125] = 124, + [126] = 124, + [127] = 124, + [128] = 75, + [129] = 129, + [130] = 129, + [131] = 121, + [132] = 132, + [133] = 132, [134] = 134, - [135] = 135, - [136] = 135, - [137] = 131, - [138] = 134, - [139] = 139, - [140] = 84, - [141] = 135, - [142] = 142, - [143] = 128, - [144] = 144, - [145] = 142, - [146] = 126, - [147] = 126, - [148] = 134, - [149] = 131, - [150] = 144, - [151] = 144, + [135] = 123, + [136] = 136, + [137] = 137, + [138] = 124, + [139] = 123, + [140] = 134, + [141] = 129, + [142] = 124, + [143] = 120, + [144] = 132, + [145] = 121, + [146] = 134, + [147] = 147, + [148] = 120, + [149] = 147, + [150] = 150, + [151] = 151, [152] = 152, - [153] = 139, - [154] = 128, - [155] = 142, + [153] = 153, + [154] = 152, + [155] = 155, [156] = 156, - [157] = 157, - [158] = 158, - [159] = 159, - [160] = 160, - [161] = 158, + [157] = 153, + [158] = 156, + [159] = 153, + [160] = 156, + [161] = 153, [162] = 162, - [163] = 159, - [164] = 164, - [165] = 160, - [166] = 160, - [167] = 162, - [168] = 164, - [169] = 164, - [170] = 170, - [171] = 171, - [172] = 158, + [163] = 156, + [164] = 153, + [165] = 165, + [166] = 156, + [167] = 153, + [168] = 152, + [169] = 162, + [170] = 153, + [171] = 165, + [172] = 156, [173] = 173, - [174] = 162, - [175] = 160, - [176] = 162, - [177] = 162, - [178] = 160, - [179] = 171, - [180] = 160, - [181] = 181, - [182] = 158, - [183] = 158, - [184] = 158, - [185] = 158, - [186] = 158, + [174] = 156, + [175] = 173, + [176] = 156, + [177] = 153, + [178] = 156, + [179] = 153, + [180] = 152, + [181] = 156, + [182] = 155, + [183] = 183, + [184] = 152, + [185] = 153, + [186] = 156, [187] = 187, - [188] = 170, - [189] = 159, - [190] = 171, + [188] = 188, + [189] = 152, + [190] = 153, [191] = 162, - [192] = 162, - [193] = 160, - [194] = 162, - [195] = 173, - [196] = 187, - [197] = 181, - [198] = 160, - [199] = 159, - [200] = 160, - [201] = 158, - [202] = 160, - [203] = 158, - [204] = 160, - [205] = 158, - [206] = 158, - [207] = 162, - [208] = 170, - [209] = 162, - [210] = 160, - [211] = 162, - [212] = 212, + [192] = 165, + [193] = 152, + [194] = 156, + [195] = 183, + [196] = 152, + [197] = 153, + [198] = 155, + [199] = 183, + [200] = 162, + [201] = 152, + [202] = 152, + [203] = 152, + [204] = 188, + [205] = 187, + [206] = 206, + [207] = 207, + [208] = 208, + [209] = 53, + [210] = 210, + [211] = 67, + [212] = 73, [213] = 213, [214] = 214, - [215] = 53, + [215] = 215, [216] = 216, - [217] = 55, - [218] = 78, + [217] = 217, + [218] = 218, [219] = 219, [220] = 220, [221] = 221, [222] = 222, [223] = 223, - [224] = 224, + [224] = 223, [225] = 225, [226] = 226, - [227] = 227, + [227] = 39, [228] = 228, - [229] = 229, - [230] = 223, - [231] = 231, - [232] = 232, - [233] = 46, - [234] = 234, - [235] = 234, - [236] = 234, - [237] = 44, - [238] = 234, - [239] = 45, - [240] = 213, - [241] = 234, - [242] = 234, - [243] = 234, - [244] = 212, - [245] = 60, - [246] = 73, - [247] = 57, - [248] = 46, - [249] = 79, - [250] = 68, - [251] = 51, - [252] = 78, - [253] = 70, - [254] = 56, - [255] = 61, - [256] = 69, - [257] = 63, - [258] = 71, - [259] = 59, - [260] = 65, - [261] = 66, - [262] = 76, - [263] = 55, - [264] = 77, - [265] = 74, - [266] = 214, - [267] = 52, - [268] = 75, - [269] = 72, - [270] = 62, - [271] = 44, - [272] = 58, - [273] = 45, - [274] = 53, - [275] = 275, - [276] = 56, - [277] = 55, - [278] = 78, - [279] = 53, - [280] = 219, - [281] = 216, - [282] = 49, - [283] = 232, - [284] = 231, - [285] = 220, - [286] = 223, - [287] = 225, - [288] = 228, - [289] = 68, - [290] = 222, - [291] = 221, - [292] = 223, - [293] = 229, - [294] = 226, - [295] = 227, - [296] = 67, - [297] = 224, + [229] = 40, + [230] = 41, + [231] = 228, + [232] = 206, + [233] = 207, + [234] = 228, + [235] = 228, + [236] = 228, + [237] = 228, + [238] = 228, + [239] = 54, + [240] = 65, + [241] = 62, + [242] = 66, + [243] = 208, + [244] = 73, + [245] = 59, + [246] = 47, + [247] = 46, + [248] = 41, + [249] = 64, + [250] = 48, + [251] = 67, + [252] = 53, + [253] = 39, + [254] = 69, + [255] = 57, + [256] = 72, + [257] = 56, + [258] = 68, + [259] = 58, + [260] = 52, + [261] = 261, + [262] = 40, + [263] = 49, + [264] = 50, + [265] = 63, + [266] = 51, + [267] = 70, + [268] = 55, + [269] = 71, + [270] = 50, + [271] = 73, + [272] = 67, + [273] = 210, + [274] = 213, + [275] = 53, + [276] = 45, + [277] = 60, + [278] = 223, + [279] = 214, + [280] = 223, + [281] = 218, + [282] = 216, + [283] = 215, + [284] = 54, + [285] = 217, + [286] = 221, + [287] = 222, + [288] = 226, + [289] = 225, + [290] = 220, + [291] = 219, + [292] = 39, + [293] = 40, + [294] = 294, + [295] = 295, + [296] = 296, + [297] = 297, [298] = 298, - [299] = 45, - [300] = 44, + [299] = 41, + [300] = 75, [301] = 301, - [302] = 302, - [303] = 303, - [304] = 46, + [302] = 39, + [303] = 40, + [304] = 75, [305] = 305, - [306] = 306, - [307] = 84, - [308] = 45, - [309] = 44, - [310] = 84, - [311] = 45, - [312] = 312, + [306] = 39, + [307] = 40, + [308] = 308, + [309] = 309, + [310] = 41, + [311] = 305, + [312] = 305, [313] = 313, - [314] = 312, - [315] = 46, - [316] = 312, - [317] = 317, - [318] = 313, + [314] = 308, + [315] = 313, + [316] = 309, + [317] = 308, + [318] = 54, [319] = 319, - [320] = 44, - [321] = 319, - [322] = 319, - [323] = 317, - [324] = 60, - [325] = 68, - [326] = 56, - [327] = 327, + [320] = 320, + [321] = 321, + [322] = 59, + [323] = 50, + [324] = 324, + [325] = 40, + [326] = 326, + [327] = 39, [328] = 328, [329] = 329, [330] = 330, - [331] = 45, - [332] = 332, - [333] = 44, + [331] = 329, + [332] = 330, + [333] = 330, [334] = 334, [335] = 335, [336] = 336, [337] = 337, [338] = 336, - [339] = 335, - [340] = 336, - [341] = 341, + [339] = 337, + [340] = 337, + [341] = 337, [342] = 342, - [343] = 342, - [344] = 344, - [345] = 342, - [346] = 346, - [347] = 347, - [348] = 342, - [349] = 342, - [350] = 346, - [351] = 342, - [352] = 346, - [353] = 346, - [354] = 342, - [355] = 342, - [356] = 342, - [357] = 342, - [358] = 342, + [343] = 337, + [344] = 337, + [345] = 336, + [346] = 337, + [347] = 337, + [348] = 348, + [349] = 349, + [350] = 337, + [351] = 337, + [352] = 336, + [353] = 337, + [354] = 337, + [355] = 355, + [356] = 356, + [357] = 355, + [358] = 355, [359] = 359, - [360] = 342, + [360] = 360, [361] = 361, [362] = 362, - [363] = 362, - [364] = 362, + [363] = 363, + [364] = 364, [365] = 365, - [366] = 366, - [367] = 367, + [366] = 206, + [367] = 207, [368] = 368, [369] = 369, - [370] = 370, - [371] = 371, - [372] = 213, - [373] = 212, + [370] = 369, + [371] = 369, + [372] = 372, + [373] = 373, [374] = 374, - [375] = 374, - [376] = 374, + [375] = 375, + [376] = 376, [377] = 377, [378] = 378, [379] = 379, - [380] = 380, - [381] = 380, - [382] = 378, + [380] = 373, + [381] = 377, + [382] = 375, [383] = 383, - [384] = 384, - [385] = 385, - [386] = 386, + [384] = 373, + [385] = 379, + [386] = 375, [387] = 387, [388] = 388, - [389] = 388, - [390] = 385, - [391] = 378, - [392] = 392, - [393] = 385, + [389] = 374, + [390] = 374, + [391] = 379, + [392] = 377, + [393] = 393, [394] = 394, - [395] = 388, - [396] = 384, - [397] = 384, - [398] = 380, + [395] = 395, + [396] = 394, + [397] = 393, + [398] = 398, [399] = 399, - [400] = 400, - [401] = 400, + [400] = 394, + [401] = 401, [402] = 402, - [403] = 403, - [404] = 404, - [405] = 404, + [403] = 393, + [404] = 398, + [405] = 405, [406] = 406, - [407] = 407, - [408] = 408, - [409] = 406, - [410] = 404, - [411] = 408, + [407] = 402, + [408] = 402, + [409] = 409, + [410] = 398, + [411] = 411, [412] = 412, - [413] = 400, - [414] = 408, - [415] = 406, + [413] = 413, + [414] = 414, + [415] = 412, [416] = 416, [417] = 417, - [418] = 418, + [418] = 417, [419] = 419, [420] = 420, - [421] = 418, - [422] = 422, - [423] = 423, - [424] = 422, - [425] = 422, - [426] = 422, - [427] = 417, + [421] = 416, + [422] = 412, + [423] = 417, + [424] = 424, + [425] = 417, + [426] = 426, + [427] = 413, [428] = 428, - [429] = 422, + [429] = 428, [430] = 430, - [431] = 417, - [432] = 422, - [433] = 417, - [434] = 434, - [435] = 435, - [436] = 436, - [437] = 437, - [438] = 417, - [439] = 418, - [440] = 419, - [441] = 422, + [431] = 430, + [432] = 432, + [433] = 412, + [434] = 416, + [435] = 412, + [436] = 412, + [437] = 417, + [438] = 438, + [439] = 439, + [440] = 413, + [441] = 428, [442] = 442, - [443] = 443, - [444] = 436, - [445] = 419, - [446] = 435, - [447] = 436, - [448] = 435, + [443] = 430, + [444] = 412, + [445] = 424, + [446] = 424, }; static bool ts_lex(TSLexer *lexer, TSStateId state) { @@ -1423,7 +1421,6 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == '[') ADVANCE(48); if (lookahead == '`') ADVANCE(15); if (lookahead == 'e') ADVANCE(39); - if (lookahead == '{') ADVANCE(33); if (lookahead == '}') ADVANCE(34); if (lookahead == '\t' || lookahead == '\n' || @@ -1899,68 +1896,67 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { if (lookahead == 'n') ADVANCE(55); END_STATE(); case 31: - if (lookahead == 'p') ADVANCE(56); - if (lookahead == 't') ADVANCE(57); + if (lookahead == 't') ADVANCE(56); END_STATE(); case 32: - if (lookahead == 'n') ADVANCE(58); + if (lookahead == 'n') ADVANCE(57); END_STATE(); case 33: - if (lookahead == 'm') ADVANCE(59); + if (lookahead == 'm') ADVANCE(58); END_STATE(); case 34: - if (lookahead == 't') ADVANCE(60); + if (lookahead == 't') ADVANCE(59); END_STATE(); case 35: - if (lookahead == 't') ADVANCE(61); + if (lookahead == 't') ADVANCE(60); END_STATE(); case 36: - if (lookahead == 'n') ADVANCE(62); + if (lookahead == 'n') ADVANCE(61); END_STATE(); case 37: - if (lookahead == 't') ADVANCE(63); + if (lookahead == 't') ADVANCE(62); END_STATE(); case 38: - if (lookahead == 'm') ADVANCE(64); + if (lookahead == 'm') ADVANCE(63); END_STATE(); case 39: - if (lookahead == 'r') ADVANCE(65); + if (lookahead == 'r') ADVANCE(64); END_STATE(); case 40: - if (lookahead == 'u') ADVANCE(66); + if (lookahead == 'u') ADVANCE(65); END_STATE(); case 41: - if (lookahead == 'i') ADVANCE(67); + if (lookahead == 'i') ADVANCE(66); END_STATE(); case 42: ACCEPT_TOKEN(anon_sym_any); END_STATE(); case 43: - if (lookahead == 's') ADVANCE(68); + if (lookahead == 's') ADVANCE(67); END_STATE(); case 44: - if (lookahead == 'e') ADVANCE(69); + if (lookahead == 'e') ADVANCE(68); END_STATE(); case 45: - if (lookahead == 'n') ADVANCE(70); + if (lookahead == 'n') ADVANCE(69); END_STATE(); case 46: - if (lookahead == 'l') ADVANCE(71); + if (lookahead == 'l') ADVANCE(70); END_STATE(); case 47: - if (lookahead == 'l') ADVANCE(72); + if (lookahead == 'l') ADVANCE(71); END_STATE(); case 48: - if (lookahead == 'e') ADVANCE(73); + if (lookahead == 'e') ADVANCE(72); END_STATE(); case 49: ACCEPT_TOKEN(anon_sym_env); END_STATE(); case 50: - if (lookahead == 's') ADVANCE(74); + if (lookahead == 's') ADVANCE(73); END_STATE(); case 51: - if (lookahead == 'a') ADVANCE(75); + if (lookahead == 'a') ADVANCE(74); END_STATE(); case 52: ACCEPT_TOKEN(anon_sym_for); @@ -1969,116 +1965,117 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { ACCEPT_TOKEN(anon_sym_int); END_STATE(); case 54: - if (lookahead == 'n') ADVANCE(76); + if (lookahead == 'n') ADVANCE(75); END_STATE(); case 55: - if (lookahead == 'g') ADVANCE(77); + if (lookahead == 'g') ADVANCE(76); END_STATE(); case 56: - ACCEPT_TOKEN(anon_sym_map); + if (lookahead == 'c') ADVANCE(77); END_STATE(); case 57: - if (lookahead == 'c') ADVANCE(78); + if (lookahead == 'e') ADVANCE(78); END_STATE(); case 58: - if (lookahead == 'e') ADVANCE(79); - END_STATE(); - case 59: ACCEPT_TOKEN(anon_sym_num); END_STATE(); + case 59: + if (lookahead == 'i') ADVANCE(79); + END_STATE(); case 60: - if (lookahead == 'i') ADVANCE(80); + if (lookahead == 'p') ADVANCE(80); END_STATE(); case 61: - if (lookahead == 'p') ADVANCE(81); + if (lookahead == 'd') ADVANCE(81); END_STATE(); case 62: - if (lookahead == 'd') ADVANCE(82); + if (lookahead == 'u') ADVANCE(82); END_STATE(); case 63: - if (lookahead == 'u') ADVANCE(83); + if (lookahead == 'e') ADVANCE(83); END_STATE(); case 64: - if (lookahead == 'e') ADVANCE(84); + ACCEPT_TOKEN(anon_sym_str); + if (lookahead == 'i') ADVANCE(84); + if (lookahead == 'u') ADVANCE(85); END_STATE(); case 65: - ACCEPT_TOKEN(anon_sym_str); - if (lookahead == 'i') ADVANCE(85); - END_STATE(); - case 66: if (lookahead == 'e') ADVANCE(86); END_STATE(); - case 67: + case 66: if (lookahead == 'l') ADVANCE(87); END_STATE(); - case 68: + case 67: ACCEPT_TOKEN(anon_sym_args); END_STATE(); - case 69: + case 68: if (lookahead == 'r') ADVANCE(88); END_STATE(); - case 70: + case 69: if (lookahead == 'c') ADVANCE(89); END_STATE(); - case 71: + case 70: ACCEPT_TOKEN(anon_sym_bool); END_STATE(); - case 72: + case 71: if (lookahead == 'e') ADVANCE(90); END_STATE(); - case 73: + case 72: ACCEPT_TOKEN(anon_sym_else); END_STATE(); - case 74: + case 73: if (lookahead == 'e') ADVANCE(91); END_STATE(); - case 75: + case 74: if (lookahead == 't') ADVANCE(92); END_STATE(); - case 76: + case 75: ACCEPT_TOKEN(anon_sym_json); END_STATE(); - case 77: + case 76: if (lookahead == 't') ADVANCE(93); END_STATE(); - case 78: + case 77: if (lookahead == 'h') ADVANCE(94); END_STATE(); - case 79: + case 78: ACCEPT_TOKEN(anon_sym_none); END_STATE(); - case 80: + case 79: if (lookahead == 'o') ADVANCE(95); END_STATE(); - case 81: + case 80: if (lookahead == 'u') ADVANCE(96); END_STATE(); - case 82: + case 81: if (lookahead == 'o') ADVANCE(97); END_STATE(); - case 83: + case 82: if (lookahead == 'r') ADVANCE(98); END_STATE(); - case 84: + case 83: ACCEPT_TOKEN(anon_sym_some); END_STATE(); - case 85: + case 84: if (lookahead == 'n') ADVANCE(99); END_STATE(); + case 85: + if (lookahead == 'c') ADVANCE(100); + END_STATE(); case 86: ACCEPT_TOKEN(anon_sym_true); END_STATE(); case 87: - if (lookahead == 'e') ADVANCE(100); + if (lookahead == 'e') ADVANCE(101); END_STATE(); case 88: - if (lookahead == 't') ADVANCE(101); + if (lookahead == 't') ADVANCE(102); END_STATE(); case 89: ACCEPT_TOKEN(anon_sym_async); END_STATE(); case 90: - if (lookahead == 'c') ADVANCE(102); + if (lookahead == 'c') ADVANCE(103); END_STATE(); case 91: ACCEPT_TOKEN(anon_sym_false); @@ -2087,81 +2084,87 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { ACCEPT_TOKEN(anon_sym_float); END_STATE(); case 93: - if (lookahead == 'h') ADVANCE(103); + if (lookahead == 'h') ADVANCE(104); END_STATE(); case 94: ACCEPT_TOKEN(anon_sym_match); END_STATE(); case 95: - if (lookahead == 'n') ADVANCE(104); + if (lookahead == 'n') ADVANCE(105); END_STATE(); case 96: - if (lookahead == 't') ADVANCE(105); + if (lookahead == 't') ADVANCE(106); END_STATE(); case 97: - if (lookahead == 'm') ADVANCE(106); + if (lookahead == 'm') ADVANCE(107); END_STATE(); case 98: - if (lookahead == 'n') ADVANCE(107); + if (lookahead == 'n') ADVANCE(108); END_STATE(); case 99: - if (lookahead == 'g') ADVANCE(108); + if (lookahead == 'g') ADVANCE(109); END_STATE(); case 100: - ACCEPT_TOKEN(anon_sym_while); - END_STATE(); - case 101: - if (lookahead == '_') ADVANCE(109); - END_STATE(); - case 102: if (lookahead == 't') ADVANCE(110); END_STATE(); + case 101: + ACCEPT_TOKEN(anon_sym_while); + END_STATE(); + case 102: + if (lookahead == '_') ADVANCE(111); + END_STATE(); case 103: - ACCEPT_TOKEN(anon_sym_length); + if (lookahead == 't') ADVANCE(112); END_STATE(); case 104: - ACCEPT_TOKEN(anon_sym_option); + ACCEPT_TOKEN(anon_sym_length); END_STATE(); case 105: - ACCEPT_TOKEN(anon_sym_output); + ACCEPT_TOKEN(anon_sym_option); END_STATE(); case 106: - ACCEPT_TOKEN(anon_sym_random); + ACCEPT_TOKEN(anon_sym_output); END_STATE(); case 107: - ACCEPT_TOKEN(anon_sym_return); + ACCEPT_TOKEN(anon_sym_random); END_STATE(); case 108: - ACCEPT_TOKEN(anon_sym_string); + ACCEPT_TOKEN(anon_sym_return); END_STATE(); case 109: - if (lookahead == 'e') ADVANCE(111); + ACCEPT_TOKEN(anon_sym_string); END_STATE(); case 110: - if (lookahead == 'i') ADVANCE(112); + ACCEPT_TOKEN(anon_sym_struct); END_STATE(); case 111: - if (lookahead == 'q') ADVANCE(113); + if (lookahead == 'e') ADVANCE(113); END_STATE(); case 112: - if (lookahead == 'o') ADVANCE(114); + if (lookahead == 'i') ADVANCE(114); END_STATE(); case 113: - if (lookahead == 'u') ADVANCE(115); + if (lookahead == 'q') ADVANCE(115); END_STATE(); case 114: - if (lookahead == 'n') ADVANCE(116); + if (lookahead == 'o') ADVANCE(116); END_STATE(); case 115: - if (lookahead == 'a') ADVANCE(117); + if (lookahead == 'u') ADVANCE(117); END_STATE(); case 116: - ACCEPT_TOKEN(anon_sym_collection); + if (lookahead == 'n') ADVANCE(118); END_STATE(); case 117: - if (lookahead == 'l') ADVANCE(118); + if (lookahead == 'a') ADVANCE(119); END_STATE(); case 118: + ACCEPT_TOKEN(anon_sym_collection); + END_STATE(); + case 119: + if (lookahead == 'l') ADVANCE(120); + END_STATE(); + case 120: ACCEPT_TOKEN(anon_sym_assert_equal); END_STATE(); default: @@ -2249,15 +2252,15 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [76] = {.lex_state = 25}, [77] = {.lex_state = 25}, [78] = {.lex_state = 25}, - [79] = {.lex_state = 25}, + [79] = {.lex_state = 1}, [80] = {.lex_state = 1}, [81] = {.lex_state = 1}, - [82] = {.lex_state = 25}, - [83] = {.lex_state = 25}, - [84] = {.lex_state = 25}, - [85] = {.lex_state = 25}, + [82] = {.lex_state = 1}, + [83] = {.lex_state = 1}, + [84] = {.lex_state = 1}, + [85] = {.lex_state = 1}, [86] = {.lex_state = 1}, - [87] = {.lex_state = 25}, + [87] = {.lex_state = 1}, [88] = {.lex_state = 1}, [89] = {.lex_state = 1}, [90] = {.lex_state = 1}, @@ -2376,20 +2379,20 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [203] = {.lex_state = 1}, [204] = {.lex_state = 1}, [205] = {.lex_state = 1}, - [206] = {.lex_state = 1}, - [207] = {.lex_state = 1}, - [208] = {.lex_state = 1}, - [209] = {.lex_state = 1}, - [210] = {.lex_state = 1}, - [211] = {.lex_state = 1}, + [206] = {.lex_state = 0}, + [207] = {.lex_state = 0}, + [208] = {.lex_state = 0}, + [209] = {.lex_state = 0}, + [210] = {.lex_state = 0}, + [211] = {.lex_state = 0}, [212] = {.lex_state = 0}, [213] = {.lex_state = 0}, - [214] = {.lex_state = 0}, - [215] = {.lex_state = 0}, - [216] = {.lex_state = 0}, - [217] = {.lex_state = 0}, - [218] = {.lex_state = 0}, - [219] = {.lex_state = 0}, + [214] = {.lex_state = 25}, + [215] = {.lex_state = 25}, + [216] = {.lex_state = 25}, + [217] = {.lex_state = 25}, + [218] = {.lex_state = 25}, + [219] = {.lex_state = 25}, [220] = {.lex_state = 25}, [221] = {.lex_state = 25}, [222] = {.lex_state = 25}, @@ -2397,24 +2400,24 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [224] = {.lex_state = 25}, [225] = {.lex_state = 25}, [226] = {.lex_state = 25}, - [227] = {.lex_state = 25}, - [228] = {.lex_state = 25}, - [229] = {.lex_state = 25}, - [230] = {.lex_state = 25}, - [231] = {.lex_state = 25}, - [232] = {.lex_state = 25}, - [233] = {.lex_state = 2}, + [227] = {.lex_state = 2}, + [228] = {.lex_state = 1}, + [229] = {.lex_state = 2}, + [230] = {.lex_state = 2}, + [231] = {.lex_state = 1}, + [232] = {.lex_state = 5}, + [233] = {.lex_state = 5}, [234] = {.lex_state = 1}, [235] = {.lex_state = 1}, [236] = {.lex_state = 1}, - [237] = {.lex_state = 2}, + [237] = {.lex_state = 1}, [238] = {.lex_state = 1}, [239] = {.lex_state = 2}, - [240] = {.lex_state = 5}, - [241] = {.lex_state = 1}, - [242] = {.lex_state = 1}, - [243] = {.lex_state = 1}, - [244] = {.lex_state = 5}, + [240] = {.lex_state = 2}, + [241] = {.lex_state = 2}, + [242] = {.lex_state = 2}, + [243] = {.lex_state = 5}, + [244] = {.lex_state = 2}, [245] = {.lex_state = 2}, [246] = {.lex_state = 2}, [247] = {.lex_state = 2}, @@ -2431,52 +2434,52 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [258] = {.lex_state = 2}, [259] = {.lex_state = 2}, [260] = {.lex_state = 2}, - [261] = {.lex_state = 2}, + [261] = {.lex_state = 25}, [262] = {.lex_state = 2}, [263] = {.lex_state = 2}, [264] = {.lex_state = 2}, [265] = {.lex_state = 2}, - [266] = {.lex_state = 5}, + [266] = {.lex_state = 2}, [267] = {.lex_state = 2}, [268] = {.lex_state = 2}, [269] = {.lex_state = 2}, [270] = {.lex_state = 2}, - [271] = {.lex_state = 2}, - [272] = {.lex_state = 2}, - [273] = {.lex_state = 2}, - [274] = {.lex_state = 2}, - [275] = {.lex_state = 25}, - [276] = {.lex_state = 2}, - [277] = {.lex_state = 5}, - [278] = {.lex_state = 5}, - [279] = {.lex_state = 5}, - [280] = {.lex_state = 5}, - [281] = {.lex_state = 5}, - [282] = {.lex_state = 4}, + [271] = {.lex_state = 5}, + [272] = {.lex_state = 5}, + [273] = {.lex_state = 5}, + [274] = {.lex_state = 5}, + [275] = {.lex_state = 5}, + [276] = {.lex_state = 4}, + [277] = {.lex_state = 4}, + [278] = {.lex_state = 1}, + [279] = {.lex_state = 1}, + [280] = {.lex_state = 1}, + [281] = {.lex_state = 1}, + [282] = {.lex_state = 1}, [283] = {.lex_state = 1}, - [284] = {.lex_state = 1}, + [284] = {.lex_state = 3}, [285] = {.lex_state = 1}, [286] = {.lex_state = 1}, [287] = {.lex_state = 1}, [288] = {.lex_state = 1}, - [289] = {.lex_state = 3}, + [289] = {.lex_state = 1}, [290] = {.lex_state = 1}, [291] = {.lex_state = 1}, - [292] = {.lex_state = 1}, - [293] = {.lex_state = 1}, + [292] = {.lex_state = 3}, + [293] = {.lex_state = 3}, [294] = {.lex_state = 1}, [295] = {.lex_state = 1}, - [296] = {.lex_state = 4}, + [296] = {.lex_state = 1}, [297] = {.lex_state = 1}, [298] = {.lex_state = 1}, - [299] = {.lex_state = 3}, - [300] = {.lex_state = 3}, + [299] = {.lex_state = 2}, + [300] = {.lex_state = 2}, [301] = {.lex_state = 1}, - [302] = {.lex_state = 1}, - [303] = {.lex_state = 1}, + [302] = {.lex_state = 2}, + [303] = {.lex_state = 2}, [304] = {.lex_state = 2}, - [305] = {.lex_state = 1}, - [306] = {.lex_state = 1}, + [305] = {.lex_state = 2}, + [306] = {.lex_state = 2}, [307] = {.lex_state = 2}, [308] = {.lex_state = 2}, [309] = {.lex_state = 2}, @@ -2489,65 +2492,65 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [316] = {.lex_state = 2}, [317] = {.lex_state = 2}, [318] = {.lex_state = 2}, - [319] = {.lex_state = 2}, - [320] = {.lex_state = 2}, + [319] = {.lex_state = 7}, + [320] = {.lex_state = 7}, [321] = {.lex_state = 2}, [322] = {.lex_state = 2}, [323] = {.lex_state = 2}, - [324] = {.lex_state = 2}, + [324] = {.lex_state = 7}, [325] = {.lex_state = 2}, - [326] = {.lex_state = 2}, - [327] = {.lex_state = 7}, + [326] = {.lex_state = 3}, + [327] = {.lex_state = 2}, [328] = {.lex_state = 7}, [329] = {.lex_state = 2}, - [330] = {.lex_state = 7}, + [330] = {.lex_state = 2}, [331] = {.lex_state = 2}, - [332] = {.lex_state = 3}, + [332] = {.lex_state = 2}, [333] = {.lex_state = 2}, [334] = {.lex_state = 7}, - [335] = {.lex_state = 2}, + [335] = {.lex_state = 7}, [336] = {.lex_state = 2}, - [337] = {.lex_state = 7}, + [337] = {.lex_state = 2}, [338] = {.lex_state = 2}, [339] = {.lex_state = 2}, [340] = {.lex_state = 2}, - [341] = {.lex_state = 7}, - [342] = {.lex_state = 2}, + [341] = {.lex_state = 2}, + [342] = {.lex_state = 1}, [343] = {.lex_state = 2}, - [344] = {.lex_state = 1}, + [344] = {.lex_state = 2}, [345] = {.lex_state = 2}, [346] = {.lex_state = 2}, - [347] = {.lex_state = 1}, - [348] = {.lex_state = 2}, - [349] = {.lex_state = 2}, + [347] = {.lex_state = 2}, + [348] = {.lex_state = 1}, + [349] = {.lex_state = 1}, [350] = {.lex_state = 2}, [351] = {.lex_state = 2}, [352] = {.lex_state = 2}, [353] = {.lex_state = 2}, [354] = {.lex_state = 2}, [355] = {.lex_state = 2}, - [356] = {.lex_state = 2}, + [356] = {.lex_state = 1}, [357] = {.lex_state = 2}, [358] = {.lex_state = 2}, [359] = {.lex_state = 1}, - [360] = {.lex_state = 2}, + [360] = {.lex_state = 1}, [361] = {.lex_state = 1}, - [362] = {.lex_state = 2}, - [363] = {.lex_state = 2}, - [364] = {.lex_state = 2}, + [362] = {.lex_state = 1}, + [363] = {.lex_state = 1}, + [364] = {.lex_state = 1}, [365] = {.lex_state = 1}, - [366] = {.lex_state = 1}, - [367] = {.lex_state = 1}, + [366] = {.lex_state = 5}, + [367] = {.lex_state = 5}, [368] = {.lex_state = 1}, - [369] = {.lex_state = 1}, - [370] = {.lex_state = 1}, - [371] = {.lex_state = 1}, - [372] = {.lex_state = 5}, - [373] = {.lex_state = 5}, - [374] = {.lex_state = 25}, - [375] = {.lex_state = 25}, - [376] = {.lex_state = 25}, - [377] = {.lex_state = 25}, + [369] = {.lex_state = 25}, + [370] = {.lex_state = 25}, + [371] = {.lex_state = 25}, + [372] = {.lex_state = 1}, + [373] = {.lex_state = 1}, + [374] = {.lex_state = 1}, + [375] = {.lex_state = 1}, + [376] = {.lex_state = 1}, + [377] = {.lex_state = 1}, [378] = {.lex_state = 1}, [379] = {.lex_state = 1}, [380] = {.lex_state = 1}, @@ -2556,69 +2559,67 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [383] = {.lex_state = 1}, [384] = {.lex_state = 1}, [385] = {.lex_state = 1}, - [386] = {.lex_state = 25}, + [386] = {.lex_state = 1}, [387] = {.lex_state = 1}, [388] = {.lex_state = 1}, [389] = {.lex_state = 1}, [390] = {.lex_state = 1}, [391] = {.lex_state = 1}, [392] = {.lex_state = 1}, - [393] = {.lex_state = 1}, - [394] = {.lex_state = 1}, + [393] = {.lex_state = 0}, + [394] = {.lex_state = 0}, [395] = {.lex_state = 1}, - [396] = {.lex_state = 1}, - [397] = {.lex_state = 1}, + [396] = {.lex_state = 0}, + [397] = {.lex_state = 0}, [398] = {.lex_state = 1}, [399] = {.lex_state = 1}, [400] = {.lex_state = 0}, [401] = {.lex_state = 0}, [402] = {.lex_state = 0}, [403] = {.lex_state = 0}, - [404] = {.lex_state = 0}, - [405] = {.lex_state = 0}, + [404] = {.lex_state = 1}, + [405] = {.lex_state = 1}, [406] = {.lex_state = 1}, - [407] = {.lex_state = 1}, + [407] = {.lex_state = 0}, [408] = {.lex_state = 0}, [409] = {.lex_state = 1}, - [410] = {.lex_state = 0}, + [410] = {.lex_state = 1}, [411] = {.lex_state = 0}, - [412] = {.lex_state = 1}, + [412] = {.lex_state = 0}, [413] = {.lex_state = 0}, [414] = {.lex_state = 0}, - [415] = {.lex_state = 1}, - [416] = {.lex_state = 1}, + [415] = {.lex_state = 0}, + [416] = {.lex_state = 0}, [417] = {.lex_state = 0}, - [418] = {.lex_state = 1}, - [419] = {.lex_state = 0}, + [418] = {.lex_state = 0}, + [419] = {.lex_state = 5}, [420] = {.lex_state = 0}, - [421] = {.lex_state = 1}, + [421] = {.lex_state = 0}, [422] = {.lex_state = 0}, [423] = {.lex_state = 0}, - [424] = {.lex_state = 0}, + [424] = {.lex_state = 1}, [425] = {.lex_state = 0}, [426] = {.lex_state = 0}, [427] = {.lex_state = 0}, - [428] = {.lex_state = 5}, + [428] = {.lex_state = 0}, [429] = {.lex_state = 0}, - [430] = {.lex_state = 0}, - [431] = {.lex_state = 0}, + [430] = {.lex_state = 1}, + [431] = {.lex_state = 1}, [432] = {.lex_state = 0}, [433] = {.lex_state = 0}, [434] = {.lex_state = 0}, [435] = {.lex_state = 0}, - [436] = {.lex_state = 1}, - [437] = {.lex_state = 5}, - [438] = {.lex_state = 0}, - [439] = {.lex_state = 1}, + [436] = {.lex_state = 0}, + [437] = {.lex_state = 0}, + [438] = {.lex_state = 5}, + [439] = {.lex_state = 0}, [440] = {.lex_state = 0}, [441] = {.lex_state = 0}, - [442] = {.lex_state = 25}, - [443] = {.lex_state = 0}, - [444] = {.lex_state = 1}, - [445] = {.lex_state = 0}, - [446] = {.lex_state = 0}, - [447] = {.lex_state = 1}, - [448] = {.lex_state = 0}, + [442] = {.lex_state = 1}, + [443] = {.lex_state = 1}, + [444] = {.lex_state = 0}, + [445] = {.lex_state = 1}, + [446] = {.lex_state = 1}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { @@ -2640,6 +2641,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_false] = ACTIONS(1), [anon_sym_LBRACK] = ACTIONS(1), [anon_sym_RBRACK] = ACTIONS(1), + [anon_sym_struct] = ACTIONS(1), [anon_sym_EQ] = ACTIONS(1), [anon_sym_none] = ACTIONS(1), [anon_sym_some] = ACTIONS(1), @@ -2675,7 +2677,6 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_collection] = ACTIONS(1), [anon_sym_float] = ACTIONS(1), [anon_sym_int] = ACTIONS(1), - [anon_sym_map] = ACTIONS(1), [anon_sym_num] = ACTIONS(1), [anon_sym_str] = ACTIONS(1), [anon_sym_DASH_GT] = ACTIONS(1), @@ -2691,1685 +2692,1762 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_string] = ACTIONS(1), }, [1] = { - [sym_root] = STATE(443), - [sym_statement] = STATE(24), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [aux_sym_root_repeat1] = STATE(24), - [sym_identifier] = ACTIONS(5), - [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(7), - [anon_sym_async] = ACTIONS(9), - [anon_sym_LBRACE] = ACTIONS(11), - [sym_integer] = ACTIONS(13), - [sym_float] = ACTIONS(15), - [sym_string] = ACTIONS(15), - [anon_sym_true] = ACTIONS(17), - [anon_sym_false] = ACTIONS(17), - [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), - }, - [2] = { - [sym_statement] = STATE(2), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [aux_sym_root_repeat1] = STATE(2), - [ts_builtin_sym_end] = ACTIONS(39), - [sym_identifier] = ACTIONS(41), - [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(44), - [anon_sym_async] = ACTIONS(47), - [anon_sym_LBRACE] = ACTIONS(50), - [anon_sym_RBRACE] = ACTIONS(39), - [sym_integer] = ACTIONS(53), - [sym_float] = ACTIONS(56), - [sym_string] = ACTIONS(56), - [anon_sym_true] = ACTIONS(59), - [anon_sym_false] = ACTIONS(59), - [anon_sym_LBRACK] = ACTIONS(62), - [anon_sym_none] = ACTIONS(65), - [anon_sym_some] = ACTIONS(68), - [anon_sym_if] = ACTIONS(71), - [anon_sym_match] = ACTIONS(74), - [anon_sym_while] = ACTIONS(77), - [anon_sym_for] = ACTIONS(80), - [anon_sym_asyncfor] = ACTIONS(83), - [anon_sym_return] = ACTIONS(86), - [anon_sym_args] = ACTIONS(89), - [anon_sym_assert_equal] = ACTIONS(89), - [anon_sym_env] = ACTIONS(89), - [anon_sym_fs] = ACTIONS(89), - [anon_sym_json] = ACTIONS(89), - [anon_sym_length] = ACTIONS(89), - [anon_sym_output] = ACTIONS(89), - [anon_sym_random] = ACTIONS(89), - [anon_sym_string] = ACTIONS(89), - }, - [3] = { - [sym_statement] = STATE(21), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [aux_sym_root_repeat1] = STATE(21), - [aux_sym_map_repeat1] = STATE(380), - [sym_identifier] = ACTIONS(92), - [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(7), - [anon_sym_async] = ACTIONS(9), - [anon_sym_LBRACE] = ACTIONS(11), - [anon_sym_RBRACE] = ACTIONS(94), - [sym_integer] = ACTIONS(13), - [sym_float] = ACTIONS(15), - [sym_string] = ACTIONS(15), - [anon_sym_true] = ACTIONS(17), - [anon_sym_false] = ACTIONS(17), - [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), - }, - [4] = { - [sym_statement] = STATE(14), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [aux_sym_root_repeat1] = STATE(14), - [aux_sym_map_repeat1] = STATE(398), - [sym_identifier] = ACTIONS(92), - [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(7), - [anon_sym_async] = ACTIONS(9), - [anon_sym_LBRACE] = ACTIONS(11), - [anon_sym_RBRACE] = ACTIONS(96), - [sym_integer] = ACTIONS(13), - [sym_float] = ACTIONS(15), - [sym_string] = ACTIONS(15), - [anon_sym_true] = ACTIONS(17), - [anon_sym_false] = ACTIONS(17), - [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), - }, - [5] = { - [sym_statement] = STATE(26), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [aux_sym_root_repeat1] = STATE(26), - [aux_sym_map_repeat1] = STATE(381), - [sym_identifier] = ACTIONS(92), - [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(7), - [anon_sym_async] = ACTIONS(9), - [anon_sym_LBRACE] = ACTIONS(11), - [anon_sym_RBRACE] = ACTIONS(98), - [sym_integer] = ACTIONS(13), - [sym_float] = ACTIONS(15), - [sym_string] = ACTIONS(15), - [anon_sym_true] = ACTIONS(17), - [anon_sym_false] = ACTIONS(17), - [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), - }, - [6] = { + [sym_root] = STATE(414), [sym_statement] = STATE(16), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), + [sym_expression] = STATE(77), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(224), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(224), + [sym_index_assignment] = STATE(224), + [sym_if_else] = STATE(224), + [sym_if] = STATE(207), + [sym_match] = STATE(224), + [sym_while] = STATE(224), + [sym_for] = STATE(224), + [sym_return] = STATE(224), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), [aux_sym_root_repeat1] = STATE(16), [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(100), [sym_integer] = ACTIONS(13), [sym_float] = ACTIONS(15), [sym_string] = ACTIONS(15), [anon_sym_true] = ACTIONS(17), [anon_sym_false] = ACTIONS(17), [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), }, - [7] = { + [2] = { [sym_statement] = STATE(2), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), + [sym_expression] = STATE(77), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(224), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(224), + [sym_index_assignment] = STATE(224), + [sym_if_else] = STATE(224), + [sym_if] = STATE(207), + [sym_match] = STATE(224), + [sym_while] = STATE(224), + [sym_for] = STATE(224), + [sym_return] = STATE(224), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), + [aux_sym_root_repeat1] = STATE(2), + [ts_builtin_sym_end] = ACTIONS(41), + [sym_identifier] = ACTIONS(43), + [sym__comment] = ACTIONS(3), + [anon_sym_LPAREN] = ACTIONS(46), + [anon_sym_async] = ACTIONS(49), + [anon_sym_LBRACE] = ACTIONS(52), + [anon_sym_RBRACE] = ACTIONS(41), + [sym_integer] = ACTIONS(55), + [sym_float] = ACTIONS(58), + [sym_string] = ACTIONS(58), + [anon_sym_true] = ACTIONS(61), + [anon_sym_false] = ACTIONS(61), + [anon_sym_LBRACK] = ACTIONS(64), + [anon_sym_struct] = ACTIONS(67), + [anon_sym_none] = ACTIONS(70), + [anon_sym_some] = ACTIONS(73), + [anon_sym_if] = ACTIONS(76), + [anon_sym_match] = ACTIONS(79), + [anon_sym_while] = ACTIONS(82), + [anon_sym_for] = ACTIONS(85), + [anon_sym_asyncfor] = ACTIONS(88), + [anon_sym_return] = ACTIONS(91), + [anon_sym_args] = ACTIONS(94), + [anon_sym_assert_equal] = ACTIONS(94), + [anon_sym_env] = ACTIONS(94), + [anon_sym_fs] = ACTIONS(94), + [anon_sym_json] = ACTIONS(94), + [anon_sym_length] = ACTIONS(94), + [anon_sym_output] = ACTIONS(94), + [anon_sym_random] = ACTIONS(94), + [anon_sym_string] = ACTIONS(94), + }, + [3] = { + [sym_statement] = STATE(2), + [sym_expression] = STATE(77), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(224), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(224), + [sym_index_assignment] = STATE(224), + [sym_if_else] = STATE(224), + [sym_if] = STATE(207), + [sym_match] = STATE(224), + [sym_while] = STATE(224), + [sym_for] = STATE(224), + [sym_return] = STATE(224), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), [aux_sym_root_repeat1] = STATE(2), [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(102), + [anon_sym_RBRACE] = ACTIONS(97), [sym_integer] = ACTIONS(13), [sym_float] = ACTIONS(15), [sym_string] = ACTIONS(15), [anon_sym_true] = ACTIONS(17), [anon_sym_false] = ACTIONS(17), [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), }, - [8] = { + [4] = { [sym_statement] = STATE(2), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), + [sym_expression] = STATE(77), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(224), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(224), + [sym_index_assignment] = STATE(224), + [sym_if_else] = STATE(224), + [sym_if] = STATE(207), + [sym_match] = STATE(224), + [sym_while] = STATE(224), + [sym_for] = STATE(224), + [sym_return] = STATE(224), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), [aux_sym_root_repeat1] = STATE(2), [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(100), + [anon_sym_RBRACE] = ACTIONS(99), [sym_integer] = ACTIONS(13), [sym_float] = ACTIONS(15), [sym_string] = ACTIONS(15), [anon_sym_true] = ACTIONS(17), [anon_sym_false] = ACTIONS(17), [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), }, - [9] = { - [sym_statement] = STATE(11), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [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(104), - [sym_integer] = ACTIONS(13), - [sym_float] = ACTIONS(15), - [sym_string] = ACTIONS(15), - [anon_sym_true] = ACTIONS(17), - [anon_sym_false] = ACTIONS(17), - [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), - }, - [10] = { - [sym_statement] = STATE(12), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [aux_sym_root_repeat1] = STATE(12), - [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(106), - [sym_integer] = ACTIONS(13), - [sym_float] = ACTIONS(15), - [sym_string] = ACTIONS(15), - [anon_sym_true] = ACTIONS(17), - [anon_sym_false] = ACTIONS(17), - [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), - }, - [11] = { - [sym_statement] = STATE(2), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [aux_sym_root_repeat1] = STATE(2), - [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(106), - [sym_integer] = ACTIONS(13), - [sym_float] = ACTIONS(15), - [sym_string] = ACTIONS(15), - [anon_sym_true] = ACTIONS(17), - [anon_sym_false] = ACTIONS(17), - [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), - }, - [12] = { - [sym_statement] = STATE(2), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [aux_sym_root_repeat1] = STATE(2), - [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(108), - [sym_integer] = ACTIONS(13), - [sym_float] = ACTIONS(15), - [sym_string] = ACTIONS(15), - [anon_sym_true] = ACTIONS(17), - [anon_sym_false] = ACTIONS(17), - [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), - }, - [13] = { - [sym_statement] = STATE(26), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [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(98), - [sym_integer] = ACTIONS(13), - [sym_float] = ACTIONS(15), - [sym_string] = ACTIONS(15), - [anon_sym_true] = ACTIONS(17), - [anon_sym_false] = ACTIONS(17), - [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), - }, - [14] = { - [sym_statement] = STATE(2), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [aux_sym_root_repeat1] = STATE(2), - [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), - [sym_integer] = ACTIONS(13), - [sym_float] = ACTIONS(15), - [sym_string] = ACTIONS(15), - [anon_sym_true] = ACTIONS(17), - [anon_sym_false] = ACTIONS(17), - [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), - }, - [15] = { - [sym_statement] = STATE(2), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [aux_sym_root_repeat1] = STATE(2), - [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(112), - [sym_integer] = ACTIONS(13), - [sym_float] = ACTIONS(15), - [sym_string] = ACTIONS(15), - [anon_sym_true] = ACTIONS(17), - [anon_sym_false] = ACTIONS(17), - [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), - }, - [16] = { - [sym_statement] = STATE(2), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [aux_sym_root_repeat1] = STATE(2), - [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), - [sym_integer] = ACTIONS(13), - [sym_float] = ACTIONS(15), - [sym_string] = ACTIONS(15), - [anon_sym_true] = ACTIONS(17), - [anon_sym_false] = ACTIONS(17), - [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), - }, - [17] = { - [sym_statement] = STATE(14), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [aux_sym_root_repeat1] = STATE(14), - [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(96), - [sym_integer] = ACTIONS(13), - [sym_float] = ACTIONS(15), - [sym_string] = ACTIONS(15), - [anon_sym_true] = ACTIONS(17), - [anon_sym_false] = ACTIONS(17), - [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), - }, - [18] = { - [sym_statement] = STATE(15), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [aux_sym_root_repeat1] = STATE(15), - [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), - [sym_integer] = ACTIONS(13), - [sym_float] = ACTIONS(15), - [sym_string] = ACTIONS(15), - [anon_sym_true] = ACTIONS(17), - [anon_sym_false] = ACTIONS(17), - [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), - }, - [19] = { - [sym_statement] = STATE(8), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [aux_sym_root_repeat1] = STATE(8), - [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), - [sym_integer] = ACTIONS(13), - [sym_float] = ACTIONS(15), - [sym_string] = ACTIONS(15), - [anon_sym_true] = ACTIONS(17), - [anon_sym_false] = ACTIONS(17), - [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), - }, - [20] = { - [sym_statement] = STATE(2), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [aux_sym_root_repeat1] = STATE(2), - [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(118), - [sym_integer] = ACTIONS(13), - [sym_float] = ACTIONS(15), - [sym_string] = ACTIONS(15), - [anon_sym_true] = ACTIONS(17), - [anon_sym_false] = ACTIONS(17), - [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), - }, - [21] = { - [sym_statement] = STATE(2), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [aux_sym_root_repeat1] = STATE(2), - [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), - [sym_integer] = ACTIONS(13), - [sym_float] = ACTIONS(15), - [sym_string] = ACTIONS(15), - [anon_sym_true] = ACTIONS(17), - [anon_sym_false] = ACTIONS(17), - [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), - }, - [22] = { - [sym_statement] = STATE(20), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [aux_sym_root_repeat1] = STATE(20), - [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), - [sym_integer] = ACTIONS(13), - [sym_float] = ACTIONS(15), - [sym_string] = ACTIONS(15), - [anon_sym_true] = ACTIONS(17), - [anon_sym_false] = ACTIONS(17), - [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), - }, - [23] = { - [sym_statement] = STATE(21), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [aux_sym_root_repeat1] = STATE(21), - [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(94), - [sym_integer] = ACTIONS(13), - [sym_float] = ACTIONS(15), - [sym_string] = ACTIONS(15), - [anon_sym_true] = ACTIONS(17), - [anon_sym_false] = ACTIONS(17), - [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), - }, - [24] = { - [sym_statement] = STATE(2), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [aux_sym_root_repeat1] = STATE(2), - [ts_builtin_sym_end] = ACTIONS(122), - [sym_identifier] = ACTIONS(5), - [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(7), - [anon_sym_async] = ACTIONS(9), - [anon_sym_LBRACE] = ACTIONS(11), - [sym_integer] = ACTIONS(13), - [sym_float] = ACTIONS(15), - [sym_string] = ACTIONS(15), - [anon_sym_true] = ACTIONS(17), - [anon_sym_false] = ACTIONS(17), - [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), - }, - [25] = { + [5] = { [sym_statement] = STATE(7), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), + [sym_expression] = STATE(77), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(224), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(224), + [sym_index_assignment] = STATE(224), + [sym_if_else] = STATE(224), + [sym_if] = STATE(207), + [sym_match] = STATE(224), + [sym_while] = STATE(224), + [sym_for] = STATE(224), + [sym_return] = STATE(224), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), [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(124), + [anon_sym_RBRACE] = ACTIONS(101), [sym_integer] = ACTIONS(13), [sym_float] = ACTIONS(15), [sym_string] = ACTIONS(15), [anon_sym_true] = ACTIONS(17), [anon_sym_false] = ACTIONS(17), [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), }, - [26] = { + [6] = { [sym_statement] = STATE(2), - [sym_expression] = STATE(84), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(230), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(230), - [sym_index_assignment] = STATE(230), - [sym_if_else] = STATE(230), - [sym_if] = STATE(213), - [sym_match] = STATE(230), - [sym_while] = STATE(230), - [sym_for] = STATE(230), - [sym_return] = STATE(230), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), + [sym_expression] = STATE(77), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(224), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(224), + [sym_index_assignment] = STATE(224), + [sym_if_else] = STATE(224), + [sym_if] = STATE(207), + [sym_match] = STATE(224), + [sym_while] = STATE(224), + [sym_for] = STATE(224), + [sym_return] = STATE(224), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), [aux_sym_root_repeat1] = STATE(2), [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(124), + [anon_sym_RBRACE] = ACTIONS(103), [sym_integer] = ACTIONS(13), [sym_float] = ACTIONS(15), [sym_string] = ACTIONS(15), [anon_sym_true] = ACTIONS(17), [anon_sym_false] = ACTIONS(17), [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), + }, + [7] = { + [sym_statement] = STATE(2), + [sym_expression] = STATE(77), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(224), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(224), + [sym_index_assignment] = STATE(224), + [sym_if_else] = STATE(224), + [sym_if] = STATE(207), + [sym_match] = STATE(224), + [sym_while] = STATE(224), + [sym_for] = STATE(224), + [sym_return] = STATE(224), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), + [aux_sym_root_repeat1] = STATE(2), + [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(105), + [sym_integer] = ACTIONS(13), + [sym_float] = ACTIONS(15), + [sym_string] = ACTIONS(15), + [anon_sym_true] = ACTIONS(17), + [anon_sym_false] = ACTIONS(17), + [anon_sym_LBRACK] = ACTIONS(19), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), + }, + [8] = { + [sym_statement] = STATE(17), + [sym_expression] = STATE(77), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(224), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(224), + [sym_index_assignment] = STATE(224), + [sym_if_else] = STATE(224), + [sym_if] = STATE(207), + [sym_match] = STATE(224), + [sym_while] = STATE(224), + [sym_for] = STATE(224), + [sym_return] = STATE(224), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), + [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(105), + [sym_integer] = ACTIONS(13), + [sym_float] = ACTIONS(15), + [sym_string] = ACTIONS(15), + [anon_sym_true] = ACTIONS(17), + [anon_sym_false] = ACTIONS(17), + [anon_sym_LBRACK] = ACTIONS(19), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), + }, + [9] = { + [sym_statement] = STATE(11), + [sym_expression] = STATE(77), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(224), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(224), + [sym_index_assignment] = STATE(224), + [sym_if_else] = STATE(224), + [sym_if] = STATE(207), + [sym_match] = STATE(224), + [sym_while] = STATE(224), + [sym_for] = STATE(224), + [sym_return] = STATE(224), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), + [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(107), + [sym_integer] = ACTIONS(13), + [sym_float] = ACTIONS(15), + [sym_string] = ACTIONS(15), + [anon_sym_true] = ACTIONS(17), + [anon_sym_false] = ACTIONS(17), + [anon_sym_LBRACK] = ACTIONS(19), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), + }, + [10] = { + [sym_statement] = STATE(3), + [sym_expression] = STATE(77), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(224), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(224), + [sym_index_assignment] = STATE(224), + [sym_if_else] = STATE(224), + [sym_if] = STATE(207), + [sym_match] = STATE(224), + [sym_while] = STATE(224), + [sym_for] = STATE(224), + [sym_return] = STATE(224), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), + [aux_sym_root_repeat1] = STATE(3), + [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(109), + [sym_integer] = ACTIONS(13), + [sym_float] = ACTIONS(15), + [sym_string] = ACTIONS(15), + [anon_sym_true] = ACTIONS(17), + [anon_sym_false] = ACTIONS(17), + [anon_sym_LBRACK] = ACTIONS(19), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), + }, + [11] = { + [sym_statement] = STATE(2), + [sym_expression] = STATE(77), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(224), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(224), + [sym_index_assignment] = STATE(224), + [sym_if_else] = STATE(224), + [sym_if] = STATE(207), + [sym_match] = STATE(224), + [sym_while] = STATE(224), + [sym_for] = STATE(224), + [sym_return] = STATE(224), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), + [aux_sym_root_repeat1] = STATE(2), + [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(109), + [sym_integer] = ACTIONS(13), + [sym_float] = ACTIONS(15), + [sym_string] = ACTIONS(15), + [anon_sym_true] = ACTIONS(17), + [anon_sym_false] = ACTIONS(17), + [anon_sym_LBRACK] = ACTIONS(19), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), + }, + [12] = { + [sym_statement] = STATE(2), + [sym_expression] = STATE(77), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(224), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(224), + [sym_index_assignment] = STATE(224), + [sym_if_else] = STATE(224), + [sym_if] = STATE(207), + [sym_match] = STATE(224), + [sym_while] = STATE(224), + [sym_for] = STATE(224), + [sym_return] = STATE(224), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), + [aux_sym_root_repeat1] = STATE(2), + [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(111), + [sym_integer] = ACTIONS(13), + [sym_float] = ACTIONS(15), + [sym_string] = ACTIONS(15), + [anon_sym_true] = ACTIONS(17), + [anon_sym_false] = ACTIONS(17), + [anon_sym_LBRACK] = ACTIONS(19), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), + }, + [13] = { + [sym_statement] = STATE(2), + [sym_expression] = STATE(77), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(224), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(224), + [sym_index_assignment] = STATE(224), + [sym_if_else] = STATE(224), + [sym_if] = STATE(207), + [sym_match] = STATE(224), + [sym_while] = STATE(224), + [sym_for] = STATE(224), + [sym_return] = STATE(224), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), + [aux_sym_root_repeat1] = STATE(2), + [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(113), + [sym_integer] = ACTIONS(13), + [sym_float] = ACTIONS(15), + [sym_string] = ACTIONS(15), + [anon_sym_true] = ACTIONS(17), + [anon_sym_false] = ACTIONS(17), + [anon_sym_LBRACK] = ACTIONS(19), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), + }, + [14] = { + [sym_statement] = STATE(2), + [sym_expression] = STATE(77), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(224), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(224), + [sym_index_assignment] = STATE(224), + [sym_if_else] = STATE(224), + [sym_if] = STATE(207), + [sym_match] = STATE(224), + [sym_while] = STATE(224), + [sym_for] = STATE(224), + [sym_return] = STATE(224), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), + [aux_sym_root_repeat1] = STATE(2), + [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(115), + [sym_integer] = ACTIONS(13), + [sym_float] = ACTIONS(15), + [sym_string] = ACTIONS(15), + [anon_sym_true] = ACTIONS(17), + [anon_sym_false] = ACTIONS(17), + [anon_sym_LBRACK] = ACTIONS(19), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), + }, + [15] = { + [sym_statement] = STATE(13), + [sym_expression] = STATE(77), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(224), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(224), + [sym_index_assignment] = STATE(224), + [sym_if_else] = STATE(224), + [sym_if] = STATE(207), + [sym_match] = STATE(224), + [sym_while] = STATE(224), + [sym_for] = STATE(224), + [sym_return] = STATE(224), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), + [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(115), + [sym_integer] = ACTIONS(13), + [sym_float] = ACTIONS(15), + [sym_string] = ACTIONS(15), + [anon_sym_true] = ACTIONS(17), + [anon_sym_false] = ACTIONS(17), + [anon_sym_LBRACK] = ACTIONS(19), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), + }, + [16] = { + [sym_statement] = STATE(2), + [sym_expression] = STATE(77), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(224), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(224), + [sym_index_assignment] = STATE(224), + [sym_if_else] = STATE(224), + [sym_if] = STATE(207), + [sym_match] = STATE(224), + [sym_while] = STATE(224), + [sym_for] = STATE(224), + [sym_return] = STATE(224), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), + [aux_sym_root_repeat1] = STATE(2), + [ts_builtin_sym_end] = ACTIONS(117), + [sym_identifier] = ACTIONS(5), + [sym__comment] = ACTIONS(3), + [anon_sym_LPAREN] = ACTIONS(7), + [anon_sym_async] = ACTIONS(9), + [anon_sym_LBRACE] = ACTIONS(11), + [sym_integer] = ACTIONS(13), + [sym_float] = ACTIONS(15), + [sym_string] = ACTIONS(15), + [anon_sym_true] = ACTIONS(17), + [anon_sym_false] = ACTIONS(17), + [anon_sym_LBRACK] = ACTIONS(19), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), + }, + [17] = { + [sym_statement] = STATE(2), + [sym_expression] = STATE(77), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(224), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(224), + [sym_index_assignment] = STATE(224), + [sym_if_else] = STATE(224), + [sym_if] = STATE(207), + [sym_match] = STATE(224), + [sym_while] = STATE(224), + [sym_for] = STATE(224), + [sym_return] = STATE(224), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), + [aux_sym_root_repeat1] = STATE(2), + [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(119), + [sym_integer] = ACTIONS(13), + [sym_float] = ACTIONS(15), + [sym_string] = ACTIONS(15), + [anon_sym_true] = ACTIONS(17), + [anon_sym_false] = ACTIONS(17), + [anon_sym_LBRACK] = ACTIONS(19), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), + }, + [18] = { + [sym_statement] = STATE(14), + [sym_expression] = STATE(77), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(224), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(224), + [sym_index_assignment] = STATE(224), + [sym_if_else] = STATE(224), + [sym_if] = STATE(207), + [sym_match] = STATE(224), + [sym_while] = STATE(224), + [sym_for] = STATE(224), + [sym_return] = STATE(224), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), + [aux_sym_root_repeat1] = STATE(14), + [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(121), + [sym_integer] = ACTIONS(13), + [sym_float] = ACTIONS(15), + [sym_string] = ACTIONS(15), + [anon_sym_true] = ACTIONS(17), + [anon_sym_false] = ACTIONS(17), + [anon_sym_LBRACK] = ACTIONS(19), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), + }, + [19] = { + [sym_statement] = STATE(12), + [sym_expression] = STATE(77), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(224), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(224), + [sym_index_assignment] = STATE(224), + [sym_if_else] = STATE(224), + [sym_if] = STATE(207), + [sym_match] = STATE(224), + [sym_while] = STATE(224), + [sym_for] = STATE(224), + [sym_return] = STATE(224), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), + [aux_sym_root_repeat1] = STATE(12), + [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(123), + [sym_integer] = ACTIONS(13), + [sym_float] = ACTIONS(15), + [sym_string] = ACTIONS(15), + [anon_sym_true] = ACTIONS(17), + [anon_sym_false] = ACTIONS(17), + [anon_sym_LBRACK] = ACTIONS(19), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), + }, + [20] = { + [sym_statement] = STATE(6), + [sym_expression] = STATE(77), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(224), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(224), + [sym_index_assignment] = STATE(224), + [sym_if_else] = STATE(224), + [sym_if] = STATE(207), + [sym_match] = STATE(224), + [sym_while] = STATE(224), + [sym_for] = STATE(224), + [sym_return] = STATE(224), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), + [aux_sym_root_repeat1] = STATE(6), + [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(99), + [sym_integer] = ACTIONS(13), + [sym_float] = ACTIONS(15), + [sym_string] = ACTIONS(15), + [anon_sym_true] = ACTIONS(17), + [anon_sym_false] = ACTIONS(17), + [anon_sym_LBRACK] = ACTIONS(19), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), + }, + [21] = { + [sym_statement] = STATE(2), + [sym_expression] = STATE(77), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(224), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(224), + [sym_index_assignment] = STATE(224), + [sym_if_else] = STATE(224), + [sym_if] = STATE(207), + [sym_match] = STATE(224), + [sym_while] = STATE(224), + [sym_for] = STATE(224), + [sym_return] = STATE(224), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), + [aux_sym_root_repeat1] = STATE(2), + [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(125), + [sym_integer] = ACTIONS(13), + [sym_float] = ACTIONS(15), + [sym_string] = ACTIONS(15), + [anon_sym_true] = ACTIONS(17), + [anon_sym_false] = ACTIONS(17), + [anon_sym_LBRACK] = ACTIONS(19), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), + }, + [22] = { + [sym_statement] = STATE(4), + [sym_expression] = STATE(77), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(224), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(224), + [sym_index_assignment] = STATE(224), + [sym_if_else] = STATE(224), + [sym_if] = STATE(207), + [sym_match] = STATE(224), + [sym_while] = STATE(224), + [sym_for] = STATE(224), + [sym_return] = STATE(224), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), + [aux_sym_root_repeat1] = STATE(4), + [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(127), + [sym_integer] = ACTIONS(13), + [sym_float] = ACTIONS(15), + [sym_string] = ACTIONS(15), + [anon_sym_true] = ACTIONS(17), + [anon_sym_false] = ACTIONS(17), + [anon_sym_LBRACK] = ACTIONS(19), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), + }, + [23] = { + [sym_statement] = STATE(21), + [sym_expression] = STATE(77), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(224), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(224), + [sym_index_assignment] = STATE(224), + [sym_if_else] = STATE(224), + [sym_if] = STATE(207), + [sym_match] = STATE(224), + [sym_while] = STATE(224), + [sym_for] = STATE(224), + [sym_return] = STATE(224), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), + [aux_sym_root_repeat1] = STATE(21), + [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(111), + [sym_integer] = ACTIONS(13), + [sym_float] = ACTIONS(15), + [sym_string] = ACTIONS(15), + [anon_sym_true] = ACTIONS(17), + [anon_sym_false] = ACTIONS(17), + [anon_sym_LBRACK] = ACTIONS(19), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), + }, + [24] = { + [sym_statement] = STATE(216), + [sym_expression] = STATE(75), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(223), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(223), + [sym_index_assignment] = STATE(223), + [sym_if_else] = STATE(223), + [sym_if] = STATE(207), + [sym_match] = STATE(223), + [sym_while] = STATE(223), + [sym_for] = STATE(223), + [sym_return] = STATE(223), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), + [sym_identifier] = ACTIONS(5), + [sym__comment] = ACTIONS(3), + [anon_sym_LPAREN] = ACTIONS(7), + [anon_sym_async] = ACTIONS(9), + [anon_sym_LBRACE] = ACTIONS(11), + [sym_integer] = ACTIONS(13), + [sym_float] = ACTIONS(15), + [sym_string] = ACTIONS(15), + [anon_sym_true] = ACTIONS(17), + [anon_sym_false] = ACTIONS(17), + [anon_sym_LBRACK] = ACTIONS(19), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), + }, + [25] = { + [sym_statement] = STATE(291), + [sym_expression] = STATE(304), + [sym__expression_kind] = STATE(250), + [sym_block] = STATE(278), + [sym_value] = STATE(239), + [sym_boolean] = STATE(260), + [sym_list] = STATE(260), + [sym_structure] = STATE(260), + [sym_option] = STATE(260), + [sym_index] = STATE(277), + [sym_index_expression] = STATE(422), + [sym_math] = STATE(250), + [sym_logic] = STATE(250), + [sym_assignment] = STATE(278), + [sym_index_assignment] = STATE(278), + [sym_if_else] = STATE(278), + [sym_if] = STATE(367), + [sym_match] = STATE(278), + [sym_while] = STATE(278), + [sym_for] = STATE(278), + [sym_return] = STATE(278), + [sym_function] = STATE(260), + [sym_function_expression] = STATE(416), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(245), + [sym_yield] = STATE(245), + [sym_built_in_value] = STATE(260), + [sym_identifier] = ACTIONS(129), + [sym__comment] = ACTIONS(3), + [anon_sym_LPAREN] = ACTIONS(131), + [anon_sym_async] = ACTIONS(133), + [anon_sym_LBRACE] = ACTIONS(135), + [sym_integer] = ACTIONS(137), + [sym_float] = ACTIONS(139), + [sym_string] = ACTIONS(139), + [anon_sym_true] = ACTIONS(141), + [anon_sym_false] = ACTIONS(141), + [anon_sym_LBRACK] = ACTIONS(143), + [anon_sym_struct] = ACTIONS(145), + [anon_sym_none] = ACTIONS(147), + [anon_sym_some] = ACTIONS(149), + [anon_sym_if] = ACTIONS(151), + [anon_sym_match] = ACTIONS(153), + [anon_sym_while] = ACTIONS(155), + [anon_sym_for] = ACTIONS(157), + [anon_sym_asyncfor] = ACTIONS(159), + [anon_sym_return] = ACTIONS(161), + [anon_sym_args] = ACTIONS(163), + [anon_sym_assert_equal] = ACTIONS(163), + [anon_sym_env] = ACTIONS(163), + [anon_sym_fs] = ACTIONS(163), + [anon_sym_json] = ACTIONS(163), + [anon_sym_length] = ACTIONS(163), + [anon_sym_output] = ACTIONS(163), + [anon_sym_random] = ACTIONS(163), + [anon_sym_string] = ACTIONS(163), + }, + [26] = { + [sym_statement] = STATE(291), + [sym_expression] = STATE(122), + [sym__expression_kind] = STATE(93), + [sym_block] = STATE(278), + [sym_value] = STATE(91), + [sym_boolean] = STATE(88), + [sym_list] = STATE(88), + [sym_structure] = STATE(88), + [sym_option] = STATE(88), + [sym_index] = STATE(113), + [sym_index_expression] = STATE(436), + [sym_math] = STATE(93), + [sym_logic] = STATE(93), + [sym_assignment] = STATE(278), + [sym_index_assignment] = STATE(278), + [sym_if_else] = STATE(278), + [sym_if] = STATE(233), + [sym_match] = STATE(278), + [sym_while] = STATE(278), + [sym_for] = STATE(278), + [sym_return] = STATE(278), + [sym_function] = STATE(88), + [sym_function_expression] = STATE(421), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(94), + [sym_yield] = STATE(94), + [sym_built_in_value] = STATE(88), + [sym_identifier] = ACTIONS(165), + [sym__comment] = ACTIONS(3), + [anon_sym_LPAREN] = ACTIONS(167), + [anon_sym_async] = ACTIONS(169), + [anon_sym_LBRACE] = ACTIONS(171), + [sym_integer] = ACTIONS(173), + [sym_float] = ACTIONS(175), + [sym_string] = ACTIONS(175), + [anon_sym_true] = ACTIONS(177), + [anon_sym_false] = ACTIONS(177), + [anon_sym_LBRACK] = ACTIONS(179), + [anon_sym_struct] = ACTIONS(181), + [anon_sym_none] = ACTIONS(183), + [anon_sym_some] = ACTIONS(185), + [anon_sym_if] = ACTIONS(151), + [anon_sym_match] = ACTIONS(153), + [anon_sym_while] = ACTIONS(187), + [anon_sym_for] = ACTIONS(189), + [anon_sym_asyncfor] = ACTIONS(191), + [anon_sym_return] = ACTIONS(193), + [anon_sym_args] = ACTIONS(195), + [anon_sym_assert_equal] = ACTIONS(195), + [anon_sym_env] = ACTIONS(195), + [anon_sym_fs] = ACTIONS(195), + [anon_sym_json] = ACTIONS(195), + [anon_sym_length] = ACTIONS(195), + [anon_sym_output] = ACTIONS(195), + [anon_sym_random] = ACTIONS(195), + [anon_sym_string] = ACTIONS(195), }, [27] = { - [sym_statement] = STATE(293), - [sym_expression] = STATE(310), - [sym__expression_kind] = STATE(258), - [sym_block] = STATE(286), - [sym_value] = STATE(250), - [sym_boolean] = STATE(269), - [sym_list] = STATE(269), - [sym_map] = STATE(269), - [sym_option] = STATE(269), - [sym_index] = STATE(296), - [sym_index_expression] = STATE(426), - [sym_math] = STATE(258), - [sym_logic] = STATE(258), - [sym_assignment] = STATE(286), - [sym_index_assignment] = STATE(286), - [sym_if_else] = STATE(286), - [sym_if] = STATE(372), - [sym_match] = STATE(286), - [sym_while] = STATE(286), - [sym_for] = STATE(286), - [sym_return] = STATE(286), - [sym_function] = STATE(269), - [sym_function_expression] = STATE(445), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(245), - [sym_yield] = STATE(245), - [sym_built_in_value] = STATE(269), - [sym_identifier] = ACTIONS(126), + [sym_statement] = STATE(288), + [sym_expression] = STATE(122), + [sym__expression_kind] = STATE(93), + [sym_block] = STATE(278), + [sym_value] = STATE(91), + [sym_boolean] = STATE(88), + [sym_list] = STATE(88), + [sym_structure] = STATE(88), + [sym_option] = STATE(88), + [sym_index] = STATE(113), + [sym_index_expression] = STATE(436), + [sym_math] = STATE(93), + [sym_logic] = STATE(93), + [sym_assignment] = STATE(278), + [sym_index_assignment] = STATE(278), + [sym_if_else] = STATE(278), + [sym_if] = STATE(233), + [sym_match] = STATE(278), + [sym_while] = STATE(278), + [sym_for] = STATE(278), + [sym_return] = STATE(278), + [sym_function] = STATE(88), + [sym_function_expression] = STATE(421), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(94), + [sym_yield] = STATE(94), + [sym_built_in_value] = STATE(88), + [sym_identifier] = ACTIONS(165), [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(128), - [anon_sym_async] = ACTIONS(130), - [anon_sym_LBRACE] = ACTIONS(132), - [sym_integer] = ACTIONS(134), - [sym_float] = ACTIONS(136), - [sym_string] = ACTIONS(136), - [anon_sym_true] = ACTIONS(138), - [anon_sym_false] = ACTIONS(138), - [anon_sym_LBRACK] = ACTIONS(140), - [anon_sym_none] = ACTIONS(142), - [anon_sym_some] = ACTIONS(144), - [anon_sym_if] = ACTIONS(146), - [anon_sym_match] = ACTIONS(148), - [anon_sym_while] = ACTIONS(150), - [anon_sym_for] = ACTIONS(152), - [anon_sym_asyncfor] = ACTIONS(154), - [anon_sym_return] = ACTIONS(156), - [anon_sym_args] = ACTIONS(158), - [anon_sym_assert_equal] = ACTIONS(158), - [anon_sym_env] = ACTIONS(158), - [anon_sym_fs] = ACTIONS(158), - [anon_sym_json] = ACTIONS(158), - [anon_sym_length] = ACTIONS(158), - [anon_sym_output] = ACTIONS(158), - [anon_sym_random] = ACTIONS(158), - [anon_sym_string] = ACTIONS(158), + [anon_sym_LPAREN] = ACTIONS(167), + [anon_sym_async] = ACTIONS(169), + [anon_sym_LBRACE] = ACTIONS(171), + [sym_integer] = ACTIONS(173), + [sym_float] = ACTIONS(175), + [sym_string] = ACTIONS(175), + [anon_sym_true] = ACTIONS(177), + [anon_sym_false] = ACTIONS(177), + [anon_sym_LBRACK] = ACTIONS(179), + [anon_sym_struct] = ACTIONS(181), + [anon_sym_none] = ACTIONS(183), + [anon_sym_some] = ACTIONS(185), + [anon_sym_if] = ACTIONS(151), + [anon_sym_match] = ACTIONS(153), + [anon_sym_while] = ACTIONS(187), + [anon_sym_for] = ACTIONS(189), + [anon_sym_asyncfor] = ACTIONS(191), + [anon_sym_return] = ACTIONS(193), + [anon_sym_args] = ACTIONS(195), + [anon_sym_assert_equal] = ACTIONS(195), + [anon_sym_env] = ACTIONS(195), + [anon_sym_fs] = ACTIONS(195), + [anon_sym_json] = ACTIONS(195), + [anon_sym_length] = ACTIONS(195), + [anon_sym_output] = ACTIONS(195), + [anon_sym_random] = ACTIONS(195), + [anon_sym_string] = ACTIONS(195), }, [28] = { - [sym_statement] = STATE(231), - [sym_expression] = STATE(85), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(223), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(223), - [sym_index_assignment] = STATE(223), - [sym_if_else] = STATE(223), - [sym_if] = STATE(213), - [sym_match] = STATE(223), - [sym_while] = STATE(223), - [sym_for] = STATE(223), - [sym_return] = STATE(223), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [sym_identifier] = ACTIONS(5), + [sym_statement] = STATE(282), + [sym_expression] = STATE(304), + [sym__expression_kind] = STATE(250), + [sym_block] = STATE(278), + [sym_value] = STATE(239), + [sym_boolean] = STATE(260), + [sym_list] = STATE(260), + [sym_structure] = STATE(260), + [sym_option] = STATE(260), + [sym_index] = STATE(277), + [sym_index_expression] = STATE(422), + [sym_math] = STATE(250), + [sym_logic] = STATE(250), + [sym_assignment] = STATE(278), + [sym_index_assignment] = STATE(278), + [sym_if_else] = STATE(278), + [sym_if] = STATE(367), + [sym_match] = STATE(278), + [sym_while] = STATE(278), + [sym_for] = STATE(278), + [sym_return] = STATE(278), + [sym_function] = STATE(260), + [sym_function_expression] = STATE(416), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(245), + [sym_yield] = STATE(245), + [sym_built_in_value] = STATE(260), + [sym_identifier] = ACTIONS(129), [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(7), - [anon_sym_async] = ACTIONS(9), - [anon_sym_LBRACE] = ACTIONS(11), - [sym_integer] = ACTIONS(13), - [sym_float] = ACTIONS(15), - [sym_string] = ACTIONS(15), - [anon_sym_true] = ACTIONS(17), - [anon_sym_false] = ACTIONS(17), - [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), + [anon_sym_LPAREN] = ACTIONS(131), + [anon_sym_async] = ACTIONS(133), + [anon_sym_LBRACE] = ACTIONS(135), + [sym_integer] = ACTIONS(137), + [sym_float] = ACTIONS(139), + [sym_string] = ACTIONS(139), + [anon_sym_true] = ACTIONS(141), + [anon_sym_false] = ACTIONS(141), + [anon_sym_LBRACK] = ACTIONS(143), + [anon_sym_struct] = ACTIONS(145), + [anon_sym_none] = ACTIONS(147), + [anon_sym_some] = ACTIONS(149), + [anon_sym_if] = ACTIONS(151), + [anon_sym_match] = ACTIONS(153), + [anon_sym_while] = ACTIONS(155), + [anon_sym_for] = ACTIONS(157), + [anon_sym_asyncfor] = ACTIONS(159), + [anon_sym_return] = ACTIONS(161), + [anon_sym_args] = ACTIONS(163), + [anon_sym_assert_equal] = ACTIONS(163), + [anon_sym_env] = ACTIONS(163), + [anon_sym_fs] = ACTIONS(163), + [anon_sym_json] = ACTIONS(163), + [anon_sym_length] = ACTIONS(163), + [anon_sym_output] = ACTIONS(163), + [anon_sym_random] = ACTIONS(163), + [anon_sym_string] = ACTIONS(163), }, [29] = { - [sym_statement] = STATE(229), - [sym_expression] = STATE(85), - [sym__expression_kind] = STATE(71), + [sym_statement] = STATE(286), + [sym_expression] = STATE(304), + [sym__expression_kind] = STATE(250), + [sym_block] = STATE(278), + [sym_value] = STATE(239), + [sym_boolean] = STATE(260), + [sym_list] = STATE(260), + [sym_structure] = STATE(260), + [sym_option] = STATE(260), + [sym_index] = STATE(277), + [sym_index_expression] = STATE(422), + [sym_math] = STATE(250), + [sym_logic] = STATE(250), + [sym_assignment] = STATE(278), + [sym_index_assignment] = STATE(278), + [sym_if_else] = STATE(278), + [sym_if] = STATE(367), + [sym_match] = STATE(278), + [sym_while] = STATE(278), + [sym_for] = STATE(278), + [sym_return] = STATE(278), + [sym_function] = STATE(260), + [sym_function_expression] = STATE(416), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(245), + [sym_yield] = STATE(245), + [sym_built_in_value] = STATE(260), + [sym_identifier] = ACTIONS(129), + [sym__comment] = ACTIONS(3), + [anon_sym_LPAREN] = ACTIONS(131), + [anon_sym_async] = ACTIONS(133), + [anon_sym_LBRACE] = ACTIONS(135), + [sym_integer] = ACTIONS(137), + [sym_float] = ACTIONS(139), + [sym_string] = ACTIONS(139), + [anon_sym_true] = ACTIONS(141), + [anon_sym_false] = ACTIONS(141), + [anon_sym_LBRACK] = ACTIONS(143), + [anon_sym_struct] = ACTIONS(145), + [anon_sym_none] = ACTIONS(147), + [anon_sym_some] = ACTIONS(149), + [anon_sym_if] = ACTIONS(151), + [anon_sym_match] = ACTIONS(153), + [anon_sym_while] = ACTIONS(155), + [anon_sym_for] = ACTIONS(157), + [anon_sym_asyncfor] = ACTIONS(159), + [anon_sym_return] = ACTIONS(161), + [anon_sym_args] = ACTIONS(163), + [anon_sym_assert_equal] = ACTIONS(163), + [anon_sym_env] = ACTIONS(163), + [anon_sym_fs] = ACTIONS(163), + [anon_sym_json] = ACTIONS(163), + [anon_sym_length] = ACTIONS(163), + [anon_sym_output] = ACTIONS(163), + [anon_sym_random] = ACTIONS(163), + [anon_sym_string] = ACTIONS(163), + }, + [30] = { + [sym_statement] = STATE(219), + [sym_expression] = STATE(75), + [sym__expression_kind] = STATE(48), [sym_block] = STATE(223), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), [sym_assignment] = STATE(223), [sym_index_assignment] = STATE(223), [sym_if_else] = STATE(223), - [sym_if] = STATE(213), + [sym_if] = STATE(207), [sym_match] = STATE(223), [sym_while] = STATE(223), [sym_for] = STATE(223), [sym_return] = STATE(223), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), [anon_sym_LPAREN] = ACTIONS(7), @@ -4381,821 +4459,488 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_true] = ACTIONS(17), [anon_sym_false] = ACTIONS(17), [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), - }, - [30] = { - [sym_statement] = STATE(284), - [sym_expression] = STATE(140), - [sym__expression_kind] = STATE(102), - [sym_block] = STATE(286), - [sym_value] = STATE(109), - [sym_boolean] = STATE(95), - [sym_list] = STATE(95), - [sym_map] = STATE(95), - [sym_option] = STATE(95), - [sym_index] = STATE(119), - [sym_index_expression] = STATE(424), - [sym_math] = STATE(102), - [sym_logic] = STATE(102), - [sym_assignment] = STATE(286), - [sym_index_assignment] = STATE(286), - [sym_if_else] = STATE(286), - [sym_if] = STATE(240), - [sym_match] = STATE(286), - [sym_while] = STATE(286), - [sym_for] = STATE(286), - [sym_return] = STATE(286), - [sym_function] = STATE(95), - [sym_function_expression] = STATE(419), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(100), - [sym_yield] = STATE(100), - [sym_built_in_value] = STATE(95), - [sym_identifier] = ACTIONS(160), - [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(162), - [anon_sym_async] = ACTIONS(164), - [anon_sym_LBRACE] = ACTIONS(166), - [sym_integer] = ACTIONS(168), - [sym_float] = ACTIONS(170), - [sym_string] = ACTIONS(170), - [anon_sym_true] = ACTIONS(172), - [anon_sym_false] = ACTIONS(172), - [anon_sym_LBRACK] = ACTIONS(174), - [anon_sym_none] = ACTIONS(176), - [anon_sym_some] = ACTIONS(178), - [anon_sym_if] = ACTIONS(146), - [anon_sym_match] = ACTIONS(148), - [anon_sym_while] = ACTIONS(180), - [anon_sym_for] = ACTIONS(182), - [anon_sym_asyncfor] = ACTIONS(184), - [anon_sym_return] = ACTIONS(186), - [anon_sym_args] = ACTIONS(188), - [anon_sym_assert_equal] = ACTIONS(188), - [anon_sym_env] = ACTIONS(188), - [anon_sym_fs] = ACTIONS(188), - [anon_sym_json] = ACTIONS(188), - [anon_sym_length] = ACTIONS(188), - [anon_sym_output] = ACTIONS(188), - [anon_sym_random] = ACTIONS(188), - [anon_sym_string] = ACTIONS(188), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), }, [31] = { - [sym_statement] = STATE(383), - [sym_expression] = STATE(307), - [sym__expression_kind] = STATE(258), - [sym_block] = STATE(292), - [sym_value] = STATE(250), - [sym_boolean] = STATE(269), - [sym_list] = STATE(269), - [sym_map] = STATE(269), - [sym_option] = STATE(269), - [sym_index] = STATE(296), - [sym_index_expression] = STATE(426), - [sym_math] = STATE(258), - [sym_logic] = STATE(258), - [sym_assignment] = STATE(292), - [sym_index_assignment] = STATE(292), - [sym_if_else] = STATE(292), - [sym_if] = STATE(372), - [sym_match] = STATE(292), - [sym_while] = STATE(292), - [sym_for] = STATE(292), - [sym_return] = STATE(292), - [sym_function] = STATE(269), - [sym_function_expression] = STATE(445), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(245), - [sym_yield] = STATE(245), - [sym_built_in_value] = STATE(269), - [sym_identifier] = ACTIONS(126), + [sym_statement] = STATE(221), + [sym_expression] = STATE(75), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(223), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(223), + [sym_index_assignment] = STATE(223), + [sym_if_else] = STATE(223), + [sym_if] = STATE(207), + [sym_match] = STATE(223), + [sym_while] = STATE(223), + [sym_for] = STATE(223), + [sym_return] = STATE(223), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), + [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(128), - [anon_sym_async] = ACTIONS(130), - [anon_sym_LBRACE] = ACTIONS(132), - [sym_integer] = ACTIONS(134), - [sym_float] = ACTIONS(136), - [sym_string] = ACTIONS(136), - [anon_sym_true] = ACTIONS(138), - [anon_sym_false] = ACTIONS(138), - [anon_sym_LBRACK] = ACTIONS(140), - [anon_sym_none] = ACTIONS(142), - [anon_sym_some] = ACTIONS(144), - [anon_sym_if] = ACTIONS(146), - [anon_sym_match] = ACTIONS(148), - [anon_sym_while] = ACTIONS(150), - [anon_sym_for] = ACTIONS(152), - [anon_sym_asyncfor] = ACTIONS(154), - [anon_sym_return] = ACTIONS(156), - [anon_sym_args] = ACTIONS(158), - [anon_sym_assert_equal] = ACTIONS(158), - [anon_sym_env] = ACTIONS(158), - [anon_sym_fs] = ACTIONS(158), - [anon_sym_json] = ACTIONS(158), - [anon_sym_length] = ACTIONS(158), - [anon_sym_output] = ACTIONS(158), - [anon_sym_random] = ACTIONS(158), - [anon_sym_string] = ACTIONS(158), + [anon_sym_LPAREN] = ACTIONS(7), + [anon_sym_async] = ACTIONS(9), + [anon_sym_LBRACE] = ACTIONS(11), + [sym_integer] = ACTIONS(13), + [sym_float] = ACTIONS(15), + [sym_string] = ACTIONS(15), + [anon_sym_true] = ACTIONS(17), + [anon_sym_false] = ACTIONS(17), + [anon_sym_LBRACK] = ACTIONS(19), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), }, [32] = { - [sym_statement] = STATE(285), - [sym_expression] = STATE(140), - [sym__expression_kind] = STATE(102), - [sym_block] = STATE(286), - [sym_value] = STATE(109), - [sym_boolean] = STATE(95), - [sym_list] = STATE(95), - [sym_map] = STATE(95), - [sym_option] = STATE(95), - [sym_index] = STATE(119), - [sym_index_expression] = STATE(424), - [sym_math] = STATE(102), - [sym_logic] = STATE(102), - [sym_assignment] = STATE(286), - [sym_index_assignment] = STATE(286), - [sym_if_else] = STATE(286), - [sym_if] = STATE(240), - [sym_match] = STATE(286), - [sym_while] = STATE(286), - [sym_for] = STATE(286), - [sym_return] = STATE(286), - [sym_function] = STATE(95), - [sym_function_expression] = STATE(419), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(100), - [sym_yield] = STATE(100), - [sym_built_in_value] = STATE(95), - [sym_identifier] = ACTIONS(160), + [sym_statement] = STATE(226), + [sym_expression] = STATE(75), + [sym__expression_kind] = STATE(48), + [sym_block] = STATE(223), + [sym_value] = STATE(54), + [sym_boolean] = STATE(52), + [sym_list] = STATE(52), + [sym_structure] = STATE(52), + [sym_option] = STATE(52), + [sym_index] = STATE(60), + [sym_index_expression] = STATE(433), + [sym_math] = STATE(48), + [sym_logic] = STATE(48), + [sym_assignment] = STATE(223), + [sym_index_assignment] = STATE(223), + [sym_if_else] = STATE(223), + [sym_if] = STATE(207), + [sym_match] = STATE(223), + [sym_while] = STATE(223), + [sym_for] = STATE(223), + [sym_return] = STATE(223), + [sym_function] = STATE(52), + [sym_function_expression] = STATE(434), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(59), + [sym_yield] = STATE(59), + [sym_built_in_value] = STATE(52), + [sym_identifier] = ACTIONS(5), [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(162), - [anon_sym_async] = ACTIONS(164), - [anon_sym_LBRACE] = ACTIONS(166), - [sym_integer] = ACTIONS(168), - [sym_float] = ACTIONS(170), - [sym_string] = ACTIONS(170), - [anon_sym_true] = ACTIONS(172), - [anon_sym_false] = ACTIONS(172), - [anon_sym_LBRACK] = ACTIONS(174), - [anon_sym_none] = ACTIONS(176), - [anon_sym_some] = ACTIONS(178), - [anon_sym_if] = ACTIONS(146), - [anon_sym_match] = ACTIONS(148), - [anon_sym_while] = ACTIONS(180), - [anon_sym_for] = ACTIONS(182), - [anon_sym_asyncfor] = ACTIONS(184), - [anon_sym_return] = ACTIONS(186), - [anon_sym_args] = ACTIONS(188), - [anon_sym_assert_equal] = ACTIONS(188), - [anon_sym_env] = ACTIONS(188), - [anon_sym_fs] = ACTIONS(188), - [anon_sym_json] = ACTIONS(188), - [anon_sym_length] = ACTIONS(188), - [anon_sym_output] = ACTIONS(188), - [anon_sym_random] = ACTIONS(188), - [anon_sym_string] = ACTIONS(188), + [anon_sym_LPAREN] = ACTIONS(7), + [anon_sym_async] = ACTIONS(9), + [anon_sym_LBRACE] = ACTIONS(11), + [sym_integer] = ACTIONS(13), + [sym_float] = ACTIONS(15), + [sym_string] = ACTIONS(15), + [anon_sym_true] = ACTIONS(17), + [anon_sym_false] = ACTIONS(17), + [anon_sym_LBRACK] = ACTIONS(19), + [anon_sym_struct] = ACTIONS(21), + [anon_sym_none] = ACTIONS(23), + [anon_sym_some] = ACTIONS(25), + [anon_sym_if] = ACTIONS(27), + [anon_sym_match] = ACTIONS(29), + [anon_sym_while] = ACTIONS(31), + [anon_sym_for] = ACTIONS(33), + [anon_sym_asyncfor] = ACTIONS(35), + [anon_sym_return] = ACTIONS(37), + [anon_sym_args] = ACTIONS(39), + [anon_sym_assert_equal] = ACTIONS(39), + [anon_sym_env] = ACTIONS(39), + [anon_sym_fs] = ACTIONS(39), + [anon_sym_json] = ACTIONS(39), + [anon_sym_length] = ACTIONS(39), + [anon_sym_output] = ACTIONS(39), + [anon_sym_random] = ACTIONS(39), + [anon_sym_string] = ACTIONS(39), }, [33] = { - [sym_statement] = STATE(293), - [sym_expression] = STATE(140), - [sym__expression_kind] = STATE(102), - [sym_block] = STATE(286), - [sym_value] = STATE(109), - [sym_boolean] = STATE(95), - [sym_list] = STATE(95), - [sym_map] = STATE(95), - [sym_option] = STATE(95), - [sym_index] = STATE(119), - [sym_index_expression] = STATE(424), - [sym_math] = STATE(102), - [sym_logic] = STATE(102), - [sym_assignment] = STATE(286), - [sym_index_assignment] = STATE(286), - [sym_if_else] = STATE(286), - [sym_if] = STATE(240), - [sym_match] = STATE(286), - [sym_while] = STATE(286), - [sym_for] = STATE(286), - [sym_return] = STATE(286), - [sym_function] = STATE(95), - [sym_function_expression] = STATE(419), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(100), - [sym_yield] = STATE(100), - [sym_built_in_value] = STATE(95), - [sym_identifier] = ACTIONS(160), + [sym_statement] = STATE(288), + [sym_expression] = STATE(304), + [sym__expression_kind] = STATE(250), + [sym_block] = STATE(278), + [sym_value] = STATE(239), + [sym_boolean] = STATE(260), + [sym_list] = STATE(260), + [sym_structure] = STATE(260), + [sym_option] = STATE(260), + [sym_index] = STATE(277), + [sym_index_expression] = STATE(422), + [sym_math] = STATE(250), + [sym_logic] = STATE(250), + [sym_assignment] = STATE(278), + [sym_index_assignment] = STATE(278), + [sym_if_else] = STATE(278), + [sym_if] = STATE(367), + [sym_match] = STATE(278), + [sym_while] = STATE(278), + [sym_for] = STATE(278), + [sym_return] = STATE(278), + [sym_function] = STATE(260), + [sym_function_expression] = STATE(416), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(245), + [sym_yield] = STATE(245), + [sym_built_in_value] = STATE(260), + [sym_identifier] = ACTIONS(129), [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(162), - [anon_sym_async] = ACTIONS(164), - [anon_sym_LBRACE] = ACTIONS(166), - [sym_integer] = ACTIONS(168), - [sym_float] = ACTIONS(170), - [sym_string] = ACTIONS(170), - [anon_sym_true] = ACTIONS(172), - [anon_sym_false] = ACTIONS(172), - [anon_sym_LBRACK] = ACTIONS(174), - [anon_sym_none] = ACTIONS(176), - [anon_sym_some] = ACTIONS(178), - [anon_sym_if] = ACTIONS(146), - [anon_sym_match] = ACTIONS(148), - [anon_sym_while] = ACTIONS(180), - [anon_sym_for] = ACTIONS(182), - [anon_sym_asyncfor] = ACTIONS(184), - [anon_sym_return] = ACTIONS(186), - [anon_sym_args] = ACTIONS(188), - [anon_sym_assert_equal] = ACTIONS(188), - [anon_sym_env] = ACTIONS(188), - [anon_sym_fs] = ACTIONS(188), - [anon_sym_json] = ACTIONS(188), - [anon_sym_length] = ACTIONS(188), - [anon_sym_output] = ACTIONS(188), - [anon_sym_random] = ACTIONS(188), - [anon_sym_string] = ACTIONS(188), + [anon_sym_LPAREN] = ACTIONS(131), + [anon_sym_async] = ACTIONS(133), + [anon_sym_LBRACE] = ACTIONS(135), + [sym_integer] = ACTIONS(137), + [sym_float] = ACTIONS(139), + [sym_string] = ACTIONS(139), + [anon_sym_true] = ACTIONS(141), + [anon_sym_false] = ACTIONS(141), + [anon_sym_LBRACK] = ACTIONS(143), + [anon_sym_struct] = ACTIONS(145), + [anon_sym_none] = ACTIONS(147), + [anon_sym_some] = ACTIONS(149), + [anon_sym_if] = ACTIONS(151), + [anon_sym_match] = ACTIONS(153), + [anon_sym_while] = ACTIONS(155), + [anon_sym_for] = ACTIONS(157), + [anon_sym_asyncfor] = ACTIONS(159), + [anon_sym_return] = ACTIONS(161), + [anon_sym_args] = ACTIONS(163), + [anon_sym_assert_equal] = ACTIONS(163), + [anon_sym_env] = ACTIONS(163), + [anon_sym_fs] = ACTIONS(163), + [anon_sym_json] = ACTIONS(163), + [anon_sym_length] = ACTIONS(163), + [anon_sym_output] = ACTIONS(163), + [anon_sym_random] = ACTIONS(163), + [anon_sym_string] = ACTIONS(163), }, [34] = { - [sym_statement] = STATE(285), - [sym_expression] = STATE(310), - [sym__expression_kind] = STATE(258), - [sym_block] = STATE(286), - [sym_value] = STATE(250), - [sym_boolean] = STATE(269), - [sym_list] = STATE(269), - [sym_map] = STATE(269), - [sym_option] = STATE(269), - [sym_index] = STATE(296), - [sym_index_expression] = STATE(426), - [sym_math] = STATE(258), - [sym_logic] = STATE(258), - [sym_assignment] = STATE(286), - [sym_index_assignment] = STATE(286), - [sym_if_else] = STATE(286), - [sym_if] = STATE(372), - [sym_match] = STATE(286), - [sym_while] = STATE(286), - [sym_for] = STATE(286), - [sym_return] = STATE(286), - [sym_function] = STATE(269), - [sym_function_expression] = STATE(445), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(245), - [sym_yield] = STATE(245), - [sym_built_in_value] = STATE(269), - [sym_identifier] = ACTIONS(126), + [sym_statement] = STATE(286), + [sym_expression] = STATE(122), + [sym__expression_kind] = STATE(93), + [sym_block] = STATE(278), + [sym_value] = STATE(91), + [sym_boolean] = STATE(88), + [sym_list] = STATE(88), + [sym_structure] = STATE(88), + [sym_option] = STATE(88), + [sym_index] = STATE(113), + [sym_index_expression] = STATE(436), + [sym_math] = STATE(93), + [sym_logic] = STATE(93), + [sym_assignment] = STATE(278), + [sym_index_assignment] = STATE(278), + [sym_if_else] = STATE(278), + [sym_if] = STATE(233), + [sym_match] = STATE(278), + [sym_while] = STATE(278), + [sym_for] = STATE(278), + [sym_return] = STATE(278), + [sym_function] = STATE(88), + [sym_function_expression] = STATE(421), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(94), + [sym_yield] = STATE(94), + [sym_built_in_value] = STATE(88), + [sym_identifier] = ACTIONS(165), [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(128), - [anon_sym_async] = ACTIONS(130), - [anon_sym_LBRACE] = ACTIONS(132), - [sym_integer] = ACTIONS(134), - [sym_float] = ACTIONS(136), - [sym_string] = ACTIONS(136), - [anon_sym_true] = ACTIONS(138), - [anon_sym_false] = ACTIONS(138), - [anon_sym_LBRACK] = ACTIONS(140), - [anon_sym_none] = ACTIONS(142), - [anon_sym_some] = ACTIONS(144), - [anon_sym_if] = ACTIONS(146), - [anon_sym_match] = ACTIONS(148), - [anon_sym_while] = ACTIONS(150), - [anon_sym_for] = ACTIONS(152), - [anon_sym_asyncfor] = ACTIONS(154), - [anon_sym_return] = ACTIONS(156), - [anon_sym_args] = ACTIONS(158), - [anon_sym_assert_equal] = ACTIONS(158), - [anon_sym_env] = ACTIONS(158), - [anon_sym_fs] = ACTIONS(158), - [anon_sym_json] = ACTIONS(158), - [anon_sym_length] = ACTIONS(158), - [anon_sym_output] = ACTIONS(158), - [anon_sym_random] = ACTIONS(158), - [anon_sym_string] = ACTIONS(158), + [anon_sym_LPAREN] = ACTIONS(167), + [anon_sym_async] = ACTIONS(169), + [anon_sym_LBRACE] = ACTIONS(171), + [sym_integer] = ACTIONS(173), + [sym_float] = ACTIONS(175), + [sym_string] = ACTIONS(175), + [anon_sym_true] = ACTIONS(177), + [anon_sym_false] = ACTIONS(177), + [anon_sym_LBRACK] = ACTIONS(179), + [anon_sym_struct] = ACTIONS(181), + [anon_sym_none] = ACTIONS(183), + [anon_sym_some] = ACTIONS(185), + [anon_sym_if] = ACTIONS(151), + [anon_sym_match] = ACTIONS(153), + [anon_sym_while] = ACTIONS(187), + [anon_sym_for] = ACTIONS(189), + [anon_sym_asyncfor] = ACTIONS(191), + [anon_sym_return] = ACTIONS(193), + [anon_sym_args] = ACTIONS(195), + [anon_sym_assert_equal] = ACTIONS(195), + [anon_sym_env] = ACTIONS(195), + [anon_sym_fs] = ACTIONS(195), + [anon_sym_json] = ACTIONS(195), + [anon_sym_length] = ACTIONS(195), + [anon_sym_output] = ACTIONS(195), + [anon_sym_random] = ACTIONS(195), + [anon_sym_string] = ACTIONS(195), }, [35] = { - [sym_statement] = STATE(284), - [sym_expression] = STATE(310), - [sym__expression_kind] = STATE(258), - [sym_block] = STATE(286), - [sym_value] = STATE(250), - [sym_boolean] = STATE(269), - [sym_list] = STATE(269), - [sym_map] = STATE(269), - [sym_option] = STATE(269), - [sym_index] = STATE(296), - [sym_index_expression] = STATE(426), - [sym_math] = STATE(258), - [sym_logic] = STATE(258), - [sym_assignment] = STATE(286), - [sym_index_assignment] = STATE(286), - [sym_if_else] = STATE(286), - [sym_if] = STATE(372), - [sym_match] = STATE(286), - [sym_while] = STATE(286), - [sym_for] = STATE(286), - [sym_return] = STATE(286), - [sym_function] = STATE(269), - [sym_function_expression] = STATE(445), - [sym__function_expression_kind] = STATE(61), + [sym_statement] = STATE(388), + [sym_expression] = STATE(300), + [sym__expression_kind] = STATE(250), + [sym_block] = STATE(280), + [sym_value] = STATE(239), + [sym_boolean] = STATE(260), + [sym_list] = STATE(260), + [sym_structure] = STATE(260), + [sym_option] = STATE(260), + [sym_index] = STATE(277), + [sym_index_expression] = STATE(422), + [sym_math] = STATE(250), + [sym_logic] = STATE(250), + [sym_assignment] = STATE(280), + [sym_index_assignment] = STATE(280), + [sym_if_else] = STATE(280), + [sym_if] = STATE(367), + [sym_match] = STATE(280), + [sym_while] = STATE(280), + [sym_for] = STATE(280), + [sym_return] = STATE(280), + [sym_function] = STATE(260), + [sym_function_expression] = STATE(416), + [sym__function_expression_kind] = STATE(46), [sym_function_call] = STATE(245), [sym_yield] = STATE(245), - [sym_built_in_value] = STATE(269), - [sym_identifier] = ACTIONS(126), + [sym_built_in_value] = STATE(260), + [sym_identifier] = ACTIONS(129), [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(128), - [anon_sym_async] = ACTIONS(130), - [anon_sym_LBRACE] = ACTIONS(132), - [sym_integer] = ACTIONS(134), - [sym_float] = ACTIONS(136), - [sym_string] = ACTIONS(136), - [anon_sym_true] = ACTIONS(138), - [anon_sym_false] = ACTIONS(138), - [anon_sym_LBRACK] = ACTIONS(140), - [anon_sym_none] = ACTIONS(142), - [anon_sym_some] = ACTIONS(144), - [anon_sym_if] = ACTIONS(146), - [anon_sym_match] = ACTIONS(148), - [anon_sym_while] = ACTIONS(150), - [anon_sym_for] = ACTIONS(152), - [anon_sym_asyncfor] = ACTIONS(154), - [anon_sym_return] = ACTIONS(156), - [anon_sym_args] = ACTIONS(158), - [anon_sym_assert_equal] = ACTIONS(158), - [anon_sym_env] = ACTIONS(158), - [anon_sym_fs] = ACTIONS(158), - [anon_sym_json] = ACTIONS(158), - [anon_sym_length] = ACTIONS(158), - [anon_sym_output] = ACTIONS(158), - [anon_sym_random] = ACTIONS(158), - [anon_sym_string] = ACTIONS(158), + [anon_sym_LPAREN] = ACTIONS(131), + [anon_sym_async] = ACTIONS(133), + [anon_sym_LBRACE] = ACTIONS(135), + [sym_integer] = ACTIONS(137), + [sym_float] = ACTIONS(139), + [sym_string] = ACTIONS(139), + [anon_sym_true] = ACTIONS(141), + [anon_sym_false] = ACTIONS(141), + [anon_sym_LBRACK] = ACTIONS(143), + [anon_sym_struct] = ACTIONS(145), + [anon_sym_none] = ACTIONS(147), + [anon_sym_some] = ACTIONS(149), + [anon_sym_if] = ACTIONS(151), + [anon_sym_match] = ACTIONS(153), + [anon_sym_while] = ACTIONS(155), + [anon_sym_for] = ACTIONS(157), + [anon_sym_asyncfor] = ACTIONS(159), + [anon_sym_return] = ACTIONS(161), + [anon_sym_args] = ACTIONS(163), + [anon_sym_assert_equal] = ACTIONS(163), + [anon_sym_env] = ACTIONS(163), + [anon_sym_fs] = ACTIONS(163), + [anon_sym_json] = ACTIONS(163), + [anon_sym_length] = ACTIONS(163), + [anon_sym_output] = ACTIONS(163), + [anon_sym_random] = ACTIONS(163), + [anon_sym_string] = ACTIONS(163), }, [36] = { [sym_statement] = STATE(383), - [sym_expression] = STATE(307), - [sym__expression_kind] = STATE(258), - [sym_block] = STATE(292), - [sym_value] = STATE(250), - [sym_boolean] = STATE(269), - [sym_list] = STATE(269), - [sym_map] = STATE(269), - [sym_option] = STATE(269), - [sym_index] = STATE(296), - [sym_index_expression] = STATE(426), - [sym_math] = STATE(258), - [sym_logic] = STATE(258), - [sym_assignment] = STATE(292), - [sym_index_assignment] = STATE(292), - [sym_if_else] = STATE(292), - [sym_if] = STATE(372), - [sym_match] = STATE(292), - [sym_while] = STATE(292), - [sym_for] = STATE(292), - [sym_return] = STATE(292), - [sym_function] = STATE(269), - [sym_function_expression] = STATE(445), - [sym__function_expression_kind] = STATE(61), + [sym_expression] = STATE(300), + [sym__expression_kind] = STATE(250), + [sym_block] = STATE(280), + [sym_value] = STATE(239), + [sym_boolean] = STATE(260), + [sym_list] = STATE(260), + [sym_structure] = STATE(260), + [sym_option] = STATE(260), + [sym_index] = STATE(277), + [sym_index_expression] = STATE(422), + [sym_math] = STATE(250), + [sym_logic] = STATE(250), + [sym_assignment] = STATE(280), + [sym_index_assignment] = STATE(280), + [sym_if_else] = STATE(280), + [sym_if] = STATE(367), + [sym_match] = STATE(280), + [sym_while] = STATE(280), + [sym_for] = STATE(280), + [sym_return] = STATE(280), + [sym_function] = STATE(260), + [sym_function_expression] = STATE(416), + [sym__function_expression_kind] = STATE(46), [sym_function_call] = STATE(245), [sym_yield] = STATE(245), - [sym_built_in_value] = STATE(269), - [sym_identifier] = ACTIONS(126), + [sym_built_in_value] = STATE(260), + [sym_identifier] = ACTIONS(129), [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(128), - [anon_sym_async] = ACTIONS(130), - [anon_sym_LBRACE] = ACTIONS(132), - [sym_integer] = ACTIONS(134), - [sym_float] = ACTIONS(136), - [sym_string] = ACTIONS(136), - [anon_sym_true] = ACTIONS(138), - [anon_sym_false] = ACTIONS(138), - [anon_sym_LBRACK] = ACTIONS(140), - [anon_sym_none] = ACTIONS(142), - [anon_sym_some] = ACTIONS(144), - [anon_sym_if] = ACTIONS(146), - [anon_sym_match] = ACTIONS(148), - [anon_sym_while] = ACTIONS(150), - [anon_sym_for] = ACTIONS(152), - [anon_sym_asyncfor] = ACTIONS(154), - [anon_sym_return] = ACTIONS(156), - [anon_sym_args] = ACTIONS(158), - [anon_sym_assert_equal] = ACTIONS(158), - [anon_sym_env] = ACTIONS(158), - [anon_sym_fs] = ACTIONS(158), - [anon_sym_json] = ACTIONS(158), - [anon_sym_length] = ACTIONS(158), - [anon_sym_output] = ACTIONS(158), - [anon_sym_random] = ACTIONS(158), - [anon_sym_string] = ACTIONS(158), + [anon_sym_LPAREN] = ACTIONS(131), + [anon_sym_async] = ACTIONS(133), + [anon_sym_LBRACE] = ACTIONS(135), + [sym_integer] = ACTIONS(137), + [sym_float] = ACTIONS(139), + [sym_string] = ACTIONS(139), + [anon_sym_true] = ACTIONS(141), + [anon_sym_false] = ACTIONS(141), + [anon_sym_LBRACK] = ACTIONS(143), + [anon_sym_struct] = ACTIONS(145), + [anon_sym_none] = ACTIONS(147), + [anon_sym_some] = ACTIONS(149), + [anon_sym_if] = ACTIONS(151), + [anon_sym_match] = ACTIONS(153), + [anon_sym_while] = ACTIONS(155), + [anon_sym_for] = ACTIONS(157), + [anon_sym_asyncfor] = ACTIONS(159), + [anon_sym_return] = ACTIONS(161), + [anon_sym_args] = ACTIONS(163), + [anon_sym_assert_equal] = ACTIONS(163), + [anon_sym_env] = ACTIONS(163), + [anon_sym_fs] = ACTIONS(163), + [anon_sym_json] = ACTIONS(163), + [anon_sym_length] = ACTIONS(163), + [anon_sym_output] = ACTIONS(163), + [anon_sym_random] = ACTIONS(163), + [anon_sym_string] = ACTIONS(163), }, [37] = { [sym_statement] = STATE(294), - [sym_expression] = STATE(310), - [sym__expression_kind] = STATE(258), - [sym_block] = STATE(286), - [sym_value] = STATE(250), - [sym_boolean] = STATE(269), - [sym_list] = STATE(269), - [sym_map] = STATE(269), - [sym_option] = STATE(269), - [sym_index] = STATE(296), - [sym_index_expression] = STATE(426), - [sym_math] = STATE(258), - [sym_logic] = STATE(258), - [sym_assignment] = STATE(286), - [sym_index_assignment] = STATE(286), - [sym_if_else] = STATE(286), - [sym_if] = STATE(372), - [sym_match] = STATE(286), - [sym_while] = STATE(286), - [sym_for] = STATE(286), - [sym_return] = STATE(286), - [sym_function] = STATE(269), - [sym_function_expression] = STATE(445), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(245), - [sym_yield] = STATE(245), - [sym_built_in_value] = STATE(269), - [sym_identifier] = ACTIONS(126), + [sym_expression] = STATE(128), + [sym__expression_kind] = STATE(93), + [sym_block] = STATE(280), + [sym_value] = STATE(91), + [sym_boolean] = STATE(88), + [sym_list] = STATE(88), + [sym_structure] = STATE(88), + [sym_option] = STATE(88), + [sym_index] = STATE(113), + [sym_index_expression] = STATE(436), + [sym_math] = STATE(93), + [sym_logic] = STATE(93), + [sym_assignment] = STATE(280), + [sym_index_assignment] = STATE(280), + [sym_if_else] = STATE(280), + [sym_if] = STATE(233), + [sym_match] = STATE(280), + [sym_while] = STATE(280), + [sym_for] = STATE(280), + [sym_return] = STATE(280), + [sym_function] = STATE(88), + [sym_function_expression] = STATE(421), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(94), + [sym_yield] = STATE(94), + [sym_built_in_value] = STATE(88), + [sym_identifier] = ACTIONS(165), [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(128), - [anon_sym_async] = ACTIONS(130), - [anon_sym_LBRACE] = ACTIONS(132), - [sym_integer] = ACTIONS(134), - [sym_float] = ACTIONS(136), - [sym_string] = ACTIONS(136), - [anon_sym_true] = ACTIONS(138), - [anon_sym_false] = ACTIONS(138), - [anon_sym_LBRACK] = ACTIONS(140), - [anon_sym_none] = ACTIONS(142), - [anon_sym_some] = ACTIONS(144), - [anon_sym_if] = ACTIONS(146), - [anon_sym_match] = ACTIONS(148), - [anon_sym_while] = ACTIONS(150), - [anon_sym_for] = ACTIONS(152), - [anon_sym_asyncfor] = ACTIONS(154), - [anon_sym_return] = ACTIONS(156), - [anon_sym_args] = ACTIONS(158), - [anon_sym_assert_equal] = ACTIONS(158), - [anon_sym_env] = ACTIONS(158), - [anon_sym_fs] = ACTIONS(158), - [anon_sym_json] = ACTIONS(158), - [anon_sym_length] = ACTIONS(158), - [anon_sym_output] = ACTIONS(158), - [anon_sym_random] = ACTIONS(158), - [anon_sym_string] = ACTIONS(158), + [anon_sym_LPAREN] = ACTIONS(167), + [anon_sym_async] = ACTIONS(169), + [anon_sym_LBRACE] = ACTIONS(171), + [sym_integer] = ACTIONS(173), + [sym_float] = ACTIONS(175), + [sym_string] = ACTIONS(175), + [anon_sym_true] = ACTIONS(177), + [anon_sym_false] = ACTIONS(177), + [anon_sym_LBRACK] = ACTIONS(179), + [anon_sym_struct] = ACTIONS(181), + [anon_sym_none] = ACTIONS(183), + [anon_sym_some] = ACTIONS(185), + [anon_sym_if] = ACTIONS(151), + [anon_sym_match] = ACTIONS(153), + [anon_sym_while] = ACTIONS(187), + [anon_sym_for] = ACTIONS(189), + [anon_sym_asyncfor] = ACTIONS(191), + [anon_sym_return] = ACTIONS(193), + [anon_sym_args] = ACTIONS(195), + [anon_sym_assert_equal] = ACTIONS(195), + [anon_sym_env] = ACTIONS(195), + [anon_sym_fs] = ACTIONS(195), + [anon_sym_json] = ACTIONS(195), + [anon_sym_length] = ACTIONS(195), + [anon_sym_output] = ACTIONS(195), + [anon_sym_random] = ACTIONS(195), + [anon_sym_string] = ACTIONS(195), }, [38] = { - [sym_statement] = STATE(226), - [sym_expression] = STATE(85), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(223), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(223), - [sym_index_assignment] = STATE(223), - [sym_if_else] = STATE(223), - [sym_if] = STATE(213), - [sym_match] = STATE(223), - [sym_while] = STATE(223), - [sym_for] = STATE(223), - [sym_return] = STATE(223), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [sym_identifier] = ACTIONS(5), + [sym_statement] = STATE(282), + [sym_expression] = STATE(122), + [sym__expression_kind] = STATE(93), + [sym_block] = STATE(278), + [sym_value] = STATE(91), + [sym_boolean] = STATE(88), + [sym_list] = STATE(88), + [sym_structure] = STATE(88), + [sym_option] = STATE(88), + [sym_index] = STATE(113), + [sym_index_expression] = STATE(436), + [sym_math] = STATE(93), + [sym_logic] = STATE(93), + [sym_assignment] = STATE(278), + [sym_index_assignment] = STATE(278), + [sym_if_else] = STATE(278), + [sym_if] = STATE(233), + [sym_match] = STATE(278), + [sym_while] = STATE(278), + [sym_for] = STATE(278), + [sym_return] = STATE(278), + [sym_function] = STATE(88), + [sym_function_expression] = STATE(421), + [sym__function_expression_kind] = STATE(46), + [sym_function_call] = STATE(94), + [sym_yield] = STATE(94), + [sym_built_in_value] = STATE(88), + [sym_identifier] = ACTIONS(165), [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(7), - [anon_sym_async] = ACTIONS(9), - [anon_sym_LBRACE] = ACTIONS(11), - [sym_integer] = ACTIONS(13), - [sym_float] = ACTIONS(15), - [sym_string] = ACTIONS(15), - [anon_sym_true] = ACTIONS(17), - [anon_sym_false] = ACTIONS(17), - [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), - }, - [39] = { - [sym_statement] = STATE(387), - [sym_expression] = STATE(307), - [sym__expression_kind] = STATE(258), - [sym_block] = STATE(292), - [sym_value] = STATE(250), - [sym_boolean] = STATE(269), - [sym_list] = STATE(269), - [sym_map] = STATE(269), - [sym_option] = STATE(269), - [sym_index] = STATE(296), - [sym_index_expression] = STATE(426), - [sym_math] = STATE(258), - [sym_logic] = STATE(258), - [sym_assignment] = STATE(292), - [sym_index_assignment] = STATE(292), - [sym_if_else] = STATE(292), - [sym_if] = STATE(372), - [sym_match] = STATE(292), - [sym_while] = STATE(292), - [sym_for] = STATE(292), - [sym_return] = STATE(292), - [sym_function] = STATE(269), - [sym_function_expression] = STATE(445), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(245), - [sym_yield] = STATE(245), - [sym_built_in_value] = STATE(269), - [sym_identifier] = ACTIONS(126), - [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(128), - [anon_sym_async] = ACTIONS(130), - [anon_sym_LBRACE] = ACTIONS(132), - [sym_integer] = ACTIONS(134), - [sym_float] = ACTIONS(136), - [sym_string] = ACTIONS(136), - [anon_sym_true] = ACTIONS(138), - [anon_sym_false] = ACTIONS(138), - [anon_sym_LBRACK] = ACTIONS(140), - [anon_sym_none] = ACTIONS(142), - [anon_sym_some] = ACTIONS(144), - [anon_sym_if] = ACTIONS(146), - [anon_sym_match] = ACTIONS(148), - [anon_sym_while] = ACTIONS(150), - [anon_sym_for] = ACTIONS(152), - [anon_sym_asyncfor] = ACTIONS(154), - [anon_sym_return] = ACTIONS(156), - [anon_sym_args] = ACTIONS(158), - [anon_sym_assert_equal] = ACTIONS(158), - [anon_sym_env] = ACTIONS(158), - [anon_sym_fs] = ACTIONS(158), - [anon_sym_json] = ACTIONS(158), - [anon_sym_length] = ACTIONS(158), - [anon_sym_output] = ACTIONS(158), - [anon_sym_random] = ACTIONS(158), - [anon_sym_string] = ACTIONS(158), - }, - [40] = { - [sym_statement] = STATE(220), - [sym_expression] = STATE(85), - [sym__expression_kind] = STATE(71), - [sym_block] = STATE(223), - [sym_value] = STATE(68), - [sym_boolean] = STATE(72), - [sym_list] = STATE(72), - [sym_map] = STATE(72), - [sym_option] = STATE(72), - [sym_index] = STATE(67), - [sym_index_expression] = STATE(441), - [sym_math] = STATE(71), - [sym_logic] = STATE(71), - [sym_assignment] = STATE(223), - [sym_index_assignment] = STATE(223), - [sym_if_else] = STATE(223), - [sym_if] = STATE(213), - [sym_match] = STATE(223), - [sym_while] = STATE(223), - [sym_for] = STATE(223), - [sym_return] = STATE(223), - [sym_function] = STATE(72), - [sym_function_expression] = STATE(440), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(60), - [sym_yield] = STATE(60), - [sym_built_in_value] = STATE(72), - [sym_identifier] = ACTIONS(5), - [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(7), - [anon_sym_async] = ACTIONS(9), - [anon_sym_LBRACE] = ACTIONS(11), - [sym_integer] = ACTIONS(13), - [sym_float] = ACTIONS(15), - [sym_string] = ACTIONS(15), - [anon_sym_true] = ACTIONS(17), - [anon_sym_false] = ACTIONS(17), - [anon_sym_LBRACK] = ACTIONS(19), - [anon_sym_none] = ACTIONS(21), - [anon_sym_some] = ACTIONS(23), - [anon_sym_if] = ACTIONS(25), - [anon_sym_match] = ACTIONS(27), - [anon_sym_while] = ACTIONS(29), - [anon_sym_for] = ACTIONS(31), - [anon_sym_asyncfor] = ACTIONS(33), - [anon_sym_return] = ACTIONS(35), - [anon_sym_args] = ACTIONS(37), - [anon_sym_assert_equal] = ACTIONS(37), - [anon_sym_env] = ACTIONS(37), - [anon_sym_fs] = ACTIONS(37), - [anon_sym_json] = ACTIONS(37), - [anon_sym_length] = ACTIONS(37), - [anon_sym_output] = ACTIONS(37), - [anon_sym_random] = ACTIONS(37), - [anon_sym_string] = ACTIONS(37), - }, - [41] = { - [sym_statement] = STATE(294), - [sym_expression] = STATE(140), - [sym__expression_kind] = STATE(102), - [sym_block] = STATE(286), - [sym_value] = STATE(109), - [sym_boolean] = STATE(95), - [sym_list] = STATE(95), - [sym_map] = STATE(95), - [sym_option] = STATE(95), - [sym_index] = STATE(119), - [sym_index_expression] = STATE(424), - [sym_math] = STATE(102), - [sym_logic] = STATE(102), - [sym_assignment] = STATE(286), - [sym_index_assignment] = STATE(286), - [sym_if_else] = STATE(286), - [sym_if] = STATE(240), - [sym_match] = STATE(286), - [sym_while] = STATE(286), - [sym_for] = STATE(286), - [sym_return] = STATE(286), - [sym_function] = STATE(95), - [sym_function_expression] = STATE(419), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(100), - [sym_yield] = STATE(100), - [sym_built_in_value] = STATE(95), - [sym_identifier] = ACTIONS(160), - [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(162), - [anon_sym_async] = ACTIONS(164), - [anon_sym_LBRACE] = ACTIONS(166), - [sym_integer] = ACTIONS(168), - [sym_float] = ACTIONS(170), - [sym_string] = ACTIONS(170), - [anon_sym_true] = ACTIONS(172), - [anon_sym_false] = ACTIONS(172), - [anon_sym_LBRACK] = ACTIONS(174), - [anon_sym_none] = ACTIONS(176), - [anon_sym_some] = ACTIONS(178), - [anon_sym_if] = ACTIONS(146), - [anon_sym_match] = ACTIONS(148), - [anon_sym_while] = ACTIONS(180), - [anon_sym_for] = ACTIONS(182), - [anon_sym_asyncfor] = ACTIONS(184), - [anon_sym_return] = ACTIONS(186), - [anon_sym_args] = ACTIONS(188), - [anon_sym_assert_equal] = ACTIONS(188), - [anon_sym_env] = ACTIONS(188), - [anon_sym_fs] = ACTIONS(188), - [anon_sym_json] = ACTIONS(188), - [anon_sym_length] = ACTIONS(188), - [anon_sym_output] = ACTIONS(188), - [anon_sym_random] = ACTIONS(188), - [anon_sym_string] = ACTIONS(188), - }, - [42] = { - [sym_statement] = STATE(387), - [sym_expression] = STATE(307), - [sym__expression_kind] = STATE(258), - [sym_block] = STATE(292), - [sym_value] = STATE(250), - [sym_boolean] = STATE(269), - [sym_list] = STATE(269), - [sym_map] = STATE(269), - [sym_option] = STATE(269), - [sym_index] = STATE(296), - [sym_index_expression] = STATE(426), - [sym_math] = STATE(258), - [sym_logic] = STATE(258), - [sym_assignment] = STATE(292), - [sym_index_assignment] = STATE(292), - [sym_if_else] = STATE(292), - [sym_if] = STATE(372), - [sym_match] = STATE(292), - [sym_while] = STATE(292), - [sym_for] = STATE(292), - [sym_return] = STATE(292), - [sym_function] = STATE(269), - [sym_function_expression] = STATE(445), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(245), - [sym_yield] = STATE(245), - [sym_built_in_value] = STATE(269), - [sym_identifier] = ACTIONS(126), - [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(128), - [anon_sym_async] = ACTIONS(130), - [anon_sym_LBRACE] = ACTIONS(132), - [sym_integer] = ACTIONS(134), - [sym_float] = ACTIONS(136), - [sym_string] = ACTIONS(136), - [anon_sym_true] = ACTIONS(138), - [anon_sym_false] = ACTIONS(138), - [anon_sym_LBRACK] = ACTIONS(140), - [anon_sym_none] = ACTIONS(142), - [anon_sym_some] = ACTIONS(144), - [anon_sym_if] = ACTIONS(146), - [anon_sym_match] = ACTIONS(148), - [anon_sym_while] = ACTIONS(150), - [anon_sym_for] = ACTIONS(152), - [anon_sym_asyncfor] = ACTIONS(154), - [anon_sym_return] = ACTIONS(156), - [anon_sym_args] = ACTIONS(158), - [anon_sym_assert_equal] = ACTIONS(158), - [anon_sym_env] = ACTIONS(158), - [anon_sym_fs] = ACTIONS(158), - [anon_sym_json] = ACTIONS(158), - [anon_sym_length] = ACTIONS(158), - [anon_sym_output] = ACTIONS(158), - [anon_sym_random] = ACTIONS(158), - [anon_sym_string] = ACTIONS(158), - }, - [43] = { - [sym_statement] = STATE(298), - [sym_expression] = STATE(130), - [sym__expression_kind] = STATE(102), - [sym_block] = STATE(292), - [sym_value] = STATE(109), - [sym_boolean] = STATE(95), - [sym_list] = STATE(95), - [sym_map] = STATE(95), - [sym_option] = STATE(95), - [sym_index] = STATE(119), - [sym_index_expression] = STATE(424), - [sym_math] = STATE(102), - [sym_logic] = STATE(102), - [sym_assignment] = STATE(292), - [sym_index_assignment] = STATE(292), - [sym_if_else] = STATE(292), - [sym_if] = STATE(240), - [sym_match] = STATE(292), - [sym_while] = STATE(292), - [sym_for] = STATE(292), - [sym_return] = STATE(292), - [sym_function] = STATE(95), - [sym_function_expression] = STATE(419), - [sym__function_expression_kind] = STATE(61), - [sym_function_call] = STATE(100), - [sym_yield] = STATE(100), - [sym_built_in_value] = STATE(95), - [sym_identifier] = ACTIONS(160), - [sym__comment] = ACTIONS(3), - [anon_sym_LPAREN] = ACTIONS(162), - [anon_sym_async] = ACTIONS(164), - [anon_sym_LBRACE] = ACTIONS(166), - [sym_integer] = ACTIONS(168), - [sym_float] = ACTIONS(170), - [sym_string] = ACTIONS(170), - [anon_sym_true] = ACTIONS(172), - [anon_sym_false] = ACTIONS(172), - [anon_sym_LBRACK] = ACTIONS(174), - [anon_sym_none] = ACTIONS(176), - [anon_sym_some] = ACTIONS(178), - [anon_sym_if] = ACTIONS(146), - [anon_sym_match] = ACTIONS(148), - [anon_sym_while] = ACTIONS(180), - [anon_sym_for] = ACTIONS(182), - [anon_sym_asyncfor] = ACTIONS(184), - [anon_sym_return] = ACTIONS(186), - [anon_sym_args] = ACTIONS(188), - [anon_sym_assert_equal] = ACTIONS(188), - [anon_sym_env] = ACTIONS(188), - [anon_sym_fs] = ACTIONS(188), - [anon_sym_json] = ACTIONS(188), - [anon_sym_length] = ACTIONS(188), - [anon_sym_output] = ACTIONS(188), - [anon_sym_random] = ACTIONS(188), - [anon_sym_string] = ACTIONS(188), + [anon_sym_LPAREN] = ACTIONS(167), + [anon_sym_async] = ACTIONS(169), + [anon_sym_LBRACE] = ACTIONS(171), + [sym_integer] = ACTIONS(173), + [sym_float] = ACTIONS(175), + [sym_string] = ACTIONS(175), + [anon_sym_true] = ACTIONS(177), + [anon_sym_false] = ACTIONS(177), + [anon_sym_LBRACK] = ACTIONS(179), + [anon_sym_struct] = ACTIONS(181), + [anon_sym_none] = ACTIONS(183), + [anon_sym_some] = ACTIONS(185), + [anon_sym_if] = ACTIONS(151), + [anon_sym_match] = ACTIONS(153), + [anon_sym_while] = ACTIONS(187), + [anon_sym_for] = ACTIONS(189), + [anon_sym_asyncfor] = ACTIONS(191), + [anon_sym_return] = ACTIONS(193), + [anon_sym_args] = ACTIONS(195), + [anon_sym_assert_equal] = ACTIONS(195), + [anon_sym_env] = ACTIONS(195), + [anon_sym_fs] = ACTIONS(195), + [anon_sym_json] = ACTIONS(195), + [anon_sym_length] = ACTIONS(195), + [anon_sym_output] = ACTIONS(195), + [anon_sym_random] = ACTIONS(195), + [anon_sym_string] = ACTIONS(195), }, }; @@ -5203,13 +4948,13 @@ static const uint16_t ts_small_parse_table[] = { [0] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(194), 1, + ACTIONS(201), 1, anon_sym_DASH_GT, - STATE(161), 1, + STATE(194), 1, sym_logic_operator, - STATE(165), 1, + STATE(197), 1, sym_math_operator, - ACTIONS(190), 22, + ACTIONS(197), 22, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -5232,12 +4977,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_asyncfor, - ACTIONS(192), 26, + ACTIONS(199), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -5259,16 +5005,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [65] = 6, + [66] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(194), 1, + ACTIONS(201), 1, anon_sym_DASH_GT, - STATE(161), 1, + STATE(194), 1, sym_logic_operator, - STATE(165), 1, + STATE(197), 1, sym_math_operator, - ACTIONS(196), 22, + ACTIONS(203), 22, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -5291,12 +5037,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_asyncfor, - ACTIONS(198), 26, + ACTIONS(205), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -5318,14 +5065,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [130] = 5, + [132] = 5, ACTIONS(3), 1, sym__comment, - STATE(161), 1, + STATE(194), 1, sym_logic_operator, - STATE(165), 1, + STATE(197), 1, sym_math_operator, - ACTIONS(200), 23, + ACTIONS(207), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -5349,12 +5096,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(202), 26, + ACTIONS(209), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -5376,16 +5124,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [193] = 6, + [196] = 5, ACTIONS(3), 1, sym__comment, - ACTIONS(204), 1, - anon_sym_DASH_GT, - STATE(175), 1, - sym_math_operator, - STATE(185), 1, + STATE(176), 1, sym_logic_operator, - ACTIONS(196), 21, + STATE(179), 1, + sym_math_operator, + ACTIONS(207), 22, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -5407,12 +5153,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_asyncfor, - ACTIONS(198), 26, + anon_sym_DASH_GT, + ACTIONS(209), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -5434,16 +5182,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [257] = 6, + [259] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(204), 1, + ACTIONS(211), 1, anon_sym_DASH_GT, - STATE(175), 1, - sym_math_operator, - STATE(185), 1, + STATE(176), 1, sym_logic_operator, - ACTIONS(190), 21, + STATE(179), 1, + sym_math_operator, + ACTIONS(203), 21, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -5465,12 +5213,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_asyncfor, - ACTIONS(192), 26, + ACTIONS(205), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -5492,25 +5241,84 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [321] = 10, + [324] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(210), 1, + ACTIONS(211), 1, + anon_sym_DASH_GT, + STATE(176), 1, + sym_logic_operator, + STATE(179), 1, + sym_math_operator, + ACTIONS(197), 21, + ts_builtin_sym_end, + anon_sym_SEMI, anon_sym_LPAREN, - ACTIONS(212), 1, - anon_sym_EQ, - ACTIONS(214), 1, + anon_sym_LBRACE, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, anon_sym_COLON, - ACTIONS(216), 1, + 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(199), 27, + anon_sym_async, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + anon_sym_EQ, + anon_sym_none, + anon_sym_some, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, anon_sym_LT, - STATE(28), 1, + 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, + [389] = 10, + ACTIONS(3), 1, + sym__comment, + ACTIONS(217), 1, + anon_sym_LPAREN, + ACTIONS(219), 1, + anon_sym_EQ, + ACTIONS(221), 1, + anon_sym_COLON, + ACTIONS(223), 1, + anon_sym_LT, + STATE(32), 1, sym_assignment_operator, - STATE(374), 1, + STATE(369), 1, sym_type_definition, - ACTIONS(218), 2, + ACTIONS(225), 2, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, - ACTIONS(206), 18, + ACTIONS(213), 18, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LBRACE, @@ -5529,12 +5337,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(208), 24, + ACTIONS(215), 25, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_PLUS, @@ -5554,67 +5363,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [393] = 5, + [462] = 3, ACTIONS(3), 1, sym__comment, - STATE(175), 1, - sym_math_operator, - STATE(185), 1, - sym_logic_operator, - ACTIONS(200), 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(202), 26, - anon_sym_async, - sym_identifier, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_EQ, - 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, - [455] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(220), 23, + ACTIONS(227), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -5638,12 +5390,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(222), 26, + ACTIONS(229), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -5665,10 +5418,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [512] = 3, + [520] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(224), 23, + ACTIONS(231), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -5692,12 +5445,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(226), 26, + ACTIONS(233), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -5719,10 +5473,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [569] = 3, + [578] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(228), 23, + ACTIONS(235), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -5746,12 +5500,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(230), 26, + ACTIONS(237), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -5773,71 +5528,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [626] = 10, + [636] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(210), 1, - anon_sym_LPAREN, - ACTIONS(214), 1, - anon_sym_COLON, - ACTIONS(216), 1, - anon_sym_LT, - ACTIONS(232), 1, - anon_sym_EQ, - STATE(28), 1, - sym_assignment_operator, - STATE(377), 1, - sym_type_definition, - ACTIONS(218), 2, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - ACTIONS(206), 17, - 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(208), 24, - anon_sym_async, - sym_identifier, - 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, - [697] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(234), 23, + ACTIONS(239), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -5861,12 +5555,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(236), 26, + ACTIONS(241), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -5888,10 +5583,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [754] = 3, + [694] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(238), 23, + ACTIONS(243), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -5915,12 +5610,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(240), 26, + ACTIONS(245), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -5942,10 +5638,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [811] = 3, + [752] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(242), 23, + ACTIONS(247), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -5969,12 +5665,68 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(244), 26, + ACTIONS(249), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, + anon_sym_EQ, + 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, + [810] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(251), 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(253), 27, + anon_sym_async, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -5999,7 +5751,7 @@ static const uint16_t ts_small_parse_table[] = { [868] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(246), 23, + ACTIONS(255), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -6023,12 +5775,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(248), 26, + ACTIONS(257), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -6050,10 +5803,67 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [925] = 3, + [926] = 5, ACTIONS(3), 1, sym__comment, - ACTIONS(250), 23, + ACTIONS(217), 1, + anon_sym_LPAREN, + ACTIONS(221), 1, + anon_sym_COLON, + ACTIONS(213), 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(215), 27, + anon_sym_async, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + anon_sym_EQ, + 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, + [988] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(259), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -6077,12 +5887,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(252), 26, + ACTIONS(261), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -6104,65 +5915,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [982] = 4, + [1046] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(210), 1, - anon_sym_LPAREN, - ACTIONS(206), 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(208), 26, - anon_sym_async, - sym_identifier, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_EQ, - 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, - [1041] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(254), 23, + ACTIONS(263), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -6186,12 +5942,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(256), 26, + ACTIONS(265), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -6213,10 +5970,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1098] = 3, + [1104] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(258), 23, + ACTIONS(267), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -6240,12 +5997,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(260), 26, + ACTIONS(269), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -6267,10 +6025,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1155] = 3, + [1162] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(262), 23, + ACTIONS(271), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -6294,12 +6052,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(264), 26, + ACTIONS(273), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -6321,68 +6080,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1212] = 4, + [1220] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(266), 1, - anon_sym_DOT_DOT, - ACTIONS(238), 22, + ACTIONS(217), 1, + anon_sym_LPAREN, + ACTIONS(213), 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(240), 26, - anon_sym_async, - sym_identifier, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_EQ, - 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, - [1271] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(214), 23, - ts_builtin_sym_end, - anon_sym_SEMI, - anon_sym_LPAREN, anon_sym_LBRACE, anon_sym_RBRACE, sym_float, @@ -6403,12 +6108,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(268), 26, + ACTIONS(215), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -6430,75 +6136,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1328] = 3, + [1280] = 8, ACTIONS(3), 1, sym__comment, - ACTIONS(270), 23, - ts_builtin_sym_end, - anon_sym_SEMI, + ACTIONS(217), 1, 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(272), 26, - anon_sym_async, - sym_identifier, - sym_integer, - anon_sym_true, - anon_sym_false, + ACTIONS(219), 1, anon_sym_EQ, - 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, - [1385] = 8, - ACTIONS(3), 1, - sym__comment, - ACTIONS(210), 1, - anon_sym_LPAREN, - ACTIONS(212), 1, - anon_sym_EQ, - ACTIONS(214), 1, + ACTIONS(221), 1, anon_sym_COLON, - STATE(38), 1, + STATE(31), 1, sym_assignment_operator, - ACTIONS(218), 2, + ACTIONS(225), 2, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, - ACTIONS(206), 18, + ACTIONS(213), 18, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LBRACE, @@ -6517,12 +6169,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(208), 25, + ACTIONS(215), 26, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_PLUS, @@ -6543,22 +6196,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1452] = 5, + [1348] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(210), 1, - anon_sym_LPAREN, - ACTIONS(214), 1, - anon_sym_COLON, - ACTIONS(206), 21, + ACTIONS(275), 1, + anon_sym_DOT_DOT, + ACTIONS(243), 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_DOT_DOT, + anon_sym_COLON, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -6572,12 +6224,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(208), 26, + ACTIONS(245), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -6599,10 +6252,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1513] = 3, + [1408] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(274), 23, + ACTIONS(221), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -6626,12 +6279,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(276), 26, + ACTIONS(277), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -6653,10 +6307,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1570] = 3, + [1466] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(278), 23, + ACTIONS(279), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -6680,12 +6334,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(280), 26, + ACTIONS(281), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -6707,10 +6362,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1627] = 3, + [1524] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(282), 23, + ACTIONS(283), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -6734,12 +6389,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(284), 26, + ACTIONS(285), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -6761,10 +6417,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1684] = 3, + [1582] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(286), 23, + ACTIONS(287), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -6788,12 +6444,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(288), 26, + ACTIONS(289), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -6815,10 +6472,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1741] = 3, + [1640] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(290), 23, + ACTIONS(291), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -6842,12 +6499,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(292), 26, + ACTIONS(293), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -6869,10 +6527,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1798] = 3, + [1698] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(294), 23, + ACTIONS(295), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -6896,12 +6554,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(296), 26, + ACTIONS(297), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -6923,10 +6582,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1855] = 3, + [1756] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(298), 23, + ACTIONS(299), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -6950,12 +6609,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(300), 26, + ACTIONS(301), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -6977,10 +6637,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1912] = 3, + [1814] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(302), 23, + ACTIONS(303), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -7004,12 +6664,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(304), 26, + ACTIONS(305), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -7031,10 +6692,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [1969] = 3, + [1872] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(306), 23, + ACTIONS(307), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -7058,12 +6719,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(308), 26, + ACTIONS(309), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -7085,10 +6747,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [2026] = 3, + [1930] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(310), 23, + ACTIONS(311), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -7112,12 +6774,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(312), 26, + ACTIONS(313), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -7139,10 +6802,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [2083] = 3, + [1988] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(314), 23, + ACTIONS(315), 23, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -7166,12 +6829,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(316), 26, + ACTIONS(317), 27, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -7193,49 +6857,80 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [2140] = 6, + [2046] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(318), 1, + ACTIONS(319), 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(321), 27, + anon_sym_async, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + anon_sym_EQ, + 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, + [2104] = 6, + ACTIONS(3), 1, + sym__comment, + ACTIONS(323), 1, + anon_sym_DASH_GT, + STATE(170), 1, + sym_math_operator, STATE(172), 1, sym_logic_operator, - STATE(198), 1, - sym_math_operator, - ACTIONS(198), 20, - sym_identifier, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_EQ, - 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(196), 23, + ACTIONS(197), 19, + 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, @@ -7245,72 +6940,60 @@ 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, - [2200] = 6, + anon_sym_asyncfor, + ACTIONS(199), 25, + anon_sym_async, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + 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, + [2165] = 10, ACTIONS(3), 1, sym__comment, - ACTIONS(318), 1, + ACTIONS(323), 1, anon_sym_DASH_GT, + ACTIONS(331), 1, + anon_sym_DASH, + STATE(170), 1, + sym_math_operator, STATE(172), 1, sym_logic_operator, - STATE(198), 1, - sym_math_operator, - ACTIONS(192), 20, - sym_identifier, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_EQ, - anon_sym_none, - anon_sym_some, - anon_sym_PLUS, - anon_sym_DASH, + ACTIONS(335), 2, 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(190), 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, + ACTIONS(329), 4, + anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, + ACTIONS(333), 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_PLUS_EQ, - anon_sym_DASH_EQ, - [2260] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(320), 1, - anon_sym_DASH_GT, - STATE(180), 1, - sym_math_operator, - STATE(183), 1, - sym_logic_operator, - ACTIONS(190), 19, + ACTIONS(325), 9, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -7319,139 +7002,14 @@ 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(192), 24, - anon_sym_async, - sym_identifier, - 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, - [2320] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(320), 1, - anon_sym_DASH_GT, - STATE(180), 1, - sym_math_operator, - STATE(183), 1, - sym_logic_operator, - ACTIONS(196), 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(198), 24, - anon_sym_async, - sym_identifier, - 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, - [2380] = 11, - ACTIONS(3), 1, - sym__comment, - ACTIONS(320), 1, - anon_sym_DASH_GT, - ACTIONS(326), 1, - anon_sym_SEMI, - ACTIONS(330), 1, - anon_sym_DASH, - STATE(180), 1, - sym_math_operator, - STATE(183), 1, - sym_logic_operator, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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(322), 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(324), 21, + ACTIONS(327), 22, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_if, @@ -7468,105 +7026,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [2450] = 10, + [2234] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(320), 1, + ACTIONS(323), 1, anon_sym_DASH_GT, - ACTIONS(330), 1, - anon_sym_DASH, - STATE(180), 1, + STATE(170), 1, sym_math_operator, - STATE(183), 1, - sym_logic_operator, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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(322), 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(324), 21, - anon_sym_async, - sym_identifier, - 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, - [2518] = 5, - ACTIONS(3), 1, - sym__comment, STATE(172), 1, sym_logic_operator, - STATE(198), 1, - sym_math_operator, - ACTIONS(202), 20, - sym_identifier, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_EQ, - 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(200), 24, + ACTIONS(203), 19, + 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, @@ -7576,15 +7054,99 @@ 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_DASH_GT, - [2576] = 4, + anon_sym_asyncfor, + ACTIONS(205), 25, + anon_sym_async, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + 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, + [2295] = 11, ACTIONS(3), 1, sym__comment, - ACTIONS(214), 1, + ACTIONS(323), 1, + anon_sym_DASH_GT, + ACTIONS(331), 1, + anon_sym_DASH, + ACTIONS(337), 1, + anon_sym_SEMI, + STATE(170), 1, + sym_math_operator, + STATE(172), 1, + sym_logic_operator, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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(325), 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(327), 22, + anon_sym_async, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + 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, + [2366] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(221), 1, anon_sym_COLON, - ACTIONS(210), 20, + ACTIONS(217), 20, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -7605,12 +7167,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_asyncfor, anon_sym_DASH_GT, - ACTIONS(336), 24, + ACTIONS(339), 25, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_DASH, @@ -7630,73 +7193,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [2631] = 6, + [2422] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(338), 1, + ACTIONS(341), 1, anon_sym_DASH_GT, - STATE(202), 1, - sym_math_operator, - STATE(203), 1, + STATE(174), 1, sym_logic_operator, - ACTIONS(192), 20, - sym_identifier, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_EQ, - 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(190), 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, - [2690] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(338), 1, - anon_sym_DASH_GT, - STATE(202), 1, + STATE(177), 1, sym_math_operator, - STATE(203), 1, - sym_logic_operator, - ACTIONS(198), 20, + ACTIONS(205), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -7713,18 +7224,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(196), 22, + ACTIONS(203), 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_DOT_DOT, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, @@ -7736,18 +7247,74 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, - [2749] = 5, + [2482] = 5, ACTIONS(3), 1, sym__comment, - STATE(202), 1, + STATE(174), 1, + sym_logic_operator, + STATE(177), 1, sym_math_operator, - STATE(203), 1, + ACTIONS(209), 21, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + anon_sym_EQ, + 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(207), 23, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + 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, + [2540] = 6, + ACTIONS(3), 1, + sym__comment, + ACTIONS(341), 1, + anon_sym_DASH_GT, + STATE(174), 1, sym_logic_operator, - ACTIONS(202), 20, + STATE(177), 1, + sym_math_operator, + ACTIONS(199), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -7764,12 +7331,169 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(200), 23, + ACTIONS(197), 22, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + 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, + [2600] = 6, + ACTIONS(3), 1, + sym__comment, + ACTIONS(343), 1, + anon_sym_DASH_GT, + STATE(160), 1, + sym_logic_operator, + STATE(161), 1, + sym_math_operator, + ACTIONS(197), 21, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + 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(199), 21, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + anon_sym_EQ, + 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, + [2659] = 6, + ACTIONS(3), 1, + sym__comment, + ACTIONS(343), 1, + anon_sym_DASH_GT, + STATE(160), 1, + sym_logic_operator, + STATE(161), 1, + sym_math_operator, + ACTIONS(203), 21, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + 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(205), 21, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + anon_sym_EQ, + 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, + [2718] = 5, + ACTIONS(3), 1, + sym__comment, + STATE(160), 1, + sym_logic_operator, + STATE(161), 1, + sym_math_operator, + ACTIONS(209), 21, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + anon_sym_EQ, + 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(207), 22, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -7788,14 +7512,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [2806] = 3, + [2775] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(230), 20, + ACTIONS(277), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -7812,12 +7537,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(228), 24, + ACTIONS(221), 23, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -7837,14 +7561,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [2858] = 3, + [2827] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(308), 20, + ACTIONS(273), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -7861,12 +7586,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(306), 24, + ACTIONS(271), 23, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -7886,14 +7610,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [2910] = 3, + [2879] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(226), 20, + ACTIONS(289), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -7910,12 +7635,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(224), 24, + ACTIONS(287), 23, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -7935,14 +7659,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [2962] = 3, + [2931] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(300), 20, + ACTIONS(253), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -7959,12 +7684,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(298), 24, + ACTIONS(251), 23, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -7984,14 +7708,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [3014] = 3, + [2983] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(288), 20, + ACTIONS(229), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -8008,12 +7733,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(286), 24, + ACTIONS(227), 23, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -8033,14 +7757,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [3066] = 3, + [3035] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(312), 20, + ACTIONS(317), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -8057,12 +7782,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(310), 24, + ACTIONS(315), 23, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -8082,14 +7806,41 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [3118] = 3, + [3087] = 5, ACTIONS(3), 1, sym__comment, - ACTIONS(248), 20, + ACTIONS(217), 1, + anon_sym_LPAREN, + ACTIONS(221), 1, + anon_sym_COLON, + ACTIONS(213), 21, + anon_sym_SEMI, + anon_sym_RPAREN, + anon_sym_COMMA, + 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(215), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -8106,12 +7857,36 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(246), 24, + [3143] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(257), 21, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + anon_sym_EQ, + 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(255), 23, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -8131,14 +7906,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [3170] = 3, + [3195] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(244), 20, + ACTIONS(237), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -8155,12 +7931,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(242), 24, + ACTIONS(235), 23, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -8180,14 +7955,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [3222] = 3, + [3247] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(252), 20, + ACTIONS(217), 1, + anon_sym_LPAREN, + ACTIONS(215), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -8204,12 +7982,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(250), 24, + ACTIONS(213), 22, anon_sym_SEMI, - anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -8229,16 +8005,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [3274] = 4, + [3301] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(210), 1, - anon_sym_LPAREN, - ACTIONS(208), 20, + ACTIONS(293), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -8255,11 +8030,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(206), 23, + ACTIONS(291), 23, anon_sym_SEMI, + anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -8279,14 +8054,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [3328] = 3, + [3353] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(296), 20, + ACTIONS(305), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -8303,12 +8079,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(294), 24, + ACTIONS(303), 23, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -8328,14 +8103,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [3380] = 3, + [3405] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(284), 20, + ACTIONS(309), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -8352,12 +8128,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(282), 24, + ACTIONS(307), 23, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -8377,14 +8152,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [3432] = 3, + [3457] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(304), 20, + ACTIONS(313), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -8401,12 +8177,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(302), 24, + ACTIONS(311), 23, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -8426,14 +8201,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [3484] = 3, + [3509] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(222), 20, + ACTIONS(233), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -8450,12 +8226,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(220), 24, + ACTIONS(231), 23, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -8475,14 +8250,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [3536] = 3, + [3561] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(280), 20, + ACTIONS(301), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -8499,12 +8275,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(278), 24, + ACTIONS(299), 23, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -8524,14 +8299,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [3588] = 3, + [3613] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(236), 20, + ACTIONS(245), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -8548,12 +8324,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(234), 24, + ACTIONS(243), 23, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -8573,14 +8348,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [3640] = 3, + [3665] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(240), 20, + ACTIONS(345), 1, + anon_sym_DOT_DOT, + ACTIONS(245), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -8597,12 +8375,59 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(238), 24, + ACTIONS(243), 22, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + 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, + [3719] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(261), 21, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + anon_sym_EQ, + 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(259), 23, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -8622,14 +8447,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [3692] = 3, + [3771] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(292), 20, + ACTIONS(249), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -8646,12 +8472,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(290), 24, + ACTIONS(247), 23, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -8671,18 +8496,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [3744] = 5, + [3823] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(210), 1, - anon_sym_LPAREN, - ACTIONS(214), 1, - anon_sym_COLON, - ACTIONS(208), 20, + ACTIONS(281), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -8699,59 +8521,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(206), 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, - [3800] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(264), 20, - sym_identifier, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_EQ, - 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, + ACTIONS(279), 23, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -8771,14 +8545,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [3852] = 3, + [3875] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(316), 20, + ACTIONS(241), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -8795,12 +8570,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(314), 24, + ACTIONS(239), 23, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -8820,14 +8594,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [3904] = 3, + [3927] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(276), 20, + ACTIONS(265), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -8844,12 +8619,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(274), 24, + ACTIONS(263), 23, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -8869,14 +8643,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [3956] = 3, + [3979] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(272), 20, + ACTIONS(269), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -8893,12 +8668,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(270), 24, + ACTIONS(267), 23, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -8918,14 +8692,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [4008] = 3, + [4031] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(260), 20, + ACTIONS(285), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -8942,12 +8717,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(258), 24, + ACTIONS(283), 23, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -8967,14 +8741,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [4060] = 3, + [4083] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(256), 20, + ACTIONS(297), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -8991,12 +8766,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(254), 24, + ACTIONS(295), 23, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -9016,16 +8790,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [4112] = 4, + [4135] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(340), 1, - anon_sym_DOT_DOT, - ACTIONS(240), 20, + ACTIONS(321), 21, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_EQ, anon_sym_none, anon_sym_some, @@ -9042,60 +8815,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - ACTIONS(238), 23, + ACTIONS(319), 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, - [4166] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(268), 20, - sym_identifier, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_EQ, - 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, @@ -9115,28 +8839,27 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_DASH_GT, - [4218] = 10, + [4187] = 10, ACTIONS(3), 1, sym__comment, - ACTIONS(210), 1, + ACTIONS(217), 1, anon_sym_LPAREN, - ACTIONS(212), 1, + ACTIONS(219), 1, anon_sym_EQ, - ACTIONS(214), 1, + ACTIONS(221), 1, anon_sym_COLON, - ACTIONS(216), 1, + ACTIONS(223), 1, anon_sym_LT, - STATE(30), 1, + STATE(27), 1, sym_assignment_operator, - STATE(375), 1, + STATE(370), 1, sym_type_definition, - ACTIONS(218), 2, + ACTIONS(225), 2, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, - ACTIONS(206), 17, + ACTIONS(213), 16, anon_sym_SEMI, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -9151,11 +8874,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_DASH_GT, - ACTIONS(208), 18, + ACTIONS(215), 19, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_PLUS, @@ -9170,24 +8894,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [4283] = 8, + [4252] = 8, ACTIONS(3), 1, sym__comment, - ACTIONS(210), 1, + ACTIONS(217), 1, anon_sym_LPAREN, - ACTIONS(212), 1, + ACTIONS(219), 1, anon_sym_EQ, - ACTIONS(214), 1, + ACTIONS(221), 1, anon_sym_COLON, - STATE(41), 1, + STATE(34), 1, sym_assignment_operator, - ACTIONS(218), 2, + ACTIONS(225), 2, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, - ACTIONS(206), 17, + ACTIONS(213), 16, anon_sym_SEMI, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -9202,11 +8925,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_DASH_GT, - ACTIONS(208), 19, + ACTIONS(215), 20, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_PLUS, @@ -9222,89 +8946,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [4343] = 6, + [4312] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(342), 1, + ACTIONS(347), 1, anon_sym_DASH_GT, - STATE(186), 1, - sym_logic_operator, - STATE(193), 1, + STATE(153), 1, sym_math_operator, - ACTIONS(192), 18, - sym_identifier, - 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(190), 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, - [4398] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(342), 1, - anon_sym_DASH_GT, - STATE(186), 1, + STATE(181), 1, sym_logic_operator, - STATE(193), 1, - sym_math_operator, - ACTIONS(198), 18, - sym_identifier, - 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(196), 20, + ACTIONS(197), 19, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, @@ -9320,107 +8975,66 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [4453] = 4, + ACTIONS(199), 19, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + 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, + [4367] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(214), 1, - anon_sym_COLON, - ACTIONS(336), 18, - sym_identifier, - 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(210), 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, + ACTIONS(347), 1, anon_sym_DASH_GT, - [4503] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, + STATE(153), 1, + sym_math_operator, + STATE(181), 1, + sym_logic_operator, + ACTIONS(203), 19, + anon_sym_SEMI, anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(344), 1, - sym_identifier, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(348), 1, + anon_sym_RPAREN, + anon_sym_COMMA, anon_sym_RBRACE, - ACTIONS(350), 1, - anon_sym_STAR, - STATE(61), 1, - sym__function_expression_kind, - STATE(124), 1, - aux_sym_match_repeat1, - STATE(332), 1, - sym_expression, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, sym_float, sym_string, - ACTIONS(138), 2, + 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(205), 19, + sym_identifier, + sym_integer, anon_sym_true, anon_sym_false, - STATE(245), 2, - sym_function_call, - sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 9, + anon_sym_struct, + 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, @@ -9430,61 +9044,61 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [4589] = 22, + [4422] = 22, ACTIONS(3), 1, sym__comment, + ACTIONS(349), 1, + sym_identifier, ACTIONS(352), 1, - sym_identifier, + anon_sym_LPAREN, ACTIONS(355), 1, - anon_sym_LPAREN, - ACTIONS(358), 1, - anon_sym_LBRACE, - ACTIONS(361), 1, anon_sym_RBRACE, - ACTIONS(363), 1, + ACTIONS(357), 1, sym_integer, + ACTIONS(366), 1, + anon_sym_LBRACK, + ACTIONS(369), 1, + anon_sym_struct, ACTIONS(372), 1, - anon_sym_LBRACK, + anon_sym_none, ACTIONS(375), 1, - anon_sym_none, + anon_sym_some, ACTIONS(378), 1, - anon_sym_some, - ACTIONS(381), 1, anon_sym_STAR, - STATE(61), 1, + STATE(46), 1, sym__function_expression_kind, - STATE(124), 1, + STATE(116), 1, aux_sym_match_repeat1, - STATE(332), 1, + STATE(326), 1, sym_expression, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, + STATE(416), 1, sym_function_expression, - ACTIONS(366), 2, + STATE(422), 1, + sym_index_expression, + ACTIONS(360), 2, sym_float, sym_string, - ACTIONS(369), 2, + ACTIONS(363), 2, anon_sym_true, anon_sym_false, + STATE(239), 2, + sym_value, + sym_index, STATE(245), 2, sym_function_call, sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, + STATE(250), 3, sym__expression_kind, sym_math, sym_logic, - STATE(269), 6, + STATE(260), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(384), 9, + ACTIONS(381), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -9494,61 +9108,61 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [4675] = 22, + [4508] = 22, ACTIONS(3), 1, sym__comment, - ACTIONS(128), 1, + ACTIONS(131), 1, anon_sym_LPAREN, - ACTIONS(134), 1, + ACTIONS(137), 1, sym_integer, - ACTIONS(140), 1, + ACTIONS(143), 1, anon_sym_LBRACK, - ACTIONS(142), 1, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, anon_sym_none, - ACTIONS(144), 1, + ACTIONS(149), 1, anon_sym_some, - ACTIONS(344), 1, + ACTIONS(384), 1, sym_identifier, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(350), 1, - anon_sym_STAR, - ACTIONS(387), 1, + ACTIONS(386), 1, anon_sym_RBRACE, - STATE(61), 1, + ACTIONS(388), 1, + anon_sym_STAR, + STATE(46), 1, sym__function_expression_kind, - STATE(124), 1, + STATE(116), 1, aux_sym_match_repeat1, - STATE(332), 1, + STATE(326), 1, sym_expression, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, + STATE(416), 1, sym_function_expression, - ACTIONS(136), 2, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, sym_float, sym_string, - ACTIONS(138), 2, + ACTIONS(141), 2, anon_sym_true, anon_sym_false, + STATE(239), 2, + sym_value, + sym_index, STATE(245), 2, sym_function_call, sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, + STATE(250), 3, sym__expression_kind, sym_math, sym_logic, - STATE(269), 6, + STATE(260), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(158), 9, + ACTIONS(163), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -9558,60 +9172,170 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [4761] = 22, + [4594] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(389), 1, + ACTIONS(221), 1, + anon_sym_COLON, + ACTIONS(339), 19, sym_identifier, - ACTIONS(391), 1, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + 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(217), 20, + anon_sym_SEMI, + anon_sym_LPAREN, anon_sym_RPAREN, + anon_sym_COMMA, + 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, + [4644] = 22, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(384), 1, + sym_identifier, + ACTIONS(388), 1, + anon_sym_STAR, + ACTIONS(390), 1, + anon_sym_RBRACE, + STATE(46), 1, + sym__function_expression_kind, + STATE(116), 1, + aux_sym_match_repeat1, + STATE(326), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(239), 2, + sym_value, + sym_index, + STATE(245), 2, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [4730] = 22, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(392), 1, + sym_identifier, + ACTIONS(394), 1, + anon_sym_RPAREN, + STATE(46), 1, + sym__function_expression_kind, STATE(245), 1, sym_yield, - STATE(348), 1, - sym_expression, - STATE(350), 1, + STATE(345), 1, sym_function_call, - STATE(396), 1, + STATE(346), 1, + sym_expression, + STATE(377), 1, aux_sym_function_repeat1, - STATE(401), 1, - sym__function_expression_kind, - STATE(432), 1, - sym_index_expression, - STATE(445), 1, + STATE(416), 1, sym_function_expression, - ACTIONS(136), 2, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, sym_float, sym_string, - ACTIONS(138), 2, + ACTIONS(141), 2, anon_sym_true, anon_sym_false, - STATE(250), 2, + STATE(239), 2, sym_value, sym_index, - STATE(363), 3, + STATE(250), 3, sym__expression_kind, sym_math, sym_logic, - STATE(269), 6, + STATE(260), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(158), 9, + ACTIONS(163), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -9621,486 +9345,59 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [4846] = 21, + [4815] = 21, ACTIONS(3), 1, sym__comment, - ACTIONS(393), 1, - sym_identifier, + ACTIONS(167), 1, + anon_sym_LPAREN, + ACTIONS(173), 1, + sym_integer, + ACTIONS(179), 1, + anon_sym_LBRACK, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, + anon_sym_none, + ACTIONS(185), 1, + anon_sym_some, ACTIONS(396), 1, - anon_sym_LPAREN, - ACTIONS(399), 1, + sym_identifier, + ACTIONS(398), 1, anon_sym_RPAREN, - ACTIONS(401), 1, - anon_sym_LBRACE, - ACTIONS(404), 1, - sym_integer, - ACTIONS(413), 1, - anon_sym_LBRACK, - ACTIONS(416), 1, - anon_sym_none, - ACTIONS(419), 1, - anon_sym_some, - STATE(61), 1, + STATE(46), 1, sym__function_expression_kind, - STATE(127), 1, + STATE(136), 1, aux_sym__expression_list, - STATE(156), 1, - sym_expression, - STATE(419), 1, - sym_function_expression, - STATE(424), 1, - sym_index_expression, - ACTIONS(407), 2, - sym_float, - sym_string, - ACTIONS(410), 2, - anon_sym_true, - anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, - sym_value, - sym_index, - STATE(102), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(95), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(422), 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, - [4929] = 21, - ACTIONS(3), 1, - sym__comment, - ACTIONS(162), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - sym_integer, - ACTIONS(174), 1, - anon_sym_LBRACK, - ACTIONS(176), 1, - anon_sym_none, - ACTIONS(178), 1, - anon_sym_some, - ACTIONS(425), 1, - sym_identifier, - ACTIONS(427), 1, - anon_sym_RPAREN, - ACTIONS(429), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(127), 1, - aux_sym__expression_list, - STATE(156), 1, - sym_expression, - STATE(419), 1, - sym_function_expression, - STATE(424), 1, - sym_index_expression, - ACTIONS(170), 2, - sym_float, - sym_string, - ACTIONS(172), 2, - anon_sym_true, - anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, - sym_value, - sym_index, - STATE(102), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(95), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(188), 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, - [5012] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(389), 1, - sym_identifier, - ACTIONS(431), 1, - anon_sym_RPAREN, - STATE(245), 1, - sym_yield, - STATE(348), 1, - sym_expression, - STATE(350), 1, - sym_function_call, - STATE(384), 1, - aux_sym_function_repeat1, - STATE(401), 1, - sym__function_expression_kind, - STATE(432), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(250), 2, - sym_value, - sym_index, - STATE(363), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [5097] = 11, - ACTIONS(3), 1, - sym__comment, - ACTIONS(330), 1, - anon_sym_DASH, - ACTIONS(342), 1, - anon_sym_DASH_GT, - ACTIONS(433), 1, - anon_sym_SEMI, - STATE(186), 1, - sym_logic_operator, - STATE(193), 1, - sym_math_operator, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 3, - anon_sym_PLUS, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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(322), 8, - anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_STAR, - ACTIONS(324), 15, - sym_identifier, - 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, - [5160] = 21, - ACTIONS(3), 1, - sym__comment, - ACTIONS(162), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - sym_integer, - ACTIONS(174), 1, - anon_sym_LBRACK, - ACTIONS(176), 1, - anon_sym_none, - ACTIONS(178), 1, - anon_sym_some, - ACTIONS(425), 1, - sym_identifier, - ACTIONS(429), 1, - anon_sym_LBRACE, - ACTIONS(435), 1, - anon_sym_RBRACK, - STATE(61), 1, - sym__function_expression_kind, - STATE(152), 1, - aux_sym_list_repeat1, - STATE(157), 1, - sym_expression, - STATE(419), 1, - sym_function_expression, - STATE(424), 1, - sym_index_expression, - ACTIONS(170), 2, - sym_float, - sym_string, - ACTIONS(172), 2, - anon_sym_true, - anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, - sym_value, - sym_index, - STATE(102), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(95), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(188), 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, - [5243] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(389), 1, - sym_identifier, - ACTIONS(391), 1, - anon_sym_RPAREN, - STATE(245), 1, - sym_yield, - STATE(348), 1, - sym_expression, - STATE(350), 1, - sym_function_call, - STATE(396), 1, - aux_sym_function_repeat1, - STATE(401), 1, - sym__function_expression_kind, - STATE(432), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(250), 2, - sym_value, - sym_index, - STATE(364), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [5328] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(389), 1, - sym_identifier, - ACTIONS(437), 1, - anon_sym_RPAREN, - STATE(245), 1, - sym_yield, - STATE(348), 1, - sym_expression, - STATE(350), 1, - sym_function_call, - STATE(397), 1, - aux_sym_function_repeat1, - STATE(401), 1, - sym__function_expression_kind, - STATE(432), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(250), 2, - sym_value, - sym_index, - STATE(362), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [5413] = 21, - ACTIONS(3), 1, - sym__comment, - ACTIONS(162), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - sym_integer, - ACTIONS(174), 1, - anon_sym_LBRACK, - ACTIONS(176), 1, - anon_sym_none, - ACTIONS(178), 1, - anon_sym_some, - ACTIONS(425), 1, - sym_identifier, - ACTIONS(429), 1, - anon_sym_LBRACE, - ACTIONS(439), 1, - anon_sym_RPAREN, - STATE(61), 1, - sym__function_expression_kind, STATE(151), 1, - aux_sym__expression_list, - STATE(156), 1, sym_expression, - STATE(419), 1, + STATE(421), 1, sym_function_expression, - STATE(424), 1, + STATE(436), 1, sym_index_expression, - ACTIONS(170), 2, + ACTIONS(175), 2, sym_float, sym_string, - ACTIONS(172), 2, + ACTIONS(177), 2, anon_sym_true, anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, + STATE(91), 2, sym_value, sym_index, - STATE(102), 3, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, sym__expression_kind, sym_math, sym_logic, - STATE(95), 6, + STATE(88), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(188), 9, + ACTIONS(195), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -10110,356 +9407,46 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [5496] = 21, + [4898] = 10, ACTIONS(3), 1, sym__comment, - ACTIONS(162), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - sym_integer, - ACTIONS(174), 1, - anon_sym_LBRACK, - ACTIONS(176), 1, - anon_sym_none, - ACTIONS(178), 1, - anon_sym_some, - ACTIONS(425), 1, - sym_identifier, - ACTIONS(429), 1, - anon_sym_LBRACE, - ACTIONS(441), 1, - anon_sym_RBRACK, - STATE(61), 1, - sym__function_expression_kind, - STATE(131), 1, - aux_sym_list_repeat1, - STATE(157), 1, - sym_expression, - STATE(419), 1, - sym_function_expression, - STATE(424), 1, - sym_index_expression, - ACTIONS(170), 2, - sym_float, - sym_string, - ACTIONS(172), 2, - anon_sym_true, - anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, - sym_value, - sym_index, - STATE(102), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(95), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(188), 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, - [5579] = 21, - ACTIONS(3), 1, - sym__comment, - ACTIONS(162), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - sym_integer, - ACTIONS(174), 1, - anon_sym_LBRACK, - ACTIONS(176), 1, - anon_sym_none, - ACTIONS(178), 1, - anon_sym_some, - ACTIONS(425), 1, - sym_identifier, - ACTIONS(429), 1, - anon_sym_LBRACE, - ACTIONS(443), 1, - anon_sym_RBRACK, - STATE(61), 1, - sym__function_expression_kind, - STATE(137), 1, - aux_sym_list_repeat1, - STATE(157), 1, - sym_expression, - STATE(419), 1, - sym_function_expression, - STATE(424), 1, - sym_index_expression, - ACTIONS(170), 2, - sym_float, - sym_string, - ACTIONS(172), 2, - anon_sym_true, - anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, - sym_value, - sym_index, - STATE(102), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(95), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(188), 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, - [5662] = 21, - ACTIONS(3), 1, - sym__comment, - ACTIONS(162), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - sym_integer, - ACTIONS(174), 1, - anon_sym_LBRACK, - ACTIONS(176), 1, - anon_sym_none, - ACTIONS(178), 1, - anon_sym_some, - ACTIONS(425), 1, - sym_identifier, - ACTIONS(429), 1, - anon_sym_LBRACE, - ACTIONS(445), 1, - anon_sym_RBRACK, - STATE(61), 1, - sym__function_expression_kind, - STATE(152), 1, - aux_sym_list_repeat1, - STATE(157), 1, - sym_expression, - STATE(419), 1, - sym_function_expression, - STATE(424), 1, - sym_index_expression, - ACTIONS(170), 2, - sym_float, - sym_string, - ACTIONS(172), 2, - anon_sym_true, - anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, - sym_value, - sym_index, - STATE(102), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(95), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(188), 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, - [5745] = 21, - ACTIONS(3), 1, - sym__comment, - ACTIONS(162), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - sym_integer, - ACTIONS(174), 1, - anon_sym_LBRACK, - ACTIONS(176), 1, - anon_sym_none, - ACTIONS(178), 1, - anon_sym_some, - ACTIONS(425), 1, - sym_identifier, - ACTIONS(429), 1, - anon_sym_LBRACE, - ACTIONS(447), 1, - anon_sym_RPAREN, - STATE(61), 1, - sym__function_expression_kind, - STATE(150), 1, - aux_sym__expression_list, - STATE(156), 1, - sym_expression, - STATE(419), 1, - sym_function_expression, - STATE(424), 1, - sym_index_expression, - ACTIONS(170), 2, - sym_float, - sym_string, - ACTIONS(172), 2, - anon_sym_true, - anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, - sym_value, - sym_index, - STATE(102), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(95), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(188), 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, - [5828] = 21, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(344), 1, - sym_identifier, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(350), 1, - anon_sym_STAR, - STATE(61), 1, - sym__function_expression_kind, - STATE(125), 1, - aux_sym_match_repeat1, - STATE(332), 1, - sym_expression, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(245), 2, - sym_function_call, - sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [5911] = 10, - ACTIONS(3), 1, - sym__comment, - ACTIONS(330), 1, + ACTIONS(331), 1, anon_sym_DASH, - ACTIONS(342), 1, + ACTIONS(347), 1, anon_sym_DASH_GT, - STATE(186), 1, - sym_logic_operator, - STATE(193), 1, + STATE(153), 1, sym_math_operator, - ACTIONS(334), 2, + STATE(181), 1, + sym_logic_operator, + ACTIONS(335), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(328), 3, + ACTIONS(329), 3, anon_sym_PLUS, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(332), 6, + ACTIONS(333), 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(322), 9, + ACTIONS(325), 8, 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(324), 15, + ACTIONS(327), 16, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_args, @@ -10471,59 +9458,59 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [5972] = 21, + [4959] = 21, ACTIONS(3), 1, sym__comment, - ACTIONS(162), 1, + ACTIONS(167), 1, anon_sym_LPAREN, - ACTIONS(168), 1, + ACTIONS(173), 1, sym_integer, - ACTIONS(174), 1, + ACTIONS(179), 1, anon_sym_LBRACK, - ACTIONS(176), 1, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, anon_sym_none, - ACTIONS(178), 1, + ACTIONS(185), 1, anon_sym_some, - ACTIONS(425), 1, + ACTIONS(396), 1, sym_identifier, - ACTIONS(429), 1, - anon_sym_LBRACE, - ACTIONS(449), 1, + ACTIONS(400), 1, anon_sym_RBRACK, - STATE(61), 1, + STATE(46), 1, sym__function_expression_kind, - STATE(149), 1, + STATE(134), 1, aux_sym_list_repeat1, - STATE(157), 1, + STATE(150), 1, sym_expression, - STATE(419), 1, + STATE(421), 1, sym_function_expression, - STATE(424), 1, + STATE(436), 1, sym_index_expression, - ACTIONS(170), 2, + ACTIONS(175), 2, sym_float, sym_string, - ACTIONS(172), 2, + ACTIONS(177), 2, anon_sym_true, anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, + STATE(91), 2, sym_value, sym_index, - STATE(102), 3, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, sym__expression_kind, sym_math, sym_logic, - STATE(95), 6, + STATE(88), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(188), 9, + ACTIONS(195), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -10533,310 +9520,60 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [6055] = 22, + [5042] = 22, ACTIONS(3), 1, sym__comment, - ACTIONS(128), 1, + ACTIONS(131), 1, anon_sym_LPAREN, - ACTIONS(134), 1, + ACTIONS(137), 1, sym_integer, - ACTIONS(140), 1, + ACTIONS(143), 1, anon_sym_LBRACK, - ACTIONS(142), 1, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, anon_sym_none, - ACTIONS(144), 1, + ACTIONS(149), 1, anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(389), 1, + ACTIONS(392), 1, sym_identifier, - ACTIONS(431), 1, + ACTIONS(402), 1, anon_sym_RPAREN, - STATE(61), 1, - sym__function_expression_kind, STATE(245), 1, sym_yield, - STATE(353), 1, - sym_function_call, - STATE(358), 1, + STATE(339), 1, sym_expression, - STATE(384), 1, - aux_sym_function_repeat1, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [6140] = 21, - ACTIONS(3), 1, - sym__comment, - ACTIONS(162), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - sym_integer, - ACTIONS(174), 1, - anon_sym_LBRACK, - ACTIONS(176), 1, - anon_sym_none, - ACTIONS(178), 1, - anon_sym_some, - ACTIONS(425), 1, - sym_identifier, - ACTIONS(429), 1, - anon_sym_LBRACE, - ACTIONS(451), 1, - anon_sym_RPAREN, - STATE(61), 1, - sym__function_expression_kind, - STATE(127), 1, - aux_sym__expression_list, - STATE(156), 1, - sym_expression, - STATE(419), 1, - sym_function_expression, - STATE(424), 1, - sym_index_expression, - ACTIONS(170), 2, - sym_float, - sym_string, - ACTIONS(172), 2, - anon_sym_true, - anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, - sym_value, - sym_index, - STATE(102), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(95), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(188), 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, - [6223] = 21, - ACTIONS(3), 1, - sym__comment, - ACTIONS(162), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - sym_integer, - ACTIONS(174), 1, - anon_sym_LBRACK, - ACTIONS(176), 1, - anon_sym_none, - ACTIONS(178), 1, - anon_sym_some, - ACTIONS(425), 1, - sym_identifier, - ACTIONS(429), 1, - anon_sym_LBRACE, - ACTIONS(453), 1, - anon_sym_RPAREN, - STATE(61), 1, - sym__function_expression_kind, - STATE(127), 1, - aux_sym__expression_list, - STATE(156), 1, - sym_expression, - STATE(419), 1, - sym_function_expression, - STATE(424), 1, - sym_index_expression, - ACTIONS(170), 2, - sym_float, - sym_string, - ACTIONS(172), 2, - anon_sym_true, - anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, - sym_value, - sym_index, - STATE(102), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(95), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(188), 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, - [6306] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(389), 1, - sym_identifier, - ACTIONS(437), 1, - anon_sym_RPAREN, - STATE(61), 1, - sym__function_expression_kind, - STATE(245), 1, - sym_yield, STATE(352), 1, sym_function_call, - STATE(358), 1, - sym_expression, - STATE(397), 1, + STATE(392), 1, aux_sym_function_repeat1, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(389), 1, - sym_identifier, - ACTIONS(431), 1, - anon_sym_RPAREN, - STATE(245), 1, - sym_yield, - STATE(348), 1, - sym_expression, - STATE(350), 1, - sym_function_call, - STATE(384), 1, - aux_sym_function_repeat1, - STATE(413), 1, + STATE(396), 1, sym__function_expression_kind, - STATE(432), 1, - sym_index_expression, - STATE(445), 1, + STATE(416), 1, sym_function_expression, - ACTIONS(136), 2, + STATE(444), 1, + sym_index_expression, + ACTIONS(139), 2, sym_float, sym_string, - ACTIONS(138), 2, + ACTIONS(141), 2, anon_sym_true, anon_sym_false, - STATE(250), 2, + STATE(239), 2, sym_value, sym_index, - STATE(363), 3, + STATE(355), 3, sym__expression_kind, sym_math, sym_logic, - STATE(269), 6, + STATE(260), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(158), 9, + ACTIONS(163), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -10846,60 +9583,60 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [6476] = 22, + [5127] = 22, ACTIONS(3), 1, sym__comment, - ACTIONS(128), 1, + ACTIONS(131), 1, anon_sym_LPAREN, - ACTIONS(134), 1, + ACTIONS(137), 1, sym_integer, - ACTIONS(140), 1, + ACTIONS(143), 1, anon_sym_LBRACK, - ACTIONS(142), 1, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, anon_sym_none, - ACTIONS(144), 1, + ACTIONS(149), 1, anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(389), 1, + ACTIONS(392), 1, sym_identifier, - ACTIONS(437), 1, + ACTIONS(394), 1, anon_sym_RPAREN, STATE(245), 1, sym_yield, - STATE(348), 1, + STATE(339), 1, sym_expression, - STATE(350), 1, + STATE(352), 1, sym_function_call, - STATE(397), 1, + STATE(377), 1, aux_sym_function_repeat1, STATE(400), 1, sym__function_expression_kind, - STATE(432), 1, - sym_index_expression, - STATE(445), 1, + STATE(416), 1, sym_function_expression, - ACTIONS(136), 2, + STATE(444), 1, + sym_index_expression, + ACTIONS(139), 2, sym_float, sym_string, - ACTIONS(138), 2, + ACTIONS(141), 2, anon_sym_true, anon_sym_false, - STATE(250), 2, + STATE(239), 2, sym_value, sym_index, - STATE(363), 3, + STATE(355), 3, sym__expression_kind, sym_math, sym_logic, - STATE(269), 6, + STATE(260), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(158), 9, + ACTIONS(163), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -10909,59 +9646,982 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [6561] = 21, + [5212] = 22, ACTIONS(3), 1, sym__comment, - ACTIONS(162), 1, + ACTIONS(131), 1, anon_sym_LPAREN, - ACTIONS(168), 1, + ACTIONS(137), 1, sym_integer, - ACTIONS(174), 1, + ACTIONS(143), 1, anon_sym_LBRACK, - ACTIONS(176), 1, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, anon_sym_none, - ACTIONS(178), 1, + ACTIONS(149), 1, anon_sym_some, - ACTIONS(425), 1, + ACTIONS(392), 1, sym_identifier, - ACTIONS(429), 1, - anon_sym_LBRACE, - ACTIONS(455), 1, + ACTIONS(404), 1, anon_sym_RPAREN, - STATE(61), 1, + STATE(245), 1, + sym_yield, + STATE(339), 1, + sym_expression, + STATE(352), 1, + sym_function_call, + STATE(381), 1, + aux_sym_function_repeat1, + STATE(394), 1, + sym__function_expression_kind, + STATE(416), 1, + sym_function_expression, + STATE(444), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(239), 2, + sym_value, + sym_index, + STATE(355), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [5297] = 22, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(392), 1, + sym_identifier, + ACTIONS(394), 1, + anon_sym_RPAREN, + STATE(245), 1, + sym_yield, + STATE(339), 1, + sym_expression, + STATE(352), 1, + sym_function_call, + STATE(377), 1, + aux_sym_function_repeat1, + STATE(394), 1, + sym__function_expression_kind, + STATE(416), 1, + sym_function_expression, + STATE(444), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(239), 2, + sym_value, + sym_index, + STATE(355), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [5382] = 11, + ACTIONS(3), 1, + sym__comment, + ACTIONS(331), 1, + anon_sym_DASH, + ACTIONS(347), 1, + anon_sym_DASH_GT, + ACTIONS(406), 1, + anon_sym_SEMI, + STATE(153), 1, + sym_math_operator, + STATE(181), 1, + sym_logic_operator, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 3, + anon_sym_PLUS, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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(325), 7, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + ACTIONS(327), 16, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + 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, + [5445] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(167), 1, + anon_sym_LPAREN, + ACTIONS(173), 1, + sym_integer, + ACTIONS(179), 1, + anon_sym_LBRACK, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, + anon_sym_none, + ACTIONS(185), 1, + anon_sym_some, + ACTIONS(396), 1, + sym_identifier, + ACTIONS(408), 1, + anon_sym_RPAREN, + STATE(46), 1, + sym__function_expression_kind, + STATE(133), 1, + aux_sym__expression_list, + STATE(151), 1, + sym_expression, + STATE(421), 1, + sym_function_expression, + STATE(436), 1, + sym_index_expression, + ACTIONS(175), 2, + sym_float, + sym_string, + ACTIONS(177), 2, + anon_sym_true, + anon_sym_false, + STATE(91), 2, + sym_value, + sym_index, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(88), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(195), 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, + [5528] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(167), 1, + anon_sym_LPAREN, + ACTIONS(173), 1, + sym_integer, + ACTIONS(179), 1, + anon_sym_LBRACK, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, + anon_sym_none, + ACTIONS(185), 1, + anon_sym_some, + ACTIONS(396), 1, + sym_identifier, + ACTIONS(410), 1, + anon_sym_RPAREN, + STATE(46), 1, + sym__function_expression_kind, + STATE(132), 1, + aux_sym__expression_list, + STATE(151), 1, + sym_expression, + STATE(421), 1, + sym_function_expression, + STATE(436), 1, + sym_index_expression, + ACTIONS(175), 2, + sym_float, + sym_string, + ACTIONS(177), 2, + anon_sym_true, + anon_sym_false, + STATE(91), 2, + sym_value, + sym_index, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(88), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(195), 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, + [5611] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(167), 1, + anon_sym_LPAREN, + ACTIONS(173), 1, + sym_integer, + ACTIONS(179), 1, + anon_sym_LBRACK, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, + anon_sym_none, + ACTIONS(185), 1, + anon_sym_some, + ACTIONS(396), 1, + sym_identifier, + ACTIONS(412), 1, + anon_sym_RPAREN, + STATE(46), 1, + sym__function_expression_kind, + STATE(136), 1, + aux_sym__expression_list, + STATE(151), 1, + sym_expression, + STATE(421), 1, + sym_function_expression, + STATE(436), 1, + sym_index_expression, + ACTIONS(175), 2, + sym_float, + sym_string, + ACTIONS(177), 2, + anon_sym_true, + anon_sym_false, + STATE(91), 2, + sym_value, + sym_index, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(88), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(195), 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, + [5694] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(167), 1, + anon_sym_LPAREN, + ACTIONS(173), 1, + sym_integer, + ACTIONS(179), 1, + anon_sym_LBRACK, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, + anon_sym_none, + ACTIONS(185), 1, + anon_sym_some, + ACTIONS(396), 1, + sym_identifier, + ACTIONS(414), 1, + anon_sym_RPAREN, + STATE(46), 1, + sym__function_expression_kind, + STATE(136), 1, + aux_sym__expression_list, + STATE(151), 1, + sym_expression, + STATE(421), 1, + sym_function_expression, + STATE(436), 1, + sym_index_expression, + ACTIONS(175), 2, + sym_float, + sym_string, + ACTIONS(177), 2, + anon_sym_true, + anon_sym_false, + STATE(91), 2, + sym_value, + sym_index, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(88), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(195), 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] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(167), 1, + anon_sym_LPAREN, + ACTIONS(173), 1, + sym_integer, + ACTIONS(179), 1, + anon_sym_LBRACK, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, + anon_sym_none, + ACTIONS(185), 1, + anon_sym_some, + ACTIONS(396), 1, + sym_identifier, + ACTIONS(416), 1, + anon_sym_RPAREN, + STATE(46), 1, + sym__function_expression_kind, + STATE(136), 1, + aux_sym__expression_list, + STATE(151), 1, + sym_expression, + STATE(421), 1, + sym_function_expression, + STATE(436), 1, + sym_index_expression, + ACTIONS(175), 2, + sym_float, + sym_string, + ACTIONS(177), 2, + anon_sym_true, + anon_sym_false, + STATE(91), 2, + sym_value, + sym_index, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(88), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(195), 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, + [5860] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(167), 1, + anon_sym_LPAREN, + ACTIONS(173), 1, + sym_integer, + ACTIONS(179), 1, + anon_sym_LBRACK, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, + anon_sym_none, + ACTIONS(185), 1, + anon_sym_some, + ACTIONS(396), 1, + sym_identifier, + ACTIONS(418), 1, + anon_sym_RBRACK, + STATE(46), 1, + sym__function_expression_kind, + STATE(137), 1, + aux_sym_list_repeat1, + STATE(150), 1, + sym_expression, + STATE(421), 1, + sym_function_expression, + STATE(436), 1, + sym_index_expression, + ACTIONS(175), 2, + sym_float, + sym_string, + ACTIONS(177), 2, + anon_sym_true, + anon_sym_false, + STATE(91), 2, + sym_value, + sym_index, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(88), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(195), 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, + [5943] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(167), 1, + anon_sym_LPAREN, + ACTIONS(173), 1, + sym_integer, + ACTIONS(179), 1, + anon_sym_LBRACK, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, + anon_sym_none, + ACTIONS(185), 1, + anon_sym_some, + ACTIONS(396), 1, + sym_identifier, + ACTIONS(420), 1, + anon_sym_RBRACK, + STATE(46), 1, + sym__function_expression_kind, + STATE(146), 1, + aux_sym_list_repeat1, + STATE(150), 1, + sym_expression, + STATE(421), 1, + sym_function_expression, + STATE(436), 1, + sym_index_expression, + ACTIONS(175), 2, + sym_float, + sym_string, + ACTIONS(177), 2, + anon_sym_true, + anon_sym_false, + STATE(91), 2, + sym_value, + sym_index, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(88), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(195), 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, + [6026] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(422), 1, + sym_identifier, + ACTIONS(425), 1, + anon_sym_LPAREN, + ACTIONS(428), 1, + anon_sym_RPAREN, + ACTIONS(430), 1, + sym_integer, + ACTIONS(439), 1, + anon_sym_LBRACK, + ACTIONS(442), 1, + anon_sym_struct, + ACTIONS(445), 1, + anon_sym_none, + ACTIONS(448), 1, + anon_sym_some, + STATE(46), 1, + sym__function_expression_kind, + STATE(136), 1, + aux_sym__expression_list, + STATE(151), 1, + sym_expression, + STATE(421), 1, + sym_function_expression, + STATE(436), 1, + sym_index_expression, + ACTIONS(433), 2, + sym_float, + sym_string, + ACTIONS(436), 2, + anon_sym_true, + anon_sym_false, + STATE(91), 2, + sym_value, + sym_index, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(88), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(451), 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, + [6109] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(454), 1, + sym_identifier, + ACTIONS(457), 1, + anon_sym_LPAREN, + ACTIONS(460), 1, + sym_integer, + ACTIONS(469), 1, + anon_sym_LBRACK, + ACTIONS(472), 1, + anon_sym_RBRACK, + ACTIONS(474), 1, + anon_sym_struct, + ACTIONS(477), 1, + anon_sym_none, + ACTIONS(480), 1, + anon_sym_some, + STATE(46), 1, + sym__function_expression_kind, + STATE(137), 1, + aux_sym_list_repeat1, + STATE(150), 1, + sym_expression, + STATE(421), 1, + sym_function_expression, + STATE(436), 1, + sym_index_expression, + ACTIONS(463), 2, + sym_float, + sym_string, + ACTIONS(466), 2, + anon_sym_true, + anon_sym_false, + STATE(91), 2, + sym_value, + sym_index, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(88), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(483), 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, + [6192] = 22, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(392), 1, + sym_identifier, + ACTIONS(404), 1, + anon_sym_RPAREN, + STATE(245), 1, + sym_yield, + STATE(339), 1, + sym_expression, + STATE(352), 1, + sym_function_call, + STATE(381), 1, + aux_sym_function_repeat1, + STATE(394), 1, + sym__function_expression_kind, + STATE(416), 1, + sym_function_expression, + STATE(444), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(239), 2, + sym_value, + sym_index, + STATE(358), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [6277] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(167), 1, + anon_sym_LPAREN, + ACTIONS(173), 1, + sym_integer, + ACTIONS(179), 1, + anon_sym_LBRACK, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, + anon_sym_none, + ACTIONS(185), 1, + anon_sym_some, + ACTIONS(396), 1, + sym_identifier, + ACTIONS(486), 1, + anon_sym_RBRACK, + STATE(46), 1, + sym__function_expression_kind, + STATE(140), 1, + aux_sym_list_repeat1, + STATE(150), 1, + sym_expression, + STATE(421), 1, + sym_function_expression, + STATE(436), 1, + sym_index_expression, + ACTIONS(175), 2, + sym_float, + sym_string, + ACTIONS(177), 2, + anon_sym_true, + anon_sym_false, + STATE(91), 2, + sym_value, + sym_index, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(88), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(195), 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, + [6360] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(167), 1, + anon_sym_LPAREN, + ACTIONS(173), 1, + sym_integer, + ACTIONS(179), 1, + anon_sym_LBRACK, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, + anon_sym_none, + ACTIONS(185), 1, + anon_sym_some, + ACTIONS(396), 1, + sym_identifier, + ACTIONS(488), 1, + anon_sym_RBRACK, + STATE(46), 1, + sym__function_expression_kind, + STATE(137), 1, + aux_sym_list_repeat1, + STATE(150), 1, + sym_expression, + STATE(421), 1, + sym_function_expression, + STATE(436), 1, + sym_index_expression, + ACTIONS(175), 2, + sym_float, + sym_string, + ACTIONS(177), 2, + anon_sym_true, + anon_sym_false, + STATE(91), 2, + sym_value, + sym_index, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(88), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(195), 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, + [6443] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(167), 1, + anon_sym_LPAREN, + ACTIONS(173), 1, + sym_integer, + ACTIONS(179), 1, + anon_sym_LBRACK, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, + anon_sym_none, + ACTIONS(185), 1, + anon_sym_some, + ACTIONS(396), 1, + sym_identifier, + ACTIONS(490), 1, + anon_sym_RPAREN, + STATE(46), 1, sym__function_expression_kind, STATE(144), 1, aux_sym__expression_list, - STATE(156), 1, + STATE(151), 1, sym_expression, - STATE(419), 1, + STATE(421), 1, sym_function_expression, - STATE(424), 1, + STATE(436), 1, sym_index_expression, - ACTIONS(170), 2, + ACTIONS(175), 2, sym_float, sym_string, - ACTIONS(172), 2, + ACTIONS(177), 2, anon_sym_true, anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, + STATE(91), 2, sym_value, sym_index, - STATE(102), 3, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, sym__expression_kind, sym_math, sym_logic, - STATE(95), 6, + STATE(88), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(188), 9, + ACTIONS(195), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -10971,121 +10631,60 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [6644] = 21, + [6526] = 22, ACTIONS(3), 1, sym__comment, - ACTIONS(162), 1, + ACTIONS(131), 1, anon_sym_LPAREN, - ACTIONS(168), 1, + ACTIONS(137), 1, sym_integer, - ACTIONS(174), 1, + ACTIONS(143), 1, anon_sym_LBRACK, - ACTIONS(176), 1, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, anon_sym_none, - ACTIONS(178), 1, + ACTIONS(149), 1, anon_sym_some, - ACTIONS(425), 1, + ACTIONS(392), 1, sym_identifier, - ACTIONS(429), 1, - anon_sym_LBRACE, - ACTIONS(457), 1, - anon_sym_RBRACK, - STATE(61), 1, - sym__function_expression_kind, - STATE(152), 1, - aux_sym_list_repeat1, - STATE(157), 1, - sym_expression, - STATE(419), 1, - sym_function_expression, - STATE(424), 1, - sym_index_expression, - ACTIONS(170), 2, - sym_float, - sym_string, - ACTIONS(172), 2, - anon_sym_true, - anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, - sym_value, - sym_index, - STATE(102), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(95), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(188), 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, - [6727] = 21, - ACTIONS(3), 1, - sym__comment, - ACTIONS(162), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - sym_integer, - ACTIONS(174), 1, - anon_sym_LBRACK, - ACTIONS(176), 1, - anon_sym_none, - ACTIONS(178), 1, - anon_sym_some, - ACTIONS(425), 1, - sym_identifier, - ACTIONS(429), 1, - anon_sym_LBRACE, - ACTIONS(459), 1, + ACTIONS(402), 1, anon_sym_RPAREN, - STATE(61), 1, - sym__function_expression_kind, - STATE(127), 1, - aux_sym__expression_list, - STATE(156), 1, + STATE(245), 1, + sym_yield, + STATE(339), 1, sym_expression, - STATE(419), 1, + STATE(352), 1, + sym_function_call, + STATE(392), 1, + aux_sym_function_repeat1, + STATE(394), 1, + sym__function_expression_kind, + STATE(416), 1, sym_function_expression, - STATE(424), 1, + STATE(444), 1, sym_index_expression, - ACTIONS(170), 2, + ACTIONS(139), 2, sym_float, sym_string, - ACTIONS(172), 2, + ACTIONS(141), 2, anon_sym_true, anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, + STATE(239), 2, sym_value, sym_index, - STATE(102), 3, + STATE(357), 3, sym__expression_kind, sym_math, sym_logic, - STATE(95), 6, + STATE(260), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(188), 9, + ACTIONS(163), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -11095,308 +10694,60 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [6810] = 21, + [6611] = 22, ACTIONS(3), 1, sym__comment, - ACTIONS(162), 1, + ACTIONS(131), 1, anon_sym_LPAREN, - ACTIONS(168), 1, + ACTIONS(137), 1, sym_integer, - ACTIONS(174), 1, + ACTIONS(143), 1, anon_sym_LBRACK, - ACTIONS(176), 1, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, anon_sym_none, - ACTIONS(178), 1, + ACTIONS(149), 1, anon_sym_some, - ACTIONS(425), 1, + ACTIONS(392), 1, sym_identifier, - ACTIONS(429), 1, - anon_sym_LBRACE, - ACTIONS(461), 1, + ACTIONS(402), 1, anon_sym_RPAREN, - STATE(61), 1, - sym__function_expression_kind, - STATE(127), 1, - aux_sym__expression_list, - STATE(156), 1, - sym_expression, - STATE(419), 1, - sym_function_expression, - STATE(424), 1, - sym_index_expression, - ACTIONS(170), 2, - sym_float, - sym_string, - ACTIONS(172), 2, - anon_sym_true, - anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, - sym_value, - sym_index, - STATE(102), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(95), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(188), 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, - [6893] = 21, - ACTIONS(3), 1, - sym__comment, - ACTIONS(463), 1, - sym_identifier, - ACTIONS(466), 1, - anon_sym_LPAREN, - ACTIONS(469), 1, - anon_sym_LBRACE, - ACTIONS(472), 1, - sym_integer, - ACTIONS(481), 1, - anon_sym_LBRACK, - ACTIONS(484), 1, - anon_sym_RBRACK, - ACTIONS(486), 1, - anon_sym_none, - ACTIONS(489), 1, - anon_sym_some, - STATE(61), 1, - sym__function_expression_kind, - STATE(152), 1, - aux_sym_list_repeat1, - STATE(157), 1, - sym_expression, - STATE(419), 1, - sym_function_expression, - STATE(424), 1, - sym_index_expression, - ACTIONS(475), 2, - sym_float, - sym_string, - ACTIONS(478), 2, - anon_sym_true, - anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, - sym_value, - sym_index, - STATE(102), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(95), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(492), 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, - [6976] = 21, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(344), 1, - sym_identifier, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(350), 1, - anon_sym_STAR, - STATE(61), 1, - sym__function_expression_kind, - STATE(123), 1, - aux_sym_match_repeat1, - STATE(332), 1, - sym_expression, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(245), 2, - sym_function_call, - sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [7059] = 21, - ACTIONS(3), 1, - sym__comment, - ACTIONS(162), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - sym_integer, - ACTIONS(174), 1, - anon_sym_LBRACK, - ACTIONS(176), 1, - anon_sym_none, - ACTIONS(178), 1, - anon_sym_some, - ACTIONS(425), 1, - sym_identifier, - ACTIONS(429), 1, - anon_sym_LBRACE, - ACTIONS(495), 1, - anon_sym_RPAREN, - STATE(61), 1, - sym__function_expression_kind, - STATE(127), 1, - aux_sym__expression_list, - STATE(156), 1, - sym_expression, - STATE(419), 1, - sym_function_expression, - STATE(424), 1, - sym_index_expression, - ACTIONS(170), 2, - sym_float, - sym_string, - ACTIONS(172), 2, - anon_sym_true, - anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, - sym_value, - sym_index, - STATE(102), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(95), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(188), 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, - [7142] = 22, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(389), 1, - sym_identifier, - ACTIONS(391), 1, - anon_sym_RPAREN, - STATE(61), 1, + STATE(46), 1, sym__function_expression_kind, STATE(245), 1, sym_yield, - STATE(346), 1, + STATE(338), 1, sym_function_call, - STATE(358), 1, + STATE(346), 1, sym_expression, - STATE(396), 1, + STATE(392), 1, aux_sym_function_repeat1, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, + STATE(416), 1, sym_function_expression, - ACTIONS(136), 2, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, sym_float, sym_string, - ACTIONS(138), 2, + ACTIONS(141), 2, anon_sym_true, anon_sym_false, - STATE(250), 2, + STATE(239), 2, sym_value, sym_index, - STATE(258), 3, + STATE(250), 3, sym__expression_kind, sym_math, sym_logic, - STATE(269), 6, + STATE(260), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(158), 9, + ACTIONS(163), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -11406,48 +10757,59 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [7227] = 11, + [6696] = 21, ACTIONS(3), 1, sym__comment, - ACTIONS(330), 1, - anon_sym_DASH, - ACTIONS(342), 1, - anon_sym_DASH_GT, - ACTIONS(501), 1, - anon_sym_COMMA, - STATE(186), 1, - sym_logic_operator, - STATE(193), 1, - sym_math_operator, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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(499), 6, + ACTIONS(167), 1, anon_sym_LPAREN, + ACTIONS(173), 1, + sym_integer, + ACTIONS(179), 1, + anon_sym_LBRACK, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, + anon_sym_none, + ACTIONS(185), 1, + anon_sym_some, + ACTIONS(396), 1, + sym_identifier, + ACTIONS(492), 1, anon_sym_RPAREN, - anon_sym_LBRACE, + STATE(46), 1, + sym__function_expression_kind, + STATE(136), 1, + aux_sym__expression_list, + STATE(151), 1, + sym_expression, + STATE(421), 1, + sym_function_expression, + STATE(436), 1, + sym_index_expression, + ACTIONS(175), 2, sym_float, sym_string, - anon_sym_LBRACK, - ACTIONS(497), 15, - sym_identifier, - sym_integer, + ACTIONS(177), 2, anon_sym_true, anon_sym_false, - anon_sym_none, - anon_sym_some, + STATE(91), 2, + sym_value, + sym_index, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(88), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(195), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -11457,46 +10819,357 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [7289] = 11, + [6779] = 21, ACTIONS(3), 1, sym__comment, - ACTIONS(330), 1, + ACTIONS(167), 1, + anon_sym_LPAREN, + ACTIONS(173), 1, + sym_integer, + ACTIONS(179), 1, + anon_sym_LBRACK, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, + anon_sym_none, + ACTIONS(185), 1, + anon_sym_some, + ACTIONS(396), 1, + sym_identifier, + ACTIONS(494), 1, + anon_sym_RPAREN, + STATE(46), 1, + sym__function_expression_kind, + STATE(136), 1, + aux_sym__expression_list, + STATE(151), 1, + sym_expression, + STATE(421), 1, + sym_function_expression, + STATE(436), 1, + sym_index_expression, + ACTIONS(175), 2, + sym_float, + sym_string, + ACTIONS(177), 2, + anon_sym_true, + anon_sym_false, + STATE(91), 2, + sym_value, + sym_index, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(88), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(195), 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, + [6862] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(167), 1, + anon_sym_LPAREN, + ACTIONS(173), 1, + sym_integer, + ACTIONS(179), 1, + anon_sym_LBRACK, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, + anon_sym_none, + ACTIONS(185), 1, + anon_sym_some, + ACTIONS(396), 1, + sym_identifier, + ACTIONS(496), 1, + anon_sym_RBRACK, + STATE(46), 1, + sym__function_expression_kind, + STATE(137), 1, + aux_sym_list_repeat1, + STATE(150), 1, + sym_expression, + STATE(421), 1, + sym_function_expression, + STATE(436), 1, + sym_index_expression, + ACTIONS(175), 2, + sym_float, + sym_string, + ACTIONS(177), 2, + anon_sym_true, + anon_sym_false, + STATE(91), 2, + sym_value, + sym_index, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(88), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(195), 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, + [6945] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(384), 1, + sym_identifier, + ACTIONS(388), 1, + anon_sym_STAR, + STATE(46), 1, + sym__function_expression_kind, + STATE(119), 1, + aux_sym_match_repeat1, + STATE(326), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(239), 2, + sym_value, + sym_index, + STATE(245), 2, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [7028] = 22, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(392), 1, + sym_identifier, + ACTIONS(404), 1, + anon_sym_RPAREN, + STATE(46), 1, + sym__function_expression_kind, + STATE(245), 1, + sym_yield, + STATE(336), 1, + sym_function_call, + STATE(346), 1, + sym_expression, + STATE(381), 1, + aux_sym_function_repeat1, + STATE(416), 1, + sym_function_expression, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(239), 2, + sym_value, + sym_index, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [7113] = 21, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(384), 1, + sym_identifier, + ACTIONS(388), 1, + anon_sym_STAR, + STATE(46), 1, + sym__function_expression_kind, + STATE(117), 1, + aux_sym_match_repeat1, + STATE(326), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(239), 2, + sym_value, + sym_index, + STATE(245), 2, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [7196] = 11, + ACTIONS(3), 1, + sym__comment, + ACTIONS(331), 1, anon_sym_DASH, - ACTIONS(342), 1, + ACTIONS(347), 1, anon_sym_DASH_GT, - ACTIONS(507), 1, + ACTIONS(502), 1, anon_sym_COMMA, - STATE(186), 1, - sym_logic_operator, - STATE(193), 1, + STATE(153), 1, sym_math_operator, - ACTIONS(334), 2, + STATE(181), 1, + sym_logic_operator, + ACTIONS(335), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(328), 4, + ACTIONS(329), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(332), 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(505), 6, + ACTIONS(500), 5, anon_sym_LPAREN, - anon_sym_LBRACE, sym_float, sym_string, anon_sym_LBRACK, anon_sym_RBRACK, - ACTIONS(503), 15, + ACTIONS(333), 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(498), 16, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_args, @@ -11508,55 +11181,277 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [7351] = 19, + [7258] = 11, ACTIONS(3), 1, sym__comment, - ACTIONS(128), 1, + ACTIONS(331), 1, + anon_sym_DASH, + ACTIONS(347), 1, + anon_sym_DASH_GT, + ACTIONS(508), 1, + anon_sym_COMMA, + STATE(153), 1, + sym_math_operator, + STATE(181), 1, + sym_logic_operator, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(506), 5, anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, + anon_sym_RPAREN, + sym_float, + sym_string, anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(509), 1, + ACTIONS(333), 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(504), 16, sym_identifier, - STATE(61), 1, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + 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, + [7320] = 17, + ACTIONS(3), 1, + sym__comment, + ACTIONS(13), 1, + sym_integer, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_struct, + ACTIONS(23), 1, + anon_sym_none, + ACTIONS(25), 1, + anon_sym_some, + ACTIONS(510), 1, + sym_identifier, + ACTIONS(512), 1, + anon_sym_LPAREN, + STATE(68), 1, + sym_function_expression, + STATE(347), 1, + sym_expression, + STATE(415), 1, + sym_index_expression, + ACTIONS(15), 2, + sym_float, + sym_string, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(46), 5, + sym_value, + sym_index, + sym__function_expression_kind, + sym_function_call, + sym_yield, + STATE(52), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(39), 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, + [7393] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(167), 1, + anon_sym_LPAREN, + ACTIONS(173), 1, + sym_integer, + ACTIONS(179), 1, + anon_sym_LBRACK, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, + anon_sym_none, + ACTIONS(185), 1, + anon_sym_some, + ACTIONS(396), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(115), 1, + sym_expression, + STATE(421), 1, + sym_function_expression, + STATE(436), 1, + sym_index_expression, + ACTIONS(175), 2, + sym_float, + sym_string, + ACTIONS(177), 2, + anon_sym_true, + anon_sym_false, + STATE(91), 2, + sym_value, + sym_index, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(88), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(195), 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, + [7470] = 18, + ACTIONS(3), 1, + sym__comment, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(514), 1, + sym_identifier, + ACTIONS(516), 1, + anon_sym_LPAREN, + STATE(258), 1, + sym_function_expression, + STATE(346), 1, + sym_expression, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(284), 2, + sym_value, + sym_index, + STATE(247), 3, + sym__function_expression_kind, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [7545] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(518), 1, + sym_identifier, + STATE(46), 1, sym__function_expression_kind, STATE(333), 1, sym_expression, - STATE(432), 1, - sym_index_expression, - STATE(445), 1, + STATE(416), 1, sym_function_expression, - ACTIONS(136), 2, + STATE(444), 1, + sym_index_expression, + ACTIONS(139), 2, sym_float, sym_string, - ACTIONS(138), 2, + ACTIONS(141), 2, anon_sym_true, anon_sym_false, - STATE(324), 2, - sym_function_call, - sym_yield, - STATE(325), 2, + STATE(318), 2, sym_value, sym_index, - STATE(258), 3, + STATE(322), 2, + sym_function_call, + sym_yield, + STATE(250), 3, sym__expression_kind, sym_math, sym_logic, - STATE(269), 6, + STATE(260), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(158), 9, + ACTIONS(163), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -11566,55 +11461,55 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [7428] = 19, + [7622] = 19, ACTIONS(3), 1, sym__comment, - ACTIONS(128), 1, + ACTIONS(131), 1, anon_sym_LPAREN, - ACTIONS(134), 1, + ACTIONS(137), 1, sym_integer, - ACTIONS(140), 1, + ACTIONS(143), 1, anon_sym_LBRACK, - ACTIONS(142), 1, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, anon_sym_none, - ACTIONS(144), 1, + ACTIONS(149), 1, anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(509), 1, + ACTIONS(384), 1, sym_identifier, - STATE(61), 1, + STATE(46), 1, sym__function_expression_kind, - STATE(315), 1, + STATE(227), 1, sym_expression, - STATE(432), 1, - sym_index_expression, - STATE(445), 1, + STATE(416), 1, sym_function_expression, - ACTIONS(136), 2, + STATE(435), 1, + sym_index_expression, + ACTIONS(139), 2, sym_float, sym_string, - ACTIONS(138), 2, + ACTIONS(141), 2, anon_sym_true, anon_sym_false, - STATE(324), 2, - sym_function_call, - sym_yield, - STATE(325), 2, + STATE(239), 2, sym_value, sym_index, - STATE(258), 3, + STATE(245), 2, + sym_function_call, + sym_yield, + STATE(250), 3, sym__expression_kind, sym_math, sym_logic, - STATE(269), 6, + STATE(260), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(158), 9, + ACTIONS(163), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -11624,55 +11519,55 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [7505] = 19, + [7699] = 19, ACTIONS(3), 1, sym__comment, - ACTIONS(128), 1, + ACTIONS(131), 1, anon_sym_LPAREN, - ACTIONS(134), 1, + ACTIONS(137), 1, sym_integer, - ACTIONS(140), 1, + ACTIONS(143), 1, anon_sym_LBRACK, - ACTIONS(142), 1, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, anon_sym_none, - ACTIONS(144), 1, + ACTIONS(149), 1, anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(509), 1, + ACTIONS(384), 1, sym_identifier, - STATE(61), 1, + STATE(46), 1, sym__function_expression_kind, - STATE(308), 1, + STATE(229), 1, sym_expression, - STATE(425), 1, - sym_index_expression, - STATE(445), 1, + STATE(416), 1, sym_function_expression, - ACTIONS(136), 2, + STATE(435), 1, + sym_index_expression, + ACTIONS(139), 2, sym_float, sym_string, - ACTIONS(138), 2, + ACTIONS(141), 2, anon_sym_true, anon_sym_false, - STATE(324), 2, - sym_function_call, - sym_yield, - STATE(325), 2, + STATE(239), 2, sym_value, sym_index, - STATE(258), 3, + STATE(245), 2, + sym_function_call, + sym_yield, + STATE(250), 3, sym__expression_kind, sym_math, sym_logic, - STATE(269), 6, + STATE(260), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(158), 9, + ACTIONS(163), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -11682,170 +11577,55 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [7582] = 19, + [7776] = 19, ACTIONS(3), 1, sym__comment, - ACTIONS(7), 1, + ACTIONS(131), 1, anon_sym_LPAREN, - ACTIONS(13), 1, + ACTIONS(137), 1, sym_integer, - ACTIONS(19), 1, + ACTIONS(143), 1, anon_sym_LBRACK, - ACTIONS(21), 1, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, anon_sym_none, - ACTIONS(23), 1, + ACTIONS(149), 1, anon_sym_some, - ACTIONS(511), 1, + ACTIONS(384), 1, sym_identifier, - ACTIONS(513), 1, - anon_sym_LBRACE, - STATE(44), 1, - sym_expression, - STATE(61), 1, + STATE(46), 1, sym__function_expression_kind, + STATE(253), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, STATE(422), 1, sym_index_expression, - STATE(440), 1, - sym_function_expression, - ACTIONS(15), 2, + ACTIONS(139), 2, sym_float, sym_string, - ACTIONS(17), 2, + ACTIONS(141), 2, anon_sym_true, anon_sym_false, - STATE(60), 2, - sym_function_call, - sym_yield, - STATE(68), 2, + STATE(239), 2, sym_value, sym_index, - STATE(71), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(72), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(37), 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, - [7659] = 18, - ACTIONS(3), 1, - sym__comment, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(515), 1, - sym_identifier, - ACTIONS(517), 1, - anon_sym_LPAREN, - STATE(261), 1, - sym_function_expression, - STATE(358), 1, - sym_expression, - STATE(426), 1, - sym_index_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(289), 2, - sym_value, - sym_index, - STATE(255), 3, - sym__function_expression_kind, - sym_function_call, - sym_yield, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [7734] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(344), 1, - sym_identifier, - ACTIONS(346), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(248), 1, - sym_expression, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, STATE(245), 2, sym_function_call, sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, + STATE(250), 3, sym__expression_kind, sym_math, sym_logic, - STATE(269), 6, + STATE(260), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(158), 9, + ACTIONS(163), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -11855,171 +11635,55 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [7811] = 19, + [7853] = 19, ACTIONS(3), 1, sym__comment, - ACTIONS(128), 1, + ACTIONS(131), 1, anon_sym_LPAREN, - ACTIONS(134), 1, + ACTIONS(137), 1, sym_integer, - ACTIONS(140), 1, + ACTIONS(143), 1, anon_sym_LBRACK, - ACTIONS(142), 1, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, anon_sym_none, - ACTIONS(144), 1, + ACTIONS(149), 1, anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(509), 1, + ACTIONS(384), 1, sym_identifier, - STATE(61), 1, + STATE(46), 1, sym__function_expression_kind, - STATE(340), 1, + STATE(262), 1, sym_expression, - STATE(432), 1, - sym_index_expression, - STATE(445), 1, + STATE(416), 1, sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(324), 2, - sym_function_call, - sym_yield, - STATE(325), 2, - sym_value, - sym_index, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [7888] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(13), 1, - sym_integer, - ACTIONS(19), 1, - anon_sym_LBRACK, - ACTIONS(21), 1, - anon_sym_none, - ACTIONS(23), 1, - anon_sym_some, - ACTIONS(511), 1, - sym_identifier, - ACTIONS(513), 1, - anon_sym_LBRACE, - STATE(45), 1, - sym_expression, - STATE(61), 1, - sym__function_expression_kind, STATE(422), 1, sym_index_expression, - STATE(440), 1, - sym_function_expression, - ACTIONS(15), 2, + ACTIONS(139), 2, sym_float, sym_string, - ACTIONS(17), 2, + ACTIONS(141), 2, anon_sym_true, anon_sym_false, - STATE(60), 2, - sym_function_call, - sym_yield, - STATE(68), 2, + STATE(239), 2, sym_value, sym_index, - STATE(71), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(72), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(37), 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, - [7965] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(344), 1, - sym_identifier, - ACTIONS(346), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(299), 1, - sym_expression, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, STATE(245), 2, sym_function_call, sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, + STATE(250), 3, sym__expression_kind, sym_math, sym_logic, - STATE(269), 6, + STATE(260), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(158), 9, + ACTIONS(163), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -12029,952 +11693,492 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [8042] = 17, + [7930] = 19, ACTIONS(3), 1, sym__comment, - ACTIONS(168), 1, - sym_integer, - ACTIONS(174), 1, - anon_sym_LBRACK, - ACTIONS(176), 1, - anon_sym_none, - ACTIONS(178), 1, - anon_sym_some, - ACTIONS(429), 1, - anon_sym_LBRACE, - ACTIONS(519), 1, - sym_identifier, - ACTIONS(521), 1, + ACTIONS(167), 1, anon_sym_LPAREN, - STATE(113), 1, - sym_function_expression, - STATE(356), 1, - sym_expression, - STATE(424), 1, - sym_index_expression, - ACTIONS(170), 2, - sym_float, - sym_string, - ACTIONS(172), 2, - anon_sym_true, - anon_sym_false, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(115), 5, - sym_value, - sym_index, - sym__function_expression_kind, - sym_function_call, - sym_yield, - STATE(95), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(188), 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, - [8115] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, + ACTIONS(173), 1, sym_integer, - ACTIONS(140), 1, + ACTIONS(179), 1, anon_sym_LBRACK, - ACTIONS(142), 1, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, anon_sym_none, - ACTIONS(144), 1, + ACTIONS(185), 1, anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(509), 1, + ACTIONS(396), 1, sym_identifier, - STATE(61), 1, - sym__function_expression_kind, - STATE(336), 1, - sym_expression, - STATE(432), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(324), 2, - sym_function_call, - sym_yield, - STATE(325), 2, - sym_value, - sym_index, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [8192] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(509), 1, - sym_identifier, - STATE(61), 1, - sym__function_expression_kind, - STATE(338), 1, - sym_expression, - STATE(432), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(324), 2, - sym_function_call, - sym_yield, - STATE(325), 2, - sym_value, - sym_index, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [8269] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(344), 1, - sym_identifier, - ACTIONS(346), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(321), 1, - sym_expression, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(245), 2, - sym_function_call, - sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [8346] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(344), 1, - sym_identifier, - ACTIONS(346), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(312), 1, - sym_expression, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(245), 2, - sym_function_call, - sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [8423] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(162), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - sym_integer, - ACTIONS(174), 1, - anon_sym_LBRACK, - ACTIONS(176), 1, - anon_sym_none, - ACTIONS(178), 1, - anon_sym_some, - ACTIONS(425), 1, - sym_identifier, - ACTIONS(429), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(81), 1, - sym_expression, - STATE(419), 1, - sym_function_expression, - STATE(429), 1, - sym_index_expression, - ACTIONS(170), 2, - sym_float, - sym_string, - ACTIONS(172), 2, - anon_sym_true, - anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, - sym_value, - sym_index, - STATE(102), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(95), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(188), 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, - [8500] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(344), 1, - sym_identifier, - ACTIONS(346), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(335), 1, - sym_expression, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(245), 2, - sym_function_call, - sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [8577] = 18, - ACTIONS(3), 1, - sym__comment, - ACTIONS(13), 1, - sym_integer, - ACTIONS(19), 1, - anon_sym_LBRACK, - ACTIONS(21), 1, - anon_sym_none, - ACTIONS(23), 1, - anon_sym_some, - ACTIONS(513), 1, - anon_sym_LBRACE, - ACTIONS(523), 1, - sym_identifier, - ACTIONS(525), 1, - anon_sym_LPAREN, - STATE(66), 1, - sym_function_expression, - STATE(354), 1, - sym_expression, - STATE(441), 1, - sym_index_expression, - ACTIONS(15), 2, - sym_float, - sym_string, - ACTIONS(17), 2, - anon_sym_true, - anon_sym_false, - STATE(87), 2, - sym_value, - sym_index, - STATE(61), 3, - sym__function_expression_kind, - sym_function_call, - sym_yield, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(72), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(37), 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, - [8652] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(13), 1, - sym_integer, - ACTIONS(19), 1, - anon_sym_LBRACK, - ACTIONS(21), 1, - anon_sym_none, - ACTIONS(23), 1, - anon_sym_some, - ACTIONS(511), 1, - sym_identifier, - ACTIONS(513), 1, - anon_sym_LBRACE, - STATE(47), 1, - sym_expression, - STATE(61), 1, - sym__function_expression_kind, - STATE(440), 1, - sym_function_expression, - STATE(441), 1, - sym_index_expression, - ACTIONS(15), 2, - sym_float, - sym_string, - ACTIONS(17), 2, - anon_sym_true, - anon_sym_false, - STATE(60), 2, - sym_function_call, - sym_yield, - STATE(68), 2, - sym_value, - sym_index, - STATE(71), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(72), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(37), 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, - [8729] = 17, - ACTIONS(3), 1, - sym__comment, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(517), 1, - anon_sym_LPAREN, - ACTIONS(527), 1, - sym_identifier, - STATE(261), 1, - sym_function_expression, - STATE(360), 1, - sym_expression, - STATE(432), 1, - sym_index_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(255), 5, - sym_value, - sym_index, - sym__function_expression_kind, - sym_function_call, - sym_yield, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [8802] = 18, - ACTIONS(3), 1, - sym__comment, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(515), 1, - sym_identifier, - ACTIONS(517), 1, - anon_sym_LPAREN, - STATE(261), 1, - sym_function_expression, - STATE(343), 1, - sym_expression, - STATE(432), 1, - sym_index_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(289), 2, - sym_value, - sym_index, - STATE(255), 3, - sym__function_expression_kind, - sym_function_call, - sym_yield, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [8877] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(509), 1, - sym_identifier, - STATE(61), 1, - sym__function_expression_kind, - STATE(331), 1, - sym_expression, - STATE(432), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(324), 2, - sym_function_call, - sym_yield, - STATE(325), 2, - sym_value, - sym_index, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [8954] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(344), 1, - sym_identifier, - ACTIONS(346), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(314), 1, - sym_expression, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(245), 2, - sym_function_call, - sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [9031] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(13), 1, - sym_integer, - ACTIONS(19), 1, - anon_sym_LBRACK, - ACTIONS(21), 1, - anon_sym_none, - ACTIONS(23), 1, - anon_sym_some, - ACTIONS(511), 1, - sym_identifier, - ACTIONS(513), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(83), 1, - sym_expression, - STATE(440), 1, - sym_function_expression, - STATE(441), 1, - sym_index_expression, - ACTIONS(15), 2, - sym_float, - sym_string, - ACTIONS(17), 2, - anon_sym_true, - anon_sym_false, - STATE(60), 2, - sym_function_call, - sym_yield, - STATE(68), 2, - sym_value, - sym_index, - STATE(71), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(72), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(37), 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, - [9108] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(344), 1, - sym_identifier, - ACTIONS(346), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(313), 1, - sym_expression, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(245), 2, - sym_function_call, - sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [9185] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(344), 1, - sym_identifier, - ACTIONS(346), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(300), 1, - sym_expression, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(245), 2, - sym_function_call, - sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [9262] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(13), 1, - sym_integer, - ACTIONS(19), 1, - anon_sym_LBRACK, - ACTIONS(21), 1, - anon_sym_none, - ACTIONS(23), 1, - anon_sym_some, - ACTIONS(511), 1, - sym_identifier, - ACTIONS(513), 1, - anon_sym_LBRACE, - STATE(61), 1, + STATE(46), 1, sym__function_expression_kind, STATE(82), 1, sym_expression, - STATE(440), 1, + STATE(421), 1, sym_function_expression, - STATE(441), 1, + STATE(436), 1, + sym_index_expression, + ACTIONS(175), 2, + sym_float, + sym_string, + ACTIONS(177), 2, + anon_sym_true, + anon_sym_false, + STATE(91), 2, + sym_value, + sym_index, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(88), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(195), 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, + [8007] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(167), 1, + anon_sym_LPAREN, + ACTIONS(173), 1, + sym_integer, + ACTIONS(179), 1, + anon_sym_LBRACK, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, + anon_sym_none, + ACTIONS(185), 1, + anon_sym_some, + ACTIONS(396), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(83), 1, + sym_expression, + STATE(421), 1, + sym_function_expression, + STATE(436), 1, + sym_index_expression, + ACTIONS(175), 2, + sym_float, + sym_string, + ACTIONS(177), 2, + anon_sym_true, + anon_sym_false, + STATE(91), 2, + sym_value, + sym_index, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(88), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(195), 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, + [8084] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(384), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(248), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(239), 2, + sym_value, + sym_index, + STATE(245), 2, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [8161] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(518), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(306), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(444), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(318), 2, + sym_value, + sym_index, + STATE(322), 2, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [8238] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(518), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(307), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(444), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(318), 2, + sym_value, + sym_index, + STATE(322), 2, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [8315] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(384), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(312), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(239), 2, + sym_value, + sym_index, + STATE(245), 2, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [8392] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(384), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(292), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(239), 2, + sym_value, + sym_index, + STATE(245), 2, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [8469] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(384), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(293), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(239), 2, + sym_value, + sym_index, + STATE(245), 2, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [8546] = 18, + ACTIONS(3), 1, + sym__comment, + ACTIONS(13), 1, + sym_integer, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_struct, + ACTIONS(23), 1, + anon_sym_none, + ACTIONS(25), 1, + anon_sym_some, + ACTIONS(512), 1, + anon_sym_LPAREN, + ACTIONS(520), 1, + sym_identifier, + STATE(68), 1, + sym_function_expression, + STATE(343), 1, + sym_expression, + STATE(433), 1, sym_index_expression, ACTIONS(15), 2, sym_float, @@ -12982,24 +12186,25 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(60), 2, - sym_function_call, - sym_yield, - STATE(68), 2, + STATE(78), 2, sym_value, sym_index, - STATE(71), 3, + STATE(46), 3, + sym__function_expression_kind, + sym_function_call, + sym_yield, + STATE(250), 3, sym__expression_kind, sym_math, sym_logic, - STATE(72), 6, + STATE(52), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(37), 9, + ACTIONS(39), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -13009,55 +12214,55 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [9339] = 19, + [8621] = 19, ACTIONS(3), 1, sym__comment, - ACTIONS(128), 1, + ACTIONS(167), 1, anon_sym_LPAREN, - ACTIONS(134), 1, + ACTIONS(173), 1, sym_integer, - ACTIONS(140), 1, + ACTIONS(179), 1, anon_sym_LBRACK, - ACTIONS(142), 1, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, anon_sym_none, - ACTIONS(144), 1, + ACTIONS(185), 1, anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(509), 1, + ACTIONS(396), 1, sym_identifier, - STATE(61), 1, + STATE(46), 1, sym__function_expression_kind, - STATE(309), 1, + STATE(84), 1, sym_expression, - STATE(425), 1, - sym_index_expression, - STATE(445), 1, + STATE(421), 1, sym_function_expression, - ACTIONS(136), 2, + STATE(436), 1, + sym_index_expression, + ACTIONS(175), 2, sym_float, sym_string, - ACTIONS(138), 2, + ACTIONS(177), 2, anon_sym_true, anon_sym_false, - STATE(324), 2, - sym_function_call, - sym_yield, - STATE(325), 2, + STATE(91), 2, sym_value, sym_index, - STATE(258), 3, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, sym__expression_kind, sym_math, sym_logic, - STATE(269), 6, + STATE(88), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(158), 9, + ACTIONS(195), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -13067,7 +12272,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [9416] = 19, + [8698] = 19, ACTIONS(3), 1, sym__comment, ACTIONS(7), 1, @@ -13077,45 +12282,45 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(19), 1, anon_sym_LBRACK, ACTIONS(21), 1, - anon_sym_none, + anon_sym_struct, ACTIONS(23), 1, + anon_sym_none, + ACTIONS(25), 1, anon_sym_some, - ACTIONS(511), 1, + ACTIONS(522), 1, sym_identifier, - ACTIONS(513), 1, - anon_sym_LBRACE, - STATE(48), 1, - sym_expression, - STATE(61), 1, + STATE(46), 1, sym__function_expression_kind, - STATE(440), 1, - sym_function_expression, - STATE(441), 1, + STATE(76), 1, + sym_expression, + STATE(433), 1, sym_index_expression, + STATE(434), 1, + sym_function_expression, ACTIONS(15), 2, sym_float, sym_string, ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(60), 2, - sym_function_call, - sym_yield, - STATE(68), 2, + STATE(54), 2, sym_value, sym_index, - STATE(71), 3, + STATE(59), 2, + sym_function_call, + sym_yield, + STATE(48), 3, sym__expression_kind, sym_math, sym_logic, - STATE(72), 6, + STATE(52), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(37), 9, + ACTIONS(39), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -13125,1094 +12330,55 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [9493] = 19, + [8775] = 19, ACTIONS(3), 1, sym__comment, - ACTIONS(162), 1, + ACTIONS(131), 1, anon_sym_LPAREN, - ACTIONS(168), 1, + ACTIONS(137), 1, sym_integer, - ACTIONS(174), 1, + ACTIONS(143), 1, anon_sym_LBRACK, - ACTIONS(176), 1, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, anon_sym_none, - ACTIONS(178), 1, + ACTIONS(149), 1, anon_sym_some, - ACTIONS(425), 1, + ACTIONS(384), 1, sym_identifier, - ACTIONS(429), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(120), 1, - sym_expression, - STATE(419), 1, - sym_function_expression, - STATE(424), 1, - sym_index_expression, - ACTIONS(170), 2, - sym_float, - sym_string, - ACTIONS(172), 2, - anon_sym_true, - anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, - sym_value, - sym_index, - STATE(102), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(95), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(188), 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, - [9570] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(344), 1, - sym_identifier, - ACTIONS(346), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(323), 1, - sym_expression, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(245), 2, - sym_function_call, - sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [9647] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(344), 1, - sym_identifier, - ACTIONS(346), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(319), 1, - sym_expression, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(245), 2, - sym_function_call, - sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [9724] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(162), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - sym_integer, - ACTIONS(174), 1, - anon_sym_LBRACK, - ACTIONS(176), 1, - anon_sym_none, - ACTIONS(178), 1, - anon_sym_some, - ACTIONS(425), 1, - sym_identifier, - ACTIONS(429), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(90), 1, - sym_expression, - STATE(419), 1, - sym_function_expression, - STATE(424), 1, - sym_index_expression, - ACTIONS(170), 2, - sym_float, - sym_string, - ACTIONS(172), 2, - anon_sym_true, - anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, - sym_value, - sym_index, - STATE(102), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(95), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(188), 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, - [9801] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(344), 1, - sym_identifier, - ACTIONS(346), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(316), 1, - sym_expression, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(245), 2, - sym_function_call, - sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [9878] = 17, - ACTIONS(3), 1, - sym__comment, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(517), 1, - anon_sym_LPAREN, - ACTIONS(527), 1, - sym_identifier, - STATE(261), 1, - sym_function_expression, - STATE(355), 1, - sym_expression, - STATE(425), 1, - sym_index_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(255), 5, - sym_value, - sym_index, - sym__function_expression_kind, - sym_function_call, - sym_yield, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [9951] = 17, - ACTIONS(3), 1, - sym__comment, - ACTIONS(13), 1, - sym_integer, - ACTIONS(19), 1, - anon_sym_LBRACK, - ACTIONS(21), 1, - anon_sym_none, - ACTIONS(23), 1, - anon_sym_some, - ACTIONS(513), 1, - anon_sym_LBRACE, - ACTIONS(525), 1, - anon_sym_LPAREN, - ACTIONS(529), 1, - sym_identifier, - STATE(66), 1, - sym_function_expression, - STATE(349), 1, - sym_expression, - STATE(441), 1, - sym_index_expression, - ACTIONS(15), 2, - sym_float, - sym_string, - ACTIONS(17), 2, - anon_sym_true, - anon_sym_false, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(61), 5, - sym_value, - sym_index, - sym__function_expression_kind, - sym_function_call, - sym_yield, - STATE(72), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(37), 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, - [10024] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(162), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - sym_integer, - ACTIONS(174), 1, - anon_sym_LBRACK, - ACTIONS(176), 1, - anon_sym_none, - ACTIONS(178), 1, - anon_sym_some, - ACTIONS(425), 1, - sym_identifier, - ACTIONS(429), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(121), 1, - sym_expression, - STATE(419), 1, - sym_function_expression, - STATE(424), 1, - sym_index_expression, - ACTIONS(170), 2, - sym_float, - sym_string, - ACTIONS(172), 2, - anon_sym_true, - anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, - sym_value, - sym_index, - STATE(102), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(95), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(188), 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, - [10101] = 18, - ACTIONS(3), 1, - sym__comment, - ACTIONS(168), 1, - sym_integer, - ACTIONS(174), 1, - anon_sym_LBRACK, - ACTIONS(176), 1, - anon_sym_none, - ACTIONS(178), 1, - anon_sym_some, - ACTIONS(429), 1, - anon_sym_LBRACE, - ACTIONS(521), 1, - anon_sym_LPAREN, - ACTIONS(531), 1, - sym_identifier, - STATE(113), 1, - sym_function_expression, - STATE(357), 1, - sym_expression, - STATE(424), 1, - sym_index_expression, - ACTIONS(170), 2, - sym_float, - sym_string, - ACTIONS(172), 2, - anon_sym_true, - anon_sym_false, - STATE(122), 2, - sym_value, - sym_index, - STATE(115), 3, - sym__function_expression_kind, - sym_function_call, - sym_yield, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(95), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(188), 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, - [10176] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(344), 1, - sym_identifier, - ACTIONS(346), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(339), 1, - sym_expression, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(245), 2, - sym_function_call, - sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [10253] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(344), 1, - sym_identifier, - ACTIONS(346), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(317), 1, - sym_expression, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(245), 2, - sym_function_call, - sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [10330] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(344), 1, - sym_identifier, - ACTIONS(346), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(318), 1, - sym_expression, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(245), 2, - sym_function_call, - sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [10407] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(162), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - sym_integer, - ACTIONS(174), 1, - anon_sym_LBRACK, - ACTIONS(176), 1, - anon_sym_none, - ACTIONS(178), 1, - anon_sym_some, - ACTIONS(425), 1, - sym_identifier, - ACTIONS(429), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(80), 1, - sym_expression, - STATE(419), 1, - sym_function_expression, - STATE(429), 1, - sym_index_expression, - ACTIONS(170), 2, - sym_float, - sym_string, - ACTIONS(172), 2, - anon_sym_true, - anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, - sym_value, - sym_index, - STATE(102), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(95), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(188), 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, - [10484] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(7), 1, - anon_sym_LPAREN, - ACTIONS(13), 1, - sym_integer, - ACTIONS(19), 1, - anon_sym_LBRACK, - ACTIONS(21), 1, - anon_sym_none, - ACTIONS(23), 1, - anon_sym_some, - ACTIONS(511), 1, - sym_identifier, - ACTIONS(513), 1, - anon_sym_LBRACE, - STATE(50), 1, - sym_expression, - STATE(61), 1, - sym__function_expression_kind, - STATE(440), 1, - sym_function_expression, - STATE(441), 1, - sym_index_expression, - ACTIONS(15), 2, - sym_float, - sym_string, - ACTIONS(17), 2, - anon_sym_true, - anon_sym_false, - STATE(60), 2, - sym_function_call, - sym_yield, - STATE(68), 2, - sym_value, - sym_index, - STATE(71), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(72), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(37), 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, - [10561] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(509), 1, - sym_identifier, - STATE(61), 1, + STATE(46), 1, sym__function_expression_kind, STATE(311), 1, sym_expression, - STATE(432), 1, - sym_index_expression, - STATE(445), 1, + STATE(416), 1, sym_function_expression, - ACTIONS(136), 2, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, sym_float, sym_string, - ACTIONS(138), 2, + ACTIONS(141), 2, anon_sym_true, anon_sym_false, - STATE(324), 2, - sym_function_call, - sym_yield, - STATE(325), 2, + STATE(239), 2, sym_value, sym_index, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [10638] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(509), 1, - sym_identifier, - STATE(61), 1, - sym__function_expression_kind, - STATE(320), 1, - sym_expression, - STATE(432), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(324), 2, - sym_function_call, - sym_yield, - STATE(325), 2, - sym_value, - sym_index, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [10715] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(162), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - sym_integer, - ACTIONS(174), 1, - anon_sym_LBRACK, - ACTIONS(176), 1, - anon_sym_none, - ACTIONS(178), 1, - anon_sym_some, - ACTIONS(425), 1, - sym_identifier, - ACTIONS(429), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(89), 1, - sym_expression, - STATE(419), 1, - sym_function_expression, - STATE(424), 1, - sym_index_expression, - ACTIONS(170), 2, - sym_float, - sym_string, - ACTIONS(172), 2, - anon_sym_true, - anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, - sym_value, - sym_index, - STATE(102), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(95), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(188), 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, - [10792] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(162), 1, - anon_sym_LPAREN, - ACTIONS(168), 1, - sym_integer, - ACTIONS(174), 1, - anon_sym_LBRACK, - ACTIONS(176), 1, - anon_sym_none, - ACTIONS(178), 1, - anon_sym_some, - ACTIONS(425), 1, - sym_identifier, - ACTIONS(429), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(88), 1, - sym_expression, - STATE(419), 1, - sym_function_expression, - STATE(424), 1, - sym_index_expression, - ACTIONS(170), 2, - sym_float, - sym_string, - ACTIONS(172), 2, - anon_sym_true, - anon_sym_false, - STATE(100), 2, - sym_function_call, - sym_yield, - STATE(109), 2, - sym_value, - sym_index, - STATE(102), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(95), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(188), 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, - [10869] = 19, - ACTIONS(3), 1, - sym__comment, - ACTIONS(128), 1, - anon_sym_LPAREN, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(344), 1, - sym_identifier, - ACTIONS(346), 1, - anon_sym_LBRACE, - STATE(61), 1, - sym__function_expression_kind, - STATE(273), 1, - sym_expression, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, - sym_function_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, STATE(245), 2, sym_function_call, sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, + STATE(250), 3, sym__expression_kind, sym_math, sym_logic, - STATE(269), 6, + STATE(260), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(158), 9, + ACTIONS(163), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -14222,55 +12388,113 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [10946] = 19, + [8852] = 19, ACTIONS(3), 1, sym__comment, - ACTIONS(128), 1, + ACTIONS(7), 1, anon_sym_LPAREN, - ACTIONS(134), 1, + ACTIONS(13), 1, sym_integer, - ACTIONS(140), 1, + ACTIONS(19), 1, anon_sym_LBRACK, - ACTIONS(142), 1, + ACTIONS(21), 1, + anon_sym_struct, + ACTIONS(23), 1, anon_sym_none, - ACTIONS(144), 1, + ACTIONS(25), 1, anon_sym_some, - ACTIONS(344), 1, + ACTIONS(522), 1, sym_identifier, - ACTIONS(346), 1, - anon_sym_LBRACE, - STATE(61), 1, + STATE(46), 1, sym__function_expression_kind, - STATE(271), 1, + STATE(74), 1, sym_expression, - STATE(426), 1, + STATE(433), 1, sym_index_expression, - STATE(445), 1, + STATE(434), 1, sym_function_expression, - ACTIONS(136), 2, + ACTIONS(15), 2, sym_float, sym_string, - ACTIONS(138), 2, + ACTIONS(17), 2, anon_sym_true, anon_sym_false, + STATE(54), 2, + sym_value, + sym_index, + STATE(59), 2, + sym_function_call, + sym_yield, + STATE(48), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(52), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(39), 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, + [8929] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(384), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(316), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(239), 2, + sym_value, + sym_index, STATE(245), 2, sym_function_call, sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, + STATE(250), 3, sym__expression_kind, sym_math, sym_logic, - STATE(269), 6, + STATE(260), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(158), 9, + ACTIONS(163), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -14280,55 +12504,113 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [11023] = 19, + [9006] = 19, ACTIONS(3), 1, sym__comment, - ACTIONS(128), 1, + ACTIONS(167), 1, anon_sym_LPAREN, - ACTIONS(134), 1, + ACTIONS(173), 1, sym_integer, - ACTIONS(140), 1, + ACTIONS(179), 1, anon_sym_LBRACK, - ACTIONS(142), 1, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, anon_sym_none, - ACTIONS(144), 1, + ACTIONS(185), 1, anon_sym_some, - ACTIONS(344), 1, + ACTIONS(396), 1, sym_identifier, - ACTIONS(346), 1, - anon_sym_LBRACE, - STATE(61), 1, + STATE(46), 1, sym__function_expression_kind, - STATE(237), 1, + STATE(81), 1, sym_expression, - STATE(425), 1, + STATE(412), 1, sym_index_expression, - STATE(445), 1, + STATE(421), 1, sym_function_expression, - ACTIONS(136), 2, + ACTIONS(175), 2, sym_float, sym_string, - ACTIONS(138), 2, + ACTIONS(177), 2, anon_sym_true, anon_sym_false, + STATE(91), 2, + sym_value, + sym_index, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(88), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(195), 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, + [9083] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(384), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(309), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(239), 2, + sym_value, + sym_index, STATE(245), 2, sym_function_call, sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, + STATE(250), 3, sym__expression_kind, sym_math, sym_logic, - STATE(269), 6, + STATE(260), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(158), 9, + ACTIONS(163), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -14338,7 +12620,239 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [11100] = 17, + [9160] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(7), 1, + anon_sym_LPAREN, + ACTIONS(13), 1, + sym_integer, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_struct, + ACTIONS(23), 1, + anon_sym_none, + ACTIONS(25), 1, + anon_sym_some, + ACTIONS(522), 1, + sym_identifier, + STATE(44), 1, + sym_expression, + STATE(46), 1, + sym__function_expression_kind, + STATE(433), 1, + sym_index_expression, + STATE(434), 1, + sym_function_expression, + ACTIONS(15), 2, + sym_float, + sym_string, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(54), 2, + sym_value, + sym_index, + STATE(59), 2, + sym_function_call, + sym_yield, + STATE(48), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(52), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(39), 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, + [9237] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(167), 1, + anon_sym_LPAREN, + ACTIONS(173), 1, + sym_integer, + ACTIONS(179), 1, + anon_sym_LBRACK, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, + anon_sym_none, + ACTIONS(185), 1, + anon_sym_some, + ACTIONS(396), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(79), 1, + sym_expression, + STATE(412), 1, + sym_index_expression, + STATE(421), 1, + sym_function_expression, + ACTIONS(175), 2, + sym_float, + sym_string, + ACTIONS(177), 2, + anon_sym_true, + anon_sym_false, + STATE(91), 2, + sym_value, + sym_index, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(88), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(195), 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, + [9314] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(518), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(302), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(435), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(318), 2, + sym_value, + sym_index, + STATE(322), 2, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [9391] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(7), 1, + anon_sym_LPAREN, + ACTIONS(13), 1, + sym_integer, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_struct, + ACTIONS(23), 1, + anon_sym_none, + ACTIONS(25), 1, + anon_sym_some, + ACTIONS(522), 1, + sym_identifier, + STATE(43), 1, + sym_expression, + STATE(46), 1, + sym__function_expression_kind, + STATE(433), 1, + sym_index_expression, + STATE(434), 1, + sym_function_expression, + ACTIONS(15), 2, + sym_float, + sym_string, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(54), 2, + sym_value, + sym_index, + STATE(59), 2, + sym_function_call, + sym_yield, + STATE(48), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(52), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(39), 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, + [9468] = 17, ACTIONS(3), 1, sym__comment, ACTIONS(13), 1, @@ -14346,20 +12860,20 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(19), 1, anon_sym_LBRACK, ACTIONS(21), 1, - anon_sym_none, + anon_sym_struct, ACTIONS(23), 1, + anon_sym_none, + ACTIONS(25), 1, anon_sym_some, - ACTIONS(513), 1, - anon_sym_LBRACE, - ACTIONS(525), 1, - anon_sym_LPAREN, - ACTIONS(529), 1, + ACTIONS(510), 1, sym_identifier, - STATE(66), 1, + ACTIONS(512), 1, + anon_sym_LPAREN, + STATE(68), 1, sym_function_expression, - STATE(345), 1, + STATE(344), 1, sym_expression, - STATE(422), 1, + STATE(433), 1, sym_index_expression, ACTIONS(15), 2, sym_float, @@ -14367,24 +12881,24 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(258), 3, + STATE(250), 3, sym__expression_kind, sym_math, sym_logic, - STATE(61), 5, + STATE(46), 5, sym_value, sym_index, sym__function_expression_kind, sym_function_call, sym_yield, - STATE(72), 6, + STATE(52), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(37), 9, + ACTIONS(39), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -14394,55 +12908,171 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [11173] = 19, + [9541] = 19, ACTIONS(3), 1, sym__comment, - ACTIONS(128), 1, + ACTIONS(167), 1, anon_sym_LPAREN, - ACTIONS(134), 1, + ACTIONS(173), 1, sym_integer, - ACTIONS(140), 1, + ACTIONS(179), 1, anon_sym_LBRACK, - ACTIONS(142), 1, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, anon_sym_none, - ACTIONS(144), 1, + ACTIONS(185), 1, anon_sym_some, - ACTIONS(344), 1, + ACTIONS(396), 1, sym_identifier, - ACTIONS(346), 1, - anon_sym_LBRACE, - STATE(61), 1, + STATE(46), 1, sym__function_expression_kind, - STATE(322), 1, + STATE(114), 1, sym_expression, - STATE(426), 1, - sym_index_expression, - STATE(445), 1, + STATE(421), 1, sym_function_expression, - ACTIONS(136), 2, + STATE(436), 1, + sym_index_expression, + ACTIONS(175), 2, sym_float, sym_string, - ACTIONS(138), 2, + ACTIONS(177), 2, anon_sym_true, anon_sym_false, + STATE(91), 2, + sym_value, + sym_index, + STATE(94), 2, + sym_function_call, + sym_yield, + STATE(93), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(88), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(195), 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, + [9618] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(518), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(330), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(444), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(318), 2, + sym_value, + sym_index, + STATE(322), 2, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [9695] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(384), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(314), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(239), 2, + sym_value, + sym_index, STATE(245), 2, sym_function_call, sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, + STATE(250), 3, sym__expression_kind, sym_math, sym_logic, - STATE(269), 6, + STATE(260), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(158), 9, + ACTIONS(163), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -14452,53 +13082,54 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [11250] = 17, + [9772] = 18, ACTIONS(3), 1, sym__comment, - ACTIONS(134), 1, + ACTIONS(137), 1, sym_integer, - ACTIONS(140), 1, + ACTIONS(143), 1, anon_sym_LBRACK, - ACTIONS(142), 1, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, anon_sym_none, - ACTIONS(144), 1, + ACTIONS(149), 1, anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(517), 1, - anon_sym_LPAREN, - ACTIONS(527), 1, + ACTIONS(514), 1, sym_identifier, - STATE(261), 1, + ACTIONS(516), 1, + anon_sym_LPAREN, + STATE(258), 1, sym_function_expression, - STATE(342), 1, + STATE(337), 1, sym_expression, - STATE(426), 1, + STATE(444), 1, sym_index_expression, - ACTIONS(136), 2, + ACTIONS(139), 2, sym_float, sym_string, - ACTIONS(138), 2, + ACTIONS(141), 2, anon_sym_true, anon_sym_false, - STATE(258), 3, - sym__expression_kind, - sym_math, - sym_logic, - STATE(255), 5, + STATE(284), 2, sym_value, sym_index, + STATE(247), 3, sym__function_expression_kind, sym_function_call, sym_yield, - STATE(269), 6, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(158), 9, + ACTIONS(163), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -14508,55 +13139,171 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [11323] = 19, + [9847] = 19, ACTIONS(3), 1, sym__comment, - ACTIONS(128), 1, + ACTIONS(131), 1, anon_sym_LPAREN, - ACTIONS(134), 1, + ACTIONS(137), 1, sym_integer, - ACTIONS(140), 1, + ACTIONS(143), 1, anon_sym_LBRACK, - ACTIONS(142), 1, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, anon_sym_none, - ACTIONS(144), 1, + ACTIONS(149), 1, anon_sym_some, - ACTIONS(344), 1, + ACTIONS(518), 1, sym_identifier, - ACTIONS(346), 1, - anon_sym_LBRACE, - STATE(61), 1, + STATE(46), 1, sym__function_expression_kind, - STATE(239), 1, + STATE(325), 1, sym_expression, - STATE(425), 1, - sym_index_expression, - STATE(445), 1, + STATE(416), 1, sym_function_expression, - ACTIONS(136), 2, + STATE(444), 1, + sym_index_expression, + ACTIONS(139), 2, sym_float, sym_string, - ACTIONS(138), 2, + ACTIONS(141), 2, anon_sym_true, anon_sym_false, + STATE(318), 2, + sym_value, + sym_index, + STATE(322), 2, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [9924] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(518), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(327), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(444), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(318), 2, + sym_value, + sym_index, + STATE(322), 2, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [10001] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(384), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(315), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(239), 2, + sym_value, + sym_index, STATE(245), 2, sym_function_call, sym_yield, - STATE(250), 2, - sym_value, - sym_index, - STATE(258), 3, + STATE(250), 3, sym__expression_kind, sym_math, sym_logic, - STATE(269), 6, + STATE(260), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(158), 9, + ACTIONS(163), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -14566,53 +13313,514 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [11400] = 17, + [10078] = 19, ACTIONS(3), 1, sym__comment, - ACTIONS(168), 1, - sym_integer, - ACTIONS(174), 1, - anon_sym_LBRACK, - ACTIONS(176), 1, - anon_sym_none, - ACTIONS(178), 1, - anon_sym_some, - ACTIONS(429), 1, - anon_sym_LBRACE, - ACTIONS(519), 1, - sym_identifier, - ACTIONS(521), 1, + ACTIONS(131), 1, anon_sym_LPAREN, - STATE(113), 1, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(384), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(331), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(239), 2, + sym_value, + sym_index, + STATE(245), 2, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [10155] = 18, + ACTIONS(3), 1, + sym__comment, + ACTIONS(173), 1, + sym_integer, + ACTIONS(179), 1, + anon_sym_LBRACK, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, + anon_sym_none, + ACTIONS(185), 1, + anon_sym_some, + ACTIONS(524), 1, + sym_identifier, + ACTIONS(526), 1, + anon_sym_LPAREN, + STATE(100), 1, + sym_function_expression, + STATE(350), 1, + sym_expression, + STATE(436), 1, + sym_index_expression, + ACTIONS(175), 2, + sym_float, + sym_string, + ACTIONS(177), 2, + anon_sym_true, + anon_sym_false, + STATE(118), 2, + sym_value, + sym_index, + STATE(89), 3, + sym__function_expression_kind, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(88), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(195), 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, + [10230] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(518), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(303), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(435), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(318), 2, + sym_value, + sym_index, + STATE(322), 2, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [10307] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(7), 1, + anon_sym_LPAREN, + ACTIONS(13), 1, + sym_integer, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_struct, + ACTIONS(23), 1, + anon_sym_none, + ACTIONS(25), 1, + anon_sym_some, + ACTIONS(522), 1, + sym_identifier, + STATE(42), 1, + sym_expression, + STATE(46), 1, + sym__function_expression_kind, + STATE(433), 1, + sym_index_expression, + STATE(434), 1, + sym_function_expression, + ACTIONS(15), 2, + sym_float, + sym_string, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(54), 2, + sym_value, + sym_index, + STATE(59), 2, + sym_function_call, + sym_yield, + STATE(48), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(52), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(39), 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, + [10384] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(384), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(305), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(239), 2, + sym_value, + sym_index, + STATE(245), 2, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [10461] = 17, + ACTIONS(3), 1, + sym__comment, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(516), 1, + anon_sym_LPAREN, + ACTIONS(528), 1, + sym_identifier, + STATE(258), 1, + sym_function_expression, + STATE(341), 1, + sym_expression, + STATE(444), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(247), 5, + sym_value, + sym_index, + sym__function_expression_kind, + sym_function_call, + sym_yield, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [10534] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(7), 1, + anon_sym_LPAREN, + ACTIONS(13), 1, + sym_integer, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_struct, + ACTIONS(23), 1, + anon_sym_none, + ACTIONS(25), 1, + anon_sym_some, + ACTIONS(522), 1, + sym_identifier, + STATE(39), 1, + sym_expression, + STATE(46), 1, + sym__function_expression_kind, + STATE(415), 1, + sym_index_expression, + STATE(434), 1, + sym_function_expression, + ACTIONS(15), 2, + sym_float, + sym_string, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(54), 2, + sym_value, + sym_index, + STATE(59), 2, + sym_function_call, + sym_yield, + STATE(48), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(52), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(39), 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, + [10611] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(384), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(308), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(239), 2, + sym_value, + sym_index, + STATE(245), 2, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [10688] = 17, + ACTIONS(3), 1, + sym__comment, + ACTIONS(173), 1, + sym_integer, + ACTIONS(179), 1, + anon_sym_LBRACK, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, + anon_sym_none, + ACTIONS(185), 1, + anon_sym_some, + ACTIONS(526), 1, + anon_sym_LPAREN, + ACTIONS(530), 1, + sym_identifier, + STATE(100), 1, sym_function_expression, STATE(351), 1, sym_expression, - STATE(429), 1, + STATE(436), 1, sym_index_expression, - ACTIONS(170), 2, + ACTIONS(175), 2, sym_float, sym_string, - ACTIONS(172), 2, + ACTIONS(177), 2, anon_sym_true, anon_sym_false, - STATE(258), 3, + STATE(250), 3, sym__expression_kind, sym_math, sym_logic, - STATE(115), 5, + STATE(89), 5, sym_value, sym_index, sym__function_expression_kind, sym_function_call, sym_yield, - STATE(95), 6, + STATE(88), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(188), 9, + ACTIONS(195), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -14622,19 +13830,535 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [11473] = 7, + [10761] = 19, ACTIONS(3), 1, sym__comment, - ACTIONS(537), 1, + ACTIONS(7), 1, + anon_sym_LPAREN, + ACTIONS(13), 1, + sym_integer, + ACTIONS(19), 1, + anon_sym_LBRACK, + ACTIONS(21), 1, + anon_sym_struct, + ACTIONS(23), 1, + anon_sym_none, + ACTIONS(25), 1, + anon_sym_some, + ACTIONS(522), 1, + sym_identifier, + STATE(40), 1, + sym_expression, + STATE(46), 1, + sym__function_expression_kind, + STATE(415), 1, + sym_index_expression, + STATE(434), 1, + sym_function_expression, + ACTIONS(15), 2, + sym_float, + sym_string, + ACTIONS(17), 2, + anon_sym_true, + anon_sym_false, + STATE(54), 2, + sym_value, + sym_index, + STATE(59), 2, + sym_function_call, + sym_yield, + STATE(48), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(52), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(39), 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, + [10838] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(518), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(332), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(444), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(318), 2, + sym_value, + sym_index, + STATE(322), 2, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [10915] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(384), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(317), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(239), 2, + sym_value, + sym_index, + STATE(245), 2, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [10992] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(518), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(310), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(444), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(318), 2, + sym_value, + sym_index, + STATE(322), 2, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [11069] = 17, + ACTIONS(3), 1, + sym__comment, + ACTIONS(173), 1, + sym_integer, + ACTIONS(179), 1, + anon_sym_LBRACK, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, + anon_sym_none, + ACTIONS(185), 1, + anon_sym_some, + ACTIONS(526), 1, + anon_sym_LPAREN, + ACTIONS(530), 1, + sym_identifier, + STATE(100), 1, + sym_function_expression, + STATE(354), 1, + sym_expression, + STATE(412), 1, + sym_index_expression, + ACTIONS(175), 2, + sym_float, + sym_string, + ACTIONS(177), 2, + anon_sym_true, + anon_sym_false, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(89), 5, + sym_value, + sym_index, + sym__function_expression_kind, + sym_function_call, + sym_yield, + STATE(88), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(195), 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, + [11142] = 17, + ACTIONS(3), 1, + sym__comment, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(516), 1, + anon_sym_LPAREN, + ACTIONS(528), 1, + sym_identifier, + STATE(258), 1, + sym_function_expression, + STATE(340), 1, + sym_expression, + STATE(435), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(247), 5, + sym_value, + sym_index, + sym__function_expression_kind, + sym_function_call, + sym_yield, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [11215] = 17, + ACTIONS(3), 1, + sym__comment, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(516), 1, + anon_sym_LPAREN, + ACTIONS(528), 1, + sym_identifier, + STATE(258), 1, + sym_function_expression, + STATE(353), 1, + sym_expression, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(247), 5, + sym_value, + sym_index, + sym__function_expression_kind, + sym_function_call, + sym_yield, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [11288] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(384), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(329), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(239), 2, + sym_value, + sym_index, + STATE(245), 2, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [11365] = 19, + ACTIONS(3), 1, + sym__comment, + ACTIONS(131), 1, + anon_sym_LPAREN, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(384), 1, + sym_identifier, + STATE(46), 1, + sym__function_expression_kind, + STATE(313), 1, + sym_expression, + STATE(416), 1, + sym_function_expression, + STATE(422), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(239), 2, + sym_value, + sym_index, + STATE(245), 2, + sym_function_call, + sym_yield, + STATE(250), 3, + sym__expression_kind, + sym_math, + sym_logic, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [11442] = 7, + ACTIONS(3), 1, + sym__comment, + ACTIONS(536), 1, anon_sym_elseif, - ACTIONS(539), 1, + ACTIONS(538), 1, anon_sym_else, - STATE(228), 1, + STATE(214), 1, sym_else, - STATE(214), 2, + STATE(208), 2, sym_else_if, aux_sym_if_else_repeat1, - ACTIONS(533), 9, + ACTIONS(532), 9, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -14644,12 +14368,13 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_asyncfor, - ACTIONS(535), 21, + ACTIONS(534), 22, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_if, @@ -14666,19 +14391,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [11524] = 7, + [11494] = 7, ACTIONS(3), 1, sym__comment, - ACTIONS(537), 1, + ACTIONS(536), 1, anon_sym_elseif, - ACTIONS(539), 1, + ACTIONS(538), 1, anon_sym_else, - STATE(222), 1, + STATE(225), 1, sym_else, - STATE(212), 2, + STATE(206), 2, sym_else_if, aux_sym_if_else_repeat1, - ACTIONS(541), 9, + ACTIONS(540), 9, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -14688,12 +14413,13 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_asyncfor, - ACTIONS(543), 21, + ACTIONS(542), 22, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_if, @@ -14710,15 +14436,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [11575] = 5, + [11546] = 5, ACTIONS(3), 1, sym__comment, - ACTIONS(549), 1, + ACTIONS(548), 1, anon_sym_elseif, - STATE(214), 2, + STATE(208), 2, sym_else_if, aux_sym_if_else_repeat1, - ACTIONS(545), 9, + ACTIONS(544), 9, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -14728,12 +14454,13 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_asyncfor, - ACTIONS(547), 22, + ACTIONS(546), 23, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_if, @@ -14751,10 +14478,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [11621] = 3, + [11593] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(228), 10, + ACTIONS(255), 10, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -14765,12 +14492,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, anon_sym_elseif, anon_sym_asyncfor, - ACTIONS(230), 22, + ACTIONS(257), 23, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_if, @@ -14788,10 +14516,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [11661] = 3, + [11634] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(552), 10, + ACTIONS(551), 10, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -14802,12 +14530,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, anon_sym_elseif, anon_sym_asyncfor, - ACTIONS(554), 22, + ACTIONS(553), 23, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_if, @@ -14825,10 +14554,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [11701] = 3, + [11675] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(234), 10, + ACTIONS(295), 10, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -14839,12 +14568,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, anon_sym_elseif, anon_sym_asyncfor, - ACTIONS(236), 22, + ACTIONS(297), 23, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_if, @@ -14862,10 +14592,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [11741] = 3, + [11716] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(310), 10, + ACTIONS(319), 10, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -14876,12 +14606,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, anon_sym_elseif, anon_sym_asyncfor, - ACTIONS(312), 22, + ACTIONS(321), 23, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_if, @@ -14899,10 +14630,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [11781] = 3, + [11757] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(556), 10, + ACTIONS(555), 10, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -14913,12 +14644,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, anon_sym_elseif, anon_sym_asyncfor, - ACTIONS(558), 22, + ACTIONS(557), 23, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_if, @@ -14936,10 +14668,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [11821] = 3, + [11798] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(560), 9, + ACTIONS(559), 9, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -14949,12 +14681,13 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_asyncfor, - ACTIONS(562), 21, + ACTIONS(561), 22, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_if, @@ -14971,10 +14704,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [11859] = 3, + [11837] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(564), 9, + ACTIONS(563), 9, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -14984,12 +14717,13 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_asyncfor, - ACTIONS(566), 21, + ACTIONS(565), 22, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_if, @@ -15006,10 +14740,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [11897] = 3, + [11876] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(533), 9, + ACTIONS(567), 9, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -15019,12 +14753,13 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_asyncfor, - ACTIONS(535), 21, + ACTIONS(569), 22, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_if, @@ -15041,10 +14776,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [11935] = 3, + [11915] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(322), 9, + ACTIONS(571), 9, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -15054,12 +14789,13 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_asyncfor, - ACTIONS(324), 21, + ACTIONS(573), 22, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_if, @@ -15076,10 +14812,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [11973] = 3, + [11954] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(568), 9, + ACTIONS(575), 9, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -15089,12 +14825,13 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_asyncfor, - ACTIONS(570), 21, + ACTIONS(577), 22, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_if, @@ -15111,10 +14848,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12011] = 3, + [11993] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(572), 9, + ACTIONS(579), 9, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -15124,12 +14861,13 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_asyncfor, - ACTIONS(574), 21, + ACTIONS(581), 22, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_if, @@ -15146,10 +14884,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12049] = 3, + [12032] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(576), 9, + ACTIONS(583), 9, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -15159,12 +14897,13 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_asyncfor, - ACTIONS(578), 21, + ACTIONS(585), 22, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_if, @@ -15181,10 +14920,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12087] = 3, + [12071] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(580), 9, + ACTIONS(587), 9, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -15194,12 +14933,13 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_asyncfor, - ACTIONS(582), 21, + ACTIONS(589), 22, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_if, @@ -15216,10 +14956,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12125] = 3, + [12110] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(584), 9, + ACTIONS(591), 9, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -15229,12 +14969,13 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_asyncfor, - ACTIONS(586), 21, + ACTIONS(593), 22, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_if, @@ -15251,10 +14992,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12163] = 3, + [12149] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(588), 9, + ACTIONS(325), 9, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -15264,12 +15005,13 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_asyncfor, - ACTIONS(590), 21, + ACTIONS(327), 22, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_if, @@ -15286,12 +15028,12 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12201] = 4, + [12188] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(326), 1, + ACTIONS(337), 1, anon_sym_SEMI, - ACTIONS(322), 8, + ACTIONS(325), 8, ts_builtin_sym_end, anon_sym_LPAREN, anon_sym_LBRACE, @@ -15300,12 +15042,13 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_asyncfor, - ACTIONS(324), 21, + ACTIONS(327), 22, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_if, @@ -15322,10 +15065,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12241] = 3, + [12229] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(592), 9, + ACTIONS(532), 9, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -15335,12 +15078,13 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_asyncfor, - ACTIONS(594), 21, + ACTIONS(534), 22, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_if, @@ -15357,10 +15101,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12279] = 3, + [12268] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(596), 9, + ACTIONS(595), 9, ts_builtin_sym_end, anon_sym_SEMI, anon_sym_LPAREN, @@ -15370,12 +15114,13 @@ static const uint16_t ts_small_parse_table[] = { sym_string, anon_sym_LBRACK, anon_sym_asyncfor, - ACTIONS(598), 21, + ACTIONS(597), 22, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_if, @@ -15392,14 +15137,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12317] = 5, + [12307] = 6, ACTIONS(3), 1, sym__comment, - STATE(206), 1, + ACTIONS(599), 1, + anon_sym_DASH_GT, + STATE(156), 1, sym_logic_operator, - STATE(210), 1, + STATE(157), 1, sym_math_operator, - ACTIONS(202), 7, + ACTIONS(199), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -15407,7 +15154,124 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(200), 20, + ACTIONS(197), 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, + [12350] = 14, + ACTIONS(3), 1, + sym__comment, + ACTIONS(173), 1, + sym_integer, + ACTIONS(179), 1, + anon_sym_LBRACK, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, + anon_sym_none, + ACTIONS(185), 1, + anon_sym_some, + ACTIONS(601), 1, + sym_identifier, + ACTIONS(603), 1, + anon_sym_LPAREN, + STATE(102), 1, + sym_index_expression, + ACTIONS(175), 2, + sym_float, + sym_string, + ACTIONS(177), 2, + anon_sym_true, + anon_sym_false, + STATE(85), 2, + sym_value, + sym_index, + STATE(88), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(195), 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, + [12409] = 6, + ACTIONS(3), 1, + sym__comment, + ACTIONS(599), 1, + anon_sym_DASH_GT, + STATE(156), 1, + sym_logic_operator, + STATE(157), 1, + sym_math_operator, + ACTIONS(205), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(203), 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, + [12452] = 5, + ACTIONS(3), 1, + sym__comment, + STATE(156), 1, + sym_logic_operator, + STATE(157), 1, + sym_math_operator, + ACTIONS(209), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(207), 20, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_COMMA, @@ -15428,42 +15292,42 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [12358] = 14, + [12493] = 14, ACTIONS(3), 1, sym__comment, - ACTIONS(168), 1, + ACTIONS(137), 1, sym_integer, - ACTIONS(174), 1, + ACTIONS(143), 1, anon_sym_LBRACK, - ACTIONS(176), 1, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, anon_sym_none, - ACTIONS(178), 1, + ACTIONS(149), 1, anon_sym_some, - ACTIONS(429), 1, - anon_sym_LBRACE, - ACTIONS(600), 1, + ACTIONS(605), 1, sym_identifier, - ACTIONS(602), 1, + ACTIONS(607), 1, anon_sym_LPAREN, - STATE(116), 1, + STATE(264), 1, sym_index_expression, - ACTIONS(170), 2, + ACTIONS(139), 2, sym_float, sym_string, - ACTIONS(172), 2, + ACTIONS(141), 2, anon_sym_true, anon_sym_false, - STATE(117), 2, + STATE(241), 2, sym_value, sym_index, - STATE(95), 6, + STATE(260), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(188), 9, + ACTIONS(163), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -15473,7 +15337,128 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12417] = 14, + [12552] = 7, + ACTIONS(3), 1, + sym__comment, + ACTIONS(609), 1, + anon_sym_elseif, + ACTIONS(611), 1, + anon_sym_else, + STATE(279), 1, + sym_else, + STATE(243), 2, + sym_else_if, + aux_sym_if_else_repeat1, + ACTIONS(532), 8, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + ACTIONS(534), 16, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + 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, + [12597] = 7, + ACTIONS(3), 1, + sym__comment, + ACTIONS(609), 1, + anon_sym_elseif, + ACTIONS(611), 1, + anon_sym_else, + STATE(289), 1, + sym_else, + STATE(232), 2, + sym_else_if, + aux_sym_if_else_repeat1, + ACTIONS(540), 8, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + ACTIONS(542), 16, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + 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, + [12642] = 14, + ACTIONS(3), 1, + sym__comment, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(605), 1, + sym_identifier, + ACTIONS(607), 1, + anon_sym_LPAREN, + STATE(270), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(241), 2, + sym_value, + sym_index, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [12701] = 14, ACTIONS(3), 1, sym__comment, ACTIONS(13), 1, @@ -15481,16 +15466,16 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(19), 1, anon_sym_LBRACK, ACTIONS(21), 1, - anon_sym_none, + anon_sym_struct, ACTIONS(23), 1, + anon_sym_none, + ACTIONS(25), 1, anon_sym_some, - ACTIONS(513), 1, - anon_sym_LBRACE, - ACTIONS(604), 1, + ACTIONS(613), 1, sym_identifier, - ACTIONS(606), 1, + ACTIONS(615), 1, anon_sym_LPAREN, - STATE(64), 1, + STATE(61), 1, sym_index_expression, ACTIONS(15), 2, sym_float, @@ -15498,17 +15483,17 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(65), 2, + STATE(62), 2, sym_value, sym_index, - STATE(72), 6, + STATE(52), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(37), 9, + ACTIONS(39), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -15518,42 +15503,42 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12476] = 14, + [12760] = 14, ACTIONS(3), 1, sym__comment, - ACTIONS(134), 1, + ACTIONS(173), 1, sym_integer, - ACTIONS(140), 1, + ACTIONS(179), 1, anon_sym_LBRACK, - ACTIONS(142), 1, + ACTIONS(181), 1, + anon_sym_struct, + ACTIONS(183), 1, anon_sym_none, - ACTIONS(144), 1, + ACTIONS(185), 1, anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(608), 1, + ACTIONS(601), 1, sym_identifier, - ACTIONS(610), 1, + ACTIONS(603), 1, anon_sym_LPAREN, - STATE(276), 1, + STATE(101), 1, sym_index_expression, - ACTIONS(136), 2, + ACTIONS(175), 2, sym_float, sym_string, - ACTIONS(138), 2, + ACTIONS(177), 2, anon_sym_true, anon_sym_false, - STATE(260), 2, + STATE(85), 2, sym_value, sym_index, - STATE(269), 6, + STATE(88), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(158), 9, + ACTIONS(195), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -15563,44 +15548,52 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12535] = 6, + [12819] = 14, ACTIONS(3), 1, sym__comment, - ACTIONS(612), 1, - anon_sym_DASH_GT, - STATE(206), 1, - sym_logic_operator, - STATE(210), 1, - sym_math_operator, - ACTIONS(192), 7, - anon_sym_async, + ACTIONS(137), 1, + sym_integer, + ACTIONS(143), 1, + anon_sym_LBRACK, + ACTIONS(145), 1, + anon_sym_struct, + ACTIONS(147), 1, + anon_sym_none, + ACTIONS(149), 1, + anon_sym_some, + ACTIONS(605), 1, sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(190), 19, - anon_sym_SEMI, + ACTIONS(607), 1, 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, - [12578] = 14, + STATE(323), 1, + sym_index_expression, + ACTIONS(139), 2, + sym_float, + sym_string, + ACTIONS(141), 2, + anon_sym_true, + anon_sym_false, + STATE(241), 2, + sym_value, + sym_index, + STATE(260), 6, + sym_boolean, + sym_list, + sym_structure, + sym_option, + sym_function, + sym_built_in_value, + ACTIONS(163), 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, + [12878] = 14, ACTIONS(3), 1, sym__comment, ACTIONS(13), 1, @@ -15608,16 +15601,16 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(19), 1, anon_sym_LBRACK, ACTIONS(21), 1, - anon_sym_none, + anon_sym_struct, ACTIONS(23), 1, + anon_sym_none, + ACTIONS(25), 1, anon_sym_some, - ACTIONS(513), 1, - anon_sym_LBRACE, - ACTIONS(604), 1, + ACTIONS(613), 1, sym_identifier, - ACTIONS(606), 1, + ACTIONS(615), 1, anon_sym_LPAREN, - STATE(56), 1, + STATE(50), 1, sym_index_expression, ACTIONS(15), 2, sym_float, @@ -15625,17 +15618,17 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(17), 2, anon_sym_true, anon_sym_false, - STATE(65), 2, + STATE(62), 2, sym_value, sym_index, - STATE(72), 6, + STATE(52), 6, sym_boolean, sym_list, - sym_map, + sym_structure, sym_option, sym_function, sym_built_in_value, - ACTIONS(37), 9, + ACTIONS(39), 9, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -15645,16 +15638,15 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12637] = 6, + [12937] = 5, ACTIONS(3), 1, sym__comment, - ACTIONS(612), 1, - anon_sym_DASH_GT, - STATE(206), 1, - sym_logic_operator, - STATE(210), 1, - sym_math_operator, - ACTIONS(198), 7, + ACTIONS(221), 1, + anon_sym_COLON, + ACTIONS(217), 2, + anon_sym_LPAREN, + anon_sym_RPAREN, + ACTIONS(215), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -15662,9 +15654,40 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(196), 19, + ACTIONS(213), 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, + [12977] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(289), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(287), 21, anon_sym_SEMI, anon_sym_LPAREN, + anon_sym_RPAREN, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_RBRACE, @@ -15682,208 +15705,99 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_EQ_GT, - [12680] = 7, + anon_sym_DASH_GT, + [13013] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(614), 1, + ACTIONS(277), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(221), 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, + [13049] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(293), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(291), 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, + [13085] = 5, + ACTIONS(3), 1, + sym__comment, + ACTIONS(617), 1, anon_sym_elseif, - ACTIONS(616), 1, - anon_sym_else, - STATE(290), 1, - sym_else, - STATE(244), 2, + STATE(243), 2, sym_else_if, aux_sym_if_else_repeat1, - ACTIONS(541), 9, + ACTIONS(544), 8, 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(543), 15, + ACTIONS(546), 17, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, 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, - [12725] = 14, - ACTIONS(3), 1, - sym__comment, - ACTIONS(168), 1, - sym_integer, - ACTIONS(174), 1, - anon_sym_LBRACK, - ACTIONS(176), 1, - anon_sym_none, - ACTIONS(178), 1, - anon_sym_some, - ACTIONS(429), 1, - anon_sym_LBRACE, - ACTIONS(600), 1, - sym_identifier, - ACTIONS(602), 1, - anon_sym_LPAREN, - STATE(107), 1, - sym_index_expression, - ACTIONS(170), 2, - sym_float, - sym_string, - ACTIONS(172), 2, - anon_sym_true, - anon_sym_false, - STATE(117), 2, - sym_value, - sym_index, - STATE(95), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(188), 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, - [12784] = 14, - ACTIONS(3), 1, - sym__comment, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(608), 1, - sym_identifier, - ACTIONS(610), 1, - anon_sym_LPAREN, - STATE(326), 1, - sym_index_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(260), 2, - sym_value, - sym_index, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [12843] = 14, - ACTIONS(3), 1, - sym__comment, - ACTIONS(134), 1, - sym_integer, - ACTIONS(140), 1, - anon_sym_LBRACK, - ACTIONS(142), 1, - anon_sym_none, - ACTIONS(144), 1, - anon_sym_some, - ACTIONS(346), 1, - anon_sym_LBRACE, - ACTIONS(608), 1, - sym_identifier, - ACTIONS(610), 1, - anon_sym_LPAREN, - STATE(254), 1, - sym_index_expression, - ACTIONS(136), 2, - sym_float, - sym_string, - ACTIONS(138), 2, - anon_sym_true, - anon_sym_false, - STATE(260), 2, - sym_value, - sym_index, - STATE(269), 6, - sym_boolean, - sym_list, - sym_map, - sym_option, - sym_function, - sym_built_in_value, - ACTIONS(158), 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, - [12902] = 7, - ACTIONS(3), 1, - sym__comment, - ACTIONS(614), 1, - anon_sym_elseif, - ACTIONS(616), 1, anon_sym_else, - STATE(288), 1, - sym_else, - STATE(266), 2, - sym_else_if, - aux_sym_if_else_repeat1, - ACTIONS(533), 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(535), 15, - sym_identifier, - sym_integer, - anon_sym_true, - anon_sym_false, - anon_sym_none, - anon_sym_some, anon_sym_args, anon_sym_assert_equal, anon_sym_env, @@ -15893,13 +15807,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [12947] = 4, + [13125] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(210), 2, - anon_sym_LPAREN, - anon_sym_RPAREN, - ACTIONS(208), 7, + ACTIONS(321), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -15907,38 +15818,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(206), 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, - [12985] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(292), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(290), 21, + ACTIONS(319), 21, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -15960,10 +15840,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [13021] = 3, + [13161] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(244), 7, + ACTIONS(217), 2, + anon_sym_LPAREN, + anon_sym_RPAREN, + ACTIONS(215), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -15971,7 +15854,38 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(242), 21, + ACTIONS(213), 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, + [13199] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(233), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(231), 21, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -15993,14 +15907,47 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [13057] = 5, + [13235] = 3, ACTIONS(3), 1, sym__comment, - STATE(204), 1, - sym_math_operator, - STATE(205), 1, + ACTIONS(229), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(227), 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, + [13271] = 5, + ACTIONS(3), 1, + sym__comment, + STATE(158), 1, sym_logic_operator, - ACTIONS(202), 7, + STATE(159), 1, + sym_math_operator, + ACTIONS(209), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -16008,7 +15955,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(200), 19, + ACTIONS(207), 19, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_COMMA, @@ -16028,10 +15975,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [13097] = 3, + [13311] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(316), 7, + ACTIONS(285), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -16039,7 +15986,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(314), 21, + ACTIONS(283), 21, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -16061,15 +16008,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [13133] = 5, + [13347] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(214), 1, - anon_sym_COLON, - ACTIONS(210), 2, - anon_sym_LPAREN, - anon_sym_RPAREN, - ACTIONS(208), 7, + ACTIONS(237), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -16077,37 +16019,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(206), 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, - [13173] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(222), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(220), 21, + ACTIONS(235), 21, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -16129,10 +16041,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [13209] = 3, + [13383] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(312), 7, + ACTIONS(297), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -16140,7 +16052,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(310), 21, + ACTIONS(295), 21, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -16162,10 +16074,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [13245] = 3, + [13419] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(280), 7, + ACTIONS(257), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -16173,7 +16085,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(278), 21, + ACTIONS(255), 21, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -16195,10 +16107,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [13281] = 3, + [13455] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(240), 7, + ACTIONS(620), 1, + anon_sym_DASH_GT, + STATE(158), 1, + sym_logic_operator, + STATE(159), 1, + sym_math_operator, + ACTIONS(199), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -16206,15 +16124,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(238), 21, + ACTIONS(197), 18, 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, @@ -16227,176 +16143,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS_EQ, anon_sym_DASH_EQ, anon_sym_EQ_GT, - anon_sym_DASH_GT, - [13317] = 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, - [13353] = 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, - [13389] = 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, - [13425] = 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, - [13461] = 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, [13497] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(268), 7, + ACTIONS(305), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -16404,7 +16154,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(214), 21, + ACTIONS(303), 21, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -16429,7 +16179,7 @@ static const uint16_t ts_small_parse_table[] = { [13533] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(272), 7, + ACTIONS(269), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -16437,7 +16187,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(270), 21, + ACTIONS(267), 21, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -16462,7 +16212,7 @@ static const uint16_t ts_small_parse_table[] = { [13569] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(304), 7, + ACTIONS(317), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -16470,7 +16220,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(302), 21, + ACTIONS(315), 21, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -16495,7 +16245,7 @@ static const uint16_t ts_small_parse_table[] = { [13605] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(236), 7, + ACTIONS(265), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -16503,7 +16253,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(234), 21, + ACTIONS(263), 21, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -16528,7 +16278,7 @@ static const uint16_t ts_small_parse_table[] = { [13641] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(308), 7, + ACTIONS(301), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -16536,7 +16286,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(306), 21, + ACTIONS(299), 21, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -16561,7 +16311,7 @@ static const uint16_t ts_small_parse_table[] = { [13677] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(296), 7, + ACTIONS(273), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -16569,7 +16319,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(294), 21, + ACTIONS(271), 21, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -16591,45 +16341,10 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [13713] = 5, + [13713] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(618), 1, - anon_sym_elseif, - STATE(266), 2, - sym_else_if, - aux_sym_if_else_repeat1, - ACTIONS(545), 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(547), 16, - sym_identifier, - 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, - [13753] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(226), 7, + ACTIONS(253), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -16637,7 +16352,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(224), 21, + ACTIONS(251), 21, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -16659,259 +16374,23 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [13789] = 3, + [13749] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(300), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(298), 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, - [13825] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(288), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(286), 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, - [13861] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(260), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(258), 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, - [13897] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(621), 1, - anon_sym_DASH_GT, - STATE(204), 1, - sym_math_operator, - STATE(205), 1, - sym_logic_operator, - ACTIONS(192), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(190), 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, - [13939] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(248), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(246), 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, - [13975] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(621), 1, - anon_sym_DASH_GT, - STATE(204), 1, - sym_math_operator, - STATE(205), 1, - sym_logic_operator, - ACTIONS(198), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(196), 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, - [14017] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(230), 7, - anon_sym_async, - sym_identifier, - anon_sym_EQ, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(228), 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, - [14053] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(625), 6, + ACTIONS(624), 6, anon_sym_LPAREN, anon_sym_LBRACE, sym_float, sym_string, anon_sym_LBRACK, anon_sym_asyncfor, - ACTIONS(623), 21, + ACTIONS(622), 22, anon_sym_async, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_if, @@ -16928,12 +16407,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [14088] = 4, + [13785] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(627), 1, - anon_sym_DOT_DOT, - ACTIONS(240), 7, + ACTIONS(620), 1, + anon_sym_DASH_GT, + STATE(158), 1, + sym_logic_operator, + STATE(159), 1, + sym_math_operator, + ACTIONS(205), 7, anon_sym_async, sym_identifier, anon_sym_EQ, @@ -16941,7 +16424,270 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(238), 19, + ACTIONS(203), 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, + [13827] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(241), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(239), 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, + [13863] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(245), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(243), 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, + [13899] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(281), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(279), 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, + [13935] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(249), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(247), 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, + [13971] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(309), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(307), 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, + [14007] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(261), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(259), 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, + [14043] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(313), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(311), 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, + [14079] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(626), 1, + anon_sym_DOT_DOT, + ACTIONS(245), 7, + anon_sym_async, + sym_identifier, + anon_sym_EQ, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(243), 19, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_COMMA, @@ -16961,25 +16707,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [14125] = 3, + [14116] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(234), 10, + ACTIONS(319), 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, anon_sym_elseif, - ACTIONS(236), 16, + ACTIONS(321), 17, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_else, @@ -16992,25 +16738,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [14159] = 3, + [14150] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(310), 10, + ACTIONS(295), 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, anon_sym_elseif, - ACTIONS(312), 16, + ACTIONS(297), 17, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_else, @@ -17023,25 +16769,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [14193] = 3, + [14184] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(228), 10, + ACTIONS(551), 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, anon_sym_elseif, - ACTIONS(230), 16, + ACTIONS(553), 17, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_else, @@ -17054,25 +16800,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [14227] = 3, + [14218] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(556), 10, + ACTIONS(555), 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, anon_sym_elseif, - ACTIONS(558), 16, + ACTIONS(557), 17, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_else, @@ -17085,25 +16831,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [14261] = 3, + [14252] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(552), 10, + ACTIONS(255), 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, anon_sym_elseif, - ACTIONS(554), 16, + ACTIONS(257), 17, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_else, @@ -17116,29 +16862,29 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [14295] = 10, + [14286] = 10, ACTIONS(3), 1, sym__comment, - ACTIONS(210), 1, + ACTIONS(217), 1, anon_sym_LPAREN, - ACTIONS(212), 1, + ACTIONS(219), 1, anon_sym_EQ, - ACTIONS(214), 1, + ACTIONS(221), 1, anon_sym_COLON, - ACTIONS(216), 1, + ACTIONS(223), 1, anon_sym_LT, - STATE(35), 1, + STATE(33), 1, sym_assignment_operator, - STATE(376), 1, + STATE(371), 1, sym_type_definition, - ACTIONS(218), 2, + ACTIONS(225), 2, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, - ACTIONS(208), 3, + ACTIONS(215), 3, anon_sym_PLUS, anon_sym_DASH, anon_sym_GT, - ACTIONS(206), 14, + ACTIONS(213), 14, anon_sym_SEMI, anon_sym_COMMA, anon_sym_RBRACE, @@ -17153,192 +16899,227 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_DASH_GT, - [14342] = 3, + [14333] = 8, ACTIONS(3), 1, sym__comment, - ACTIONS(596), 9, - anon_sym_SEMI, + ACTIONS(217), 1, anon_sym_LPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_STAR, - ACTIONS(598), 15, - sym_identifier, - 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, - [14374] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(592), 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(594), 15, - sym_identifier, - 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, - [14406] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(560), 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(562), 15, - sym_identifier, - 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, - [14438] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(322), 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(324), 15, - sym_identifier, - 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, - [14470] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(572), 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(574), 15, - sym_identifier, - 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, - [14502] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(584), 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(586), 15, - sym_identifier, - 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] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(214), 1, + ACTIONS(219), 1, + anon_sym_EQ, + ACTIONS(221), 1, anon_sym_COLON, - ACTIONS(336), 5, + STATE(29), 1, + sym_assignment_operator, + ACTIONS(225), 2, + anon_sym_PLUS_EQ, + anon_sym_DASH_EQ, + ACTIONS(215), 4, + anon_sym_PLUS, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(213), 14, + anon_sym_SEMI, + anon_sym_COMMA, + anon_sym_RBRACE, + sym_identifier, + 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, + [14375] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(325), 8, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + ACTIONS(327), 16, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + 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, + [14407] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(559), 8, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + ACTIONS(561), 16, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + 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, + [14439] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(406), 1, + anon_sym_SEMI, + ACTIONS(325), 7, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + ACTIONS(327), 16, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + 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, + [14473] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(575), 8, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + ACTIONS(577), 16, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + 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, + [14505] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(567), 8, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + ACTIONS(569), 16, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + 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, + [14537] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(563), 8, + anon_sym_SEMI, + anon_sym_LPAREN, + anon_sym_COMMA, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + ACTIONS(565), 16, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + 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, + [14569] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(221), 1, + anon_sym_COLON, + ACTIONS(339), 5, anon_sym_async, sym_identifier, anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(210), 18, + ACTIONS(217), 18, anon_sym_SEMI, anon_sym_LPAREN, anon_sym_RPAREN, @@ -17357,24 +17138,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LT_EQ, anon_sym_EQ_GT, anon_sym_DASH_GT, - [14568] = 3, + [14603] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(533), 9, + ACTIONS(571), 8, 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(535), 15, + ACTIONS(573), 16, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_args, @@ -17386,24 +17167,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [14600] = 3, + [14635] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(564), 9, + ACTIONS(587), 8, 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(566), 15, + ACTIONS(589), 16, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_args, @@ -17415,25 +17196,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [14632] = 4, + [14667] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(433), 1, + ACTIONS(591), 8, anon_sym_SEMI, - ACTIONS(322), 8, anon_sym_LPAREN, anon_sym_COMMA, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, anon_sym_LBRACK, anon_sym_STAR, - ACTIONS(324), 15, + ACTIONS(593), 16, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_args, @@ -17445,24 +17225,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [14666] = 3, + [14699] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(588), 9, + ACTIONS(595), 8, 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(590), 15, + ACTIONS(597), 16, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_args, @@ -17474,24 +17254,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [14698] = 3, + [14731] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(576), 9, + ACTIONS(532), 8, 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(578), 15, + ACTIONS(534), 16, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_args, @@ -17503,24 +17283,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [14730] = 3, + [14763] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(580), 9, + ACTIONS(583), 8, 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(582), 15, + ACTIONS(585), 16, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_args, @@ -17532,58 +17312,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [14762] = 8, + [14795] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(210), 1, - anon_sym_LPAREN, - ACTIONS(212), 1, - anon_sym_EQ, - ACTIONS(214), 1, - anon_sym_COLON, - STATE(37), 1, - sym_assignment_operator, - ACTIONS(218), 2, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - ACTIONS(208), 4, - anon_sym_PLUS, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(206), 14, - anon_sym_SEMI, - anon_sym_COMMA, - anon_sym_RBRACE, - sym_identifier, - 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, - [14804] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(568), 9, + ACTIONS(579), 8, 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(570), 15, + ACTIONS(581), 16, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_args, @@ -17595,51 +17341,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [14836] = 4, + [14827] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(633), 1, - anon_sym_COMMA, - ACTIONS(631), 7, - anon_sym_LPAREN, - anon_sym_LBRACE, - anon_sym_RBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - anon_sym_STAR, - ACTIONS(629), 15, - sym_identifier, - 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, - [14869] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(635), 1, + ACTIONS(628), 1, anon_sym_DASH_GT, STATE(166), 1, - sym_math_operator, - STATE(182), 1, sym_logic_operator, - ACTIONS(198), 5, + STATE(167), 1, + sym_math_operator, + ACTIONS(199), 5, anon_sym_async, sym_identifier, anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(196), 15, + ACTIONS(197), 15, anon_sym_SEMI, anon_sym_COMMA, anon_sym_LBRACE, @@ -17655,22 +17372,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_EQ_GT, - [14906] = 6, + [14864] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(635), 1, + ACTIONS(628), 1, anon_sym_DASH_GT, STATE(166), 1, - sym_math_operator, - STATE(182), 1, sym_logic_operator, - ACTIONS(192), 5, + STATE(167), 1, + sym_math_operator, + ACTIONS(205), 5, anon_sym_async, sym_identifier, anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(190), 15, + ACTIONS(203), 15, anon_sym_SEMI, anon_sym_COMMA, anon_sym_LBRACE, @@ -17686,22 +17403,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_EQ_GT, - [14943] = 3, + [14901] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(639), 7, + ACTIONS(634), 1, + anon_sym_COMMA, + ACTIONS(632), 6, anon_sym_LPAREN, - anon_sym_LBRACE, anon_sym_RBRACE, sym_float, sym_string, anon_sym_LBRACK, anon_sym_STAR, - ACTIONS(637), 15, + ACTIONS(630), 16, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_args, @@ -17713,21 +17432,74 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [14973] = 3, + [14934] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(484), 6, + ACTIONS(638), 6, + anon_sym_LPAREN, + anon_sym_RBRACE, + sym_float, + sym_string, + anon_sym_LBRACK, + anon_sym_STAR, + ACTIONS(636), 16, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + 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, + [14964] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(428), 5, + anon_sym_LPAREN, + anon_sym_RPAREN, + sym_float, + sym_string, + anon_sym_LBRACK, + ACTIONS(640), 16, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + 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, + [14993] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(472), 5, anon_sym_LPAREN, - anon_sym_LBRACE, sym_float, sym_string, anon_sym_LBRACK, anon_sym_RBRACK, - ACTIONS(641), 15, + ACTIONS(642), 16, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_args, @@ -17739,21 +17511,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [15002] = 3, + [15022] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(399), 6, + ACTIONS(646), 4, anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_LBRACE, sym_float, sym_string, anon_sym_LBRACK, - ACTIONS(643), 15, + ACTIONS(644), 16, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, + anon_sym_struct, anon_sym_none, anon_sym_some, anon_sym_args, @@ -17765,18 +17536,18 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_output, anon_sym_random, anon_sym_string, - [15031] = 5, + [15050] = 5, ACTIONS(3), 1, sym__comment, - STATE(160), 1, - sym_math_operator, - STATE(184), 1, + STATE(178), 1, sym_logic_operator, - ACTIONS(202), 3, + STATE(190), 1, + sym_math_operator, + ACTIONS(209), 3, anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(200), 15, + ACTIONS(207), 15, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COLON, @@ -17792,102 +17563,77 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_DASH_GT, - [15063] = 3, + [15082] = 10, ACTIONS(3), 1, sym__comment, - ACTIONS(647), 5, - anon_sym_LPAREN, - anon_sym_LBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - ACTIONS(645), 15, - sym_identifier, - 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, - [15091] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(651), 5, - anon_sym_LPAREN, - anon_sym_LBRACE, - sym_float, - sym_string, - anon_sym_LBRACK, - ACTIONS(649), 15, - sym_identifier, - 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, - [15119] = 10, - ACTIONS(3), 1, - sym__comment, - ACTIONS(330), 1, + ACTIONS(331), 1, anon_sym_DASH, - ACTIONS(433), 1, + ACTIONS(406), 1, anon_sym_SEMI, - ACTIONS(635), 1, + ACTIONS(628), 1, anon_sym_DASH_GT, STATE(166), 1, - sym_math_operator, - STATE(182), 1, sym_logic_operator, - ACTIONS(334), 2, + STATE(167), 1, + sym_math_operator, + ACTIONS(335), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(322), 3, + ACTIONS(325), 3, anon_sym_COMMA, anon_sym_RBRACE, sym_identifier, - ACTIONS(328), 4, + ACTIONS(329), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(332), 6, + ACTIONS(333), 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, - [15161] = 6, + [15124] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(612), 1, + ACTIONS(650), 4, + anon_sym_LPAREN, + sym_float, + sym_string, + anon_sym_LBRACK, + ACTIONS(648), 16, + sym_identifier, + sym_integer, + anon_sym_true, + anon_sym_false, + anon_sym_struct, + 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, + [15152] = 6, + ACTIONS(3), 1, + sym__comment, + ACTIONS(599), 1, anon_sym_DASH_GT, - STATE(160), 1, - sym_math_operator, - STATE(184), 1, + STATE(178), 1, sym_logic_operator, - ACTIONS(198), 3, + STATE(190), 1, + sym_math_operator, + ACTIONS(199), 3, anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(196), 14, + ACTIONS(197), 14, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COLON, @@ -17902,20 +17648,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [15195] = 6, + [15186] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(612), 1, + ACTIONS(599), 1, anon_sym_DASH_GT, - STATE(160), 1, - sym_math_operator, - STATE(184), 1, + STATE(178), 1, sym_logic_operator, - ACTIONS(192), 3, + STATE(190), 1, + sym_math_operator, + ACTIONS(205), 3, anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(190), 14, + ACTIONS(203), 14, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COLON, @@ -17930,618 +17676,621 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [15229] = 9, + [15220] = 9, ACTIONS(3), 1, sym__comment, - ACTIONS(330), 1, + ACTIONS(331), 1, anon_sym_DASH, - ACTIONS(635), 1, + ACTIONS(628), 1, anon_sym_DASH_GT, STATE(166), 1, - sym_math_operator, - STATE(182), 1, sym_logic_operator, - ACTIONS(334), 2, + STATE(167), 1, + sym_math_operator, + ACTIONS(335), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(322), 4, + ACTIONS(325), 4, anon_sym_SEMI, anon_sym_COMMA, anon_sym_RBRACE, sym_identifier, - ACTIONS(328), 4, + ACTIONS(329), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(332), 6, + ACTIONS(333), 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, - [15269] = 6, + [15260] = 11, ACTIONS(3), 1, sym__comment, - ACTIONS(653), 1, - anon_sym_DASH_GT, - STATE(200), 1, - sym_math_operator, - STATE(201), 1, - sym_logic_operator, - ACTIONS(198), 3, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(196), 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, - [15302] = 11, - ACTIONS(3), 1, - sym__comment, - ACTIONS(330), 1, - anon_sym_DASH, - ACTIONS(635), 1, - anon_sym_DASH_GT, - ACTIONS(655), 1, - anon_sym_async, - ACTIONS(657), 1, + ACTIONS(171), 1, anon_sym_LBRACE, - STATE(166), 1, - sym_math_operator, - STATE(182), 1, - sym_logic_operator, - STATE(287), 1, - sym_block, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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, - [15345] = 11, - ACTIONS(3), 1, - sym__comment, - ACTIONS(330), 1, + ACTIONS(331), 1, anon_sym_DASH, - ACTIONS(635), 1, + ACTIONS(628), 1, anon_sym_DASH_GT, - ACTIONS(659), 1, + ACTIONS(652), 1, anon_sym_async, - ACTIONS(661), 1, - anon_sym_LBRACE, STATE(166), 1, - sym_math_operator, - STATE(182), 1, sym_logic_operator, - STATE(280), 1, - sym_block, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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, - [15388] = 11, - ACTIONS(3), 1, - sym__comment, - ACTIONS(330), 1, - anon_sym_DASH, - ACTIONS(635), 1, - anon_sym_DASH_GT, - ACTIONS(663), 1, - anon_sym_async, - ACTIONS(665), 1, - anon_sym_LBRACE, - STATE(166), 1, + STATE(167), 1, sym_math_operator, - STATE(182), 1, - sym_logic_operator, - STATE(287), 1, - sym_block, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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, - [15431] = 5, - ACTIONS(3), 1, - sym__comment, - STATE(200), 1, - sym_math_operator, - STATE(201), 1, - sym_logic_operator, - ACTIONS(202), 3, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(200), 14, - 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, - anon_sym_DASH_GT, - [15462] = 11, - ACTIONS(3), 1, - sym__comment, - ACTIONS(330), 1, - anon_sym_DASH, - ACTIONS(635), 1, - anon_sym_DASH_GT, - ACTIONS(667), 1, - anon_sym_async, - ACTIONS(669), 1, - anon_sym_LBRACE, - STATE(166), 1, - sym_math_operator, - STATE(182), 1, - sym_logic_operator, - STATE(225), 1, - sym_block, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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, - [15505] = 11, - ACTIONS(3), 1, - sym__comment, - ACTIONS(330), 1, - anon_sym_DASH, - ACTIONS(635), 1, - anon_sym_DASH_GT, - ACTIONS(671), 1, - anon_sym_async, - ACTIONS(673), 1, - anon_sym_LBRACE, - STATE(166), 1, - sym_math_operator, - STATE(182), 1, - sym_logic_operator, - STATE(216), 1, - sym_block, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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, - [15548] = 11, - ACTIONS(3), 1, - sym__comment, - ACTIONS(330), 1, - anon_sym_DASH, - ACTIONS(635), 1, - anon_sym_DASH_GT, - ACTIONS(671), 1, - anon_sym_async, - ACTIONS(673), 1, - anon_sym_LBRACE, - STATE(166), 1, - sym_math_operator, - STATE(182), 1, - sym_logic_operator, - STATE(219), 1, - sym_block, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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, - [15591] = 11, - ACTIONS(3), 1, - sym__comment, - ACTIONS(330), 1, - anon_sym_DASH, - ACTIONS(635), 1, - anon_sym_DASH_GT, - ACTIONS(663), 1, - anon_sym_async, - ACTIONS(665), 1, - anon_sym_LBRACE, - STATE(166), 1, - sym_math_operator, - STATE(182), 1, - sym_logic_operator, - STATE(283), 1, - sym_block, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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, - [15634] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(653), 1, - anon_sym_DASH_GT, - STATE(200), 1, - sym_math_operator, - STATE(201), 1, - sym_logic_operator, - ACTIONS(192), 3, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(190), 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, - [15667] = 11, - ACTIONS(3), 1, - sym__comment, - ACTIONS(330), 1, - anon_sym_DASH, - ACTIONS(635), 1, - anon_sym_DASH_GT, - ACTIONS(667), 1, - anon_sym_async, - ACTIONS(669), 1, - anon_sym_LBRACE, - STATE(166), 1, - sym_math_operator, - STATE(182), 1, - sym_logic_operator, - STATE(232), 1, - sym_block, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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, - [15710] = 11, - ACTIONS(3), 1, - sym__comment, - ACTIONS(330), 1, - anon_sym_DASH, - ACTIONS(635), 1, - anon_sym_DASH_GT, - ACTIONS(655), 1, - anon_sym_async, - ACTIONS(657), 1, - anon_sym_LBRACE, - STATE(166), 1, - sym_math_operator, - STATE(182), 1, - sym_logic_operator, - STATE(283), 1, - sym_block, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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, - [15753] = 11, - ACTIONS(3), 1, - sym__comment, - ACTIONS(330), 1, - anon_sym_DASH, - ACTIONS(635), 1, - anon_sym_DASH_GT, - ACTIONS(659), 1, - anon_sym_async, - ACTIONS(661), 1, - anon_sym_LBRACE, - STATE(166), 1, - sym_math_operator, - STATE(182), 1, - sym_logic_operator, STATE(281), 1, sym_block, - ACTIONS(334), 2, + ACTIONS(335), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(328), 4, + ACTIONS(329), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(332), 6, + ACTIONS(333), 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, - [15796] = 4, + [15303] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(210), 1, - anon_sym_LPAREN, - ACTIONS(208), 3, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(206), 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, + ACTIONS(654), 1, anon_sym_DASH_GT, - [15824] = 5, - ACTIONS(3), 1, - sym__comment, - ACTIONS(210), 1, - anon_sym_LPAREN, - ACTIONS(214), 1, - anon_sym_COLON, - ACTIONS(208), 3, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(206), 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, - [15854] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(675), 1, - anon_sym_DOT_DOT, - ACTIONS(240), 3, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(238), 14, - 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, - anon_sym_DASH_GT, - [15882] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(679), 1, - anon_sym_DASH_GT, - ACTIONS(677), 17, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_none, - anon_sym_GT, - 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, - [15908] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(683), 1, - anon_sym_DASH_GT, - ACTIONS(681), 17, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_none, - anon_sym_GT, - 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, - [15934] = 7, - ACTIONS(3), 1, - sym__comment, - ACTIONS(214), 1, - anon_sym_COLON, - ACTIONS(216), 1, - anon_sym_LT, - STATE(392), 1, - sym_type_definition, - ACTIONS(208), 2, - anon_sym_DASH, - anon_sym_GT, - ACTIONS(210), 2, - anon_sym_LPAREN, - anon_sym_RPAREN, - ACTIONS(206), 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, - [15968] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(685), 17, - anon_sym_LPAREN, - anon_sym_RPAREN, - anon_sym_COMMA, - anon_sym_LBRACE, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_none, - anon_sym_GT, - 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, - [15991] = 6, - ACTIONS(3), 1, - sym__comment, - ACTIONS(687), 1, - anon_sym_DASH_GT, - STATE(158), 1, + STATE(163), 1, sym_logic_operator, - STATE(178), 1, + STATE(164), 1, sym_math_operator, - ACTIONS(198), 3, + ACTIONS(199), 3, anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(196), 11, + ACTIONS(197), 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, + [15336] = 6, + ACTIONS(3), 1, + sym__comment, + ACTIONS(654), 1, + anon_sym_DASH_GT, + STATE(163), 1, + sym_logic_operator, + STATE(164), 1, + sym_math_operator, + ACTIONS(205), 3, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(203), 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, + [15369] = 11, + ACTIONS(3), 1, + sym__comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(331), 1, + anon_sym_DASH, + ACTIONS(628), 1, + anon_sym_DASH_GT, + ACTIONS(656), 1, + anon_sym_async, + STATE(166), 1, + sym_logic_operator, + STATE(167), 1, + sym_math_operator, + STATE(222), 1, + sym_block, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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, + [15412] = 11, + ACTIONS(3), 1, + sym__comment, + ACTIONS(331), 1, + anon_sym_DASH, + ACTIONS(628), 1, + anon_sym_DASH_GT, + ACTIONS(658), 1, + anon_sym_async, + ACTIONS(660), 1, + anon_sym_LBRACE, + STATE(166), 1, + sym_logic_operator, + STATE(167), 1, + sym_math_operator, + STATE(274), 1, + sym_block, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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, + [15455] = 5, + ACTIONS(3), 1, + sym__comment, + STATE(163), 1, + sym_logic_operator, + STATE(164), 1, + sym_math_operator, + ACTIONS(209), 3, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(207), 14, + 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, + anon_sym_DASH_GT, + [15486] = 11, + ACTIONS(3), 1, + sym__comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(331), 1, + anon_sym_DASH, + ACTIONS(628), 1, + anon_sym_DASH_GT, + ACTIONS(656), 1, + anon_sym_async, + STATE(166), 1, + sym_logic_operator, + STATE(167), 1, + sym_math_operator, + STATE(218), 1, + sym_block, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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, + [15529] = 11, + ACTIONS(3), 1, + sym__comment, + ACTIONS(135), 1, + anon_sym_LBRACE, + ACTIONS(331), 1, + anon_sym_DASH, + ACTIONS(628), 1, + anon_sym_DASH_GT, + ACTIONS(662), 1, + anon_sym_async, + STATE(166), 1, + sym_logic_operator, + STATE(167), 1, + sym_math_operator, + STATE(281), 1, + sym_block, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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, + [15572] = 11, + ACTIONS(3), 1, + sym__comment, + ACTIONS(331), 1, + anon_sym_DASH, + ACTIONS(628), 1, + anon_sym_DASH_GT, + ACTIONS(664), 1, + anon_sym_async, + ACTIONS(666), 1, + anon_sym_LBRACE, + STATE(166), 1, + sym_logic_operator, + STATE(167), 1, + sym_math_operator, + STATE(210), 1, + sym_block, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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, + [15615] = 11, + ACTIONS(3), 1, + sym__comment, + ACTIONS(135), 1, + anon_sym_LBRACE, + ACTIONS(331), 1, + anon_sym_DASH, + ACTIONS(628), 1, + anon_sym_DASH_GT, + ACTIONS(662), 1, + anon_sym_async, + STATE(166), 1, + sym_logic_operator, + STATE(167), 1, + sym_math_operator, + STATE(287), 1, + sym_block, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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, + [15658] = 11, + ACTIONS(3), 1, + sym__comment, + ACTIONS(331), 1, + anon_sym_DASH, + ACTIONS(628), 1, + anon_sym_DASH_GT, + ACTIONS(658), 1, + anon_sym_async, + ACTIONS(660), 1, + anon_sym_LBRACE, + STATE(166), 1, + sym_logic_operator, + STATE(167), 1, + sym_math_operator, + STATE(273), 1, + sym_block, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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, + [15701] = 11, + ACTIONS(3), 1, + sym__comment, + ACTIONS(331), 1, + anon_sym_DASH, + ACTIONS(628), 1, + anon_sym_DASH_GT, + ACTIONS(664), 1, + anon_sym_async, + ACTIONS(666), 1, + anon_sym_LBRACE, + STATE(166), 1, + sym_logic_operator, + STATE(167), 1, + sym_math_operator, + STATE(213), 1, + sym_block, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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, + [15744] = 11, + ACTIONS(3), 1, + sym__comment, + ACTIONS(171), 1, + anon_sym_LBRACE, + ACTIONS(331), 1, + anon_sym_DASH, + ACTIONS(628), 1, + anon_sym_DASH_GT, + ACTIONS(652), 1, + anon_sym_async, + STATE(166), 1, + sym_logic_operator, + STATE(167), 1, + sym_math_operator, + STATE(287), 1, + sym_block, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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, + [15787] = 5, + ACTIONS(3), 1, + sym__comment, + ACTIONS(217), 1, + anon_sym_LPAREN, + ACTIONS(221), 1, + anon_sym_COLON, + ACTIONS(215), 3, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(213), 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, + [15817] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(672), 1, + anon_sym_DASH_GT, + ACTIONS(670), 7, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_GT, + ACTIONS(668), 10, + sym_identifier, + anon_sym_none, + anon_sym_any, + anon_sym_bool, + anon_sym_collection, + anon_sym_float, + anon_sym_int, + anon_sym_num, + anon_sym_str, + anon_sym_option, + [15845] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(678), 1, + anon_sym_DASH_GT, + ACTIONS(676), 7, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_GT, + ACTIONS(674), 10, + sym_identifier, + anon_sym_none, + anon_sym_any, + anon_sym_bool, + anon_sym_collection, + anon_sym_float, + anon_sym_int, + anon_sym_num, + anon_sym_str, + anon_sym_option, + [15873] = 7, + ACTIONS(3), 1, + sym__comment, + ACTIONS(221), 1, + anon_sym_COLON, + ACTIONS(223), 1, + anon_sym_LT, + STATE(387), 1, + sym_type_definition, + ACTIONS(215), 2, + anon_sym_DASH, + anon_sym_GT, + ACTIONS(217), 2, + anon_sym_LPAREN, + anon_sym_RPAREN, + ACTIONS(213), 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, + [15907] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(217), 1, + anon_sym_LPAREN, + ACTIONS(215), 3, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(213), 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, + [15935] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(680), 1, + anon_sym_DOT_DOT, + ACTIONS(245), 3, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(243), 14, + 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, + anon_sym_DASH_GT, + [15963] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(684), 7, + anon_sym_LPAREN, + anon_sym_RPAREN, + anon_sym_COMMA, + anon_sym_LBRACE, + anon_sym_LBRACK, + anon_sym_RBRACK, + anon_sym_GT, + ACTIONS(682), 10, + sym_identifier, + anon_sym_none, + anon_sym_any, + anon_sym_bool, + anon_sym_collection, + anon_sym_float, + anon_sym_int, + anon_sym_num, + anon_sym_str, + anon_sym_option, + [15988] = 6, + ACTIONS(3), 1, + sym__comment, + ACTIONS(686), 1, + anon_sym_DASH_GT, + STATE(185), 1, + sym_math_operator, + STATE(186), 1, + sym_logic_operator, + ACTIONS(205), 3, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(203), 11, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_STAR, @@ -18553,48 +18302,48 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [16022] = 9, + [16019] = 9, ACTIONS(3), 1, sym__comment, - ACTIONS(330), 1, + ACTIONS(331), 1, anon_sym_DASH, - ACTIONS(635), 1, + ACTIONS(628), 1, anon_sym_DASH_GT, - ACTIONS(689), 1, + ACTIONS(688), 1, anon_sym_EQ_GT, STATE(166), 1, - sym_math_operator, - STATE(182), 1, sym_logic_operator, - ACTIONS(334), 2, + STATE(167), 1, + sym_math_operator, + ACTIONS(335), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(328), 4, + ACTIONS(329), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(332), 6, + ACTIONS(333), 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, - [16059] = 6, + [16056] = 6, ACTIONS(3), 1, sym__comment, - ACTIONS(687), 1, + ACTIONS(686), 1, anon_sym_DASH_GT, - STATE(158), 1, - sym_logic_operator, - STATE(178), 1, + STATE(185), 1, sym_math_operator, - ACTIONS(192), 3, + STATE(186), 1, + sym_logic_operator, + ACTIONS(199), 3, anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(190), 11, + ACTIONS(197), 11, anon_sym_RPAREN, anon_sym_PLUS, anon_sym_STAR, @@ -18606,326 +18355,453 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE_PIPE, anon_sym_GT_EQ, anon_sym_LT_EQ, - [16090] = 2, + [16087] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(691), 17, + ACTIONS(670), 7, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_RBRACK, - anon_sym_none, anon_sym_GT, + ACTIONS(668), 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, anon_sym_option, - [16113] = 9, + [16112] = 9, ACTIONS(3), 1, sym__comment, - ACTIONS(330), 1, + ACTIONS(331), 1, anon_sym_DASH, - ACTIONS(635), 1, + ACTIONS(628), 1, anon_sym_DASH_GT, - ACTIONS(693), 1, + ACTIONS(690), 1, anon_sym_LBRACE, STATE(166), 1, - sym_math_operator, - STATE(182), 1, sym_logic_operator, - ACTIONS(334), 2, + STATE(167), 1, + sym_math_operator, + ACTIONS(335), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(328), 4, + ACTIONS(329), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(332), 6, + ACTIONS(333), 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, - [16150] = 9, + [16149] = 9, ACTIONS(3), 1, sym__comment, - ACTIONS(330), 1, + ACTIONS(331), 1, anon_sym_DASH, - ACTIONS(687), 1, + ACTIONS(686), 1, anon_sym_DASH_GT, - ACTIONS(695), 1, + ACTIONS(692), 1, anon_sym_RPAREN, - STATE(158), 1, - sym_logic_operator, - STATE(178), 1, + STATE(185), 1, sym_math_operator, - ACTIONS(334), 2, + STATE(186), 1, + sym_logic_operator, + ACTIONS(335), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(328), 4, + ACTIONS(329), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(332), 6, + ACTIONS(333), 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, - [16187] = 2, + [16186] = 9, ACTIONS(3), 1, sym__comment, - ACTIONS(697), 17, + ACTIONS(331), 1, + anon_sym_DASH, + ACTIONS(628), 1, + anon_sym_DASH_GT, + ACTIONS(694), 1, + anon_sym_LBRACE, + STATE(166), 1, + sym_logic_operator, + STATE(167), 1, + sym_math_operator, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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, + [16223] = 9, + ACTIONS(3), 1, + sym__comment, + ACTIONS(331), 1, + anon_sym_DASH, + ACTIONS(686), 1, + anon_sym_DASH_GT, + ACTIONS(696), 1, + anon_sym_RPAREN, + STATE(185), 1, + sym_math_operator, + STATE(186), 1, + sym_logic_operator, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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, + [16260] = 9, + ACTIONS(3), 1, + sym__comment, + ACTIONS(331), 1, + anon_sym_DASH, + ACTIONS(686), 1, + anon_sym_DASH_GT, + ACTIONS(698), 1, + anon_sym_RPAREN, + STATE(185), 1, + sym_math_operator, + STATE(186), 1, + sym_logic_operator, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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, + [16297] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(702), 7, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_RBRACK, - anon_sym_none, anon_sym_GT, + ACTIONS(700), 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, anon_sym_option, - [16210] = 9, + [16322] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(330), 1, - anon_sym_DASH, - ACTIONS(687), 1, - anon_sym_DASH_GT, - ACTIONS(699), 1, - anon_sym_RPAREN, - STATE(158), 1, - sym_logic_operator, - STATE(178), 1, - sym_math_operator, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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, - [16247] = 9, - ACTIONS(3), 1, - sym__comment, - ACTIONS(330), 1, - anon_sym_DASH, - ACTIONS(635), 1, - anon_sym_DASH_GT, - ACTIONS(701), 1, - anon_sym_LBRACE, - STATE(166), 1, - sym_math_operator, - STATE(182), 1, - sym_logic_operator, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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, - [16284] = 9, - ACTIONS(3), 1, - sym__comment, - ACTIONS(330), 1, - anon_sym_DASH, - ACTIONS(687), 1, - anon_sym_DASH_GT, - ACTIONS(703), 1, - anon_sym_RPAREN, - STATE(158), 1, - sym_logic_operator, - STATE(178), 1, - sym_math_operator, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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, - [16321] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(681), 17, + ACTIONS(706), 7, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_LBRACE, anon_sym_LBRACK, anon_sym_RBRACK, - anon_sym_none, anon_sym_GT, + ACTIONS(704), 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, anon_sym_option, - [16344] = 8, + [16347] = 5, ACTIONS(3), 1, sym__comment, - ACTIONS(330), 1, - anon_sym_DASH, - ACTIONS(621), 1, - anon_sym_DASH_GT, - STATE(166), 1, - sym_math_operator, - STATE(182), 1, - sym_logic_operator, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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, - [16378] = 8, - ACTIONS(3), 1, - sym__comment, - ACTIONS(330), 1, - anon_sym_DASH, - ACTIONS(687), 1, - anon_sym_DASH_GT, - STATE(166), 1, - sym_math_operator, - STATE(182), 1, - sym_logic_operator, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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, - [16412] = 9, - ACTIONS(3), 1, - sym__comment, - ACTIONS(705), 1, + ACTIONS(217), 1, anon_sym_LPAREN, - ACTIONS(707), 1, + ACTIONS(708), 1, anon_sym_RPAREN, - ACTIONS(709), 1, - anon_sym_LBRACE, - ACTIONS(711), 1, - anon_sym_LBRACK, + ACTIONS(215), 3, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(213), 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, + [16375] = 8, + ACTIONS(3), 1, + sym__comment, + ACTIONS(331), 1, + anon_sym_DASH, + ACTIONS(686), 1, + anon_sym_DASH_GT, + STATE(166), 1, + sym_logic_operator, + STATE(167), 1, + sym_math_operator, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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, + [16409] = 5, + ACTIONS(3), 1, + sym__comment, + ACTIONS(217), 1, + anon_sym_LPAREN, + ACTIONS(710), 1, + anon_sym_RPAREN, + ACTIONS(215), 3, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(213), 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, + [16437] = 8, + ACTIONS(3), 1, + sym__comment, + ACTIONS(331), 1, + anon_sym_DASH, + ACTIONS(686), 1, + anon_sym_DASH_GT, + STATE(185), 1, + sym_math_operator, + STATE(186), 1, + sym_logic_operator, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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, + [16471] = 8, + ACTIONS(3), 1, + sym__comment, + ACTIONS(331), 1, + anon_sym_DASH, + ACTIONS(599), 1, + anon_sym_DASH_GT, + STATE(166), 1, + sym_logic_operator, + STATE(167), 1, + sym_math_operator, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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, + [16505] = 8, + ACTIONS(3), 1, + sym__comment, + ACTIONS(331), 1, + anon_sym_DASH, + ACTIONS(654), 1, + anon_sym_DASH_GT, + STATE(166), 1, + sym_logic_operator, + STATE(167), 1, + sym_math_operator, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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, + [16539] = 9, + ACTIONS(3), 1, + sym__comment, ACTIONS(715), 1, + anon_sym_LPAREN, + ACTIONS(718), 1, + anon_sym_RPAREN, + ACTIONS(720), 1, + anon_sym_LBRACE, + ACTIONS(723), 1, + anon_sym_LBRACK, + ACTIONS(726), 1, anon_sym_option, - STATE(347), 1, + STATE(342), 1, aux_sym_type_repeat1, - STATE(361), 1, + STATE(356), 1, sym_type, - ACTIONS(713), 9, + ACTIONS(712), 9, + 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, - [16448] = 8, + [16575] = 8, ACTIONS(3), 1, sym__comment, - ACTIONS(194), 1, + ACTIONS(323), 1, anon_sym_DASH_GT, - ACTIONS(330), 1, + ACTIONS(331), 1, anon_sym_DASH, STATE(166), 1, - sym_math_operator, - STATE(182), 1, sym_logic_operator, - ACTIONS(334), 2, + STATE(167), 1, + sym_math_operator, + ACTIONS(335), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(328), 4, + ACTIONS(329), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(332), 6, + ACTIONS(333), 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, - [16482] = 5, + [16609] = 8, ACTIONS(3), 1, sym__comment, - ACTIONS(210), 1, + ACTIONS(211), 1, + anon_sym_DASH_GT, + ACTIONS(331), 1, + anon_sym_DASH, + STATE(166), 1, + sym_logic_operator, + STATE(167), 1, + sym_math_operator, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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, + [16643] = 5, + ACTIONS(3), 1, + sym__comment, + ACTIONS(217), 1, anon_sym_LPAREN, - ACTIONS(717), 1, + ACTIONS(729), 1, anon_sym_RPAREN, - ACTIONS(208), 3, + ACTIONS(215), 3, anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(206), 11, + ACTIONS(213), 11, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, @@ -18937,392 +18813,290 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_DASH_GT, - [16510] = 9, + [16671] = 8, + ACTIONS(3), 1, + sym__comment, + ACTIONS(331), 1, + anon_sym_DASH, + ACTIONS(628), 1, + anon_sym_DASH_GT, + STATE(166), 1, + sym_logic_operator, + STATE(167), 1, + sym_math_operator, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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, + [16705] = 8, + ACTIONS(3), 1, + sym__comment, + ACTIONS(201), 1, + anon_sym_DASH_GT, + ACTIONS(331), 1, + anon_sym_DASH, + STATE(166), 1, + sym_logic_operator, + STATE(167), 1, + sym_math_operator, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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, + [16739] = 9, ACTIONS(3), 1, sym__comment, - ACTIONS(719), 1, - anon_sym_LPAREN, - ACTIONS(722), 1, - anon_sym_RPAREN, - ACTIONS(724), 1, - anon_sym_LBRACE, - ACTIONS(727), 1, - anon_sym_LBRACK, ACTIONS(733), 1, - anon_sym_option, - STATE(347), 1, - aux_sym_type_repeat1, - STATE(361), 1, - sym_type, - ACTIONS(730), 9, - 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, - [16546] = 8, - ACTIONS(3), 1, - sym__comment, - ACTIONS(330), 1, - anon_sym_DASH, - ACTIONS(687), 1, - anon_sym_DASH_GT, - STATE(158), 1, - sym_logic_operator, - STATE(178), 1, - sym_math_operator, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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, - [16580] = 8, - ACTIONS(3), 1, - sym__comment, - ACTIONS(204), 1, - anon_sym_DASH_GT, - ACTIONS(330), 1, - anon_sym_DASH, - STATE(166), 1, - sym_math_operator, - STATE(182), 1, - sym_logic_operator, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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, - [16614] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(210), 2, anon_sym_LPAREN, + ACTIONS(735), 1, anon_sym_RPAREN, - ACTIONS(208), 3, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(206), 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, - [16640] = 8, - ACTIONS(3), 1, - sym__comment, - ACTIONS(318), 1, - anon_sym_DASH_GT, - ACTIONS(330), 1, - anon_sym_DASH, - STATE(166), 1, - sym_math_operator, - STATE(182), 1, - sym_logic_operator, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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, - [16674] = 5, - ACTIONS(3), 1, - sym__comment, - ACTIONS(210), 1, - anon_sym_LPAREN, - ACTIONS(736), 1, - anon_sym_RPAREN, - ACTIONS(208), 3, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(206), 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, - [16702] = 5, - ACTIONS(3), 1, - sym__comment, - ACTIONS(210), 1, - anon_sym_LPAREN, - ACTIONS(738), 1, - anon_sym_RPAREN, - ACTIONS(208), 3, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(206), 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, - [16730] = 8, - ACTIONS(3), 1, - sym__comment, - ACTIONS(320), 1, - anon_sym_DASH_GT, - ACTIONS(330), 1, - anon_sym_DASH, - STATE(166), 1, - sym_math_operator, - STATE(182), 1, - sym_logic_operator, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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, - [16764] = 8, - ACTIONS(3), 1, - sym__comment, - ACTIONS(330), 1, - anon_sym_DASH, - ACTIONS(612), 1, - anon_sym_DASH_GT, - STATE(166), 1, - sym_math_operator, - STATE(182), 1, - sym_logic_operator, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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, - [16798] = 8, - ACTIONS(3), 1, - sym__comment, - ACTIONS(330), 1, - anon_sym_DASH, - ACTIONS(338), 1, - anon_sym_DASH_GT, - STATE(166), 1, - sym_math_operator, - STATE(182), 1, - sym_logic_operator, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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, - [16832] = 8, - ACTIONS(3), 1, - sym__comment, - ACTIONS(330), 1, - anon_sym_DASH, - ACTIONS(342), 1, - anon_sym_DASH_GT, - STATE(166), 1, - sym_math_operator, - STATE(182), 1, - sym_logic_operator, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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, - [16866] = 8, - ACTIONS(3), 1, - sym__comment, - ACTIONS(330), 1, - anon_sym_DASH, - ACTIONS(635), 1, - anon_sym_DASH_GT, - STATE(166), 1, - sym_math_operator, - STATE(182), 1, - sym_logic_operator, - ACTIONS(334), 2, - anon_sym_GT, - anon_sym_LT, - ACTIONS(328), 4, - anon_sym_PLUS, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PERCENT, - ACTIONS(332), 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, - [16900] = 9, - ACTIONS(3), 1, - sym__comment, - ACTIONS(705), 1, - anon_sym_LPAREN, - ACTIONS(709), 1, + ACTIONS(737), 1, anon_sym_LBRACE, - ACTIONS(711), 1, + ACTIONS(739), 1, anon_sym_LBRACK, - ACTIONS(715), 1, + ACTIONS(741), 1, anon_sym_option, - ACTIONS(740), 1, - anon_sym_RPAREN, - STATE(344), 1, + STATE(349), 1, aux_sym_type_repeat1, - STATE(361), 1, + STATE(356), 1, sym_type, - ACTIONS(713), 9, + ACTIONS(731), 9, + 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, - [16936] = 8, + [16775] = 9, ACTIONS(3), 1, sym__comment, - ACTIONS(330), 1, + ACTIONS(733), 1, + anon_sym_LPAREN, + ACTIONS(737), 1, + anon_sym_LBRACE, + ACTIONS(739), 1, + anon_sym_LBRACK, + ACTIONS(741), 1, + anon_sym_option, + ACTIONS(743), 1, + anon_sym_RPAREN, + STATE(342), 1, + aux_sym_type_repeat1, + STATE(356), 1, + sym_type, + ACTIONS(731), 9, + sym_identifier, + anon_sym_none, + anon_sym_any, + anon_sym_bool, + anon_sym_collection, + anon_sym_float, + anon_sym_int, + anon_sym_num, + anon_sym_str, + [16811] = 8, + ACTIONS(3), 1, + sym__comment, + ACTIONS(331), 1, anon_sym_DASH, - ACTIONS(653), 1, + ACTIONS(347), 1, anon_sym_DASH_GT, STATE(166), 1, - sym_math_operator, - STATE(182), 1, sym_logic_operator, - ACTIONS(334), 2, + STATE(167), 1, + sym_math_operator, + ACTIONS(335), 2, anon_sym_GT, anon_sym_LT, - ACTIONS(328), 4, + ACTIONS(329), 4, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, anon_sym_PERCENT, - ACTIONS(332), 6, + ACTIONS(333), 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, - [16970] = 3, + [16845] = 8, ACTIONS(3), 1, sym__comment, - ACTIONS(744), 1, + ACTIONS(331), 1, + anon_sym_DASH, + ACTIONS(343), 1, + anon_sym_DASH_GT, + STATE(166), 1, + sym_logic_operator, + STATE(167), 1, + sym_math_operator, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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, + [16879] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(217), 2, + anon_sym_LPAREN, + anon_sym_RPAREN, + ACTIONS(215), 3, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(213), 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, + [16905] = 8, + ACTIONS(3), 1, + sym__comment, + ACTIONS(331), 1, + anon_sym_DASH, + ACTIONS(620), 1, + anon_sym_DASH_GT, + STATE(166), 1, + sym_logic_operator, + STATE(167), 1, + sym_math_operator, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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, + [16939] = 8, + ACTIONS(3), 1, + sym__comment, + ACTIONS(331), 1, + anon_sym_DASH, + ACTIONS(341), 1, + anon_sym_DASH_GT, + STATE(166), 1, + sym_logic_operator, + STATE(167), 1, + sym_math_operator, + ACTIONS(335), 2, + anon_sym_GT, + anon_sym_LT, + ACTIONS(329), 4, + anon_sym_PLUS, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PERCENT, + ACTIONS(333), 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, + [16973] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(745), 1, + anon_sym_RPAREN, + ACTIONS(237), 3, + anon_sym_DASH, + anon_sym_GT, + anon_sym_LT, + ACTIONS(235), 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, + [16998] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(751), 1, anon_sym_COMMA, - ACTIONS(742), 14, + ACTIONS(749), 4, anon_sym_LPAREN, anon_sym_RPAREN, anon_sym_LBRACE, anon_sym_LBRACK, + ACTIONS(747), 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, anon_sym_option, - [16993] = 4, + [17023] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(746), 1, + ACTIONS(753), 1, anon_sym_RPAREN, - ACTIONS(284), 3, + ACTIONS(237), 3, anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(282), 11, + ACTIONS(235), 11, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, @@ -19334,16 +19108,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_DASH_GT, - [17018] = 4, + [17048] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(748), 1, + ACTIONS(755), 1, anon_sym_RPAREN, - ACTIONS(284), 3, + ACTIONS(237), 3, anon_sym_DASH, anon_sym_GT, anon_sym_LT, - ACTIONS(282), 11, + ACTIONS(235), 11, anon_sym_PLUS, anon_sym_STAR, anon_sym_SLASH, @@ -19355,167 +19129,147 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_DASH_GT, - [17043] = 4, + [17073] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(750), 1, + ACTIONS(718), 4, + anon_sym_LPAREN, anon_sym_RPAREN, - ACTIONS(284), 3, - anon_sym_DASH, - anon_sym_GT, - anon_sym_LT, - ACTIONS(282), 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, - [17068] = 7, - ACTIONS(3), 1, - sym__comment, - ACTIONS(705), 1, - anon_sym_LPAREN, - ACTIONS(709), 1, anon_sym_LBRACE, - ACTIONS(711), 1, anon_sym_LBRACK, - ACTIONS(715), 1, - anon_sym_option, - STATE(337), 1, - sym_type, - ACTIONS(713), 9, + ACTIONS(757), 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, - [17098] = 7, + anon_sym_option, + [17095] = 7, ACTIONS(3), 1, sym__comment, - ACTIONS(705), 1, + ACTIONS(733), 1, anon_sym_LPAREN, - ACTIONS(709), 1, + ACTIONS(737), 1, anon_sym_LBRACE, - ACTIONS(711), 1, + ACTIONS(739), 1, anon_sym_LBRACK, - ACTIONS(715), 1, + ACTIONS(741), 1, anon_sym_option, - STATE(430), 1, + STATE(438), 1, sym_type, - ACTIONS(713), 9, + ACTIONS(731), 9, + 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, - [17128] = 7, + [17125] = 7, ACTIONS(3), 1, sym__comment, - ACTIONS(705), 1, + ACTIONS(733), 1, anon_sym_LPAREN, - ACTIONS(709), 1, + ACTIONS(737), 1, anon_sym_LBRACE, - ACTIONS(711), 1, + ACTIONS(739), 1, anon_sym_LBRACK, - ACTIONS(715), 1, + ACTIONS(741), 1, anon_sym_option, - STATE(420), 1, + STATE(426), 1, sym_type, - ACTIONS(713), 9, + ACTIONS(731), 9, + 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, - [17158] = 7, + [17155] = 7, ACTIONS(3), 1, sym__comment, - ACTIONS(705), 1, + ACTIONS(733), 1, anon_sym_LPAREN, - ACTIONS(709), 1, + ACTIONS(737), 1, anon_sym_LBRACE, - ACTIONS(711), 1, + ACTIONS(739), 1, anon_sym_LBRACK, - ACTIONS(715), 1, - anon_sym_option, - STATE(437), 1, - sym_type, - ACTIONS(713), 9, - 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, - [17188] = 7, - ACTIONS(3), 1, - sym__comment, - ACTIONS(705), 1, - anon_sym_LPAREN, - ACTIONS(709), 1, - anon_sym_LBRACE, - ACTIONS(711), 1, - anon_sym_LBRACK, - ACTIONS(715), 1, + ACTIONS(741), 1, anon_sym_option, STATE(334), 1, sym_type, - ACTIONS(713), 9, + ACTIONS(731), 9, + 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, - [17218] = 2, + [17185] = 7, ACTIONS(3), 1, sym__comment, - ACTIONS(722), 14, + ACTIONS(733), 1, anon_sym_LPAREN, - anon_sym_RPAREN, + ACTIONS(737), 1, anon_sym_LBRACE, + ACTIONS(739), 1, anon_sym_LBRACK, + ACTIONS(741), 1, + anon_sym_option, + STATE(335), 1, + sym_type, + ACTIONS(731), 9, + 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, - [17238] = 3, + [17215] = 7, ACTIONS(3), 1, sym__comment, - ACTIONS(752), 2, + ACTIONS(733), 1, + anon_sym_LPAREN, + ACTIONS(737), 1, + anon_sym_LBRACE, + ACTIONS(739), 1, + anon_sym_LBRACK, + ACTIONS(741), 1, + anon_sym_option, + STATE(432), 1, + sym_type, + ACTIONS(731), 9, + sym_identifier, + anon_sym_none, + anon_sym_any, + anon_sym_bool, + anon_sym_collection, + anon_sym_float, + anon_sym_int, + anon_sym_num, + anon_sym_str, + [17245] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(759), 2, anon_sym_async, sym_identifier, - ACTIONS(754), 7, + ACTIONS(761), 7, anon_sym_RPAREN, anon_sym_COMMA, anon_sym_LBRACE, @@ -19523,1365 +19277,1403 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, - [17255] = 7, + [17262] = 7, ACTIONS(3), 1, sym__comment, - ACTIONS(543), 1, + ACTIONS(534), 1, sym_identifier, - ACTIONS(614), 1, + ACTIONS(609), 1, anon_sym_elseif, - ACTIONS(756), 1, + ACTIONS(763), 1, anon_sym_else, - STATE(290), 1, + STATE(279), 1, sym_else, - STATE(373), 2, + STATE(243), 2, sym_else_if, aux_sym_if_else_repeat1, - ACTIONS(541), 3, + ACTIONS(532), 3, anon_sym_SEMI, anon_sym_COMMA, anon_sym_RBRACE, - [17280] = 7, + [17287] = 7, ACTIONS(3), 1, sym__comment, - ACTIONS(535), 1, + ACTIONS(542), 1, sym_identifier, - ACTIONS(614), 1, + ACTIONS(609), 1, anon_sym_elseif, - ACTIONS(756), 1, + ACTIONS(763), 1, anon_sym_else, - STATE(288), 1, + STATE(289), 1, sym_else, - STATE(266), 2, + STATE(366), 2, sym_else_if, aux_sym_if_else_repeat1, - ACTIONS(533), 3, + ACTIONS(540), 3, anon_sym_SEMI, anon_sym_COMMA, anon_sym_RBRACE, - [17305] = 3, + [17312] = 6, ACTIONS(3), 1, sym__comment, - STATE(29), 1, + ACTIONS(767), 1, + anon_sym_COMMA, + ACTIONS(769), 1, + anon_sym_EQ, + ACTIONS(771), 1, + anon_sym_LT, + STATE(372), 1, + sym_type_definition, + ACTIONS(765), 2, + anon_sym_RBRACE, + sym_identifier, + [17332] = 3, + ACTIONS(3), 1, + sym__comment, + STATE(24), 1, sym_assignment_operator, - ACTIONS(218), 3, + ACTIONS(225), 3, anon_sym_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, - [17317] = 3, + [17344] = 3, ACTIONS(3), 1, sym__comment, - STATE(33), 1, + STATE(38), 1, sym_assignment_operator, - ACTIONS(218), 3, + ACTIONS(225), 3, anon_sym_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, - [17329] = 3, + [17356] = 3, ACTIONS(3), 1, sym__comment, - STATE(27), 1, + STATE(28), 1, sym_assignment_operator, - ACTIONS(218), 3, + ACTIONS(225), 3, anon_sym_EQ, anon_sym_PLUS_EQ, anon_sym_DASH_EQ, - [17341] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(758), 1, - anon_sym_EQ, - STATE(29), 1, - sym_assignment_operator, - ACTIONS(218), 2, - anon_sym_PLUS_EQ, - anon_sym_DASH_EQ, - [17355] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(667), 1, - anon_sym_async, - ACTIONS(669), 1, - anon_sym_LBRACE, - STATE(58), 1, - sym_block, [17368] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(760), 1, - sym_identifier, - ACTIONS(763), 1, - anon_sym_RBRACE, - STATE(379), 1, - aux_sym_map_repeat1, - [17381] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(765), 1, - sym_identifier, - ACTIONS(767), 1, - anon_sym_RBRACE, - STATE(379), 1, - aux_sym_map_repeat1, - [17394] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(765), 1, - sym_identifier, - ACTIONS(769), 1, - anon_sym_RBRACE, - STATE(379), 1, - aux_sym_map_repeat1, - [17407] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(655), 1, - anon_sym_async, - ACTIONS(657), 1, - anon_sym_LBRACE, - STATE(97), 1, - sym_block, - [17420] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(773), 1, - anon_sym_COMMA, - ACTIONS(771), 2, - anon_sym_RBRACE, - sym_identifier, - [17431] = 4, ACTIONS(3), 1, sym__comment, ACTIONS(775), 1, - sym_identifier, + anon_sym_COMMA, ACTIONS(777), 1, - anon_sym_RPAREN, - STATE(394), 1, - aux_sym_function_repeat1, - [17444] = 4, + anon_sym_EQ, + ACTIONS(773), 2, + anon_sym_RBRACE, + sym_identifier, + [17382] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(667), 1, - anon_sym_async, - ACTIONS(669), 1, + ACTIONS(11), 1, anon_sym_LBRACE, - STATE(227), 1, + ACTIONS(656), 1, + anon_sym_async, + STATE(57), 1, sym_block, - [17457] = 4, + [17395] = 4, ACTIONS(3), 1, sym__comment, ACTIONS(779), 1, - anon_sym_EQ, + sym_identifier, ACTIONS(781), 1, - anon_sym_LT, - STATE(442), 1, - sym_type_definition, - [17470] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(785), 1, - anon_sym_COMMA, - ACTIONS(783), 2, anon_sym_RBRACE, - sym_identifier, - [17481] = 4, + STATE(376), 1, + aux_sym_structure_repeat1, + [17408] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(663), 1, - anon_sym_async, - ACTIONS(665), 1, + ACTIONS(11), 1, anon_sym_LBRACE, - STATE(253), 1, - sym_block, - [17494] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(667), 1, + ACTIONS(656), 1, anon_sym_async, - ACTIONS(669), 1, - anon_sym_LBRACE, - STATE(70), 1, + STATE(215), 1, sym_block, - [17507] = 4, + [17421] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(663), 1, - anon_sym_async, - ACTIONS(665), 1, - anon_sym_LBRACE, - STATE(295), 1, - sym_block, - [17520] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(663), 1, - anon_sym_async, - ACTIONS(665), 1, - anon_sym_LBRACE, - STATE(272), 1, - sym_block, - [17533] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(789), 1, - anon_sym_COMMA, - ACTIONS(787), 2, - anon_sym_RPAREN, - sym_identifier, - [17544] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(655), 1, - anon_sym_async, - ACTIONS(657), 1, - anon_sym_LBRACE, - STATE(295), 1, - sym_block, - [17557] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(787), 1, - anon_sym_RPAREN, - ACTIONS(791), 1, - sym_identifier, - STATE(394), 1, - aux_sym_function_repeat1, - [17570] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(655), 1, - anon_sym_async, - ACTIONS(657), 1, - anon_sym_LBRACE, - STATE(105), 1, - sym_block, - [17583] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(775), 1, - sym_identifier, - ACTIONS(794), 1, - anon_sym_RPAREN, - STATE(394), 1, - aux_sym_function_repeat1, - [17596] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(775), 1, - sym_identifier, - ACTIONS(796), 1, - anon_sym_RPAREN, - STATE(394), 1, - aux_sym_function_repeat1, - [17609] = 4, - ACTIONS(3), 1, - sym__comment, - ACTIONS(765), 1, - sym_identifier, - ACTIONS(798), 1, + ACTIONS(773), 1, anon_sym_RBRACE, - STATE(379), 1, - aux_sym_map_repeat1, - [17622] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(800), 2, - anon_sym_RPAREN, + ACTIONS(783), 1, sym_identifier, - [17630] = 3, + STATE(376), 1, + aux_sym_structure_repeat1, + [17434] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(254), 1, - anon_sym_LPAREN, - ACTIONS(802), 1, - anon_sym_RPAREN, - [17640] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(254), 1, - anon_sym_LPAREN, - ACTIONS(804), 1, - anon_sym_RPAREN, - [17650] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(781), 1, - anon_sym_LT, - STATE(423), 1, - sym_type_definition, - [17660] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(781), 1, - anon_sym_LT, - STATE(392), 1, - sym_type_definition, - [17670] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(781), 1, - anon_sym_LT, - STATE(389), 1, - sym_type_definition, - [17680] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(781), 1, - anon_sym_LT, - STATE(388), 1, - sym_type_definition, - [17690] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(765), 1, + ACTIONS(786), 1, sym_identifier, - STATE(381), 1, - aux_sym_map_repeat1, - [17700] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(771), 2, - anon_sym_RBRACE, - sym_identifier, - [17708] = 3, - ACTIONS(3), 1, - sym__comment, - ACTIONS(781), 1, - anon_sym_LT, + ACTIONS(788), 1, + anon_sym_RPAREN, STATE(378), 1, - sym_type_definition, - [17718] = 3, + aux_sym_function_repeat1, + [17447] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(765), 1, + ACTIONS(790), 1, sym_identifier, - STATE(380), 1, - aux_sym_map_repeat1, - [17728] = 3, + ACTIONS(793), 1, + anon_sym_RPAREN, + STATE(378), 1, + aux_sym_function_repeat1, + [17460] = 4, ACTIONS(3), 1, sym__comment, - ACTIONS(781), 1, + ACTIONS(171), 1, + anon_sym_LBRACE, + ACTIONS(652), 1, + anon_sym_async, + STATE(104), 1, + sym_block, + [17473] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(171), 1, + anon_sym_LBRACE, + ACTIONS(652), 1, + anon_sym_async, + STATE(108), 1, + sym_block, + [17486] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(786), 1, + sym_identifier, + ACTIONS(795), 1, + anon_sym_RPAREN, + STATE(378), 1, + aux_sym_function_repeat1, + [17499] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(135), 1, + anon_sym_LBRACE, + ACTIONS(662), 1, + anon_sym_async, + STATE(283), 1, + sym_block, + [17512] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(799), 1, + anon_sym_COMMA, + ACTIONS(797), 2, + anon_sym_RBRACE, + sym_identifier, + [17523] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(135), 1, + anon_sym_LBRACE, + ACTIONS(662), 1, + anon_sym_async, + STATE(255), 1, + sym_block, + [17536] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(135), 1, + anon_sym_LBRACE, + ACTIONS(662), 1, + anon_sym_async, + STATE(266), 1, + sym_block, + [17549] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(171), 1, + anon_sym_LBRACE, + ACTIONS(652), 1, + anon_sym_async, + STATE(283), 1, + sym_block, + [17562] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(801), 1, + anon_sym_COMMA, + ACTIONS(793), 2, + anon_sym_RPAREN, + sym_identifier, + [17573] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(805), 1, + anon_sym_COMMA, + ACTIONS(803), 2, + anon_sym_RBRACE, + sym_identifier, + [17584] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(779), 1, + sym_identifier, + ACTIONS(807), 1, + anon_sym_RBRACE, + STATE(376), 1, + aux_sym_structure_repeat1, + [17597] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(779), 1, + sym_identifier, + ACTIONS(809), 1, + anon_sym_RBRACE, + STATE(376), 1, + aux_sym_structure_repeat1, + [17610] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(11), 1, + anon_sym_LBRACE, + ACTIONS(656), 1, + anon_sym_async, + STATE(51), 1, + sym_block, + [17623] = 4, + ACTIONS(3), 1, + sym__comment, + ACTIONS(786), 1, + sym_identifier, + ACTIONS(811), 1, + anon_sym_RPAREN, + STATE(378), 1, + aux_sym_function_repeat1, + [17636] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(771), 1, anon_sym_LT, - STATE(395), 1, + STATE(385), 1, sym_type_definition, - [17738] = 3, + [17646] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(781), 1, + ACTIONS(227), 1, + anon_sym_LPAREN, + ACTIONS(813), 1, + anon_sym_RPAREN, + [17656] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(803), 2, + anon_sym_RBRACE, + sym_identifier, + [17664] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(227), 1, + anon_sym_LPAREN, + ACTIONS(815), 1, + anon_sym_RPAREN, + [17674] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(771), 1, + anon_sym_LT, + STATE(379), 1, + sym_type_definition, + [17684] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(779), 1, + sym_identifier, + STATE(374), 1, + aux_sym_structure_repeat1, + [17694] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(817), 2, + anon_sym_RPAREN, + sym_identifier, + [17702] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(227), 1, + anon_sym_LPAREN, + ACTIONS(819), 1, + anon_sym_RPAREN, + [17712] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(771), 1, + anon_sym_LT, + STATE(387), 1, + sym_type_definition, + [17722] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(771), 1, + anon_sym_LT, + STATE(380), 1, + sym_type_definition, + [17732] = 3, + ACTIONS(3), 1, + sym__comment, + ACTIONS(771), 1, anon_sym_LT, STATE(391), 1, sym_type_definition, - [17748] = 2, + [17742] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(806), 2, + ACTIONS(779), 1, + sym_identifier, + STATE(390), 1, + aux_sym_structure_repeat1, + [17752] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(797), 2, anon_sym_RBRACE, sym_identifier, - [17756] = 3, + [17760] = 2, ACTIONS(3), 1, sym__comment, - ACTIONS(254), 1, - anon_sym_LPAREN, - ACTIONS(808), 1, - anon_sym_RPAREN, - [17766] = 3, + ACTIONS(821), 2, + anon_sym_RBRACE, + sym_identifier, + [17768] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(781), 1, + ACTIONS(771), 1, anon_sym_LT, - STATE(382), 1, + STATE(373), 1, sym_type_definition, - [17776] = 3, + [17778] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(765), 1, - sym_identifier, - STATE(398), 1, - aux_sym_map_repeat1, - [17786] = 2, + ACTIONS(771), 1, + anon_sym_LT, + STATE(384), 1, + sym_type_definition, + [17788] = 2, ACTIONS(3), 1, sym__comment, - ACTIONS(810), 1, - sym_identifier, - [17793] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(812), 1, - anon_sym_LBRACE, - [17800] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(814), 1, - anon_sym_in, - [17807] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(816), 1, - anon_sym_LPAREN, - [17814] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(818), 1, - anon_sym_RPAREN, - [17821] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(820), 1, - anon_sym_in, - [17828] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(822), 1, - anon_sym_COLON, - [17835] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(818), 1, + ACTIONS(773), 2, anon_sym_RBRACE, - [17842] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(824), 1, - anon_sym_COLON, - [17849] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(826), 1, - anon_sym_COLON, - [17856] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(828), 1, - anon_sym_COLON, - [17863] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(830), 1, - anon_sym_LBRACE, - [17870] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(689), 1, - anon_sym_EQ_GT, - [17877] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(832), 1, - anon_sym_COLON, - [17884] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(834), 1, - anon_sym_RBRACK, - [17891] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(836), 1, - anon_sym_LBRACE, - [17898] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(838), 1, - anon_sym_COLON, - [17905] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(840), 1, - anon_sym_LBRACE, - [17912] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(842), 1, - anon_sym_LPAREN, - [17919] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(844), 1, - anon_sym_LPAREN, - [17926] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(846), 1, sym_identifier, - [17933] = 2, + [17796] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(848), 1, - anon_sym_GT, - [17940] = 2, + ACTIONS(779), 1, + sym_identifier, + STATE(389), 1, + aux_sym_structure_repeat1, + [17806] = 3, ACTIONS(3), 1, sym__comment, - ACTIONS(850), 1, - anon_sym_LBRACE, - [17947] = 2, + ACTIONS(771), 1, + anon_sym_LT, + STATE(420), 1, + sym_type_definition, + [17816] = 2, ACTIONS(3), 1, sym__comment, - ACTIONS(852), 1, - anon_sym_in, - [17954] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(854), 1, - anon_sym_LPAREN, - [17961] = 2, - ACTIONS(3), 1, - sym__comment, - ACTIONS(856), 1, + ACTIONS(823), 1, anon_sym_COLON, - [17968] = 2, + [17823] = 2, ACTIONS(3), 1, sym__comment, - ACTIONS(858), 1, - anon_sym_EQ, - [17975] = 2, + ACTIONS(825), 1, + anon_sym_LBRACE, + [17830] = 2, ACTIONS(3), 1, sym__comment, - ACTIONS(860), 1, + ACTIONS(827), 1, ts_builtin_sym_end, - [17982] = 2, + [17837] = 2, ACTIONS(3), 1, sym__comment, - ACTIONS(862), 1, + ACTIONS(829), 1, + anon_sym_COLON, + [17844] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(831), 1, + anon_sym_LPAREN, + [17851] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(833), 1, + anon_sym_LBRACE, + [17858] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(835), 1, + anon_sym_LBRACE, + [17865] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(688), 1, + anon_sym_EQ_GT, + [17872] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(837), 1, + anon_sym_RBRACE, + [17879] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(839), 1, + anon_sym_LPAREN, + [17886] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(841), 1, + anon_sym_COLON, + [17893] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(843), 1, + anon_sym_LBRACE, + [17900] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(845), 1, sym_identifier, - [17989] = 2, + [17907] = 2, ACTIONS(3), 1, sym__comment, - ACTIONS(864), 1, + ACTIONS(847), 1, + anon_sym_LBRACE, + [17914] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(837), 1, + anon_sym_RPAREN, + [17921] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(849), 1, + anon_sym_LBRACE, + [17928] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(851), 1, anon_sym_LPAREN, - [17996] = 2, + [17935] = 2, ACTIONS(3), 1, sym__comment, - ACTIONS(866), 1, + ACTIONS(853), 1, anon_sym_LPAREN, - [18003] = 2, + [17942] = 2, ACTIONS(3), 1, sym__comment, - ACTIONS(868), 1, + ACTIONS(855), 1, + anon_sym_in, + [17949] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(857), 1, + anon_sym_in, + [17956] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(859), 1, + anon_sym_RBRACK, + [17963] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(861), 1, + anon_sym_COLON, + [17970] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(863), 1, + anon_sym_LPAREN, + [17977] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(865), 1, + anon_sym_COLON, + [17984] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(867), 1, + anon_sym_COLON, + [17991] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(869), 1, + anon_sym_LBRACE, + [17998] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(871), 1, + anon_sym_GT, + [18005] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(873), 1, + anon_sym_LPAREN, + [18012] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(875), 1, + anon_sym_LBRACE, + [18019] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(877), 1, + anon_sym_LPAREN, + [18026] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(879), 1, sym_identifier, - [18010] = 2, + [18033] = 2, ACTIONS(3), 1, sym__comment, - ACTIONS(870), 1, - anon_sym_LPAREN, + ACTIONS(881), 1, + anon_sym_in, + [18040] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(883), 1, + anon_sym_COLON, + [18047] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(885), 1, + sym_identifier, + [18054] = 2, + ACTIONS(3), 1, + sym__comment, + ACTIONS(887), 1, + sym_identifier, }; static const uint32_t ts_small_parse_table_map[] = { - [SMALL_STATE(44)] = 0, - [SMALL_STATE(45)] = 65, - [SMALL_STATE(46)] = 130, - [SMALL_STATE(47)] = 193, - [SMALL_STATE(48)] = 257, - [SMALL_STATE(49)] = 321, - [SMALL_STATE(50)] = 393, - [SMALL_STATE(51)] = 455, - [SMALL_STATE(52)] = 512, - [SMALL_STATE(53)] = 569, - [SMALL_STATE(54)] = 626, - [SMALL_STATE(55)] = 697, - [SMALL_STATE(56)] = 754, - [SMALL_STATE(57)] = 811, - [SMALL_STATE(58)] = 868, - [SMALL_STATE(59)] = 925, - [SMALL_STATE(60)] = 982, - [SMALL_STATE(61)] = 1041, - [SMALL_STATE(62)] = 1098, - [SMALL_STATE(63)] = 1155, - [SMALL_STATE(64)] = 1212, - [SMALL_STATE(65)] = 1271, - [SMALL_STATE(66)] = 1328, - [SMALL_STATE(67)] = 1385, - [SMALL_STATE(68)] = 1452, - [SMALL_STATE(69)] = 1513, - [SMALL_STATE(70)] = 1570, - [SMALL_STATE(71)] = 1627, - [SMALL_STATE(72)] = 1684, - [SMALL_STATE(73)] = 1741, - [SMALL_STATE(74)] = 1798, - [SMALL_STATE(75)] = 1855, - [SMALL_STATE(76)] = 1912, - [SMALL_STATE(77)] = 1969, - [SMALL_STATE(78)] = 2026, - [SMALL_STATE(79)] = 2083, - [SMALL_STATE(80)] = 2140, - [SMALL_STATE(81)] = 2200, - [SMALL_STATE(82)] = 2260, - [SMALL_STATE(83)] = 2320, - [SMALL_STATE(84)] = 2380, - [SMALL_STATE(85)] = 2450, - [SMALL_STATE(86)] = 2518, - [SMALL_STATE(87)] = 2576, - [SMALL_STATE(88)] = 2631, - [SMALL_STATE(89)] = 2690, - [SMALL_STATE(90)] = 2749, - [SMALL_STATE(91)] = 2806, - [SMALL_STATE(92)] = 2858, - [SMALL_STATE(93)] = 2910, - [SMALL_STATE(94)] = 2962, - [SMALL_STATE(95)] = 3014, - [SMALL_STATE(96)] = 3066, - [SMALL_STATE(97)] = 3118, - [SMALL_STATE(98)] = 3170, - [SMALL_STATE(99)] = 3222, - [SMALL_STATE(100)] = 3274, - [SMALL_STATE(101)] = 3328, - [SMALL_STATE(102)] = 3380, - [SMALL_STATE(103)] = 3432, - [SMALL_STATE(104)] = 3484, - [SMALL_STATE(105)] = 3536, - [SMALL_STATE(106)] = 3588, - [SMALL_STATE(107)] = 3640, - [SMALL_STATE(108)] = 3692, - [SMALL_STATE(109)] = 3744, - [SMALL_STATE(110)] = 3800, - [SMALL_STATE(111)] = 3852, - [SMALL_STATE(112)] = 3904, - [SMALL_STATE(113)] = 3956, - [SMALL_STATE(114)] = 4008, - [SMALL_STATE(115)] = 4060, - [SMALL_STATE(116)] = 4112, - [SMALL_STATE(117)] = 4166, - [SMALL_STATE(118)] = 4218, - [SMALL_STATE(119)] = 4283, - [SMALL_STATE(120)] = 4343, - [SMALL_STATE(121)] = 4398, - [SMALL_STATE(122)] = 4453, - [SMALL_STATE(123)] = 4503, - [SMALL_STATE(124)] = 4589, - [SMALL_STATE(125)] = 4675, - [SMALL_STATE(126)] = 4761, - [SMALL_STATE(127)] = 4846, - [SMALL_STATE(128)] = 4929, - [SMALL_STATE(129)] = 5012, - [SMALL_STATE(130)] = 5097, - [SMALL_STATE(131)] = 5160, - [SMALL_STATE(132)] = 5243, - [SMALL_STATE(133)] = 5328, - [SMALL_STATE(134)] = 5413, - [SMALL_STATE(135)] = 5496, - [SMALL_STATE(136)] = 5579, - [SMALL_STATE(137)] = 5662, - [SMALL_STATE(138)] = 5745, - [SMALL_STATE(139)] = 5828, - [SMALL_STATE(140)] = 5911, - [SMALL_STATE(141)] = 5972, - [SMALL_STATE(142)] = 6055, - [SMALL_STATE(143)] = 6140, - [SMALL_STATE(144)] = 6223, - [SMALL_STATE(145)] = 6306, - [SMALL_STATE(146)] = 6391, - [SMALL_STATE(147)] = 6476, - [SMALL_STATE(148)] = 6561, - [SMALL_STATE(149)] = 6644, - [SMALL_STATE(150)] = 6727, - [SMALL_STATE(151)] = 6810, - [SMALL_STATE(152)] = 6893, - [SMALL_STATE(153)] = 6976, - [SMALL_STATE(154)] = 7059, - [SMALL_STATE(155)] = 7142, - [SMALL_STATE(156)] = 7227, - [SMALL_STATE(157)] = 7289, - [SMALL_STATE(158)] = 7351, - [SMALL_STATE(159)] = 7428, - [SMALL_STATE(160)] = 7505, - [SMALL_STATE(161)] = 7582, - [SMALL_STATE(162)] = 7659, - [SMALL_STATE(163)] = 7734, - [SMALL_STATE(164)] = 7811, - [SMALL_STATE(165)] = 7888, - [SMALL_STATE(166)] = 7965, - [SMALL_STATE(167)] = 8042, - [SMALL_STATE(168)] = 8115, - [SMALL_STATE(169)] = 8192, - [SMALL_STATE(170)] = 8269, - [SMALL_STATE(171)] = 8346, - [SMALL_STATE(172)] = 8423, - [SMALL_STATE(173)] = 8500, - [SMALL_STATE(174)] = 8577, - [SMALL_STATE(175)] = 8652, - [SMALL_STATE(176)] = 8729, - [SMALL_STATE(177)] = 8802, - [SMALL_STATE(178)] = 8877, - [SMALL_STATE(179)] = 8954, - [SMALL_STATE(180)] = 9031, - [SMALL_STATE(181)] = 9108, - [SMALL_STATE(182)] = 9185, - [SMALL_STATE(183)] = 9262, - [SMALL_STATE(184)] = 9339, - [SMALL_STATE(185)] = 9416, - [SMALL_STATE(186)] = 9493, - [SMALL_STATE(187)] = 9570, - [SMALL_STATE(188)] = 9647, - [SMALL_STATE(189)] = 9724, - [SMALL_STATE(190)] = 9801, - [SMALL_STATE(191)] = 9878, - [SMALL_STATE(192)] = 9951, - [SMALL_STATE(193)] = 10024, - [SMALL_STATE(194)] = 10101, - [SMALL_STATE(195)] = 10176, - [SMALL_STATE(196)] = 10253, - [SMALL_STATE(197)] = 10330, - [SMALL_STATE(198)] = 10407, - [SMALL_STATE(199)] = 10484, - [SMALL_STATE(200)] = 10561, - [SMALL_STATE(201)] = 10638, - [SMALL_STATE(202)] = 10715, - [SMALL_STATE(203)] = 10792, - [SMALL_STATE(204)] = 10869, - [SMALL_STATE(205)] = 10946, - [SMALL_STATE(206)] = 11023, - [SMALL_STATE(207)] = 11100, - [SMALL_STATE(208)] = 11173, - [SMALL_STATE(209)] = 11250, - [SMALL_STATE(210)] = 11323, - [SMALL_STATE(211)] = 11400, - [SMALL_STATE(212)] = 11473, - [SMALL_STATE(213)] = 11524, - [SMALL_STATE(214)] = 11575, - [SMALL_STATE(215)] = 11621, - [SMALL_STATE(216)] = 11661, - [SMALL_STATE(217)] = 11701, - [SMALL_STATE(218)] = 11741, - [SMALL_STATE(219)] = 11781, - [SMALL_STATE(220)] = 11821, - [SMALL_STATE(221)] = 11859, - [SMALL_STATE(222)] = 11897, - [SMALL_STATE(223)] = 11935, - [SMALL_STATE(224)] = 11973, - [SMALL_STATE(225)] = 12011, - [SMALL_STATE(226)] = 12049, - [SMALL_STATE(227)] = 12087, - [SMALL_STATE(228)] = 12125, - [SMALL_STATE(229)] = 12163, - [SMALL_STATE(230)] = 12201, - [SMALL_STATE(231)] = 12241, - [SMALL_STATE(232)] = 12279, - [SMALL_STATE(233)] = 12317, - [SMALL_STATE(234)] = 12358, - [SMALL_STATE(235)] = 12417, - [SMALL_STATE(236)] = 12476, - [SMALL_STATE(237)] = 12535, - [SMALL_STATE(238)] = 12578, - [SMALL_STATE(239)] = 12637, - [SMALL_STATE(240)] = 12680, - [SMALL_STATE(241)] = 12725, - [SMALL_STATE(242)] = 12784, - [SMALL_STATE(243)] = 12843, - [SMALL_STATE(244)] = 12902, - [SMALL_STATE(245)] = 12947, - [SMALL_STATE(246)] = 12985, - [SMALL_STATE(247)] = 13021, - [SMALL_STATE(248)] = 13057, - [SMALL_STATE(249)] = 13097, - [SMALL_STATE(250)] = 13133, - [SMALL_STATE(251)] = 13173, - [SMALL_STATE(252)] = 13209, - [SMALL_STATE(253)] = 13245, - [SMALL_STATE(254)] = 13281, - [SMALL_STATE(255)] = 13317, - [SMALL_STATE(256)] = 13353, - [SMALL_STATE(257)] = 13389, - [SMALL_STATE(258)] = 13425, - [SMALL_STATE(259)] = 13461, - [SMALL_STATE(260)] = 13497, - [SMALL_STATE(261)] = 13533, - [SMALL_STATE(262)] = 13569, - [SMALL_STATE(263)] = 13605, - [SMALL_STATE(264)] = 13641, - [SMALL_STATE(265)] = 13677, - [SMALL_STATE(266)] = 13713, - [SMALL_STATE(267)] = 13753, - [SMALL_STATE(268)] = 13789, - [SMALL_STATE(269)] = 13825, - [SMALL_STATE(270)] = 13861, - [SMALL_STATE(271)] = 13897, - [SMALL_STATE(272)] = 13939, - [SMALL_STATE(273)] = 13975, - [SMALL_STATE(274)] = 14017, - [SMALL_STATE(275)] = 14053, - [SMALL_STATE(276)] = 14088, - [SMALL_STATE(277)] = 14125, - [SMALL_STATE(278)] = 14159, - [SMALL_STATE(279)] = 14193, - [SMALL_STATE(280)] = 14227, - [SMALL_STATE(281)] = 14261, - [SMALL_STATE(282)] = 14295, - [SMALL_STATE(283)] = 14342, - [SMALL_STATE(284)] = 14374, - [SMALL_STATE(285)] = 14406, - [SMALL_STATE(286)] = 14438, - [SMALL_STATE(287)] = 14470, - [SMALL_STATE(288)] = 14502, - [SMALL_STATE(289)] = 14534, - [SMALL_STATE(290)] = 14568, - [SMALL_STATE(291)] = 14600, - [SMALL_STATE(292)] = 14632, - [SMALL_STATE(293)] = 14666, - [SMALL_STATE(294)] = 14698, - [SMALL_STATE(295)] = 14730, - [SMALL_STATE(296)] = 14762, - [SMALL_STATE(297)] = 14804, - [SMALL_STATE(298)] = 14836, - [SMALL_STATE(299)] = 14869, - [SMALL_STATE(300)] = 14906, - [SMALL_STATE(301)] = 14943, - [SMALL_STATE(302)] = 14973, - [SMALL_STATE(303)] = 15002, - [SMALL_STATE(304)] = 15031, - [SMALL_STATE(305)] = 15063, - [SMALL_STATE(306)] = 15091, - [SMALL_STATE(307)] = 15119, - [SMALL_STATE(308)] = 15161, - [SMALL_STATE(309)] = 15195, - [SMALL_STATE(310)] = 15229, - [SMALL_STATE(311)] = 15269, - [SMALL_STATE(312)] = 15302, - [SMALL_STATE(313)] = 15345, - [SMALL_STATE(314)] = 15388, - [SMALL_STATE(315)] = 15431, - [SMALL_STATE(316)] = 15462, - [SMALL_STATE(317)] = 15505, - [SMALL_STATE(318)] = 15548, - [SMALL_STATE(319)] = 15591, - [SMALL_STATE(320)] = 15634, - [SMALL_STATE(321)] = 15667, - [SMALL_STATE(322)] = 15710, - [SMALL_STATE(323)] = 15753, - [SMALL_STATE(324)] = 15796, - [SMALL_STATE(325)] = 15824, - [SMALL_STATE(326)] = 15854, - [SMALL_STATE(327)] = 15882, - [SMALL_STATE(328)] = 15908, - [SMALL_STATE(329)] = 15934, - [SMALL_STATE(330)] = 15968, - [SMALL_STATE(331)] = 15991, - [SMALL_STATE(332)] = 16022, - [SMALL_STATE(333)] = 16059, - [SMALL_STATE(334)] = 16090, - [SMALL_STATE(335)] = 16113, - [SMALL_STATE(336)] = 16150, - [SMALL_STATE(337)] = 16187, - [SMALL_STATE(338)] = 16210, - [SMALL_STATE(339)] = 16247, - [SMALL_STATE(340)] = 16284, - [SMALL_STATE(341)] = 16321, - [SMALL_STATE(342)] = 16344, - [SMALL_STATE(343)] = 16378, - [SMALL_STATE(344)] = 16412, - [SMALL_STATE(345)] = 16448, - [SMALL_STATE(346)] = 16482, - [SMALL_STATE(347)] = 16510, - [SMALL_STATE(348)] = 16546, - [SMALL_STATE(349)] = 16580, - [SMALL_STATE(350)] = 16614, - [SMALL_STATE(351)] = 16640, - [SMALL_STATE(352)] = 16674, - [SMALL_STATE(353)] = 16702, - [SMALL_STATE(354)] = 16730, - [SMALL_STATE(355)] = 16764, - [SMALL_STATE(356)] = 16798, - [SMALL_STATE(357)] = 16832, - [SMALL_STATE(358)] = 16866, - [SMALL_STATE(359)] = 16900, - [SMALL_STATE(360)] = 16936, - [SMALL_STATE(361)] = 16970, - [SMALL_STATE(362)] = 16993, - [SMALL_STATE(363)] = 17018, - [SMALL_STATE(364)] = 17043, - [SMALL_STATE(365)] = 17068, - [SMALL_STATE(366)] = 17098, - [SMALL_STATE(367)] = 17128, - [SMALL_STATE(368)] = 17158, - [SMALL_STATE(369)] = 17188, - [SMALL_STATE(370)] = 17218, - [SMALL_STATE(371)] = 17238, - [SMALL_STATE(372)] = 17255, - [SMALL_STATE(373)] = 17280, - [SMALL_STATE(374)] = 17305, - [SMALL_STATE(375)] = 17317, - [SMALL_STATE(376)] = 17329, - [SMALL_STATE(377)] = 17341, - [SMALL_STATE(378)] = 17355, - [SMALL_STATE(379)] = 17368, - [SMALL_STATE(380)] = 17381, - [SMALL_STATE(381)] = 17394, - [SMALL_STATE(382)] = 17407, - [SMALL_STATE(383)] = 17420, - [SMALL_STATE(384)] = 17431, - [SMALL_STATE(385)] = 17444, - [SMALL_STATE(386)] = 17457, - [SMALL_STATE(387)] = 17470, - [SMALL_STATE(388)] = 17481, - [SMALL_STATE(389)] = 17494, - [SMALL_STATE(390)] = 17507, - [SMALL_STATE(391)] = 17520, - [SMALL_STATE(392)] = 17533, - [SMALL_STATE(393)] = 17544, - [SMALL_STATE(394)] = 17557, - [SMALL_STATE(395)] = 17570, - [SMALL_STATE(396)] = 17583, - [SMALL_STATE(397)] = 17596, - [SMALL_STATE(398)] = 17609, - [SMALL_STATE(399)] = 17622, - [SMALL_STATE(400)] = 17630, - [SMALL_STATE(401)] = 17640, - [SMALL_STATE(402)] = 17650, - [SMALL_STATE(403)] = 17660, - [SMALL_STATE(404)] = 17670, - [SMALL_STATE(405)] = 17680, - [SMALL_STATE(406)] = 17690, - [SMALL_STATE(407)] = 17700, - [SMALL_STATE(408)] = 17708, - [SMALL_STATE(409)] = 17718, - [SMALL_STATE(410)] = 17728, - [SMALL_STATE(411)] = 17738, - [SMALL_STATE(412)] = 17748, - [SMALL_STATE(413)] = 17756, - [SMALL_STATE(414)] = 17766, - [SMALL_STATE(415)] = 17776, - [SMALL_STATE(416)] = 17786, - [SMALL_STATE(417)] = 17793, - [SMALL_STATE(418)] = 17800, - [SMALL_STATE(419)] = 17807, - [SMALL_STATE(420)] = 17814, - [SMALL_STATE(421)] = 17821, - [SMALL_STATE(422)] = 17828, - [SMALL_STATE(423)] = 17835, - [SMALL_STATE(424)] = 17842, - [SMALL_STATE(425)] = 17849, - [SMALL_STATE(426)] = 17856, - [SMALL_STATE(427)] = 17863, - [SMALL_STATE(428)] = 17870, - [SMALL_STATE(429)] = 17877, - [SMALL_STATE(430)] = 17884, - [SMALL_STATE(431)] = 17891, - [SMALL_STATE(432)] = 17898, - [SMALL_STATE(433)] = 17905, - [SMALL_STATE(434)] = 17912, - [SMALL_STATE(435)] = 17919, - [SMALL_STATE(436)] = 17926, - [SMALL_STATE(437)] = 17933, - [SMALL_STATE(438)] = 17940, - [SMALL_STATE(439)] = 17947, - [SMALL_STATE(440)] = 17954, - [SMALL_STATE(441)] = 17961, - [SMALL_STATE(442)] = 17968, - [SMALL_STATE(443)] = 17975, - [SMALL_STATE(444)] = 17982, - [SMALL_STATE(445)] = 17989, - [SMALL_STATE(446)] = 17996, - [SMALL_STATE(447)] = 18003, - [SMALL_STATE(448)] = 18010, + [SMALL_STATE(39)] = 0, + [SMALL_STATE(40)] = 66, + [SMALL_STATE(41)] = 132, + [SMALL_STATE(42)] = 196, + [SMALL_STATE(43)] = 259, + [SMALL_STATE(44)] = 324, + [SMALL_STATE(45)] = 389, + [SMALL_STATE(46)] = 462, + [SMALL_STATE(47)] = 520, + [SMALL_STATE(48)] = 578, + [SMALL_STATE(49)] = 636, + [SMALL_STATE(50)] = 694, + [SMALL_STATE(51)] = 752, + [SMALL_STATE(52)] = 810, + [SMALL_STATE(53)] = 868, + [SMALL_STATE(54)] = 926, + [SMALL_STATE(55)] = 988, + [SMALL_STATE(56)] = 1046, + [SMALL_STATE(57)] = 1104, + [SMALL_STATE(58)] = 1162, + [SMALL_STATE(59)] = 1220, + [SMALL_STATE(60)] = 1280, + [SMALL_STATE(61)] = 1348, + [SMALL_STATE(62)] = 1408, + [SMALL_STATE(63)] = 1466, + [SMALL_STATE(64)] = 1524, + [SMALL_STATE(65)] = 1582, + [SMALL_STATE(66)] = 1640, + [SMALL_STATE(67)] = 1698, + [SMALL_STATE(68)] = 1756, + [SMALL_STATE(69)] = 1814, + [SMALL_STATE(70)] = 1872, + [SMALL_STATE(71)] = 1930, + [SMALL_STATE(72)] = 1988, + [SMALL_STATE(73)] = 2046, + [SMALL_STATE(74)] = 2104, + [SMALL_STATE(75)] = 2165, + [SMALL_STATE(76)] = 2234, + [SMALL_STATE(77)] = 2295, + [SMALL_STATE(78)] = 2366, + [SMALL_STATE(79)] = 2422, + [SMALL_STATE(80)] = 2482, + [SMALL_STATE(81)] = 2540, + [SMALL_STATE(82)] = 2600, + [SMALL_STATE(83)] = 2659, + [SMALL_STATE(84)] = 2718, + [SMALL_STATE(85)] = 2775, + [SMALL_STATE(86)] = 2827, + [SMALL_STATE(87)] = 2879, + [SMALL_STATE(88)] = 2931, + [SMALL_STATE(89)] = 2983, + [SMALL_STATE(90)] = 3035, + [SMALL_STATE(91)] = 3087, + [SMALL_STATE(92)] = 3143, + [SMALL_STATE(93)] = 3195, + [SMALL_STATE(94)] = 3247, + [SMALL_STATE(95)] = 3301, + [SMALL_STATE(96)] = 3353, + [SMALL_STATE(97)] = 3405, + [SMALL_STATE(98)] = 3457, + [SMALL_STATE(99)] = 3509, + [SMALL_STATE(100)] = 3561, + [SMALL_STATE(101)] = 3613, + [SMALL_STATE(102)] = 3665, + [SMALL_STATE(103)] = 3719, + [SMALL_STATE(104)] = 3771, + [SMALL_STATE(105)] = 3823, + [SMALL_STATE(106)] = 3875, + [SMALL_STATE(107)] = 3927, + [SMALL_STATE(108)] = 3979, + [SMALL_STATE(109)] = 4031, + [SMALL_STATE(110)] = 4083, + [SMALL_STATE(111)] = 4135, + [SMALL_STATE(112)] = 4187, + [SMALL_STATE(113)] = 4252, + [SMALL_STATE(114)] = 4312, + [SMALL_STATE(115)] = 4367, + [SMALL_STATE(116)] = 4422, + [SMALL_STATE(117)] = 4508, + [SMALL_STATE(118)] = 4594, + [SMALL_STATE(119)] = 4644, + [SMALL_STATE(120)] = 4730, + [SMALL_STATE(121)] = 4815, + [SMALL_STATE(122)] = 4898, + [SMALL_STATE(123)] = 4959, + [SMALL_STATE(124)] = 5042, + [SMALL_STATE(125)] = 5127, + [SMALL_STATE(126)] = 5212, + [SMALL_STATE(127)] = 5297, + [SMALL_STATE(128)] = 5382, + [SMALL_STATE(129)] = 5445, + [SMALL_STATE(130)] = 5528, + [SMALL_STATE(131)] = 5611, + [SMALL_STATE(132)] = 5694, + [SMALL_STATE(133)] = 5777, + [SMALL_STATE(134)] = 5860, + [SMALL_STATE(135)] = 5943, + [SMALL_STATE(136)] = 6026, + [SMALL_STATE(137)] = 6109, + [SMALL_STATE(138)] = 6192, + [SMALL_STATE(139)] = 6277, + [SMALL_STATE(140)] = 6360, + [SMALL_STATE(141)] = 6443, + [SMALL_STATE(142)] = 6526, + [SMALL_STATE(143)] = 6611, + [SMALL_STATE(144)] = 6696, + [SMALL_STATE(145)] = 6779, + [SMALL_STATE(146)] = 6862, + [SMALL_STATE(147)] = 6945, + [SMALL_STATE(148)] = 7028, + [SMALL_STATE(149)] = 7113, + [SMALL_STATE(150)] = 7196, + [SMALL_STATE(151)] = 7258, + [SMALL_STATE(152)] = 7320, + [SMALL_STATE(153)] = 7393, + [SMALL_STATE(154)] = 7470, + [SMALL_STATE(155)] = 7545, + [SMALL_STATE(156)] = 7622, + [SMALL_STATE(157)] = 7699, + [SMALL_STATE(158)] = 7776, + [SMALL_STATE(159)] = 7853, + [SMALL_STATE(160)] = 7930, + [SMALL_STATE(161)] = 8007, + [SMALL_STATE(162)] = 8084, + [SMALL_STATE(163)] = 8161, + [SMALL_STATE(164)] = 8238, + [SMALL_STATE(165)] = 8315, + [SMALL_STATE(166)] = 8392, + [SMALL_STATE(167)] = 8469, + [SMALL_STATE(168)] = 8546, + [SMALL_STATE(169)] = 8621, + [SMALL_STATE(170)] = 8698, + [SMALL_STATE(171)] = 8775, + [SMALL_STATE(172)] = 8852, + [SMALL_STATE(173)] = 8929, + [SMALL_STATE(174)] = 9006, + [SMALL_STATE(175)] = 9083, + [SMALL_STATE(176)] = 9160, + [SMALL_STATE(177)] = 9237, + [SMALL_STATE(178)] = 9314, + [SMALL_STATE(179)] = 9391, + [SMALL_STATE(180)] = 9468, + [SMALL_STATE(181)] = 9541, + [SMALL_STATE(182)] = 9618, + [SMALL_STATE(183)] = 9695, + [SMALL_STATE(184)] = 9772, + [SMALL_STATE(185)] = 9847, + [SMALL_STATE(186)] = 9924, + [SMALL_STATE(187)] = 10001, + [SMALL_STATE(188)] = 10078, + [SMALL_STATE(189)] = 10155, + [SMALL_STATE(190)] = 10230, + [SMALL_STATE(191)] = 10307, + [SMALL_STATE(192)] = 10384, + [SMALL_STATE(193)] = 10461, + [SMALL_STATE(194)] = 10534, + [SMALL_STATE(195)] = 10611, + [SMALL_STATE(196)] = 10688, + [SMALL_STATE(197)] = 10761, + [SMALL_STATE(198)] = 10838, + [SMALL_STATE(199)] = 10915, + [SMALL_STATE(200)] = 10992, + [SMALL_STATE(201)] = 11069, + [SMALL_STATE(202)] = 11142, + [SMALL_STATE(203)] = 11215, + [SMALL_STATE(204)] = 11288, + [SMALL_STATE(205)] = 11365, + [SMALL_STATE(206)] = 11442, + [SMALL_STATE(207)] = 11494, + [SMALL_STATE(208)] = 11546, + [SMALL_STATE(209)] = 11593, + [SMALL_STATE(210)] = 11634, + [SMALL_STATE(211)] = 11675, + [SMALL_STATE(212)] = 11716, + [SMALL_STATE(213)] = 11757, + [SMALL_STATE(214)] = 11798, + [SMALL_STATE(215)] = 11837, + [SMALL_STATE(216)] = 11876, + [SMALL_STATE(217)] = 11915, + [SMALL_STATE(218)] = 11954, + [SMALL_STATE(219)] = 11993, + [SMALL_STATE(220)] = 12032, + [SMALL_STATE(221)] = 12071, + [SMALL_STATE(222)] = 12110, + [SMALL_STATE(223)] = 12149, + [SMALL_STATE(224)] = 12188, + [SMALL_STATE(225)] = 12229, + [SMALL_STATE(226)] = 12268, + [SMALL_STATE(227)] = 12307, + [SMALL_STATE(228)] = 12350, + [SMALL_STATE(229)] = 12409, + [SMALL_STATE(230)] = 12452, + [SMALL_STATE(231)] = 12493, + [SMALL_STATE(232)] = 12552, + [SMALL_STATE(233)] = 12597, + [SMALL_STATE(234)] = 12642, + [SMALL_STATE(235)] = 12701, + [SMALL_STATE(236)] = 12760, + [SMALL_STATE(237)] = 12819, + [SMALL_STATE(238)] = 12878, + [SMALL_STATE(239)] = 12937, + [SMALL_STATE(240)] = 12977, + [SMALL_STATE(241)] = 13013, + [SMALL_STATE(242)] = 13049, + [SMALL_STATE(243)] = 13085, + [SMALL_STATE(244)] = 13125, + [SMALL_STATE(245)] = 13161, + [SMALL_STATE(246)] = 13199, + [SMALL_STATE(247)] = 13235, + [SMALL_STATE(248)] = 13271, + [SMALL_STATE(249)] = 13311, + [SMALL_STATE(250)] = 13347, + [SMALL_STATE(251)] = 13383, + [SMALL_STATE(252)] = 13419, + [SMALL_STATE(253)] = 13455, + [SMALL_STATE(254)] = 13497, + [SMALL_STATE(255)] = 13533, + [SMALL_STATE(256)] = 13569, + [SMALL_STATE(257)] = 13605, + [SMALL_STATE(258)] = 13641, + [SMALL_STATE(259)] = 13677, + [SMALL_STATE(260)] = 13713, + [SMALL_STATE(261)] = 13749, + [SMALL_STATE(262)] = 13785, + [SMALL_STATE(263)] = 13827, + [SMALL_STATE(264)] = 13863, + [SMALL_STATE(265)] = 13899, + [SMALL_STATE(266)] = 13935, + [SMALL_STATE(267)] = 13971, + [SMALL_STATE(268)] = 14007, + [SMALL_STATE(269)] = 14043, + [SMALL_STATE(270)] = 14079, + [SMALL_STATE(271)] = 14116, + [SMALL_STATE(272)] = 14150, + [SMALL_STATE(273)] = 14184, + [SMALL_STATE(274)] = 14218, + [SMALL_STATE(275)] = 14252, + [SMALL_STATE(276)] = 14286, + [SMALL_STATE(277)] = 14333, + [SMALL_STATE(278)] = 14375, + [SMALL_STATE(279)] = 14407, + [SMALL_STATE(280)] = 14439, + [SMALL_STATE(281)] = 14473, + [SMALL_STATE(282)] = 14505, + [SMALL_STATE(283)] = 14537, + [SMALL_STATE(284)] = 14569, + [SMALL_STATE(285)] = 14603, + [SMALL_STATE(286)] = 14635, + [SMALL_STATE(287)] = 14667, + [SMALL_STATE(288)] = 14699, + [SMALL_STATE(289)] = 14731, + [SMALL_STATE(290)] = 14763, + [SMALL_STATE(291)] = 14795, + [SMALL_STATE(292)] = 14827, + [SMALL_STATE(293)] = 14864, + [SMALL_STATE(294)] = 14901, + [SMALL_STATE(295)] = 14934, + [SMALL_STATE(296)] = 14964, + [SMALL_STATE(297)] = 14993, + [SMALL_STATE(298)] = 15022, + [SMALL_STATE(299)] = 15050, + [SMALL_STATE(300)] = 15082, + [SMALL_STATE(301)] = 15124, + [SMALL_STATE(302)] = 15152, + [SMALL_STATE(303)] = 15186, + [SMALL_STATE(304)] = 15220, + [SMALL_STATE(305)] = 15260, + [SMALL_STATE(306)] = 15303, + [SMALL_STATE(307)] = 15336, + [SMALL_STATE(308)] = 15369, + [SMALL_STATE(309)] = 15412, + [SMALL_STATE(310)] = 15455, + [SMALL_STATE(311)] = 15486, + [SMALL_STATE(312)] = 15529, + [SMALL_STATE(313)] = 15572, + [SMALL_STATE(314)] = 15615, + [SMALL_STATE(315)] = 15658, + [SMALL_STATE(316)] = 15701, + [SMALL_STATE(317)] = 15744, + [SMALL_STATE(318)] = 15787, + [SMALL_STATE(319)] = 15817, + [SMALL_STATE(320)] = 15845, + [SMALL_STATE(321)] = 15873, + [SMALL_STATE(322)] = 15907, + [SMALL_STATE(323)] = 15935, + [SMALL_STATE(324)] = 15963, + [SMALL_STATE(325)] = 15988, + [SMALL_STATE(326)] = 16019, + [SMALL_STATE(327)] = 16056, + [SMALL_STATE(328)] = 16087, + [SMALL_STATE(329)] = 16112, + [SMALL_STATE(330)] = 16149, + [SMALL_STATE(331)] = 16186, + [SMALL_STATE(332)] = 16223, + [SMALL_STATE(333)] = 16260, + [SMALL_STATE(334)] = 16297, + [SMALL_STATE(335)] = 16322, + [SMALL_STATE(336)] = 16347, + [SMALL_STATE(337)] = 16375, + [SMALL_STATE(338)] = 16409, + [SMALL_STATE(339)] = 16437, + [SMALL_STATE(340)] = 16471, + [SMALL_STATE(341)] = 16505, + [SMALL_STATE(342)] = 16539, + [SMALL_STATE(343)] = 16575, + [SMALL_STATE(344)] = 16609, + [SMALL_STATE(345)] = 16643, + [SMALL_STATE(346)] = 16671, + [SMALL_STATE(347)] = 16705, + [SMALL_STATE(348)] = 16739, + [SMALL_STATE(349)] = 16775, + [SMALL_STATE(350)] = 16811, + [SMALL_STATE(351)] = 16845, + [SMALL_STATE(352)] = 16879, + [SMALL_STATE(353)] = 16905, + [SMALL_STATE(354)] = 16939, + [SMALL_STATE(355)] = 16973, + [SMALL_STATE(356)] = 16998, + [SMALL_STATE(357)] = 17023, + [SMALL_STATE(358)] = 17048, + [SMALL_STATE(359)] = 17073, + [SMALL_STATE(360)] = 17095, + [SMALL_STATE(361)] = 17125, + [SMALL_STATE(362)] = 17155, + [SMALL_STATE(363)] = 17185, + [SMALL_STATE(364)] = 17215, + [SMALL_STATE(365)] = 17245, + [SMALL_STATE(366)] = 17262, + [SMALL_STATE(367)] = 17287, + [SMALL_STATE(368)] = 17312, + [SMALL_STATE(369)] = 17332, + [SMALL_STATE(370)] = 17344, + [SMALL_STATE(371)] = 17356, + [SMALL_STATE(372)] = 17368, + [SMALL_STATE(373)] = 17382, + [SMALL_STATE(374)] = 17395, + [SMALL_STATE(375)] = 17408, + [SMALL_STATE(376)] = 17421, + [SMALL_STATE(377)] = 17434, + [SMALL_STATE(378)] = 17447, + [SMALL_STATE(379)] = 17460, + [SMALL_STATE(380)] = 17473, + [SMALL_STATE(381)] = 17486, + [SMALL_STATE(382)] = 17499, + [SMALL_STATE(383)] = 17512, + [SMALL_STATE(384)] = 17523, + [SMALL_STATE(385)] = 17536, + [SMALL_STATE(386)] = 17549, + [SMALL_STATE(387)] = 17562, + [SMALL_STATE(388)] = 17573, + [SMALL_STATE(389)] = 17584, + [SMALL_STATE(390)] = 17597, + [SMALL_STATE(391)] = 17610, + [SMALL_STATE(392)] = 17623, + [SMALL_STATE(393)] = 17636, + [SMALL_STATE(394)] = 17646, + [SMALL_STATE(395)] = 17656, + [SMALL_STATE(396)] = 17664, + [SMALL_STATE(397)] = 17674, + [SMALL_STATE(398)] = 17684, + [SMALL_STATE(399)] = 17694, + [SMALL_STATE(400)] = 17702, + [SMALL_STATE(401)] = 17712, + [SMALL_STATE(402)] = 17722, + [SMALL_STATE(403)] = 17732, + [SMALL_STATE(404)] = 17742, + [SMALL_STATE(405)] = 17752, + [SMALL_STATE(406)] = 17760, + [SMALL_STATE(407)] = 17768, + [SMALL_STATE(408)] = 17778, + [SMALL_STATE(409)] = 17788, + [SMALL_STATE(410)] = 17796, + [SMALL_STATE(411)] = 17806, + [SMALL_STATE(412)] = 17816, + [SMALL_STATE(413)] = 17823, + [SMALL_STATE(414)] = 17830, + [SMALL_STATE(415)] = 17837, + [SMALL_STATE(416)] = 17844, + [SMALL_STATE(417)] = 17851, + [SMALL_STATE(418)] = 17858, + [SMALL_STATE(419)] = 17865, + [SMALL_STATE(420)] = 17872, + [SMALL_STATE(421)] = 17879, + [SMALL_STATE(422)] = 17886, + [SMALL_STATE(423)] = 17893, + [SMALL_STATE(424)] = 17900, + [SMALL_STATE(425)] = 17907, + [SMALL_STATE(426)] = 17914, + [SMALL_STATE(427)] = 17921, + [SMALL_STATE(428)] = 17928, + [SMALL_STATE(429)] = 17935, + [SMALL_STATE(430)] = 17942, + [SMALL_STATE(431)] = 17949, + [SMALL_STATE(432)] = 17956, + [SMALL_STATE(433)] = 17963, + [SMALL_STATE(434)] = 17970, + [SMALL_STATE(435)] = 17977, + [SMALL_STATE(436)] = 17984, + [SMALL_STATE(437)] = 17991, + [SMALL_STATE(438)] = 17998, + [SMALL_STATE(439)] = 18005, + [SMALL_STATE(440)] = 18012, + [SMALL_STATE(441)] = 18019, + [SMALL_STATE(442)] = 18026, + [SMALL_STATE(443)] = 18033, + [SMALL_STATE(444)] = 18040, + [SMALL_STATE(445)] = 18047, + [SMALL_STATE(446)] = 18054, }; 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(49), - [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), - [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(427), - [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), - [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(72), - [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), - [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(75), - [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135), - [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(52), - [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(448), - [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(197), - [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(195), - [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(190), - [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(444), - [33] = {.entry = {.count = 1, .reusable = true}}, SHIFT(444), - [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(40), - [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(73), - [39] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), - [41] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(49), - [44] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(132), - [47] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(427), - [50] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(4), - [53] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(72), - [56] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(72), - [59] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(75), - [62] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(135), - [65] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(52), - [68] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(448), - [71] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(197), - [74] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(195), - [77] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(190), - [80] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(444), - [83] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(444), - [86] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(40), - [89] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(73), - [92] = {.entry = {.count = 1, .reusable = false}}, SHIFT(54), - [94] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), - [96] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), - [98] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274), - [100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278), - [102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263), - [104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(215), - [106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(218), - [108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217), - [110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), - [112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), - [114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(277), - [116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(279), - [118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), - [120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), - [122] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_root, 1), - [124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252), - [126] = {.entry = {.count = 1, .reusable = false}}, SHIFT(282), - [128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), - [130] = {.entry = {.count = 1, .reusable = false}}, SHIFT(417), - [132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), - [134] = {.entry = {.count = 1, .reusable = false}}, SHIFT(269), - [136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269), - [138] = {.entry = {.count = 1, .reusable = false}}, SHIFT(268), - [140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), - [142] = {.entry = {.count = 1, .reusable = false}}, SHIFT(267), - [144] = {.entry = {.count = 1, .reusable = false}}, SHIFT(435), - [146] = {.entry = {.count = 1, .reusable = false}}, SHIFT(181), - [148] = {.entry = {.count = 1, .reusable = false}}, SHIFT(173), - [150] = {.entry = {.count = 1, .reusable = false}}, SHIFT(179), - [152] = {.entry = {.count = 1, .reusable = false}}, SHIFT(436), - [154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(436), - [156] = {.entry = {.count = 1, .reusable = false}}, SHIFT(34), - [158] = {.entry = {.count = 1, .reusable = false}}, SHIFT(246), - [160] = {.entry = {.count = 1, .reusable = false}}, SHIFT(118), - [162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133), - [164] = {.entry = {.count = 1, .reusable = false}}, SHIFT(431), - [166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [168] = {.entry = {.count = 1, .reusable = false}}, SHIFT(95), - [170] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), - [172] = {.entry = {.count = 1, .reusable = false}}, SHIFT(94), - [174] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141), - [176] = {.entry = {.count = 1, .reusable = false}}, SHIFT(93), - [178] = {.entry = {.count = 1, .reusable = false}}, SHIFT(446), - [180] = {.entry = {.count = 1, .reusable = false}}, SHIFT(171), - [182] = {.entry = {.count = 1, .reusable = false}}, SHIFT(447), - [184] = {.entry = {.count = 1, .reusable = true}}, SHIFT(447), - [186] = {.entry = {.count = 1, .reusable = false}}, SHIFT(32), - [188] = {.entry = {.count = 1, .reusable = false}}, SHIFT(108), - [190] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_logic, 3), - [192] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_logic, 3), - [194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), - [196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_math, 3), - [198] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_math, 3), - [200] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 5), - [202] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index, 5), - [204] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), - [206] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_kind, 1), - [208] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression_kind, 1), - [210] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_expression_kind, 1), - [212] = {.entry = {.count = 1, .reusable = false}}, SHIFT(275), - [214] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression, 1), - [216] = {.entry = {.count = 1, .reusable = false}}, SHIFT(368), - [218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275), - [220] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 4), - [222] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 4), - [224] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_option, 1), - [226] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_option, 1), - [228] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 2), - [230] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 2), - [232] = {.entry = {.count = 1, .reusable = false}}, SHIFT(42), - [234] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 4), - [236] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 4), - [238] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 3), - [240] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index, 3), - [242] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_option, 4), - [244] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_option, 4), - [246] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function, 4), - [248] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function, 4), - [250] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 2), - [252] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 2), - [254] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_expression, 1), - [256] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_expression, 1), - [258] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 3), - [260] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 3), - [262] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 6), - [264] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yield, 6), - [266] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), - [268] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index_expression, 1), - [270] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 3), - [272] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yield, 3), - [274] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 3), - [276] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 3), - [278] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function, 5), - [280] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function, 5), - [282] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1), - [284] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 1), - [286] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value, 1), - [288] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_value, 1), - [290] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_built_in_value, 1), - [292] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_built_in_value, 1), - [294] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 3), - [296] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 3), - [298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean, 1), - [300] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean, 1), - [302] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_expression, 3), - [304] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_expression, 3), - [306] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression, 3), - [308] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index_expression, 3), - [310] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 3), - [312] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 3), - [314] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map, 3), - [316] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_map, 3), - [318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), - [320] = {.entry = {.count = 1, .reusable = true}}, SHIFT(174), - [322] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 1), - [324] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 1), - [326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221), - [328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(305), - [330] = {.entry = {.count = 1, .reusable = false}}, SHIFT(305), - [332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(306), - [334] = {.entry = {.count = 1, .reusable = false}}, SHIFT(306), - [336] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__function_expression_kind, 1), - [338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), - [340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), - [342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), - [344] = {.entry = {.count = 1, .reusable = false}}, SHIFT(250), - [346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(406), - [348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224), - [350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428), - [352] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(250), - [355] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(129), - [358] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(406), - [361] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), - [363] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(269), - [366] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(269), - [369] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(268), - [372] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(136), - [375] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(267), - [378] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(435), - [381] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(428), - [384] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(246), - [387] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297), - [389] = {.entry = {.count = 1, .reusable = false}}, SHIFT(329), - [391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(408), - [393] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(109), - [396] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(133), - [399] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__expression_list, 2), - [401] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(409), - [404] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(95), - [407] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(95), - [410] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(94), - [413] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(141), - [416] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(93), - [419] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(446), - [422] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(108), - [425] = {.entry = {.count = 1, .reusable = false}}, SHIFT(109), - [427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(257), - [429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(409), - [431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(411), - [433] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291), - [435] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), - [437] = {.entry = {.count = 1, .reusable = true}}, SHIFT(414), - [439] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), - [441] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), - [443] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259), - [445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256), - [447] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270), - [449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), - [451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), - [453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), - [455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), - [457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), - [459] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251), - [461] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), - [463] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(109), - [466] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(133), - [469] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(409), - [472] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(95), - [475] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(95), - [478] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(94), - [481] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(141), - [484] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), - [486] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(93), - [489] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(446), - [492] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(108), - [495] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), - [497] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__expression_list, 1), - [499] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__expression_list, 1), - [501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303), - [503] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 1), - [505] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 1), - [507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(302), - [509] = {.entry = {.count = 1, .reusable = false}}, SHIFT(325), - [511] = {.entry = {.count = 1, .reusable = false}}, SHIFT(68), - [513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(415), - [515] = {.entry = {.count = 1, .reusable = false}}, SHIFT(289), - [517] = {.entry = {.count = 1, .reusable = true}}, SHIFT(146), - [519] = {.entry = {.count = 1, .reusable = false}}, SHIFT(115), - [521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147), - [523] = {.entry = {.count = 1, .reusable = false}}, SHIFT(87), - [525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), - [527] = {.entry = {.count = 1, .reusable = false}}, SHIFT(255), - [529] = {.entry = {.count = 1, .reusable = false}}, SHIFT(61), - [531] = {.entry = {.count = 1, .reusable = false}}, SHIFT(122), - [533] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_else, 2), - [535] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_else, 2), - [537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), - [539] = {.entry = {.count = 1, .reusable = false}}, SHIFT(385), - [541] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_else, 1), - [543] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_else, 1), - [545] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_else_repeat1, 2), - [547] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_else_repeat1, 2), - [549] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_if_else_repeat1, 2), SHIFT_REPEAT(196), - [552] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_if, 3), - [554] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_if, 3), - [556] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if, 3), - [558] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if, 3), - [560] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return, 2), - [562] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return, 2), - [564] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 2), - [566] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 2), - [568] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match, 5), - [570] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match, 5), - [572] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while, 3), - [574] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while, 3), - [576] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_assignment, 3), - [578] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index_assignment, 3), - [580] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else, 2), - [582] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else, 2), - [584] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_else, 3), - [586] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_else, 3), - [588] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 4), - [590] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment, 4), - [592] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3), - [594] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment, 3), - [596] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for, 5), - [598] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for, 5), - [600] = {.entry = {.count = 1, .reusable = false}}, SHIFT(117), - [602] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145), - [604] = {.entry = {.count = 1, .reusable = false}}, SHIFT(65), - [606] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), - [608] = {.entry = {.count = 1, .reusable = false}}, SHIFT(260), - [610] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), - [612] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), - [614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), - [616] = {.entry = {.count = 1, .reusable = false}}, SHIFT(393), - [618] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_if_else_repeat1, 2), SHIFT_REPEAT(187), - [621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), - [623] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment_operator, 1), - [625] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_operator, 1), - [627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), - [629] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 3), - [631] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 3), - [633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), - [635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), - [637] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 4), - [639] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 4), - [641] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), - [643] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), - [645] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_math_operator, 1), - [647] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_math_operator, 1), - [649] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_logic_operator, 1), - [651] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_logic_operator, 1), - [653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), - [655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(431), - [657] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(433), - [661] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), - [663] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417), - [665] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [667] = {.entry = {.count = 1, .reusable = true}}, SHIFT(427), - [669] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), - [671] = {.entry = {.count = 1, .reusable = true}}, SHIFT(438), - [673] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), - [675] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), - [677] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 2), - [679] = {.entry = {.count = 1, .reusable = true}}, SHIFT(365), - [681] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 3), - [683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(369), - [685] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1), - [687] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), - [689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), - [691] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 5), - [693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), - [695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(247), - [697] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 4), - [699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), - [701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), - [703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), - [705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(359), - [707] = {.entry = {.count = 1, .reusable = true}}, SHIFT(328), - [709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(416), - [711] = {.entry = {.count = 1, .reusable = true}}, SHIFT(366), - [713] = {.entry = {.count = 1, .reusable = true}}, SHIFT(330), - [715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(434), - [717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), - [719] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat1, 2), SHIFT_REPEAT(359), - [722] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_repeat1, 2), - [724] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat1, 2), SHIFT_REPEAT(416), - [727] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat1, 2), SHIFT_REPEAT(366), - [730] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat1, 2), SHIFT_REPEAT(330), - [733] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat1, 2), SHIFT_REPEAT(434), - [736] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), - [738] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264), - [740] = {.entry = {.count = 1, .reusable = true}}, SHIFT(327), - [742] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_repeat1, 1), - [744] = {.entry = {.count = 1, .reusable = true}}, SHIFT(370), - [746] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), - [748] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265), - [750] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), - [752] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_definition, 3), - [754] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_definition, 3), - [756] = {.entry = {.count = 1, .reusable = false}}, SHIFT(390), - [758] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), - [760] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 2), SHIFT_REPEAT(386), - [763] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 2), - [765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(386), - [767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), - [769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249), - [771] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 4), - [773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(412), - [775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(403), - [777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(405), - [779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), - [781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368), - [783] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 3), - [785] = {.entry = {.count = 1, .reusable = true}}, SHIFT(407), - [787] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 2), - [789] = {.entry = {.count = 1, .reusable = true}}, SHIFT(399), - [791] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 2), SHIFT_REPEAT(403), - [794] = {.entry = {.count = 1, .reusable = true}}, SHIFT(404), - [796] = {.entry = {.count = 1, .reusable = true}}, SHIFT(410), - [798] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), - [800] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 3), - [802] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), - [804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), - [806] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 5), - [808] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262), - [810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(402), - [812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), - [814] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), - [816] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), - [818] = {.entry = {.count = 1, .reusable = true}}, SHIFT(337), - [820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), - [822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238), - [824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), - [826] = {.entry = {.count = 1, .reusable = true}}, SHIFT(243), - [828] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236), - [830] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241), - [834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(341), - [836] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [838] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), - [840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), - [842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(367), - [844] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), - [846] = {.entry = {.count = 1, .reusable = true}}, SHIFT(439), - [848] = {.entry = {.count = 1, .reusable = true}}, SHIFT(371), - [850] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), - [852] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), - [854] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), - [856] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), - [858] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), - [860] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [862] = {.entry = {.count = 1, .reusable = true}}, SHIFT(418), - [864] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), - [866] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), - [868] = {.entry = {.count = 1, .reusable = true}}, SHIFT(421), - [870] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), + [5] = {.entry = {.count = 1, .reusable = false}}, SHIFT(45), + [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), + [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(437), + [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), + [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(52), + [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), + [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(58), + [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), + [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(413), + [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(72), + [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(429), + [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(205), + [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(188), + [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(195), + [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(424), + [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(424), + [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(30), + [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(65), + [41] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), + [43] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(45), + [46] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(138), + [49] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(437), + [52] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(5), + [55] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(52), + [58] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(52), + [61] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(58), + [64] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(123), + [67] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(413), + [70] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(72), + [73] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(429), + [76] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(205), + [79] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(188), + [82] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(195), + [85] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(424), + [88] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(424), + [91] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(30), + [94] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(65), + [97] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252), + [99] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212), + [101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), + [103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(209), + [105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), + [107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(251), + [109] = {.entry = {.count = 1, .reusable = true}}, SHIFT(244), + [111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), + [113] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275), + [115] = {.entry = {.count = 1, .reusable = true}}, SHIFT(271), + [117] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_root, 1), + [119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), + [121] = {.entry = {.count = 1, .reusable = true}}, SHIFT(272), + [123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), + [125] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), + [127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), + [129] = {.entry = {.count = 1, .reusable = false}}, SHIFT(276), + [131] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), + [133] = {.entry = {.count = 1, .reusable = false}}, SHIFT(418), + [135] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), + [137] = {.entry = {.count = 1, .reusable = false}}, SHIFT(260), + [139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260), + [141] = {.entry = {.count = 1, .reusable = false}}, SHIFT(259), + [143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135), + [145] = {.entry = {.count = 1, .reusable = false}}, SHIFT(427), + [147] = {.entry = {.count = 1, .reusable = false}}, SHIFT(256), + [149] = {.entry = {.count = 1, .reusable = false}}, SHIFT(428), + [151] = {.entry = {.count = 1, .reusable = false}}, SHIFT(187), + [153] = {.entry = {.count = 1, .reusable = false}}, SHIFT(204), + [155] = {.entry = {.count = 1, .reusable = false}}, SHIFT(183), + [157] = {.entry = {.count = 1, .reusable = false}}, SHIFT(445), + [159] = {.entry = {.count = 1, .reusable = true}}, SHIFT(445), + [161] = {.entry = {.count = 1, .reusable = false}}, SHIFT(25), + [163] = {.entry = {.count = 1, .reusable = false}}, SHIFT(240), + [165] = {.entry = {.count = 1, .reusable = false}}, SHIFT(112), + [167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142), + [169] = {.entry = {.count = 1, .reusable = false}}, SHIFT(423), + [171] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [173] = {.entry = {.count = 1, .reusable = false}}, SHIFT(88), + [175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), + [177] = {.entry = {.count = 1, .reusable = false}}, SHIFT(86), + [179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), + [181] = {.entry = {.count = 1, .reusable = false}}, SHIFT(440), + [183] = {.entry = {.count = 1, .reusable = false}}, SHIFT(90), + [185] = {.entry = {.count = 1, .reusable = false}}, SHIFT(441), + [187] = {.entry = {.count = 1, .reusable = false}}, SHIFT(199), + [189] = {.entry = {.count = 1, .reusable = false}}, SHIFT(446), + [191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(446), + [193] = {.entry = {.count = 1, .reusable = false}}, SHIFT(26), + [195] = {.entry = {.count = 1, .reusable = false}}, SHIFT(87), + [197] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_logic, 3), + [199] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_logic, 3), + [201] = {.entry = {.count = 1, .reusable = true}}, SHIFT(152), + [203] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_math, 3), + [205] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_math, 3), + [207] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 5), + [209] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index, 5), + [211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180), + [213] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_kind, 1), + [215] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression_kind, 1), + [217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_expression_kind, 1), + [219] = {.entry = {.count = 1, .reusable = false}}, SHIFT(261), + [221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression, 1), + [223] = {.entry = {.count = 1, .reusable = false}}, SHIFT(360), + [225] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261), + [227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_expression, 1), + [229] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_expression, 1), + [231] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 3), + [233] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 3), + [235] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1), + [237] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 1), + [239] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_option, 4), + [241] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_option, 4), + [243] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index, 3), + [245] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index, 3), + [247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function, 4), + [249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function, 4), + [251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_value, 1), + [253] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_value, 1), + [255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 4), + [257] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 4), + [259] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 3), + [261] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 3), + [263] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 4), + [265] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 4), + [267] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function, 5), + [269] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function, 5), + [271] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean, 1), + [273] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean, 1), + [275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), + [277] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index_expression, 1), + [279] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_structure, 4), + [281] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_structure, 4), + [283] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 6), + [285] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yield, 6), + [287] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_built_in_value, 1), + [289] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_built_in_value, 1), + [291] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 2), + [293] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 2), + [295] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 2), + [297] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 2), + [299] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 3), + [301] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_yield, 3), + [303] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 3), + [305] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 3), + [307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_expression, 3), + [309] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_expression, 3), + [311] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_expression, 3), + [313] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index_expression, 3), + [315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_option, 1), + [317] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_option, 1), + [319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 3), + [321] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 3), + [323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), + [325] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 1), + [327] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 1), + [329] = {.entry = {.count = 1, .reusable = true}}, SHIFT(301), + [331] = {.entry = {.count = 1, .reusable = false}}, SHIFT(301), + [333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(298), + [335] = {.entry = {.count = 1, .reusable = false}}, SHIFT(298), + [337] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220), + [339] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__function_expression_kind, 1), + [341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(201), + [343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), + [345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(169), + [347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), + [349] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(239), + [352] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(127), + [355] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), + [357] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(260), + [360] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(260), + [363] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(259), + [366] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(135), + [369] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(427), + [372] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(256), + [375] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(428), + [378] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(419), + [381] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 2), SHIFT_REPEAT(240), + [384] = {.entry = {.count = 1, .reusable = false}}, SHIFT(239), + [386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285), + [388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(419), + [390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217), + [392] = {.entry = {.count = 1, .reusable = false}}, SHIFT(321), + [394] = {.entry = {.count = 1, .reusable = true}}, SHIFT(393), + [396] = {.entry = {.count = 1, .reusable = false}}, SHIFT(91), + [398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249), + [400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), + [402] = {.entry = {.count = 1, .reusable = true}}, SHIFT(397), + [404] = {.entry = {.count = 1, .reusable = true}}, SHIFT(403), + [406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(290), + [408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), + [410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(268), + [412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), + [414] = {.entry = {.count = 1, .reusable = true}}, SHIFT(257), + [416] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), + [418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [420] = {.entry = {.count = 1, .reusable = true}}, SHIFT(242), + [422] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(91), + [425] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(142), + [428] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__expression_list, 2), + [430] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(88), + [433] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(88), + [436] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(86), + [439] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(139), + [442] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(440), + [445] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(90), + [448] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(441), + [451] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), SHIFT_REPEAT(87), + [454] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(91), + [457] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(142), + [460] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(88), + [463] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(88), + [466] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(86), + [469] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(139), + [472] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), + [474] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(440), + [477] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(90), + [480] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(441), + [483] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(87), + [486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), + [488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), + [490] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), + [492] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), + [494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), + [496] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246), + [498] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 1), + [500] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 1), + [502] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297), + [504] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__expression_list, 1), + [506] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__expression_list, 1), + [508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(296), + [510] = {.entry = {.count = 1, .reusable = false}}, SHIFT(46), + [512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), + [514] = {.entry = {.count = 1, .reusable = false}}, SHIFT(284), + [516] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), + [518] = {.entry = {.count = 1, .reusable = false}}, SHIFT(318), + [520] = {.entry = {.count = 1, .reusable = false}}, SHIFT(78), + [522] = {.entry = {.count = 1, .reusable = false}}, SHIFT(54), + [524] = {.entry = {.count = 1, .reusable = false}}, SHIFT(118), + [526] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), + [528] = {.entry = {.count = 1, .reusable = false}}, SHIFT(247), + [530] = {.entry = {.count = 1, .reusable = false}}, SHIFT(89), + [532] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_else, 2), + [534] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_else, 2), + [536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173), + [538] = {.entry = {.count = 1, .reusable = false}}, SHIFT(375), + [540] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_else, 1), + [542] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_else, 1), + [544] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_else_repeat1, 2), + [546] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_else_repeat1, 2), + [548] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_if_else_repeat1, 2), SHIFT_REPEAT(173), + [551] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if, 3), + [553] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if, 3), + [555] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_if, 3), + [557] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_if, 3), + [559] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_else, 3), + [561] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_else, 3), + [563] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else, 2), + [565] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else, 2), + [567] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 4), + [569] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment, 4), + [571] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match, 5), + [573] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match, 5), + [575] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for, 5), + [577] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for, 5), + [579] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return, 2), + [581] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return, 2), + [583] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 2), + [585] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 2), + [587] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_index_assignment, 3), + [589] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_index_assignment, 3), + [591] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while, 3), + [593] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while, 3), + [595] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3), + [597] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment, 3), + [599] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202), + [601] = {.entry = {.count = 1, .reusable = false}}, SHIFT(85), + [603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), + [605] = {.entry = {.count = 1, .reusable = false}}, SHIFT(241), + [607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), + [609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), + [611] = {.entry = {.count = 1, .reusable = false}}, SHIFT(386), + [613] = {.entry = {.count = 1, .reusable = false}}, SHIFT(62), + [615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), + [617] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_if_else_repeat1, 2), SHIFT_REPEAT(175), + [620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(203), + [622] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment_operator, 1), + [624] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_operator, 1), + [626] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), + [628] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), + [630] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 3), + [632] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 3), + [634] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295), + [636] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_match_repeat1, 4), + [638] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_repeat1, 4), + [640] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__expression_list, 2), + [642] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), + [644] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_logic_operator, 1), + [646] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_logic_operator, 1), + [648] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_math_operator, 1), + [650] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_math_operator, 1), + [652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(423), + [654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193), + [656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(437), + [658] = {.entry = {.count = 1, .reusable = true}}, SHIFT(425), + [660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), + [662] = {.entry = {.count = 1, .reusable = true}}, SHIFT(418), + [664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417), + [666] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [668] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 3), + [670] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 3), + [672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(362), + [674] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 2), + [676] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 2), + [678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(363), + [680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), + [682] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 1), + [684] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1), + [686] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), + [688] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), + [690] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), + [692] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263), + [694] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147), + [696] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), + [698] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), + [700] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 5), + [702] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 5), + [704] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type, 4), + [706] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 4), + [708] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), + [710] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), + [712] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_type_repeat1, 2), SHIFT_REPEAT(324), + [715] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat1, 2), SHIFT_REPEAT(348), + [718] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_repeat1, 2), + [720] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat1, 2), SHIFT_REPEAT(442), + [723] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_repeat1, 2), SHIFT_REPEAT(364), + [726] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_type_repeat1, 2), SHIFT_REPEAT(439), + [729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269), + [731] = {.entry = {.count = 1, .reusable = false}}, SHIFT(324), + [733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(348), + [735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(320), + [737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(442), + [739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(364), + [741] = {.entry = {.count = 1, .reusable = false}}, SHIFT(439), + [743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319), + [745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254), + [747] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_type_repeat1, 1), + [749] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_repeat1, 1), + [751] = {.entry = {.count = 1, .reusable = true}}, SHIFT(359), + [753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), + [755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), + [757] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_type_repeat1, 2), + [759] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_type_definition, 3), + [761] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_definition, 3), + [763] = {.entry = {.count = 1, .reusable = false}}, SHIFT(382), + [765] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_structure_repeat1, 1), + [767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(409), + [769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), + [771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360), + [773] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_structure_repeat1, 2), + [775] = {.entry = {.count = 1, .reusable = true}}, SHIFT(395), + [777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(368), + [781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), + [783] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_structure_repeat1, 2), SHIFT_REPEAT(368), + [786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(401), + [788] = {.entry = {.count = 1, .reusable = true}}, SHIFT(408), + [790] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 2), SHIFT_REPEAT(401), + [793] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 2), + [795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(407), + [797] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_structure_repeat1, 4), + [799] = {.entry = {.count = 1, .reusable = true}}, SHIFT(406), + [801] = {.entry = {.count = 1, .reusable = true}}, SHIFT(399), + [803] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_structure_repeat1, 3), + [805] = {.entry = {.count = 1, .reusable = true}}, SHIFT(405), + [807] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265), + [809] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), + [811] = {.entry = {.count = 1, .reusable = true}}, SHIFT(402), + [813] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), + [815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), + [817] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 3), + [819] = {.entry = {.count = 1, .reusable = true}}, SHIFT(267), + [821] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_structure_repeat1, 5), + [823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236), + [825] = {.entry = {.count = 1, .reusable = true}}, SHIFT(404), + [827] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238), + [831] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130), + [833] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [835] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), + [837] = {.entry = {.count = 1, .reusable = true}}, SHIFT(335), + [839] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141), + [841] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234), + [843] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [845] = {.entry = {.count = 1, .reusable = true}}, SHIFT(430), + [847] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [849] = {.entry = {.count = 1, .reusable = true}}, SHIFT(410), + [851] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182), + [853] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), + [855] = {.entry = {.count = 1, .reusable = true}}, SHIFT(171), + [857] = {.entry = {.count = 1, .reusable = true}}, SHIFT(165), + [859] = {.entry = {.count = 1, .reusable = true}}, SHIFT(328), + [861] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235), + [863] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), + [865] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231), + [867] = {.entry = {.count = 1, .reusable = true}}, SHIFT(228), + [869] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), + [871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(365), + [873] = {.entry = {.count = 1, .reusable = true}}, SHIFT(361), + [875] = {.entry = {.count = 1, .reusable = true}}, SHIFT(398), + [877] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), + [879] = {.entry = {.count = 1, .reusable = true}}, SHIFT(411), + [881] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), + [883] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237), + [885] = {.entry = {.count = 1, .reusable = true}}, SHIFT(431), + [887] = {.entry = {.count = 1, .reusable = true}}, SHIFT(443), }; #ifdef __cplusplus