File 70.patch of Package tree-sitter-lua

From 84c066e2716f486fa455f50315bc52d4e87f15a9 Mon Sep 17 00:00:00 2001
From: Riley Bruins <ribru17@hotmail.com>
Date: Wed, 31 Dec 2025 12:38:58 -0800
Subject: [PATCH] fix: apply `operator` field to `=`

---
 grammar.js          |  10 +-
 src/grammar.json    |  40 +++-
 src/node-types.json |  33 +++-
 src/parser.c        | 439 ++++++++++++++++++++++----------------------
 4 files changed, 291 insertions(+), 231 deletions(-)

diff --git a/grammar.js b/grammar.js
index 777d6cc..31afb44 100644
--- a/grammar.js
+++ b/grammar.js
@@ -117,7 +117,7 @@ export default grammar({
     assignment_statement: ($) =>
       seq(
         alias($._variable_assignment_varlist, $.variable_list),
-        '=',
+        field('operator', '='),
         alias($._variable_assignment_explist, $.expression_list)
       ),
     // varlist ::= var {',' var}
@@ -201,7 +201,7 @@ export default grammar({
     for_numeric_clause: ($) =>
       seq(
         field('name', $.identifier),
-        '=',
+        field('operator', '='),
         field('start', $.expression),
         ',',
         field('end', $.expression),
@@ -265,7 +265,7 @@ export default grammar({
     _local_variable_assignment: ($) =>
       seq(
         alias($._att_name_list, $.variable_list),
-        '=',
+        field('operator', '='),
         alias($._variable_assignment_explist, $.expression_list)
       ),
     // namelist ::= Name {',' Name}
@@ -496,10 +496,10 @@ export default grammar({
           '[',
           field('name', $.expression),
           ']',
-          '=',
+          field('operator', '='),
           field('value', $.expression)
         ),
-        seq(field('name', $.identifier), '=', field('value', $.expression)),
+        seq(field('name', $.identifier), field('operator', '='), field('value', $.expression)),
         field('value', $.expression)
       ),
 
diff --git a/src/grammar.json b/src/grammar.json
index d20226d..107cc75 100644
--- a/src/grammar.json
+++ b/src/grammar.json
@@ -196,8 +196,12 @@
           "value": "variable_list"
         },
         {
-          "type": "STRING",
-          "value": "="
+          "type": "FIELD",
+          "name": "operator",
+          "content": {
+            "type": "STRING",
+            "value": "="
+          }
         },
         {
           "type": "ALIAS",
@@ -671,8 +675,12 @@
           }
         },
         {
-          "type": "STRING",
-          "value": "="
+          "type": "FIELD",
+          "name": "operator",
+          "content": {
+            "type": "STRING",
+            "value": "="
+          }
         },
         {
           "type": "FIELD",
@@ -928,8 +936,12 @@
           "value": "variable_list"
         },
         {
-          "type": "STRING",
-          "value": "="
+          "type": "FIELD",
+          "name": "operator",
+          "content": {
+            "type": "STRING",
+            "value": "="
+          }
         },
         {
           "type": "ALIAS",
@@ -2326,8 +2338,12 @@
               "value": "]"
             },
             {
-              "type": "STRING",
-              "value": "="
+              "type": "FIELD",
+              "name": "operator",
+              "content": {
+                "type": "STRING",
+                "value": "="
+              }
             },
             {
               "type": "FIELD",
@@ -2351,8 +2367,12 @@
               }
             },
             {
-              "type": "STRING",
-              "value": "="
+              "type": "FIELD",
+              "name": "operator",
+              "content": {
+                "type": "STRING",
+                "value": "="
+              }
             },
             {
               "type": "FIELD",
diff --git a/src/node-types.json b/src/node-types.json
index e7b57b0..d36015b 100644
--- a/src/node-types.json
+++ b/src/node-types.json
@@ -161,7 +161,18 @@
   {
     "type": "assignment_statement",
     "named": true,
-    "fields": {},
+    "fields": {
+      "operator": {
+        "multiple": false,
+        "required": true,
+        "types": [
+          {
+            "type": "=",
+            "named": false
+          }
+        ]
+      }
+    },
     "children": {
       "multiple": true,
       "required": true,
@@ -567,6 +578,16 @@
           }
         ]
       },
+      "operator": {
+        "multiple": false,
+        "required": false,
+        "types": [
+          {
+            "type": "=",
+            "named": false
+          }
+        ]
+      },
       "value": {
         "multiple": false,
         "required": true,
@@ -622,6 +643,16 @@
           }
         ]
       },
+      "operator": {
+        "multiple": false,
+        "required": true,
+        "types": [
+          {
+            "type": "=",
+            "named": false
+          }
+        ]
+      },
       "start": {
         "multiple": false,
         "required": true,
diff --git a/src/parser.c b/src/parser.c
index 8a6d0a7..95b8c9e 100644
--- a/src/parser.c
+++ b/src/parser.c
@@ -16,7 +16,7 @@
 #define FIELD_COUNT 22
 #define MAX_ALIAS_SEQUENCE_LENGTH 7
 #define MAX_RESERVED_WORD_SET_SIZE 0
-#define PRODUCTION_ID_COUNT 59
+#define PRODUCTION_ID_COUNT 60
 #define SUPERTYPE_COUNT 4
 
 enum ts_symbol_identifiers {
@@ -1053,56 +1053,57 @@ static const TSMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = {
   [6] = {.index = 9, .length = 3},
   [7] = {.index = 12, .length = 2},
   [8] = {.index = 14, .length = 2},
-  [9] = {.index = 16, .length = 2},
-  [10] = {.index = 18, .length = 2},
-  [11] = {.index = 20, .length = 2},
-  [12] = {.index = 22, .length = 3},
-  [13] = {.index = 25, .length = 2},
-  [14] = {.index = 27, .length = 2},
-  [15] = {.index = 29, .length = 1},
-  [16] = {.index = 30, .length = 2},
-  [17] = {.index = 32, .length = 1},
+  [9] = {.index = 16, .length = 1},
+  [10] = {.index = 17, .length = 2},
+  [11] = {.index = 19, .length = 2},
+  [12] = {.index = 21, .length = 2},
+  [13] = {.index = 23, .length = 3},
+  [14] = {.index = 26, .length = 2},
+  [15] = {.index = 28, .length = 2},
+  [16] = {.index = 30, .length = 1},
+  [17] = {.index = 31, .length = 2},
   [18] = {.index = 33, .length = 1},
-  [19] = {.index = 34, .length = 3},
-  [20] = {.index = 37, .length = 2},
-  [21] = {.index = 39, .length = 3},
-  [22] = {.index = 42, .length = 2},
-  [23] = {.index = 44, .length = 2},
+  [19] = {.index = 34, .length = 1},
+  [20] = {.index = 35, .length = 3},
+  [21] = {.index = 38, .length = 2},
+  [22] = {.index = 40, .length = 3},
+  [23] = {.index = 43, .length = 3},
   [24] = {.index = 46, .length = 2},
-  [25] = {.index = 48, .length = 1},
-  [26] = {.index = 49, .length = 2},
-  [27] = {.index = 51, .length = 1},
-  [28] = {.index = 22, .length = 3},
-  [29] = {.index = 52, .length = 3},
-  [30] = {.index = 55, .length = 1},
-  [31] = {.index = 56, .length = 2},
-  [32] = {.index = 58, .length = 1},
-  [33] = {.index = 59, .length = 1},
-  [34] = {.index = 60, .length = 1},
-  [35] = {.index = 61, .length = 3},
-  [36] = {.index = 64, .length = 4},
-  [37] = {.index = 68, .length = 4},
-  [38] = {.index = 72, .length = 3},
-  [39] = {.index = 75, .length = 2},
-  [40] = {.index = 77, .length = 1},
-  [41] = {.index = 78, .length = 2},
-  [42] = {.index = 80, .length = 2},
-  [43] = {.index = 82, .length = 2},
-  [44] = {.index = 84, .length = 2},
-  [45] = {.index = 86, .length = 2},
-  [46] = {.index = 88, .length = 2},
-  [47] = {.index = 90, .length = 2},
-  [48] = {.index = 92, .length = 2},
-  [49] = {.index = 94, .length = 2},
-  [50] = {.index = 96, .length = 1},
-  [51] = {.index = 97, .length = 2},
-  [52] = {.index = 99, .length = 3},
-  [53] = {.index = 102, .length = 3},
-  [54] = {.index = 105, .length = 3},
-  [55] = {.index = 108, .length = 3},
-  [56] = {.index = 111, .length = 2},
-  [57] = {.index = 113, .length = 4},
-  [58] = {.index = 117, .length = 4},
+  [25] = {.index = 48, .length = 2},
+  [26] = {.index = 50, .length = 1},
+  [27] = {.index = 51, .length = 2},
+  [28] = {.index = 53, .length = 1},
+  [29] = {.index = 23, .length = 3},
+  [30] = {.index = 54, .length = 3},
+  [31] = {.index = 57, .length = 1},
+  [32] = {.index = 58, .length = 2},
+  [33] = {.index = 60, .length = 1},
+  [34] = {.index = 61, .length = 1},
+  [35] = {.index = 62, .length = 1},
+  [36] = {.index = 63, .length = 3},
+  [37] = {.index = 66, .length = 4},
+  [38] = {.index = 70, .length = 4},
+  [39] = {.index = 74, .length = 4},
+  [40] = {.index = 78, .length = 2},
+  [41] = {.index = 80, .length = 1},
+  [42] = {.index = 81, .length = 2},
+  [43] = {.index = 83, .length = 3},
+  [44] = {.index = 86, .length = 2},
+  [45] = {.index = 88, .length = 2},
+  [46] = {.index = 90, .length = 2},
+  [47] = {.index = 92, .length = 2},
+  [48] = {.index = 94, .length = 2},
+  [49] = {.index = 96, .length = 2},
+  [50] = {.index = 98, .length = 2},
+  [51] = {.index = 100, .length = 1},
+  [52] = {.index = 101, .length = 2},
+  [53] = {.index = 103, .length = 3},
+  [54] = {.index = 106, .length = 3},
+  [55] = {.index = 109, .length = 3},
+  [56] = {.index = 112, .length = 4},
+  [57] = {.index = 116, .length = 3},
+  [58] = {.index = 119, .length = 4},
+  [59] = {.index = 123, .length = 5},
 };
 
 static const TSFieldMapEntry ts_field_map_entries[] = {
@@ -1131,164 +1132,172 @@ static const TSFieldMapEntry ts_field_map_entries[] = {
     {field_method, 0, .inherited = true},
     {field_table, 0, .inherited = true},
   [16] =
+    {field_operator, 1, .inherited = true},
+  [17] =
     {field_attribute, 1, .inherited = true},
     {field_name, 1, .inherited = true},
-  [18] =
+  [19] =
     {field_arguments, 1},
     {field_name, 0},
-  [20] =
+  [21] =
     {field_name, 0},
     {field_name, 1, .inherited = true},
-  [22] =
+  [23] =
     {field_content, 1},
     {field_end, 2},
     {field_start, 0},
-  [25] =
+  [26] =
     {field_body, 1, .inherited = true},
     {field_parameters, 1, .inherited = true},
-  [27] =
+  [28] =
     {field_end, 1},
     {field_start, 0},
-  [29] =
-    {field_value, 0},
   [30] =
+    {field_value, 0},
+  [31] =
     {field_operand, 1},
     {field_operator, 0},
-  [32] =
-    {field_body, 1},
   [33] =
-    {field_condition, 2},
+    {field_body, 1},
   [34] =
+    {field_condition, 2},
+  [35] =
     {field_body, 2, .inherited = true},
     {field_name, 1},
     {field_parameters, 2, .inherited = true},
-  [37] =
+  [38] =
     {field_attribute, 1},
     {field_name, 0},
-  [39] =
+  [40] =
     {field_attribute, 1, .inherited = true},
     {field_name, 0},
     {field_name, 1, .inherited = true},
-  [42] =
+  [43] =
     {field_name, 0, .inherited = true},
+    {field_operator, 1},
     {field_value, 2, .inherited = true},
-  [44] =
+  [46] =
     {field_field, 2},
     {field_table, 0},
-  [46] =
+  [48] =
     {field_method, 2},
     {field_table, 0},
-  [48] =
+  [50] =
     {field_name, 1},
-  [49] =
+  [51] =
     {field_name, 0, .inherited = true},
     {field_name, 1, .inherited = true},
-  [51] =
+  [53] =
     {field_parameters, 0},
-  [52] =
+  [54] =
     {field_left, 0},
     {field_operator, 1},
     {field_right, 2},
-  [55] =
+  [57] =
     {field_condition, 1},
-  [56] =
+  [58] =
     {field_body, 1},
     {field_condition, 3},
-  [58] =
+  [60] =
     {field_alternative, 0},
-  [59] =
+  [61] =
     {field_clause, 1},
-  [60] =
+  [62] =
     {field_name, 0, .inherited = true},
-  [61] =
+  [63] =
     {field_body, 3, .inherited = true},
     {field_name, 2},
     {field_parameters, 3, .inherited = true},
-  [64] =
+  [66] =
     {field_attribute, 1},
     {field_attribute, 2, .inherited = true},
     {field_name, 0},
     {field_name, 2, .inherited = true},
-  [68] =
+  [70] =
     {field_attribute, 0, .inherited = true},
     {field_attribute, 1, .inherited = true},
     {field_name, 0, .inherited = true},
     {field_name, 1, .inherited = true},
-  [72] =
+  [74] =
     {field_attribute, 0, .inherited = true},
     {field_name, 0, .inherited = true},
+    {field_operator, 1},
     {field_value, 2, .inherited = true},
-  [75] =
+  [78] =
     {field_value, 0},
     {field_value, 1, .inherited = true},
-  [77] =
+  [80] =
     {field_name, 1, .inherited = true},
-  [78] =
+  [81] =
     {field_body, 1},
     {field_parameters, 0},
-  [80] =
+  [83] =
     {field_name, 0},
+    {field_operator, 1},
     {field_value, 2},
-  [82] =
+  [86] =
     {field_body, 3},
     {field_condition, 1},
-  [84] =
+  [88] =
     {field_condition, 1},
     {field_consequence, 3},
-  [86] =
+  [90] =
     {field_alternative, 3},
     {field_condition, 1},
-  [88] =
+  [92] =
     {field_alternative, 3, .inherited = true},
     {field_condition, 1},
-  [90] =
+  [94] =
     {field_alternative, 0, .inherited = true},
     {field_alternative, 1, .inherited = true},
-  [92] =
+  [96] =
     {field_body, 3},
     {field_clause, 1},
-  [94] =
+  [98] =
     {field_attribute, 2},
     {field_name, 1},
-  [96] =
+  [100] =
     {field_value, 1},
-  [97] =
+  [101] =
     {field_value, 0, .inherited = true},
     {field_value, 1, .inherited = true},
-  [99] =
+  [103] =
     {field_alternative, 4},
     {field_condition, 1},
     {field_consequence, 3},
-  [102] =
+  [106] =
     {field_alternative, 4, .inherited = true},
     {field_condition, 1},
     {field_consequence, 3},
-  [105] =
+  [109] =
     {field_alternative, 3, .inherited = true},
     {field_alternative, 4},
     {field_condition, 1},
-  [108] =
+  [112] =
     {field_end, 4},
     {field_name, 0},
+    {field_operator, 1},
     {field_start, 2},
-  [111] =
+  [116] =
     {field_name, 1},
+    {field_operator, 3},
     {field_value, 4},
-  [113] =
+  [119] =
     {field_alternative, 4, .inherited = true},
     {field_alternative, 5},
     {field_condition, 1},
     {field_consequence, 3},
-  [117] =
+  [123] =
     {field_end, 4},
     {field_name, 0},
+    {field_operator, 1},
     {field_start, 2},
     {field_step, 6},
 };
 
 static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE_LENGTH] = {
   [0] = {0},
-  [28] = {
+  [29] = {
     [1] = sym__block_string_content,
   },
 };
@@ -12251,16 +12260,16 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [37] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76),
   [39] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable, 1, 0, 0),
   [41] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable, 1, 0, 0),
-  [43] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dot_index_expression, 3, 0, 23),
-  [45] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dot_index_expression, 3, 0, 23),
-  [47] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bracket_index_expression, 4, 0, 23),
-  [49] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bracket_index_expression, 4, 0, 23),
+  [43] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dot_index_expression, 3, 0, 24),
+  [45] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dot_index_expression, 3, 0, 24),
+  [47] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_bracket_index_expression, 4, 0, 24),
+  [49] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_bracket_index_expression, 4, 0, 24),
   [51] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constructor, 3, 0, 0),
   [53] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_table_constructor, 3, 0, 0),
   [55] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_arguments, 1, 0, 0),
   [57] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_arguments, 1, 0, 0),
-  [59] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 2, 0, 10),
-  [61] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 2, 0, 10),
+  [59] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 2, 0, 11),
+  [61] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 2, 0, 11),
   [63] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expression, 3, 0, 0),
   [65] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expression, 3, 0, 0),
   [67] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1, 0, 0),
@@ -12275,25 +12284,25 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [85] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_arguments, 4, 0, 0),
   [87] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 1, 0, 6),
   [89] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 1, 0, 6),
-  [91] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__quote_string, 2, 0, 14),
-  [93] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__quote_string, 2, 0, 14),
+  [91] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__quote_string, 2, 0, 15),
+  [93] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__quote_string, 2, 0, 15),
   [95] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_table_constructor, 2, 0, 0),
   [97] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_table_constructor, 2, 0, 0),
-  [99] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__block_string, 3, 0, 12),
-  [101] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__block_string, 3, 0, 12),
-  [103] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__quote_string, 3, 0, 28),
-  [105] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__quote_string, 3, 0, 28),
-  [107] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 2, 0, 16),
-  [109] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expression, 2, 0, 16),
+  [99] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__block_string, 3, 0, 13),
+  [101] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__block_string, 3, 0, 13),
+  [103] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__quote_string, 3, 0, 29),
+  [105] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__quote_string, 3, 0, 29),
+  [107] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 2, 0, 17),
+  [109] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_expression, 2, 0, 17),
   [111] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96),
   [113] = {.entry = {.count = 1, .reusable = false}}, SHIFT(59),
   [115] = {.entry = {.count = 1, .reusable = false}}, SHIFT(145),
   [117] = {.entry = {.count = 1, .reusable = false}}, SHIFT(82),
   [119] = {.entry = {.count = 1, .reusable = false}}, SHIFT(49),
-  [121] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_body, 2, 0, 27),
-  [123] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__function_body, 2, 0, 27),
-  [125] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 3, 0, 29),
-  [127] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_expression, 3, 0, 29),
+  [121] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_body, 2, 0, 28),
+  [123] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__function_body, 2, 0, 28),
+  [125] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 3, 0, 30),
+  [127] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_expression, 3, 0, 30),
   [129] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86),
   [131] = {.entry = {.count = 1, .reusable = false}}, SHIFT(87),
   [133] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88),
@@ -12305,13 +12314,13 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94),
   [147] = {.entry = {.count = 1, .reusable = false}}, SHIFT(81),
   [149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81),
-  [151] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_body, 3, 0, 41),
-  [153] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__function_body, 3, 0, 41),
-  [155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 2, 0, 13),
-  [157] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 2, 0, 13),
+  [151] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_body, 3, 0, 42),
+  [153] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__function_body, 3, 0, 42),
+  [155] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 2, 0, 14),
+  [157] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 2, 0, 14),
   [159] = {.entry = {.count = 1, .reusable = false}}, SHIFT(85),
   [161] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__block, 1, 0, 0),
-  [163] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elseif_statement, 3, 0, 30),
+  [163] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elseif_statement, 3, 0, 31),
   [165] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_chunk_repeat1, 2, 0, 0),
   [167] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_chunk_repeat1, 2, 0, 0), SHIFT_REPEAT(2),
   [170] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_chunk_repeat1, 2, 0, 0),
@@ -12327,20 +12336,20 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [199] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_chunk_repeat1, 2, 0, 0), SHIFT_REPEAT(168),
   [202] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_chunk_repeat1, 2, 0, 0), SHIFT_REPEAT(188),
   [205] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_chunk_repeat1, 2, 0, 0), SHIFT_REPEAT(76),
-  [208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__variable_assignment_explist, 1, 0, 15),
-  [210] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__variable_assignment_explist, 1, 0, 15),
+  [208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__variable_assignment_explist, 1, 0, 16),
+  [210] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__variable_assignment_explist, 1, 0, 16),
   [212] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84),
   [214] = {.entry = {.count = 1, .reusable = false}}, SHIFT(97),
-  [216] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__variable_assignment_explist_repeat1, 2, 0, 50),
-  [218] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__variable_assignment_explist_repeat1, 2, 0, 50),
+  [216] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__variable_assignment_explist_repeat1, 2, 0, 51),
+  [218] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__variable_assignment_explist_repeat1, 2, 0, 51),
   [220] = {.entry = {.count = 1, .reusable = false}}, SHIFT(141),
   [222] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_statement, 1, 0, 0),
   [224] = {.entry = {.count = 1, .reusable = false}}, SHIFT(26),
-  [226] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_repeat_statement, 4, 0, 31),
-  [228] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_repeat_statement, 4, 0, 31),
+  [226] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_repeat_statement, 4, 0, 32),
+  [228] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_repeat_statement, 4, 0, 32),
   [230] = {.entry = {.count = 1, .reusable = false}}, SHIFT(73),
-  [232] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_repeat_statement, 3, 0, 18),
-  [234] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_repeat_statement, 3, 0, 18),
+  [232] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_repeat_statement, 3, 0, 19),
+  [234] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_repeat_statement, 3, 0, 19),
   [236] = {.entry = {.count = 1, .reusable = false}}, SHIFT(150),
   [238] = {.entry = {.count = 1, .reusable = false}}, SHIFT(132),
   [240] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_chunk, 1, 0, 0),
@@ -12379,90 +12388,90 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [306] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222),
   [308] = {.entry = {.count = 1, .reusable = true}}, SHIFT(223),
   [310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10),
-  [312] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field, 3, 0, 42),
-  [314] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field, 5, 0, 56),
-  [316] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field, 1, 0, 15),
+  [312] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field, 3, 0, 43),
+  [314] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field, 5, 0, 57),
+  [316] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_field, 1, 0, 16),
   [318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95),
-  [320] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_numeric_clause, 5, 0, 55),
-  [322] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__att_name_list_repeat1, 2, 0, 25),
-  [324] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__att_name_list_repeat1, 2, 0, 25),
-  [326] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__att_name_list, 2, 0, 20),
-  [328] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__att_name_list, 2, 0, 20),
-  [330] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__att_name_list, 3, 0, 36),
-  [332] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__att_name_list, 3, 0, 36),
+  [320] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_numeric_clause, 5, 0, 56),
+  [322] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__att_name_list_repeat1, 2, 0, 26),
+  [324] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__att_name_list_repeat1, 2, 0, 26),
+  [326] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__att_name_list, 2, 0, 21),
+  [328] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__att_name_list, 2, 0, 21),
+  [330] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__att_name_list, 3, 0, 37),
+  [332] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__att_name_list, 3, 0, 37),
   [334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4),
-  [336] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__att_name_list_repeat1, 2, 0, 37),
-  [338] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__att_name_list_repeat1, 2, 0, 37),
-  [340] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__att_name_list_repeat1, 2, 0, 37), SHIFT_REPEAT(222),
+  [336] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__att_name_list_repeat1, 2, 0, 38),
+  [338] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__att_name_list_repeat1, 2, 0, 38),
+  [340] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__att_name_list_repeat1, 2, 0, 38), SHIFT_REPEAT(222),
   [343] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44),
   [345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48),
   [347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(249),
   [349] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23),
   [351] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8),
-  [353] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__att_name_list, 2, 0, 21),
-  [355] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__att_name_list, 2, 0, 21),
-  [357] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_numeric_clause, 7, 0, 58),
+  [353] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__att_name_list, 2, 0, 22),
+  [355] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__att_name_list, 2, 0, 22),
+  [357] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_numeric_clause, 7, 0, 59),
   [359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89),
-  [361] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__att_name_list_repeat1, 3, 0, 49),
-  [363] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__att_name_list_repeat1, 3, 0, 49),
-  [365] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__variable_assignment_explist, 2, 0, 39),
-  [367] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__variable_assignment_explist, 2, 0, 39),
-  [369] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__variable_assignment_explist_repeat1, 2, 0, 51),
-  [371] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__variable_assignment_explist_repeat1, 2, 0, 51),
-  [373] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__variable_assignment_explist_repeat1, 2, 0, 51), SHIFT_REPEAT(84),
+  [361] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__att_name_list_repeat1, 3, 0, 50),
+  [363] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__att_name_list_repeat1, 3, 0, 50),
+  [365] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__variable_assignment_explist, 2, 0, 40),
+  [367] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__variable_assignment_explist, 2, 0, 40),
+  [369] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__variable_assignment_explist_repeat1, 2, 0, 52),
+  [371] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__variable_assignment_explist_repeat1, 2, 0, 52),
+  [373] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__variable_assignment_explist_repeat1, 2, 0, 52), SHIFT_REPEAT(84),
   [376] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__attrib, 3, 0, 0),
   [378] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__attrib, 3, 0, 0),
-  [380] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration, 2, 0, 9),
-  [382] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_declaration, 2, 0, 9),
+  [380] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration, 2, 0, 10),
+  [382] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_declaration, 2, 0, 10),
   [384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70),
   [386] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_label_statement, 3, 0, 0),
   [388] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_label_statement, 3, 0, 0),
-  [390] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 3, 0, 19),
-  [392] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 3, 0, 19),
-  [394] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 44),
-  [396] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 44),
-  [398] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 45),
-  [400] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 45),
-  [402] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 46),
-  [404] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 46),
-  [406] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__local_variable_assignment, 3, 0, 38),
-  [408] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__local_variable_assignment, 3, 0, 38),
-  [410] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 5, 0, 48),
-  [412] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 5, 0, 48),
-  [414] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 4, 0, 33),
-  [416] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 4, 0, 33),
-  [418] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__local_function_declaration, 4, 0, 35),
-  [420] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__local_function_declaration, 4, 0, 35),
+  [390] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 3, 0, 20),
+  [392] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_declaration, 3, 0, 20),
+  [394] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 45),
+  [396] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 45),
+  [398] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 46),
+  [400] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 46),
+  [402] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 47),
+  [404] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 47),
+  [406] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__local_variable_assignment, 3, 0, 39),
+  [408] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__local_variable_assignment, 3, 0, 39),
+  [410] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 5, 0, 49),
+  [412] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 5, 0, 49),
+  [414] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 4, 0, 34),
+  [416] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 4, 0, 34),
+  [418] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__local_function_declaration, 4, 0, 36),
+  [420] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__local_function_declaration, 4, 0, 36),
   [422] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_statement, 1, 0, 1),
   [424] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_statement, 1, 0, 1),
   [426] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_declaration, 1, 0, 0),
   [428] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_declaration, 1, 0, 0),
-  [430] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 52),
-  [432] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 52),
-  [434] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 53),
-  [436] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 53),
-  [438] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 54),
-  [440] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 54),
+  [430] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 53),
+  [432] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 53),
+  [434] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 54),
+  [436] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 54),
+  [438] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 55),
+  [440] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 55),
   [442] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_empty_statement, 1, 0, 0),
   [444] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_empty_statement, 1, 0, 0),
-  [446] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 4, 0, 30),
-  [448] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 4, 0, 30),
-  [450] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 7, 0, 57),
-  [452] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 7, 0, 57),
+  [446] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 4, 0, 31),
+  [448] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 4, 0, 31),
+  [450] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 7, 0, 58),
+  [452] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 7, 0, 58),
   [454] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_goto_statement, 2, 0, 0),
   [456] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_goto_statement, 2, 0, 0),
-  [458] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_statement, 3, 0, 22),
-  [460] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment_statement, 3, 0, 22),
-  [462] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 4, 0, 30),
-  [464] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 4, 0, 30),
-  [466] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration, 2, 0, 0),
-  [468] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_declaration, 2, 0, 0),
-  [470] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_do_statement, 3, 0, 17),
-  [472] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_do_statement, 3, 0, 17),
+  [458] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_statement, 3, 0, 23),
+  [460] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment_statement, 3, 0, 23),
+  [462] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 4, 0, 31),
+  [464] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 4, 0, 31),
+  [466] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration, 2, 0, 9),
+  [468] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_variable_declaration, 2, 0, 9),
+  [470] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_do_statement, 3, 0, 18),
+  [472] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_do_statement, 3, 0, 18),
   [474] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_declaration, 1, 0, 2),
   [476] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_declaration, 1, 0, 2),
-  [478] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, 0, 43),
-  [480] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, 0, 43),
+  [478] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, 0, 44),
+  [480] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, 0, 44),
   [482] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_do_statement, 2, 0, 0),
   [484] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_do_statement, 2, 0, 0),
   [486] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_chunk_repeat1, 1, 0, 0),
@@ -12473,8 +12482,8 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [496] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__field_sep, 1, 0, 0),
   [498] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parameters, 2, 0, 0),
   [500] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 2, 0, 0),
-  [502] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parameters, 3, 0, 40),
-  [504] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 3, 0, 40),
+  [502] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parameters, 3, 0, 41),
+  [504] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 3, 0, 41),
   [506] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256),
   [508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224),
   [510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189),
@@ -12486,7 +12495,7 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [522] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__variable_assignment_varlist, 1, 0, 4),
   [524] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162),
   [526] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__expression_list_repeat1, 2, 0, 0), SHIFT_REPEAT(80),
-  [529] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__variable_assignment_varlist_repeat1, 2, 0, 25),
+  [529] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__variable_assignment_varlist_repeat1, 2, 0, 26),
   [531] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_list, 2, 0, 0),
   [533] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expression_list, 2, 0, 0),
   [535] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2),
@@ -12504,10 +12513,10 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [559] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_return_statement, 3, 0, 0),
   [561] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__field_list_repeat1, 2, 0, 0), SHIFT_REPEAT(153),
   [564] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__field_list_repeat1, 2, 0, 0),
-  [566] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_index_expression, 3, 0, 24),
-  [568] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 47),
-  [570] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 47), SHIFT_REPEAT(82),
-  [573] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 47),
+  [566] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_method_index_expression, 3, 0, 25),
+  [568] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 48),
+  [570] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 48), SHIFT_REPEAT(82),
+  [573] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 48),
   [575] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__singlequote_string_content, 2, 0, 0),
   [577] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__singlequote_string_content, 2, 0, 0), SHIFT_REPEAT(206),
   [580] = {.entry = {.count = 1, .reusable = false}}, SHIFT(253),
@@ -12520,8 +12529,8 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [594] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__name_list, 1, 0, 4),
   [596] = {.entry = {.count = 1, .reusable = false}}, SHIFT(27),
   [598] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205),
-  [600] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__name_list_repeat1, 2, 0, 26), SHIFT_REPEAT(248),
-  [603] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__name_list_repeat1, 2, 0, 26),
+  [600] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__name_list_repeat1, 2, 0, 27), SHIFT_REPEAT(248),
+  [603] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__name_list_repeat1, 2, 0, 27),
   [605] = {.entry = {.count = 1, .reusable = false}}, SHIFT(20),
   [607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179),
   [609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202),
@@ -12534,16 +12543,16 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [624] = {.entry = {.count = 1, .reusable = false}}, SHIFT(236),
   [626] = {.entry = {.count = 1, .reusable = false}}, SHIFT(15),
   [628] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_name_prefix_expression, 1, 0, 7),
-  [630] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__variable_assignment_varlist_repeat1, 2, 0, 26),
-  [632] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__variable_assignment_varlist_repeat1, 2, 0, 26), SHIFT_REPEAT(162),
+  [630] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__variable_assignment_varlist_repeat1, 2, 0, 27),
+  [632] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__variable_assignment_varlist_repeat1, 2, 0, 27), SHIFT_REPEAT(162),
   [635] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_name_prefix_expression, 1, 0, 0),
-  [637] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__variable_assignment_varlist, 2, 0, 11),
-  [639] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_name_dot_index_expression, 3, 0, 23),
-  [641] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 1, 0, 32),
-  [643] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 1, 0, 32),
+  [637] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__variable_assignment_varlist, 2, 0, 12),
+  [639] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_name_dot_index_expression, 3, 0, 24),
+  [641] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 1, 0, 33),
+  [643] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 1, 0, 33),
   [645] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185),
-  [647] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elseif_statement, 4, 0, 44),
-  [649] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elseif_statement, 4, 0, 44),
+  [647] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elseif_statement, 4, 0, 45),
+  [649] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elseif_statement, 4, 0, 45),
   [651] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12),
   [653] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213),
   [655] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameter_list, 1, 0, 4),
@@ -12554,21 +12563,21 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [665] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__doublequote_string_content, 1, 0, 0),
   [667] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym__singlequote_string_content, 1, 0, 0),
   [669] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__singlequote_string_content, 1, 0, 0),
-  [671] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__name_list_repeat1, 2, 0, 25),
+  [671] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__name_list_repeat1, 2, 0, 26),
   [673] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212),
-  [675] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameter_list, 2, 0, 11),
-  [677] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__name_list, 2, 0, 11),
+  [675] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameter_list, 2, 0, 12),
+  [677] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__name_list, 2, 0, 12),
   [679] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207),
   [681] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237),
   [683] = {.entry = {.count = 1, .reusable = true}}, SHIFT(229),
   [685] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137),
   [687] = {.entry = {.count = 1, .reusable = true}}, SHIFT(197),
   [689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131),
-  [691] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_generic_clause, 3, 0, 34),
+  [691] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_generic_clause, 3, 0, 35),
   [693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221),
   [695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260),
   [697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139),
-  [699] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_name_method_index_expression, 3, 0, 24),
+  [699] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_name_method_index_expression, 3, 0, 25),
   [701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107),
   [703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230),
   [705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(173),
@@ -12580,11 +12589,11 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123),
   [719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(239),
   [721] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55),
-  [723] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_statement, 2, 0, 17),
+  [723] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_statement, 2, 0, 18),
   [725] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142),
   [727] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_chunk, 3, 0, 0),
   [729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208),
-  [731] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameter_list, 4, 0, 11),
+  [731] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameter_list, 4, 0, 12),
   [733] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125),
   [735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25),
   [737] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameter_list, 1, 0, 0),
@@ -12604,7 +12613,7 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [765] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5),
   [767] = {.entry = {.count = 1, .reusable = true}}, SHIFT(254),
   [769] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__function_name, 1, 0, 8),
-  [771] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 3, 0, 12),
+  [771] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 3, 0, 13),
   [773] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 2, 0, 5),
 };
 
openSUSE Build Service is sponsored by