Repository: tree-sitter/tree-sitter-python (language: python)

Issue:
bug: Octal escapes sequences with less than 3 digits are NOT parsed as `escape_sequence`
### Did you check existing issues?

- [X] I have read all the [tree-sitter docs](https://tree-sitter.github.io/tree-sitter/using-parsers) if it relates to using the parser
- [X] I have searched the existing issues of tree-sitter-python

### Tree-Sitter CLI Version, if relevant (output of `tree-sitter --version`)

_No response_

### Describe the bug

Octal escape sequences are defined in the grammar as `/\d{3}/`, but the [python documentation](https://docs.python.org/3/reference/lexical_analysis.html#escape-sequences) states that:

> 2. As in Standard C, **up to three** octal digits are accepted.

Meaning that 3 is the maximum, not the required amount. Easy test:

```python
>>> '\1' == '\01' == '\001'
True
```

### Steps To Reproduce/Bad Parse Tree

```python
'\1'
'\01'
'\001'
```

```query
(module [0, 0] - [3, 0]
  (expression_statement [0, 0] - [0, 4]
    (string [0, 0] - [0, 4]
      (string_start [0, 0] - [0, 1])
      (string_content [0, 1] - [0, 3])
      (string_end [0, 3] - [0, 4])))
  (expression_statement [1, 0] - [1, 5]
    (string [1, 0] - [1, 5]
      (string_start [1, 0] - [1, 1])
      (string_content [1, 1] - [1, 4])
      (string_end [1, 4] - [1, 5])))
  (expression_statement [2, 0] - [2, 6]
    (string [2, 0] - [2, 6]
      (string_start [2, 0] - [2, 1])
      (string_content [2, 1] - [2, 5]
        (escape_sequence [2, 1] - [2, 5]))
      (string_end [2, 5] - [2, 6]))))
```

### Expected Behavior/Parse Tree

```query
(module [0, 0] - [3, 0]
  (expression_statement [0, 0] - [0, 4]
    (string [0, 0] - [0, 4]
      (string_start [0, 0] - [0, 1])
      (string_content [0, 1] - [0, 3]
        (escape_sequence [0, 1] - [0, 3]))
      (string_end [0, 3] - [0, 4])))
  (expression_statement [1, 0] - [1, 5]
    (string [1, 0] - [1, 5]
      (string_start [1, 0] - [1, 1])
      (string_content [1, 1] - [1, 4]
        (escape_sequence [1, 1] - [1, 4]))
      (string_end [1, 4] - [1, 5])))
  (expression_statement [2, 0] - [2, 6]
    (string [2, 0] - [2, 6]
      (string_start [2, 0] - [2, 1])
      (string_content [2, 1] - [2, 5]
        (escape_sequence [2, 1] - [2, 5]))
      (string_end [2, 5] - [2, 6]))))
```

### Repro

```Python
'\1'
'\01'
'\001'
```



Discussion / hints:

Fix patch:
diff --git a/bindings/rust/build.rs b/bindings/rust/build.rs
index cbf0161..8740dc3 100644
--- a/bindings/rust/build.rs
+++ b/bindings/rust/build.rs
@@ -3,6 +3,9 @@ fn main() {
 
     let mut c_config = cc::Build::new();
     c_config.include(src_dir);
+
+    #[cfg(target_env = "msvc")]
+    c_config.flag("-utf-8");
     let parser_path = src_dir.join("parser.c");
     c_config.file(&parser_path);
 
diff --git a/grammar.js b/grammar.js
index 64c0280..fbb6b52 100644
--- a/grammar.js
+++ b/grammar.js
@@ -1104,7 +1104,7 @@ module.exports = grammar({
         /u[a-fA-F\d]{4}/,
         /U[a-fA-F\d]{8}/,
         /x[a-fA-F\d]{2}/,
-        /\d{3}/,
+        /\d{1,3}/,
         /\r?\n/,
         /['"abfrntv\\]/,
         /N\{[^}]+\}/,
diff --git a/src/grammar.json b/src/grammar.json
index 56fdf8e..34315aa 100644
--- a/src/grammar.json
+++ b/src/grammar.json
@@ -5631,7 +5631,7 @@
                 },
                 {
                   "type": "PATTERN",
-                  "value": "\\d{3}"
+                  "value": "\\d{1,3}"
                 },
                 {
                   "type": "PATTERN",
diff --git a/src/parser.c b/src/parser.c
index 9777e74..83fb62b 100644
--- a/src/parser.c
+++ b/src/parser.c
@@ -5604,3128 +5604,692 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = {
   [2830] = 2629,
 };
 
-static inline bool sym_identifier_character_set_1(int32_t c) {
-  return (c < 43514
-    ? (c < 4193
-      ? (c < 2707
-        ? (c < 1994
-          ? (c < 931
-            ? (c < 748
-              ? (c < 192
-                ? (c < 170
-                  ? (c < 'a'
-                    ? (c >= 'A' && c <= '_')
-                    : c <= 'z')
-                  : (c <= 170 || (c < 186
-                    ? c == 181
-                    : c <= 186)))
-                : (c <= 214 || (c < 710
-                  ? (c < 248
-                    ? (c >= 216 && c <= 246)
-                    : c <= 705)
-                  : (c <= 721 || (c >= 736 && c <= 740)))))
-              : (c <= 748 || (c < 895
-                ? (c < 886
-                  ? (c < 880
-                    ? c == 750
-                    : c <= 884)
-                  : (c <= 887 || (c >= 891 && c <= 893)))
-                : (c <= 895 || (c < 908
-                  ? (c < 904
-                    ? c == 902
-                    : c <= 906)
-                  : (c <= 908 || (c >= 910 && c <= 929)))))))
-            : (c <= 1013 || (c < 1649
-              ? (c < 1376
-                ? (c < 1329
-                  ? (c < 1162
-                    ? (c >= 1015 && c <= 1153)
-                    : c <= 1327)
-                  : (c <= 1366 || c == 1369))
-                : (c <= 1416 || (c < 1568
-                  ? (c < 1519
-                    ? (c >= 1488 && c <= 1514)
-                    : c <= 1522)
-                  : (c <= 1610 || (c >= 1646 && c <= 1647)))))
-              : (c <= 1747 || (c < 1791
-                ? (c < 1774
-                  ? (c < 1765
-                    ? c == 1749
-                    : c <= 1766)
-                  : (c <= 1775 || (c >= 1786 && c <= 1788)))
-                : (c <= 1791 || (c < 1869
-                  ? (c < 1810
-                    ? c == 1808
-                    : c <= 1839)
-                  : (c <= 1957 || c == 1969))))))))
-          : (c <= 2026 || (c < 2482
-            ? (c < 2208
-              ? (c < 2088
-                ? (c < 2048
-                  ? (c < 2042
-                    ? (c >= 2036 && c <= 2037)
-                    : c <= 2042)
-                  : (c <= 2069 || (c < 2084
-                    ? c == 2074
-                    : c <= 2084)))
-                : (c <= 2088 || (c < 2160
-                  ? (c < 2144
-                    ? (c >= 2112 && c <= 2136)
-                    : c <= 2154)
-                  : (c <= 2183 || (c >= 2185 && c <= 2190)))))
-              : (c <= 2249 || (c < 2417
-                ? (c < 2384
-                  ? (c < 2365
-                    ? (c >= 2308 && c <= 2361)
-                    : c <= 2365)
-                  : (c <= 2384 || (c >= 2392 && c <= 2401)))
-                : (c <= 2432 || (c < 2451
-                  ? (c < 2447
-                    ? (c >= 2437 && c <= 2444)
-                    : c <= 2448)
-                  : (c <= 2472 || (c >= 2474 && c <= 2480)))))))
-            : (c <= 2482 || (c < 2579
-              ? (c < 2527
-                ? (c < 2510
-                  ? (c < 2493
-                    ? (c >= 2486 && c <= 2489)
-                    : c <= 2493)
-                  : (c <= 2510 || (c >= 2524 && c <= 2525)))
-                : (c <= 2529 || (c < 2565
-                  ? (c < 2556
-                    ? (c >= 2544 && c <= 2545)
-                    : c <= 2556)
-                  : (c <= 2570 || (c >= 2575 && c <= 2576)))))
-              : (c <= 2600 || (c < 2649
-                ? (c < 2613
-                  ? (c < 2610
-                    ? (c >= 2602 && c <= 2608)
-                    : c <= 2611)
-                  : (c <= 2614 || (c >= 2616 && c <= 2617)))
-                : (c <= 2652 || (c < 2693
-                  ? (c < 2674
-                    ? c == 2654
-                    : c <= 2676)
-                  : (c <= 2701 || (c >= 2703 && c <= 2705)))))))))))
-        : (c <= 2728 || (c < 3242
-          ? (c < 2962
-            ? (c < 2858
-              ? (c < 2784
-                ? (c < 2741
-                  ? (c < 2738
-                    ? (c >= 2730 && c <= 2736)
-                    : c <= 2739)
-                  : (c <= 2745 || (c < 2768
-                    ? c == 2749
-                    : c <= 2768)))
-                : (c <= 2785 || (c < 2831
-                  ? (c < 2821
-                    ? c == 2809
-                    : c <= 2828)
-                  : (c <= 2832 || (c >= 2835 && c <= 2856)))))
-              : (c <= 2864 || (c < 2911
-                ? (c < 2877
-                  ? (c < 2869
-                    ? (c >= 2866 && c <= 2867)
-                    : c <= 2873)
-                  : (c <= 2877 || (c >= 2908 && c <= 2909)))
-                : (c <= 2913 || (c < 2949
-                  ? (c < 2947
-                    ? c == 2929
-                    : c <= 2947)
-                  : (c <= 2954 || (c >= 2958 && c <= 2960)))))))
-            : (c <= 2965 || (c < 3090
-              ? (c < 2984
-                ? (c < 2974
-                  ? (c < 2972
-                    ? (c >= 2969 && c <= 2970)
-                    : c <= 2972)
-                  : (c <= 2975 || (c >= 2979 && c <= 2980)))
-                : (c <= 2986 || (c < 3077
-                  ? (c < 3024
-                    ? (c >= 2990 && c <= 3001)
-                    : c <= 3024)
-                  : (c <= 3084 || (c >= 3086 && c <= 3088)))))
-              : (c <= 3112 || (c < 3168
-                ? (c < 3160
-                  ? (c < 3133
-                    ? (c >= 3114 && c <= 3129)
-                    : c <= 3133)
-                  : (c <= 3162 || c == 3165))
-                : (c <= 3169 || (c < 3214
-                  ? (c < 3205
-                    ? c == 3200
-                    : c <= 3212)
-                  : (c <= 3216 || (c >= 3218 && c <= 3240)))))))))
-          : (c <= 3251 || (c < 3648
-            ? (c < 3412
-              ? (c < 3332
-                ? (c < 3293
-                  ? (c < 3261
-                    ? (c >= 3253 && c <= 3257)
-                    : c <= 3261)
-                  : (c <= 3294 || (c < 3313
-                    ? (c >= 3296 && c <= 3297)
-                    : c <= 3314)))
-                : (c <= 3340 || (c < 3389
-                  ? (c < 3346
-                    ? (c >= 3342 && c <= 3344)
-                    : c <= 3386)
-                  : (c <= 3389 || c == 3406))))
-              : (c <= 3414 || (c < 3507
-                ? (c < 3461
-                  ? (c < 3450
-                    ? (c >= 3423 && c <= 3425)
-                    : c <= 3455)
-                  : (c <= 3478 || (c >= 3482 && c <= 3505)))
-                : (c <= 3515 || (c < 3585
-                  ? (c < 3520
-                    ? c == 3517
-                    : c <= 3526)
-                  : (c <= 3632 || c == 3634))))))
-            : (c <= 3654 || (c < 3782
-              ? (c < 3749
-                ? (c < 3718
-                  ? (c < 3716
-                    ? (c >= 3713 && c <= 3714)
-                    : c <= 3716)
-                  : (c <= 3722 || (c >= 3724 && c <= 3747)))
-                : (c <= 3749 || (c < 3773
-                  ? (c < 3762
-                    ? (c >= 3751 && c <= 3760)
-                    : c <= 3762)
-                  : (c <= 3773 || (c >= 3776 && c <= 3780)))))
-              : (c <= 3782 || (c < 3976
-                ? (c < 3904
-                  ? (c < 3840
-                    ? (c >= 3804 && c <= 3807)
-                    : c <= 3840)
-                  : (c <= 3911 || (c >= 3913 && c <= 3948)))
-                : (c <= 3980 || (c < 4176
-                  ? (c < 4159
-                    ? (c >= 4096 && c <= 4138)
-                    : c <= 4159)
-                  : (c <= 4181 || (c >= 4186 && c <= 4189)))))))))))))
-      : (c <= 4193 || (c < 8134
-        ? (c < 6176
-          ? (c < 4808
-            ? (c < 4688
-              ? (c < 4295
-                ? (c < 4213
-                  ? (c < 4206
-                    ? (c >= 4197 && c <= 4198)
-                    : c <= 4208)
-                  : (c <= 4225 || (c < 4256
-                    ? c == 4238
-                    : c <= 4293)))
-                : (c <= 4295 || (c < 4348
-                  ? (c < 4304
-                    ? c == 4301
-                    : c <= 4346)
-                  : (c <= 4680 || (c >= 4682 && c <= 4685)))))
-              : (c <= 4694 || (c < 4752
-                ? (c < 4704
-                  ? (c < 4698
-                    ? c == 4696
-                    : c <= 4701)
-                  : (c <= 4744 || (c >= 4746 && c <= 4749)))
-                : (c <= 4784 || (c < 4800
-                  ? (c < 4792
-                    ? (c >= 4786 && c <= 4789)
-                    : c <= 4798)
-                  : (c <= 4800 || (c >= 4802 && c <= 4805)))))))
-            : (c <= 4822 || (c < 5792
-              ? (c < 5024
-                ? (c < 4888
-                  ? (c < 4882
-                    ? (c >= 4824 && c <= 4880)
-                    : c <= 4885)
-                  : (c <= 4954 || (c >= 4992 && c <= 5007)))
-                : (c <= 5109 || (c < 5743
-                  ? (c < 5121
-                    ? (c >= 5112 && c <= 5117)
-                    : c <= 5740)
-                  : (c <= 5759 || (c >= 5761 && c <= 5786)))))
-              : (c <= 5866 || (c < 5984
-                ? (c < 5919
-                  ? (c < 5888
-                    ? (c >= 5870 && c <= 5880)
-                    : c <= 5905)
-                  : (c <= 5937 || (c >= 5952 && c <= 5969)))
-                : (c <= 5996 || (c < 6103
-                  ? (c < 6016
-                    ? (c >= 5998 && c <= 6000)
-                    : c <= 6067)
-                  : (c <= 6103 || c == 6108))))))))
-          : (c <= 6264 || (c < 7312
-            ? (c < 6823
-              ? (c < 6512
-                ? (c < 6320
-                  ? (c < 6314
-                    ? (c >= 6272 && c <= 6312)
-                    : c <= 6314)
-                  : (c <= 6389 || (c < 6480
-                    ? (c >= 6400 && c <= 6430)
-                    : c <= 6509)))
-                : (c <= 6516 || (c < 6656
-                  ? (c < 6576
-                    ? (c >= 6528 && c <= 6571)
-                    : c <= 6601)
-                  : (c <= 6678 || (c >= 6688 && c <= 6740)))))
-              : (c <= 6823 || (c < 7098
-                ? (c < 7043
-                  ? (c < 6981
-                    ? (c >= 6917 && c <= 6963)
-                    : c <= 6988)
-                  : (c <= 7072 || (c >= 7086 && c <= 7087)))
-                : (c <= 7141 || (c < 7258
-                  ? (c < 7245
-                    ? (c >= 7168 && c <= 7203)
-                    : c <= 7247)
-                  : (c <= 7293 || (c >= 7296 && c <= 7304)))))))
-            : (c <= 7354 || (c < 8008
-              ? (c < 7418
-                ? (c < 7406
-                  ? (c < 7401
-                    ? (c >= 7357 && c <= 7359)
-                    : c <= 7404)
-                  : (c <= 7411 || (c >= 7413 && c <= 7414)))
-                : (c <= 7418 || (c < 7960
-                  ? (c < 7680
-                    ? (c >= 7424 && c <= 7615)
-                    : c <= 7957)
-                  : (c <= 7965 || (c >= 7968 && c <= 8005)))))
-              : (c <= 8013 || (c < 8031
-                ? (c < 8027
-                  ? (c < 8025
-                    ? (c >= 8016 && c <= 8023)
-                    : c <= 8025)
-                  : (c <= 8027 || c == 8029))
-                : (c <= 8061 || (c < 8126
-                  ? (c < 8118
-                    ? (c >= 8064 && c <= 8116)
-                    : c <= 8124)
-                  : (c <= 8126 || (c >= 8130 && c <= 8132)))))))))))
-        : (c <= 8140 || (c < 12337
-          ? (c < 8544
-            ? (c < 8458
-              ? (c < 8305
-                ? (c < 8160
-                  ? (c < 8150
-                    ? (c >= 8144 && c <= 8147)
-                    : c <= 8155)
-                  : (c <= 8172 || (c < 8182
-                    ? (c >= 8178 && c <= 8180)
-                    : c <= 8188)))
-                : (c <= 8305 || (c < 8450
-                  ? (c < 8336
-                    ? c == 8319
-                    : c <= 8348)
-                  : (c <= 8450 || c == 8455))))
-              : (c <= 8467 || (c < 8488
-                ? (c < 8484
-                  ? (c < 8472
-                    ? c == 8469
-                    : c <= 8477)
-                  : (c <= 8484 || c == 8486))
-                : (c <= 8488 || (c < 8517
-                  ? (c < 8508
-                    ? (c >= 8490 && c <= 8505)
-                    : c <= 8511)
-                  : (c <= 8521 || c == 8526))))))
-            : (c <= 8584 || (c < 11680
-              ? (c < 11559
-                ? (c < 11506
-                  ? (c < 11499
-                    ? (c >= 11264 && c <= 11492)
-                    : c <= 11502)
-                  : (c <= 11507 || (c >= 11520 && c <= 11557)))
-                : (c <= 11559 || (c < 11631
-                  ? (c < 11568
-                    ? c == 11565
-                    : c <= 11623)
-                  : (c <= 11631 || (c >= 11648 && c <= 11670)))))
-              : (c <= 11686 || (c < 11720
-                ? (c < 11704
-                  ? (c < 11696
-                    ? (c >= 11688 && c <= 11694)
-                    : c <= 11702)
-                  : (c <= 11710 || (c >= 11712 && c <= 11718)))
-                : (c <= 11726 || (c < 12293
-                  ? (c < 11736
-                    ? (c >= 11728 && c <= 11734)
-                    : c <= 11742)
-                  : (c <= 12295 || (c >= 12321 && c <= 12329)))))))))
-          : (c <= 12341 || (c < 42891
-            ? (c < 19968
-              ? (c < 12549
-                ? (c < 12445
-                  ? (c < 12353
-                    ? (c >= 12344 && c <= 12348)
-                    : c <= 12438)
-                  : (c <= 12447 || (c < 12540
-                    ? (c >= 12449 && c <= 12538)
-                    : c <= 12543)))
-                : (c <= 12591 || (c < 12784
-                  ? (c < 12704
-                    ? (c >= 12593 && c <= 12686)
-                    : c <= 12735)
-                  : (c <= 12799 || (c >= 13312 && c <= 19903)))))
-              : (c <= 42124 || (c < 42560
-                ? (c < 42512
-                  ? (c < 42240
-                    ? (c >= 42192 && c <= 42237)
-                    : c <= 42508)
-                  : (c <= 42527 || (c >= 42538 && c <= 42539)))
-                : (c <= 42606 || (c < 42775
-                  ? (c < 42656
-                    ? (c >= 42623 && c <= 42653)
-                    : c <= 42735)
-                  : (c <= 42783 || (c >= 42786 && c <= 42888)))))))
-            : (c <= 42954 || (c < 43250
-              ? (c < 43011
-                ? (c < 42965
-                  ? (c < 42963
-                    ? (c >= 42960 && c <= 42961)
-                    : c <= 42963)
-                  : (c <= 42969 || (c >= 42994 && c <= 43009)))
-                : (c <= 43013 || (c < 43072
-                  ? (c < 43020
-                    ? (c >= 43015 && c <= 43018)
-                    : c <= 43042)
-                  : (c <= 43123 || (c >= 43138 && c <= 43187)))))
-              : (c <= 43255 || (c < 43360
-                ? (c < 43274
-                  ? (c < 43261
-                    ? c == 43259
-                    : c <= 43262)
-                  : (c <= 43301 || (c >= 43312 && c <= 43334)))
-                : (c <= 43388 || (c < 43488
-                  ? (c < 43471
-                    ? (c >= 43396 && c <= 43442)
-                    : c <= 43471)
-                  : (c <= 43492 || (c >= 43494 && c <= 43503)))))))))))))))
-    : (c <= 43518 || (c < 70727
-      ? (c < 66956
-        ? (c < 64914
-          ? (c < 43868
-            ? (c < 43714
-              ? (c < 43646
-                ? (c < 43588
-                  ? (c < 43584
-                    ? (c >= 43520 && c <= 43560)
-                    : c <= 43586)
-                  : (c <= 43595 || (c < 43642
-                    ? (c >= 43616 && c <= 43638)
-                    : c <= 43642)))
-                : (c <= 43695 || (c < 43705
-                  ? (c < 43701
-                    ? c == 43697
-                    : c <= 43702)
-                  : (c <= 43709 || c == 43712))))
-              : (c <= 43714 || (c < 43785
-                ? (c < 43762
-                  ? (c < 43744
-                    ? (c >= 43739 && c <= 43741)
-                    : c <= 43754)
-                  : (c <= 43764 || (c >= 43777 && c <= 43782)))
-                : (c <= 43790 || (c < 43816
-                  ? (c < 43808
-                    ? (c >= 43793 && c <= 43798)
-                    : c <= 43814)
-                  : (c <= 43822 || (c >= 43824 && c <= 43866)))))))
-            : (c <= 43881 || (c < 64287
-              ? (c < 63744
-                ? (c < 55216
-                  ? (c < 44032
-                    ? (c >= 43888 && c <= 44002)
-                    : c <= 55203)
-                  : (c <= 55238 || (c >= 55243 && c <= 55291)))
-                : (c <= 64109 || (c < 64275
-                  ? (c < 64256
-                    ? (c >= 64112 && c <= 64217)
-                    : c <= 64262)
-                  : (c <= 64279 || c == 64285))))
-              : (c <= 64296 || (c < 64323
-                ? (c < 64318
-                  ? (c < 64312
-                    ? (c >= 64298 && c <= 64310)
-                    : c <= 64316)
-                  : (c <= 64318 || (c >= 64320 && c <= 64321)))
-                : (c <= 64324 || (c < 64612
-                  ? (c < 64467
-                    ? (c >= 64326 && c <= 64433)
-                    : c <= 64605)
-                  : (c <= 64829 || (c >= 64848 && c <= 64911)))))))))
-          : (c <= 64967 || (c < 65599
-            ? (c < 65382
-              ? (c < 65147
-                ? (c < 65139
-                  ? (c < 65137
-                    ? (c >= 65008 && c <= 65017)
-                    : c <= 65137)
-                  : (c <= 65139 || (c < 65145
-                    ? c == 65143
-                    : c <= 65145)))
-                : (c <= 65147 || (c < 65313
-                  ? (c < 65151
-                    ? c == 65149
-                    : c <= 65276)
-                  : (c <= 65338 || (c >= 65345 && c <= 65370)))))
-              : (c <= 65437 || (c < 65498
-                ? (c < 65482
-                  ? (c < 65474
-                    ? (c >= 65440 && c <= 65470)
-                    : c <= 65479)
-                  : (c <= 65487 || (c >= 65490 && c <= 65495)))
-                : (c <= 65500 || (c < 65576
-                  ? (c < 65549
-                    ? (c >= 65536 && c <= 65547)
-                    : c <= 65574)
-                  : (c <= 65594 || (c >= 65596 && c <= 65597)))))))
-            : (c <= 65613 || (c < 66464
-              ? (c < 66208
-                ? (c < 65856
-                  ? (c < 65664
-                    ? (c >= 65616 && c <= 65629)
-                    : c <= 65786)
-                  : (c <= 65908 || (c >= 66176 && c <= 66204)))
-                : (c <= 66256 || (c < 66384
-                  ? (c < 66349
-                    ? (c >= 66304 && c <= 66335)
-                    : c <= 66378)
-                  : (c <= 66421 || (c >= 66432 && c <= 66461)))))
-              : (c <= 66499 || (c < 66776
-                ? (c < 66560
-                  ? (c < 66513
-                    ? (c >= 66504 && c <= 66511)
-                    : c <= 66517)
-                  : (c <= 66717 || (c >= 66736 && c <= 66771)))
-                : (c <= 66811 || (c < 66928
-                  ? (c < 66864
-                    ? (c >= 66816 && c <= 66855)
-                    : c <= 66915)
-                  : (c <= 66938 || (c >= 66940 && c <= 66954)))))))))))
-        : (c <= 66962 || (c < 68864
-          ? (c < 67828
-            ? (c < 67506
-              ? (c < 67072
-                ? (c < 66979
-                  ? (c < 66967
-                    ? (c >= 66964 && c <= 66965)
-                    : c <= 66977)
-                  : (c <= 66993 || (c < 67003
-                    ? (c >= 66995 && c <= 67001)
-                    : c <= 67004)))
-                : (c <= 67382 || (c < 67456
-                  ? (c < 67424
-                    ? (c >= 67392 && c <= 67413)
-                    : c <= 67431)
-                  : (c <= 67461 || (c >= 67463 && c <= 67504)))))
-              : (c <= 67514 || (c < 67644
-                ? (c < 67594
-                  ? (c < 67592
-                    ? (c >= 67584 && c <= 67589)
-                    : c <= 67592)
-                  : (c <= 67637 || (c >= 67639 && c <= 67640)))
-                : (c <= 67644 || (c < 67712
-                  ? (c < 67680
-                    ? (c >= 67647 && c <= 67669)
-                    : c <= 67702)
-                  : (c <= 67742 || (c >= 67808 && c <= 67826)))))))
-            : (c <= 67829 || (c < 68224
-              ? (c < 68096
-                ? (c < 67968
-                  ? (c < 67872
-                    ? (c >= 67840 && c <= 67861)
-                    : c <= 67897)
-                  : (c <= 68023 || (c >= 68030 && c <= 68031)))
-                : (c <= 68096 || (c < 68121
-                  ? (c < 68117
-                    ? (c >= 68112 && c <= 68115)
-                    : c <= 68119)
-                  : (c <= 68149 || (c >= 68192 && c <= 68220)))))
-              : (c <= 68252 || (c < 68448
-                ? (c < 68352
-                  ? (c < 68297
-                    ? (c >= 68288 && c <= 68295)
-                    : c <= 68324)
-                  : (c <= 68405 || (c >= 68416 && c <= 68437)))
-                : (c <= 68466 || (c < 68736
-                  ? (c < 68608
-                    ? (c >= 68480 && c <= 68497)
-                    : c <= 68680)
-                  : (c <= 68786 || (c >= 68800 && c <= 68850)))))))))
-          : (c <= 68899 || (c < 70106
-            ? (c < 69749
-              ? (c < 69488
-                ? (c < 69376
-                  ? (c < 69296
-                    ? (c >= 69248 && c <= 69289)
-                    : c <= 69297)
-                  : (c <= 69404 || (c < 69424
-                    ? c == 69415
-                    : c <= 69445)))
-                : (c <= 69505 || (c < 69635
-                  ? (c < 69600
-                    ? (c >= 69552 && c <= 69572)
-                    : c <= 69622)
-                  : (c <= 69687 || (c >= 69745 && c <= 69746)))))
-              : (c <= 69749 || (c < 69959
-                ? (c < 69891
-                  ? (c < 69840
-                    ? (c >= 69763 && c <= 69807)
-                    : c <= 69864)
-                  : (c <= 69926 || c == 69956))
-                : (c <= 69959 || (c < 70019
-                  ? (c < 70006
-                    ? (c >= 69968 && c <= 70002)
-                    : c <= 70006)
-                  : (c <= 70066 || (c >= 70081 && c <= 70084)))))))
-            : (c <= 70106 || (c < 70405
-              ? (c < 70280
-                ? (c < 70163
-                  ? (c < 70144
-                    ? c == 70108
-                    : c <= 70161)
-                  : (c <= 70187 || (c >= 70272 && c <= 70278)))
-                : (c <= 70280 || (c < 70303
-                  ? (c < 70287
-                    ? (c >= 70282 && c <= 70285)
-                    : c <= 70301)
-                  : (c <= 70312 || (c >= 70320 && c <= 70366)))))
-              : (c <= 70412 || (c < 70453
-                ? (c < 70442
-                  ? (c < 70419
-                    ? (c >= 70415 && c <= 70416)
-                    : c <= 70440)
-                  : (c <= 70448 || (c >= 70450 && c <= 70451)))
-                : (c <= 70457 || (c < 70493
-                  ? (c < 70480
-                    ? c == 70461
-                    : c <= 70480)
-                  : (c <= 70497 || (c >= 70656 && c <= 70708)))))))))))))
-      : (c <= 70730 || (c < 119894
-        ? (c < 73056
-          ? (c < 72001
-            ? (c < 71424
-              ? (c < 71128
-                ? (c < 70852
-                  ? (c < 70784
-                    ? (c >= 70751 && c <= 70753)
-                    : c <= 70831)
-                  : (c <= 70853 || (c < 71040
-                    ? c == 70855
-                    : c <= 71086)))
-                : (c <= 71131 || (c < 71296
-                  ? (c < 71236
-                    ? (c >= 71168 && c <= 71215)
-                    : c <= 71236)
-                  : (c <= 71338 || c == 71352))))
-              : (c <= 71450 || (c < 71945
-                ? (c < 71840
-                  ? (c < 71680
-                    ? (c >= 71488 && c <= 71494)
-                    : c <= 71723)
-                  : (c <= 71903 || (c >= 71935 && c <= 71942)))
-                : (c <= 71945 || (c < 71960
-                  ? (c < 71957
-                    ? (c >= 71948 && c <= 71955)
-                    : c <= 71958)
-                  : (c <= 71983 || c == 71999))))))
-            : (c <= 72001 || (c < 72349
-              ? (c < 72192
-                ? (c < 72161
-                  ? (c < 72106
-                    ? (c >= 72096 && c <= 72103)
-                    : c <= 72144)
-                  : (c <= 72161 || c == 72163))
-                : (c <= 72192 || (c < 72272
-                  ? (c < 72250
-                    ? (c >= 72203 && c <= 72242)
-                    : c <= 72250)
-                  : (c <= 72272 || (c >= 72284 && c <= 72329)))))
-              : (c <= 72349 || (c < 72818
-                ? (c < 72714
-                  ? (c < 72704
-                    ? (c >= 72368 && c <= 72440)
-                    : c <= 72712)
-                  : (c <= 72750 || c == 72768))
-                : (c <= 72847 || (c < 72971
-                  ? (c < 72968
-                    ? (c >= 72960 && c <= 72966)
-                    : c <= 72969)
-                  : (c <= 73008 || c == 73030))))))))
-          : (c <= 73061 || (c < 93952
-            ? (c < 82944
-              ? (c < 73728
-                ? (c < 73112
-                  ? (c < 73066
-                    ? (c >= 73063 && c <= 73064)
-                    : c <= 73097)
-                  : (c <= 73112 || (c < 73648
-                    ? (c >= 73440 && c <= 73458)
-                    : c <= 73648)))
-                : (c <= 74649 || (c < 77712
-                  ? (c < 74880
-                    ? (c >= 74752 && c <= 74862)
-                    : c <= 75075)
-                  : (c <= 77808 || (c >= 77824 && c <= 78894)))))
-              : (c <= 83526 || (c < 92928
-                ? (c < 92784
-                  ? (c < 92736
-                    ? (c >= 92160 && c <= 92728)
-                    : c <= 92766)
-                  : (c <= 92862 || (c >= 92880 && c <= 92909)))
-                : (c <= 92975 || (c < 93053
-                  ? (c < 93027
-                    ? (c >= 92992 && c <= 92995)
-                    : c <= 93047)
-                  : (c <= 93071 || (c >= 93760 && c <= 93823)))))))
-            : (c <= 94026 || (c < 110589
-              ? (c < 94208
-                ? (c < 94176
-                  ? (c < 94099
-                    ? c == 94032
-                    : c <= 94111)
-                  : (c <= 94177 || c == 94179))
-                : (c <= 100343 || (c < 110576
-                  ? (c < 101632
-                    ? (c >= 100352 && c <= 101589)
-                    : c <= 101640)
-                  : (c <= 110579 || (c >= 110581 && c <= 110587)))))
-              : (c <= 110590 || (c < 113664
-                ? (c < 110948
-                  ? (c < 110928
-                    ? (c >= 110592 && c <= 110882)
-                    : c <= 110930)
-                  : (c <= 110951 || (c >= 110960 && c <= 111355)))
-                : (c <= 113770 || (c < 113808
-                  ? (c < 113792
-                    ? (c >= 113776 && c <= 113788)
-                    : c <= 113800)
-                  : (c <= 113817 || (c >= 119808 && c <= 119892)))))))))))
-        : (c <= 119964 || (c < 125259
-          ? (c < 120572
-            ? (c < 120086
-              ? (c < 119995
-                ? (c < 119973
-                  ? (c < 119970
-                    ? (c >= 119966 && c <= 119967)
-                    : c <= 119970)
-                  : (c <= 119974 || (c < 119982
-                    ? (c >= 119977 && c <= 119980)
-                    : c <= 119993)))
-                : (c <= 119995 || (c < 120071
-                  ? (c < 120005
-                    ? (c >= 119997 && c <= 120003)
-                    : c <= 120069)
-                  : (c <= 120074 || (c >= 120077 && c <= 120084)))))
-              : (c <= 120092 || (c < 120138
-                ? (c < 120128
-                  ? (c < 120123
-                    ? (c >= 120094 && c <= 120121)
-                    : c <= 120126)
-                  : (c <= 120132 || c == 120134))
-                : (c <= 120144 || (c < 120514
-                  ? (c < 120488
-                    ? (c >= 120146 && c <= 120485)
-                    : c <= 120512)
-                  : (c <= 120538 || (c >= 120540 && c <= 120570)))))))
-            : (c <= 120596 || (c < 123191
-              ? (c < 120714
-                ? (c < 120656
-                  ? (c < 120630
-                    ? (c >= 120598 && c <= 120628)
-                    : c <= 120654)
-                  : (c <= 120686 || (c >= 120688 && c <= 120712)))
-                : (c <= 120744 || (c < 122624
-                  ? (c < 120772
-                    ? (c >= 120746 && c <= 120770)
-                    : c <= 120779)
-                  : (c <= 122654 || (c >= 123136 && c <= 123180)))))
-              : (c <= 123197 || (c < 124904
-                ? (c < 123584
-                  ? (c < 123536
-                    ? c == 123214
-                    : c <= 123565)
-                  : (c <= 123627 || (c >= 124896 && c <= 124902)))
-                : (c <= 124907 || (c < 124928
-                  ? (c < 124912
-                    ? (c >= 124909 && c <= 124910)
-                    : c <= 124926)
-                  : (c <= 125124 || (c >= 125184 && c <= 125251)))))))))
-          : (c <= 125259 || (c < 126559
-            ? (c < 126535
-              ? (c < 126505
-                ? (c < 126497
-                  ? (c < 126469
-                    ? (c >= 126464 && c <= 126467)
-                    : c <= 126495)
-                  : (c <= 126498 || (c < 126503
-                    ? c == 126500
-                    : c <= 126503)))
-                : (c <= 126514 || (c < 126523
-                  ? (c < 126521
-                    ? (c >= 126516 && c <= 126519)
-                    : c <= 126521)
-                  : (c <= 126523 || c == 126530))))
-              : (c <= 126535 || (c < 126548
-                ? (c < 126541
-                  ? (c < 126539
-                    ? c == 126537
-                    : c <= 126539)
-                  : (c <= 126543 || (c >= 126545 && c <= 126546)))
-                : (c <= 126548 || (c < 126555
-                  ? (c < 126553
-                    ? c == 126551
-                    : c <= 126553)
-                  : (c <= 126555 || c == 126557))))))
-            : (c <= 126559 || (c < 126625
-              ? (c < 126580
-                ? (c < 126567
-                  ? (c < 126564
-                    ? (c >= 126561 && c <= 126562)
-                    : c <= 126564)
-                  : (c <= 126570 || (c >= 126572 && c <= 126578)))
-                : (c <= 126583 || (c < 126592
-                  ? (c < 126590
-                    ? (c >= 126585 && c <= 126588)
-                    : c <= 126590)
-                  : (c <= 126601 || (c >= 126603 && c <= 126619)))))
-              : (c <= 126627 || (c < 177984
-                ? (c < 131072
-                  ? (c < 126635
-                    ? (c >= 126629 && c <= 126633)
-                    : c <= 126651)
-                  : (c <= 173791 || (c >= 173824 && c <= 177976)))
-                : (c <= 178205 || (c < 194560
-                  ? (c < 183984
-                    ? (c >= 178208 && c <= 183969)
-                    : c <= 191456)
-                  : (c <= 195101 || (c >= 196608 && c <= 201546)))))))))))))))));
-}
-
-static inline bool sym_identifier_character_set_2(int32_t c) {
-  return (c < 43514
-    ? (c < 4193
-      ? (c < 2707
-        ? (c < 1994
-          ? (c < 910
-            ? (c < 736
-              ? (c < 186
-                ? (c < 'a'
-                  ? (c < '_'
-                    ? (c >= 'A' && c <= 'Z')
-                    : c <= '_')
-                  : (c <= 'z' || (c < 181
-                    ? c == 170
-                    : c <= 181)))
-                : (c <= 186 || (c < 248
-                  ? (c < 216
-                    ? (c >= 192 && c <= 214)
-                    : c <= 246)
-                  : (c <= 705 || (c >= 710 && c <= 721)))))
-              : (c <= 740 || (c < 891
-                ? (c < 880
-                  ? (c < 750
-                    ? c == 748
-                    : c <= 750)
-                  : (c <= 884 || (c >= 886 && c <= 887)))
-                : (c <= 893 || (c < 904
-                  ? (c < 902
-                    ? c == 895
-                    : c <= 902)
-                  : (c <= 906 || c == 908))))))
-            : (c <= 929 || (c < 1649
-              ? (c < 1376
-                ? (c < 1162
-                  ? (c < 1015
-                    ? (c >= 931 && c <= 1013)
-                    : c <= 1153)
-                  : (c <= 1327 || (c < 1369
-                    ? (c >= 1329 && c <= 1366)
-                    : c <= 1369)))
-                : (c <= 1416 || (c < 1568
-                  ? (c < 1519
-                    ? (c >= 1488 && c <= 1514)
-                    : c <= 1522)
-                  : (c <= 1610 || (c >= 1646 && c <= 1647)))))
-              : (c <= 1747 || (c < 1791
-                ? (c < 1774
-                  ? (c < 1765
-                    ? c == 1749
-                    : c <= 1766)
-                  : (c <= 1775 || (c >= 1786 && c <= 1788)))
-                : (c <= 1791 || (c < 1869
-                  ? (c < 1810
-                    ? c == 1808
-                    : c <= 1839)
-                  : (c <= 1957 || c == 1969))))))))
-          : (c <= 2026 || (c < 2482
-            ? (c < 2208
-              ? (c < 2088
-                ? (c < 2048
-                  ? (c < 2042
-                    ? (c >= 2036 && c <= 2037)
-                    : c <= 2042)
-                  : (c <= 2069 || (c < 2084
-                    ? c == 2074
-                    : c <= 2084)))
-                : (c <= 2088 || (c < 2160
-                  ? (c < 2144
-                    ? (c >= 2112 && c <= 2136)
-                    : c <= 2154)
-                  : (c <= 2183 || (c >= 2185 && c <= 2190)))))
-              : (c <= 2249 || (c < 2417
-                ? (c < 2384
-                  ? (c < 2365
-                    ? (c >= 2308 && c <= 2361)
-                    : c <= 2365)
-                  : (c <= 2384 || (c >= 2392 && c <= 2401)))
-                : (c <= 2432 || (c < 2451
-                  ? (c < 2447
-                    ? (c >= 2437 && c <= 2444)
-                    : c <= 2448)
-                  : (c <= 2472 || (c >= 2474 && c <= 2480)))))))
-            : (c <= 2482 || (c < 2579
-              ? (c < 2527
-                ? (c < 2510
-                  ? (c < 2493
-                    ? (c >= 2486 && c <= 2489)
-                    : c <= 2493)
-                  : (c <= 2510 || (c >= 2524 && c <= 2525)))
-                : (c <= 2529 || (c < 2565
-                  ? (c < 2556
-                    ? (c >= 2544 && c <= 2545)
-                    : c <= 2556)
-                  : (c <= 2570 || (c >= 2575 && c <= 2576)))))
-              : (c <= 2600 || (c < 2649
-                ? (c < 2613
-                  ? (c < 2610
-                    ? (c >= 2602 && c <= 2608)
-                    : c <= 2611)
-                  : (c <= 2614 || (c >= 2616 && c <= 2617)))
-                : (c <= 2652 || (c < 2693
-                  ? (c < 2674
-                    ? c == 2654
-                    : c <= 2676)
-                  : (c <= 2701 || (c >= 2703 && c <= 2705)))))))))))
-        : (c <= 2728 || (c < 3242
-          ? (c < 2962
-            ? (c < 2858
-              ? (c < 2784
-                ? (c < 2741
-                  ? (c < 2738
-                    ? (c >= 2730 && c <= 2736)
-                    : c <= 2739)
-                  : (c <= 2745 || (c < 2768
-                    ? c == 2749
-                    : c <= 2768)))
-                : (c <= 2785 || (c < 2831
-                  ? (c < 2821
-                    ? c == 2809
-                    : c <= 2828)
-                  : (c <= 2832 || (c >= 2835 && c <= 2856)))))
-              : (c <= 2864 || (c < 2911
-                ? (c < 2877
-                  ? (c < 2869
-                    ? (c >= 2866 && c <= 2867)
-                    : c <= 2873)
-                  : (c <= 2877 || (c >= 2908 && c <= 2909)))
-                : (c <= 2913 || (c < 2949
-                  ? (c < 2947
-                    ? c == 2929
-                    : c <= 2947)
-                  : (c <= 2954 || (c >= 2958 && c <= 2960)))))))
-            : (c <= 2965 || (c < 3090
-              ? (c < 2984
-                ? (c < 2974
-                  ? (c < 2972
-                    ? (c >= 2969 && c <= 2970)
-                    : c <= 2972)
-                  : (c <= 2975 || (c >= 2979 && c <= 2980)))
-                : (c <= 2986 || (c < 3077
-                  ? (c < 3024
-                    ? (c >= 2990 && c <= 3001)
-                    : c <= 3024)
-                  : (c <= 3084 || (c >= 3086 && c <= 3088)))))
-              : (c <= 3112 || (c < 3168
-                ? (c < 3160
-                  ? (c < 3133
-                    ? (c >= 3114 && c <= 3129)
-                    : c <= 3133)
-                  : (c <= 3162 || c == 3165))
-                : (c <= 3169 || (c < 3214
-                  ? (c < 3205
-                    ? c == 3200
-                    : c <= 3212)
-                  : (c <= 3216 || (c >= 3218 && c <= 3240)))))))))
-          : (c <= 3251 || (c < 3648
-            ? (c < 3412
-              ? (c < 3332
-                ? (c < 3293
-                  ? (c < 3261
-                    ? (c >= 3253 && c <= 3257)
-                    : c <= 3261)
-                  : (c <= 3294 || (c < 3313
-                    ? (c >= 3296 && c <= 3297)
-                    : c <= 3314)))
-                : (c <= 3340 || (c < 3389
-                  ? (c < 3346
-                    ? (c >= 3342 && c <= 3344)
-                    : c <= 3386)
-                  : (c <= 3389 || c == 3406))))
-              : (c <= 3414 || (c < 3507
-                ? (c < 3461
-                  ? (c < 3450
-                    ? (c >= 3423 && c <= 3425)
-                    : c <= 3455)
-                  : (c <= 3478 || (c >= 3482 && c <= 3505)))
-                : (c <= 3515 || (c < 3585
-                  ? (c < 3520
-                    ? c == 3517
-                    : c <= 3526)
-                  : (c <= 3632 || c == 3634))))))
-            : (c <= 3654 || (c < 3782
-              ? (c < 3749
-                ? (c < 3718
-                  ? (c < 3716
-                    ? (c >= 3713 && c <= 3714)
-                    : c <= 3716)
-                  : (c <= 3722 || (c >= 3724 && c <= 3747)))
-                : (c <= 3749 || (c < 3773
-                  ? (c < 3762
-                    ? (c >= 3751 && c <= 3760)
-                    : c <= 3762)
-                  : (c <= 3773 || (c >= 3776 && c <= 3780)))))
-              : (c <= 3782 || (c < 3976
-                ? (c < 3904
-                  ? (c < 3840
-                    ? (c >= 3804 && c <= 3807)
-                    : c <= 3840)
-                  : (c <= 3911 || (c >= 3913 && c <= 3948)))
-                : (c <= 3980 || (c < 4176
-                  ? (c < 4159
-                    ? (c >= 4096 && c <= 4138)
-                    : c <= 4159)
-                  : (c <= 4181 || (c >= 4186 && c <= 4189)))))))))))))
-      : (c <= 4193 || (c < 8134
-        ? (c < 6176
-          ? (c < 4808
-            ? (c < 4688
-              ? (c < 4295
-                ? (c < 4213
-                  ? (c < 4206
-                    ? (c >= 4197 && c <= 4198)
-                    : c <= 4208)
-                  : (c <= 4225 || (c < 4256
-                    ? c == 4238
-                    : c <= 4293)))
-                : (c <= 4295 || (c < 4348
-                  ? (c < 4304
-                    ? c == 4301
-                    : c <= 4346)
-                  : (c <= 4680 || (c >= 4682 && c <= 4685)))))
-              : (c <= 4694 || (c < 4752
-                ? (c < 4704
-                  ? (c < 4698
-                    ? c == 4696
-                    : c <= 4701)
-                  : (c <= 4744 || (c >= 4746 && c <= 4749)))
-                : (c <= 4784 || (c < 4800
-                  ? (c < 4792
-                    ? (c >= 4786 && c <= 4789)
-                    : c <= 4798)
-                  : (c <= 4800 || (c >= 4802 && c <= 4805)))))))
-            : (c <= 4822 || (c < 5792
-              ? (c < 5024
-                ? (c < 4888
-                  ? (c < 4882
-                    ? (c >= 4824 && c <= 4880)
-                    : c <= 4885)
-                  : (c <= 4954 || (c >= 4992 && c <= 5007)))
-                : (c <= 5109 || (c < 5743
-                  ? (c < 5121
-                    ? (c >= 5112 && c <= 5117)
-                    : c <= 5740)
-                  : (c <= 5759 || (c >= 5761 && c <= 5786)))))
-              : (c <= 5866 || (c < 5984
-                ? (c < 5919
-                  ? (c < 5888
-                    ? (c >= 5870 && c <= 5880)
-                    : c <= 5905)
-                  : (c <= 5937 || (c >= 5952 && c <= 5969)))
-                : (c <= 5996 || (c < 6103
-                  ? (c < 6016
-                    ? (c >= 5998 && c <= 6000)
-                    : c <= 6067)
-                  : (c <= 6103 || c == 6108))))))))
-          : (c <= 6264 || (c < 7312
-            ? (c < 6823
-              ? (c < 6512
-                ? (c < 6320
-                  ? (c < 6314
-                    ? (c >= 6272 && c <= 6312)
-                    : c <= 6314)
-                  : (c <= 6389 || (c < 6480
-                    ? (c >= 6400 && c <= 6430)
-                    : c <= 6509)))
-                : (c <= 6516 || (c < 6656
-                  ? (c < 6576
-                    ? (c >= 6528 && c <= 6571)
-                    : c <= 6601)
-                  : (c <= 6678 || (c >= 6688 && c <= 6740)))))
-              : (c <= 6823 || (c < 7098
-                ? (c < 7043
-                  ? (c < 6981
-                    ? (c >= 6917 && c <= 6963)
-                    : c <= 6988)
-                  : (c <= 7072 || (c >= 7086 && c <= 7087)))
-                : (c <= 7141 || (c < 7258
-                  ? (c < 7245
-                    ? (c >= 7168 && c <= 7203)
-                    : c <= 7247)
-                  : (c <= 7293 || (c >= 7296 && c <= 7304)))))))
-            : (c <= 7354 || (c < 8008
-              ? (c < 7418
-                ? (c < 7406
-                  ? (c < 7401
-                    ? (c >= 7357 && c <= 7359)
-                    : c <= 7404)
-                  : (c <= 7411 || (c >= 7413 && c <= 7414)))
-                : (c <= 7418 || (c < 7960
-                  ? (c < 7680
-                    ? (c >= 7424 && c <= 7615)
-                    : c <= 7957)
-                  : (c <= 7965 || (c >= 7968 && c <= 8005)))))
-              : (c <= 8013 || (c < 8031
-                ? (c < 8027
-                  ? (c < 8025
-                    ? (c >= 8016 && c <= 8023)
-                    : c <= 8025)
-                  : (c <= 8027 || c == 8029))
-                : (c <= 8061 || (c < 8126
-                  ? (c < 8118
-                    ? (c >= 8064 && c <= 8116)
-                    : c <= 8124)
-                  : (c <= 8126 || (c >= 8130 && c <= 8132)))))))))))
-        : (c <= 8140 || (c < 12337
-          ? (c < 8544
-            ? (c < 8458
-              ? (c < 8305
-                ? (c < 8160
-                  ? (c < 8150
-                    ? (c >= 8144 && c <= 8147)
-                    : c <= 8155)
-                  : (c <= 8172 || (c < 8182
-                    ? (c >= 8178 && c <= 8180)
-                    : c <= 8188)))
-                : (c <= 8305 || (c < 8450
-                  ? (c < 8336
-                    ? c == 8319
-                    : c <= 8348)
-                  : (c <= 8450 || c == 8455))))
-              : (c <= 8467 || (c < 8488
-                ? (c < 8484
-                  ? (c < 8472
-                    ? c == 8469
-                    : c <= 8477)
-                  : (c <= 8484 || c == 8486))
-                : (c <= 8488 || (c < 8517
-                  ? (c < 8508
-                    ? (c >= 8490 && c <= 8505)
-                    : c <= 8511)
-                  : (c <= 8521 || c == 8526))))))
-            : (c <= 8584 || (c < 11680
-              ? (c < 11559
-                ? (c < 11506
-                  ? (c < 11499
-                    ? (c >= 11264 && c <= 11492)
-                    : c <= 11502)
-                  : (c <= 11507 || (c >= 11520 && c <= 11557)))
-                : (c <= 11559 || (c < 11631
-                  ? (c < 11568
-                    ? c == 11565
-                    : c <= 11623)
-                  : (c <= 11631 || (c >= 11648 && c <= 11670)))))
-              : (c <= 11686 || (c < 11720
-                ? (c < 11704
-                  ? (c < 11696
-                    ? (c >= 11688 && c <= 11694)
-                    : c <= 11702)
-                  : (c <= 11710 || (c >= 11712 && c <= 11718)))
-                : (c <= 11726 || (c < 12293
-                  ? (c < 11736
-                    ? (c >= 11728 && c <= 11734)
-                    : c <= 11742)
-                  : (c <= 12295 || (c >= 12321 && c <= 12329)))))))))
-          : (c <= 12341 || (c < 42891
-            ? (c < 19968
-              ? (c < 12549
-                ? (c < 12445
-                  ? (c < 12353
-                    ? (c >= 12344 && c <= 12348)
-                    : c <= 12438)
-                  : (c <= 12447 || (c < 12540
-                    ? (c >= 12449 && c <= 12538)
-                    : c <= 12543)))
-                : (c <= 12591 || (c < 12784
-                  ? (c < 12704
-                    ? (c >= 12593 && c <= 12686)
-                    : c <= 12735)
-                  : (c <= 12799 || (c >= 13312 && c <= 19903)))))
-              : (c <= 42124 || (c < 42560
-                ? (c < 42512
-                  ? (c < 42240
-                    ? (c >= 42192 && c <= 42237)
-                    : c <= 42508)
-                  : (c <= 42527 || (c >= 42538 && c <= 42539)))
-                : (c <= 42606 || (c < 42775
-                  ? (c < 42656
-                    ? (c >= 42623 && c <= 42653)
-                    : c <= 42735)
-                  : (c <= 42783 || (c >= 42786 && c <= 42888)))))))
-            : (c <= 42954 || (c < 43250
-              ? (c < 43011
-                ? (c < 42965
-                  ? (c < 42963
-                    ? (c >= 42960 && c <= 42961)
-                    : c <= 42963)
-                  : (c <= 42969 || (c >= 42994 && c <= 43009)))
-                : (c <= 43013 || (c < 43072
-                  ? (c < 43020
-                    ? (c >= 43015 && c <= 43018)
-                    : c <= 43042)
-                  : (c <= 43123 || (c >= 43138 && c <= 43187)))))
-              : (c <= 43255 || (c < 43360
-                ? (c < 43274
-                  ? (c < 43261
-                    ? c == 43259
-                    : c <= 43262)
-                  : (c <= 43301 || (c >= 43312 && c <= 43334)))
-                : (c <= 43388 || (c < 43488
-                  ? (c < 43471
-                    ? (c >= 43396 && c <= 43442)
-                    : c <= 43471)
-                  : (c <= 43492 || (c >= 43494 && c <= 43503)))))))))))))))
-    : (c <= 43518 || (c < 70727
-      ? (c < 66956
-        ? (c < 64914
-          ? (c < 43868
-            ? (c < 43714
-              ? (c < 43646
-                ? (c < 43588
-                  ? (c < 43584
-                    ? (c >= 43520 && c <= 43560)
-                    : c <= 43586)
-                  : (c <= 43595 || (c < 43642
-                    ? (c >= 43616 && c <= 43638)
-                    : c <= 43642)))
-                : (c <= 43695 || (c < 43705
-                  ? (c < 43701
-                    ? c == 43697
-                    : c <= 43702)
-                  : (c <= 43709 || c == 43712))))
-              : (c <= 43714 || (c < 43785
-                ? (c < 43762
-                  ? (c < 43744
-                    ? (c >= 43739 && c <= 43741)
-                    : c <= 43754)
-                  : (c <= 43764 || (c >= 43777 && c <= 43782)))
-                : (c <= 43790 || (c < 43816
-                  ? (c < 43808
-                    ? (c >= 43793 && c <= 43798)
-                    : c <= 43814)
-                  : (c <= 43822 || (c >= 43824 && c <= 43866)))))))
-            : (c <= 43881 || (c < 64287
-              ? (c < 63744
-                ? (c < 55216
-                  ? (c < 44032
-                    ? (c >= 43888 && c <= 44002)
-                    : c <= 55203)
-                  : (c <= 55238 || (c >= 55243 && c <= 55291)))
-                : (c <= 64109 || (c < 64275
-                  ? (c < 64256
-                    ? (c >= 64112 && c <= 64217)
-                    : c <= 64262)
-                  : (c <= 64279 || c == 64285))))
-              : (c <= 64296 || (c < 64323
-                ? (c < 64318
-                  ? (c < 64312
-                    ? (c >= 64298 && c <= 64310)
-                    : c <= 64316)
-                  : (c <= 64318 || (c >= 64320 && c <= 64321)))
-                : (c <= 64324 || (c < 64612
-                  ? (c < 64467
-                    ? (c >= 64326 && c <= 64433)
-                    : c <= 64605)
-                  : (c <= 64829 || (c >= 64848 && c <= 64911)))))))))
-          : (c <= 64967 || (c < 65599
-            ? (c < 65382
-              ? (c < 65147
-                ? (c < 65139
-                  ? (c < 65137
-                    ? (c >= 65008 && c <= 65017)
-                    : c <= 65137)
-                  : (c <= 65139 || (c < 65145
-                    ? c == 65143
-                    : c <= 65145)))
-                : (c <= 65147 || (c < 65313
-                  ? (c < 65151
-                    ? c == 65149
-                    : c <= 65276)
-                  : (c <= 65338 || (c >= 65345 && c <= 65370)))))
-              : (c <= 65437 || (c < 65498
-                ? (c < 65482
-                  ? (c < 65474
-                    ? (c >= 65440 && c <= 65470)
-                    : c <= 65479)
-                  : (c <= 65487 || (c >= 65490 && c <= 65495)))
-                : (c <= 65500 || (c < 65576
-                  ? (c < 65549
-                    ? (c >= 65536 && c <= 65547)
-                    : c <= 65574)
-                  : (c <= 65594 || (c >= 65596 && c <= 65597)))))))
-            : (c <= 65613 || (c < 66464
-              ? (c < 66208
-                ? (c < 65856
-                  ? (c < 65664
-                    ? (c >= 65616 && c <= 65629)
-                    : c <= 65786)
-                  : (c <= 65908 || (c >= 66176 && c <= 66204)))
-                : (c <= 66256 || (c < 66384
-                  ? (c < 66349
-                    ? (c >= 66304 && c <= 66335)
-                    : c <= 66378)
-                  : (c <= 66421 || (c >= 66432 && c <= 66461)))))
-              : (c <= 66499 || (c < 66776
-                ? (c < 66560
-                  ? (c < 66513
-                    ? (c >= 66504 && c <= 66511)
-                    : c <= 66517)
-                  : (c <= 66717 || (c >= 66736 && c <= 66771)))
-                : (c <= 66811 || (c < 66928
-                  ? (c < 66864
-                    ? (c >= 66816 && c <= 66855)
-                    : c <= 66915)
-                  : (c <= 66938 || (c >= 66940 && c <= 66954)))))))))))
-        : (c <= 66962 || (c < 68864
-          ? (c < 67828
-            ? (c < 67506
-              ? (c < 67072
-                ? (c < 66979
-                  ? (c < 66967
-                    ? (c >= 66964 && c <= 66965)
-                    : c <= 66977)
-                  : (c <= 66993 || (c < 67003
-                    ? (c >= 66995 && c <= 67001)
-                    : c <= 67004)))
-                : (c <= 67382 || (c < 67456
-                  ? (c < 67424
-                    ? (c >= 67392 && c <= 67413)
-                    : c <= 67431)
-                  : (c <= 67461 || (c >= 67463 && c <= 67504)))))
-              : (c <= 67514 || (c < 67644
-                ? (c < 67594
-                  ? (c < 67592
-                    ? (c >= 67584 && c <= 67589)
-                    : c <= 67592)
-                  : (c <= 67637 || (c >= 67639 && c <= 67640)))
-                : (c <= 67644 || (c < 67712
-                  ? (c < 67680
-                    ? (c >= 67647 && c <= 67669)
-                    : c <= 67702)
-                  : (c <= 67742 || (c >= 67808 && c <= 67826)))))))
-            : (c <= 67829 || (c < 68224
-              ? (c < 68096
-                ? (c < 67968
-                  ? (c < 67872
-                    ? (c >= 67840 && c <= 67861)
-                    : c <= 67897)
-                  : (c <= 68023 || (c >= 68030 && c <= 68031)))
-                : (c <= 68096 || (c < 68121
-                  ? (c < 68117
-                    ? (c >= 68112 && c <= 68115)
-                    : c <= 68119)
-                  : (c <= 68149 || (c >= 68192 && c <= 68220)))))
-              : (c <= 68252 || (c < 68448
-                ? (c < 68352
-                  ? (c < 68297
-                    ? (c >= 68288 && c <= 68295)
-                    : c <= 68324)
-                  : (c <= 68405 || (c >= 68416 && c <= 68437)))
-                : (c <= 68466 || (c < 68736
-                  ? (c < 68608
-                    ? (c >= 68480 && c <= 68497)
-                    : c <= 68680)
-                  : (c <= 68786 || (c >= 68800 && c <= 68850)))))))))
-          : (c <= 68899 || (c < 70106
-            ? (c < 69749
-              ? (c < 69488
-                ? (c < 69376
-                  ? (c < 69296
-                    ? (c >= 69248 && c <= 69289)
-                    : c <= 69297)
-                  : (c <= 69404 || (c < 69424
-                    ? c == 69415
-                    : c <= 69445)))
-                : (c <= 69505 || (c < 69635
-                  ? (c < 69600
-                    ? (c >= 69552 && c <= 69572)
-                    : c <= 69622)
-                  : (c <= 69687 || (c >= 69745 && c <= 69746)))))
-              : (c <= 69749 || (c < 69959
-                ? (c < 69891
-                  ? (c < 69840
-                    ? (c >= 69763 && c <= 69807)
-                    : c <= 69864)
-                  : (c <= 69926 || c == 69956))
-                : (c <= 69959 || (c < 70019
-                  ? (c < 70006
-                    ? (c >= 69968 && c <= 70002)
-                    : c <= 70006)
-                  : (c <= 70066 || (c >= 70081 && c <= 70084)))))))
-            : (c <= 70106 || (c < 70405
-              ? (c < 70280
-                ? (c < 70163
-                  ? (c < 70144
-                    ? c == 70108
-                    : c <= 70161)
-                  : (c <= 70187 || (c >= 70272 && c <= 70278)))
-                : (c <= 70280 || (c < 70303
-                  ? (c < 70287
-                    ? (c >= 70282 && c <= 70285)
-                    : c <= 70301)
-                  : (c <= 70312 || (c >= 70320 && c <= 70366)))))
-              : (c <= 70412 || (c < 70453
-                ? (c < 70442
-                  ? (c < 70419
-                    ? (c >= 70415 && c <= 70416)
-                    : c <= 70440)
-                  : (c <= 70448 || (c >= 70450 && c <= 70451)))
-                : (c <= 70457 || (c < 70493
-                  ? (c < 70480
-                    ? c == 70461
-                    : c <= 70480)
-                  : (c <= 70497 || (c >= 70656 && c <= 70708)))))))))))))
-      : (c <= 70730 || (c < 119894
-        ? (c < 73056
-          ? (c < 72001
-            ? (c < 71424
-              ? (c < 71128
-                ? (c < 70852
-                  ? (c < 70784
-                    ? (c >= 70751 && c <= 70753)
-                    : c <= 70831)
-                  : (c <= 70853 || (c < 71040
-                    ? c == 70855
-                    : c <= 71086)))
-                : (c <= 71131 || (c < 71296
-                  ? (c < 71236
-                    ? (c >= 71168 && c <= 71215)
-                    : c <= 71236)
-                  : (c <= 71338 || c == 71352))))
-              : (c <= 71450 || (c < 71945
-                ? (c < 71840
-                  ? (c < 71680
-                    ? (c >= 71488 && c <= 71494)
-                    : c <= 71723)
-                  : (c <= 71903 || (c >= 71935 && c <= 71942)))
-                : (c <= 71945 || (c < 71960
-                  ? (c < 71957
-                    ? (c >= 71948 && c <= 71955)
-                    : c <= 71958)
-                  : (c <= 71983 || c == 71999))))))
-            : (c <= 72001 || (c < 72349
-              ? (c < 72192
-                ? (c < 72161
-                  ? (c < 72106
-                    ? (c >= 72096 && c <= 72103)
-                    : c <= 72144)
-                  : (c <= 72161 || c == 72163))
-                : (c <= 72192 || (c < 72272
-                  ? (c < 72250
-                    ? (c >= 72203 && c <= 72242)
-                    : c <= 72250)
-                  : (c <= 72272 || (c >= 72284 && c <= 72329)))))
-              : (c <= 72349 || (c < 72818
-                ? (c < 72714
-                  ? (c < 72704
-                    ? (c >= 72368 && c <= 72440)
-                    : c <= 72712)
-                  : (c <= 72750 || c == 72768))
-                : (c <= 72847 || (c < 72971
-                  ? (c < 72968
-                    ? (c >= 72960 && c <= 72966)
-                    : c <= 72969)
-                  : (c <= 73008 || c == 73030))))))))
-          : (c <= 73061 || (c < 93952
-            ? (c < 82944
-              ? (c < 73728
-                ? (c < 73112
-                  ? (c < 73066
-                    ? (c >= 73063 && c <= 73064)
-                    : c <= 73097)
-                  : (c <= 73112 || (c < 73648
-                    ? (c >= 73440 && c <= 73458)
-                    : c <= 73648)))
-                : (c <= 74649 || (c < 77712
-                  ? (c < 74880
-                    ? (c >= 74752 && c <= 74862)
-                    : c <= 75075)
-                  : (c <= 77808 || (c >= 77824 && c <= 78894)))))
-              : (c <= 83526 || (c < 92928
-                ? (c < 92784
-                  ? (c < 92736
-                    ? (c >= 92160 && c <= 92728)
-                    : c <= 92766)
-                  : (c <= 92862 || (c >= 92880 && c <= 92909)))
-                : (c <= 92975 || (c < 93053
-                  ? (c < 93027
-                    ? (c >= 92992 && c <= 92995)
-                    : c <= 93047)
-                  : (c <= 93071 || (c >= 93760 && c <= 93823)))))))
-            : (c <= 94026 || (c < 110589
-              ? (c < 94208
-                ? (c < 94176
-                  ? (c < 94099
-                    ? c == 94032
-                    : c <= 94111)
-                  : (c <= 94177 || c == 94179))
-                : (c <= 100343 || (c < 110576
-                  ? (c < 101632
-                    ? (c >= 100352 && c <= 101589)
-                    : c <= 101640)
-                  : (c <= 110579 || (c >= 110581 && c <= 110587)))))
-              : (c <= 110590 || (c < 113664
-                ? (c < 110948
-                  ? (c < 110928
-                    ? (c >= 110592 && c <= 110882)
-                    : c <= 110930)
-                  : (c <= 110951 || (c >= 110960 && c <= 111355)))
-                : (c <= 113770 || (c < 113808
-                  ? (c < 113792
-                    ? (c >= 113776 && c <= 113788)
-                    : c <= 113800)
-                  : (c <= 113817 || (c >= 119808 && c <= 119892)))))))))))
-        : (c <= 119964 || (c < 125259
-          ? (c < 120572
-            ? (c < 120086
-              ? (c < 119995
-                ? (c < 119973
-                  ? (c < 119970
-                    ? (c >= 119966 && c <= 119967)
-                    : c <= 119970)
-                  : (c <= 119974 || (c < 119982
-                    ? (c >= 119977 && c <= 119980)
-                    : c <= 119993)))
-                : (c <= 119995 || (c < 120071
-                  ? (c < 120005
-                    ? (c >= 119997 && c <= 120003)
-                    : c <= 120069)
-                  : (c <= 120074 || (c >= 120077 && c <= 120084)))))
-              : (c <= 120092 || (c < 120138
-                ? (c < 120128
-                  ? (c < 120123
-                    ? (c >= 120094 && c <= 120121)
-                    : c <= 120126)
-                  : (c <= 120132 || c == 120134))
-                : (c <= 120144 || (c < 120514
-                  ? (c < 120488
-                    ? (c >= 120146 && c <= 120485)
-                    : c <= 120512)
-                  : (c <= 120538 || (c >= 120540 && c <= 120570)))))))
-            : (c <= 120596 || (c < 123191
-              ? (c < 120714
-                ? (c < 120656
-                  ? (c < 120630
-                    ? (c >= 120598 && c <= 120628)
-                    : c <= 120654)
-                  : (c <= 120686 || (c >= 120688 && c <= 120712)))
-                : (c <= 120744 || (c < 122624
-                  ? (c < 120772
-                    ? (c >= 120746 && c <= 120770)
-                    : c <= 120779)
-                  : (c <= 122654 || (c >= 123136 && c <= 123180)))))
-              : (c <= 123197 || (c < 124904
-                ? (c < 123584
-                  ? (c < 123536
-                    ? c == 123214
-                    : c <= 123565)
-                  : (c <= 123627 || (c >= 124896 && c <= 124902)))
-                : (c <= 124907 || (c < 124928
-                  ? (c < 124912
-                    ? (c >= 124909 && c <= 124910)
-                    : c <= 124926)
-                  : (c <= 125124 || (c >= 125184 && c <= 125251)))))))))
-          : (c <= 125259 || (c < 126559
-            ? (c < 126535
-              ? (c < 126505
-                ? (c < 126497
-                  ? (c < 126469
-                    ? (c >= 126464 && c <= 126467)
-                    : c <= 126495)
-                  : (c <= 126498 || (c < 126503
-                    ? c == 126500
-                    : c <= 126503)))
-                : (c <= 126514 || (c < 126523
-                  ? (c < 126521
-                    ? (c >= 126516 && c <= 126519)
-                    : c <= 126521)
-                  : (c <= 126523 || c == 126530))))
-              : (c <= 126535 || (c < 126548
-                ? (c < 126541
-                  ? (c < 126539
-                    ? c == 126537
-                    : c <= 126539)
-                  : (c <= 126543 || (c >= 126545 && c <= 126546)))
-                : (c <= 126548 || (c < 126555
-                  ? (c < 126553
-                    ? c == 126551
-                    : c <= 126553)
-                  : (c <= 126555 || c == 126557))))))
-            : (c <= 126559 || (c < 126625
-              ? (c < 126580
-                ? (c < 126567
-                  ? (c < 126564
-                    ? (c >= 126561 && c <= 126562)
-                    : c <= 126564)
-                  : (c <= 126570 || (c >= 126572 && c <= 126578)))
-                : (c <= 126583 || (c < 126592
-                  ? (c < 126590
-                    ? (c >= 126585 && c <= 126588)
-                    : c <= 126590)
-                  : (c <= 126601 || (c >= 126603 && c <= 126619)))))
-              : (c <= 126627 || (c < 177984
-                ? (c < 131072
-                  ? (c < 126635
-                    ? (c >= 126629 && c <= 126633)
-                    : c <= 126651)
-                  : (c <= 173791 || (c >= 173824 && c <= 177976)))
-                : (c <= 178205 || (c < 194560
-                  ? (c < 183984
-                    ? (c >= 178208 && c <= 183969)
-                    : c <= 191456)
-                  : (c <= 195101 || (c >= 196608 && c <= 201546)))))))))))))))));
-}
+static TSCharacterRange sym_identifier_character_set_1[] = {
+  {'A', 'Z'}, {'_', '_'}, {'a', 'z'}, {0xaa, 0xaa}, {0xb5, 0xb5}, {0xba, 0xba}, {0xc0, 0xd6}, {0xd8, 0xf6},
+  {0xf8, 0x2c1}, {0x2c6, 0x2d1}, {0x2e0, 0x2e4}, {0x2ec, 0x2ec}, {0x2ee, 0x2ee}, {0x370, 0x374}, {0x376, 0x377}, {0x37b, 0x37d},
+  {0x37f, 0x37f}, {0x386, 0x386}, {0x388, 0x38a}, {0x38c, 0x38c}, {0x38e, 0x3a1}, {0x3a3, 0x3f5}, {0x3f7, 0x481}, {0x48a, 0x52f},
+  {0x531, 0x556}, {0x559, 0x559}, {0x560, 0x588}, {0x5d0, 0x5ea}, {0x5ef, 0x5f2}, {0x620, 0x64a}, {0x66e, 0x66f}, {0x671, 0x6d3},
+  {0x6d5, 0x6d5}, {0x6e5, 0x6e6}, {0x6ee, 0x6ef}, {0x6fa, 0x6fc}, {0x6ff, 0x6ff}, {0x710, 0x710}, {0x712, 0x72f}, {0x74d, 0x7a5},
+  {0x7b1, 0x7b1}, {0x7ca, 0x7ea}, {0x7f4, 0x7f5}, {0x7fa, 0x7fa}, {0x800, 0x815}, {0x81a, 0x81a}, {0x824, 0x824}, {0x828, 0x828},
+  {0x840, 0x858}, {0x860, 0x86a}, {0x870, 0x887}, {0x889, 0x88e}, {0x8a0, 0x8c9}, {0x904, 0x939}, {0x93d, 0x93d}, {0x950, 0x950},
+  {0x958, 0x961}, {0x971, 0x980}, {0x985, 0x98c}, {0x98f, 0x990}, {0x993, 0x9a8}, {0x9aa, 0x9b0}, {0x9b2, 0x9b2}, {0x9b6, 0x9b9},
+  {0x9bd, 0x9bd}, {0x9ce, 0x9ce}, {0x9dc, 0x9dd}, {0x9df, 0x9e1}, {0x9f0, 0x9f1}, {0x9fc, 0x9fc}, {0xa05, 0xa0a}, {0xa0f, 0xa10},
+  {0xa13, 0xa28}, {0xa2a, 0xa30}, {0xa32, 0xa33}, {0xa35, 0xa36}, {0xa38, 0xa39}, {0xa59, 0xa5c}, {0xa5e, 0xa5e}, {0xa72, 0xa74},
+  {0xa85, 0xa8d}, {0xa8f, 0xa91}, {0xa93, 0xaa8}, {0xaaa, 0xab0}, {0xab2, 0xab3}, {0xab5, 0xab9}, {0xabd, 0xabd}, {0xad0, 0xad0},
+  {0xae0, 0xae1}, {0xaf9, 0xaf9}, {0xb05, 0xb0c}, {0xb0f, 0xb10}, {0xb13, 0xb28}, {0xb2a, 0xb30}, {0xb32, 0xb33}, {0xb35, 0xb39},
+  {0xb3d, 0xb3d}, {0xb5c, 0xb5d}, {0xb5f, 0xb61}, {0xb71, 0xb71}, {0xb83, 0xb83}, {0xb85, 0xb8a}, {0xb8e, 0xb90}, {0xb92, 0xb95},
+  {0xb99, 0xb9a}, {0xb9c, 0xb9c}, {0xb9e, 0xb9f}, {0xba3, 0xba4}, {0xba8, 0xbaa}, {0xbae, 0xbb9}, {0xbd0, 0xbd0}, {0xc05, 0xc0c},
+  {0xc0e, 0xc10}, {0xc12, 0xc28}, {0xc2a, 0xc39}, {0xc3d, 0xc3d}, {0xc58, 0xc5a}, {0xc5d, 0xc5d}, {0xc60, 0xc61}, {0xc80, 0xc80},
+  {0xc85, 0xc8c}, {0xc8e, 0xc90}, {0xc92, 0xca8}, {0xcaa, 0xcb3}, {0xcb5, 0xcb9}, {0xcbd, 0xcbd}, {0xcdd, 0xcde}, {0xce0, 0xce1},
+  {0xcf1, 0xcf2}, {0xd04, 0xd0c}, {0xd0e, 0xd10}, {0xd12, 0xd3a}, {0xd3d, 0xd3d}, {0xd4e, 0xd4e}, {0xd54, 0xd56}, {0xd5f, 0xd61},
+  {0xd7a, 0xd7f}, {0xd85, 0xd96}, {0xd9a, 0xdb1}, {0xdb3, 0xdbb}, {0xdbd, 0xdbd}, {0xdc0, 0xdc6}, {0xe01, 0xe30}, {0xe32, 0xe32},
+  {0xe40, 0xe46}, {0xe81, 0xe82}, {0xe84, 0xe84}, {0xe86, 0xe8a}, {0xe8c, 0xea3}, {0xea5, 0xea5}, {0xea7, 0xeb0}, {0xeb2, 0xeb2},
+  {0xebd, 0xebd}, {0xec0, 0xec4}, {0xec6, 0xec6}, {0xedc, 0xedf}, {0xf00, 0xf00}, {0xf40, 0xf47}, {0xf49, 0xf6c}, {0xf88, 0xf8c},
+  {0x1000, 0x102a}, {0x103f, 0x103f}, {0x1050, 0x1055}, {0x105a, 0x105d}, {0x1061, 0x1061}, {0x1065, 0x1066}, {0x106e, 0x1070}, {0x1075, 0x1081},
+  {0x108e, 0x108e}, {0x10a0, 0x10c5}, {0x10c7, 0x10c7}, {0x10cd, 0x10cd}, {0x10d0, 0x10fa}, {0x10fc, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256},
+  {0x1258, 0x1258}, {0x125a, 0x125d}, {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c0, 0x12c0},
+  {0x12c2, 0x12c5}, {0x12c8, 0x12d6}, {0x12d8, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x135a}, {0x1380, 0x138f}, {0x13a0, 0x13f5}, {0x13f8, 0x13fd},
+  {0x1401, 0x166c}, {0x166f, 0x167f}, {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x16ee, 0x16f8}, {0x1700, 0x1711}, {0x171f, 0x1731}, {0x1740, 0x1751},
+  {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1780, 0x17b3}, {0x17d7, 0x17d7}, {0x17dc, 0x17dc}, {0x1820, 0x1878}, {0x1880, 0x18a8}, {0x18aa, 0x18aa},
+  {0x18b0, 0x18f5}, {0x1900, 0x191e}, {0x1950, 0x196d}, {0x1970, 0x1974}, {0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x1a00, 0x1a16}, {0x1a20, 0x1a54},
+  {0x1aa7, 0x1aa7}, {0x1b05, 0x1b33}, {0x1b45, 0x1b4c}, {0x1b83, 0x1ba0}, {0x1bae, 0x1baf}, {0x1bba, 0x1be5}, {0x1c00, 0x1c23}, {0x1c4d, 0x1c4f},
+  {0x1c5a, 0x1c7d}, {0x1c80, 0x1c88}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1ce9, 0x1cec}, {0x1cee, 0x1cf3}, {0x1cf5, 0x1cf6}, {0x1cfa, 0x1cfa},
+  {0x1d00, 0x1dbf}, {0x1e00, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b},
+  {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3},
+  {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x2071, 0x2071}, {0x207f, 0x207f}, {0x2090, 0x209c}, {0x2102, 0x2102},
+  {0x2107, 0x2107}, {0x210a, 0x2113}, {0x2115, 0x2115}, {0x2118, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x2139},
+  {0x213c, 0x213f}, {0x2145, 0x2149}, {0x214e, 0x214e}, {0x2160, 0x2188}, {0x2c00, 0x2ce4}, {0x2ceb, 0x2cee}, {0x2cf2, 0x2cf3}, {0x2d00, 0x2d25},
+  {0x2d27, 0x2d27}, {0x2d2d, 0x2d2d}, {0x2d30, 0x2d67}, {0x2d6f, 0x2d6f}, {0x2d80, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6},
+  {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, {0x2dd0, 0x2dd6}, {0x2dd8, 0x2dde}, {0x3005, 0x3007}, {0x3021, 0x3029}, {0x3031, 0x3035},
+  {0x3038, 0x303c}, {0x3041, 0x3096}, {0x309d, 0x309f}, {0x30a1, 0x30fa}, {0x30fc, 0x30ff}, {0x3105, 0x312f}, {0x3131, 0x318e}, {0x31a0, 0x31bf},
+  {0x31f0, 0x31ff}, {0x3400, 0x4dbf}, {0x4e00, 0xa48c}, {0xa4d0, 0xa4fd}, {0xa500, 0xa60c}, {0xa610, 0xa61f}, {0xa62a, 0xa62b}, {0xa640, 0xa66e},
+  {0xa67f, 0xa69d}, {0xa6a0, 0xa6ef}, {0xa717, 0xa71f}, {0xa722, 0xa788}, {0xa78b, 0xa7ca}, {0xa7d0, 0xa7d1}, {0xa7d3, 0xa7d3}, {0xa7d5, 0xa7d9},
+  {0xa7f2, 0xa801}, {0xa803, 0xa805}, {0xa807, 0xa80a}, {0xa80c, 0xa822}, {0xa840, 0xa873}, {0xa882, 0xa8b3}, {0xa8f2, 0xa8f7}, {0xa8fb, 0xa8fb},
+  {0xa8fd, 0xa8fe}, {0xa90a, 0xa925}, {0xa930, 0xa946}, {0xa960, 0xa97c}, {0xa984, 0xa9b2}, {0xa9cf, 0xa9cf}, {0xa9e0, 0xa9e4}, {0xa9e6, 0xa9ef},
+  {0xa9fa, 0xa9fe}, {0xaa00, 0xaa28}, {0xaa40, 0xaa42}, {0xaa44, 0xaa4b}, {0xaa60, 0xaa76}, {0xaa7a, 0xaa7a}, {0xaa7e, 0xaaaf}, {0xaab1, 0xaab1},
+  {0xaab5, 0xaab6}, {0xaab9, 0xaabd}, {0xaac0, 0xaac0}, {0xaac2, 0xaac2}, {0xaadb, 0xaadd}, {0xaae0, 0xaaea}, {0xaaf2, 0xaaf4}, {0xab01, 0xab06},
+  {0xab09, 0xab0e}, {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xab30, 0xab5a}, {0xab5c, 0xab69}, {0xab70, 0xabe2}, {0xac00, 0xd7a3},
+  {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d}, {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb1d}, {0xfb1f, 0xfb28},
+  {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb3e, 0xfb3e}, {0xfb40, 0xfb41}, {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfc5d}, {0xfc64, 0xfd3d},
+  {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdf9}, {0xfe71, 0xfe71}, {0xfe73, 0xfe73}, {0xfe77, 0xfe77}, {0xfe79, 0xfe79}, {0xfe7b, 0xfe7b},
+  {0xfe7d, 0xfe7d}, {0xfe7f, 0xfefc}, {0xff21, 0xff3a}, {0xff41, 0xff5a}, {0xff66, 0xff9d}, {0xffa0, 0xffbe}, {0xffc2, 0xffc7}, {0xffca, 0xffcf},
+  {0xffd2, 0xffd7}, {0xffda, 0xffdc}, {0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d}, {0x10050, 0x1005d},
+  {0x10080, 0x100fa}, {0x10140, 0x10174}, {0x10280, 0x1029c}, {0x102a0, 0x102d0}, {0x10300, 0x1031f}, {0x1032d, 0x1034a}, {0x10350, 0x10375}, {0x10380, 0x1039d},
+  {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, {0x103d1, 0x103d5}, {0x10400, 0x1049d}, {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, {0x10500, 0x10527}, {0x10530, 0x10563},
+  {0x10570, 0x1057a}, {0x1057c, 0x1058a}, {0x1058c, 0x10592}, {0x10594, 0x10595}, {0x10597, 0x105a1}, {0x105a3, 0x105b1}, {0x105b3, 0x105b9}, {0x105bb, 0x105bc},
+  {0x10600, 0x10736}, {0x10740, 0x10755}, {0x10760, 0x10767}, {0x10780, 0x10785}, {0x10787, 0x107b0}, {0x107b2, 0x107ba}, {0x10800, 0x10805}, {0x10808, 0x10808},
+  {0x1080a, 0x10835}, {0x10837, 0x10838}, {0x1083c, 0x1083c}, {0x1083f, 0x10855}, {0x10860, 0x10876}, {0x10880, 0x1089e}, {0x108e0, 0x108f2}, {0x108f4, 0x108f5},
+  {0x10900, 0x10915}, {0x10920, 0x10939}, {0x10980, 0x109b7}, {0x109be, 0x109bf}, {0x10a00, 0x10a00}, {0x10a10, 0x10a13}, {0x10a15, 0x10a17}, {0x10a19, 0x10a35},
+  {0x10a60, 0x10a7c}, {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae4}, {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, {0x10b80, 0x10b91},
+  {0x10c00, 0x10c48}, {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d23}, {0x10e80, 0x10ea9}, {0x10eb0, 0x10eb1}, {0x10f00, 0x10f1c}, {0x10f27, 0x10f27},
+  {0x10f30, 0x10f45}, {0x10f70, 0x10f81}, {0x10fb0, 0x10fc4}, {0x10fe0, 0x10ff6}, {0x11003, 0x11037}, {0x11071, 0x11072}, {0x11075, 0x11075}, {0x11083, 0x110af},
+  {0x110d0, 0x110e8}, {0x11103, 0x11126}, {0x11144, 0x11144}, {0x11147, 0x11147}, {0x11150, 0x11172}, {0x11176, 0x11176}, {0x11183, 0x111b2}, {0x111c1, 0x111c4},
+  {0x111da, 0x111da}, {0x111dc, 0x111dc}, {0x11200, 0x11211}, {0x11213, 0x1122b}, {0x11280, 0x11286}, {0x11288, 0x11288}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d},
+  {0x1129f, 0x112a8}, {0x112b0, 0x112de}, {0x11305, 0x1130c}, {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339},
+  {0x1133d, 0x1133d}, {0x11350, 0x11350}, {0x1135d, 0x11361}, {0x11400, 0x11434}, {0x11447, 0x1144a}, {0x1145f, 0x11461}, {0x11480, 0x114af}, {0x114c4, 0x114c5},
+  {0x114c7, 0x114c7}, {0x11580, 0x115ae}, {0x115d8, 0x115db}, {0x11600, 0x1162f}, {0x11644, 0x11644}, {0x11680, 0x116aa}, {0x116b8, 0x116b8}, {0x11700, 0x1171a},
+  {0x11740, 0x11746}, {0x11800, 0x1182b}, {0x118a0, 0x118df}, {0x118ff, 0x11906}, {0x11909, 0x11909}, {0x1190c, 0x11913}, {0x11915, 0x11916}, {0x11918, 0x1192f},
+  {0x1193f, 0x1193f}, {0x11941, 0x11941}, {0x119a0, 0x119a7}, {0x119aa, 0x119d0}, {0x119e1, 0x119e1}, {0x119e3, 0x119e3}, {0x11a00, 0x11a00}, {0x11a0b, 0x11a32},
+  {0x11a3a, 0x11a3a}, {0x11a50, 0x11a50}, {0x11a5c, 0x11a89}, {0x11a9d, 0x11a9d}, {0x11ab0, 0x11af8}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c2e}, {0x11c40, 0x11c40},
+  {0x11c72, 0x11c8f}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, {0x11d0b, 0x11d30}, {0x11d46, 0x11d46}, {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d89},
+  {0x11d98, 0x11d98}, {0x11ee0, 0x11ef2}, {0x11fb0, 0x11fb0}, {0x12000, 0x12399}, {0x12400, 0x1246e}, {0x12480, 0x12543}, {0x12f90, 0x12ff0}, {0x13000, 0x1342e},
+  {0x14400, 0x14646}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e}, {0x16a70, 0x16abe}, {0x16ad0, 0x16aed}, {0x16b00, 0x16b2f}, {0x16b40, 0x16b43}, {0x16b63, 0x16b77},
+  {0x16b7d, 0x16b8f}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f4a}, {0x16f50, 0x16f50}, {0x16f93, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x16fe3, 0x16fe3}, {0x17000, 0x187f7},
+  {0x18800, 0x18cd5}, {0x18d00, 0x18d08}, {0x1aff0, 0x1aff3}, {0x1aff5, 0x1affb}, {0x1affd, 0x1affe}, {0x1b000, 0x1b122}, {0x1b150, 0x1b152}, {0x1b164, 0x1b167},
+  {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f},
+  {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb}, {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a},
+  {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544}, {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5},
+  {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734}, {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788},
+  {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, {0x1df00, 0x1df1e}, {0x1e100, 0x1e12c}, {0x1e137, 0x1e13d}, {0x1e14e, 0x1e14e}, {0x1e290, 0x1e2ad},
+  {0x1e2c0, 0x1e2eb}, {0x1e7e0, 0x1e7e6}, {0x1e7e8, 0x1e7eb}, {0x1e7ed, 0x1e7ee}, {0x1e7f0, 0x1e7fe}, {0x1e800, 0x1e8c4}, {0x1e900, 0x1e943}, {0x1e94b, 0x1e94b},
+  {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee24, 0x1ee24}, {0x1ee27, 0x1ee27}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37}, {0x1ee39, 0x1ee39},
+  {0x1ee3b, 0x1ee3b}, {0x1ee42, 0x1ee42}, {0x1ee47, 0x1ee47}, {0x1ee49, 0x1ee49}, {0x1ee4b, 0x1ee4b}, {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52}, {0x1ee54, 0x1ee54},
+  {0x1ee57, 0x1ee57}, {0x1ee59, 0x1ee59}, {0x1ee5b, 0x1ee5b}, {0x1ee5d, 0x1ee5d}, {0x1ee5f, 0x1ee5f}, {0x1ee61, 0x1ee62}, {0x1ee64, 0x1ee64}, {0x1ee67, 0x1ee6a},
+  {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee7e, 0x1ee7e}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3}, {0x1eea5, 0x1eea9},
+  {0x1eeab, 0x1eebb}, {0x20000, 0x2a6df}, {0x2a700, 0x2b738}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0}, {0x2f800, 0x2fa1d}, {0x30000, 0x3134a},
+};
 
-static inline bool sym_identifier_character_set_3(int32_t c) {
-  return (c < 43616
-    ? (c < 3782
-      ? (c < 2748
-        ? (c < 2045
-          ? (c < 1015
-            ? (c < 710
-              ? (c < 181
-                ? (c < '_'
-                  ? (c < 'A'
-                    ? (c >= '0' && c <= '9')
-                    : c <= 'Z')
-                  : (c <= '_' || (c < 170
-                    ? (c >= 'a' && c <= 'z')
-                    : c <= 170)))
-                : (c <= 181 || (c < 192
-                  ? (c < 186
-                    ? c == 183
-                    : c <= 186)
-                  : (c <= 214 || (c < 248
-                    ? (c >= 216 && c <= 246)
-                    : c <= 705)))))
-              : (c <= 721 || (c < 891
-                ? (c < 750
-                  ? (c < 748
-                    ? (c >= 736 && c <= 740)
-                    : c <= 748)
-                  : (c <= 750 || (c < 886
-                    ? (c >= 768 && c <= 884)
-                    : c <= 887)))
-                : (c <= 893 || (c < 908
-                  ? (c < 902
-                    ? c == 895
-                    : c <= 906)
-                  : (c <= 908 || (c < 931
-                    ? (c >= 910 && c <= 929)
-                    : c <= 1013)))))))
-            : (c <= 1153 || (c < 1519
-              ? (c < 1425
-                ? (c < 1329
-                  ? (c < 1162
-                    ? (c >= 1155 && c <= 1159)
-                    : c <= 1327)
-                  : (c <= 1366 || (c < 1376
-                    ? c == 1369
-                    : c <= 1416)))
-                : (c <= 1469 || (c < 1476
-                  ? (c < 1473
-                    ? c == 1471
-                    : c <= 1474)
-                  : (c <= 1477 || (c < 1488
-                    ? c == 1479
-                    : c <= 1514)))))
-              : (c <= 1522 || (c < 1770
-                ? (c < 1646
-                  ? (c < 1568
-                    ? (c >= 1552 && c <= 1562)
-                    : c <= 1641)
-                  : (c <= 1747 || (c < 1759
-                    ? (c >= 1749 && c <= 1756)
-                    : c <= 1768)))
-                : (c <= 1788 || (c < 1869
-                  ? (c < 1808
-                    ? c == 1791
-                    : c <= 1866)
-                  : (c <= 1969 || (c < 2042
-                    ? (c >= 1984 && c <= 2037)
-                    : c <= 2042)))))))))
-          : (c <= 2045 || (c < 2558
-            ? (c < 2451
-              ? (c < 2200
-                ? (c < 2144
-                  ? (c < 2112
-                    ? (c >= 2048 && c <= 2093)
-                    : c <= 2139)
-                  : (c <= 2154 || (c < 2185
-                    ? (c >= 2160 && c <= 2183)
-                    : c <= 2190)))
-                : (c <= 2273 || (c < 2417
-                  ? (c < 2406
-                    ? (c >= 2275 && c <= 2403)
-                    : c <= 2415)
-                  : (c <= 2435 || (c < 2447
-                    ? (c >= 2437 && c <= 2444)
-                    : c <= 2448)))))
-              : (c <= 2472 || (c < 2507
-                ? (c < 2486
-                  ? (c < 2482
-                    ? (c >= 2474 && c <= 2480)
-                    : c <= 2482)
-                  : (c <= 2489 || (c < 2503
-                    ? (c >= 2492 && c <= 2500)
-                    : c <= 2504)))
-                : (c <= 2510 || (c < 2527
-                  ? (c < 2524
-                    ? c == 2519
-                    : c <= 2525)
-                  : (c <= 2531 || (c < 2556
-                    ? (c >= 2534 && c <= 2545)
-                    : c <= 2556)))))))
-            : (c <= 2558 || (c < 2635
-              ? (c < 2610
-                ? (c < 2575
-                  ? (c < 2565
-                    ? (c >= 2561 && c <= 2563)
-                    : c <= 2570)
-                  : (c <= 2576 || (c < 2602
-                    ? (c >= 2579 && c <= 2600)
-                    : c <= 2608)))
-                : (c <= 2611 || (c < 2620
-                  ? (c < 2616
-                    ? (c >= 2613 && c <= 2614)
-                    : c <= 2617)
-                  : (c <= 2620 || (c < 2631
-                    ? (c >= 2622 && c <= 2626)
-                    : c <= 2632)))))
-              : (c <= 2637 || (c < 2693
-                ? (c < 2654
-                  ? (c < 2649
-                    ? c == 2641
-                    : c <= 2652)
-                  : (c <= 2654 || (c < 2689
-                    ? (c >= 2662 && c <= 2677)
-                    : c <= 2691)))
-                : (c <= 2701 || (c < 2730
-                  ? (c < 2707
-                    ? (c >= 2703 && c <= 2705)
-                    : c <= 2728)
-                  : (c <= 2736 || (c < 2741
-                    ? (c >= 2738 && c <= 2739)
-                    : c <= 2745)))))))))))
-        : (c <= 2757 || (c < 3168
-          ? (c < 2958
-            ? (c < 2866
-              ? (c < 2809
-                ? (c < 2768
-                  ? (c < 2763
-                    ? (c >= 2759 && c <= 2761)
-                    : c <= 2765)
-                  : (c <= 2768 || (c < 2790
-                    ? (c >= 2784 && c <= 2787)
-                    : c <= 2799)))
-                : (c <= 2815 || (c < 2831
-                  ? (c < 2821
-                    ? (c >= 2817 && c <= 2819)
-                    : c <= 2828)
-                  : (c <= 2832 || (c < 2858
-                    ? (c >= 2835 && c <= 2856)
-                    : c <= 2864)))))
-              : (c <= 2867 || (c < 2908
-                ? (c < 2887
-                  ? (c < 2876
-                    ? (c >= 2869 && c <= 2873)
-                    : c <= 2884)
-                  : (c <= 2888 || (c < 2901
-                    ? (c >= 2891 && c <= 2893)
-                    : c <= 2903)))
-                : (c <= 2909 || (c < 2929
-                  ? (c < 2918
-                    ? (c >= 2911 && c <= 2915)
-                    : c <= 2927)
-                  : (c <= 2929 || (c < 2949
-                    ? (c >= 2946 && c <= 2947)
-                    : c <= 2954)))))))
-            : (c <= 2960 || (c < 3031
-              ? (c < 2984
-                ? (c < 2972
-                  ? (c < 2969
-                    ? (c >= 2962 && c <= 2965)
-                    : c <= 2970)
-                  : (c <= 2972 || (c < 2979
-                    ? (c >= 2974 && c <= 2975)
-                    : c <= 2980)))
-                : (c <= 2986 || (c < 3014
-                  ? (c < 3006
-                    ? (c >= 2990 && c <= 3001)
-                    : c <= 3010)
-                  : (c <= 3016 || (c < 3024
-                    ? (c >= 3018 && c <= 3021)
-                    : c <= 3024)))))
-              : (c <= 3031 || (c < 3132
-                ? (c < 3086
-                  ? (c < 3072
-                    ? (c >= 3046 && c <= 3055)
-                    : c <= 3084)
-                  : (c <= 3088 || (c < 3114
-                    ? (c >= 3090 && c <= 3112)
-                    : c <= 3129)))
-                : (c <= 3140 || (c < 3157
-                  ? (c < 3146
-                    ? (c >= 3142 && c <= 3144)
-                    : c <= 3149)
-                  : (c <= 3158 || (c < 3165
-                    ? (c >= 3160 && c <= 3162)
-                    : c <= 3165)))))))))
-          : (c <= 3171 || (c < 3450
-            ? (c < 3293
-              ? (c < 3242
-                ? (c < 3205
-                  ? (c < 3200
-                    ? (c >= 3174 && c <= 3183)
-                    : c <= 3203)
-                  : (c <= 3212 || (c < 3218
-                    ? (c >= 3214 && c <= 3216)
-                    : c <= 3240)))
-                : (c <= 3251 || (c < 3270
-                  ? (c < 3260
-                    ? (c >= 3253 && c <= 3257)
-                    : c <= 3268)
-                  : (c <= 3272 || (c < 3285
-                    ? (c >= 3274 && c <= 3277)
-                    : c <= 3286)))))
-              : (c <= 3294 || (c < 3346
-                ? (c < 3313
-                  ? (c < 3302
-                    ? (c >= 3296 && c <= 3299)
-                    : c <= 3311)
-                  : (c <= 3314 || (c < 3342
-                    ? (c >= 3328 && c <= 3340)
-                    : c <= 3344)))
-                : (c <= 3396 || (c < 3412
-                  ? (c < 3402
-                    ? (c >= 3398 && c <= 3400)
-                    : c <= 3406)
-                  : (c <= 3415 || (c < 3430
-                    ? (c >= 3423 && c <= 3427)
-                    : c <= 3439)))))))
-            : (c <= 3455 || (c < 3570
-              ? (c < 3520
-                ? (c < 3482
-                  ? (c < 3461
-                    ? (c >= 3457 && c <= 3459)
-                    : c <= 3478)
-                  : (c <= 3505 || (c < 3517
-                    ? (c >= 3507 && c <= 3515)
-                    : c <= 3517)))
-                : (c <= 3526 || (c < 3542
-                  ? (c < 3535
-                    ? c == 3530
-                    : c <= 3540)
-                  : (c <= 3542 || (c < 3558
-                    ? (c >= 3544 && c <= 3551)
-                    : c <= 3567)))))
-              : (c <= 3571 || (c < 3718
-                ? (c < 3664
-                  ? (c < 3648
-                    ? (c >= 3585 && c <= 3642)
-                    : c <= 3662)
-                  : (c <= 3673 || (c < 3716
-                    ? (c >= 3713 && c <= 3714)
-                    : c <= 3716)))
-                : (c <= 3722 || (c < 3751
-                  ? (c < 3749
-                    ? (c >= 3724 && c <= 3747)
-                    : c <= 3749)
-                  : (c <= 3773 || (c >= 3776 && c <= 3780)))))))))))))
-      : (c <= 3782 || (c < 8025
-        ? (c < 5888
-          ? (c < 4688
-            ? (c < 3953
-              ? (c < 3872
-                ? (c < 3804
-                  ? (c < 3792
-                    ? (c >= 3784 && c <= 3789)
-                    : c <= 3801)
-                  : (c <= 3807 || (c < 3864
-                    ? c == 3840
-                    : c <= 3865)))
-                : (c <= 3881 || (c < 3897
-                  ? (c < 3895
-                    ? c == 3893
-                    : c <= 3895)
-                  : (c <= 3897 || (c < 3913
-                    ? (c >= 3902 && c <= 3911)
-                    : c <= 3948)))))
-              : (c <= 3972 || (c < 4256
-                ? (c < 4038
-                  ? (c < 3993
-                    ? (c >= 3974 && c <= 3991)
-                    : c <= 4028)
-                  : (c <= 4038 || (c < 4176
-                    ? (c >= 4096 && c <= 4169)
-                    : c <= 4253)))
-                : (c <= 4293 || (c < 4304
-                  ? (c < 4301
-                    ? c == 4295
-                    : c <= 4301)
-                  : (c <= 4346 || (c < 4682
-                    ? (c >= 4348 && c <= 4680)
-                    : c <= 4685)))))))
-            : (c <= 4694 || (c < 4882
-              ? (c < 4786
-                ? (c < 4704
-                  ? (c < 4698
-                    ? c == 4696
-                    : c <= 4701)
-                  : (c <= 4744 || (c < 4752
-                    ? (c >= 4746 && c <= 4749)
-                    : c <= 4784)))
-                : (c <= 4789 || (c < 4802
-                  ? (c < 4800
-                    ? (c >= 4792 && c <= 4798)
-                    : c <= 4800)
-                  : (c <= 4805 || (c < 4824
-                    ? (c >= 4808 && c <= 4822)
-                    : c <= 4880)))))
-              : (c <= 4885 || (c < 5112
-                ? (c < 4969
-                  ? (c < 4957
-                    ? (c >= 4888 && c <= 4954)
-                    : c <= 4959)
-                  : (c <= 4977 || (c < 5024
-                    ? (c >= 4992 && c <= 5007)
-                    : c <= 5109)))
-                : (c <= 5117 || (c < 5761
-                  ? (c < 5743
-                    ? (c >= 5121 && c <= 5740)
-                    : c <= 5759)
-                  : (c <= 5786 || (c < 5870
-                    ? (c >= 5792 && c <= 5866)
-                    : c <= 5880)))))))))
-          : (c <= 5909 || (c < 6688
-            ? (c < 6176
-              ? (c < 6016
-                ? (c < 5984
-                  ? (c < 5952
-                    ? (c >= 5919 && c <= 5940)
-                    : c <= 5971)
-                  : (c <= 5996 || (c < 6002
-                    ? (c >= 5998 && c <= 6000)
-                    : c <= 6003)))
-                : (c <= 6099 || (c < 6112
-                  ? (c < 6108
-                    ? c == 6103
-                    : c <= 6109)
-                  : (c <= 6121 || (c < 6159
-                    ? (c >= 6155 && c <= 6157)
-                    : c <= 6169)))))
-              : (c <= 6264 || (c < 6470
-                ? (c < 6400
-                  ? (c < 6320
-                    ? (c >= 6272 && c <= 6314)
-                    : c <= 6389)
-                  : (c <= 6430 || (c < 6448
-                    ? (c >= 6432 && c <= 6443)
-                    : c <= 6459)))
-                : (c <= 6509 || (c < 6576
-                  ? (c < 6528
-                    ? (c >= 6512 && c <= 6516)
-                    : c <= 6571)
-                  : (c <= 6601 || (c < 6656
-                    ? (c >= 6608 && c <= 6618)
-                    : c <= 6683)))))))
-            : (c <= 6750 || (c < 7232
-              ? (c < 6847
-                ? (c < 6800
-                  ? (c < 6783
-                    ? (c >= 6752 && c <= 6780)
-                    : c <= 6793)
-                  : (c <= 6809 || (c < 6832
-                    ? c == 6823
-                    : c <= 6845)))
-                : (c <= 6862 || (c < 7019
-                  ? (c < 6992
-                    ? (c >= 6912 && c <= 6988)
-                    : c <= 7001)
-                  : (c <= 7027 || (c < 7168
-                    ? (c >= 7040 && c <= 7155)
-                    : c <= 7223)))))
-              : (c <= 7241 || (c < 7380
-                ? (c < 7312
-                  ? (c < 7296
-                    ? (c >= 7245 && c <= 7293)
-                    : c <= 7304)
-                  : (c <= 7354 || (c < 7376
-                    ? (c >= 7357 && c <= 7359)
-                    : c <= 7378)))
-                : (c <= 7418 || (c < 7968
-                  ? (c < 7960
-                    ? (c >= 7424 && c <= 7957)
-                    : c <= 7965)
-                  : (c <= 8005 || (c < 8016
-                    ? (c >= 8008 && c <= 8013)
-                    : c <= 8023)))))))))))
-        : (c <= 8025 || (c < 11720
-          ? (c < 8458
-            ? (c < 8178
-              ? (c < 8126
-                ? (c < 8031
-                  ? (c < 8029
-                    ? c == 8027
-                    : c <= 8029)
-                  : (c <= 8061 || (c < 8118
-                    ? (c >= 8064 && c <= 8116)
-                    : c <= 8124)))
-                : (c <= 8126 || (c < 8144
-                  ? (c < 8134
-                    ? (c >= 8130 && c <= 8132)
-                    : c <= 8140)
-                  : (c <= 8147 || (c < 8160
-                    ? (c >= 8150 && c <= 8155)
-                    : c <= 8172)))))
-              : (c <= 8180 || (c < 8336
-                ? (c < 8276
-                  ? (c < 8255
-                    ? (c >= 8182 && c <= 8188)
-                    : c <= 8256)
-                  : (c <= 8276 || (c < 8319
-                    ? c == 8305
-                    : c <= 8319)))
-                : (c <= 8348 || (c < 8421
-                  ? (c < 8417
-                    ? (c >= 8400 && c <= 8412)
-                    : c <= 8417)
-                  : (c <= 8432 || (c < 8455
-                    ? c == 8450
-                    : c <= 8455)))))))
-            : (c <= 8467 || (c < 11499
-              ? (c < 8490
-                ? (c < 8484
-                  ? (c < 8472
-                    ? c == 8469
-                    : c <= 8477)
-                  : (c <= 8484 || (c < 8488
-                    ? c == 8486
-                    : c <= 8488)))
-                : (c <= 8505 || (c < 8526
-                  ? (c < 8517
-                    ? (c >= 8508 && c <= 8511)
-                    : c <= 8521)
-                  : (c <= 8526 || (c < 11264
-                    ? (c >= 8544 && c <= 8584)
-                    : c <= 11492)))))
-              : (c <= 11507 || (c < 11647
-                ? (c < 11565
-                  ? (c < 11559
-                    ? (c >= 11520 && c <= 11557)
-                    : c <= 11559)
-                  : (c <= 11565 || (c < 11631
-                    ? (c >= 11568 && c <= 11623)
-                    : c <= 11631)))
-                : (c <= 11670 || (c < 11696
-                  ? (c < 11688
-                    ? (c >= 11680 && c <= 11686)
-                    : c <= 11694)
-                  : (c <= 11702 || (c < 11712
-                    ? (c >= 11704 && c <= 11710)
-                    : c <= 11718)))))))))
-          : (c <= 11726 || (c < 42623
-            ? (c < 12540
-              ? (c < 12337
-                ? (c < 11744
-                  ? (c < 11736
-                    ? (c >= 11728 && c <= 11734)
-                    : c <= 11742)
-                  : (c <= 11775 || (c < 12321
-                    ? (c >= 12293 && c <= 12295)
-                    : c <= 12335)))
-                : (c <= 12341 || (c < 12441
-                  ? (c < 12353
-                    ? (c >= 12344 && c <= 12348)
-                    : c <= 12438)
-                  : (c <= 12442 || (c < 12449
-                    ? (c >= 12445 && c <= 12447)
-                    : c <= 12538)))))
-              : (c <= 12543 || (c < 19968
-                ? (c < 12704
-                  ? (c < 12593
-                    ? (c >= 12549 && c <= 12591)
-                    : c <= 12686)
-                  : (c <= 12735 || (c < 13312
-                    ? (c >= 12784 && c <= 12799)
-                    : c <= 19903)))
-                : (c <= 42124 || (c < 42512
-                  ? (c < 42240
-                    ? (c >= 42192 && c <= 42237)
-                    : c <= 42508)
-                  : (c <= 42539 || (c < 42612
-                    ? (c >= 42560 && c <= 42607)
-                    : c <= 42621)))))))
-            : (c <= 42737 || (c < 43232
-              ? (c < 42965
-                ? (c < 42891
-                  ? (c < 42786
-                    ? (c >= 42775 && c <= 42783)
-                    : c <= 42888)
-                  : (c <= 42954 || (c < 42963
-                    ? (c >= 42960 && c <= 42961)
-                    : c <= 42963)))
-                : (c <= 42969 || (c < 43072
-                  ? (c < 43052
-                    ? (c >= 42994 && c <= 43047)
-                    : c <= 43052)
-                  : (c <= 43123 || (c < 43216
-                    ? (c >= 43136 && c <= 43205)
-                    : c <= 43225)))))
-              : (c <= 43255 || (c < 43471
-                ? (c < 43312
-                  ? (c < 43261
-                    ? c == 43259
-                    : c <= 43309)
-                  : (c <= 43347 || (c < 43392
-                    ? (c >= 43360 && c <= 43388)
-                    : c <= 43456)))
-                : (c <= 43481 || (c < 43584
-                  ? (c < 43520
-                    ? (c >= 43488 && c <= 43518)
-                    : c <= 43574)
-                  : (c <= 43597 || (c >= 43600 && c <= 43609)))))))))))))))
-    : (c <= 43638 || (c < 71453
-      ? (c < 67639
-        ? (c < 65345
-          ? (c < 64312
-            ? (c < 43888
-              ? (c < 43785
-                ? (c < 43744
-                  ? (c < 43739
-                    ? (c >= 43642 && c <= 43714)
-                    : c <= 43741)
-                  : (c <= 43759 || (c < 43777
-                    ? (c >= 43762 && c <= 43766)
-                    : c <= 43782)))
-                : (c <= 43790 || (c < 43816
-                  ? (c < 43808
-                    ? (c >= 43793 && c <= 43798)
-                    : c <= 43814)
-                  : (c <= 43822 || (c < 43868
-                    ? (c >= 43824 && c <= 43866)
-                    : c <= 43881)))))
-              : (c <= 44010 || (c < 63744
-                ? (c < 44032
-                  ? (c < 44016
-                    ? (c >= 44012 && c <= 44013)
-                    : c <= 44025)
-                  : (c <= 55203 || (c < 55243
-                    ? (c >= 55216 && c <= 55238)
-                    : c <= 55291)))
-                : (c <= 64109 || (c < 64275
-                  ? (c < 64256
-                    ? (c >= 64112 && c <= 64217)
-                    : c <= 64262)
-                  : (c <= 64279 || (c < 64298
-                    ? (c >= 64285 && c <= 64296)
-                    : c <= 64310)))))))
-            : (c <= 64316 || (c < 65075
-              ? (c < 64612
-                ? (c < 64323
-                  ? (c < 64320
-                    ? c == 64318
-                    : c <= 64321)
-                  : (c <= 64324 || (c < 64467
-                    ? (c >= 64326 && c <= 64433)
-                    : c <= 64605)))
-                : (c <= 64829 || (c < 65008
-                  ? (c < 64914
-                    ? (c >= 64848 && c <= 64911)
-                    : c <= 64967)
-                  : (c <= 65017 || (c < 65056
-                    ? (c >= 65024 && c <= 65039)
-                    : c <= 65071)))))
-              : (c <= 65076 || (c < 65147
-                ? (c < 65139
-                  ? (c < 65137
-                    ? (c >= 65101 && c <= 65103)
-                    : c <= 65137)
-                  : (c <= 65139 || (c < 65145
-                    ? c == 65143
-                    : c <= 65145)))
-                : (c <= 65147 || (c < 65296
-                  ? (c < 65151
-                    ? c == 65149
-                    : c <= 65276)
-                  : (c <= 65305 || (c < 65343
-                    ? (c >= 65313 && c <= 65338)
-                    : c <= 65343)))))))))
-          : (c <= 65370 || (c < 66513
-            ? (c < 65664
-              ? (c < 65536
-                ? (c < 65482
-                  ? (c < 65474
-                    ? (c >= 65382 && c <= 65470)
-                    : c <= 65479)
-                  : (c <= 65487 || (c < 65498
-                    ? (c >= 65490 && c <= 65495)
-                    : c <= 65500)))
-                : (c <= 65547 || (c < 65596
-                  ? (c < 65576
-                    ? (c >= 65549 && c <= 65574)
-                    : c <= 65594)
-                  : (c <= 65597 || (c < 65616
-                    ? (c >= 65599 && c <= 65613)
-                    : c <= 65629)))))
-              : (c <= 65786 || (c < 66304
-                ? (c < 66176
-                  ? (c < 66045
-                    ? (c >= 65856 && c <= 65908)
-                    : c <= 66045)
-                  : (c <= 66204 || (c < 66272
-                    ? (c >= 66208 && c <= 66256)
-                    : c <= 66272)))
-                : (c <= 66335 || (c < 66432
-                  ? (c < 66384
-                    ? (c >= 66349 && c <= 66378)
-                    : c <= 66426)
-                  : (c <= 66461 || (c < 66504
-                    ? (c >= 66464 && c <= 66499)
-                    : c <= 66511)))))))
-            : (c <= 66517 || (c < 66979
-              ? (c < 66864
-                ? (c < 66736
-                  ? (c < 66720
-                    ? (c >= 66560 && c <= 66717)
-                    : c <= 66729)
-                  : (c <= 66771 || (c < 66816
-                    ? (c >= 66776 && c <= 66811)
-                    : c <= 66855)))
-                : (c <= 66915 || (c < 66956
-                  ? (c < 66940
-                    ? (c >= 66928 && c <= 66938)
-                    : c <= 66954)
-                  : (c <= 66962 || (c < 66967
-                    ? (c >= 66964 && c <= 66965)
-                    : c <= 66977)))))
-              : (c <= 66993 || (c < 67456
-                ? (c < 67072
-                  ? (c < 67003
-                    ? (c >= 66995 && c <= 67001)
-                    : c <= 67004)
-                  : (c <= 67382 || (c < 67424
-                    ? (c >= 67392 && c <= 67413)
-                    : c <= 67431)))
-                : (c <= 67461 || (c < 67584
-                  ? (c < 67506
-                    ? (c >= 67463 && c <= 67504)
-                    : c <= 67514)
-                  : (c <= 67589 || (c < 67594
-                    ? c == 67592
-                    : c <= 67637)))))))))))
-        : (c <= 67640 || (c < 69956
-          ? (c < 68448
-            ? (c < 68101
-              ? (c < 67828
-                ? (c < 67680
-                  ? (c < 67647
-                    ? c == 67644
-                    : c <= 67669)
-                  : (c <= 67702 || (c < 67808
-                    ? (c >= 67712 && c <= 67742)
-                    : c <= 67826)))
-                : (c <= 67829 || (c < 67968
-                  ? (c < 67872
-                    ? (c >= 67840 && c <= 67861)
-                    : c <= 67897)
-                  : (c <= 68023 || (c < 68096
-                    ? (c >= 68030 && c <= 68031)
-                    : c <= 68099)))))
-              : (c <= 68102 || (c < 68192
-                ? (c < 68121
-                  ? (c < 68117
-                    ? (c >= 68108 && c <= 68115)
-                    : c <= 68119)
-                  : (c <= 68149 || (c < 68159
-                    ? (c >= 68152 && c <= 68154)
-                    : c <= 68159)))
-                : (c <= 68220 || (c < 68297
-                  ? (c < 68288
-                    ? (c >= 68224 && c <= 68252)
-                    : c <= 68295)
-                  : (c <= 68326 || (c < 68416
-                    ? (c >= 68352 && c <= 68405)
-                    : c <= 68437)))))))
-            : (c <= 68466 || (c < 69424
-              ? (c < 68912
-                ? (c < 68736
-                  ? (c < 68608
-                    ? (c >= 68480 && c <= 68497)
-                    : c <= 68680)
-                  : (c <= 68786 || (c < 68864
-                    ? (c >= 68800 && c <= 68850)
-                    : c <= 68903)))
-                : (c <= 68921 || (c < 69296
-                  ? (c < 69291
-                    ? (c >= 69248 && c <= 69289)
-                    : c <= 69292)
-                  : (c <= 69297 || (c < 69415
-                    ? (c >= 69376 && c <= 69404)
-                    : c <= 69415)))))
-              : (c <= 69456 || (c < 69759
-                ? (c < 69600
-                  ? (c < 69552
-                    ? (c >= 69488 && c <= 69509)
-                    : c <= 69572)
-                  : (c <= 69622 || (c < 69734
-                    ? (c >= 69632 && c <= 69702)
-                    : c <= 69749)))
-                : (c <= 69818 || (c < 69872
-                  ? (c < 69840
-                    ? c == 69826
-                    : c <= 69864)
-                  : (c <= 69881 || (c < 69942
-                    ? (c >= 69888 && c <= 69940)
-                    : c <= 69951)))))))))
-          : (c <= 69959 || (c < 70459
-            ? (c < 70282
-              ? (c < 70108
-                ? (c < 70016
-                  ? (c < 70006
-                    ? (c >= 69968 && c <= 70003)
-                    : c <= 70006)
-                  : (c <= 70084 || (c < 70094
-                    ? (c >= 70089 && c <= 70092)
-                    : c <= 70106)))
-                : (c <= 70108 || (c < 70206
-                  ? (c < 70163
-                    ? (c >= 70144 && c <= 70161)
-                    : c <= 70199)
-                  : (c <= 70206 || (c < 70280
-                    ? (c >= 70272 && c <= 70278)
-                    : c <= 70280)))))
-              : (c <= 70285 || (c < 70405
-                ? (c < 70320
-                  ? (c < 70303
-                    ? (c >= 70287 && c <= 70301)
-                    : c <= 70312)
-                  : (c <= 70378 || (c < 70400
-                    ? (c >= 70384 && c <= 70393)
-                    : c <= 70403)))
-                : (c <= 70412 || (c < 70442
-                  ? (c < 70419
-                    ? (c >= 70415 && c <= 70416)
-                    : c <= 70440)
-                  : (c <= 70448 || (c < 70453
-                    ? (c >= 70450 && c <= 70451)
-                    : c <= 70457)))))))
-            : (c <= 70468 || (c < 70855
-              ? (c < 70502
-                ? (c < 70480
-                  ? (c < 70475
-                    ? (c >= 70471 && c <= 70472)
-                    : c <= 70477)
-                  : (c <= 70480 || (c < 70493
-                    ? c == 70487
-                    : c <= 70499)))
-                : (c <= 70508 || (c < 70736
-                  ? (c < 70656
-                    ? (c >= 70512 && c <= 70516)
-                    : c <= 70730)
-                  : (c <= 70745 || (c < 70784
-                    ? (c >= 70750 && c <= 70753)
-                    : c <= 70853)))))
-              : (c <= 70855 || (c < 71236
-                ? (c < 71096
-                  ? (c < 71040
-                    ? (c >= 70864 && c <= 70873)
-                    : c <= 71093)
-                  : (c <= 71104 || (c < 71168
-                    ? (c >= 71128 && c <= 71133)
-                    : c <= 71232)))
-                : (c <= 71236 || (c < 71360
-                  ? (c < 71296
-                    ? (c >= 71248 && c <= 71257)
-                    : c <= 71352)
-                  : (c <= 71369 || (c >= 71424 && c <= 71450)))))))))))))
-      : (c <= 71467 || (c < 119973
-        ? (c < 77824
-          ? (c < 72760
-            ? (c < 72016
-              ? (c < 71945
-                ? (c < 71680
-                  ? (c < 71488
-                    ? (c >= 71472 && c <= 71481)
-                    : c <= 71494)
-                  : (c <= 71738 || (c < 71935
-                    ? (c >= 71840 && c <= 71913)
-                    : c <= 71942)))
-                : (c <= 71945 || (c < 71960
-                  ? (c < 71957
-                    ? (c >= 71948 && c <= 71955)
-                    : c <= 71958)
-                  : (c <= 71989 || (c < 71995
-                    ? (c >= 71991 && c <= 71992)
-                    : c <= 72003)))))
-              : (c <= 72025 || (c < 72263
-                ? (c < 72154
-                  ? (c < 72106
-                    ? (c >= 72096 && c <= 72103)
-                    : c <= 72151)
-                  : (c <= 72161 || (c < 72192
-                    ? (c >= 72163 && c <= 72164)
-                    : c <= 72254)))
-                : (c <= 72263 || (c < 72368
-                  ? (c < 72349
-                    ? (c >= 72272 && c <= 72345)
-                    : c <= 72349)
-                  : (c <= 72440 || (c < 72714
-                    ? (c >= 72704 && c <= 72712)
-                    : c <= 72758)))))))
-            : (c <= 72768 || (c < 73056
-              ? (c < 72968
-                ? (c < 72850
-                  ? (c < 72818
-                    ? (c >= 72784 && c <= 72793)
-                    : c <= 72847)
-                  : (c <= 72871 || (c < 72960
-                    ? (c >= 72873 && c <= 72886)
-                    : c <= 72966)))
-                : (c <= 72969 || (c < 73020
-                  ? (c < 73018
-                    ? (c >= 72971 && c <= 73014)
-                    : c <= 73018)
-                  : (c <= 73021 || (c < 73040
-                    ? (c >= 73023 && c <= 73031)
-                    : c <= 73049)))))
-              : (c <= 73061 || (c < 73440
-                ? (c < 73104
-                  ? (c < 73066
-                    ? (c >= 73063 && c <= 73064)
-                    : c <= 73102)
-                  : (c <= 73105 || (c < 73120
-                    ? (c >= 73107 && c <= 73112)
-                    : c <= 73129)))
-                : (c <= 73462 || (c < 74752
-                  ? (c < 73728
-                    ? c == 73648
-                    : c <= 74649)
-                  : (c <= 74862 || (c < 77712
-                    ? (c >= 74880 && c <= 75075)
-                    : c <= 77808)))))))))
-          : (c <= 78894 || (c < 110576
-            ? (c < 93027
-              ? (c < 92864
-                ? (c < 92736
-                  ? (c < 92160
-                    ? (c >= 82944 && c <= 83526)
-                    : c <= 92728)
-                  : (c <= 92766 || (c < 92784
-                    ? (c >= 92768 && c <= 92777)
-                    : c <= 92862)))
-                : (c <= 92873 || (c < 92928
-                  ? (c < 92912
-                    ? (c >= 92880 && c <= 92909)
-                    : c <= 92916)
-                  : (c <= 92982 || (c < 93008
-                    ? (c >= 92992 && c <= 92995)
-                    : c <= 93017)))))
-              : (c <= 93047 || (c < 94176
-                ? (c < 93952
-                  ? (c < 93760
-                    ? (c >= 93053 && c <= 93071)
-                    : c <= 93823)
-                  : (c <= 94026 || (c < 94095
-                    ? (c >= 94031 && c <= 94087)
-                    : c <= 94111)))
-                : (c <= 94177 || (c < 94208
-                  ? (c < 94192
-                    ? (c >= 94179 && c <= 94180)
-                    : c <= 94193)
-                  : (c <= 100343 || (c < 101632
-                    ? (c >= 100352 && c <= 101589)
-                    : c <= 101640)))))))
-            : (c <= 110579 || (c < 118528
-              ? (c < 110960
-                ? (c < 110592
-                  ? (c < 110589
-                    ? (c >= 110581 && c <= 110587)
-                    : c <= 110590)
-                  : (c <= 110882 || (c < 110948
-                    ? (c >= 110928 && c <= 110930)
-                    : c <= 110951)))
-                : (c <= 111355 || (c < 113792
-                  ? (c < 113776
-                    ? (c >= 113664 && c <= 113770)
-                    : c <= 113788)
-                  : (c <= 113800 || (c < 113821
-                    ? (c >= 113808 && c <= 113817)
-                    : c <= 113822)))))
-              : (c <= 118573 || (c < 119210
-                ? (c < 119149
-                  ? (c < 119141
-                    ? (c >= 118576 && c <= 118598)
-                    : c <= 119145)
-                  : (c <= 119154 || (c < 119173
-                    ? (c >= 119163 && c <= 119170)
-                    : c <= 119179)))
-                : (c <= 119213 || (c < 119894
-                  ? (c < 119808
-                    ? (c >= 119362 && c <= 119364)
-                    : c <= 119892)
-                  : (c <= 119964 || (c < 119970
-                    ? (c >= 119966 && c <= 119967)
-                    : c <= 119970)))))))))))
-        : (c <= 119974 || (c < 124912
-          ? (c < 120746
-            ? (c < 120134
-              ? (c < 120071
-                ? (c < 119995
-                  ? (c < 119982
-                    ? (c >= 119977 && c <= 119980)
-                    : c <= 119993)
-                  : (c <= 119995 || (c < 120005
-                    ? (c >= 119997 && c <= 120003)
-                    : c <= 120069)))
-                : (c <= 120074 || (c < 120094
-                  ? (c < 120086
-                    ? (c >= 120077 && c <= 120084)
-                    : c <= 120092)
-                  : (c <= 120121 || (c < 120128
-                    ? (c >= 120123 && c <= 120126)
-                    : c <= 120132)))))
-              : (c <= 120134 || (c < 120572
-                ? (c < 120488
-                  ? (c < 120146
-                    ? (c >= 120138 && c <= 120144)
-                    : c <= 120485)
-                  : (c <= 120512 || (c < 120540
-                    ? (c >= 120514 && c <= 120538)
-                    : c <= 120570)))
-                : (c <= 120596 || (c < 120656
-                  ? (c < 120630
-                    ? (c >= 120598 && c <= 120628)
-                    : c <= 120654)
-                  : (c <= 120686 || (c < 120714
-                    ? (c >= 120688 && c <= 120712)
-                    : c <= 120744)))))))
-            : (c <= 120770 || (c < 122907
-              ? (c < 121476
-                ? (c < 121344
-                  ? (c < 120782
-                    ? (c >= 120772 && c <= 120779)
-                    : c <= 120831)
-                  : (c <= 121398 || (c < 121461
-                    ? (c >= 121403 && c <= 121452)
-                    : c <= 121461)))
-                : (c <= 121476 || (c < 122624
-                  ? (c < 121505
-                    ? (c >= 121499 && c <= 121503)
-                    : c <= 121519)
-                  : (c <= 122654 || (c < 122888
-                    ? (c >= 122880 && c <= 122886)
-                    : c <= 122904)))))
-              : (c <= 122913 || (c < 123214
-                ? (c < 123136
-                  ? (c < 122918
-                    ? (c >= 122915 && c <= 122916)
-                    : c <= 122922)
-                  : (c <= 123180 || (c < 123200
-                    ? (c >= 123184 && c <= 123197)
-                    : c <= 123209)))
-                : (c <= 123214 || (c < 124896
-                  ? (c < 123584
-                    ? (c >= 123536 && c <= 123566)
-                    : c <= 123641)
-                  : (c <= 124902 || (c < 124909
-                    ? (c >= 124904 && c <= 124907)
-                    : c <= 124910)))))))))
-          : (c <= 124926 || (c < 126557
-            ? (c < 126521
-              ? (c < 126469
-                ? (c < 125184
-                  ? (c < 125136
-                    ? (c >= 124928 && c <= 125124)
-                    : c <= 125142)
-                  : (c <= 125259 || (c < 126464
-                    ? (c >= 125264 && c <= 125273)
-                    : c <= 126467)))
-                : (c <= 126495 || (c < 126503
-                  ? (c < 126500
-                    ? (c >= 126497 && c <= 126498)
-                    : c <= 126500)
-                  : (c <= 126503 || (c < 126516
-                    ? (c >= 126505 && c <= 126514)
-                    : c <= 126519)))))
-              : (c <= 126521 || (c < 126541
-                ? (c < 126535
-                  ? (c < 126530
-                    ? c == 126523
-                    : c <= 126530)
-                  : (c <= 126535 || (c < 126539
-                    ? c == 126537
-                    : c <= 126539)))
-                : (c <= 126543 || (c < 126551
-                  ? (c < 126548
-                    ? (c >= 126545 && c <= 126546)
-                    : c <= 126548)
-                  : (c <= 126551 || (c < 126555
-                    ? c == 126553
-                    : c <= 126555)))))))
-            : (c <= 126557 || (c < 126629
-              ? (c < 126580
-                ? (c < 126564
-                  ? (c < 126561
-                    ? c == 126559
-                    : c <= 126562)
-                  : (c <= 126564 || (c < 126572
-                    ? (c >= 126567 && c <= 126570)
-                    : c <= 126578)))
-                : (c <= 126583 || (c < 126592
-                  ? (c < 126590
-                    ? (c >= 126585 && c <= 126588)
-                    : c <= 126590)
-                  : (c <= 126601 || (c < 126625
-                    ? (c >= 126603 && c <= 126619)
-                    : c <= 126627)))))
-              : (c <= 126633 || (c < 178208
-                ? (c < 131072
-                  ? (c < 130032
-                    ? (c >= 126635 && c <= 126651)
-                    : c <= 130041)
-                  : (c <= 173791 || (c < 177984
-                    ? (c >= 173824 && c <= 177976)
-                    : c <= 178205)))
-                : (c <= 183969 || (c < 196608
-                  ? (c < 194560
-                    ? (c >= 183984 && c <= 191456)
-                    : c <= 195101)
-                  : (c <= 201546 || (c >= 917760 && c <= 917999)))))))))))))))));
-}
+static TSCharacterRange sym_identifier_character_set_2[] = {
+  {'0', '9'}, {'A', 'Z'}, {'_', '_'}, {'a', 'z'}, {0xaa, 0xaa}, {0xb5, 0xb5}, {0xb7, 0xb7}, {0xba, 0xba},
+  {0xc0, 0xd6}, {0xd8, 0xf6}, {0xf8, 0x2c1}, {0x2c6, 0x2d1}, {0x2e0, 0x2e4}, {0x2ec, 0x2ec}, {0x2ee, 0x2ee}, {0x300, 0x374},
+  {0x376, 0x377}, {0x37b, 0x37d}, {0x37f, 0x37f}, {0x386, 0x38a}, {0x38c, 0x38c}, {0x38e, 0x3a1}, {0x3a3, 0x3f5}, {0x3f7, 0x481},
+  {0x483, 0x487}, {0x48a, 0x52f}, {0x531, 0x556}, {0x559, 0x559}, {0x560, 0x588}, {0x591, 0x5bd}, {0x5bf, 0x5bf}, {0x5c1, 0x5c2},
+  {0x5c4, 0x5c5}, {0x5c7, 0x5c7}, {0x5d0, 0x5ea}, {0x5ef, 0x5f2}, {0x610, 0x61a}, {0x620, 0x669}, {0x66e, 0x6d3}, {0x6d5, 0x6dc},
+  {0x6df, 0x6e8}, {0x6ea, 0x6fc}, {0x6ff, 0x6ff}, {0x710, 0x74a}, {0x74d, 0x7b1}, {0x7c0, 0x7f5}, {0x7fa, 0x7fa}, {0x7fd, 0x7fd},
+  {0x800, 0x82d}, {0x840, 0x85b}, {0x860, 0x86a}, {0x870, 0x887}, {0x889, 0x88e}, {0x898, 0x8e1}, {0x8e3, 0x963}, {0x966, 0x96f},
+  {0x971, 0x983}, {0x985, 0x98c}, {0x98f, 0x990}, {0x993, 0x9a8}, {0x9aa, 0x9b0}, {0x9b2, 0x9b2}, {0x9b6, 0x9b9}, {0x9bc, 0x9c4},
+  {0x9c7, 0x9c8}, {0x9cb, 0x9ce}, {0x9d7, 0x9d7}, {0x9dc, 0x9dd}, {0x9df, 0x9e3}, {0x9e6, 0x9f1}, {0x9fc, 0x9fc}, {0x9fe, 0x9fe},
+  {0xa01, 0xa03}, {0xa05, 0xa0a}, {0xa0f, 0xa10}, {0xa13, 0xa28}, {0xa2a, 0xa30}, {0xa32, 0xa33}, {0xa35, 0xa36}, {0xa38, 0xa39},
+  {0xa3c, 0xa3c}, {0xa3e, 0xa42}, {0xa47, 0xa48}, {0xa4b, 0xa4d}, {0xa51, 0xa51}, {0xa59, 0xa5c}, {0xa5e, 0xa5e}, {0xa66, 0xa75},
+  {0xa81, 0xa83}, {0xa85, 0xa8d}, {0xa8f, 0xa91}, {0xa93, 0xaa8}, {0xaaa, 0xab0}, {0xab2, 0xab3}, {0xab5, 0xab9}, {0xabc, 0xac5},
+  {0xac7, 0xac9}, {0xacb, 0xacd}, {0xad0, 0xad0}, {0xae0, 0xae3}, {0xae6, 0xaef}, {0xaf9, 0xaff}, {0xb01, 0xb03}, {0xb05, 0xb0c},
+  {0xb0f, 0xb10}, {0xb13, 0xb28}, {0xb2a, 0xb30}, {0xb32, 0xb33}, {0xb35, 0xb39}, {0xb3c, 0xb44}, {0xb47, 0xb48}, {0xb4b, 0xb4d},
+  {0xb55, 0xb57}, {0xb5c, 0xb5d}, {0xb5f, 0xb63}, {0xb66, 0xb6f}, {0xb71, 0xb71}, {0xb82, 0xb83}, {0xb85, 0xb8a}, {0xb8e, 0xb90},
+  {0xb92, 0xb95}, {0xb99, 0xb9a}, {0xb9c, 0xb9c}, {0xb9e, 0xb9f}, {0xba3, 0xba4}, {0xba8, 0xbaa}, {0xbae, 0xbb9}, {0xbbe, 0xbc2},
+  {0xbc6, 0xbc8}, {0xbca, 0xbcd}, {0xbd0, 0xbd0}, {0xbd7, 0xbd7}, {0xbe6, 0xbef}, {0xc00, 0xc0c}, {0xc0e, 0xc10}, {0xc12, 0xc28},
+  {0xc2a, 0xc39}, {0xc3c, 0xc44}, {0xc46, 0xc48}, {0xc4a, 0xc4d}, {0xc55, 0xc56}, {0xc58, 0xc5a}, {0xc5d, 0xc5d}, {0xc60, 0xc63},
+  {0xc66, 0xc6f}, {0xc80, 0xc83}, {0xc85, 0xc8c}, {0xc8e, 0xc90}, {0xc92, 0xca8}, {0xcaa, 0xcb3}, {0xcb5, 0xcb9}, {0xcbc, 0xcc4},
+  {0xcc6, 0xcc8}, {0xcca, 0xccd}, {0xcd5, 0xcd6}, {0xcdd, 0xcde}, {0xce0, 0xce3}, {0xce6, 0xcef}, {0xcf1, 0xcf2}, {0xd00, 0xd0c},
+  {0xd0e, 0xd10}, {0xd12, 0xd44}, {0xd46, 0xd48}, {0xd4a, 0xd4e}, {0xd54, 0xd57}, {0xd5f, 0xd63}, {0xd66, 0xd6f}, {0xd7a, 0xd7f},
+  {0xd81, 0xd83}, {0xd85, 0xd96}, {0xd9a, 0xdb1}, {0xdb3, 0xdbb}, {0xdbd, 0xdbd}, {0xdc0, 0xdc6}, {0xdca, 0xdca}, {0xdcf, 0xdd4},
+  {0xdd6, 0xdd6}, {0xdd8, 0xddf}, {0xde6, 0xdef}, {0xdf2, 0xdf3}, {0xe01, 0xe3a}, {0xe40, 0xe4e}, {0xe50, 0xe59}, {0xe81, 0xe82},
+  {0xe84, 0xe84}, {0xe86, 0xe8a}, {0xe8c, 0xea3}, {0xea5, 0xea5}, {0xea7, 0xebd}, {0xec0, 0xec4}, {0xec6, 0xec6}, {0xec8, 0xecd},
+  {0xed0, 0xed9}, {0xedc, 0xedf}, {0xf00, 0xf00}, {0xf18, 0xf19}, {0xf20, 0xf29}, {0xf35, 0xf35}, {0xf37, 0xf37}, {0xf39, 0xf39},
+  {0xf3e, 0xf47}, {0xf49, 0xf6c}, {0xf71, 0xf84}, {0xf86, 0xf97}, {0xf99, 0xfbc}, {0xfc6, 0xfc6}, {0x1000, 0x1049}, {0x1050, 0x109d},
+  {0x10a0, 0x10c5}, {0x10c7, 0x10c7}, {0x10cd, 0x10cd}, {0x10d0, 0x10fa}, {0x10fc, 0x1248}, {0x124a, 0x124d}, {0x1250, 0x1256}, {0x1258, 0x1258},
+  {0x125a, 0x125d}, {0x1260, 0x1288}, {0x128a, 0x128d}, {0x1290, 0x12b0}, {0x12b2, 0x12b5}, {0x12b8, 0x12be}, {0x12c0, 0x12c0}, {0x12c2, 0x12c5},
+  {0x12c8, 0x12d6}, {0x12d8, 0x1310}, {0x1312, 0x1315}, {0x1318, 0x135a}, {0x135d, 0x135f}, {0x1369, 0x1371}, {0x1380, 0x138f}, {0x13a0, 0x13f5},
+  {0x13f8, 0x13fd}, {0x1401, 0x166c}, {0x166f, 0x167f}, {0x1681, 0x169a}, {0x16a0, 0x16ea}, {0x16ee, 0x16f8}, {0x1700, 0x1715}, {0x171f, 0x1734},
+  {0x1740, 0x1753}, {0x1760, 0x176c}, {0x176e, 0x1770}, {0x1772, 0x1773}, {0x1780, 0x17d3}, {0x17d7, 0x17d7}, {0x17dc, 0x17dd}, {0x17e0, 0x17e9},
+  {0x180b, 0x180d}, {0x180f, 0x1819}, {0x1820, 0x1878}, {0x1880, 0x18aa}, {0x18b0, 0x18f5}, {0x1900, 0x191e}, {0x1920, 0x192b}, {0x1930, 0x193b},
+  {0x1946, 0x196d}, {0x1970, 0x1974}, {0x1980, 0x19ab}, {0x19b0, 0x19c9}, {0x19d0, 0x19da}, {0x1a00, 0x1a1b}, {0x1a20, 0x1a5e}, {0x1a60, 0x1a7c},
+  {0x1a7f, 0x1a89}, {0x1a90, 0x1a99}, {0x1aa7, 0x1aa7}, {0x1ab0, 0x1abd}, {0x1abf, 0x1ace}, {0x1b00, 0x1b4c}, {0x1b50, 0x1b59}, {0x1b6b, 0x1b73},
+  {0x1b80, 0x1bf3}, {0x1c00, 0x1c37}, {0x1c40, 0x1c49}, {0x1c4d, 0x1c7d}, {0x1c80, 0x1c88}, {0x1c90, 0x1cba}, {0x1cbd, 0x1cbf}, {0x1cd0, 0x1cd2},
+  {0x1cd4, 0x1cfa}, {0x1d00, 0x1f15}, {0x1f18, 0x1f1d}, {0x1f20, 0x1f45}, {0x1f48, 0x1f4d}, {0x1f50, 0x1f57}, {0x1f59, 0x1f59}, {0x1f5b, 0x1f5b},
+  {0x1f5d, 0x1f5d}, {0x1f5f, 0x1f7d}, {0x1f80, 0x1fb4}, {0x1fb6, 0x1fbc}, {0x1fbe, 0x1fbe}, {0x1fc2, 0x1fc4}, {0x1fc6, 0x1fcc}, {0x1fd0, 0x1fd3},
+  {0x1fd6, 0x1fdb}, {0x1fe0, 0x1fec}, {0x1ff2, 0x1ff4}, {0x1ff6, 0x1ffc}, {0x203f, 0x2040}, {0x2054, 0x2054}, {0x2071, 0x2071}, {0x207f, 0x207f},
+  {0x2090, 0x209c}, {0x20d0, 0x20dc}, {0x20e1, 0x20e1}, {0x20e5, 0x20f0}, {0x2102, 0x2102}, {0x2107, 0x2107}, {0x210a, 0x2113}, {0x2115, 0x2115},
+  {0x2118, 0x211d}, {0x2124, 0x2124}, {0x2126, 0x2126}, {0x2128, 0x2128}, {0x212a, 0x2139}, {0x213c, 0x213f}, {0x2145, 0x2149}, {0x214e, 0x214e},
+  {0x2160, 0x2188}, {0x2c00, 0x2ce4}, {0x2ceb, 0x2cf3}, {0x2d00, 0x2d25}, {0x2d27, 0x2d27}, {0x2d2d, 0x2d2d}, {0x2d30, 0x2d67}, {0x2d6f, 0x2d6f},
+  {0x2d7f, 0x2d96}, {0x2da0, 0x2da6}, {0x2da8, 0x2dae}, {0x2db0, 0x2db6}, {0x2db8, 0x2dbe}, {0x2dc0, 0x2dc6}, {0x2dc8, 0x2dce}, {0x2dd0, 0x2dd6},
+  {0x2dd8, 0x2dde}, {0x2de0, 0x2dff}, {0x3005, 0x3007}, {0x3021, 0x302f}, {0x3031, 0x3035}, {0x3038, 0x303c}, {0x3041, 0x3096}, {0x3099, 0x309a},
+  {0x309d, 0x309f}, {0x30a1, 0x30fa}, {0x30fc, 0x30ff}, {0x3105, 0x312f}, {0x3131, 0x318e}, {0x31a0, 0x31bf}, {0x31f0, 0x31ff}, {0x3400, 0x4dbf},
+  {0x4e00, 0xa48c}, {0xa4d0, 0xa4fd}, {0xa500, 0xa60c}, {0xa610, 0xa62b}, {0xa640, 0xa66f}, {0xa674, 0xa67d}, {0xa67f, 0xa6f1}, {0xa717, 0xa71f},
+  {0xa722, 0xa788}, {0xa78b, 0xa7ca}, {0xa7d0, 0xa7d1}, {0xa7d3, 0xa7d3}, {0xa7d5, 0xa7d9}, {0xa7f2, 0xa827}, {0xa82c, 0xa82c}, {0xa840, 0xa873},
+  {0xa880, 0xa8c5}, {0xa8d0, 0xa8d9}, {0xa8e0, 0xa8f7}, {0xa8fb, 0xa8fb}, {0xa8fd, 0xa92d}, {0xa930, 0xa953}, {0xa960, 0xa97c}, {0xa980, 0xa9c0},
+  {0xa9cf, 0xa9d9}, {0xa9e0, 0xa9fe}, {0xaa00, 0xaa36}, {0xaa40, 0xaa4d}, {0xaa50, 0xaa59}, {0xaa60, 0xaa76}, {0xaa7a, 0xaac2}, {0xaadb, 0xaadd},
+  {0xaae0, 0xaaef}, {0xaaf2, 0xaaf6}, {0xab01, 0xab06}, {0xab09, 0xab0e}, {0xab11, 0xab16}, {0xab20, 0xab26}, {0xab28, 0xab2e}, {0xab30, 0xab5a},
+  {0xab5c, 0xab69}, {0xab70, 0xabea}, {0xabec, 0xabed}, {0xabf0, 0xabf9}, {0xac00, 0xd7a3}, {0xd7b0, 0xd7c6}, {0xd7cb, 0xd7fb}, {0xf900, 0xfa6d},
+  {0xfa70, 0xfad9}, {0xfb00, 0xfb06}, {0xfb13, 0xfb17}, {0xfb1d, 0xfb28}, {0xfb2a, 0xfb36}, {0xfb38, 0xfb3c}, {0xfb3e, 0xfb3e}, {0xfb40, 0xfb41},
+  {0xfb43, 0xfb44}, {0xfb46, 0xfbb1}, {0xfbd3, 0xfc5d}, {0xfc64, 0xfd3d}, {0xfd50, 0xfd8f}, {0xfd92, 0xfdc7}, {0xfdf0, 0xfdf9}, {0xfe00, 0xfe0f},
+  {0xfe20, 0xfe2f}, {0xfe33, 0xfe34}, {0xfe4d, 0xfe4f}, {0xfe71, 0xfe71}, {0xfe73, 0xfe73}, {0xfe77, 0xfe77}, {0xfe79, 0xfe79}, {0xfe7b, 0xfe7b},
+  {0xfe7d, 0xfe7d}, {0xfe7f, 0xfefc}, {0xff10, 0xff19}, {0xff21, 0xff3a}, {0xff3f, 0xff3f}, {0xff41, 0xff5a}, {0xff66, 0xffbe}, {0xffc2, 0xffc7},
+  {0xffca, 0xffcf}, {0xffd2, 0xffd7}, {0xffda, 0xffdc}, {0x10000, 0x1000b}, {0x1000d, 0x10026}, {0x10028, 0x1003a}, {0x1003c, 0x1003d}, {0x1003f, 0x1004d},
+  {0x10050, 0x1005d}, {0x10080, 0x100fa}, {0x10140, 0x10174}, {0x101fd, 0x101fd}, {0x10280, 0x1029c}, {0x102a0, 0x102d0}, {0x102e0, 0x102e0}, {0x10300, 0x1031f},
+  {0x1032d, 0x1034a}, {0x10350, 0x1037a}, {0x10380, 0x1039d}, {0x103a0, 0x103c3}, {0x103c8, 0x103cf}, {0x103d1, 0x103d5}, {0x10400, 0x1049d}, {0x104a0, 0x104a9},
+  {0x104b0, 0x104d3}, {0x104d8, 0x104fb}, {0x10500, 0x10527}, {0x10530, 0x10563}, {0x10570, 0x1057a}, {0x1057c, 0x1058a}, {0x1058c, 0x10592}, {0x10594, 0x10595},
+  {0x10597, 0x105a1}, {0x105a3, 0x105b1}, {0x105b3, 0x105b9}, {0x105bb, 0x105bc}, {0x10600, 0x10736}, {0x10740, 0x10755}, {0x10760, 0x10767}, {0x10780, 0x10785},
+  {0x10787, 0x107b0}, {0x107b2, 0x107ba}, {0x10800, 0x10805}, {0x10808, 0x10808}, {0x1080a, 0x10835}, {0x10837, 0x10838}, {0x1083c, 0x1083c}, {0x1083f, 0x10855},
+  {0x10860, 0x10876}, {0x10880, 0x1089e}, {0x108e0, 0x108f2}, {0x108f4, 0x108f5}, {0x10900, 0x10915}, {0x10920, 0x10939}, {0x10980, 0x109b7}, {0x109be, 0x109bf},
+  {0x10a00, 0x10a03}, {0x10a05, 0x10a06}, {0x10a0c, 0x10a13}, {0x10a15, 0x10a17}, {0x10a19, 0x10a35}, {0x10a38, 0x10a3a}, {0x10a3f, 0x10a3f}, {0x10a60, 0x10a7c},
+  {0x10a80, 0x10a9c}, {0x10ac0, 0x10ac7}, {0x10ac9, 0x10ae6}, {0x10b00, 0x10b35}, {0x10b40, 0x10b55}, {0x10b60, 0x10b72}, {0x10b80, 0x10b91}, {0x10c00, 0x10c48},
+  {0x10c80, 0x10cb2}, {0x10cc0, 0x10cf2}, {0x10d00, 0x10d27}, {0x10d30, 0x10d39}, {0x10e80, 0x10ea9}, {0x10eab, 0x10eac}, {0x10eb0, 0x10eb1}, {0x10f00, 0x10f1c},
+  {0x10f27, 0x10f27}, {0x10f30, 0x10f50}, {0x10f70, 0x10f85}, {0x10fb0, 0x10fc4}, {0x10fe0, 0x10ff6}, {0x11000, 0x11046}, {0x11066, 0x11075}, {0x1107f, 0x110ba},
+  {0x110c2, 0x110c2}, {0x110d0, 0x110e8}, {0x110f0, 0x110f9}, {0x11100, 0x11134}, {0x11136, 0x1113f}, {0x11144, 0x11147}, {0x11150, 0x11173}, {0x11176, 0x11176},
+  {0x11180, 0x111c4}, {0x111c9, 0x111cc}, {0x111ce, 0x111da}, {0x111dc, 0x111dc}, {0x11200, 0x11211}, {0x11213, 0x11237}, {0x1123e, 0x1123e}, {0x11280, 0x11286},
+  {0x11288, 0x11288}, {0x1128a, 0x1128d}, {0x1128f, 0x1129d}, {0x1129f, 0x112a8}, {0x112b0, 0x112ea}, {0x112f0, 0x112f9}, {0x11300, 0x11303}, {0x11305, 0x1130c},
+  {0x1130f, 0x11310}, {0x11313, 0x11328}, {0x1132a, 0x11330}, {0x11332, 0x11333}, {0x11335, 0x11339}, {0x1133b, 0x11344}, {0x11347, 0x11348}, {0x1134b, 0x1134d},
+  {0x11350, 0x11350}, {0x11357, 0x11357}, {0x1135d, 0x11363}, {0x11366, 0x1136c}, {0x11370, 0x11374}, {0x11400, 0x1144a}, {0x11450, 0x11459}, {0x1145e, 0x11461},
+  {0x11480, 0x114c5}, {0x114c7, 0x114c7}, {0x114d0, 0x114d9}, {0x11580, 0x115b5}, {0x115b8, 0x115c0}, {0x115d8, 0x115dd}, {0x11600, 0x11640}, {0x11644, 0x11644},
+  {0x11650, 0x11659}, {0x11680, 0x116b8}, {0x116c0, 0x116c9}, {0x11700, 0x1171a}, {0x1171d, 0x1172b}, {0x11730, 0x11739}, {0x11740, 0x11746}, {0x11800, 0x1183a},
+  {0x118a0, 0x118e9}, {0x118ff, 0x11906}, {0x11909, 0x11909}, {0x1190c, 0x11913}, {0x11915, 0x11916}, {0x11918, 0x11935}, {0x11937, 0x11938}, {0x1193b, 0x11943},
+  {0x11950, 0x11959}, {0x119a0, 0x119a7}, {0x119aa, 0x119d7}, {0x119da, 0x119e1}, {0x119e3, 0x119e4}, {0x11a00, 0x11a3e}, {0x11a47, 0x11a47}, {0x11a50, 0x11a99},
+  {0x11a9d, 0x11a9d}, {0x11ab0, 0x11af8}, {0x11c00, 0x11c08}, {0x11c0a, 0x11c36}, {0x11c38, 0x11c40}, {0x11c50, 0x11c59}, {0x11c72, 0x11c8f}, {0x11c92, 0x11ca7},
+  {0x11ca9, 0x11cb6}, {0x11d00, 0x11d06}, {0x11d08, 0x11d09}, {0x11d0b, 0x11d36}, {0x11d3a, 0x11d3a}, {0x11d3c, 0x11d3d}, {0x11d3f, 0x11d47}, {0x11d50, 0x11d59},
+  {0x11d60, 0x11d65}, {0x11d67, 0x11d68}, {0x11d6a, 0x11d8e}, {0x11d90, 0x11d91}, {0x11d93, 0x11d98}, {0x11da0, 0x11da9}, {0x11ee0, 0x11ef6}, {0x11fb0, 0x11fb0},
+  {0x12000, 0x12399}, {0x12400, 0x1246e}, {0x12480, 0x12543}, {0x12f90, 0x12ff0}, {0x13000, 0x1342e}, {0x14400, 0x14646}, {0x16800, 0x16a38}, {0x16a40, 0x16a5e},
+  {0x16a60, 0x16a69}, {0x16a70, 0x16abe}, {0x16ac0, 0x16ac9}, {0x16ad0, 0x16aed}, {0x16af0, 0x16af4}, {0x16b00, 0x16b36}, {0x16b40, 0x16b43}, {0x16b50, 0x16b59},
+  {0x16b63, 0x16b77}, {0x16b7d, 0x16b8f}, {0x16e40, 0x16e7f}, {0x16f00, 0x16f4a}, {0x16f4f, 0x16f87}, {0x16f8f, 0x16f9f}, {0x16fe0, 0x16fe1}, {0x16fe3, 0x16fe4},
+  {0x16ff0, 0x16ff1}, {0x17000, 0x187f7}, {0x18800, 0x18cd5}, {0x18d00, 0x18d08}, {0x1aff0, 0x1aff3}, {0x1aff5, 0x1affb}, {0x1affd, 0x1affe}, {0x1b000, 0x1b122},
+  {0x1b150, 0x1b152}, {0x1b164, 0x1b167}, {0x1b170, 0x1b2fb}, {0x1bc00, 0x1bc6a}, {0x1bc70, 0x1bc7c}, {0x1bc80, 0x1bc88}, {0x1bc90, 0x1bc99}, {0x1bc9d, 0x1bc9e},
+  {0x1cf00, 0x1cf2d}, {0x1cf30, 0x1cf46}, {0x1d165, 0x1d169}, {0x1d16d, 0x1d172}, {0x1d17b, 0x1d182}, {0x1d185, 0x1d18b}, {0x1d1aa, 0x1d1ad}, {0x1d242, 0x1d244},
+  {0x1d400, 0x1d454}, {0x1d456, 0x1d49c}, {0x1d49e, 0x1d49f}, {0x1d4a2, 0x1d4a2}, {0x1d4a5, 0x1d4a6}, {0x1d4a9, 0x1d4ac}, {0x1d4ae, 0x1d4b9}, {0x1d4bb, 0x1d4bb},
+  {0x1d4bd, 0x1d4c3}, {0x1d4c5, 0x1d505}, {0x1d507, 0x1d50a}, {0x1d50d, 0x1d514}, {0x1d516, 0x1d51c}, {0x1d51e, 0x1d539}, {0x1d53b, 0x1d53e}, {0x1d540, 0x1d544},
+  {0x1d546, 0x1d546}, {0x1d54a, 0x1d550}, {0x1d552, 0x1d6a5}, {0x1d6a8, 0x1d6c0}, {0x1d6c2, 0x1d6da}, {0x1d6dc, 0x1d6fa}, {0x1d6fc, 0x1d714}, {0x1d716, 0x1d734},
+  {0x1d736, 0x1d74e}, {0x1d750, 0x1d76e}, {0x1d770, 0x1d788}, {0x1d78a, 0x1d7a8}, {0x1d7aa, 0x1d7c2}, {0x1d7c4, 0x1d7cb}, {0x1d7ce, 0x1d7ff}, {0x1da00, 0x1da36},
+  {0x1da3b, 0x1da6c}, {0x1da75, 0x1da75}, {0x1da84, 0x1da84}, {0x1da9b, 0x1da9f}, {0x1daa1, 0x1daaf}, {0x1df00, 0x1df1e}, {0x1e000, 0x1e006}, {0x1e008, 0x1e018},
+  {0x1e01b, 0x1e021}, {0x1e023, 0x1e024}, {0x1e026, 0x1e02a}, {0x1e100, 0x1e12c}, {0x1e130, 0x1e13d}, {0x1e140, 0x1e149}, {0x1e14e, 0x1e14e}, {0x1e290, 0x1e2ae},
+  {0x1e2c0, 0x1e2f9}, {0x1e7e0, 0x1e7e6}, {0x1e7e8, 0x1e7eb}, {0x1e7ed, 0x1e7ee}, {0x1e7f0, 0x1e7fe}, {0x1e800, 0x1e8c4}, {0x1e8d0, 0x1e8d6}, {0x1e900, 0x1e94b},
+  {0x1e950, 0x1e959}, {0x1ee00, 0x1ee03}, {0x1ee05, 0x1ee1f}, {0x1ee21, 0x1ee22}, {0x1ee24, 0x1ee24}, {0x1ee27, 0x1ee27}, {0x1ee29, 0x1ee32}, {0x1ee34, 0x1ee37},
+  {0x1ee39, 0x1ee39}, {0x1ee3b, 0x1ee3b}, {0x1ee42, 0x1ee42}, {0x1ee47, 0x1ee47}, {0x1ee49, 0x1ee49}, {0x1ee4b, 0x1ee4b}, {0x1ee4d, 0x1ee4f}, {0x1ee51, 0x1ee52},
+  {0x1ee54, 0x1ee54}, {0x1ee57, 0x1ee57}, {0x1ee59, 0x1ee59}, {0x1ee5b, 0x1ee5b}, {0x1ee5d, 0x1ee5d}, {0x1ee5f, 0x1ee5f}, {0x1ee61, 0x1ee62}, {0x1ee64, 0x1ee64},
+  {0x1ee67, 0x1ee6a}, {0x1ee6c, 0x1ee72}, {0x1ee74, 0x1ee77}, {0x1ee79, 0x1ee7c}, {0x1ee7e, 0x1ee7e}, {0x1ee80, 0x1ee89}, {0x1ee8b, 0x1ee9b}, {0x1eea1, 0x1eea3},
+  {0x1eea5, 0x1eea9}, {0x1eeab, 0x1eebb}, {0x1fbf0, 0x1fbf9}, {0x20000, 0x2a6df}, {0x2a700, 0x2b738}, {0x2b740, 0x2b81d}, {0x2b820, 0x2cea1}, {0x2ceb0, 0x2ebe0},
+  {0x2f800, 0x2fa1d}, {0x30000, 0x3134a}, {0xe0100, 0xe01ef},
+};
 
 static bool ts_lex(TSLexer *lexer, TSStateId state) {
   START_LEXER();
   eof = lexer->eof(lexer);
   switch (state) {
     case 0:
-      if (eof) ADVANCE(57);
-      if (('\t' <= lookahead && lookahead <= '\f') ||
-          lookahead == ' ' ||
-          lookahead == 8203 ||
-          lookahead == 8288 ||
-          lookahead == 65279) SKIP(53)
-      if (lookahead == '\r') SKIP(53)
-      if (lookahead == '!') ADVANCE(9);
+      if (eof) ADVANCE(55);
+      if (lookahead == '\r') SKIP(51);
+      if (lookahead == '!') ADVANCE(20);
       if (lookahead == '#') ADVANCE(167);
-      if (lookahead == '%') ADVANCE(97);
-      if (lookahead == '&') ADVANCE(101);
-      if (lookahead == '(') ADVANCE(61);
-      if (lookahead == ')') ADVANCE(62);
-      if (lookahead == '*') ADVANCE(65);
-      if (lookahead == '+') ADVANCE(93);
-      if (lookahead == ',') ADVANCE(63);
-      if (lookahead == '-') ADVANCE(87);
-      if (lookahead == '.') ADVANCE(60);
-      if (lookahead == '/') ADVANCE(94);
-      if (lookahead == '0') ADVANCE(140);
-      if (lookahead == ':') ADVANCE(72);
-      if (lookahead == ';') ADVANCE(58);
-      if (lookahead == '<') ADVANCE(107);
-      if (lookahead == '=') ADVANCE(80);
-      if (lookahead == '>') ADVANCE(115);
-      if (lookahead == '@') ADVANCE(84);
-      if (lookahead == '[') ADVANCE(81);
+      if (lookahead == '%') ADVANCE(95);
+      if (lookahead == '&') ADVANCE(99);
+      if (lookahead == '(') ADVANCE(59);
+      if (lookahead == ')') ADVANCE(60);
+      if (lookahead == '*') ADVANCE(63);
+      if (lookahead == '+') ADVANCE(91);
+      if (lookahead == ',') ADVANCE(61);
+      if (lookahead == '-') ADVANCE(85);
+      if (lookahead == '.') ADVANCE(58);
+      if (lookahead == '/') ADVANCE(92);
+      if (lookahead == '0') ADVANCE(139);
+      if (lookahead == ':') ADVANCE(70);
+      if (lookahead == ';') ADVANCE(56);
+      if (lookahead == '<') ADVANCE(105);
+      if (lookahead == '=') ADVANCE(78);
+      if (lookahead == '>') ADVANCE(113);
+      if (lookahead == '@') ADVANCE(82);
+      if (lookahead == '[') ADVANCE(79);
       if (lookahead == '\\') ADVANCE(133);
-      if (lookahead == ']') ADVANCE(82);
-      if (lookahead == '^') ADVANCE(103);
+      if (lookahead == ']') ADVANCE(80);
+      if (lookahead == '^') ADVANCE(101);
       if (lookahead == 'e') ADVANCE(163);
-      if (lookahead == '{') ADVANCE(90);
-      if (lookahead == '|') ADVANCE(89);
-      if (lookahead == '}') ADVANCE(91);
-      if (lookahead == '~') ADVANCE(106);
-      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(139);
-      if (sym_identifier_character_set_1(lookahead)) ADVANCE(166);
+      if (lookahead == '{') ADVANCE(88);
+      if (lookahead == '|') ADVANCE(87);
+      if (lookahead == '}') ADVANCE(89);
+      if (lookahead == '~') ADVANCE(104);
+      if (('\t' <= lookahead && lookahead <= '\f') ||
+          lookahead == ' ' ||
+          lookahead == 0x200b ||
+          lookahead == 0x2060 ||
+          lookahead == 0xfeff) SKIP(51);
+      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(140);
+      if (set_contains(sym_identifier_character_set_1, 656, lookahead)) ADVANCE(166);
       END_STATE();
     case 1:
       if (lookahead == '\n') ADVANCE(168);
       END_STATE();
     case 2:
-      if (lookahead == '\n') ADVANCE(132);
+      if (lookahead == '\n') ADVANCE(130);
       END_STATE();
     case 3:
-      if (lookahead == '\n') SKIP(3)
+      if (lookahead == '\n') SKIP(3);
       if (lookahead == '\r') ADVANCE(135);
       if (lookahead == '#') ADVANCE(136);
       if (lookahead == '\\') ADVANCE(134);
-      if (lookahead == '{') ADVANCE(90);
-      if (lookahead == '}') ADVANCE(91);
+      if (lookahead == '{') ADVANCE(88);
+      if (lookahead == '}') ADVANCE(89);
       if (('\t' <= lookahead && lookahead <= '\f') ||
           lookahead == ' ' ||
-          lookahead == 8203 ||
-          lookahead == 8288 ||
-          lookahead == 65279) ADVANCE(135);
+          lookahead == 0x200b ||
+          lookahead == 0x2060 ||
+          lookahead == 0xfeff) ADVANCE(135);
       if (lookahead != 0) ADVANCE(136);
       END_STATE();
     case 4:
-      if (lookahead == '.') ADVANCE(5);
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(146);
+      if (lookahead == '\r') SKIP(4);
+      if (lookahead == '!') ADVANCE(19);
+      if (lookahead == '#') ADVANCE(167);
+      if (lookahead == '%') ADVANCE(95);
+      if (lookahead == '&') ADVANCE(99);
+      if (lookahead == '(') ADVANCE(59);
+      if (lookahead == '*') ADVANCE(63);
+      if (lookahead == '+') ADVANCE(91);
+      if (lookahead == ',') ADVANCE(61);
+      if (lookahead == '-') ADVANCE(84);
+      if (lookahead == '.') ADVANCE(58);
+      if (lookahead == '/') ADVANCE(92);
+      if (lookahead == '0') ADVANCE(139);
+      if (lookahead == ':') ADVANCE(70);
+      if (lookahead == ';') ADVANCE(56);
+      if (lookahead == '<') ADVANCE(105);
+      if (lookahead == '=') ADVANCE(78);
+      if (lookahead == '>') ADVANCE(113);
+      if (lookahead == '@') ADVANCE(82);
+      if (lookahead == '[') ADVANCE(79);
+      if (lookahead == '\\') ADVANCE(10);
+      if (lookahead == '^') ADVANCE(101);
+      if (lookahead == '{') ADVANCE(88);
+      if (lookahead == '|') ADVANCE(87);
+      if (lookahead == '~') ADVANCE(104);
+      if (('\t' <= lookahead && lookahead <= '\f') ||
+          lookahead == ' ' ||
+          lookahead == 0x200b ||
+          lookahead == 0x2060 ||
+          lookahead == 0xfeff) SKIP(4);
+      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(140);
+      if (set_contains(sym_identifier_character_set_1, 656, lookahead)) ADVANCE(166);
       END_STATE();
     case 5:
-      if (lookahead == '.') ADVANCE(131);
+      if (lookahead == '\r') SKIP(5);
+      if (lookahead == '!') ADVANCE(20);
+      if (lookahead == '#') ADVANCE(167);
+      if (lookahead == '%') ADVANCE(94);
+      if (lookahead == '&') ADVANCE(98);
+      if (lookahead == '(') ADVANCE(59);
+      if (lookahead == ')') ADVANCE(60);
+      if (lookahead == '*') ADVANCE(64);
+      if (lookahead == '+') ADVANCE(90);
+      if (lookahead == ',') ADVANCE(61);
+      if (lookahead == '-') ADVANCE(83);
+      if (lookahead == '.') ADVANCE(58);
+      if (lookahead == '/') ADVANCE(93);
+      if (lookahead == '0') ADVANCE(139);
+      if (lookahead == ':') ADVANCE(70);
+      if (lookahead == ';') ADVANCE(56);
+      if (lookahead == '<') ADVANCE(106);
+      if (lookahead == '=') ADVANCE(78);
+      if (lookahead == '>') ADVANCE(114);
+      if (lookahead == '@') ADVANCE(81);
+      if (lookahead == '[') ADVANCE(79);
+      if (lookahead == '\\') ADVANCE(10);
+      if (lookahead == ']') ADVANCE(80);
+      if (lookahead == '^') ADVANCE(100);
+      if (lookahead == '{') ADVANCE(88);
+      if (lookahead == '|') ADVANCE(86);
+      if (lookahead == '}') ADVANCE(89);
+      if (lookahead == '~') ADVANCE(104);
+      if (('\t' <= lookahead && lookahead <= '\f') ||
+          lookahead == ' ' ||
+          lookahead == 0x200b ||
+          lookahead == 0x2060 ||
+          lookahead == 0xfeff) SKIP(5);
+      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(140);
+      if (set_contains(sym_identifier_character_set_1, 656, lookahead)) ADVANCE(166);
       END_STATE();
     case 6:
-      if (lookahead == '/') ADVANCE(16);
-      if (lookahead == '=') ADVANCE(121);
+      if (lookahead == '\r') SKIP(6);
+      if (lookahead == '#') ADVANCE(167);
+      if (lookahead == '%') ADVANCE(21);
+      if (lookahead == '&') ADVANCE(22);
+      if (lookahead == '(') ADVANCE(59);
+      if (lookahead == '*') ADVANCE(65);
+      if (lookahead == '+') ADVANCE(91);
+      if (lookahead == '-') ADVANCE(84);
+      if (lookahead == '.') ADVANCE(15);
+      if (lookahead == '/') ADVANCE(17);
+      if (lookahead == '0') ADVANCE(139);
+      if (lookahead == ':') ADVANCE(69);
+      if (lookahead == ';') ADVANCE(56);
+      if (lookahead == '<') ADVANCE(18);
+      if (lookahead == '=') ADVANCE(77);
+      if (lookahead == '>') ADVANCE(31);
+      if (lookahead == '@') ADVANCE(23);
+      if (lookahead == '[') ADVANCE(79);
+      if (lookahead == '\\') ADVANCE(10);
+      if (lookahead == '^') ADVANCE(24);
+      if (lookahead == '{') ADVANCE(88);
+      if (lookahead == '|') ADVANCE(25);
+      if (lookahead == '~') ADVANCE(104);
+      if (('\t' <= lookahead && lookahead <= '\f') ||
+          lookahead == ' ' ||
+          lookahead == 0x200b ||
+          lookahead == 0x2060 ||
+          lookahead == 0xfeff) SKIP(6);
+      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(140);
+      if (set_contains(sym_identifier_character_set_1, 656, lookahead)) ADVANCE(166);
       END_STATE();
     case 7:
-      if (lookahead == '<') ADVANCE(17);
+      if (lookahead == '\r') SKIP(7);
+      if (lookahead == '!') ADVANCE(19);
+      if (lookahead == '#') ADVANCE(167);
+      if (lookahead == '%') ADVANCE(95);
+      if (lookahead == '&') ADVANCE(99);
+      if (lookahead == '(') ADVANCE(59);
+      if (lookahead == ')') ADVANCE(60);
+      if (lookahead == '*') ADVANCE(63);
+      if (lookahead == '+') ADVANCE(91);
+      if (lookahead == ',') ADVANCE(61);
+      if (lookahead == '-') ADVANCE(84);
+      if (lookahead == '.') ADVANCE(57);
+      if (lookahead == '/') ADVANCE(92);
+      if (lookahead == ':') ADVANCE(70);
+      if (lookahead == ';') ADVANCE(56);
+      if (lookahead == '<') ADVANCE(105);
+      if (lookahead == '=') ADVANCE(78);
+      if (lookahead == '>') ADVANCE(113);
+      if (lookahead == '@') ADVANCE(82);
+      if (lookahead == '[') ADVANCE(79);
+      if (lookahead == '\\') ADVANCE(10);
+      if (lookahead == ']') ADVANCE(80);
+      if (lookahead == '^') ADVANCE(101);
+      if (lookahead == '|') ADVANCE(87);
+      if (lookahead == '}') ADVANCE(89);
+      if (('\t' <= lookahead && lookahead <= '\f') ||
+          lookahead == ' ' ||
+          lookahead == 0x200b ||
+          lookahead == 0x2060 ||
+          lookahead == 0xfeff) SKIP(7);
+      if (set_contains(sym_identifier_character_set_1, 656, lookahead)) ADVANCE(166);
       END_STATE();
     case 8:
-      if (lookahead == '=') ADVANCE(112);
+      if (lookahead == '\r') SKIP(8);
+      if (lookahead == '!') ADVANCE(19);
+      if (lookahead == '#') ADVANCE(167);
+      if (lookahead == '%') ADVANCE(95);
+      if (lookahead == '&') ADVANCE(99);
+      if (lookahead == '(') ADVANCE(59);
+      if (lookahead == ')') ADVANCE(60);
+      if (lookahead == '*') ADVANCE(63);
+      if (lookahead == '+') ADVANCE(91);
+      if (lookahead == ',') ADVANCE(61);
+      if (lookahead == '-') ADVANCE(84);
+      if (lookahead == '.') ADVANCE(57);
+      if (lookahead == '/') ADVANCE(92);
+      if (lookahead == ':') ADVANCE(69);
+      if (lookahead == ';') ADVANCE(56);
+      if (lookahead == '<') ADVANCE(105);
+      if (lookahead == '=') ADVANCE(78);
+      if (lookahead == '>') ADVANCE(113);
+      if (lookahead == '@') ADVANCE(82);
+      if (lookahead == '[') ADVANCE(79);
+      if (lookahead == '\\') ADVANCE(10);
+      if (lookahead == ']') ADVANCE(80);
+      if (lookahead == '^') ADVANCE(101);
+      if (lookahead == '|') ADVANCE(87);
+      if (('\t' <= lookahead && lookahead <= '\f') ||
+          lookahead == ' ' ||
+          lookahead == 0x200b ||
+          lookahead == 0x2060 ||
+          lookahead == 0xfeff) SKIP(8);
+      if (set_contains(sym_identifier_character_set_1, 656, lookahead)) ADVANCE(166);
       END_STATE();
     case 9:
-      if (lookahead == '=') ADVANCE(112);
-      if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(137);
+      if (lookahead == '\r') SKIP(9);
+      if (lookahead == '#') ADVANCE(167);
+      if (lookahead == '-') ADVANCE(30);
+      if (lookahead == ':') ADVANCE(69);
+      if (lookahead == '\\') ADVANCE(10);
+      if (lookahead == 'e') ADVANCE(163);
+      if (('\t' <= lookahead && lookahead <= '\f') ||
+          lookahead == ' ' ||
+          lookahead == 0x200b ||
+          lookahead == 0x2060 ||
+          lookahead == 0xfeff) SKIP(9);
+      if (set_contains(sym_identifier_character_set_1, 656, lookahead)) ADVANCE(166);
       END_STATE();
     case 10:
-      if (lookahead == '=') ADVANCE(124);
+      if (lookahead == '\r') ADVANCE(1);
+      if ((!eof && lookahead == 00) ||
+          lookahead == '\n') ADVANCE(168);
       END_STATE();
     case 11:
-      if (lookahead == '=') ADVANCE(128);
+      if (lookahead == '\r') SKIP(11);
+      if (lookahead == '!') ADVANCE(19);
+      if (lookahead == '#') ADVANCE(167);
+      if (lookahead == '%') ADVANCE(95);
+      if (lookahead == '&') ADVANCE(99);
+      if (lookahead == '(') ADVANCE(59);
+      if (lookahead == '*') ADVANCE(63);
+      if (lookahead == '+') ADVANCE(91);
+      if (lookahead == ',') ADVANCE(61);
+      if (lookahead == '-') ADVANCE(84);
+      if (lookahead == '.') ADVANCE(58);
+      if (lookahead == '/') ADVANCE(92);
+      if (lookahead == '0') ADVANCE(139);
+      if (lookahead == ':') ADVANCE(69);
+      if (lookahead == ';') ADVANCE(56);
+      if (lookahead == '<') ADVANCE(105);
+      if (lookahead == '=') ADVANCE(78);
+      if (lookahead == '>') ADVANCE(113);
+      if (lookahead == '@') ADVANCE(82);
+      if (lookahead == '[') ADVANCE(79);
+      if (lookahead == '\\') ADVANCE(10);
+      if (lookahead == '^') ADVANCE(101);
+      if (lookahead == '{') ADVANCE(88);
+      if (lookahead == '|') ADVANCE(87);
+      if (lookahead == '~') ADVANCE(104);
+      if (('\t' <= lookahead && lookahead <= '\f') ||
+          lookahead == ' ' ||
+          lookahead == 0x200b ||
+          lookahead == 0x2060 ||
+          lookahead == 0xfeff) SKIP(11);
+      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(140);
+      if (set_contains(sym_identifier_character_set_1, 656, lookahead)) ADVANCE(166);
       END_STATE();
     case 12:
-      if (lookahead == '=') ADVANCE(122);
+      if (lookahead == '\r') SKIP(12);
+      if (lookahead == '!') ADVANCE(20);
+      if (lookahead == '#') ADVANCE(167);
+      if (lookahead == '%') ADVANCE(94);
+      if (lookahead == '&') ADVANCE(98);
+      if (lookahead == '(') ADVANCE(59);
+      if (lookahead == ')') ADVANCE(60);
+      if (lookahead == '*') ADVANCE(64);
+      if (lookahead == '+') ADVANCE(90);
+      if (lookahead == ',') ADVANCE(61);
+      if (lookahead == '-') ADVANCE(83);
+      if (lookahead == '.') ADVANCE(58);
+      if (lookahead == '/') ADVANCE(93);
+      if (lookahead == '0') ADVANCE(139);
+      if (lookahead == ':') ADVANCE(69);
+      if (lookahead == ';') ADVANCE(56);
+      if (lookahead == '<') ADVANCE(106);
+      if (lookahead == '=') ADVANCE(78);
+      if (lookahead == '>') ADVANCE(114);
+      if (lookahead == '@') ADVANCE(81);
+      if (lookahead == '[') ADVANCE(79);
+      if (lookahead == '\\') ADVANCE(10);
+      if (lookahead == ']') ADVANCE(80);
+      if (lookahead == '^') ADVANCE(100);
+      if (lookahead == '{') ADVANCE(88);
+      if (lookahead == '|') ADVANCE(86);
+      if (lookahead == '}') ADVANCE(89);
+      if (lookahead == '~') ADVANCE(104);
+      if (('\t' <= lookahead && lookahead <= '\f') ||
+          lookahead == ' ' ||
+          lookahead == 0x200b ||
+          lookahead == 0x2060 ||
+          lookahead == 0xfeff) SKIP(12);
+      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(140);
+      if (set_contains(sym_identifier_character_set_1, 656, lookahead)) ADVANCE(166);
       END_STATE();
     case 13:
-      if (lookahead == '=') ADVANCE(129);
+      if (lookahead == '\r') SKIP(13);
+      if (lookahead == '!') ADVANCE(20);
+      if (lookahead == '#') ADVANCE(167);
+      if (lookahead == '%') ADVANCE(94);
+      if (lookahead == '&') ADVANCE(98);
+      if (lookahead == '(') ADVANCE(59);
+      if (lookahead == ')') ADVANCE(60);
+      if (lookahead == '*') ADVANCE(64);
+      if (lookahead == '+') ADVANCE(90);
+      if (lookahead == ',') ADVANCE(61);
+      if (lookahead == '-') ADVANCE(83);
+      if (lookahead == '.') ADVANCE(57);
+      if (lookahead == '/') ADVANCE(93);
+      if (lookahead == ':') ADVANCE(69);
+      if (lookahead == ';') ADVANCE(56);
+      if (lookahead == '<') ADVANCE(106);
+      if (lookahead == '=') ADVANCE(78);
+      if (lookahead == '>') ADVANCE(114);
+      if (lookahead == '@') ADVANCE(81);
+      if (lookahead == '[') ADVANCE(79);
+      if (lookahead == '\\') ADVANCE(10);
+      if (lookahead == ']') ADVANCE(80);
+      if (lookahead == '^') ADVANCE(100);
+      if (lookahead == '|') ADVANCE(86);
+      if (lookahead == '}') ADVANCE(89);
+      if (('\t' <= lookahead && lookahead <= '\f') ||
+          lookahead == ' ' ||
+          lookahead == 0x200b ||
+          lookahead == 0x2060 ||
+          lookahead == 0xfeff) SKIP(13);
+      if (set_contains(sym_identifier_character_set_1, 656, lookahead)) ADVANCE(166);
       END_STATE();
     case 14:
-      if (lookahead == '=') ADVANCE(130);
+      if (lookahead == '\r') SKIP(14);
+      if (lookahead == '!') ADVANCE(20);
+      if (lookahead == '#') ADVANCE(167);
+      if (lookahead == '%') ADVANCE(94);
+      if (lookahead == '&') ADVANCE(98);
+      if (lookahead == '(') ADVANCE(59);
+      if (lookahead == ')') ADVANCE(60);
+      if (lookahead == '*') ADVANCE(64);
+      if (lookahead == '+') ADVANCE(90);
+      if (lookahead == ',') ADVANCE(61);
+      if (lookahead == '-') ADVANCE(83);
+      if (lookahead == '.') ADVANCE(57);
+      if (lookahead == '/') ADVANCE(93);
+      if (lookahead == ':') ADVANCE(70);
+      if (lookahead == ';') ADVANCE(56);
+      if (lookahead == '<') ADVANCE(106);
+      if (lookahead == '=') ADVANCE(78);
+      if (lookahead == '>') ADVANCE(114);
+      if (lookahead == '@') ADVANCE(81);
+      if (lookahead == '[') ADVANCE(79);
+      if (lookahead == '\\') ADVANCE(10);
+      if (lookahead == ']') ADVANCE(80);
+      if (lookahead == '^') ADVANCE(100);
+      if (lookahead == '|') ADVANCE(86);
+      if (lookahead == '}') ADVANCE(89);
+      if (('\t' <= lookahead && lookahead <= '\f') ||
+          lookahead == ' ' ||
+          lookahead == 0x200b ||
+          lookahead == 0x2060 ||
+          lookahead == 0xfeff) SKIP(14);
+      if (set_contains(sym_identifier_character_set_1, 656, lookahead)) ADVANCE(166);
       END_STATE();
     case 15:
-      if (lookahead == '=') ADVANCE(125);
+      if (lookahead == '.') ADVANCE(16);
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(146);
       END_STATE();
     case 16:
-      if (lookahead == '=') ADVANCE(123);
+      if (lookahead == '.') ADVANCE(129);
       END_STATE();
     case 17:
-      if (lookahead == '=') ADVANCE(127);
+      if (lookahead == '/') ADVANCE(27);
+      if (lookahead == '=') ADVANCE(119);
       END_STATE();
     case 18:
-      if (lookahead == '=') ADVANCE(126);
+      if (lookahead == '<') ADVANCE(28);
       END_STATE();
     case 19:
-      if (lookahead == '>') ADVANCE(76);
+      if (lookahead == '=') ADVANCE(110);
       END_STATE();
     case 20:
-      if (lookahead == '>') ADVANCE(18);
+      if (lookahead == '=') ADVANCE(110);
+      if (('a' <= lookahead && lookahead <= 'z')) ADVANCE(137);
       END_STATE();
     case 21:
-      if (lookahead == '_') ADVANCE(28);
-      if (lookahead == '0' ||
-          lookahead == '1') ADVANCE(142);
+      if (lookahead == '=') ADVANCE(122);
       END_STATE();
     case 22:
-      if (lookahead == '_') ADVANCE(39);
-      if (('0' <= lookahead && lookahead <= '7')) ADVANCE(143);
+      if (lookahead == '=') ADVANCE(126);
       END_STATE();
     case 23:
-      if (lookahead == '_') ADVANCE(44);
-      if (('0' <= lookahead && lookahead <= '9') ||
-          ('A' <= lookahead && lookahead <= 'F') ||
-          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(144);
+      if (lookahead == '=') ADVANCE(120);
       END_STATE();
     case 24:
-      if (lookahead == '{') ADVANCE(52);
+      if (lookahead == '=') ADVANCE(127);
       END_STATE();
     case 25:
-      if (lookahead == '}') ADVANCE(132);
-      if (lookahead != 0) ADVANCE(25);
+      if (lookahead == '=') ADVANCE(128);
       END_STATE();
     case 26:
-      if (!eof && (lookahead == 0 ||
-          lookahead == '\n')) ADVANCE(168);
-      if (lookahead == '\r') ADVANCE(1);
+      if (lookahead == '=') ADVANCE(123);
       END_STATE();
     case 27:
-      if (lookahead == '+' ||
-          lookahead == '-') ADVANCE(41);
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(147);
+      if (lookahead == '=') ADVANCE(121);
       END_STATE();
     case 28:
-      if (lookahead == '0' ||
-          lookahead == '1') ADVANCE(142);
+      if (lookahead == '=') ADVANCE(125);
       END_STATE();
     case 29:
-      if (('\t' <= lookahead && lookahead <= '\f') ||
-          lookahead == ' ' ||
-          lookahead == 8203 ||
-          lookahead == 8288 ||
-          lookahead == 65279) SKIP(29)
-      if (lookahead == '\r') SKIP(29)
-      if (lookahead == '!') ADVANCE(8);
-      if (lookahead == '#') ADVANCE(167);
-      if (lookahead == '%') ADVANCE(97);
-      if (lookahead == '&') ADVANCE(101);
-      if (lookahead == '(') ADVANCE(61);
-      if (lookahead == '*') ADVANCE(65);
-      if (lookahead == '+') ADVANCE(93);
-      if (lookahead == ',') ADVANCE(63);
-      if (lookahead == '-') ADVANCE(86);
-      if (lookahead == '.') ADVANCE(60);
-      if (lookahead == '/') ADVANCE(94);
-      if (lookahead == '0') ADVANCE(140);
-      if (lookahead == ':') ADVANCE(72);
-      if (lookahead == ';') ADVANCE(58);
-      if (lookahead == '<') ADVANCE(107);
-      if (lookahead == '=') ADVANCE(80);
-      if (lookahead == '>') ADVANCE(115);
-      if (lookahead == '@') ADVANCE(84);
-      if (lookahead == '[') ADVANCE(81);
-      if (lookahead == '\\') ADVANCE(26);
-      if (lookahead == '^') ADVANCE(103);
-      if (lookahead == '{') ADVANCE(90);
-      if (lookahead == '|') ADVANCE(89);
-      if (lookahead == '~') ADVANCE(106);
-      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(139);
-      if (sym_identifier_character_set_2(lookahead)) ADVANCE(166);
+      if (lookahead == '=') ADVANCE(124);
       END_STATE();
     case 30:
-      if (('\t' <= lookahead && lookahead <= '\f') ||
-          lookahead == ' ' ||
-          lookahead == 8203 ||
-          lookahead == 8288 ||
-          lookahead == 65279) SKIP(30)
-      if (lookahead == '\r') SKIP(30)
-      if (lookahead == '!') ADVANCE(9);
-      if (lookahead == '#') ADVANCE(167);
-      if (lookahead == '%') ADVANCE(96);
-      if (lookahead == '&') ADVANCE(100);
-      if (lookahead == '(') ADVANCE(61);
-      if (lookahead == ')') ADVANCE(62);
-      if (lookahead == '*') ADVANCE(66);
-      if (lookahead == '+') ADVANCE(92);
-      if (lookahead == ',') ADVANCE(63);
-      if (lookahead == '-') ADVANCE(85);
-      if (lookahead == '.') ADVANCE(60);
-      if (lookahead == '/') ADVANCE(95);
-      if (lookahead == '0') ADVANCE(140);
-      if (lookahead == ':') ADVANCE(72);
-      if (lookahead == ';') ADVANCE(58);
-      if (lookahead == '<') ADVANCE(108);
-      if (lookahead == '=') ADVANCE(80);
-      if (lookahead == '>') ADVANCE(116);
-      if (lookahead == '@') ADVANCE(83);
-      if (lookahead == '[') ADVANCE(81);
-      if (lookahead == '\\') ADVANCE(26);
-      if (lookahead == ']') ADVANCE(82);
-      if (lookahead == '^') ADVANCE(102);
-      if (lookahead == '{') ADVANCE(90);
-      if (lookahead == '|') ADVANCE(88);
-      if (lookahead == '}') ADVANCE(91);
-      if (lookahead == '~') ADVANCE(106);
-      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(139);
-      if (sym_identifier_character_set_1(lookahead)) ADVANCE(166);
+      if (lookahead == '>') ADVANCE(74);
       END_STATE();
     case 31:
-      if (('\t' <= lookahead && lookahead <= '\f') ||
-          lookahead == ' ' ||
-          lookahead == 8203 ||
-          lookahead == 8288 ||
-          lookahead == 65279) SKIP(31)
-      if (lookahead == '\r') SKIP(31)
-      if (lookahead == '#') ADVANCE(167);
-      if (lookahead == '%') ADVANCE(10);
-      if (lookahead == '&') ADVANCE(11);
-      if (lookahead == '(') ADVANCE(61);
-      if (lookahead == '*') ADVANCE(67);
-      if (lookahead == '+') ADVANCE(93);
-      if (lookahead == '-') ADVANCE(86);
-      if (lookahead == '.') ADVANCE(4);
-      if (lookahead == '/') ADVANCE(6);
-      if (lookahead == '0') ADVANCE(140);
-      if (lookahead == ':') ADVANCE(71);
-      if (lookahead == ';') ADVANCE(58);
-      if (lookahead == '<') ADVANCE(7);
-      if (lookahead == '=') ADVANCE(79);
-      if (lookahead == '>') ADVANCE(20);
-      if (lookahead == '@') ADVANCE(12);
-      if (lookahead == '[') ADVANCE(81);
-      if (lookahead == '\\') ADVANCE(26);
-      if (lookahead == '^') ADVANCE(13);
-      if (lookahead == '{') ADVANCE(90);
-      if (lookahead == '|') ADVANCE(14);
-      if (lookahead == '~') ADVANCE(106);
-      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(139);
-      if (sym_identifier_character_set_2(lookahead)) ADVANCE(166);
+      if (lookahead == '>') ADVANCE(29);
       END_STATE();
     case 32:
-      if (('\t' <= lookahead && lookahead <= '\f') ||
-          lookahead == ' ' ||
-          lookahead == 8203 ||
-          lookahead == 8288 ||
-          lookahead == 65279) SKIP(32)
-      if (lookahead == '\r') SKIP(32)
-      if (lookahead == '!') ADVANCE(8);
-      if (lookahead == '#') ADVANCE(167);
-      if (lookahead == '%') ADVANCE(97);
-      if (lookahead == '&') ADVANCE(101);
-      if (lookahead == '(') ADVANCE(61);
-      if (lookahead == ')') ADVANCE(62);
-      if (lookahead == '*') ADVANCE(65);
-      if (lookahead == '+') ADVANCE(93);
-      if (lookahead == ',') ADVANCE(63);
-      if (lookahead == '-') ADVANCE(86);
-      if (lookahead == '.') ADVANCE(59);
-      if (lookahead == '/') ADVANCE(94);
-      if (lookahead == ':') ADVANCE(72);
-      if (lookahead == ';') ADVANCE(58);
-      if (lookahead == '<') ADVANCE(107);
-      if (lookahead == '=') ADVANCE(80);
-      if (lookahead == '>') ADVANCE(115);
-      if (lookahead == '@') ADVANCE(84);
-      if (lookahead == '[') ADVANCE(81);
-      if (lookahead == '\\') ADVANCE(26);
-      if (lookahead == ']') ADVANCE(82);
-      if (lookahead == '^') ADVANCE(103);
-      if (lookahead == '|') ADVANCE(89);
-      if (lookahead == '}') ADVANCE(91);
-      if (sym_identifier_character_set_1(lookahead)) ADVANCE(166);
+      if (lookahead == '_') ADVANCE(38);
+      if (lookahead == '0' ||
+          lookahead == '1') ADVANCE(142);
       END_STATE();
     case 33:
-      if (('\t' <= lookahead && lookahead <= '\f') ||
-          lookahead == ' ' ||
-          lookahead == 8203 ||
-          lookahead == 8288 ||
-          lookahead == 65279) SKIP(33)
-      if (lookahead == '\r') SKIP(33)
-      if (lookahead == '!') ADVANCE(8);
-      if (lookahead == '#') ADVANCE(167);
-      if (lookahead == '%') ADVANCE(97);
-      if (lookahead == '&') ADVANCE(101);
-      if (lookahead == '(') ADVANCE(61);
-      if (lookahead == ')') ADVANCE(62);
-      if (lookahead == '*') ADVANCE(65);
-      if (lookahead == '+') ADVANCE(93);
-      if (lookahead == ',') ADVANCE(63);
-      if (lookahead == '-') ADVANCE(86);
-      if (lookahead == '.') ADVANCE(59);
-      if (lookahead == '/') ADVANCE(94);
-      if (lookahead == ':') ADVANCE(71);
-      if (lookahead == ';') ADVANCE(58);
-      if (lookahead == '<') ADVANCE(107);
-      if (lookahead == '=') ADVANCE(80);
-      if (lookahead == '>') ADVANCE(115);
-      if (lookahead == '@') ADVANCE(84);
-      if (lookahead == '[') ADVANCE(81);
-      if (lookahead == '\\') ADVANCE(26);
-      if (lookahead == ']') ADVANCE(82);
-      if (lookahead == '^') ADVANCE(103);
-      if (lookahead == '|') ADVANCE(89);
-      if (sym_identifier_character_set_1(lookahead)) ADVANCE(166);
+      if (lookahead == '_') ADVANCE(39);
+      if (('0' <= lookahead && lookahead <= '7')) ADVANCE(143);
       END_STATE();
     case 34:
-      if (('\t' <= lookahead && lookahead <= '\f') ||
-          lookahead == ' ' ||
-          lookahead == 8203 ||
-          lookahead == 8288 ||
-          lookahead == 65279) SKIP(34)
-      if (lookahead == '\r') SKIP(34)
-      if (lookahead == '#') ADVANCE(167);
-      if (lookahead == '-') ADVANCE(19);
-      if (lookahead == ':') ADVANCE(71);
-      if (lookahead == '\\') ADVANCE(26);
-      if (lookahead == 'e') ADVANCE(163);
-      if (sym_identifier_character_set_2(lookahead)) ADVANCE(166);
+      if (lookahead == '_') ADVANCE(42);
+      if (('0' <= lookahead && lookahead <= '9') ||
+          ('A' <= lookahead && lookahead <= 'F') ||
+          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(144);
       END_STATE();
     case 35:
-      if (('\t' <= lookahead && lookahead <= '\f') ||
-          lookahead == ' ' ||
-          lookahead == 8203 ||
-          lookahead == 8288 ||
-          lookahead == 65279) SKIP(35)
-      if (lookahead == '\r') SKIP(35)
-      if (lookahead == '!') ADVANCE(8);
-      if (lookahead == '#') ADVANCE(167);
-      if (lookahead == '%') ADVANCE(97);
-      if (lookahead == '&') ADVANCE(101);
-      if (lookahead == '(') ADVANCE(61);
-      if (lookahead == '*') ADVANCE(65);
-      if (lookahead == '+') ADVANCE(93);
-      if (lookahead == ',') ADVANCE(63);
-      if (lookahead == '-') ADVANCE(86);
-      if (lookahead == '.') ADVANCE(60);
-      if (lookahead == '/') ADVANCE(94);
-      if (lookahead == '0') ADVANCE(140);
-      if (lookahead == ':') ADVANCE(71);
-      if (lookahead == ';') ADVANCE(58);
-      if (lookahead == '<') ADVANCE(107);
-      if (lookahead == '=') ADVANCE(80);
-      if (lookahead == '>') ADVANCE(115);
-      if (lookahead == '@') ADVANCE(84);
-      if (lookahead == '[') ADVANCE(81);
-      if (lookahead == '\\') ADVANCE(26);
-      if (lookahead == '^') ADVANCE(103);
-      if (lookahead == '{') ADVANCE(90);
-      if (lookahead == '|') ADVANCE(89);
-      if (lookahead == '~') ADVANCE(106);
-      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(139);
-      if (sym_identifier_character_set_2(lookahead)) ADVANCE(166);
+      if (lookahead == '{') ADVANCE(50);
       END_STATE();
     case 36:
-      if (('\t' <= lookahead && lookahead <= '\f') ||
-          lookahead == ' ' ||
-          lookahead == 8203 ||
-          lookahead == 8288 ||
-          lookahead == 65279) SKIP(36)
-      if (lookahead == '\r') SKIP(36)
-      if (lookahead == '!') ADVANCE(9);
-      if (lookahead == '#') ADVANCE(167);
-      if (lookahead == '%') ADVANCE(96);
-      if (lookahead == '&') ADVANCE(100);
-      if (lookahead == '(') ADVANCE(61);
-      if (lookahead == ')') ADVANCE(62);
-      if (lookahead == '*') ADVANCE(66);
-      if (lookahead == '+') ADVANCE(92);
-      if (lookahead == ',') ADVANCE(63);
-      if (lookahead == '-') ADVANCE(85);
-      if (lookahead == '.') ADVANCE(60);
-      if (lookahead == '/') ADVANCE(95);
-      if (lookahead == '0') ADVANCE(140);
-      if (lookahead == ':') ADVANCE(71);
-      if (lookahead == ';') ADVANCE(58);
-      if (lookahead == '<') ADVANCE(108);
-      if (lookahead == '=') ADVANCE(80);
-      if (lookahead == '>') ADVANCE(116);
-      if (lookahead == '@') ADVANCE(83);
-      if (lookahead == '[') ADVANCE(81);
-      if (lookahead == '\\') ADVANCE(26);
-      if (lookahead == ']') ADVANCE(82);
-      if (lookahead == '^') ADVANCE(102);
-      if (lookahead == '{') ADVANCE(90);
-      if (lookahead == '|') ADVANCE(88);
-      if (lookahead == '}') ADVANCE(91);
-      if (lookahead == '~') ADVANCE(106);
-      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(139);
-      if (sym_identifier_character_set_1(lookahead)) ADVANCE(166);
+      if (lookahead == '}') ADVANCE(130);
+      if (lookahead != 0) ADVANCE(36);
       END_STATE();
     case 37:
-      if (('\t' <= lookahead && lookahead <= '\f') ||
-          lookahead == ' ' ||
-          lookahead == 8203 ||
-          lookahead == 8288 ||
-          lookahead == 65279) SKIP(37)
-      if (lookahead == '\r') SKIP(37)
-      if (lookahead == '!') ADVANCE(9);
-      if (lookahead == '#') ADVANCE(167);
-      if (lookahead == '%') ADVANCE(96);
-      if (lookahead == '&') ADVANCE(100);
-      if (lookahead == '(') ADVANCE(61);
-      if (lookahead == ')') ADVANCE(62);
-      if (lookahead == '*') ADVANCE(66);
-      if (lookahead == '+') ADVANCE(92);
-      if (lookahead == ',') ADVANCE(63);
-      if (lookahead == '-') ADVANCE(85);
-      if (lookahead == '.') ADVANCE(59);
-      if (lookahead == '/') ADVANCE(95);
-      if (lookahead == ':') ADVANCE(71);
-      if (lookahead == ';') ADVANCE(58);
-      if (lookahead == '<') ADVANCE(108);
-      if (lookahead == '=') ADVANCE(80);
-      if (lookahead == '>') ADVANCE(116);
-      if (lookahead == '@') ADVANCE(83);
-      if (lookahead == '[') ADVANCE(81);
-      if (lookahead == '\\') ADVANCE(26);
-      if (lookahead == ']') ADVANCE(82);
-      if (lookahead == '^') ADVANCE(102);
-      if (lookahead == '|') ADVANCE(88);
-      if (lookahead == '}') ADVANCE(91);
-      if (sym_identifier_character_set_1(lookahead)) ADVANCE(166);
+      if (lookahead == '+' ||
+          lookahead == '-') ADVANCE(40);
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(147);
       END_STATE();
     case 38:
-      if (('\t' <= lookahead && lookahead <= '\f') ||
-          lookahead == ' ' ||
-          lookahead == 8203 ||
-          lookahead == 8288 ||
-          lookahead == 65279) SKIP(38)
-      if (lookahead == '\r') SKIP(38)
-      if (lookahead == '!') ADVANCE(9);
-      if (lookahead == '#') ADVANCE(167);
-      if (lookahead == '%') ADVANCE(96);
-      if (lookahead == '&') ADVANCE(100);
-      if (lookahead == '(') ADVANCE(61);
-      if (lookahead == ')') ADVANCE(62);
-      if (lookahead == '*') ADVANCE(66);
-      if (lookahead == '+') ADVANCE(92);
-      if (lookahead == ',') ADVANCE(63);
-      if (lookahead == '-') ADVANCE(85);
-      if (lookahead == '.') ADVANCE(59);
-      if (lookahead == '/') ADVANCE(95);
-      if (lookahead == ':') ADVANCE(72);
-      if (lookahead == ';') ADVANCE(58);
-      if (lookahead == '<') ADVANCE(108);
-      if (lookahead == '=') ADVANCE(80);
-      if (lookahead == '>') ADVANCE(116);
-      if (lookahead == '@') ADVANCE(83);
-      if (lookahead == '[') ADVANCE(81);
-      if (lookahead == '\\') ADVANCE(26);
-      if (lookahead == ']') ADVANCE(82);
-      if (lookahead == '^') ADVANCE(102);
-      if (lookahead == '|') ADVANCE(88);
-      if (lookahead == '}') ADVANCE(91);
-      if (sym_identifier_character_set_1(lookahead)) ADVANCE(166);
+      if (lookahead == '0' ||
+          lookahead == '1') ADVANCE(142);
       END_STATE();
     case 39:
       if (('0' <= lookahead && lookahead <= '7')) ADVANCE(143);
       END_STATE();
     case 40:
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(132);
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(147);
       END_STATE();
     case 41:
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(147);
+      if (('0' <= lookahead && lookahead <= '9') ||
+          ('A' <= lookahead && lookahead <= 'F') ||
+          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(130);
       END_STATE();
     case 42:
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(40);
+      if (('0' <= lookahead && lookahead <= '9') ||
+          ('A' <= lookahead && lookahead <= 'F') ||
+          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(144);
       END_STATE();
     case 43:
       if (('0' <= lookahead && lookahead <= '9') ||
           ('A' <= lookahead && lookahead <= 'F') ||
-          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(132);
+          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(41);
       END_STATE();
     case 44:
       if (('0' <= lookahead && lookahead <= '9') ||
           ('A' <= lookahead && lookahead <= 'F') ||
-          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(144);
+          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(43);
       END_STATE();
     case 45:
       if (('0' <= lookahead && lookahead <= '9') ||
           ('A' <= lookahead && lookahead <= 'F') ||
-          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(43);
+          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(44);
       END_STATE();
     case 46:
       if (('0' <= lookahead && lookahead <= '9') ||
@@ -8748,432 +6312,433 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
           ('a' <= lookahead && lookahead <= 'f')) ADVANCE(48);
       END_STATE();
     case 50:
-      if (('0' <= lookahead && lookahead <= '9') ||
-          ('A' <= lookahead && lookahead <= 'F') ||
-          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(49);
-      END_STATE();
-    case 51:
-      if (('0' <= lookahead && lookahead <= '9') ||
-          ('A' <= lookahead && lookahead <= 'F') ||
-          ('a' <= lookahead && lookahead <= 'f')) ADVANCE(50);
-      END_STATE();
-    case 52:
       if (lookahead != 0 &&
-          lookahead != '}') ADVANCE(25);
+          lookahead != '}') ADVANCE(36);
       END_STATE();
-    case 53:
-      if (eof) ADVANCE(57);
-      if (('\t' <= lookahead && lookahead <= '\f') ||
-          lookahead == ' ' ||
-          lookahead == 8203 ||
-          lookahead == 8288 ||
-          lookahead == 65279) SKIP(53)
-      if (lookahead == '\r') SKIP(53)
-      if (lookahead == '!') ADVANCE(9);
+    case 51:
+      if (eof) ADVANCE(55);
+      if (lookahead == '\r') SKIP(51);
+      if (lookahead == '!') ADVANCE(20);
       if (lookahead == '#') ADVANCE(167);
-      if (lookahead == '%') ADVANCE(97);
-      if (lookahead == '&') ADVANCE(101);
-      if (lookahead == '(') ADVANCE(61);
-      if (lookahead == ')') ADVANCE(62);
-      if (lookahead == '*') ADVANCE(65);
-      if (lookahead == '+') ADVANCE(93);
-      if (lookahead == ',') ADVANCE(63);
-      if (lookahead == '-') ADVANCE(87);
-      if (lookahead == '.') ADVANCE(60);
-      if (lookahead == '/') ADVANCE(94);
-      if (lookahead == '0') ADVANCE(140);
-      if (lookahead == ':') ADVANCE(72);
-      if (lookahead == ';') ADVANCE(58);
-      if (lookahead == '<') ADVANCE(107);
-      if (lookahead == '=') ADVANCE(80);
-      if (lookahead == '>') ADVANCE(115);
-      if (lookahead == '@') ADVANCE(84);
-      if (lookahead == '[') ADVANCE(81);
-      if (lookahead == '\\') ADVANCE(26);
-      if (lookahead == ']') ADVANCE(82);
-      if (lookahead == '^') ADVANCE(103);
+      if (lookahead == '%') ADVANCE(95);
+      if (lookahead == '&') ADVANCE(99);
+      if (lookahead == '(') ADVANCE(59);
+      if (lookahead == ')') ADVANCE(60);
+      if (lookahead == '*') ADVANCE(63);
+      if (lookahead == '+') ADVANCE(91);
+      if (lookahead == ',') ADVANCE(61);
+      if (lookahead == '-') ADVANCE(85);
+      if (lookahead == '.') ADVANCE(58);
+      if (lookahead == '/') ADVANCE(92);
+      if (lookahead == '0') ADVANCE(139);
+      if (lookahead == ':') ADVANCE(70);
+      if (lookahead == ';') ADVANCE(56);
+      if (lookahead == '<') ADVANCE(105);
+      if (lookahead == '=') ADVANCE(78);
+      if (lookahead == '>') ADVANCE(113);
+      if (lookahead == '@') ADVANCE(82);
+      if (lookahead == '[') ADVANCE(79);
+      if (lookahead == '\\') ADVANCE(10);
+      if (lookahead == ']') ADVANCE(80);
+      if (lookahead == '^') ADVANCE(101);
       if (lookahead == 'e') ADVANCE(163);
-      if (lookahead == '{') ADVANCE(90);
-      if (lookahead == '|') ADVANCE(89);
-      if (lookahead == '}') ADVANCE(91);
-      if (lookahead == '~') ADVANCE(106);
-      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(139);
-      if (sym_identifier_character_set_1(lookahead)) ADVANCE(166);
-      END_STATE();
-    case 54:
-      if (eof) ADVANCE(57);
+      if (lookahead == '{') ADVANCE(88);
+      if (lookahead == '|') ADVANCE(87);
+      if (lookahead == '}') ADVANCE(89);
+      if (lookahead == '~') ADVANCE(104);
       if (('\t' <= lookahead && lookahead <= '\f') ||
           lookahead == ' ' ||
-          lookahead == 8203 ||
-          lookahead == 8288 ||
-          lookahead == 65279) SKIP(54)
-      if (lookahead == '\r') SKIP(54)
-      if (lookahead == '!') ADVANCE(9);
-      if (lookahead == '#') ADVANCE(167);
-      if (lookahead == '(') ADVANCE(61);
-      if (lookahead == ')') ADVANCE(62);
-      if (lookahead == '*') ADVANCE(64);
-      if (lookahead == '+') ADVANCE(92);
-      if (lookahead == ',') ADVANCE(63);
-      if (lookahead == '-') ADVANCE(85);
-      if (lookahead == '.') ADVANCE(4);
-      if (lookahead == '0') ADVANCE(140);
-      if (lookahead == ':') ADVANCE(71);
-      if (lookahead == ';') ADVANCE(58);
-      if (lookahead == '<') ADVANCE(109);
-      if (lookahead == '=') ADVANCE(80);
-      if (lookahead == '>') ADVANCE(114);
-      if (lookahead == '@') ADVANCE(83);
-      if (lookahead == '[') ADVANCE(81);
-      if (lookahead == '\\') ADVANCE(26);
-      if (lookahead == ']') ADVANCE(82);
-      if (lookahead == '{') ADVANCE(90);
-      if (lookahead == '|') ADVANCE(88);
-      if (lookahead == '}') ADVANCE(91);
-      if (lookahead == '~') ADVANCE(106);
-      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(139);
-      if (sym_identifier_character_set_2(lookahead)) ADVANCE(166);
+          lookahead == 0x200b ||
+          lookahead == 0x2060 ||
+          lookahead == 0xfeff) SKIP(51);
+      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(140);
+      if (set_contains(sym_identifier_character_set_1, 656, lookahead)) ADVANCE(166);
       END_STATE();
-    case 55:
-      if (eof) ADVANCE(57);
+    case 52:
+      if (eof) ADVANCE(55);
+      if (lookahead == '\r') SKIP(52);
+      if (lookahead == '!') ADVANCE(20);
+      if (lookahead == '#') ADVANCE(167);
+      if (lookahead == '(') ADVANCE(59);
+      if (lookahead == ')') ADVANCE(60);
+      if (lookahead == '*') ADVANCE(62);
+      if (lookahead == '+') ADVANCE(90);
+      if (lookahead == ',') ADVANCE(61);
+      if (lookahead == '-') ADVANCE(83);
+      if (lookahead == '.') ADVANCE(15);
+      if (lookahead == '0') ADVANCE(139);
+      if (lookahead == ':') ADVANCE(69);
+      if (lookahead == ';') ADVANCE(56);
+      if (lookahead == '<') ADVANCE(107);
+      if (lookahead == '=') ADVANCE(78);
+      if (lookahead == '>') ADVANCE(112);
+      if (lookahead == '@') ADVANCE(81);
+      if (lookahead == '[') ADVANCE(79);
+      if (lookahead == '\\') ADVANCE(10);
+      if (lookahead == ']') ADVANCE(80);
+      if (lookahead == '{') ADVANCE(88);
+      if (lookahead == '|') ADVANCE(86);
+      if (lookahead == '}') ADVANCE(89);
+      if (lookahead == '~') ADVANCE(104);
       if (('\t' <= lookahead && lookahead <= '\f') ||
           lookahead == ' ' ||
-          lookahead == 8203 ||
-          lookahead == 8288 ||
-          lookahead == 65279) SKIP(55)
-      if (lookahead == '\r') SKIP(55)
+          lookahead == 0x200b ||
+          lookahead == 0x2060 ||
+          lookahead == 0xfeff) SKIP(52);
+      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(140);
+      if (set_contains(sym_identifier_character_set_1, 656, lookahead)) ADVANCE(166);
+      END_STATE();
+    case 53:
+      if (eof) ADVANCE(55);
+      if (lookahead == '\r') SKIP(53);
       if (lookahead == '#') ADVANCE(167);
-      if (lookahead == '(') ADVANCE(61);
-      if (lookahead == '*') ADVANCE(64);
-      if (lookahead == '+') ADVANCE(92);
-      if (lookahead == '-') ADVANCE(85);
-      if (lookahead == '.') ADVANCE(4);
-      if (lookahead == '0') ADVANCE(140);
-      if (lookahead == '@') ADVANCE(83);
-      if (lookahead == '[') ADVANCE(81);
-      if (lookahead == '\\') ADVANCE(26);
+      if (lookahead == '(') ADVANCE(59);
+      if (lookahead == '*') ADVANCE(62);
+      if (lookahead == '+') ADVANCE(90);
+      if (lookahead == '-') ADVANCE(83);
+      if (lookahead == '.') ADVANCE(15);
+      if (lookahead == '0') ADVANCE(139);
+      if (lookahead == '@') ADVANCE(81);
+      if (lookahead == '[') ADVANCE(79);
+      if (lookahead == '\\') ADVANCE(10);
       if (lookahead == 'e') ADVANCE(164);
-      if (lookahead == '{') ADVANCE(90);
-      if (lookahead == '~') ADVANCE(106);
-      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(139);
-      if (sym_identifier_character_set_2(lookahead)) ADVANCE(166);
-      END_STATE();
-    case 56:
-      if (eof) ADVANCE(57);
+      if (lookahead == '{') ADVANCE(88);
+      if (lookahead == '~') ADVANCE(104);
       if (('\t' <= lookahead && lookahead <= '\f') ||
           lookahead == ' ' ||
-          lookahead == 8203 ||
-          lookahead == 8288 ||
-          lookahead == 65279) SKIP(56)
-      if (lookahead == '\r') SKIP(56)
+          lookahead == 0x200b ||
+          lookahead == 0x2060 ||
+          lookahead == 0xfeff) SKIP(53);
+      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(140);
+      if (set_contains(sym_identifier_character_set_1, 656, lookahead)) ADVANCE(166);
+      END_STATE();
+    case 54:
+      if (eof) ADVANCE(55);
+      if (lookahead == '\r') SKIP(54);
       if (lookahead == '#') ADVANCE(167);
-      if (lookahead == '(') ADVANCE(61);
-      if (lookahead == '*') ADVANCE(64);
-      if (lookahead == '+') ADVANCE(92);
-      if (lookahead == '-') ADVANCE(85);
-      if (lookahead == '.') ADVANCE(4);
-      if (lookahead == '0') ADVANCE(140);
-      if (lookahead == '@') ADVANCE(83);
-      if (lookahead == '[') ADVANCE(81);
-      if (lookahead == '\\') ADVANCE(26);
+      if (lookahead == '(') ADVANCE(59);
+      if (lookahead == '*') ADVANCE(62);
+      if (lookahead == '+') ADVANCE(90);
+      if (lookahead == '-') ADVANCE(83);
+      if (lookahead == '.') ADVANCE(15);
+      if (lookahead == '0') ADVANCE(139);
+      if (lookahead == '@') ADVANCE(81);
+      if (lookahead == '[') ADVANCE(79);
+      if (lookahead == '\\') ADVANCE(10);
       if (lookahead == 'e') ADVANCE(165);
-      if (lookahead == '{') ADVANCE(90);
-      if (lookahead == '~') ADVANCE(106);
-      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(139);
-      if (sym_identifier_character_set_2(lookahead)) ADVANCE(166);
+      if (lookahead == '{') ADVANCE(88);
+      if (lookahead == '~') ADVANCE(104);
+      if (('\t' <= lookahead && lookahead <= '\f') ||
+          lookahead == ' ' ||
+          lookahead == 0x200b ||
+          lookahead == 0x2060 ||
+          lookahead == 0xfeff) SKIP(54);
+      if (('1' <= lookahead && lookahead <= '9')) ADVANCE(140);
+      if (set_contains(sym_identifier_character_set_1, 656, lookahead)) ADVANCE(166);
       END_STATE();
-    case 57:
+    case 55:
       ACCEPT_TOKEN(ts_builtin_sym_end);
       END_STATE();
-    case 58:
+    case 56:
       ACCEPT_TOKEN(anon_sym_SEMI);
       END_STATE();
-    case 59:
+    case 57:
       ACCEPT_TOKEN(anon_sym_DOT);
       END_STATE();
-    case 60:
+    case 58:
       ACCEPT_TOKEN(anon_sym_DOT);
-      if (lookahead == '.') ADVANCE(5);
+      if (lookahead == '.') ADVANCE(16);
       if (('0' <= lookahead && lookahead <= '9')) ADVANCE(146);
       END_STATE();
-    case 61:
+    case 59:
       ACCEPT_TOKEN(anon_sym_LPAREN);
       END_STATE();
-    case 62:
+    case 60:
       ACCEPT_TOKEN(anon_sym_RPAREN);
       END_STATE();
-    case 63:
+    case 61:
       ACCEPT_TOKEN(anon_sym_COMMA);
       END_STATE();
+    case 62:
+      ACCEPT_TOKEN(anon_sym_STAR);
+      END_STATE();
+    case 63:
+      ACCEPT_TOKEN(anon_sym_STAR);
+      if (lookahead == '*') ADVANCE(76);
+      if (lookahead == '=') ADVANCE(118);
+      END_STATE();
     case 64:
       ACCEPT_TOKEN(anon_sym_STAR);
+      if (lookahead == '*') ADVANCE(75);
       END_STATE();
     case 65:
       ACCEPT_TOKEN(anon_sym_STAR);
-      if (lookahead == '*') ADVANCE(78);
-      if (lookahead == '=') ADVANCE(120);
+      if (lookahead == '*') ADVANCE(26);
+      if (lookahead == '=') ADVANCE(118);
       END_STATE();
     case 66:
-      ACCEPT_TOKEN(anon_sym_STAR);
-      if (lookahead == '*') ADVANCE(77);
+      ACCEPT_TOKEN(anon_sym_GT_GT);
       END_STATE();
     case 67:
-      ACCEPT_TOKEN(anon_sym_STAR);
-      if (lookahead == '*') ADVANCE(15);
-      if (lookahead == '=') ADVANCE(120);
+      ACCEPT_TOKEN(anon_sym_GT_GT);
+      if (lookahead == '=') ADVANCE(124);
       END_STATE();
     case 68:
-      ACCEPT_TOKEN(anon_sym_GT_GT);
+      ACCEPT_TOKEN(anon_sym_COLON_EQ);
       END_STATE();
     case 69:
-      ACCEPT_TOKEN(anon_sym_GT_GT);
-      if (lookahead == '=') ADVANCE(126);
+      ACCEPT_TOKEN(anon_sym_COLON);
       END_STATE();
     case 70:
-      ACCEPT_TOKEN(anon_sym_COLON_EQ);
+      ACCEPT_TOKEN(anon_sym_COLON);
+      if (lookahead == '=') ADVANCE(68);
       END_STATE();
     case 71:
-      ACCEPT_TOKEN(anon_sym_COLON);
+      ACCEPT_TOKEN(anon_sym_except);
+      if (lookahead == '*') ADVANCE(73);
+      if (set_contains(sym_identifier_character_set_2, 763, lookahead)) ADVANCE(166);
       END_STATE();
     case 72:
-      ACCEPT_TOKEN(anon_sym_COLON);
-      if (lookahead == '=') ADVANCE(70);
+      ACCEPT_TOKEN(anon_sym_except);
+      if (set_contains(sym_identifier_character_set_2, 763, lookahead)) ADVANCE(166);
       END_STATE();
     case 73:
-      ACCEPT_TOKEN(anon_sym_except);
-      if (lookahead == '*') ADVANCE(75);
-      if (sym_identifier_character_set_3(lookahead)) ADVANCE(166);
+      ACCEPT_TOKEN(anon_sym_except_STAR);
       END_STATE();
     case 74:
-      ACCEPT_TOKEN(anon_sym_except);
-      if (sym_identifier_character_set_3(lookahead)) ADVANCE(166);
+      ACCEPT_TOKEN(anon_sym_DASH_GT);
       END_STATE();
     case 75:
-      ACCEPT_TOKEN(anon_sym_except_STAR);
+      ACCEPT_TOKEN(anon_sym_STAR_STAR);
       END_STATE();
     case 76:
-      ACCEPT_TOKEN(anon_sym_DASH_GT);
+      ACCEPT_TOKEN(anon_sym_STAR_STAR);
+      if (lookahead == '=') ADVANCE(123);
       END_STATE();
     case 77:
-      ACCEPT_TOKEN(anon_sym_STAR_STAR);
+      ACCEPT_TOKEN(anon_sym_EQ);
       END_STATE();
     case 78:
-      ACCEPT_TOKEN(anon_sym_STAR_STAR);
-      if (lookahead == '=') ADVANCE(125);
+      ACCEPT_TOKEN(anon_sym_EQ);
+      if (lookahead == '=') ADVANCE(109);
       END_STATE();
     case 79:
-      ACCEPT_TOKEN(anon_sym_EQ);
+      ACCEPT_TOKEN(anon_sym_LBRACK);
       END_STATE();
     case 80:
-      ACCEPT_TOKEN(anon_sym_EQ);
-      if (lookahead == '=') ADVANCE(111);
+      ACCEPT_TOKEN(anon_sym_RBRACK);
       END_STATE();
     case 81:
-      ACCEPT_TOKEN(anon_sym_LBRACK);
+      ACCEPT_TOKEN(anon_sym_AT);
       END_STATE();
     case 82:
-      ACCEPT_TOKEN(anon_sym_RBRACK);
+      ACCEPT_TOKEN(anon_sym_AT);
+      if (lookahead == '=') ADVANCE(120);
       END_STATE();
     case 83:
-      ACCEPT_TOKEN(anon_sym_AT);
+      ACCEPT_TOKEN(anon_sym_DASH);
       END_STATE();
     case 84:
-      ACCEPT_TOKEN(anon_sym_AT);
-      if (lookahead == '=') ADVANCE(122);
+      ACCEPT_TOKEN(anon_sym_DASH);
+      if (lookahead == '=') ADVANCE(117);
       END_STATE();
     case 85:
       ACCEPT_TOKEN(anon_sym_DASH);
+      if (lookahead == '=') ADVANCE(117);
+      if (lookahead == '>') ADVANCE(74);
       END_STATE();
     case 86:
-      ACCEPT_TOKEN(anon_sym_DASH);
-      if (lookahead == '=') ADVANCE(119);
+      ACCEPT_TOKEN(anon_sym_PIPE);
       END_STATE();
     case 87:
-      ACCEPT_TOKEN(anon_sym_DASH);
-      if (lookahead == '=') ADVANCE(119);
-      if (lookahead == '>') ADVANCE(76);
+      ACCEPT_TOKEN(anon_sym_PIPE);
+      if (lookahead == '=') ADVANCE(128);
       END_STATE();
     case 88:
-      ACCEPT_TOKEN(anon_sym_PIPE);
+      ACCEPT_TOKEN(anon_sym_LBRACE);
       END_STATE();
     case 89:
-      ACCEPT_TOKEN(anon_sym_PIPE);
-      if (lookahead == '=') ADVANCE(130);
+      ACCEPT_TOKEN(anon_sym_RBRACE);
       END_STATE();
     case 90:
-      ACCEPT_TOKEN(anon_sym_LBRACE);
+      ACCEPT_TOKEN(anon_sym_PLUS);
       END_STATE();
     case 91:
-      ACCEPT_TOKEN(anon_sym_RBRACE);
+      ACCEPT_TOKEN(anon_sym_PLUS);
+      if (lookahead == '=') ADVANCE(116);
       END_STATE();
     case 92:
-      ACCEPT_TOKEN(anon_sym_PLUS);
+      ACCEPT_TOKEN(anon_sym_SLASH);
+      if (lookahead == '/') ADVANCE(97);
+      if (lookahead == '=') ADVANCE(119);
       END_STATE();
     case 93:
-      ACCEPT_TOKEN(anon_sym_PLUS);
-      if (lookahead == '=') ADVANCE(118);
+      ACCEPT_TOKEN(anon_sym_SLASH);
+      if (lookahead == '/') ADVANCE(96);
       END_STATE();
     case 94:
-      ACCEPT_TOKEN(anon_sym_SLASH);
-      if (lookahead == '/') ADVANCE(99);
-      if (lookahead == '=') ADVANCE(121);
+      ACCEPT_TOKEN(anon_sym_PERCENT);
       END_STATE();
     case 95:
-      ACCEPT_TOKEN(anon_sym_SLASH);
-      if (lookahead == '/') ADVANCE(98);
+      ACCEPT_TOKEN(anon_sym_PERCENT);
+      if (lookahead == '=') ADVANCE(122);
       END_STATE();
     case 96:
-      ACCEPT_TOKEN(anon_sym_PERCENT);
+      ACCEPT_TOKEN(anon_sym_SLASH_SLASH);
       END_STATE();
     case 97:
-      ACCEPT_TOKEN(anon_sym_PERCENT);
-      if (lookahead == '=') ADVANCE(124);
+      ACCEPT_TOKEN(anon_sym_SLASH_SLASH);
+      if (lookahead == '=') ADVANCE(121);
       END_STATE();
     case 98:
-      ACCEPT_TOKEN(anon_sym_SLASH_SLASH);
+      ACCEPT_TOKEN(anon_sym_AMP);
       END_STATE();
     case 99:
-      ACCEPT_TOKEN(anon_sym_SLASH_SLASH);
-      if (lookahead == '=') ADVANCE(123);
+      ACCEPT_TOKEN(anon_sym_AMP);
+      if (lookahead == '=') ADVANCE(126);
       END_STATE();
     case 100:
-      ACCEPT_TOKEN(anon_sym_AMP);
+      ACCEPT_TOKEN(anon_sym_CARET);
       END_STATE();
     case 101:
-      ACCEPT_TOKEN(anon_sym_AMP);
-      if (lookahead == '=') ADVANCE(128);
+      ACCEPT_TOKEN(anon_sym_CARET);
+      if (lookahead == '=') ADVANCE(127);
       END_STATE();
     case 102:
-      ACCEPT_TOKEN(anon_sym_CARET);
+      ACCEPT_TOKEN(anon_sym_LT_LT);
       END_STATE();
     case 103:
-      ACCEPT_TOKEN(anon_sym_CARET);
-      if (lookahead == '=') ADVANCE(129);
+      ACCEPT_TOKEN(anon_sym_LT_LT);
+      if (lookahead == '=') ADVANCE(125);
       END_STATE();
     case 104:
-      ACCEPT_TOKEN(anon_sym_LT_LT);
+      ACCEPT_TOKEN(anon_sym_TILDE);
       END_STATE();
     case 105:
-      ACCEPT_TOKEN(anon_sym_LT_LT);
-      if (lookahead == '=') ADVANCE(127);
+      ACCEPT_TOKEN(anon_sym_LT);
+      if (lookahead == '<') ADVANCE(103);
+      if (lookahead == '=') ADVANCE(108);
+      if (lookahead == '>') ADVANCE(115);
       END_STATE();
     case 106:
-      ACCEPT_TOKEN(anon_sym_TILDE);
+      ACCEPT_TOKEN(anon_sym_LT);
+      if (lookahead == '<') ADVANCE(102);
+      if (lookahead == '=') ADVANCE(108);
+      if (lookahead == '>') ADVANCE(115);
       END_STATE();
     case 107:
       ACCEPT_TOKEN(anon_sym_LT);
-      if (lookahead == '<') ADVANCE(105);
-      if (lookahead == '=') ADVANCE(110);
-      if (lookahead == '>') ADVANCE(117);
+      if (lookahead == '=') ADVANCE(108);
+      if (lookahead == '>') ADVANCE(115);
       END_STATE();
     case 108:
-      ACCEPT_TOKEN(anon_sym_LT);
-      if (lookahead == '<') ADVANCE(104);
-      if (lookahead == '=') ADVANCE(110);
-      if (lookahead == '>') ADVANCE(117);
+      ACCEPT_TOKEN(anon_sym_LT_EQ);
       END_STATE();
     case 109:
-      ACCEPT_TOKEN(anon_sym_LT);
-      if (lookahead == '=') ADVANCE(110);
-      if (lookahead == '>') ADVANCE(117);
+      ACCEPT_TOKEN(anon_sym_EQ_EQ);
       END_STATE();
     case 110:
-      ACCEPT_TOKEN(anon_sym_LT_EQ);
+      ACCEPT_TOKEN(anon_sym_BANG_EQ);
       END_STATE();
     case 111:
-      ACCEPT_TOKEN(anon_sym_EQ_EQ);
+      ACCEPT_TOKEN(anon_sym_GT_EQ);
       END_STATE();
     case 112:
-      ACCEPT_TOKEN(anon_sym_BANG_EQ);
+      ACCEPT_TOKEN(anon_sym_GT);
+      if (lookahead == '=') ADVANCE(111);
       END_STATE();
     case 113:
-      ACCEPT_TOKEN(anon_sym_GT_EQ);
+      ACCEPT_TOKEN(anon_sym_GT);
+      if (lookahead == '=') ADVANCE(111);
+      if (lookahead == '>') ADVANCE(67);
       END_STATE();
     case 114:
       ACCEPT_TOKEN(anon_sym_GT);
-      if (lookahead == '=') ADVANCE(113);
+      if (lookahead == '=') ADVANCE(111);
+      if (lookahead == '>') ADVANCE(66);
       END_STATE();
     case 115:
-      ACCEPT_TOKEN(anon_sym_GT);
-      if (lookahead == '=') ADVANCE(113);
-      if (lookahead == '>') ADVANCE(69);
+      ACCEPT_TOKEN(anon_sym_LT_GT);
       END_STATE();
     case 116:
-      ACCEPT_TOKEN(anon_sym_GT);
-      if (lookahead == '=') ADVANCE(113);
-      if (lookahead == '>') ADVANCE(68);
+      ACCEPT_TOKEN(anon_sym_PLUS_EQ);
       END_STATE();
     case 117:
-      ACCEPT_TOKEN(anon_sym_LT_GT);
+      ACCEPT_TOKEN(anon_sym_DASH_EQ);
       END_STATE();
     case 118:
-      ACCEPT_TOKEN(anon_sym_PLUS_EQ);
+      ACCEPT_TOKEN(anon_sym_STAR_EQ);
       END_STATE();
     case 119:
-      ACCEPT_TOKEN(anon_sym_DASH_EQ);
+      ACCEPT_TOKEN(anon_sym_SLASH_EQ);
       END_STATE();
     case 120:
-      ACCEPT_TOKEN(anon_sym_STAR_EQ);
+      ACCEPT_TOKEN(anon_sym_AT_EQ);
       END_STATE();
     case 121:
-      ACCEPT_TOKEN(anon_sym_SLASH_EQ);
+      ACCEPT_TOKEN(anon_sym_SLASH_SLASH_EQ);
       END_STATE();
     case 122:
-      ACCEPT_TOKEN(anon_sym_AT_EQ);
+      ACCEPT_TOKEN(anon_sym_PERCENT_EQ);
       END_STATE();
     case 123:
-      ACCEPT_TOKEN(anon_sym_SLASH_SLASH_EQ);
+      ACCEPT_TOKEN(anon_sym_STAR_STAR_EQ);
       END_STATE();
     case 124:
-      ACCEPT_TOKEN(anon_sym_PERCENT_EQ);
+      ACCEPT_TOKEN(anon_sym_GT_GT_EQ);
       END_STATE();
     case 125:
-      ACCEPT_TOKEN(anon_sym_STAR_STAR_EQ);
+      ACCEPT_TOKEN(anon_sym_LT_LT_EQ);
       END_STATE();
     case 126:
-      ACCEPT_TOKEN(anon_sym_GT_GT_EQ);
+      ACCEPT_TOKEN(anon_sym_AMP_EQ);
       END_STATE();
     case 127:
-      ACCEPT_TOKEN(anon_sym_LT_LT_EQ);
+      ACCEPT_TOKEN(anon_sym_CARET_EQ);
       END_STATE();
     case 128:
-      ACCEPT_TOKEN(anon_sym_AMP_EQ);
+      ACCEPT_TOKEN(anon_sym_PIPE_EQ);
       END_STATE();
     case 129:
-      ACCEPT_TOKEN(anon_sym_CARET_EQ);
+      ACCEPT_TOKEN(sym_ellipsis);
       END_STATE();
     case 130:
-      ACCEPT_TOKEN(anon_sym_PIPE_EQ);
+      ACCEPT_TOKEN(sym_escape_sequence);
       END_STATE();
     case 131:
-      ACCEPT_TOKEN(sym_ellipsis);
+      ACCEPT_TOKEN(sym_escape_sequence);
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(130);
       END_STATE();
     case 132:
       ACCEPT_TOKEN(sym_escape_sequence);
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(131);
       END_STATE();
     case 133:
       ACCEPT_TOKEN(sym__not_escape_sequence);
-      if (!eof && (lookahead == 0)) ADVANCE(168);
-      if (lookahead == '\n') ADVANCE(132);
-      if (lookahead == '\r') ADVANCE(2);
-      if (lookahead == 'N') ADVANCE(24);
-      if (lookahead == 'U') ADVANCE(51);
-      if (lookahead == 'u') ADVANCE(47);
-      if (lookahead == 'x') ADVANCE(45);
-      if (lookahead == '"' ||
-          lookahead == '\'' ||
-          lookahead == '\\' ||
-          lookahead == 'a' ||
-          lookahead == 'b' ||
-          lookahead == 'f' ||
-          lookahead == 'n' ||
-          lookahead == 'r' ||
-          ('t' <= lookahead && lookahead <= 'v')) ADVANCE(132);
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(42);
+      ADVANCE_MAP(
+        0, 168,
+        '\n', 130,
+        '\r', 2,
+        'N', 35,
+        'U', 49,
+        'u', 45,
+        'x', 43,
+        '"', 130,
+        '\'', 130,
+        '\\', 130,
+        'a', 130,
+        'b', 130,
+        'f', 130,
+        'n', 130,
+        'r', 130,
+        't', 130,
+        'v', 130,
+      );
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(132);
       END_STATE();
     case 134:
       ACCEPT_TOKEN(aux_sym_format_specifier_token1);
-      if (!eof && (lookahead == 0)) ADVANCE(136);
+      if ((!eof && lookahead == 00)) ADVANCE(136);
       if (lookahead == '\r') ADVANCE(136);
       if (lookahead != 0 &&
           lookahead != '\n' &&
@@ -9182,18 +6747,20 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
       END_STATE();
     case 135:
       ACCEPT_TOKEN(aux_sym_format_specifier_token1);
-      if (lookahead == '\r') ADVANCE(135);
-      if (lookahead == '#') ADVANCE(136);
-      if (lookahead == '\\') ADVANCE(134);
-      if (lookahead == '\t' ||
-          lookahead == 11 ||
-          lookahead == '\f' ||
-          lookahead == ' ' ||
-          lookahead == 8203 ||
-          lookahead == 8288 ||
-          lookahead == 65279) ADVANCE(135);
+      ADVANCE_MAP(
+        '\r', 135,
+        '#', 136,
+        '\\', 134,
+        '\t', 135,
+        0x0b, 135,
+        '\f', 135,
+        ' ', 135,
+        0x200b, 135,
+        0x2060, 135,
+        0xfeff, 135,
+      );
       if (lookahead != 0 &&
-          lookahead != '\n' &&
+          (lookahead < '\t' || '\r' < lookahead) &&
           lookahead != '{' &&
           lookahead != '}') ADVANCE(136);
       END_STATE();
@@ -9212,48 +6779,52 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
       END_STATE();
     case 139:
       ACCEPT_TOKEN(sym_integer);
-      if (lookahead == '.') ADVANCE(148);
-      if (lookahead == '_') ADVANCE(141);
-      if (lookahead == 'E' ||
-          lookahead == 'e') ADVANCE(27);
-      if (lookahead == 'J' ||
-          lookahead == 'L' ||
-          lookahead == 'j' ||
-          lookahead == 'l') ADVANCE(138);
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(139);
+      ADVANCE_MAP(
+        '.', 148,
+        '_', 141,
+        'B', 32,
+        'b', 32,
+        'E', 37,
+        'e', 37,
+        'O', 33,
+        'o', 33,
+        'X', 34,
+        'x', 34,
+        'J', 138,
+        'L', 138,
+        'j', 138,
+        'l', 138,
+      );
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(140);
       END_STATE();
     case 140:
       ACCEPT_TOKEN(sym_integer);
-      if (lookahead == '.') ADVANCE(148);
-      if (lookahead == 'B' ||
-          lookahead == 'b') ADVANCE(21);
-      if (lookahead == 'O' ||
-          lookahead == 'o') ADVANCE(22);
-      if (lookahead == 'X' ||
-          lookahead == 'x') ADVANCE(23);
-      if (lookahead == '_') ADVANCE(141);
-      if (lookahead == 'E' ||
-          lookahead == 'e') ADVANCE(27);
-      if (lookahead == 'J' ||
-          lookahead == 'L' ||
-          lookahead == 'j' ||
-          lookahead == 'l') ADVANCE(138);
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(139);
+      ADVANCE_MAP(
+        '.', 148,
+        '_', 141,
+        'E', 37,
+        'e', 37,
+        'J', 138,
+        'L', 138,
+        'j', 138,
+        'l', 138,
+      );
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(140);
       END_STATE();
     case 141:
       ACCEPT_TOKEN(sym_integer);
       if (lookahead == '.') ADVANCE(148);
       if (lookahead == 'E' ||
-          lookahead == 'e') ADVANCE(27);
+          lookahead == 'e') ADVANCE(37);
       if (lookahead == 'J' ||
           lookahead == 'L' ||
           lookahead == 'j' ||
           lookahead == 'l') ADVANCE(138);
-      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(139);
+      if (('0' <= lookahead && lookahead <= '9')) ADVANCE(140);
       END_STATE();
     case 142:
       ACCEPT_TOKEN(sym_integer);
-      if (lookahead == '_') ADVANCE(28);
+      if (lookahead == '_') ADVANCE(38);
       if (lookahead == 'L' ||
           lookahead == 'l') ADVANCE(138);
       if (lookahead == '0' ||
@@ -9268,7 +6839,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
       END_STATE();
     case 144:
       ACCEPT_TOKEN(sym_integer);
-      if (lookahead == '_') ADVANCE(44);
+      if (lookahead == '_') ADVANCE(42);
       if (lookahead == 'L' ||
           lookahead == 'l') ADVANCE(138);
       if (('0' <= lookahead && lookahead <= '9') ||
@@ -9282,7 +6853,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
       ACCEPT_TOKEN(sym_float);
       if (lookahead == '_') ADVANCE(148);
       if (lookahead == 'E' ||
-          lookahead == 'e') ADVANCE(27);
+          lookahead == 'e') ADVANCE(37);
       if (lookahead == 'J' ||
           lookahead == 'j') ADVANCE(145);
       if (('0' <= lookahead && lookahead <= '9')) ADVANCE(146);
@@ -9297,7 +6868,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
     case 148:
       ACCEPT_TOKEN(sym_float);
       if (lookahead == 'E' ||
-          lookahead == 'e') ADVANCE(27);
+          lookahead == 'e') ADVANCE(37);
       if (lookahead == 'J' ||
           lookahead == 'j') ADVANCE(145);
       if (('0' <= lookahead && lookahead <= '9')) ADVANCE(146);
@@ -9310,87 +6881,87 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) {
       END_STATE();
     case 150:
       ACCEPT_TOKEN(sym_identifier);
-      if (lookahead == '*') ADVANCE(75);
-      if (sym_identifier_character_set_3(lookahead)) ADVANCE(166);
+      if (lookahead == '*') ADVANCE(73);
+      if (set_contains(sym_identifier_character_set_2, 763, lookahead)) ADVANCE(166);
       END_STATE();
     case 151:
       ACCEPT_TOKEN(sym_identifier);
       if (lookahead == 'c') ADVANCE(154);
-      if (sym_identifier_character_set_3(lookahead)) ADVANCE(166);
+      if (set_contains(sym_identifier_character_set_2, 763, lookahead)) ADVANCE(166);
       END_STATE();
     case 152:
       ACCEPT_TOKEN(sym_identifier);
       if (lookahead == 'c') ADVANCE(155);
-      if (sym_identifier_character_set_3(lookahead)) ADVANCE(166);
+      if (set_contains(sym_identifier_character_set_2, 763, lookahead)) ADVANCE(166);
       END_STATE();
     case 153:
       ACCEPT_TOKEN(sym_identifier);
       if (lookahead == 'c') ADVANCE(156);
-      if (sym_identifier_character_set_3(lookahead)) ADVANCE(166);
+      if (set_contains(sym_identifier_character_set_2, 763, lookahead)) ADVANCE(166);
       END_STATE();
     case 154:
       ACCEPT_TOKEN(sym_identifier);
       if (lookahead == 'e') ADVANCE(157);
-      if (sym_identifier_character_set_3(lookahead)) ADVANCE(166);
+      if (set_contains(sym_identifier_character_set_2, 763, lookahead)) ADVANCE(166);
       END_STATE();
     case 155:
       ACCEPT_TOKEN(sym_identifier);
       if (lookahead == 'e') ADVANCE(158);
-      if (sym_identifier_character_set_3(lookahead)) ADVANCE(166);
+      if (set_contains(sym_identifier_character_set_2, 763, lookahead)) ADVANCE(166);
       END_STATE();
     case 156:
       ACCEPT_TOKEN(sym_identifier);
       if (lookahead == 'e') ADVANCE(159);
-      if (sym_identifier_character_set_3(lookahead)) ADVANCE(166);
+      if (set_contains(sym_identifier_character_set_2, 763, lookahead)) ADVANCE(166);
       END_STATE();
     case 157:
       ACCEPT_TOKEN(sym_identifier);
       if (lookahead == 'p') ADVANCE(160);
-      if (sym_identifier_character_set_3(lookahead)) ADVANCE(166);
+      if (set_contains(sym_identifier_character_set_2, 763, lookahead)) ADVANCE(166);
       END_STATE();
     case 158:
       ACCEPT_TOKEN(sym_identifier);
       if (lookahead == 'p') ADVANCE(161);
-      if (sym_identifier_character_set_3(lookahead)) ADVANCE(166);
+      if (set_contains(sym_identifier_character_set_2, 763, lookahead)) ADVANCE(166);
       END_STATE();
     case 159:
       ACCEPT_TOKEN(sym_identifier);
       if (lookahead == 'p') ADVANCE(162);
-      if (sym_identifier_character_set_3(lookahead)) ADVANCE(166);
+      if (set_contains(sym_identifier_character_set_2, 763, lookahead)) ADVANCE(166);
       END_STATE();
     case 160:
       ACCEPT_TOKEN(sym_identifier);
-      if (lookahead == 't') ADVANCE(73);
-      if (sym_identifier_character_set_3(lookahead)) ADVANCE(166);
+      if (lookahead == 't') ADVANCE(71);
+      if (set_contains(sym_identifier_character_set_2, 763, lookahead)) ADVANCE(166);
       END_STATE();
     case 161:
       ACCEPT_TOKEN(sym_identifier);
       if (lookahead == 't') ADVANCE(150);
-      if (sym_identifier_character_set_3(lookahead)) ADVANCE(166);
+      if (set_contains(sym_identifier_character_set_2, 763, lookahead)) ADVANCE(166);
       END_STATE();
     case 162:
       ACCEPT_TOKEN(sym_identifier);
-      if (lookahead == 't') ADVANCE(74);
-      if (sym_identifier_character_set_3(lookahead)) ADVANCE(166);
+      if (lookahead == 't') ADVANCE(72);
+      if (set_contains(sym_identifier_character_set_2, 763, lookahead)) ADVANCE(166);
       END_STATE();
     case 163:
       ACCEPT_TOKEN(sym_identifier);
       if (lookahead == 'x') ADVANCE(151);
-      if (sym_identifier_character_set_3(lookahead)) ADVANCE(166);
+      if (set_contains(sym_identifier_character_set_2, 763, lookahead)) ADVANCE(166);
       END_STATE();
     case 164:
       ACCEPT_TOKEN(sym_identifier);
       if (lookahead == 'x') ADVANCE(152);
-      if (sym_identifier_character_set_3(lookahead)) ADVANCE(166);
+      if (set_contains(sym_identifier_character_set_2, 763, lookahead)) ADVANCE(166);
       END_STATE();
     case 165:
       ACCEPT_TOKEN(sym_identifier);
       if (lookahead == 'x') ADVANCE(153);
-      if (sym_identifier_character_set_3(lookahead)) ADVANCE(166);
+      if (set_contains(sym_identifier_character_set_2, 763, lookahead)) ADVANCE(166);
       END_STATE();
     case 166:
       ACCEPT_TOKEN(sym_identifier);
-      if (sym_identifier_character_set_3(lookahead)) ADVANCE(166);
+      if (set_contains(sym_identifier_character_set_2, 763, lookahead)) ADVANCE(166);
       END_STATE();
     case 167:
       ACCEPT_TOKEN(sym_comment);
@@ -9410,12 +6981,7 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) {
   eof = lexer->eof(lexer);
   switch (state) {
     case 0:
-      if (('\t' <= lookahead && lookahead <= '\f') ||
-          lookahead == ' ' ||
-          lookahead == 8203 ||
-          lookahead == 8288 ||
-          lookahead == 65279) SKIP(0)
-      if (lookahead == '\r') SKIP(0)
+      if (lookahead == '\r') SKIP(0);
       if (lookahead == 'F') ADVANCE(1);
       if (lookahead == 'N') ADVANCE(2);
       if (lookahead == 'T') ADVANCE(3);
@@ -9437,6 +7003,11 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) {
       if (lookahead == 't') ADVANCE(19);
       if (lookahead == 'w') ADVANCE(20);
       if (lookahead == 'y') ADVANCE(21);
+      if (('\t' <= lookahead && lookahead <= '\f') ||
+          lookahead == ' ' ||
+          lookahead == 0x200b ||
+          lookahead == 0x2060 ||
+          lookahead == 0xfeff) SKIP(0);
       END_STATE();
     case 1:
       if (lookahead == 'a') ADVANCE(22);
@@ -9936,2836 +7507,2836 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) {
 
 static const TSLexMode ts_lex_modes[STATE_COUNT] = {
   [0] = {.lex_state = 0, .external_lex_state = 1},
-  [1] = {.lex_state = 54, .external_lex_state = 2},
-  [2] = {.lex_state = 54, .external_lex_state = 3},
-  [3] = {.lex_state = 54, .external_lex_state = 3},
-  [4] = {.lex_state = 54, .external_lex_state = 3},
-  [5] = {.lex_state = 54, .external_lex_state = 3},
-  [6] = {.lex_state = 54, .external_lex_state = 3},
-  [7] = {.lex_state = 54, .external_lex_state = 3},
-  [8] = {.lex_state = 54, .external_lex_state = 3},
-  [9] = {.lex_state = 54, .external_lex_state = 3},
-  [10] = {.lex_state = 54, .external_lex_state = 3},
-  [11] = {.lex_state = 54, .external_lex_state = 3},
-  [12] = {.lex_state = 54, .external_lex_state = 3},
-  [13] = {.lex_state = 54, .external_lex_state = 3},
-  [14] = {.lex_state = 54, .external_lex_state = 3},
-  [15] = {.lex_state = 54, .external_lex_state = 3},
-  [16] = {.lex_state = 54, .external_lex_state = 3},
-  [17] = {.lex_state = 54, .external_lex_state = 3},
-  [18] = {.lex_state = 54, .external_lex_state = 3},
-  [19] = {.lex_state = 54, .external_lex_state = 3},
-  [20] = {.lex_state = 54, .external_lex_state = 3},
-  [21] = {.lex_state = 54, .external_lex_state = 3},
-  [22] = {.lex_state = 54, .external_lex_state = 3},
-  [23] = {.lex_state = 54, .external_lex_state = 3},
-  [24] = {.lex_state = 54, .external_lex_state = 3},
-  [25] = {.lex_state = 54, .external_lex_state = 3},
-  [26] = {.lex_state = 54, .external_lex_state = 3},
-  [27] = {.lex_state = 54, .external_lex_state = 3},
-  [28] = {.lex_state = 54, .external_lex_state = 3},
-  [29] = {.lex_state = 54, .external_lex_state = 3},
-  [30] = {.lex_state = 54, .external_lex_state = 3},
-  [31] = {.lex_state = 54, .external_lex_state = 3},
-  [32] = {.lex_state = 54, .external_lex_state = 3},
-  [33] = {.lex_state = 54, .external_lex_state = 3},
-  [34] = {.lex_state = 54, .external_lex_state = 3},
-  [35] = {.lex_state = 54, .external_lex_state = 3},
-  [36] = {.lex_state = 54, .external_lex_state = 3},
-  [37] = {.lex_state = 54, .external_lex_state = 3},
-  [38] = {.lex_state = 54, .external_lex_state = 3},
-  [39] = {.lex_state = 54, .external_lex_state = 3},
-  [40] = {.lex_state = 54, .external_lex_state = 3},
-  [41] = {.lex_state = 54, .external_lex_state = 3},
-  [42] = {.lex_state = 54, .external_lex_state = 3},
-  [43] = {.lex_state = 54, .external_lex_state = 3},
-  [44] = {.lex_state = 54, .external_lex_state = 3},
-  [45] = {.lex_state = 54, .external_lex_state = 3},
-  [46] = {.lex_state = 54, .external_lex_state = 3},
-  [47] = {.lex_state = 54, .external_lex_state = 3},
-  [48] = {.lex_state = 54, .external_lex_state = 3},
-  [49] = {.lex_state = 54, .external_lex_state = 3},
-  [50] = {.lex_state = 54, .external_lex_state = 3},
-  [51] = {.lex_state = 54, .external_lex_state = 3},
-  [52] = {.lex_state = 54, .external_lex_state = 3},
-  [53] = {.lex_state = 54, .external_lex_state = 3},
-  [54] = {.lex_state = 54, .external_lex_state = 3},
-  [55] = {.lex_state = 54, .external_lex_state = 3},
-  [56] = {.lex_state = 54, .external_lex_state = 3},
-  [57] = {.lex_state = 54, .external_lex_state = 3},
-  [58] = {.lex_state = 54, .external_lex_state = 3},
-  [59] = {.lex_state = 54, .external_lex_state = 3},
-  [60] = {.lex_state = 54, .external_lex_state = 3},
-  [61] = {.lex_state = 54, .external_lex_state = 3},
-  [62] = {.lex_state = 54, .external_lex_state = 3},
-  [63] = {.lex_state = 54, .external_lex_state = 3},
-  [64] = {.lex_state = 54, .external_lex_state = 2},
-  [65] = {.lex_state = 54, .external_lex_state = 3},
-  [66] = {.lex_state = 54, .external_lex_state = 3},
-  [67] = {.lex_state = 54, .external_lex_state = 3},
-  [68] = {.lex_state = 54, .external_lex_state = 3},
-  [69] = {.lex_state = 54, .external_lex_state = 3},
-  [70] = {.lex_state = 54, .external_lex_state = 2},
-  [71] = {.lex_state = 54, .external_lex_state = 3},
-  [72] = {.lex_state = 54, .external_lex_state = 3},
-  [73] = {.lex_state = 29, .external_lex_state = 4},
-  [74] = {.lex_state = 29, .external_lex_state = 4},
-  [75] = {.lex_state = 30, .external_lex_state = 5},
-  [76] = {.lex_state = 30, .external_lex_state = 5},
-  [77] = {.lex_state = 30, .external_lex_state = 5},
-  [78] = {.lex_state = 30, .external_lex_state = 5},
-  [79] = {.lex_state = 30, .external_lex_state = 5},
-  [80] = {.lex_state = 30, .external_lex_state = 5},
-  [81] = {.lex_state = 30, .external_lex_state = 5},
-  [82] = {.lex_state = 30, .external_lex_state = 5},
-  [83] = {.lex_state = 29, .external_lex_state = 4},
-  [84] = {.lex_state = 29, .external_lex_state = 4},
-  [85] = {.lex_state = 29, .external_lex_state = 4},
-  [86] = {.lex_state = 29, .external_lex_state = 4},
-  [87] = {.lex_state = 54, .external_lex_state = 5},
-  [88] = {.lex_state = 54, .external_lex_state = 5},
-  [89] = {.lex_state = 54, .external_lex_state = 5},
-  [90] = {.lex_state = 54, .external_lex_state = 5},
-  [91] = {.lex_state = 54, .external_lex_state = 5},
-  [92] = {.lex_state = 54, .external_lex_state = 5},
-  [93] = {.lex_state = 54, .external_lex_state = 5},
-  [94] = {.lex_state = 54, .external_lex_state = 5},
-  [95] = {.lex_state = 54, .external_lex_state = 5},
-  [96] = {.lex_state = 54, .external_lex_state = 5},
-  [97] = {.lex_state = 54, .external_lex_state = 5},
-  [98] = {.lex_state = 54, .external_lex_state = 5},
-  [99] = {.lex_state = 54, .external_lex_state = 5},
-  [100] = {.lex_state = 54, .external_lex_state = 5},
-  [101] = {.lex_state = 54, .external_lex_state = 5},
-  [102] = {.lex_state = 54, .external_lex_state = 5},
-  [103] = {.lex_state = 54, .external_lex_state = 5},
-  [104] = {.lex_state = 54, .external_lex_state = 5},
-  [105] = {.lex_state = 54, .external_lex_state = 5},
-  [106] = {.lex_state = 54, .external_lex_state = 5},
-  [107] = {.lex_state = 54, .external_lex_state = 5},
-  [108] = {.lex_state = 54, .external_lex_state = 5},
-  [109] = {.lex_state = 54, .external_lex_state = 5},
-  [110] = {.lex_state = 54, .external_lex_state = 5},
-  [111] = {.lex_state = 54, .external_lex_state = 5},
-  [112] = {.lex_state = 54, .external_lex_state = 5},
-  [113] = {.lex_state = 54, .external_lex_state = 5},
-  [114] = {.lex_state = 54, .external_lex_state = 5},
-  [115] = {.lex_state = 54, .external_lex_state = 5},
-  [116] = {.lex_state = 54, .external_lex_state = 5},
-  [117] = {.lex_state = 54, .external_lex_state = 5},
-  [118] = {.lex_state = 54, .external_lex_state = 5},
-  [119] = {.lex_state = 54, .external_lex_state = 5},
-  [120] = {.lex_state = 54, .external_lex_state = 5},
-  [121] = {.lex_state = 54, .external_lex_state = 5},
-  [122] = {.lex_state = 54, .external_lex_state = 5},
-  [123] = {.lex_state = 54, .external_lex_state = 5},
-  [124] = {.lex_state = 54, .external_lex_state = 5},
-  [125] = {.lex_state = 54, .external_lex_state = 5},
-  [126] = {.lex_state = 54, .external_lex_state = 5},
-  [127] = {.lex_state = 54, .external_lex_state = 5},
-  [128] = {.lex_state = 54, .external_lex_state = 5},
-  [129] = {.lex_state = 54, .external_lex_state = 5},
-  [130] = {.lex_state = 54, .external_lex_state = 5},
-  [131] = {.lex_state = 54, .external_lex_state = 5},
-  [132] = {.lex_state = 54, .external_lex_state = 5},
-  [133] = {.lex_state = 54, .external_lex_state = 5},
-  [134] = {.lex_state = 54, .external_lex_state = 5},
-  [135] = {.lex_state = 54, .external_lex_state = 5},
-  [136] = {.lex_state = 54, .external_lex_state = 5},
-  [137] = {.lex_state = 54, .external_lex_state = 4},
-  [138] = {.lex_state = 54, .external_lex_state = 4},
-  [139] = {.lex_state = 54, .external_lex_state = 4},
-  [140] = {.lex_state = 54, .external_lex_state = 4},
-  [141] = {.lex_state = 54, .external_lex_state = 4},
-  [142] = {.lex_state = 54, .external_lex_state = 4},
-  [143] = {.lex_state = 54, .external_lex_state = 4},
-  [144] = {.lex_state = 54, .external_lex_state = 4},
-  [145] = {.lex_state = 54, .external_lex_state = 4},
-  [146] = {.lex_state = 54, .external_lex_state = 4},
-  [147] = {.lex_state = 54, .external_lex_state = 4},
-  [148] = {.lex_state = 54, .external_lex_state = 4},
-  [149] = {.lex_state = 54, .external_lex_state = 4},
-  [150] = {.lex_state = 54, .external_lex_state = 4},
-  [151] = {.lex_state = 54, .external_lex_state = 4},
-  [152] = {.lex_state = 54, .external_lex_state = 4},
-  [153] = {.lex_state = 54, .external_lex_state = 2},
-  [154] = {.lex_state = 29, .external_lex_state = 4},
-  [155] = {.lex_state = 29, .external_lex_state = 4},
-  [156] = {.lex_state = 35, .external_lex_state = 4},
-  [157] = {.lex_state = 30, .external_lex_state = 4},
-  [158] = {.lex_state = 36, .external_lex_state = 4},
-  [159] = {.lex_state = 30, .external_lex_state = 6},
-  [160] = {.lex_state = 30, .external_lex_state = 6},
-  [161] = {.lex_state = 36, .external_lex_state = 4},
-  [162] = {.lex_state = 36, .external_lex_state = 6},
-  [163] = {.lex_state = 30, .external_lex_state = 6},
-  [164] = {.lex_state = 36, .external_lex_state = 7},
-  [165] = {.lex_state = 30, .external_lex_state = 6},
-  [166] = {.lex_state = 30, .external_lex_state = 7},
-  [167] = {.lex_state = 30, .external_lex_state = 2},
-  [168] = {.lex_state = 36, .external_lex_state = 6},
-  [169] = {.lex_state = 30, .external_lex_state = 7},
-  [170] = {.lex_state = 30, .external_lex_state = 8},
-  [171] = {.lex_state = 30, .external_lex_state = 7},
-  [172] = {.lex_state = 30, .external_lex_state = 8},
-  [173] = {.lex_state = 30, .external_lex_state = 8},
-  [174] = {.lex_state = 30, .external_lex_state = 7},
-  [175] = {.lex_state = 36, .external_lex_state = 7},
-  [176] = {.lex_state = 35, .external_lex_state = 4},
-  [177] = {.lex_state = 36, .external_lex_state = 2},
-  [178] = {.lex_state = 36, .external_lex_state = 6},
-  [179] = {.lex_state = 30, .external_lex_state = 8},
-  [180] = {.lex_state = 36, .external_lex_state = 8},
-  [181] = {.lex_state = 36, .external_lex_state = 2},
-  [182] = {.lex_state = 30, .external_lex_state = 7},
-  [183] = {.lex_state = 30, .external_lex_state = 7},
-  [184] = {.lex_state = 36, .external_lex_state = 8},
-  [185] = {.lex_state = 30, .external_lex_state = 7},
-  [186] = {.lex_state = 30, .external_lex_state = 8},
-  [187] = {.lex_state = 35, .external_lex_state = 2},
-  [188] = {.lex_state = 35, .external_lex_state = 2},
-  [189] = {.lex_state = 54, .external_lex_state = 8},
-  [190] = {.lex_state = 54, .external_lex_state = 7},
-  [191] = {.lex_state = 54, .external_lex_state = 7},
-  [192] = {.lex_state = 54, .external_lex_state = 2},
-  [193] = {.lex_state = 54, .external_lex_state = 7},
-  [194] = {.lex_state = 54, .external_lex_state = 8},
-  [195] = {.lex_state = 30, .external_lex_state = 6},
-  [196] = {.lex_state = 54, .external_lex_state = 8},
-  [197] = {.lex_state = 30, .external_lex_state = 6},
-  [198] = {.lex_state = 30, .external_lex_state = 6},
-  [199] = {.lex_state = 54, .external_lex_state = 8},
-  [200] = {.lex_state = 30, .external_lex_state = 6},
-  [201] = {.lex_state = 54, .external_lex_state = 7},
-  [202] = {.lex_state = 54, .external_lex_state = 8},
-  [203] = {.lex_state = 54, .external_lex_state = 8},
-  [204] = {.lex_state = 30, .external_lex_state = 6},
-  [205] = {.lex_state = 30, .external_lex_state = 6},
-  [206] = {.lex_state = 54, .external_lex_state = 8},
-  [207] = {.lex_state = 54, .external_lex_state = 7},
-  [208] = {.lex_state = 54, .external_lex_state = 7},
-  [209] = {.lex_state = 54, .external_lex_state = 8},
-  [210] = {.lex_state = 54, .external_lex_state = 7},
-  [211] = {.lex_state = 54, .external_lex_state = 8},
-  [212] = {.lex_state = 30, .external_lex_state = 6},
-  [213] = {.lex_state = 54, .external_lex_state = 7},
-  [214] = {.lex_state = 54, .external_lex_state = 8},
-  [215] = {.lex_state = 54, .external_lex_state = 7},
-  [216] = {.lex_state = 54, .external_lex_state = 2},
-  [217] = {.lex_state = 54, .external_lex_state = 7},
-  [218] = {.lex_state = 30, .external_lex_state = 6},
-  [219] = {.lex_state = 54, .external_lex_state = 8},
-  [220] = {.lex_state = 54, .external_lex_state = 7},
-  [221] = {.lex_state = 54, .external_lex_state = 2},
-  [222] = {.lex_state = 31, .external_lex_state = 4},
-  [223] = {.lex_state = 31, .external_lex_state = 4},
-  [224] = {.lex_state = 30, .external_lex_state = 8},
-  [225] = {.lex_state = 30, .external_lex_state = 8},
-  [226] = {.lex_state = 30, .external_lex_state = 8},
-  [227] = {.lex_state = 54, .external_lex_state = 2},
-  [228] = {.lex_state = 54, .external_lex_state = 2},
-  [229] = {.lex_state = 30, .external_lex_state = 8},
-  [230] = {.lex_state = 30, .external_lex_state = 8},
-  [231] = {.lex_state = 30, .external_lex_state = 8},
-  [232] = {.lex_state = 30, .external_lex_state = 8},
-  [233] = {.lex_state = 30, .external_lex_state = 8},
-  [234] = {.lex_state = 30, .external_lex_state = 2},
-  [235] = {.lex_state = 30, .external_lex_state = 2},
-  [236] = {.lex_state = 30, .external_lex_state = 7},
-  [237] = {.lex_state = 30, .external_lex_state = 2},
-  [238] = {.lex_state = 30, .external_lex_state = 7},
-  [239] = {.lex_state = 30, .external_lex_state = 2},
-  [240] = {.lex_state = 30, .external_lex_state = 7},
-  [241] = {.lex_state = 30, .external_lex_state = 2},
-  [242] = {.lex_state = 30, .external_lex_state = 2},
-  [243] = {.lex_state = 30, .external_lex_state = 2},
-  [244] = {.lex_state = 30, .external_lex_state = 2},
-  [245] = {.lex_state = 30, .external_lex_state = 2},
-  [246] = {.lex_state = 30, .external_lex_state = 2},
-  [247] = {.lex_state = 30, .external_lex_state = 7},
-  [248] = {.lex_state = 30, .external_lex_state = 7},
-  [249] = {.lex_state = 30, .external_lex_state = 7},
-  [250] = {.lex_state = 30, .external_lex_state = 7},
-  [251] = {.lex_state = 31, .external_lex_state = 2},
-  [252] = {.lex_state = 30, .external_lex_state = 2},
-  [253] = {.lex_state = 54, .external_lex_state = 6},
-  [254] = {.lex_state = 31, .external_lex_state = 2},
-  [255] = {.lex_state = 30, .external_lex_state = 2},
-  [256] = {.lex_state = 54, .external_lex_state = 7},
-  [257] = {.lex_state = 30, .external_lex_state = 7},
-  [258] = {.lex_state = 30, .external_lex_state = 2},
-  [259] = {.lex_state = 30, .external_lex_state = 2},
-  [260] = {.lex_state = 30, .external_lex_state = 2},
-  [261] = {.lex_state = 30, .external_lex_state = 2},
-  [262] = {.lex_state = 30, .external_lex_state = 2},
-  [263] = {.lex_state = 30, .external_lex_state = 2},
-  [264] = {.lex_state = 30, .external_lex_state = 2},
-  [265] = {.lex_state = 30, .external_lex_state = 2},
-  [266] = {.lex_state = 30, .external_lex_state = 2},
-  [267] = {.lex_state = 30, .external_lex_state = 2},
-  [268] = {.lex_state = 30, .external_lex_state = 2},
-  [269] = {.lex_state = 30, .external_lex_state = 2},
-  [270] = {.lex_state = 30, .external_lex_state = 2},
-  [271] = {.lex_state = 30, .external_lex_state = 7},
-  [272] = {.lex_state = 30, .external_lex_state = 7},
-  [273] = {.lex_state = 30, .external_lex_state = 7},
-  [274] = {.lex_state = 30, .external_lex_state = 7},
-  [275] = {.lex_state = 30, .external_lex_state = 7},
-  [276] = {.lex_state = 30, .external_lex_state = 7},
-  [277] = {.lex_state = 54, .external_lex_state = 8},
-  [278] = {.lex_state = 54, .external_lex_state = 7},
-  [279] = {.lex_state = 54, .external_lex_state = 7},
-  [280] = {.lex_state = 54, .external_lex_state = 7},
-  [281] = {.lex_state = 30, .external_lex_state = 7},
-  [282] = {.lex_state = 30, .external_lex_state = 7},
-  [283] = {.lex_state = 30, .external_lex_state = 7},
-  [284] = {.lex_state = 30, .external_lex_state = 7},
-  [285] = {.lex_state = 30, .external_lex_state = 7},
-  [286] = {.lex_state = 54, .external_lex_state = 8},
-  [287] = {.lex_state = 30, .external_lex_state = 7},
-  [288] = {.lex_state = 54, .external_lex_state = 7},
-  [289] = {.lex_state = 30, .external_lex_state = 7},
-  [290] = {.lex_state = 54, .external_lex_state = 8},
-  [291] = {.lex_state = 30, .external_lex_state = 7},
-  [292] = {.lex_state = 54, .external_lex_state = 7},
-  [293] = {.lex_state = 54, .external_lex_state = 7},
-  [294] = {.lex_state = 54, .external_lex_state = 8},
-  [295] = {.lex_state = 30, .external_lex_state = 7},
-  [296] = {.lex_state = 54, .external_lex_state = 7},
-  [297] = {.lex_state = 30, .external_lex_state = 7},
-  [298] = {.lex_state = 54, .external_lex_state = 7},
-  [299] = {.lex_state = 54, .external_lex_state = 8},
-  [300] = {.lex_state = 54, .external_lex_state = 7},
-  [301] = {.lex_state = 30, .external_lex_state = 7},
-  [302] = {.lex_state = 30, .external_lex_state = 7},
-  [303] = {.lex_state = 30, .external_lex_state = 7},
-  [304] = {.lex_state = 30, .external_lex_state = 7},
-  [305] = {.lex_state = 30, .external_lex_state = 7},
-  [306] = {.lex_state = 30, .external_lex_state = 7},
-  [307] = {.lex_state = 54, .external_lex_state = 7},
-  [308] = {.lex_state = 30, .external_lex_state = 7},
-  [309] = {.lex_state = 30, .external_lex_state = 7},
-  [310] = {.lex_state = 30, .external_lex_state = 7},
-  [311] = {.lex_state = 30, .external_lex_state = 7},
-  [312] = {.lex_state = 30, .external_lex_state = 7},
-  [313] = {.lex_state = 54, .external_lex_state = 7},
-  [314] = {.lex_state = 30, .external_lex_state = 7},
-  [315] = {.lex_state = 30, .external_lex_state = 7},
-  [316] = {.lex_state = 54, .external_lex_state = 7},
-  [317] = {.lex_state = 54, .external_lex_state = 8},
-  [318] = {.lex_state = 54, .external_lex_state = 8},
-  [319] = {.lex_state = 30, .external_lex_state = 7},
-  [320] = {.lex_state = 54, .external_lex_state = 8},
-  [321] = {.lex_state = 30, .external_lex_state = 7},
-  [322] = {.lex_state = 30, .external_lex_state = 7},
-  [323] = {.lex_state = 54, .external_lex_state = 7},
-  [324] = {.lex_state = 54, .external_lex_state = 7},
-  [325] = {.lex_state = 30, .external_lex_state = 7},
-  [326] = {.lex_state = 54, .external_lex_state = 8},
-  [327] = {.lex_state = 54, .external_lex_state = 6},
-  [328] = {.lex_state = 36, .external_lex_state = 6},
-  [329] = {.lex_state = 30, .external_lex_state = 2},
-  [330] = {.lex_state = 54, .external_lex_state = 7},
-  [331] = {.lex_state = 54, .external_lex_state = 7},
-  [332] = {.lex_state = 54, .external_lex_state = 7},
-  [333] = {.lex_state = 54, .external_lex_state = 7},
-  [334] = {.lex_state = 54, .external_lex_state = 6},
-  [335] = {.lex_state = 54, .external_lex_state = 6},
-  [336] = {.lex_state = 54, .external_lex_state = 6},
-  [337] = {.lex_state = 54, .external_lex_state = 6},
-  [338] = {.lex_state = 54, .external_lex_state = 6},
-  [339] = {.lex_state = 54, .external_lex_state = 7},
-  [340] = {.lex_state = 54, .external_lex_state = 8},
-  [341] = {.lex_state = 54, .external_lex_state = 8},
-  [342] = {.lex_state = 54, .external_lex_state = 7},
-  [343] = {.lex_state = 54, .external_lex_state = 6},
-  [344] = {.lex_state = 54, .external_lex_state = 8},
-  [345] = {.lex_state = 54, .external_lex_state = 8},
-  [346] = {.lex_state = 54, .external_lex_state = 6},
-  [347] = {.lex_state = 54, .external_lex_state = 8},
-  [348] = {.lex_state = 30, .external_lex_state = 6},
-  [349] = {.lex_state = 30, .external_lex_state = 6},
-  [350] = {.lex_state = 54, .external_lex_state = 4},
-  [351] = {.lex_state = 54, .external_lex_state = 7},
-  [352] = {.lex_state = 30, .external_lex_state = 6},
-  [353] = {.lex_state = 54, .external_lex_state = 4},
-  [354] = {.lex_state = 30, .external_lex_state = 6},
-  [355] = {.lex_state = 30, .external_lex_state = 6},
-  [356] = {.lex_state = 54, .external_lex_state = 2},
-  [357] = {.lex_state = 30, .external_lex_state = 6},
-  [358] = {.lex_state = 30, .external_lex_state = 6},
-  [359] = {.lex_state = 30, .external_lex_state = 6},
-  [360] = {.lex_state = 30, .external_lex_state = 6},
-  [361] = {.lex_state = 30, .external_lex_state = 6},
-  [362] = {.lex_state = 30, .external_lex_state = 6},
-  [363] = {.lex_state = 30, .external_lex_state = 6},
-  [364] = {.lex_state = 54, .external_lex_state = 2},
-  [365] = {.lex_state = 54, .external_lex_state = 2},
-  [366] = {.lex_state = 30, .external_lex_state = 6},
-  [367] = {.lex_state = 30, .external_lex_state = 6},
-  [368] = {.lex_state = 54, .external_lex_state = 8},
-  [369] = {.lex_state = 30, .external_lex_state = 6},
-  [370] = {.lex_state = 30, .external_lex_state = 6},
-  [371] = {.lex_state = 36, .external_lex_state = 7},
-  [372] = {.lex_state = 54, .external_lex_state = 8},
-  [373] = {.lex_state = 54, .external_lex_state = 8},
-  [374] = {.lex_state = 54, .external_lex_state = 8},
-  [375] = {.lex_state = 54, .external_lex_state = 8},
-  [376] = {.lex_state = 54, .external_lex_state = 8},
-  [377] = {.lex_state = 54, .external_lex_state = 8},
-  [378] = {.lex_state = 54, .external_lex_state = 8},
-  [379] = {.lex_state = 54, .external_lex_state = 4},
-  [380] = {.lex_state = 54, .external_lex_state = 8},
-  [381] = {.lex_state = 54, .external_lex_state = 8},
-  [382] = {.lex_state = 54, .external_lex_state = 4},
-  [383] = {.lex_state = 54, .external_lex_state = 8},
-  [384] = {.lex_state = 54, .external_lex_state = 8},
-  [385] = {.lex_state = 54, .external_lex_state = 4},
-  [386] = {.lex_state = 54, .external_lex_state = 8},
-  [387] = {.lex_state = 30, .external_lex_state = 2},
-  [388] = {.lex_state = 54, .external_lex_state = 8},
-  [389] = {.lex_state = 54, .external_lex_state = 8},
-  [390] = {.lex_state = 54, .external_lex_state = 8},
-  [391] = {.lex_state = 54, .external_lex_state = 8},
-  [392] = {.lex_state = 54, .external_lex_state = 8},
-  [393] = {.lex_state = 54, .external_lex_state = 8},
-  [394] = {.lex_state = 54, .external_lex_state = 8},
-  [395] = {.lex_state = 54, .external_lex_state = 8},
-  [396] = {.lex_state = 54, .external_lex_state = 8},
-  [397] = {.lex_state = 54, .external_lex_state = 8},
-  [398] = {.lex_state = 54, .external_lex_state = 8},
-  [399] = {.lex_state = 54, .external_lex_state = 8},
-  [400] = {.lex_state = 54, .external_lex_state = 8},
-  [401] = {.lex_state = 36, .external_lex_state = 7},
-  [402] = {.lex_state = 54, .external_lex_state = 8},
-  [403] = {.lex_state = 54, .external_lex_state = 8},
-  [404] = {.lex_state = 54, .external_lex_state = 8},
-  [405] = {.lex_state = 54, .external_lex_state = 8},
-  [406] = {.lex_state = 54, .external_lex_state = 8},
-  [407] = {.lex_state = 54, .external_lex_state = 8},
-  [408] = {.lex_state = 54, .external_lex_state = 8},
-  [409] = {.lex_state = 30, .external_lex_state = 7},
-  [410] = {.lex_state = 54, .external_lex_state = 2},
-  [411] = {.lex_state = 54, .external_lex_state = 2},
-  [412] = {.lex_state = 54, .external_lex_state = 7},
-  [413] = {.lex_state = 30, .external_lex_state = 2},
-  [414] = {.lex_state = 54, .external_lex_state = 2},
-  [415] = {.lex_state = 54, .external_lex_state = 2},
-  [416] = {.lex_state = 54, .external_lex_state = 2},
-  [417] = {.lex_state = 54, .external_lex_state = 2},
-  [418] = {.lex_state = 54, .external_lex_state = 2},
-  [419] = {.lex_state = 54, .external_lex_state = 2},
-  [420] = {.lex_state = 54, .external_lex_state = 2},
-  [421] = {.lex_state = 54, .external_lex_state = 8},
-  [422] = {.lex_state = 54, .external_lex_state = 2},
-  [423] = {.lex_state = 54, .external_lex_state = 2},
-  [424] = {.lex_state = 54, .external_lex_state = 2},
-  [425] = {.lex_state = 54, .external_lex_state = 7},
-  [426] = {.lex_state = 54, .external_lex_state = 2},
-  [427] = {.lex_state = 54, .external_lex_state = 2},
-  [428] = {.lex_state = 54, .external_lex_state = 8},
-  [429] = {.lex_state = 54, .external_lex_state = 2},
-  [430] = {.lex_state = 54, .external_lex_state = 2},
-  [431] = {.lex_state = 54, .external_lex_state = 7},
-  [432] = {.lex_state = 54, .external_lex_state = 2},
-  [433] = {.lex_state = 54, .external_lex_state = 8},
-  [434] = {.lex_state = 54, .external_lex_state = 2},
-  [435] = {.lex_state = 54, .external_lex_state = 2},
-  [436] = {.lex_state = 54, .external_lex_state = 2},
-  [437] = {.lex_state = 54, .external_lex_state = 2},
-  [438] = {.lex_state = 54, .external_lex_state = 8},
-  [439] = {.lex_state = 54, .external_lex_state = 2},
-  [440] = {.lex_state = 54, .external_lex_state = 8},
-  [441] = {.lex_state = 54, .external_lex_state = 2},
-  [442] = {.lex_state = 54, .external_lex_state = 2},
-  [443] = {.lex_state = 54, .external_lex_state = 2},
-  [444] = {.lex_state = 54, .external_lex_state = 2},
-  [445] = {.lex_state = 30, .external_lex_state = 8},
-  [446] = {.lex_state = 54, .external_lex_state = 2},
-  [447] = {.lex_state = 36, .external_lex_state = 2},
-  [448] = {.lex_state = 54, .external_lex_state = 4},
-  [449] = {.lex_state = 54, .external_lex_state = 2},
-  [450] = {.lex_state = 54, .external_lex_state = 4},
-  [451] = {.lex_state = 54, .external_lex_state = 2},
-  [452] = {.lex_state = 54, .external_lex_state = 4},
-  [453] = {.lex_state = 54, .external_lex_state = 2},
-  [454] = {.lex_state = 54, .external_lex_state = 4},
-  [455] = {.lex_state = 54, .external_lex_state = 4},
-  [456] = {.lex_state = 36, .external_lex_state = 2},
-  [457] = {.lex_state = 54, .external_lex_state = 7},
-  [458] = {.lex_state = 54, .external_lex_state = 2},
-  [459] = {.lex_state = 54, .external_lex_state = 4},
-  [460] = {.lex_state = 54, .external_lex_state = 2},
-  [461] = {.lex_state = 54, .external_lex_state = 2},
-  [462] = {.lex_state = 54, .external_lex_state = 2},
-  [463] = {.lex_state = 32, .external_lex_state = 4},
-  [464] = {.lex_state = 54, .external_lex_state = 2},
-  [465] = {.lex_state = 54, .external_lex_state = 2},
-  [466] = {.lex_state = 54, .external_lex_state = 2},
-  [467] = {.lex_state = 54, .external_lex_state = 2},
-  [468] = {.lex_state = 54, .external_lex_state = 2},
-  [469] = {.lex_state = 54, .external_lex_state = 2},
-  [470] = {.lex_state = 32, .external_lex_state = 4},
-  [471] = {.lex_state = 54, .external_lex_state = 2},
-  [472] = {.lex_state = 54, .external_lex_state = 2},
-  [473] = {.lex_state = 54, .external_lex_state = 2},
-  [474] = {.lex_state = 32, .external_lex_state = 9},
-  [475] = {.lex_state = 54, .external_lex_state = 2},
-  [476] = {.lex_state = 32, .external_lex_state = 9},
-  [477] = {.lex_state = 54, .external_lex_state = 2},
-  [478] = {.lex_state = 54, .external_lex_state = 2},
-  [479] = {.lex_state = 54, .external_lex_state = 2},
-  [480] = {.lex_state = 54, .external_lex_state = 2},
-  [481] = {.lex_state = 54, .external_lex_state = 2},
-  [482] = {.lex_state = 54, .external_lex_state = 2},
-  [483] = {.lex_state = 54, .external_lex_state = 2},
-  [484] = {.lex_state = 54, .external_lex_state = 2},
-  [485] = {.lex_state = 54, .external_lex_state = 2},
-  [486] = {.lex_state = 54, .external_lex_state = 2},
-  [487] = {.lex_state = 54, .external_lex_state = 2},
-  [488] = {.lex_state = 54, .external_lex_state = 2},
-  [489] = {.lex_state = 54, .external_lex_state = 2},
-  [490] = {.lex_state = 54, .external_lex_state = 2},
-  [491] = {.lex_state = 54, .external_lex_state = 2},
-  [492] = {.lex_state = 55, .external_lex_state = 3},
-  [493] = {.lex_state = 56, .external_lex_state = 10},
-  [494] = {.lex_state = 54, .external_lex_state = 2},
-  [495] = {.lex_state = 54, .external_lex_state = 2},
-  [496] = {.lex_state = 54, .external_lex_state = 2},
-  [497] = {.lex_state = 55, .external_lex_state = 3},
-  [498] = {.lex_state = 56, .external_lex_state = 10},
-  [499] = {.lex_state = 54, .external_lex_state = 2},
-  [500] = {.lex_state = 54, .external_lex_state = 2},
-  [501] = {.lex_state = 54, .external_lex_state = 2},
-  [502] = {.lex_state = 54, .external_lex_state = 2},
-  [503] = {.lex_state = 54, .external_lex_state = 2},
-  [504] = {.lex_state = 54, .external_lex_state = 2},
-  [505] = {.lex_state = 54, .external_lex_state = 2},
-  [506] = {.lex_state = 54, .external_lex_state = 2},
-  [507] = {.lex_state = 54, .external_lex_state = 2},
-  [508] = {.lex_state = 54, .external_lex_state = 2},
-  [509] = {.lex_state = 54, .external_lex_state = 2},
-  [510] = {.lex_state = 54, .external_lex_state = 2},
-  [511] = {.lex_state = 54, .external_lex_state = 2},
-  [512] = {.lex_state = 54, .external_lex_state = 2},
-  [513] = {.lex_state = 54, .external_lex_state = 2},
-  [514] = {.lex_state = 54, .external_lex_state = 2},
-  [515] = {.lex_state = 54, .external_lex_state = 2},
-  [516] = {.lex_state = 54, .external_lex_state = 2},
-  [517] = {.lex_state = 54, .external_lex_state = 2},
-  [518] = {.lex_state = 54, .external_lex_state = 2},
-  [519] = {.lex_state = 54, .external_lex_state = 2},
-  [520] = {.lex_state = 54, .external_lex_state = 2},
-  [521] = {.lex_state = 54, .external_lex_state = 2},
-  [522] = {.lex_state = 54, .external_lex_state = 2},
-  [523] = {.lex_state = 54, .external_lex_state = 2},
-  [524] = {.lex_state = 54, .external_lex_state = 2},
-  [525] = {.lex_state = 54, .external_lex_state = 2},
-  [526] = {.lex_state = 54, .external_lex_state = 2},
-  [527] = {.lex_state = 56, .external_lex_state = 11},
-  [528] = {.lex_state = 55, .external_lex_state = 2},
-  [529] = {.lex_state = 54, .external_lex_state = 2},
-  [530] = {.lex_state = 54, .external_lex_state = 2},
-  [531] = {.lex_state = 54, .external_lex_state = 2},
-  [532] = {.lex_state = 54, .external_lex_state = 2},
-  [533] = {.lex_state = 54, .external_lex_state = 2},
-  [534] = {.lex_state = 54, .external_lex_state = 2},
-  [535] = {.lex_state = 54, .external_lex_state = 2},
-  [536] = {.lex_state = 54, .external_lex_state = 2},
-  [537] = {.lex_state = 54, .external_lex_state = 2},
-  [538] = {.lex_state = 54, .external_lex_state = 2},
-  [539] = {.lex_state = 54, .external_lex_state = 2},
-  [540] = {.lex_state = 54, .external_lex_state = 2},
-  [541] = {.lex_state = 54, .external_lex_state = 2},
-  [542] = {.lex_state = 54, .external_lex_state = 2},
-  [543] = {.lex_state = 54, .external_lex_state = 2},
-  [544] = {.lex_state = 54, .external_lex_state = 2},
-  [545] = {.lex_state = 54, .external_lex_state = 2},
-  [546] = {.lex_state = 54, .external_lex_state = 2},
-  [547] = {.lex_state = 54, .external_lex_state = 2},
-  [548] = {.lex_state = 54, .external_lex_state = 2},
-  [549] = {.lex_state = 54, .external_lex_state = 2},
-  [550] = {.lex_state = 54, .external_lex_state = 2},
-  [551] = {.lex_state = 54, .external_lex_state = 2},
-  [552] = {.lex_state = 54, .external_lex_state = 2},
-  [553] = {.lex_state = 54, .external_lex_state = 2},
-  [554] = {.lex_state = 54, .external_lex_state = 2},
-  [555] = {.lex_state = 54, .external_lex_state = 2},
-  [556] = {.lex_state = 54, .external_lex_state = 2},
-  [557] = {.lex_state = 54, .external_lex_state = 2},
-  [558] = {.lex_state = 54, .external_lex_state = 2},
-  [559] = {.lex_state = 54, .external_lex_state = 2},
-  [560] = {.lex_state = 54, .external_lex_state = 2},
-  [561] = {.lex_state = 54, .external_lex_state = 2},
-  [562] = {.lex_state = 54, .external_lex_state = 2},
-  [563] = {.lex_state = 54, .external_lex_state = 2},
-  [564] = {.lex_state = 54, .external_lex_state = 2},
-  [565] = {.lex_state = 54, .external_lex_state = 2},
-  [566] = {.lex_state = 54, .external_lex_state = 2},
-  [567] = {.lex_state = 54, .external_lex_state = 2},
-  [568] = {.lex_state = 54, .external_lex_state = 2},
-  [569] = {.lex_state = 54, .external_lex_state = 2},
-  [570] = {.lex_state = 54, .external_lex_state = 2},
-  [571] = {.lex_state = 54, .external_lex_state = 2},
-  [572] = {.lex_state = 54, .external_lex_state = 2},
-  [573] = {.lex_state = 54, .external_lex_state = 2},
-  [574] = {.lex_state = 54, .external_lex_state = 2},
-  [575] = {.lex_state = 54, .external_lex_state = 2},
-  [576] = {.lex_state = 54, .external_lex_state = 2},
-  [577] = {.lex_state = 54, .external_lex_state = 2},
-  [578] = {.lex_state = 54, .external_lex_state = 2},
-  [579] = {.lex_state = 54, .external_lex_state = 2},
-  [580] = {.lex_state = 54, .external_lex_state = 2},
-  [581] = {.lex_state = 54, .external_lex_state = 2},
-  [582] = {.lex_state = 54, .external_lex_state = 2},
-  [583] = {.lex_state = 54, .external_lex_state = 2},
-  [584] = {.lex_state = 54, .external_lex_state = 2},
-  [585] = {.lex_state = 54, .external_lex_state = 2},
-  [586] = {.lex_state = 54, .external_lex_state = 2},
-  [587] = {.lex_state = 54, .external_lex_state = 2},
-  [588] = {.lex_state = 54, .external_lex_state = 2},
-  [589] = {.lex_state = 54, .external_lex_state = 2},
-  [590] = {.lex_state = 54, .external_lex_state = 2},
-  [591] = {.lex_state = 54, .external_lex_state = 2},
-  [592] = {.lex_state = 55, .external_lex_state = 2},
-  [593] = {.lex_state = 56, .external_lex_state = 11},
-  [594] = {.lex_state = 54, .external_lex_state = 2},
-  [595] = {.lex_state = 54, .external_lex_state = 2},
-  [596] = {.lex_state = 54, .external_lex_state = 2},
-  [597] = {.lex_state = 54, .external_lex_state = 2},
-  [598] = {.lex_state = 54, .external_lex_state = 2},
-  [599] = {.lex_state = 54, .external_lex_state = 2},
-  [600] = {.lex_state = 54, .external_lex_state = 2},
-  [601] = {.lex_state = 54, .external_lex_state = 2},
-  [602] = {.lex_state = 54, .external_lex_state = 2},
-  [603] = {.lex_state = 54, .external_lex_state = 2},
-  [604] = {.lex_state = 54, .external_lex_state = 2},
-  [605] = {.lex_state = 54, .external_lex_state = 2},
-  [606] = {.lex_state = 54, .external_lex_state = 2},
-  [607] = {.lex_state = 54, .external_lex_state = 2},
-  [608] = {.lex_state = 54, .external_lex_state = 2},
-  [609] = {.lex_state = 32, .external_lex_state = 9},
-  [610] = {.lex_state = 54, .external_lex_state = 2},
-  [611] = {.lex_state = 56, .external_lex_state = 10},
-  [612] = {.lex_state = 54, .external_lex_state = 3},
-  [613] = {.lex_state = 54, .external_lex_state = 3},
-  [614] = {.lex_state = 54, .external_lex_state = 2},
-  [615] = {.lex_state = 54, .external_lex_state = 3},
-  [616] = {.lex_state = 54, .external_lex_state = 2},
-  [617] = {.lex_state = 54, .external_lex_state = 3},
-  [618] = {.lex_state = 54, .external_lex_state = 2},
-  [619] = {.lex_state = 32, .external_lex_state = 9},
-  [620] = {.lex_state = 55, .external_lex_state = 3},
-  [621] = {.lex_state = 32, .external_lex_state = 9},
-  [622] = {.lex_state = 32, .external_lex_state = 9},
-  [623] = {.lex_state = 32, .external_lex_state = 9},
-  [624] = {.lex_state = 56, .external_lex_state = 11},
-  [625] = {.lex_state = 55, .external_lex_state = 2},
-  [626] = {.lex_state = 33, .external_lex_state = 9},
-  [627] = {.lex_state = 33, .external_lex_state = 9},
-  [628] = {.lex_state = 33, .external_lex_state = 9},
-  [629] = {.lex_state = 33, .external_lex_state = 9},
-  [630] = {.lex_state = 33, .external_lex_state = 9},
-  [631] = {.lex_state = 33, .external_lex_state = 9},
-  [632] = {.lex_state = 33, .external_lex_state = 9},
-  [633] = {.lex_state = 33, .external_lex_state = 9},
-  [634] = {.lex_state = 54, .external_lex_state = 3},
-  [635] = {.lex_state = 33, .external_lex_state = 9},
-  [636] = {.lex_state = 33, .external_lex_state = 9},
-  [637] = {.lex_state = 33, .external_lex_state = 9},
-  [638] = {.lex_state = 33, .external_lex_state = 9},
-  [639] = {.lex_state = 33, .external_lex_state = 9},
-  [640] = {.lex_state = 33, .external_lex_state = 9},
-  [641] = {.lex_state = 33, .external_lex_state = 9},
-  [642] = {.lex_state = 33, .external_lex_state = 9},
-  [643] = {.lex_state = 33, .external_lex_state = 9},
-  [644] = {.lex_state = 54, .external_lex_state = 2},
-  [645] = {.lex_state = 33, .external_lex_state = 9},
-  [646] = {.lex_state = 33, .external_lex_state = 9},
-  [647] = {.lex_state = 54, .external_lex_state = 3},
-  [648] = {.lex_state = 55, .external_lex_state = 3},
-  [649] = {.lex_state = 55, .external_lex_state = 2},
-  [650] = {.lex_state = 54, .external_lex_state = 2},
-  [651] = {.lex_state = 56, .external_lex_state = 11},
-  [652] = {.lex_state = 54, .external_lex_state = 2},
-  [653] = {.lex_state = 56, .external_lex_state = 10},
-  [654] = {.lex_state = 56, .external_lex_state = 10},
-  [655] = {.lex_state = 56, .external_lex_state = 10},
-  [656] = {.lex_state = 54, .external_lex_state = 2},
-  [657] = {.lex_state = 55, .external_lex_state = 3},
-  [658] = {.lex_state = 55, .external_lex_state = 3},
-  [659] = {.lex_state = 56, .external_lex_state = 11},
-  [660] = {.lex_state = 55, .external_lex_state = 3},
-  [661] = {.lex_state = 56, .external_lex_state = 10},
-  [662] = {.lex_state = 56, .external_lex_state = 10},
-  [663] = {.lex_state = 55, .external_lex_state = 3},
-  [664] = {.lex_state = 55, .external_lex_state = 3},
-  [665] = {.lex_state = 55, .external_lex_state = 3},
-  [666] = {.lex_state = 56, .external_lex_state = 10},
-  [667] = {.lex_state = 56, .external_lex_state = 10},
-  [668] = {.lex_state = 56, .external_lex_state = 10},
-  [669] = {.lex_state = 55, .external_lex_state = 3},
-  [670] = {.lex_state = 56, .external_lex_state = 10},
-  [671] = {.lex_state = 56, .external_lex_state = 10},
-  [672] = {.lex_state = 55, .external_lex_state = 2},
-  [673] = {.lex_state = 56, .external_lex_state = 10},
-  [674] = {.lex_state = 55, .external_lex_state = 3},
-  [675] = {.lex_state = 56, .external_lex_state = 11},
-  [676] = {.lex_state = 54, .external_lex_state = 3},
-  [677] = {.lex_state = 54, .external_lex_state = 6},
-  [678] = {.lex_state = 55, .external_lex_state = 2},
-  [679] = {.lex_state = 54, .external_lex_state = 6},
-  [680] = {.lex_state = 56, .external_lex_state = 11},
-  [681] = {.lex_state = 54, .external_lex_state = 3},
-  [682] = {.lex_state = 54, .external_lex_state = 2},
-  [683] = {.lex_state = 56, .external_lex_state = 11},
-  [684] = {.lex_state = 54, .external_lex_state = 2},
-  [685] = {.lex_state = 56, .external_lex_state = 11},
-  [686] = {.lex_state = 55, .external_lex_state = 2},
-  [687] = {.lex_state = 56, .external_lex_state = 11},
-  [688] = {.lex_state = 56, .external_lex_state = 11},
-  [689] = {.lex_state = 55, .external_lex_state = 2},
-  [690] = {.lex_state = 56, .external_lex_state = 11},
-  [691] = {.lex_state = 55, .external_lex_state = 2},
-  [692] = {.lex_state = 55, .external_lex_state = 2},
-  [693] = {.lex_state = 56, .external_lex_state = 11},
-  [694] = {.lex_state = 55, .external_lex_state = 2},
-  [695] = {.lex_state = 54, .external_lex_state = 3},
-  [696] = {.lex_state = 56, .external_lex_state = 11},
-  [697] = {.lex_state = 54, .external_lex_state = 3},
-  [698] = {.lex_state = 55, .external_lex_state = 2},
-  [699] = {.lex_state = 54, .external_lex_state = 3},
-  [700] = {.lex_state = 54, .external_lex_state = 3},
-  [701] = {.lex_state = 54, .external_lex_state = 2},
-  [702] = {.lex_state = 54, .external_lex_state = 2},
-  [703] = {.lex_state = 54, .external_lex_state = 2},
-  [704] = {.lex_state = 54, .external_lex_state = 3},
-  [705] = {.lex_state = 54, .external_lex_state = 2},
-  [706] = {.lex_state = 54, .external_lex_state = 2},
-  [707] = {.lex_state = 54, .external_lex_state = 3},
-  [708] = {.lex_state = 54, .external_lex_state = 3},
-  [709] = {.lex_state = 54, .external_lex_state = 2},
-  [710] = {.lex_state = 54, .external_lex_state = 2},
-  [711] = {.lex_state = 54, .external_lex_state = 3},
-  [712] = {.lex_state = 54, .external_lex_state = 2},
-  [713] = {.lex_state = 54, .external_lex_state = 3},
-  [714] = {.lex_state = 54, .external_lex_state = 2},
-  [715] = {.lex_state = 54, .external_lex_state = 2},
-  [716] = {.lex_state = 54, .external_lex_state = 3},
-  [717] = {.lex_state = 54, .external_lex_state = 2},
-  [718] = {.lex_state = 54, .external_lex_state = 3},
-  [719] = {.lex_state = 54, .external_lex_state = 3},
-  [720] = {.lex_state = 54, .external_lex_state = 3},
-  [721] = {.lex_state = 54, .external_lex_state = 7},
-  [722] = {.lex_state = 54, .external_lex_state = 3},
-  [723] = {.lex_state = 54, .external_lex_state = 2},
-  [724] = {.lex_state = 54, .external_lex_state = 2},
-  [725] = {.lex_state = 54, .external_lex_state = 3},
-  [726] = {.lex_state = 54, .external_lex_state = 7},
-  [727] = {.lex_state = 54, .external_lex_state = 2},
-  [728] = {.lex_state = 54, .external_lex_state = 2},
-  [729] = {.lex_state = 54, .external_lex_state = 2},
-  [730] = {.lex_state = 54, .external_lex_state = 7},
-  [731] = {.lex_state = 54, .external_lex_state = 2},
-  [732] = {.lex_state = 54, .external_lex_state = 2},
-  [733] = {.lex_state = 54, .external_lex_state = 3},
-  [734] = {.lex_state = 54, .external_lex_state = 2},
-  [735] = {.lex_state = 54, .external_lex_state = 2},
-  [736] = {.lex_state = 54, .external_lex_state = 3},
-  [737] = {.lex_state = 54, .external_lex_state = 3},
-  [738] = {.lex_state = 54, .external_lex_state = 2},
-  [739] = {.lex_state = 54, .external_lex_state = 3},
-  [740] = {.lex_state = 54, .external_lex_state = 3},
-  [741] = {.lex_state = 54, .external_lex_state = 3},
-  [742] = {.lex_state = 54, .external_lex_state = 2},
-  [743] = {.lex_state = 54, .external_lex_state = 2},
-  [744] = {.lex_state = 54, .external_lex_state = 3},
-  [745] = {.lex_state = 54, .external_lex_state = 3},
-  [746] = {.lex_state = 54, .external_lex_state = 2},
-  [747] = {.lex_state = 54, .external_lex_state = 3},
-  [748] = {.lex_state = 54, .external_lex_state = 3},
-  [749] = {.lex_state = 54, .external_lex_state = 3},
-  [750] = {.lex_state = 54, .external_lex_state = 3},
-  [751] = {.lex_state = 54, .external_lex_state = 3},
-  [752] = {.lex_state = 54, .external_lex_state = 3},
-  [753] = {.lex_state = 54, .external_lex_state = 3},
-  [754] = {.lex_state = 54, .external_lex_state = 3},
-  [755] = {.lex_state = 54, .external_lex_state = 2},
-  [756] = {.lex_state = 54, .external_lex_state = 2},
-  [757] = {.lex_state = 54, .external_lex_state = 3},
-  [758] = {.lex_state = 54, .external_lex_state = 3},
-  [759] = {.lex_state = 54, .external_lex_state = 3},
-  [760] = {.lex_state = 54, .external_lex_state = 2},
-  [761] = {.lex_state = 54, .external_lex_state = 2},
-  [762] = {.lex_state = 54, .external_lex_state = 2},
-  [763] = {.lex_state = 54, .external_lex_state = 3},
-  [764] = {.lex_state = 54, .external_lex_state = 2},
-  [765] = {.lex_state = 54, .external_lex_state = 3},
-  [766] = {.lex_state = 54, .external_lex_state = 2},
-  [767] = {.lex_state = 54, .external_lex_state = 3},
-  [768] = {.lex_state = 54, .external_lex_state = 2},
-  [769] = {.lex_state = 54, .external_lex_state = 2},
-  [770] = {.lex_state = 54, .external_lex_state = 2},
-  [771] = {.lex_state = 54, .external_lex_state = 3},
-  [772] = {.lex_state = 54, .external_lex_state = 3},
-  [773] = {.lex_state = 54, .external_lex_state = 3},
-  [774] = {.lex_state = 54, .external_lex_state = 7},
-  [775] = {.lex_state = 54, .external_lex_state = 2},
-  [776] = {.lex_state = 54, .external_lex_state = 3},
-  [777] = {.lex_state = 54, .external_lex_state = 3},
-  [778] = {.lex_state = 54, .external_lex_state = 3},
-  [779] = {.lex_state = 54, .external_lex_state = 3},
-  [780] = {.lex_state = 54, .external_lex_state = 3},
-  [781] = {.lex_state = 54, .external_lex_state = 2},
-  [782] = {.lex_state = 54, .external_lex_state = 3},
-  [783] = {.lex_state = 54, .external_lex_state = 3},
-  [784] = {.lex_state = 54, .external_lex_state = 3},
-  [785] = {.lex_state = 54, .external_lex_state = 2},
-  [786] = {.lex_state = 54, .external_lex_state = 3},
-  [787] = {.lex_state = 54, .external_lex_state = 8},
-  [788] = {.lex_state = 54, .external_lex_state = 3},
-  [789] = {.lex_state = 54, .external_lex_state = 2},
-  [790] = {.lex_state = 54, .external_lex_state = 2},
-  [791] = {.lex_state = 54, .external_lex_state = 2},
-  [792] = {.lex_state = 54, .external_lex_state = 2},
-  [793] = {.lex_state = 54, .external_lex_state = 2},
-  [794] = {.lex_state = 54, .external_lex_state = 3},
-  [795] = {.lex_state = 54, .external_lex_state = 3},
-  [796] = {.lex_state = 54, .external_lex_state = 2},
-  [797] = {.lex_state = 54, .external_lex_state = 2},
-  [798] = {.lex_state = 54, .external_lex_state = 2},
-  [799] = {.lex_state = 54, .external_lex_state = 3},
-  [800] = {.lex_state = 54, .external_lex_state = 2},
-  [801] = {.lex_state = 54, .external_lex_state = 3},
-  [802] = {.lex_state = 54, .external_lex_state = 3},
-  [803] = {.lex_state = 54, .external_lex_state = 3},
-  [804] = {.lex_state = 54, .external_lex_state = 3},
-  [805] = {.lex_state = 54, .external_lex_state = 2},
-  [806] = {.lex_state = 54, .external_lex_state = 2},
-  [807] = {.lex_state = 54, .external_lex_state = 3},
-  [808] = {.lex_state = 54, .external_lex_state = 3},
-  [809] = {.lex_state = 54, .external_lex_state = 3},
-  [810] = {.lex_state = 54, .external_lex_state = 3},
-  [811] = {.lex_state = 54, .external_lex_state = 3},
-  [812] = {.lex_state = 54, .external_lex_state = 3},
-  [813] = {.lex_state = 54, .external_lex_state = 3},
-  [814] = {.lex_state = 54, .external_lex_state = 3},
-  [815] = {.lex_state = 54, .external_lex_state = 3},
-  [816] = {.lex_state = 54, .external_lex_state = 2},
-  [817] = {.lex_state = 54, .external_lex_state = 3},
-  [818] = {.lex_state = 54, .external_lex_state = 3},
-  [819] = {.lex_state = 54, .external_lex_state = 2},
-  [820] = {.lex_state = 54, .external_lex_state = 2},
-  [821] = {.lex_state = 54, .external_lex_state = 2},
-  [822] = {.lex_state = 54, .external_lex_state = 2},
-  [823] = {.lex_state = 54, .external_lex_state = 2},
-  [824] = {.lex_state = 54, .external_lex_state = 2},
-  [825] = {.lex_state = 54, .external_lex_state = 2},
-  [826] = {.lex_state = 54, .external_lex_state = 2},
-  [827] = {.lex_state = 54, .external_lex_state = 2},
-  [828] = {.lex_state = 54, .external_lex_state = 2},
-  [829] = {.lex_state = 54, .external_lex_state = 2},
-  [830] = {.lex_state = 54, .external_lex_state = 2},
-  [831] = {.lex_state = 54, .external_lex_state = 2},
-  [832] = {.lex_state = 54, .external_lex_state = 8},
-  [833] = {.lex_state = 54, .external_lex_state = 2},
-  [834] = {.lex_state = 54, .external_lex_state = 2},
-  [835] = {.lex_state = 54, .external_lex_state = 2},
-  [836] = {.lex_state = 54, .external_lex_state = 2},
-  [837] = {.lex_state = 54, .external_lex_state = 3},
-  [838] = {.lex_state = 54, .external_lex_state = 2},
-  [839] = {.lex_state = 54, .external_lex_state = 2},
-  [840] = {.lex_state = 54, .external_lex_state = 2},
-  [841] = {.lex_state = 54, .external_lex_state = 2},
-  [842] = {.lex_state = 54, .external_lex_state = 2},
-  [843] = {.lex_state = 54, .external_lex_state = 2},
-  [844] = {.lex_state = 54, .external_lex_state = 2},
-  [845] = {.lex_state = 54, .external_lex_state = 2},
-  [846] = {.lex_state = 54, .external_lex_state = 2},
-  [847] = {.lex_state = 54, .external_lex_state = 2},
-  [848] = {.lex_state = 54, .external_lex_state = 2},
-  [849] = {.lex_state = 54, .external_lex_state = 2},
-  [850] = {.lex_state = 54, .external_lex_state = 2},
-  [851] = {.lex_state = 54, .external_lex_state = 2},
-  [852] = {.lex_state = 54, .external_lex_state = 2},
-  [853] = {.lex_state = 54, .external_lex_state = 2},
-  [854] = {.lex_state = 54, .external_lex_state = 2},
-  [855] = {.lex_state = 54, .external_lex_state = 2},
-  [856] = {.lex_state = 54, .external_lex_state = 2},
-  [857] = {.lex_state = 54, .external_lex_state = 2},
-  [858] = {.lex_state = 54, .external_lex_state = 7},
-  [859] = {.lex_state = 54, .external_lex_state = 2},
-  [860] = {.lex_state = 54, .external_lex_state = 2},
-  [861] = {.lex_state = 54, .external_lex_state = 2},
-  [862] = {.lex_state = 54, .external_lex_state = 2},
-  [863] = {.lex_state = 54, .external_lex_state = 2},
-  [864] = {.lex_state = 54, .external_lex_state = 2},
-  [865] = {.lex_state = 54, .external_lex_state = 2},
-  [866] = {.lex_state = 54, .external_lex_state = 2},
-  [867] = {.lex_state = 54, .external_lex_state = 2},
-  [868] = {.lex_state = 54, .external_lex_state = 2},
-  [869] = {.lex_state = 54, .external_lex_state = 2},
-  [870] = {.lex_state = 54, .external_lex_state = 2},
-  [871] = {.lex_state = 54, .external_lex_state = 2},
-  [872] = {.lex_state = 54, .external_lex_state = 2},
-  [873] = {.lex_state = 54, .external_lex_state = 2},
-  [874] = {.lex_state = 54, .external_lex_state = 2},
-  [875] = {.lex_state = 54, .external_lex_state = 2},
-  [876] = {.lex_state = 54, .external_lex_state = 2},
-  [877] = {.lex_state = 54, .external_lex_state = 2},
-  [878] = {.lex_state = 54, .external_lex_state = 2},
-  [879] = {.lex_state = 54, .external_lex_state = 2},
-  [880] = {.lex_state = 54, .external_lex_state = 2},
-  [881] = {.lex_state = 54, .external_lex_state = 2},
-  [882] = {.lex_state = 54, .external_lex_state = 2},
-  [883] = {.lex_state = 54, .external_lex_state = 2},
-  [884] = {.lex_state = 54, .external_lex_state = 2},
-  [885] = {.lex_state = 54, .external_lex_state = 2},
-  [886] = {.lex_state = 54, .external_lex_state = 2},
-  [887] = {.lex_state = 54, .external_lex_state = 2},
-  [888] = {.lex_state = 54, .external_lex_state = 2},
-  [889] = {.lex_state = 54, .external_lex_state = 2},
-  [890] = {.lex_state = 54, .external_lex_state = 2},
-  [891] = {.lex_state = 54, .external_lex_state = 2},
-  [892] = {.lex_state = 54, .external_lex_state = 2},
-  [893] = {.lex_state = 54, .external_lex_state = 2},
-  [894] = {.lex_state = 54, .external_lex_state = 2},
-  [895] = {.lex_state = 54, .external_lex_state = 2},
-  [896] = {.lex_state = 54, .external_lex_state = 2},
-  [897] = {.lex_state = 54, .external_lex_state = 2},
-  [898] = {.lex_state = 54, .external_lex_state = 2},
-  [899] = {.lex_state = 54, .external_lex_state = 2},
-  [900] = {.lex_state = 54, .external_lex_state = 2},
-  [901] = {.lex_state = 54, .external_lex_state = 2},
-  [902] = {.lex_state = 54, .external_lex_state = 2},
-  [903] = {.lex_state = 54, .external_lex_state = 2},
-  [904] = {.lex_state = 54, .external_lex_state = 2},
-  [905] = {.lex_state = 54, .external_lex_state = 2},
-  [906] = {.lex_state = 54, .external_lex_state = 2},
-  [907] = {.lex_state = 54, .external_lex_state = 2},
-  [908] = {.lex_state = 54, .external_lex_state = 2},
-  [909] = {.lex_state = 54, .external_lex_state = 2},
-  [910] = {.lex_state = 54, .external_lex_state = 2},
-  [911] = {.lex_state = 54, .external_lex_state = 2},
-  [912] = {.lex_state = 54, .external_lex_state = 2},
-  [913] = {.lex_state = 54, .external_lex_state = 2},
-  [914] = {.lex_state = 54, .external_lex_state = 2},
-  [915] = {.lex_state = 54, .external_lex_state = 2},
-  [916] = {.lex_state = 54, .external_lex_state = 2},
-  [917] = {.lex_state = 54, .external_lex_state = 2},
-  [918] = {.lex_state = 54, .external_lex_state = 2},
-  [919] = {.lex_state = 54, .external_lex_state = 2},
-  [920] = {.lex_state = 54, .external_lex_state = 2},
-  [921] = {.lex_state = 54, .external_lex_state = 2},
-  [922] = {.lex_state = 54, .external_lex_state = 2},
-  [923] = {.lex_state = 54, .external_lex_state = 2},
-  [924] = {.lex_state = 54, .external_lex_state = 2},
-  [925] = {.lex_state = 54, .external_lex_state = 2},
-  [926] = {.lex_state = 54, .external_lex_state = 2},
-  [927] = {.lex_state = 54, .external_lex_state = 2},
-  [928] = {.lex_state = 54, .external_lex_state = 2},
-  [929] = {.lex_state = 54, .external_lex_state = 2},
-  [930] = {.lex_state = 54, .external_lex_state = 2},
-  [931] = {.lex_state = 54, .external_lex_state = 2},
-  [932] = {.lex_state = 54, .external_lex_state = 2},
-  [933] = {.lex_state = 54, .external_lex_state = 2},
-  [934] = {.lex_state = 54, .external_lex_state = 2},
-  [935] = {.lex_state = 54, .external_lex_state = 2},
-  [936] = {.lex_state = 54, .external_lex_state = 2},
-  [937] = {.lex_state = 54, .external_lex_state = 2},
-  [938] = {.lex_state = 54, .external_lex_state = 2},
-  [939] = {.lex_state = 54, .external_lex_state = 2},
-  [940] = {.lex_state = 54, .external_lex_state = 2},
-  [941] = {.lex_state = 54, .external_lex_state = 2},
-  [942] = {.lex_state = 54, .external_lex_state = 2},
-  [943] = {.lex_state = 54, .external_lex_state = 2},
-  [944] = {.lex_state = 54, .external_lex_state = 2},
-  [945] = {.lex_state = 54, .external_lex_state = 2},
-  [946] = {.lex_state = 54, .external_lex_state = 2},
-  [947] = {.lex_state = 54, .external_lex_state = 2},
-  [948] = {.lex_state = 54, .external_lex_state = 2},
-  [949] = {.lex_state = 54, .external_lex_state = 2},
-  [950] = {.lex_state = 54, .external_lex_state = 2},
-  [951] = {.lex_state = 54, .external_lex_state = 2},
-  [952] = {.lex_state = 54, .external_lex_state = 2},
-  [953] = {.lex_state = 54, .external_lex_state = 2},
-  [954] = {.lex_state = 54, .external_lex_state = 2},
-  [955] = {.lex_state = 54, .external_lex_state = 2},
-  [956] = {.lex_state = 54, .external_lex_state = 2},
-  [957] = {.lex_state = 54, .external_lex_state = 2},
-  [958] = {.lex_state = 54, .external_lex_state = 2},
-  [959] = {.lex_state = 54, .external_lex_state = 2},
-  [960] = {.lex_state = 54, .external_lex_state = 2},
-  [961] = {.lex_state = 54, .external_lex_state = 2},
-  [962] = {.lex_state = 54, .external_lex_state = 2},
-  [963] = {.lex_state = 54, .external_lex_state = 2},
-  [964] = {.lex_state = 54, .external_lex_state = 2},
-  [965] = {.lex_state = 54, .external_lex_state = 2},
-  [966] = {.lex_state = 54, .external_lex_state = 2},
-  [967] = {.lex_state = 54, .external_lex_state = 2},
-  [968] = {.lex_state = 54, .external_lex_state = 2},
-  [969] = {.lex_state = 54, .external_lex_state = 2},
-  [970] = {.lex_state = 54, .external_lex_state = 2},
-  [971] = {.lex_state = 54, .external_lex_state = 2},
-  [972] = {.lex_state = 54, .external_lex_state = 2},
-  [973] = {.lex_state = 54, .external_lex_state = 2},
-  [974] = {.lex_state = 54, .external_lex_state = 2},
-  [975] = {.lex_state = 37, .external_lex_state = 4},
-  [976] = {.lex_state = 37, .external_lex_state = 4},
-  [977] = {.lex_state = 37, .external_lex_state = 9},
-  [978] = {.lex_state = 37, .external_lex_state = 4},
-  [979] = {.lex_state = 37, .external_lex_state = 6},
-  [980] = {.lex_state = 37, .external_lex_state = 6},
-  [981] = {.lex_state = 37, .external_lex_state = 9},
-  [982] = {.lex_state = 37, .external_lex_state = 9},
-  [983] = {.lex_state = 37, .external_lex_state = 9},
-  [984] = {.lex_state = 37, .external_lex_state = 9},
-  [985] = {.lex_state = 37, .external_lex_state = 9},
-  [986] = {.lex_state = 37, .external_lex_state = 9},
-  [987] = {.lex_state = 37, .external_lex_state = 9},
-  [988] = {.lex_state = 37, .external_lex_state = 6},
-  [989] = {.lex_state = 37, .external_lex_state = 9},
-  [990] = {.lex_state = 37, .external_lex_state = 9},
-  [991] = {.lex_state = 37, .external_lex_state = 6},
-  [992] = {.lex_state = 37, .external_lex_state = 9},
-  [993] = {.lex_state = 37, .external_lex_state = 6},
-  [994] = {.lex_state = 37, .external_lex_state = 12},
-  [995] = {.lex_state = 37, .external_lex_state = 9},
-  [996] = {.lex_state = 37, .external_lex_state = 12},
-  [997] = {.lex_state = 37, .external_lex_state = 6},
-  [998] = {.lex_state = 37, .external_lex_state = 9},
-  [999] = {.lex_state = 37, .external_lex_state = 12},
-  [1000] = {.lex_state = 37, .external_lex_state = 12},
-  [1001] = {.lex_state = 37, .external_lex_state = 12},
-  [1002] = {.lex_state = 37, .external_lex_state = 13},
-  [1003] = {.lex_state = 37, .external_lex_state = 12},
-  [1004] = {.lex_state = 37, .external_lex_state = 2},
-  [1005] = {.lex_state = 37, .external_lex_state = 12},
-  [1006] = {.lex_state = 37, .external_lex_state = 2},
-  [1007] = {.lex_state = 37, .external_lex_state = 12},
-  [1008] = {.lex_state = 37, .external_lex_state = 14},
-  [1009] = {.lex_state = 37, .external_lex_state = 7},
-  [1010] = {.lex_state = 37, .external_lex_state = 12},
-  [1011] = {.lex_state = 37, .external_lex_state = 12},
-  [1012] = {.lex_state = 38, .external_lex_state = 9},
-  [1013] = {.lex_state = 37, .external_lex_state = 9},
-  [1014] = {.lex_state = 37, .external_lex_state = 7},
-  [1015] = {.lex_state = 37, .external_lex_state = 12},
-  [1016] = {.lex_state = 37, .external_lex_state = 15},
-  [1017] = {.lex_state = 37, .external_lex_state = 8},
-  [1018] = {.lex_state = 37, .external_lex_state = 7},
-  [1019] = {.lex_state = 37, .external_lex_state = 8},
-  [1020] = {.lex_state = 37, .external_lex_state = 4},
-  [1021] = {.lex_state = 37, .external_lex_state = 7},
-  [1022] = {.lex_state = 37, .external_lex_state = 8},
-  [1023] = {.lex_state = 37, .external_lex_state = 12},
-  [1024] = {.lex_state = 37, .external_lex_state = 14},
-  [1025] = {.lex_state = 37, .external_lex_state = 12},
-  [1026] = {.lex_state = 37, .external_lex_state = 12},
-  [1027] = {.lex_state = 37, .external_lex_state = 12},
-  [1028] = {.lex_state = 37, .external_lex_state = 12},
-  [1029] = {.lex_state = 37, .external_lex_state = 12},
-  [1030] = {.lex_state = 37, .external_lex_state = 7},
-  [1031] = {.lex_state = 37, .external_lex_state = 12},
-  [1032] = {.lex_state = 37, .external_lex_state = 7},
-  [1033] = {.lex_state = 37, .external_lex_state = 12},
-  [1034] = {.lex_state = 37, .external_lex_state = 12},
-  [1035] = {.lex_state = 37, .external_lex_state = 12},
-  [1036] = {.lex_state = 37, .external_lex_state = 12},
-  [1037] = {.lex_state = 38, .external_lex_state = 9},
-  [1038] = {.lex_state = 37, .external_lex_state = 12},
-  [1039] = {.lex_state = 37, .external_lex_state = 12},
-  [1040] = {.lex_state = 37, .external_lex_state = 12},
-  [1041] = {.lex_state = 37, .external_lex_state = 12},
-  [1042] = {.lex_state = 37, .external_lex_state = 4},
-  [1043] = {.lex_state = 38, .external_lex_state = 9},
-  [1044] = {.lex_state = 37, .external_lex_state = 12},
-  [1045] = {.lex_state = 37, .external_lex_state = 2},
-  [1046] = {.lex_state = 37, .external_lex_state = 12},
-  [1047] = {.lex_state = 37, .external_lex_state = 12},
-  [1048] = {.lex_state = 37, .external_lex_state = 12},
-  [1049] = {.lex_state = 37, .external_lex_state = 12},
-  [1050] = {.lex_state = 37, .external_lex_state = 12},
-  [1051] = {.lex_state = 37, .external_lex_state = 12},
-  [1052] = {.lex_state = 37, .external_lex_state = 6},
-  [1053] = {.lex_state = 37, .external_lex_state = 14},
-  [1054] = {.lex_state = 37, .external_lex_state = 13},
-  [1055] = {.lex_state = 37, .external_lex_state = 13},
-  [1056] = {.lex_state = 37, .external_lex_state = 13},
-  [1057] = {.lex_state = 37, .external_lex_state = 9},
-  [1058] = {.lex_state = 37, .external_lex_state = 13},
-  [1059] = {.lex_state = 37, .external_lex_state = 13},
-  [1060] = {.lex_state = 37, .external_lex_state = 13},
-  [1061] = {.lex_state = 37, .external_lex_state = 13},
-  [1062] = {.lex_state = 37, .external_lex_state = 9},
-  [1063] = {.lex_state = 37, .external_lex_state = 13},
-  [1064] = {.lex_state = 37, .external_lex_state = 14},
-  [1065] = {.lex_state = 37, .external_lex_state = 14},
-  [1066] = {.lex_state = 37, .external_lex_state = 9},
-  [1067] = {.lex_state = 37, .external_lex_state = 9},
-  [1068] = {.lex_state = 37, .external_lex_state = 9},
-  [1069] = {.lex_state = 37, .external_lex_state = 9},
-  [1070] = {.lex_state = 37, .external_lex_state = 9},
-  [1071] = {.lex_state = 37, .external_lex_state = 9},
-  [1072] = {.lex_state = 37, .external_lex_state = 13},
-  [1073] = {.lex_state = 37, .external_lex_state = 13},
-  [1074] = {.lex_state = 37, .external_lex_state = 9},
-  [1075] = {.lex_state = 37, .external_lex_state = 9},
-  [1076] = {.lex_state = 37, .external_lex_state = 6},
-  [1077] = {.lex_state = 37, .external_lex_state = 9},
-  [1078] = {.lex_state = 37, .external_lex_state = 9},
-  [1079] = {.lex_state = 38, .external_lex_state = 14},
-  [1080] = {.lex_state = 38, .external_lex_state = 12},
-  [1081] = {.lex_state = 38, .external_lex_state = 12},
-  [1082] = {.lex_state = 37, .external_lex_state = 6},
-  [1083] = {.lex_state = 38, .external_lex_state = 12},
-  [1084] = {.lex_state = 37, .external_lex_state = 9},
-  [1085] = {.lex_state = 37, .external_lex_state = 9},
-  [1086] = {.lex_state = 37, .external_lex_state = 14},
-  [1087] = {.lex_state = 38, .external_lex_state = 14},
-  [1088] = {.lex_state = 38, .external_lex_state = 14},
-  [1089] = {.lex_state = 37, .external_lex_state = 9},
-  [1090] = {.lex_state = 37, .external_lex_state = 14},
-  [1091] = {.lex_state = 37, .external_lex_state = 9},
-  [1092] = {.lex_state = 38, .external_lex_state = 12},
-  [1093] = {.lex_state = 37, .external_lex_state = 9},
-  [1094] = {.lex_state = 37, .external_lex_state = 9},
-  [1095] = {.lex_state = 37, .external_lex_state = 9},
-  [1096] = {.lex_state = 38, .external_lex_state = 14},
-  [1097] = {.lex_state = 37, .external_lex_state = 13},
-  [1098] = {.lex_state = 37, .external_lex_state = 9},
-  [1099] = {.lex_state = 37, .external_lex_state = 15},
-  [1100] = {.lex_state = 37, .external_lex_state = 15},
-  [1101] = {.lex_state = 37, .external_lex_state = 15},
-  [1102] = {.lex_state = 37, .external_lex_state = 9},
-  [1103] = {.lex_state = 37, .external_lex_state = 9},
-  [1104] = {.lex_state = 37, .external_lex_state = 13},
-  [1105] = {.lex_state = 37, .external_lex_state = 8},
-  [1106] = {.lex_state = 38, .external_lex_state = 12},
-  [1107] = {.lex_state = 37, .external_lex_state = 6},
-  [1108] = {.lex_state = 38, .external_lex_state = 12},
-  [1109] = {.lex_state = 38, .external_lex_state = 12},
-  [1110] = {.lex_state = 37, .external_lex_state = 9},
-  [1111] = {.lex_state = 37, .external_lex_state = 9},
-  [1112] = {.lex_state = 37, .external_lex_state = 9},
-  [1113] = {.lex_state = 37, .external_lex_state = 9},
-  [1114] = {.lex_state = 38, .external_lex_state = 12},
-  [1115] = {.lex_state = 38, .external_lex_state = 12},
-  [1116] = {.lex_state = 37, .external_lex_state = 15},
-  [1117] = {.lex_state = 37, .external_lex_state = 9},
-  [1118] = {.lex_state = 37, .external_lex_state = 15},
-  [1119] = {.lex_state = 37, .external_lex_state = 15},
-  [1120] = {.lex_state = 38, .external_lex_state = 9},
-  [1121] = {.lex_state = 37, .external_lex_state = 15},
-  [1122] = {.lex_state = 37, .external_lex_state = 9},
-  [1123] = {.lex_state = 37, .external_lex_state = 15},
-  [1124] = {.lex_state = 37, .external_lex_state = 15},
-  [1125] = {.lex_state = 37, .external_lex_state = 15},
-  [1126] = {.lex_state = 37, .external_lex_state = 15},
-  [1127] = {.lex_state = 37, .external_lex_state = 9},
-  [1128] = {.lex_state = 37, .external_lex_state = 14},
-  [1129] = {.lex_state = 37, .external_lex_state = 15},
-  [1130] = {.lex_state = 37, .external_lex_state = 15},
-  [1131] = {.lex_state = 37, .external_lex_state = 8},
-  [1132] = {.lex_state = 37, .external_lex_state = 14},
-  [1133] = {.lex_state = 37, .external_lex_state = 9},
-  [1134] = {.lex_state = 37, .external_lex_state = 14},
-  [1135] = {.lex_state = 37, .external_lex_state = 14},
-  [1136] = {.lex_state = 37, .external_lex_state = 14},
-  [1137] = {.lex_state = 37, .external_lex_state = 9},
-  [1138] = {.lex_state = 37, .external_lex_state = 9},
-  [1139] = {.lex_state = 37, .external_lex_state = 14},
-  [1140] = {.lex_state = 37, .external_lex_state = 14},
-  [1141] = {.lex_state = 38, .external_lex_state = 12},
-  [1142] = {.lex_state = 37, .external_lex_state = 14},
-  [1143] = {.lex_state = 37, .external_lex_state = 9},
-  [1144] = {.lex_state = 37, .external_lex_state = 14},
-  [1145] = {.lex_state = 37, .external_lex_state = 9},
-  [1146] = {.lex_state = 37, .external_lex_state = 9},
-  [1147] = {.lex_state = 37, .external_lex_state = 14},
-  [1148] = {.lex_state = 38, .external_lex_state = 12},
-  [1149] = {.lex_state = 38, .external_lex_state = 12},
-  [1150] = {.lex_state = 37, .external_lex_state = 8},
-  [1151] = {.lex_state = 37, .external_lex_state = 14},
-  [1152] = {.lex_state = 37, .external_lex_state = 14},
-  [1153] = {.lex_state = 37, .external_lex_state = 14},
-  [1154] = {.lex_state = 37, .external_lex_state = 9},
-  [1155] = {.lex_state = 37, .external_lex_state = 14},
-  [1156] = {.lex_state = 37, .external_lex_state = 14},
-  [1157] = {.lex_state = 37, .external_lex_state = 14},
-  [1158] = {.lex_state = 37, .external_lex_state = 14},
-  [1159] = {.lex_state = 37, .external_lex_state = 14},
-  [1160] = {.lex_state = 37, .external_lex_state = 14},
-  [1161] = {.lex_state = 37, .external_lex_state = 14},
-  [1162] = {.lex_state = 37, .external_lex_state = 15},
-  [1163] = {.lex_state = 37, .external_lex_state = 12},
-  [1164] = {.lex_state = 37, .external_lex_state = 12},
-  [1165] = {.lex_state = 37, .external_lex_state = 8},
-  [1166] = {.lex_state = 37, .external_lex_state = 12},
-  [1167] = {.lex_state = 37, .external_lex_state = 12},
-  [1168] = {.lex_state = 37, .external_lex_state = 12},
-  [1169] = {.lex_state = 37, .external_lex_state = 12},
-  [1170] = {.lex_state = 37, .external_lex_state = 12},
-  [1171] = {.lex_state = 38, .external_lex_state = 14},
-  [1172] = {.lex_state = 38, .external_lex_state = 14},
-  [1173] = {.lex_state = 38, .external_lex_state = 14},
-  [1174] = {.lex_state = 37, .external_lex_state = 12},
-  [1175] = {.lex_state = 37, .external_lex_state = 12},
-  [1176] = {.lex_state = 37, .external_lex_state = 12},
-  [1177] = {.lex_state = 37, .external_lex_state = 12},
-  [1178] = {.lex_state = 37, .external_lex_state = 12},
-  [1179] = {.lex_state = 37, .external_lex_state = 15},
-  [1180] = {.lex_state = 37, .external_lex_state = 12},
-  [1181] = {.lex_state = 37, .external_lex_state = 7},
-  [1182] = {.lex_state = 37, .external_lex_state = 12},
-  [1183] = {.lex_state = 37, .external_lex_state = 12},
-  [1184] = {.lex_state = 37, .external_lex_state = 12},
-  [1185] = {.lex_state = 37, .external_lex_state = 12},
-  [1186] = {.lex_state = 37, .external_lex_state = 12},
-  [1187] = {.lex_state = 37, .external_lex_state = 14},
-  [1188] = {.lex_state = 37, .external_lex_state = 15},
-  [1189] = {.lex_state = 37, .external_lex_state = 15},
-  [1190] = {.lex_state = 38, .external_lex_state = 14},
-  [1191] = {.lex_state = 38, .external_lex_state = 13},
-  [1192] = {.lex_state = 37, .external_lex_state = 12},
-  [1193] = {.lex_state = 37, .external_lex_state = 12},
-  [1194] = {.lex_state = 37, .external_lex_state = 8},
-  [1195] = {.lex_state = 37, .external_lex_state = 12},
-  [1196] = {.lex_state = 37, .external_lex_state = 7},
-  [1197] = {.lex_state = 37, .external_lex_state = 12},
-  [1198] = {.lex_state = 37, .external_lex_state = 12},
-  [1199] = {.lex_state = 37, .external_lex_state = 12},
-  [1200] = {.lex_state = 38, .external_lex_state = 15},
-  [1201] = {.lex_state = 37, .external_lex_state = 12},
-  [1202] = {.lex_state = 37, .external_lex_state = 7},
-  [1203] = {.lex_state = 37, .external_lex_state = 12},
-  [1204] = {.lex_state = 37, .external_lex_state = 12},
-  [1205] = {.lex_state = 38, .external_lex_state = 13},
-  [1206] = {.lex_state = 37, .external_lex_state = 12},
-  [1207] = {.lex_state = 38, .external_lex_state = 13},
-  [1208] = {.lex_state = 37, .external_lex_state = 2},
-  [1209] = {.lex_state = 38, .external_lex_state = 13},
-  [1210] = {.lex_state = 37, .external_lex_state = 15},
-  [1211] = {.lex_state = 37, .external_lex_state = 12},
-  [1212] = {.lex_state = 37, .external_lex_state = 12},
-  [1213] = {.lex_state = 37, .external_lex_state = 15},
-  [1214] = {.lex_state = 38, .external_lex_state = 14},
-  [1215] = {.lex_state = 37, .external_lex_state = 12},
-  [1216] = {.lex_state = 37, .external_lex_state = 15},
-  [1217] = {.lex_state = 37, .external_lex_state = 15},
-  [1218] = {.lex_state = 37, .external_lex_state = 12},
-  [1219] = {.lex_state = 37, .external_lex_state = 14},
-  [1220] = {.lex_state = 37, .external_lex_state = 12},
-  [1221] = {.lex_state = 37, .external_lex_state = 12},
-  [1222] = {.lex_state = 37, .external_lex_state = 15},
-  [1223] = {.lex_state = 37, .external_lex_state = 15},
-  [1224] = {.lex_state = 37, .external_lex_state = 12},
-  [1225] = {.lex_state = 37, .external_lex_state = 15},
-  [1226] = {.lex_state = 38, .external_lex_state = 15},
-  [1227] = {.lex_state = 37, .external_lex_state = 12},
-  [1228] = {.lex_state = 38, .external_lex_state = 15},
-  [1229] = {.lex_state = 38, .external_lex_state = 15},
-  [1230] = {.lex_state = 38, .external_lex_state = 15},
-  [1231] = {.lex_state = 37, .external_lex_state = 15},
-  [1232] = {.lex_state = 37, .external_lex_state = 15},
-  [1233] = {.lex_state = 37, .external_lex_state = 12},
-  [1234] = {.lex_state = 38, .external_lex_state = 15},
-  [1235] = {.lex_state = 37, .external_lex_state = 12},
-  [1236] = {.lex_state = 37, .external_lex_state = 12},
-  [1237] = {.lex_state = 37, .external_lex_state = 12},
-  [1238] = {.lex_state = 37, .external_lex_state = 12},
-  [1239] = {.lex_state = 37, .external_lex_state = 12},
-  [1240] = {.lex_state = 37, .external_lex_state = 12},
-  [1241] = {.lex_state = 37, .external_lex_state = 12},
-  [1242] = {.lex_state = 38, .external_lex_state = 14},
-  [1243] = {.lex_state = 38, .external_lex_state = 14},
-  [1244] = {.lex_state = 38, .external_lex_state = 14},
-  [1245] = {.lex_state = 38, .external_lex_state = 14},
-  [1246] = {.lex_state = 38, .external_lex_state = 15},
-  [1247] = {.lex_state = 37, .external_lex_state = 12},
-  [1248] = {.lex_state = 38, .external_lex_state = 14},
-  [1249] = {.lex_state = 38, .external_lex_state = 15},
-  [1250] = {.lex_state = 37, .external_lex_state = 12},
-  [1251] = {.lex_state = 38, .external_lex_state = 14},
-  [1252] = {.lex_state = 37, .external_lex_state = 12},
-  [1253] = {.lex_state = 37, .external_lex_state = 12},
-  [1254] = {.lex_state = 38, .external_lex_state = 15},
-  [1255] = {.lex_state = 38, .external_lex_state = 15},
-  [1256] = {.lex_state = 37, .external_lex_state = 12},
-  [1257] = {.lex_state = 37, .external_lex_state = 12},
-  [1258] = {.lex_state = 37, .external_lex_state = 12},
-  [1259] = {.lex_state = 37, .external_lex_state = 2},
-  [1260] = {.lex_state = 37, .external_lex_state = 7},
-  [1261] = {.lex_state = 38, .external_lex_state = 14},
-  [1262] = {.lex_state = 37, .external_lex_state = 12},
-  [1263] = {.lex_state = 37, .external_lex_state = 12},
-  [1264] = {.lex_state = 37, .external_lex_state = 12},
-  [1265] = {.lex_state = 37, .external_lex_state = 12},
-  [1266] = {.lex_state = 37, .external_lex_state = 12},
-  [1267] = {.lex_state = 37, .external_lex_state = 12},
-  [1268] = {.lex_state = 37, .external_lex_state = 12},
-  [1269] = {.lex_state = 37, .external_lex_state = 14},
-  [1270] = {.lex_state = 37, .external_lex_state = 14},
-  [1271] = {.lex_state = 37, .external_lex_state = 14},
-  [1272] = {.lex_state = 37, .external_lex_state = 12},
-  [1273] = {.lex_state = 37, .external_lex_state = 12},
-  [1274] = {.lex_state = 37, .external_lex_state = 14},
-  [1275] = {.lex_state = 37, .external_lex_state = 12},
-  [1276] = {.lex_state = 37, .external_lex_state = 12},
-  [1277] = {.lex_state = 37, .external_lex_state = 12},
-  [1278] = {.lex_state = 37, .external_lex_state = 14},
-  [1279] = {.lex_state = 37, .external_lex_state = 12},
-  [1280] = {.lex_state = 37, .external_lex_state = 12},
-  [1281] = {.lex_state = 37, .external_lex_state = 12},
-  [1282] = {.lex_state = 37, .external_lex_state = 12},
-  [1283] = {.lex_state = 37, .external_lex_state = 12},
-  [1284] = {.lex_state = 37, .external_lex_state = 12},
-  [1285] = {.lex_state = 37, .external_lex_state = 12},
-  [1286] = {.lex_state = 37, .external_lex_state = 12},
-  [1287] = {.lex_state = 37, .external_lex_state = 14},
-  [1288] = {.lex_state = 37, .external_lex_state = 14},
-  [1289] = {.lex_state = 37, .external_lex_state = 14},
-  [1290] = {.lex_state = 37, .external_lex_state = 14},
-  [1291] = {.lex_state = 37, .external_lex_state = 15},
-  [1292] = {.lex_state = 37, .external_lex_state = 14},
-  [1293] = {.lex_state = 37, .external_lex_state = 13},
-  [1294] = {.lex_state = 37, .external_lex_state = 13},
-  [1295] = {.lex_state = 37, .external_lex_state = 13},
-  [1296] = {.lex_state = 37, .external_lex_state = 14},
-  [1297] = {.lex_state = 37, .external_lex_state = 14},
-  [1298] = {.lex_state = 37, .external_lex_state = 14},
-  [1299] = {.lex_state = 37, .external_lex_state = 14},
-  [1300] = {.lex_state = 37, .external_lex_state = 14},
-  [1301] = {.lex_state = 37, .external_lex_state = 14},
-  [1302] = {.lex_state = 37, .external_lex_state = 14},
-  [1303] = {.lex_state = 37, .external_lex_state = 14},
-  [1304] = {.lex_state = 37, .external_lex_state = 14},
-  [1305] = {.lex_state = 37, .external_lex_state = 14},
-  [1306] = {.lex_state = 37, .external_lex_state = 14},
-  [1307] = {.lex_state = 38, .external_lex_state = 14},
-  [1308] = {.lex_state = 38, .external_lex_state = 14},
-  [1309] = {.lex_state = 37, .external_lex_state = 13},
-  [1310] = {.lex_state = 38, .external_lex_state = 14},
-  [1311] = {.lex_state = 37, .external_lex_state = 14},
-  [1312] = {.lex_state = 37, .external_lex_state = 13},
-  [1313] = {.lex_state = 37, .external_lex_state = 14},
-  [1314] = {.lex_state = 37, .external_lex_state = 13},
-  [1315] = {.lex_state = 37, .external_lex_state = 15},
-  [1316] = {.lex_state = 37, .external_lex_state = 15},
-  [1317] = {.lex_state = 37, .external_lex_state = 15},
-  [1318] = {.lex_state = 37, .external_lex_state = 15},
-  [1319] = {.lex_state = 37, .external_lex_state = 14},
-  [1320] = {.lex_state = 37, .external_lex_state = 13},
-  [1321] = {.lex_state = 37, .external_lex_state = 13},
-  [1322] = {.lex_state = 37, .external_lex_state = 13},
-  [1323] = {.lex_state = 37, .external_lex_state = 14},
-  [1324] = {.lex_state = 37, .external_lex_state = 13},
-  [1325] = {.lex_state = 37, .external_lex_state = 15},
-  [1326] = {.lex_state = 37, .external_lex_state = 15},
-  [1327] = {.lex_state = 37, .external_lex_state = 15},
-  [1328] = {.lex_state = 37, .external_lex_state = 13},
-  [1329] = {.lex_state = 37, .external_lex_state = 13},
-  [1330] = {.lex_state = 37, .external_lex_state = 13},
-  [1331] = {.lex_state = 37, .external_lex_state = 13},
-  [1332] = {.lex_state = 37, .external_lex_state = 14},
-  [1333] = {.lex_state = 37, .external_lex_state = 14},
-  [1334] = {.lex_state = 37, .external_lex_state = 9},
-  [1335] = {.lex_state = 37, .external_lex_state = 13},
-  [1336] = {.lex_state = 37, .external_lex_state = 13},
-  [1337] = {.lex_state = 37, .external_lex_state = 14},
-  [1338] = {.lex_state = 37, .external_lex_state = 13},
-  [1339] = {.lex_state = 37, .external_lex_state = 13},
-  [1340] = {.lex_state = 38, .external_lex_state = 15},
-  [1341] = {.lex_state = 37, .external_lex_state = 14},
-  [1342] = {.lex_state = 37, .external_lex_state = 14},
-  [1343] = {.lex_state = 38, .external_lex_state = 15},
-  [1344] = {.lex_state = 37, .external_lex_state = 13},
-  [1345] = {.lex_state = 38, .external_lex_state = 15},
-  [1346] = {.lex_state = 37, .external_lex_state = 13},
-  [1347] = {.lex_state = 37, .external_lex_state = 13},
-  [1348] = {.lex_state = 37, .external_lex_state = 13},
-  [1349] = {.lex_state = 37, .external_lex_state = 15},
-  [1350] = {.lex_state = 37, .external_lex_state = 14},
-  [1351] = {.lex_state = 37, .external_lex_state = 13},
-  [1352] = {.lex_state = 37, .external_lex_state = 14},
-  [1353] = {.lex_state = 37, .external_lex_state = 13},
-  [1354] = {.lex_state = 37, .external_lex_state = 14},
-  [1355] = {.lex_state = 33, .external_lex_state = 9},
-  [1356] = {.lex_state = 37, .external_lex_state = 15},
-  [1357] = {.lex_state = 37, .external_lex_state = 15},
-  [1358] = {.lex_state = 37, .external_lex_state = 15},
-  [1359] = {.lex_state = 37, .external_lex_state = 15},
-  [1360] = {.lex_state = 37, .external_lex_state = 13},
-  [1361] = {.lex_state = 37, .external_lex_state = 13},
-  [1362] = {.lex_state = 37, .external_lex_state = 13},
-  [1363] = {.lex_state = 33, .external_lex_state = 9},
-  [1364] = {.lex_state = 37, .external_lex_state = 15},
-  [1365] = {.lex_state = 37, .external_lex_state = 13},
-  [1366] = {.lex_state = 37, .external_lex_state = 14},
-  [1367] = {.lex_state = 37, .external_lex_state = 15},
-  [1368] = {.lex_state = 37, .external_lex_state = 15},
-  [1369] = {.lex_state = 37, .external_lex_state = 14},
-  [1370] = {.lex_state = 37, .external_lex_state = 14},
-  [1371] = {.lex_state = 37, .external_lex_state = 14},
-  [1372] = {.lex_state = 37, .external_lex_state = 14},
-  [1373] = {.lex_state = 37, .external_lex_state = 14},
-  [1374] = {.lex_state = 37, .external_lex_state = 14},
-  [1375] = {.lex_state = 37, .external_lex_state = 14},
-  [1376] = {.lex_state = 37, .external_lex_state = 14},
-  [1377] = {.lex_state = 37, .external_lex_state = 14},
-  [1378] = {.lex_state = 37, .external_lex_state = 14},
-  [1379] = {.lex_state = 37, .external_lex_state = 14},
-  [1380] = {.lex_state = 37, .external_lex_state = 15},
-  [1381] = {.lex_state = 37, .external_lex_state = 15},
-  [1382] = {.lex_state = 37, .external_lex_state = 15},
-  [1383] = {.lex_state = 37, .external_lex_state = 14},
-  [1384] = {.lex_state = 37, .external_lex_state = 14},
-  [1385] = {.lex_state = 37, .external_lex_state = 14},
-  [1386] = {.lex_state = 37, .external_lex_state = 14},
-  [1387] = {.lex_state = 37, .external_lex_state = 15},
-  [1388] = {.lex_state = 37, .external_lex_state = 13},
-  [1389] = {.lex_state = 37, .external_lex_state = 14},
-  [1390] = {.lex_state = 37, .external_lex_state = 14},
-  [1391] = {.lex_state = 37, .external_lex_state = 14},
-  [1392] = {.lex_state = 37, .external_lex_state = 13},
-  [1393] = {.lex_state = 37, .external_lex_state = 15},
-  [1394] = {.lex_state = 33, .external_lex_state = 9},
-  [1395] = {.lex_state = 37, .external_lex_state = 14},
-  [1396] = {.lex_state = 37, .external_lex_state = 14},
-  [1397] = {.lex_state = 37, .external_lex_state = 15},
-  [1398] = {.lex_state = 37, .external_lex_state = 15},
-  [1399] = {.lex_state = 33, .external_lex_state = 9},
-  [1400] = {.lex_state = 33, .external_lex_state = 9},
-  [1401] = {.lex_state = 33, .external_lex_state = 9},
-  [1402] = {.lex_state = 37, .external_lex_state = 15},
-  [1403] = {.lex_state = 37, .external_lex_state = 15},
-  [1404] = {.lex_state = 37, .external_lex_state = 15},
-  [1405] = {.lex_state = 37, .external_lex_state = 14},
-  [1406] = {.lex_state = 37, .external_lex_state = 14},
-  [1407] = {.lex_state = 37, .external_lex_state = 14},
-  [1408] = {.lex_state = 37, .external_lex_state = 14},
-  [1409] = {.lex_state = 37, .external_lex_state = 14},
-  [1410] = {.lex_state = 37, .external_lex_state = 8},
-  [1411] = {.lex_state = 37, .external_lex_state = 15},
-  [1412] = {.lex_state = 37, .external_lex_state = 14},
-  [1413] = {.lex_state = 37, .external_lex_state = 15},
-  [1414] = {.lex_state = 37, .external_lex_state = 15},
-  [1415] = {.lex_state = 37, .external_lex_state = 15},
-  [1416] = {.lex_state = 37, .external_lex_state = 15},
-  [1417] = {.lex_state = 37, .external_lex_state = 15},
-  [1418] = {.lex_state = 37, .external_lex_state = 14},
-  [1419] = {.lex_state = 37, .external_lex_state = 15},
-  [1420] = {.lex_state = 37, .external_lex_state = 8},
-  [1421] = {.lex_state = 37, .external_lex_state = 15},
-  [1422] = {.lex_state = 37, .external_lex_state = 14},
-  [1423] = {.lex_state = 37, .external_lex_state = 14},
-  [1424] = {.lex_state = 37, .external_lex_state = 15},
-  [1425] = {.lex_state = 37, .external_lex_state = 15},
-  [1426] = {.lex_state = 37, .external_lex_state = 14},
-  [1427] = {.lex_state = 37, .external_lex_state = 14},
-  [1428] = {.lex_state = 37, .external_lex_state = 14},
-  [1429] = {.lex_state = 37, .external_lex_state = 13},
-  [1430] = {.lex_state = 37, .external_lex_state = 15},
-  [1431] = {.lex_state = 37, .external_lex_state = 14},
-  [1432] = {.lex_state = 37, .external_lex_state = 14},
-  [1433] = {.lex_state = 37, .external_lex_state = 13},
-  [1434] = {.lex_state = 37, .external_lex_state = 13},
-  [1435] = {.lex_state = 37, .external_lex_state = 14},
-  [1436] = {.lex_state = 37, .external_lex_state = 13},
-  [1437] = {.lex_state = 37, .external_lex_state = 13},
-  [1438] = {.lex_state = 37, .external_lex_state = 14},
-  [1439] = {.lex_state = 37, .external_lex_state = 13},
-  [1440] = {.lex_state = 37, .external_lex_state = 14},
-  [1441] = {.lex_state = 37, .external_lex_state = 14},
-  [1442] = {.lex_state = 37, .external_lex_state = 14},
-  [1443] = {.lex_state = 37, .external_lex_state = 15},
-  [1444] = {.lex_state = 37, .external_lex_state = 15},
-  [1445] = {.lex_state = 37, .external_lex_state = 15},
-  [1446] = {.lex_state = 37, .external_lex_state = 14},
-  [1447] = {.lex_state = 37, .external_lex_state = 14},
-  [1448] = {.lex_state = 37, .external_lex_state = 15},
-  [1449] = {.lex_state = 37, .external_lex_state = 14},
-  [1450] = {.lex_state = 37, .external_lex_state = 15},
-  [1451] = {.lex_state = 38, .external_lex_state = 14},
-  [1452] = {.lex_state = 37, .external_lex_state = 15},
-  [1453] = {.lex_state = 37, .external_lex_state = 13},
-  [1454] = {.lex_state = 37, .external_lex_state = 15},
-  [1455] = {.lex_state = 37, .external_lex_state = 15},
-  [1456] = {.lex_state = 37, .external_lex_state = 15},
-  [1457] = {.lex_state = 37, .external_lex_state = 15},
-  [1458] = {.lex_state = 37, .external_lex_state = 15},
-  [1459] = {.lex_state = 37, .external_lex_state = 15},
-  [1460] = {.lex_state = 37, .external_lex_state = 15},
-  [1461] = {.lex_state = 37, .external_lex_state = 15},
-  [1462] = {.lex_state = 37, .external_lex_state = 15},
-  [1463] = {.lex_state = 38, .external_lex_state = 12},
-  [1464] = {.lex_state = 37, .external_lex_state = 15},
-  [1465] = {.lex_state = 37, .external_lex_state = 15},
-  [1466] = {.lex_state = 38, .external_lex_state = 12},
-  [1467] = {.lex_state = 38, .external_lex_state = 12},
-  [1468] = {.lex_state = 37, .external_lex_state = 15},
-  [1469] = {.lex_state = 37, .external_lex_state = 15},
-  [1470] = {.lex_state = 37, .external_lex_state = 15},
-  [1471] = {.lex_state = 37, .external_lex_state = 15},
-  [1472] = {.lex_state = 37, .external_lex_state = 15},
-  [1473] = {.lex_state = 37, .external_lex_state = 15},
-  [1474] = {.lex_state = 38, .external_lex_state = 14},
-  [1475] = {.lex_state = 37, .external_lex_state = 15},
-  [1476] = {.lex_state = 38, .external_lex_state = 14},
-  [1477] = {.lex_state = 37, .external_lex_state = 15},
-  [1478] = {.lex_state = 37, .external_lex_state = 15},
-  [1479] = {.lex_state = 37, .external_lex_state = 15},
-  [1480] = {.lex_state = 37, .external_lex_state = 15},
-  [1481] = {.lex_state = 37, .external_lex_state = 15},
-  [1482] = {.lex_state = 37, .external_lex_state = 15},
-  [1483] = {.lex_state = 37, .external_lex_state = 15},
-  [1484] = {.lex_state = 37, .external_lex_state = 15},
-  [1485] = {.lex_state = 37, .external_lex_state = 15},
-  [1486] = {.lex_state = 37, .external_lex_state = 15},
-  [1487] = {.lex_state = 37, .external_lex_state = 15},
-  [1488] = {.lex_state = 37, .external_lex_state = 15},
-  [1489] = {.lex_state = 37, .external_lex_state = 15},
-  [1490] = {.lex_state = 37, .external_lex_state = 15},
-  [1491] = {.lex_state = 37, .external_lex_state = 15},
-  [1492] = {.lex_state = 37, .external_lex_state = 15},
-  [1493] = {.lex_state = 38, .external_lex_state = 15},
-  [1494] = {.lex_state = 38, .external_lex_state = 15},
-  [1495] = {.lex_state = 38, .external_lex_state = 15},
-  [1496] = {.lex_state = 37, .external_lex_state = 15},
-  [1497] = {.lex_state = 33, .external_lex_state = 13},
-  [1498] = {.lex_state = 33, .external_lex_state = 13},
-  [1499] = {.lex_state = 33, .external_lex_state = 13},
-  [1500] = {.lex_state = 33, .external_lex_state = 13},
-  [1501] = {.lex_state = 33, .external_lex_state = 13},
-  [1502] = {.lex_state = 33, .external_lex_state = 13},
-  [1503] = {.lex_state = 33, .external_lex_state = 13},
-  [1504] = {.lex_state = 33, .external_lex_state = 13},
-  [1505] = {.lex_state = 33, .external_lex_state = 13},
-  [1506] = {.lex_state = 33, .external_lex_state = 13},
-  [1507] = {.lex_state = 33, .external_lex_state = 13},
-  [1508] = {.lex_state = 33, .external_lex_state = 13},
-  [1509] = {.lex_state = 33, .external_lex_state = 13},
-  [1510] = {.lex_state = 33, .external_lex_state = 13},
-  [1511] = {.lex_state = 33, .external_lex_state = 13},
-  [1512] = {.lex_state = 33, .external_lex_state = 13},
-  [1513] = {.lex_state = 37, .external_lex_state = 14},
-  [1514] = {.lex_state = 37, .external_lex_state = 15},
-  [1515] = {.lex_state = 37, .external_lex_state = 12},
-  [1516] = {.lex_state = 36, .external_lex_state = 2},
-  [1517] = {.lex_state = 36, .external_lex_state = 2},
-  [1518] = {.lex_state = 30, .external_lex_state = 7},
-  [1519] = {.lex_state = 30, .external_lex_state = 7},
-  [1520] = {.lex_state = 30, .external_lex_state = 7},
-  [1521] = {.lex_state = 30, .external_lex_state = 7},
-  [1522] = {.lex_state = 30, .external_lex_state = 7},
-  [1523] = {.lex_state = 30, .external_lex_state = 7},
-  [1524] = {.lex_state = 30, .external_lex_state = 8},
-  [1525] = {.lex_state = 30, .external_lex_state = 7},
-  [1526] = {.lex_state = 30, .external_lex_state = 7},
-  [1527] = {.lex_state = 30, .external_lex_state = 8},
-  [1528] = {.lex_state = 30, .external_lex_state = 8},
-  [1529] = {.lex_state = 30, .external_lex_state = 7},
-  [1530] = {.lex_state = 30, .external_lex_state = 8},
-  [1531] = {.lex_state = 30, .external_lex_state = 8},
-  [1532] = {.lex_state = 30, .external_lex_state = 7},
-  [1533] = {.lex_state = 30, .external_lex_state = 8},
-  [1534] = {.lex_state = 30, .external_lex_state = 7},
-  [1535] = {.lex_state = 30, .external_lex_state = 7},
-  [1536] = {.lex_state = 30, .external_lex_state = 8},
-  [1537] = {.lex_state = 30, .external_lex_state = 7},
-  [1538] = {.lex_state = 30, .external_lex_state = 8},
-  [1539] = {.lex_state = 30, .external_lex_state = 7},
-  [1540] = {.lex_state = 30, .external_lex_state = 8},
-  [1541] = {.lex_state = 30, .external_lex_state = 7},
-  [1542] = {.lex_state = 30, .external_lex_state = 7},
-  [1543] = {.lex_state = 30, .external_lex_state = 8},
-  [1544] = {.lex_state = 30, .external_lex_state = 8},
-  [1545] = {.lex_state = 30, .external_lex_state = 7},
-  [1546] = {.lex_state = 30, .external_lex_state = 7},
-  [1547] = {.lex_state = 30, .external_lex_state = 7},
-  [1548] = {.lex_state = 30, .external_lex_state = 7},
-  [1549] = {.lex_state = 30, .external_lex_state = 7},
-  [1550] = {.lex_state = 30, .external_lex_state = 7},
-  [1551] = {.lex_state = 30, .external_lex_state = 8},
-  [1552] = {.lex_state = 30, .external_lex_state = 7},
-  [1553] = {.lex_state = 30, .external_lex_state = 7},
-  [1554] = {.lex_state = 30, .external_lex_state = 2},
-  [1555] = {.lex_state = 30, .external_lex_state = 2},
-  [1556] = {.lex_state = 30, .external_lex_state = 2},
-  [1557] = {.lex_state = 30, .external_lex_state = 2},
-  [1558] = {.lex_state = 30, .external_lex_state = 2},
-  [1559] = {.lex_state = 30, .external_lex_state = 6},
-  [1560] = {.lex_state = 30, .external_lex_state = 6},
-  [1561] = {.lex_state = 30, .external_lex_state = 6},
-  [1562] = {.lex_state = 30, .external_lex_state = 6},
-  [1563] = {.lex_state = 30, .external_lex_state = 6},
-  [1564] = {.lex_state = 30, .external_lex_state = 6},
-  [1565] = {.lex_state = 30, .external_lex_state = 6},
-  [1566] = {.lex_state = 30, .external_lex_state = 6},
-  [1567] = {.lex_state = 30, .external_lex_state = 6},
-  [1568] = {.lex_state = 30, .external_lex_state = 6},
-  [1569] = {.lex_state = 30, .external_lex_state = 6},
-  [1570] = {.lex_state = 30, .external_lex_state = 6},
-  [1571] = {.lex_state = 30, .external_lex_state = 6},
-  [1572] = {.lex_state = 30, .external_lex_state = 6},
-  [1573] = {.lex_state = 30, .external_lex_state = 6},
-  [1574] = {.lex_state = 30, .external_lex_state = 6},
-  [1575] = {.lex_state = 30, .external_lex_state = 6},
-  [1576] = {.lex_state = 30, .external_lex_state = 6},
-  [1577] = {.lex_state = 30, .external_lex_state = 6},
-  [1578] = {.lex_state = 30, .external_lex_state = 6},
-  [1579] = {.lex_state = 30, .external_lex_state = 2},
-  [1580] = {.lex_state = 30, .external_lex_state = 2},
-  [1581] = {.lex_state = 30, .external_lex_state = 2},
-  [1582] = {.lex_state = 30, .external_lex_state = 2},
-  [1583] = {.lex_state = 30, .external_lex_state = 2},
-  [1584] = {.lex_state = 30, .external_lex_state = 2},
-  [1585] = {.lex_state = 30, .external_lex_state = 2},
-  [1586] = {.lex_state = 30, .external_lex_state = 2},
-  [1587] = {.lex_state = 30, .external_lex_state = 2},
-  [1588] = {.lex_state = 33, .external_lex_state = 9},
-  [1589] = {.lex_state = 33, .external_lex_state = 9},
-  [1590] = {.lex_state = 37, .external_lex_state = 12},
-  [1591] = {.lex_state = 37, .external_lex_state = 12},
-  [1592] = {.lex_state = 37, .external_lex_state = 12},
-  [1593] = {.lex_state = 33, .external_lex_state = 13},
-  [1594] = {.lex_state = 37, .external_lex_state = 12},
-  [1595] = {.lex_state = 33, .external_lex_state = 13},
-  [1596] = {.lex_state = 33, .external_lex_state = 14},
-  [1597] = {.lex_state = 33, .external_lex_state = 14},
-  [1598] = {.lex_state = 37, .external_lex_state = 12},
-  [1599] = {.lex_state = 37, .external_lex_state = 12},
-  [1600] = {.lex_state = 33, .external_lex_state = 15},
-  [1601] = {.lex_state = 54, .external_lex_state = 12},
-  [1602] = {.lex_state = 54, .external_lex_state = 12},
-  [1603] = {.lex_state = 54, .external_lex_state = 12},
-  [1604] = {.lex_state = 33, .external_lex_state = 15},
-  [1605] = {.lex_state = 54, .external_lex_state = 12},
-  [1606] = {.lex_state = 37, .external_lex_state = 14},
-  [1607] = {.lex_state = 37, .external_lex_state = 14},
-  [1608] = {.lex_state = 37, .external_lex_state = 14},
-  [1609] = {.lex_state = 37, .external_lex_state = 14},
-  [1610] = {.lex_state = 54, .external_lex_state = 14},
-  [1611] = {.lex_state = 35, .external_lex_state = 9},
-  [1612] = {.lex_state = 37, .external_lex_state = 14},
-  [1613] = {.lex_state = 54, .external_lex_state = 14},
-  [1614] = {.lex_state = 54, .external_lex_state = 15},
-  [1615] = {.lex_state = 35, .external_lex_state = 9},
-  [1616] = {.lex_state = 37, .external_lex_state = 14},
-  [1617] = {.lex_state = 54, .external_lex_state = 15},
-  [1618] = {.lex_state = 37, .external_lex_state = 13},
-  [1619] = {.lex_state = 37, .external_lex_state = 13},
-  [1620] = {.lex_state = 37, .external_lex_state = 13},
-  [1621] = {.lex_state = 37, .external_lex_state = 13},
-  [1622] = {.lex_state = 37, .external_lex_state = 15},
-  [1623] = {.lex_state = 37, .external_lex_state = 13},
-  [1624] = {.lex_state = 37, .external_lex_state = 13},
-  [1625] = {.lex_state = 37, .external_lex_state = 13},
-  [1626] = {.lex_state = 37, .external_lex_state = 14},
-  [1627] = {.lex_state = 37, .external_lex_state = 14},
-  [1628] = {.lex_state = 35, .external_lex_state = 9},
-  [1629] = {.lex_state = 37, .external_lex_state = 15},
-  [1630] = {.lex_state = 37, .external_lex_state = 15},
-  [1631] = {.lex_state = 37, .external_lex_state = 13},
-  [1632] = {.lex_state = 37, .external_lex_state = 15},
-  [1633] = {.lex_state = 37, .external_lex_state = 13},
-  [1634] = {.lex_state = 37, .external_lex_state = 15},
-  [1635] = {.lex_state = 35, .external_lex_state = 9},
-  [1636] = {.lex_state = 37, .external_lex_state = 13},
-  [1637] = {.lex_state = 37, .external_lex_state = 13},
-  [1638] = {.lex_state = 37, .external_lex_state = 14},
-  [1639] = {.lex_state = 37, .external_lex_state = 13},
-  [1640] = {.lex_state = 37, .external_lex_state = 13},
-  [1641] = {.lex_state = 37, .external_lex_state = 13},
-  [1642] = {.lex_state = 37, .external_lex_state = 14},
-  [1643] = {.lex_state = 37, .external_lex_state = 15},
-  [1644] = {.lex_state = 37, .external_lex_state = 13},
-  [1645] = {.lex_state = 37, .external_lex_state = 14},
-  [1646] = {.lex_state = 37, .external_lex_state = 13},
-  [1647] = {.lex_state = 37, .external_lex_state = 13},
-  [1648] = {.lex_state = 37, .external_lex_state = 13},
-  [1649] = {.lex_state = 35, .external_lex_state = 9},
-  [1650] = {.lex_state = 37, .external_lex_state = 13},
-  [1651] = {.lex_state = 37, .external_lex_state = 13},
-  [1652] = {.lex_state = 37, .external_lex_state = 13},
-  [1653] = {.lex_state = 35, .external_lex_state = 9},
-  [1654] = {.lex_state = 37, .external_lex_state = 13},
-  [1655] = {.lex_state = 37, .external_lex_state = 14},
-  [1656] = {.lex_state = 36, .external_lex_state = 13},
-  [1657] = {.lex_state = 36, .external_lex_state = 13},
-  [1658] = {.lex_state = 36, .external_lex_state = 13},
-  [1659] = {.lex_state = 36, .external_lex_state = 13},
-  [1660] = {.lex_state = 36, .external_lex_state = 13},
-  [1661] = {.lex_state = 35, .external_lex_state = 13},
-  [1662] = {.lex_state = 36, .external_lex_state = 13},
-  [1663] = {.lex_state = 36, .external_lex_state = 13},
-  [1664] = {.lex_state = 35, .external_lex_state = 13},
-  [1665] = {.lex_state = 36, .external_lex_state = 13},
-  [1666] = {.lex_state = 35, .external_lex_state = 9},
-  [1667] = {.lex_state = 36, .external_lex_state = 13},
-  [1668] = {.lex_state = 35, .external_lex_state = 13},
-  [1669] = {.lex_state = 36, .external_lex_state = 13},
-  [1670] = {.lex_state = 35, .external_lex_state = 13},
-  [1671] = {.lex_state = 35, .external_lex_state = 13},
-  [1672] = {.lex_state = 35, .external_lex_state = 13},
-  [1673] = {.lex_state = 35, .external_lex_state = 13},
-  [1674] = {.lex_state = 36, .external_lex_state = 13},
-  [1675] = {.lex_state = 35, .external_lex_state = 13},
-  [1676] = {.lex_state = 30, .external_lex_state = 14},
-  [1677] = {.lex_state = 36, .external_lex_state = 13},
-  [1678] = {.lex_state = 30, .external_lex_state = 14},
-  [1679] = {.lex_state = 35, .external_lex_state = 13},
-  [1680] = {.lex_state = 36, .external_lex_state = 13},
-  [1681] = {.lex_state = 30, .external_lex_state = 14},
-  [1682] = {.lex_state = 30, .external_lex_state = 13},
-  [1683] = {.lex_state = 30, .external_lex_state = 13},
-  [1684] = {.lex_state = 54, .external_lex_state = 12},
-  [1685] = {.lex_state = 33, .external_lex_state = 9},
-  [1686] = {.lex_state = 54, .external_lex_state = 12},
-  [1687] = {.lex_state = 33, .external_lex_state = 9},
-  [1688] = {.lex_state = 33, .external_lex_state = 9},
-  [1689] = {.lex_state = 33, .external_lex_state = 9},
-  [1690] = {.lex_state = 54, .external_lex_state = 12},
-  [1691] = {.lex_state = 54, .external_lex_state = 12},
-  [1692] = {.lex_state = 33, .external_lex_state = 9},
-  [1693] = {.lex_state = 33, .external_lex_state = 9},
-  [1694] = {.lex_state = 54, .external_lex_state = 12},
-  [1695] = {.lex_state = 54, .external_lex_state = 12},
-  [1696] = {.lex_state = 33, .external_lex_state = 9},
-  [1697] = {.lex_state = 33, .external_lex_state = 9},
-  [1698] = {.lex_state = 54, .external_lex_state = 12},
-  [1699] = {.lex_state = 33, .external_lex_state = 9},
-  [1700] = {.lex_state = 54, .external_lex_state = 12},
-  [1701] = {.lex_state = 54, .external_lex_state = 15},
-  [1702] = {.lex_state = 54, .external_lex_state = 15},
-  [1703] = {.lex_state = 54, .external_lex_state = 15},
-  [1704] = {.lex_state = 54, .external_lex_state = 14},
-  [1705] = {.lex_state = 54, .external_lex_state = 14},
-  [1706] = {.lex_state = 54, .external_lex_state = 14},
-  [1707] = {.lex_state = 54, .external_lex_state = 14},
-  [1708] = {.lex_state = 54, .external_lex_state = 14},
-  [1709] = {.lex_state = 33, .external_lex_state = 9},
-  [1710] = {.lex_state = 54, .external_lex_state = 15},
-  [1711] = {.lex_state = 54, .external_lex_state = 14},
-  [1712] = {.lex_state = 54, .external_lex_state = 14},
-  [1713] = {.lex_state = 54, .external_lex_state = 14},
-  [1714] = {.lex_state = 54, .external_lex_state = 15},
-  [1715] = {.lex_state = 54, .external_lex_state = 15},
-  [1716] = {.lex_state = 54, .external_lex_state = 14},
-  [1717] = {.lex_state = 54, .external_lex_state = 14},
-  [1718] = {.lex_state = 54, .external_lex_state = 14},
-  [1719] = {.lex_state = 54, .external_lex_state = 14},
-  [1720] = {.lex_state = 54, .external_lex_state = 14},
-  [1721] = {.lex_state = 54, .external_lex_state = 14},
-  [1722] = {.lex_state = 54, .external_lex_state = 14},
-  [1723] = {.lex_state = 54, .external_lex_state = 15},
-  [1724] = {.lex_state = 54, .external_lex_state = 14},
-  [1725] = {.lex_state = 54, .external_lex_state = 15},
-  [1726] = {.lex_state = 54, .external_lex_state = 14},
+  [1] = {.lex_state = 52, .external_lex_state = 2},
+  [2] = {.lex_state = 52, .external_lex_state = 3},
+  [3] = {.lex_state = 52, .external_lex_state = 3},
+  [4] = {.lex_state = 52, .external_lex_state = 3},
+  [5] = {.lex_state = 52, .external_lex_state = 3},
+  [6] = {.lex_state = 52, .external_lex_state = 3},
+  [7] = {.lex_state = 52, .external_lex_state = 3},
+  [8] = {.lex_state = 52, .external_lex_state = 3},
+  [9] = {.lex_state = 52, .external_lex_state = 3},
+  [10] = {.lex_state = 52, .external_lex_state = 3},
+  [11] = {.lex_state = 52, .external_lex_state = 3},
+  [12] = {.lex_state = 52, .external_lex_state = 3},
+  [13] = {.lex_state = 52, .external_lex_state = 3},
+  [14] = {.lex_state = 52, .external_lex_state = 3},
+  [15] = {.lex_state = 52, .external_lex_state = 3},
+  [16] = {.lex_state = 52, .external_lex_state = 3},
+  [17] = {.lex_state = 52, .external_lex_state = 3},
+  [18] = {.lex_state = 52, .external_lex_state = 3},
+  [19] = {.lex_state = 52, .external_lex_state = 3},
+  [20] = {.lex_state = 52, .external_lex_state = 3},
+  [21] = {.lex_state = 52, .external_lex_state = 3},
+  [22] = {.lex_state = 52, .external_lex_state = 3},
+  [23] = {.lex_state = 52, .external_lex_state = 3},
+  [24] = {.lex_state = 52, .external_lex_state = 3},
+  [25] = {.lex_state = 52, .external_lex_state = 3},
+  [26] = {.lex_state = 52, .external_lex_state = 3},
+  [27] = {.lex_state = 52, .external_lex_state = 3},
+  [28] = {.lex_state = 52, .external_lex_state = 3},
+  [29] = {.lex_state = 52, .external_lex_state = 3},
+  [30] = {.lex_state = 52, .external_lex_state = 3},
+  [31] = {.lex_state = 52, .external_lex_state = 3},
+  [32] = {.lex_state = 52, .external_lex_state = 3},
+  [33] = {.lex_state = 52, .external_lex_state = 3},
+  [34] = {.lex_state = 52, .external_lex_state = 3},
+  [35] = {.lex_state = 52, .external_lex_state = 3},
+  [36] = {.lex_state = 52, .external_lex_state = 3},
+  [37] = {.lex_state = 52, .external_lex_state = 3},
+  [38] = {.lex_state = 52, .external_lex_state = 3},
+  [39] = {.lex_state = 52, .external_lex_state = 3},
+  [40] = {.lex_state = 52, .external_lex_state = 3},
+  [41] = {.lex_state = 52, .external_lex_state = 3},
+  [42] = {.lex_state = 52, .external_lex_state = 3},
+  [43] = {.lex_state = 52, .external_lex_state = 3},
+  [44] = {.lex_state = 52, .external_lex_state = 3},
+  [45] = {.lex_state = 52, .external_lex_state = 3},
+  [46] = {.lex_state = 52, .external_lex_state = 3},
+  [47] = {.lex_state = 52, .external_lex_state = 3},
+  [48] = {.lex_state = 52, .external_lex_state = 3},
+  [49] = {.lex_state = 52, .external_lex_state = 3},
+  [50] = {.lex_state = 52, .external_lex_state = 3},
+  [51] = {.lex_state = 52, .external_lex_state = 3},
+  [52] = {.lex_state = 52, .external_lex_state = 3},
+  [53] = {.lex_state = 52, .external_lex_state = 3},
+  [54] = {.lex_state = 52, .external_lex_state = 3},
+  [55] = {.lex_state = 52, .external_lex_state = 3},
+  [56] = {.lex_state = 52, .external_lex_state = 3},
+  [57] = {.lex_state = 52, .external_lex_state = 3},
+  [58] = {.lex_state = 52, .external_lex_state = 3},
+  [59] = {.lex_state = 52, .external_lex_state = 3},
+  [60] = {.lex_state = 52, .external_lex_state = 3},
+  [61] = {.lex_state = 52, .external_lex_state = 3},
+  [62] = {.lex_state = 52, .external_lex_state = 3},
+  [63] = {.lex_state = 52, .external_lex_state = 3},
+  [64] = {.lex_state = 52, .external_lex_state = 2},
+  [65] = {.lex_state = 52, .external_lex_state = 3},
+  [66] = {.lex_state = 52, .external_lex_state = 3},
+  [67] = {.lex_state = 52, .external_lex_state = 3},
+  [68] = {.lex_state = 52, .external_lex_state = 3},
+  [69] = {.lex_state = 52, .external_lex_state = 3},
+  [70] = {.lex_state = 52, .external_lex_state = 2},
+  [71] = {.lex_state = 52, .external_lex_state = 3},
+  [72] = {.lex_state = 52, .external_lex_state = 3},
+  [73] = {.lex_state = 4, .external_lex_state = 4},
+  [74] = {.lex_state = 4, .external_lex_state = 4},
+  [75] = {.lex_state = 5, .external_lex_state = 5},
+  [76] = {.lex_state = 5, .external_lex_state = 5},
+  [77] = {.lex_state = 5, .external_lex_state = 5},
+  [78] = {.lex_state = 5, .external_lex_state = 5},
+  [79] = {.lex_state = 5, .external_lex_state = 5},
+  [80] = {.lex_state = 5, .external_lex_state = 5},
+  [81] = {.lex_state = 5, .external_lex_state = 5},
+  [82] = {.lex_state = 5, .external_lex_state = 5},
+  [83] = {.lex_state = 4, .external_lex_state = 4},
+  [84] = {.lex_state = 4, .external_lex_state = 4},
+  [85] = {.lex_state = 4, .external_lex_state = 4},
+  [86] = {.lex_state = 4, .external_lex_state = 4},
+  [87] = {.lex_state = 52, .external_lex_state = 5},
+  [88] = {.lex_state = 52, .external_lex_state = 5},
+  [89] = {.lex_state = 52, .external_lex_state = 5},
+  [90] = {.lex_state = 52, .external_lex_state = 5},
+  [91] = {.lex_state = 52, .external_lex_state = 5},
+  [92] = {.lex_state = 52, .external_lex_state = 5},
+  [93] = {.lex_state = 52, .external_lex_state = 5},
+  [94] = {.lex_state = 52, .external_lex_state = 5},
+  [95] = {.lex_state = 52, .external_lex_state = 5},
+  [96] = {.lex_state = 52, .external_lex_state = 5},
+  [97] = {.lex_state = 52, .external_lex_state = 5},
+  [98] = {.lex_state = 52, .external_lex_state = 5},
+  [99] = {.lex_state = 52, .external_lex_state = 5},
+  [100] = {.lex_state = 52, .external_lex_state = 5},
+  [101] = {.lex_state = 52, .external_lex_state = 5},
+  [102] = {.lex_state = 52, .external_lex_state = 5},
+  [103] = {.lex_state = 52, .external_lex_state = 5},
+  [104] = {.lex_state = 52, .external_lex_state = 5},
+  [105] = {.lex_state = 52, .external_lex_state = 5},
+  [106] = {.lex_state = 52, .external_lex_state = 5},
+  [107] = {.lex_state = 52, .external_lex_state = 5},
+  [108] = {.lex_state = 52, .external_lex_state = 5},
+  [109] = {.lex_state = 52, .external_lex_state = 5},
+  [110] = {.lex_state = 52, .external_lex_state = 5},
+  [111] = {.lex_state = 52, .external_lex_state = 5},
+  [112] = {.lex_state = 52, .external_lex_state = 5},
+  [113] = {.lex_state = 52, .external_lex_state = 5},
+  [114] = {.lex_state = 52, .external_lex_state = 5},
+  [115] = {.lex_state = 52, .external_lex_state = 5},
+  [116] = {.lex_state = 52, .external_lex_state = 5},
+  [117] = {.lex_state = 52, .external_lex_state = 5},
+  [118] = {.lex_state = 52, .external_lex_state = 5},
+  [119] = {.lex_state = 52, .external_lex_state = 5},
+  [120] = {.lex_state = 52, .external_lex_state = 5},
+  [121] = {.lex_state = 52, .external_lex_state = 5},
+  [122] = {.lex_state = 52, .external_lex_state = 5},
+  [123] = {.lex_state = 52, .external_lex_state = 5},
+  [124] = {.lex_state = 52, .external_lex_state = 5},
+  [125] = {.lex_state = 52, .external_lex_state = 5},
+  [126] = {.lex_state = 52, .external_lex_state = 5},
+  [127] = {.lex_state = 52, .external_lex_state = 5},
+  [128] = {.lex_state = 52, .external_lex_state = 5},
+  [129] = {.lex_state = 52, .external_lex_state = 5},
+  [130] = {.lex_state = 52, .external_lex_state = 5},
+  [131] = {.lex_state = 52, .external_lex_state = 5},
+  [132] = {.lex_state = 52, .external_lex_state = 5},
+  [133] = {.lex_state = 52, .external_lex_state = 5},
+  [134] = {.lex_state = 52, .external_lex_state = 5},
+  [135] = {.lex_state = 52, .external_lex_state = 5},
+  [136] = {.lex_state = 52, .external_lex_state = 5},
+  [137] = {.lex_state = 52, .external_lex_state = 4},
+  [138] = {.lex_state = 52, .external_lex_state = 4},
+  [139] = {.lex_state = 52, .external_lex_state = 4},
+  [140] = {.lex_state = 52, .external_lex_state = 4},
+  [141] = {.lex_state = 52, .external_lex_state = 4},
+  [142] = {.lex_state = 52, .external_lex_state = 4},
+  [143] = {.lex_state = 52, .external_lex_state = 4},
+  [144] = {.lex_state = 52, .external_lex_state = 4},
+  [145] = {.lex_state = 52, .external_lex_state = 4},
+  [146] = {.lex_state = 52, .external_lex_state = 4},
+  [147] = {.lex_state = 52, .external_lex_state = 4},
+  [148] = {.lex_state = 52, .external_lex_state = 4},
+  [149] = {.lex_state = 52, .external_lex_state = 4},
+  [150] = {.lex_state = 52, .external_lex_state = 4},
+  [151] = {.lex_state = 52, .external_lex_state = 4},
+  [152] = {.lex_state = 52, .external_lex_state = 4},
+  [153] = {.lex_state = 52, .external_lex_state = 2},
+  [154] = {.lex_state = 4, .external_lex_state = 4},
+  [155] = {.lex_state = 4, .external_lex_state = 4},
+  [156] = {.lex_state = 11, .external_lex_state = 4},
+  [157] = {.lex_state = 5, .external_lex_state = 4},
+  [158] = {.lex_state = 12, .external_lex_state = 4},
+  [159] = {.lex_state = 5, .external_lex_state = 6},
+  [160] = {.lex_state = 5, .external_lex_state = 6},
+  [161] = {.lex_state = 12, .external_lex_state = 4},
+  [162] = {.lex_state = 12, .external_lex_state = 6},
+  [163] = {.lex_state = 5, .external_lex_state = 6},
+  [164] = {.lex_state = 12, .external_lex_state = 7},
+  [165] = {.lex_state = 5, .external_lex_state = 6},
+  [166] = {.lex_state = 5, .external_lex_state = 7},
+  [167] = {.lex_state = 5, .external_lex_state = 2},
+  [168] = {.lex_state = 12, .external_lex_state = 6},
+  [169] = {.lex_state = 5, .external_lex_state = 7},
+  [170] = {.lex_state = 5, .external_lex_state = 8},
+  [171] = {.lex_state = 5, .external_lex_state = 7},
+  [172] = {.lex_state = 5, .external_lex_state = 8},
+  [173] = {.lex_state = 5, .external_lex_state = 8},
+  [174] = {.lex_state = 5, .external_lex_state = 7},
+  [175] = {.lex_state = 12, .external_lex_state = 7},
+  [176] = {.lex_state = 11, .external_lex_state = 4},
+  [177] = {.lex_state = 12, .external_lex_state = 2},
+  [178] = {.lex_state = 12, .external_lex_state = 6},
+  [179] = {.lex_state = 5, .external_lex_state = 8},
+  [180] = {.lex_state = 12, .external_lex_state = 8},
+  [181] = {.lex_state = 12, .external_lex_state = 2},
+  [182] = {.lex_state = 5, .external_lex_state = 7},
+  [183] = {.lex_state = 5, .external_lex_state = 7},
+  [184] = {.lex_state = 12, .external_lex_state = 8},
+  [185] = {.lex_state = 5, .external_lex_state = 7},
+  [186] = {.lex_state = 5, .external_lex_state = 8},
+  [187] = {.lex_state = 11, .external_lex_state = 2},
+  [188] = {.lex_state = 11, .external_lex_state = 2},
+  [189] = {.lex_state = 52, .external_lex_state = 8},
+  [190] = {.lex_state = 52, .external_lex_state = 7},
+  [191] = {.lex_state = 52, .external_lex_state = 7},
+  [192] = {.lex_state = 52, .external_lex_state = 2},
+  [193] = {.lex_state = 52, .external_lex_state = 7},
+  [194] = {.lex_state = 52, .external_lex_state = 8},
+  [195] = {.lex_state = 5, .external_lex_state = 6},
+  [196] = {.lex_state = 52, .external_lex_state = 8},
+  [197] = {.lex_state = 5, .external_lex_state = 6},
+  [198] = {.lex_state = 5, .external_lex_state = 6},
+  [199] = {.lex_state = 52, .external_lex_state = 8},
+  [200] = {.lex_state = 5, .external_lex_state = 6},
+  [201] = {.lex_state = 52, .external_lex_state = 7},
+  [202] = {.lex_state = 52, .external_lex_state = 8},
+  [203] = {.lex_state = 52, .external_lex_state = 8},
+  [204] = {.lex_state = 5, .external_lex_state = 6},
+  [205] = {.lex_state = 5, .external_lex_state = 6},
+  [206] = {.lex_state = 52, .external_lex_state = 8},
+  [207] = {.lex_state = 52, .external_lex_state = 7},
+  [208] = {.lex_state = 52, .external_lex_state = 7},
+  [209] = {.lex_state = 52, .external_lex_state = 8},
+  [210] = {.lex_state = 52, .external_lex_state = 7},
+  [211] = {.lex_state = 52, .external_lex_state = 8},
+  [212] = {.lex_state = 5, .external_lex_state = 6},
+  [213] = {.lex_state = 52, .external_lex_state = 7},
+  [214] = {.lex_state = 52, .external_lex_state = 8},
+  [215] = {.lex_state = 52, .external_lex_state = 7},
+  [216] = {.lex_state = 52, .external_lex_state = 2},
+  [217] = {.lex_state = 52, .external_lex_state = 7},
+  [218] = {.lex_state = 5, .external_lex_state = 6},
+  [219] = {.lex_state = 52, .external_lex_state = 8},
+  [220] = {.lex_state = 52, .external_lex_state = 7},
+  [221] = {.lex_state = 52, .external_lex_state = 2},
+  [222] = {.lex_state = 6, .external_lex_state = 4},
+  [223] = {.lex_state = 6, .external_lex_state = 4},
+  [224] = {.lex_state = 5, .external_lex_state = 8},
+  [225] = {.lex_state = 5, .external_lex_state = 8},
+  [226] = {.lex_state = 5, .external_lex_state = 8},
+  [227] = {.lex_state = 52, .external_lex_state = 2},
+  [228] = {.lex_state = 52, .external_lex_state = 2},
+  [229] = {.lex_state = 5, .external_lex_state = 8},
+  [230] = {.lex_state = 5, .external_lex_state = 8},
+  [231] = {.lex_state = 5, .external_lex_state = 8},
+  [232] = {.lex_state = 5, .external_lex_state = 8},
+  [233] = {.lex_state = 5, .external_lex_state = 8},
+  [234] = {.lex_state = 5, .external_lex_state = 2},
+  [235] = {.lex_state = 5, .external_lex_state = 2},
+  [236] = {.lex_state = 5, .external_lex_state = 7},
+  [237] = {.lex_state = 5, .external_lex_state = 2},
+  [238] = {.lex_state = 5, .external_lex_state = 7},
+  [239] = {.lex_state = 5, .external_lex_state = 2},
+  [240] = {.lex_state = 5, .external_lex_state = 7},
+  [241] = {.lex_state = 5, .external_lex_state = 2},
+  [242] = {.lex_state = 5, .external_lex_state = 2},
+  [243] = {.lex_state = 5, .external_lex_state = 2},
+  [244] = {.lex_state = 5, .external_lex_state = 2},
+  [245] = {.lex_state = 5, .external_lex_state = 2},
+  [246] = {.lex_state = 5, .external_lex_state = 2},
+  [247] = {.lex_state = 5, .external_lex_state = 7},
+  [248] = {.lex_state = 5, .external_lex_state = 7},
+  [249] = {.lex_state = 5, .external_lex_state = 7},
+  [250] = {.lex_state = 5, .external_lex_state = 7},
+  [251] = {.lex_state = 6, .external_lex_state = 2},
+  [252] = {.lex_state = 5, .external_lex_state = 2},
+  [253] = {.lex_state = 52, .external_lex_state = 6},
+  [254] = {.lex_state = 6, .external_lex_state = 2},
+  [255] = {.lex_state = 5, .external_lex_state = 2},
+  [256] = {.lex_state = 52, .external_lex_state = 7},
+  [257] = {.lex_state = 5, .external_lex_state = 7},
+  [258] = {.lex_state = 5, .external_lex_state = 2},
+  [259] = {.lex_state = 5, .external_lex_state = 2},
+  [260] = {.lex_state = 5, .external_lex_state = 2},
+  [261] = {.lex_state = 5, .external_lex_state = 2},
+  [262] = {.lex_state = 5, .external_lex_state = 2},
+  [263] = {.lex_state = 5, .external_lex_state = 2},
+  [264] = {.lex_state = 5, .external_lex_state = 2},
+  [265] = {.lex_state = 5, .external_lex_state = 2},
+  [266] = {.lex_state = 5, .external_lex_state = 2},
+  [267] = {.lex_state = 5, .external_lex_state = 2},
+  [268] = {.lex_state = 5, .external_lex_state = 2},
+  [269] = {.lex_state = 5, .external_lex_state = 2},
+  [270] = {.lex_state = 5, .external_lex_state = 2},
+  [271] = {.lex_state = 5, .external_lex_state = 7},
+  [272] = {.lex_state = 5, .external_lex_state = 7},
+  [273] = {.lex_state = 5, .external_lex_state = 7},
+  [274] = {.lex_state = 5, .external_lex_state = 7},
+  [275] = {.lex_state = 5, .external_lex_state = 7},
+  [276] = {.lex_state = 5, .external_lex_state = 7},
+  [277] = {.lex_state = 52, .external_lex_state = 8},
+  [278] = {.lex_state = 52, .external_lex_state = 7},
+  [279] = {.lex_state = 52, .external_lex_state = 7},
+  [280] = {.lex_state = 52, .external_lex_state = 7},
+  [281] = {.lex_state = 5, .external_lex_state = 7},
+  [282] = {.lex_state = 5, .external_lex_state = 7},
+  [283] = {.lex_state = 5, .external_lex_state = 7},
+  [284] = {.lex_state = 5, .external_lex_state = 7},
+  [285] = {.lex_state = 5, .external_lex_state = 7},
+  [286] = {.lex_state = 52, .external_lex_state = 8},
+  [287] = {.lex_state = 5, .external_lex_state = 7},
+  [288] = {.lex_state = 52, .external_lex_state = 7},
+  [289] = {.lex_state = 5, .external_lex_state = 7},
+  [290] = {.lex_state = 52, .external_lex_state = 8},
+  [291] = {.lex_state = 5, .external_lex_state = 7},
+  [292] = {.lex_state = 52, .external_lex_state = 7},
+  [293] = {.lex_state = 52, .external_lex_state = 7},
+  [294] = {.lex_state = 52, .external_lex_state = 8},
+  [295] = {.lex_state = 5, .external_lex_state = 7},
+  [296] = {.lex_state = 52, .external_lex_state = 7},
+  [297] = {.lex_state = 5, .external_lex_state = 7},
+  [298] = {.lex_state = 52, .external_lex_state = 7},
+  [299] = {.lex_state = 52, .external_lex_state = 8},
+  [300] = {.lex_state = 52, .external_lex_state = 7},
+  [301] = {.lex_state = 5, .external_lex_state = 7},
+  [302] = {.lex_state = 5, .external_lex_state = 7},
+  [303] = {.lex_state = 5, .external_lex_state = 7},
+  [304] = {.lex_state = 5, .external_lex_state = 7},
+  [305] = {.lex_state = 5, .external_lex_state = 7},
+  [306] = {.lex_state = 5, .external_lex_state = 7},
+  [307] = {.lex_state = 52, .external_lex_state = 7},
+  [308] = {.lex_state = 5, .external_lex_state = 7},
+  [309] = {.lex_state = 5, .external_lex_state = 7},
+  [310] = {.lex_state = 5, .external_lex_state = 7},
+  [311] = {.lex_state = 5, .external_lex_state = 7},
+  [312] = {.lex_state = 5, .external_lex_state = 7},
+  [313] = {.lex_state = 52, .external_lex_state = 7},
+  [314] = {.lex_state = 5, .external_lex_state = 7},
+  [315] = {.lex_state = 5, .external_lex_state = 7},
+  [316] = {.lex_state = 52, .external_lex_state = 7},
+  [317] = {.lex_state = 52, .external_lex_state = 8},
+  [318] = {.lex_state = 52, .external_lex_state = 8},
+  [319] = {.lex_state = 5, .external_lex_state = 7},
+  [320] = {.lex_state = 52, .external_lex_state = 8},
+  [321] = {.lex_state = 5, .external_lex_state = 7},
+  [322] = {.lex_state = 5, .external_lex_state = 7},
+  [323] = {.lex_state = 52, .external_lex_state = 7},
+  [324] = {.lex_state = 52, .external_lex_state = 7},
+  [325] = {.lex_state = 5, .external_lex_state = 7},
+  [326] = {.lex_state = 52, .external_lex_state = 8},
+  [327] = {.lex_state = 52, .external_lex_state = 6},
+  [328] = {.lex_state = 12, .external_lex_state = 6},
+  [329] = {.lex_state = 5, .external_lex_state = 2},
+  [330] = {.lex_state = 52, .external_lex_state = 7},
+  [331] = {.lex_state = 52, .external_lex_state = 7},
+  [332] = {.lex_state = 52, .external_lex_state = 7},
+  [333] = {.lex_state = 52, .external_lex_state = 7},
+  [334] = {.lex_state = 52, .external_lex_state = 6},
+  [335] = {.lex_state = 52, .external_lex_state = 6},
+  [336] = {.lex_state = 52, .external_lex_state = 6},
+  [337] = {.lex_state = 52, .external_lex_state = 6},
+  [338] = {.lex_state = 52, .external_lex_state = 6},
+  [339] = {.lex_state = 52, .external_lex_state = 7},
+  [340] = {.lex_state = 52, .external_lex_state = 8},
+  [341] = {.lex_state = 52, .external_lex_state = 8},
+  [342] = {.lex_state = 52, .external_lex_state = 7},
+  [343] = {.lex_state = 52, .external_lex_state = 6},
+  [344] = {.lex_state = 52, .external_lex_state = 8},
+  [345] = {.lex_state = 52, .external_lex_state = 8},
+  [346] = {.lex_state = 52, .external_lex_state = 6},
+  [347] = {.lex_state = 52, .external_lex_state = 8},
+  [348] = {.lex_state = 5, .external_lex_state = 6},
+  [349] = {.lex_state = 5, .external_lex_state = 6},
+  [350] = {.lex_state = 52, .external_lex_state = 4},
+  [351] = {.lex_state = 52, .external_lex_state = 7},
+  [352] = {.lex_state = 5, .external_lex_state = 6},
+  [353] = {.lex_state = 52, .external_lex_state = 4},
+  [354] = {.lex_state = 5, .external_lex_state = 6},
+  [355] = {.lex_state = 5, .external_lex_state = 6},
+  [356] = {.lex_state = 52, .external_lex_state = 2},
+  [357] = {.lex_state = 5, .external_lex_state = 6},
+  [358] = {.lex_state = 5, .external_lex_state = 6},
+  [359] = {.lex_state = 5, .external_lex_state = 6},
+  [360] = {.lex_state = 5, .external_lex_state = 6},
+  [361] = {.lex_state = 5, .external_lex_state = 6},
+  [362] = {.lex_state = 5, .external_lex_state = 6},
+  [363] = {.lex_state = 5, .external_lex_state = 6},
+  [364] = {.lex_state = 52, .external_lex_state = 2},
+  [365] = {.lex_state = 52, .external_lex_state = 2},
+  [366] = {.lex_state = 5, .external_lex_state = 6},
+  [367] = {.lex_state = 5, .external_lex_state = 6},
+  [368] = {.lex_state = 52, .external_lex_state = 8},
+  [369] = {.lex_state = 5, .external_lex_state = 6},
+  [370] = {.lex_state = 5, .external_lex_state = 6},
+  [371] = {.lex_state = 12, .external_lex_state = 7},
+  [372] = {.lex_state = 52, .external_lex_state = 8},
+  [373] = {.lex_state = 52, .external_lex_state = 8},
+  [374] = {.lex_state = 52, .external_lex_state = 8},
+  [375] = {.lex_state = 52, .external_lex_state = 8},
+  [376] = {.lex_state = 52, .external_lex_state = 8},
+  [377] = {.lex_state = 52, .external_lex_state = 8},
+  [378] = {.lex_state = 52, .external_lex_state = 8},
+  [379] = {.lex_state = 52, .external_lex_state = 4},
+  [380] = {.lex_state = 52, .external_lex_state = 8},
+  [381] = {.lex_state = 52, .external_lex_state = 8},
+  [382] = {.lex_state = 52, .external_lex_state = 4},
+  [383] = {.lex_state = 52, .external_lex_state = 8},
+  [384] = {.lex_state = 52, .external_lex_state = 8},
+  [385] = {.lex_state = 52, .external_lex_state = 4},
+  [386] = {.lex_state = 52, .external_lex_state = 8},
+  [387] = {.lex_state = 5, .external_lex_state = 2},
+  [388] = {.lex_state = 52, .external_lex_state = 8},
+  [389] = {.lex_state = 52, .external_lex_state = 8},
+  [390] = {.lex_state = 52, .external_lex_state = 8},
+  [391] = {.lex_state = 52, .external_lex_state = 8},
+  [392] = {.lex_state = 52, .external_lex_state = 8},
+  [393] = {.lex_state = 52, .external_lex_state = 8},
+  [394] = {.lex_state = 52, .external_lex_state = 8},
+  [395] = {.lex_state = 52, .external_lex_state = 8},
+  [396] = {.lex_state = 52, .external_lex_state = 8},
+  [397] = {.lex_state = 52, .external_lex_state = 8},
+  [398] = {.lex_state = 52, .external_lex_state = 8},
+  [399] = {.lex_state = 52, .external_lex_state = 8},
+  [400] = {.lex_state = 52, .external_lex_state = 8},
+  [401] = {.lex_state = 12, .external_lex_state = 7},
+  [402] = {.lex_state = 52, .external_lex_state = 8},
+  [403] = {.lex_state = 52, .external_lex_state = 8},
+  [404] = {.lex_state = 52, .external_lex_state = 8},
+  [405] = {.lex_state = 52, .external_lex_state = 8},
+  [406] = {.lex_state = 52, .external_lex_state = 8},
+  [407] = {.lex_state = 52, .external_lex_state = 8},
+  [408] = {.lex_state = 52, .external_lex_state = 8},
+  [409] = {.lex_state = 5, .external_lex_state = 7},
+  [410] = {.lex_state = 52, .external_lex_state = 2},
+  [411] = {.lex_state = 52, .external_lex_state = 2},
+  [412] = {.lex_state = 52, .external_lex_state = 7},
+  [413] = {.lex_state = 5, .external_lex_state = 2},
+  [414] = {.lex_state = 52, .external_lex_state = 2},
+  [415] = {.lex_state = 52, .external_lex_state = 2},
+  [416] = {.lex_state = 52, .external_lex_state = 2},
+  [417] = {.lex_state = 52, .external_lex_state = 2},
+  [418] = {.lex_state = 52, .external_lex_state = 2},
+  [419] = {.lex_state = 52, .external_lex_state = 2},
+  [420] = {.lex_state = 52, .external_lex_state = 2},
+  [421] = {.lex_state = 52, .external_lex_state = 8},
+  [422] = {.lex_state = 52, .external_lex_state = 2},
+  [423] = {.lex_state = 52, .external_lex_state = 2},
+  [424] = {.lex_state = 52, .external_lex_state = 2},
+  [425] = {.lex_state = 52, .external_lex_state = 7},
+  [426] = {.lex_state = 52, .external_lex_state = 2},
+  [427] = {.lex_state = 52, .external_lex_state = 2},
+  [428] = {.lex_state = 52, .external_lex_state = 8},
+  [429] = {.lex_state = 52, .external_lex_state = 2},
+  [430] = {.lex_state = 52, .external_lex_state = 2},
+  [431] = {.lex_state = 52, .external_lex_state = 7},
+  [432] = {.lex_state = 52, .external_lex_state = 2},
+  [433] = {.lex_state = 52, .external_lex_state = 8},
+  [434] = {.lex_state = 52, .external_lex_state = 2},
+  [435] = {.lex_state = 52, .external_lex_state = 2},
+  [436] = {.lex_state = 52, .external_lex_state = 2},
+  [437] = {.lex_state = 52, .external_lex_state = 2},
+  [438] = {.lex_state = 52, .external_lex_state = 8},
+  [439] = {.lex_state = 52, .external_lex_state = 2},
+  [440] = {.lex_state = 52, .external_lex_state = 8},
+  [441] = {.lex_state = 52, .external_lex_state = 2},
+  [442] = {.lex_state = 52, .external_lex_state = 2},
+  [443] = {.lex_state = 52, .external_lex_state = 2},
+  [444] = {.lex_state = 52, .external_lex_state = 2},
+  [445] = {.lex_state = 5, .external_lex_state = 8},
+  [446] = {.lex_state = 52, .external_lex_state = 2},
+  [447] = {.lex_state = 12, .external_lex_state = 2},
+  [448] = {.lex_state = 52, .external_lex_state = 4},
+  [449] = {.lex_state = 52, .external_lex_state = 2},
+  [450] = {.lex_state = 52, .external_lex_state = 4},
+  [451] = {.lex_state = 52, .external_lex_state = 2},
+  [452] = {.lex_state = 52, .external_lex_state = 4},
+  [453] = {.lex_state = 52, .external_lex_state = 2},
+  [454] = {.lex_state = 52, .external_lex_state = 4},
+  [455] = {.lex_state = 52, .external_lex_state = 4},
+  [456] = {.lex_state = 12, .external_lex_state = 2},
+  [457] = {.lex_state = 52, .external_lex_state = 7},
+  [458] = {.lex_state = 52, .external_lex_state = 2},
+  [459] = {.lex_state = 52, .external_lex_state = 4},
+  [460] = {.lex_state = 52, .external_lex_state = 2},
+  [461] = {.lex_state = 52, .external_lex_state = 2},
+  [462] = {.lex_state = 52, .external_lex_state = 2},
+  [463] = {.lex_state = 7, .external_lex_state = 4},
+  [464] = {.lex_state = 52, .external_lex_state = 2},
+  [465] = {.lex_state = 52, .external_lex_state = 2},
+  [466] = {.lex_state = 52, .external_lex_state = 2},
+  [467] = {.lex_state = 52, .external_lex_state = 2},
+  [468] = {.lex_state = 52, .external_lex_state = 2},
+  [469] = {.lex_state = 52, .external_lex_state = 2},
+  [470] = {.lex_state = 7, .external_lex_state = 4},
+  [471] = {.lex_state = 52, .external_lex_state = 2},
+  [472] = {.lex_state = 52, .external_lex_state = 2},
+  [473] = {.lex_state = 52, .external_lex_state = 2},
+  [474] = {.lex_state = 7, .external_lex_state = 9},
+  [475] = {.lex_state = 52, .external_lex_state = 2},
+  [476] = {.lex_state = 7, .external_lex_state = 9},
+  [477] = {.lex_state = 52, .external_lex_state = 2},
+  [478] = {.lex_state = 52, .external_lex_state = 2},
+  [479] = {.lex_state = 52, .external_lex_state = 2},
+  [480] = {.lex_state = 52, .external_lex_state = 2},
+  [481] = {.lex_state = 52, .external_lex_state = 2},
+  [482] = {.lex_state = 52, .external_lex_state = 2},
+  [483] = {.lex_state = 52, .external_lex_state = 2},
+  [484] = {.lex_state = 52, .external_lex_state = 2},
+  [485] = {.lex_state = 52, .external_lex_state = 2},
+  [486] = {.lex_state = 52, .external_lex_state = 2},
+  [487] = {.lex_state = 52, .external_lex_state = 2},
+  [488] = {.lex_state = 52, .external_lex_state = 2},
+  [489] = {.lex_state = 52, .external_lex_state = 2},
+  [490] = {.lex_state = 52, .external_lex_state = 2},
+  [491] = {.lex_state = 52, .external_lex_state = 2},
+  [492] = {.lex_state = 53, .external_lex_state = 3},
+  [493] = {.lex_state = 54, .external_lex_state = 10},
+  [494] = {.lex_state = 52, .external_lex_state = 2},
+  [495] = {.lex_state = 52, .external_lex_state = 2},
+  [496] = {.lex_state = 52, .external_lex_state = 2},
+  [497] = {.lex_state = 53, .external_lex_state = 3},
+  [498] = {.lex_state = 54, .external_lex_state = 10},
+  [499] = {.lex_state = 52, .external_lex_state = 2},
+  [500] = {.lex_state = 52, .external_lex_state = 2},
+  [501] = {.lex_state = 52, .external_lex_state = 2},
+  [502] = {.lex_state = 52, .external_lex_state = 2},
+  [503] = {.lex_state = 52, .external_lex_state = 2},
+  [504] = {.lex_state = 52, .external_lex_state = 2},
+  [505] = {.lex_state = 52, .external_lex_state = 2},
+  [506] = {.lex_state = 52, .external_lex_state = 2},
+  [507] = {.lex_state = 52, .external_lex_state = 2},
+  [508] = {.lex_state = 52, .external_lex_state = 2},
+  [509] = {.lex_state = 52, .external_lex_state = 2},
+  [510] = {.lex_state = 52, .external_lex_state = 2},
+  [511] = {.lex_state = 52, .external_lex_state = 2},
+  [512] = {.lex_state = 52, .external_lex_state = 2},
+  [513] = {.lex_state = 52, .external_lex_state = 2},
+  [514] = {.lex_state = 52, .external_lex_state = 2},
+  [515] = {.lex_state = 52, .external_lex_state = 2},
+  [516] = {.lex_state = 52, .external_lex_state = 2},
+  [517] = {.lex_state = 52, .external_lex_state = 2},
+  [518] = {.lex_state = 52, .external_lex_state = 2},
+  [519] = {.lex_state = 52, .external_lex_state = 2},
+  [520] = {.lex_state = 52, .external_lex_state = 2},
+  [521] = {.lex_state = 52, .external_lex_state = 2},
+  [522] = {.lex_state = 52, .external_lex_state = 2},
+  [523] = {.lex_state = 52, .external_lex_state = 2},
+  [524] = {.lex_state = 52, .external_lex_state = 2},
+  [525] = {.lex_state = 52, .external_lex_state = 2},
+  [526] = {.lex_state = 52, .external_lex_state = 2},
+  [527] = {.lex_state = 54, .external_lex_state = 11},
+  [528] = {.lex_state = 53, .external_lex_state = 2},
+  [529] = {.lex_state = 52, .external_lex_state = 2},
+  [530] = {.lex_state = 52, .external_lex_state = 2},
+  [531] = {.lex_state = 52, .external_lex_state = 2},
+  [532] = {.lex_state = 52, .external_lex_state = 2},
+  [533] = {.lex_state = 52, .external_lex_state = 2},
+  [534] = {.lex_state = 52, .external_lex_state = 2},
+  [535] = {.lex_state = 52, .external_lex_state = 2},
+  [536] = {.lex_state = 52, .external_lex_state = 2},
+  [537] = {.lex_state = 52, .external_lex_state = 2},
+  [538] = {.lex_state = 52, .external_lex_state = 2},
+  [539] = {.lex_state = 52, .external_lex_state = 2},
+  [540] = {.lex_state = 52, .external_lex_state = 2},
+  [541] = {.lex_state = 52, .external_lex_state = 2},
+  [542] = {.lex_state = 52, .external_lex_state = 2},
+  [543] = {.lex_state = 52, .external_lex_state = 2},
+  [544] = {.lex_state = 52, .external_lex_state = 2},
+  [545] = {.lex_state = 52, .external_lex_state = 2},
+  [546] = {.lex_state = 52, .external_lex_state = 2},
+  [547] = {.lex_state = 52, .external_lex_state = 2},
+  [548] = {.lex_state = 52, .external_lex_state = 2},
+  [549] = {.lex_state = 52, .external_lex_state = 2},
+  [550] = {.lex_state = 52, .external_lex_state = 2},
+  [551] = {.lex_state = 52, .external_lex_state = 2},
+  [552] = {.lex_state = 52, .external_lex_state = 2},
+  [553] = {.lex_state = 52, .external_lex_state = 2},
+  [554] = {.lex_state = 52, .external_lex_state = 2},
+  [555] = {.lex_state = 52, .external_lex_state = 2},
+  [556] = {.lex_state = 52, .external_lex_state = 2},
+  [557] = {.lex_state = 52, .external_lex_state = 2},
+  [558] = {.lex_state = 52, .external_lex_state = 2},
+  [559] = {.lex_state = 52, .external_lex_state = 2},
+  [560] = {.lex_state = 52, .external_lex_state = 2},
+  [561] = {.lex_state = 52, .external_lex_state = 2},
+  [562] = {.lex_state = 52, .external_lex_state = 2},
+  [563] = {.lex_state = 52, .external_lex_state = 2},
+  [564] = {.lex_state = 52, .external_lex_state = 2},
+  [565] = {.lex_state = 52, .external_lex_state = 2},
+  [566] = {.lex_state = 52, .external_lex_state = 2},
+  [567] = {.lex_state = 52, .external_lex_state = 2},
+  [568] = {.lex_state = 52, .external_lex_state = 2},
+  [569] = {.lex_state = 52, .external_lex_state = 2},
+  [570] = {.lex_state = 52, .external_lex_state = 2},
+  [571] = {.lex_state = 52, .external_lex_state = 2},
+  [572] = {.lex_state = 52, .external_lex_state = 2},
+  [573] = {.lex_state = 52, .external_lex_state = 2},
+  [574] = {.lex_state = 52, .external_lex_state = 2},
+  [575] = {.lex_state = 52, .external_lex_state = 2},
+  [576] = {.lex_state = 52, .external_lex_state = 2},
+  [577] = {.lex_state = 52, .external_lex_state = 2},
+  [578] = {.lex_state = 52, .external_lex_state = 2},
+  [579] = {.lex_state = 52, .external_lex_state = 2},
+  [580] = {.lex_state = 52, .external_lex_state = 2},
+  [581] = {.lex_state = 52, .external_lex_state = 2},
+  [582] = {.lex_state = 52, .external_lex_state = 2},
+  [583] = {.lex_state = 52, .external_lex_state = 2},
+  [584] = {.lex_state = 52, .external_lex_state = 2},
+  [585] = {.lex_state = 52, .external_lex_state = 2},
+  [586] = {.lex_state = 52, .external_lex_state = 2},
+  [587] = {.lex_state = 52, .external_lex_state = 2},
+  [588] = {.lex_state = 52, .external_lex_state = 2},
+  [589] = {.lex_state = 52, .external_lex_state = 2},
+  [590] = {.lex_state = 52, .external_lex_state = 2},
+  [591] = {.lex_state = 52, .external_lex_state = 2},
+  [592] = {.lex_state = 53, .external_lex_state = 2},
+  [593] = {.lex_state = 54, .external_lex_state = 11},
+  [594] = {.lex_state = 52, .external_lex_state = 2},
+  [595] = {.lex_state = 52, .external_lex_state = 2},
+  [596] = {.lex_state = 52, .external_lex_state = 2},
+  [597] = {.lex_state = 52, .external_lex_state = 2},
+  [598] = {.lex_state = 52, .external_lex_state = 2},
+  [599] = {.lex_state = 52, .external_lex_state = 2},
+  [600] = {.lex_state = 52, .external_lex_state = 2},
+  [601] = {.lex_state = 52, .external_lex_state = 2},
+  [602] = {.lex_state = 52, .external_lex_state = 2},
+  [603] = {.lex_state = 52, .external_lex_state = 2},
+  [604] = {.lex_state = 52, .external_lex_state = 2},
+  [605] = {.lex_state = 52, .external_lex_state = 2},
+  [606] = {.lex_state = 52, .external_lex_state = 2},
+  [607] = {.lex_state = 52, .external_lex_state = 2},
+  [608] = {.lex_state = 52, .external_lex_state = 2},
+  [609] = {.lex_state = 7, .external_lex_state = 9},
+  [610] = {.lex_state = 52, .external_lex_state = 2},
+  [611] = {.lex_state = 54, .external_lex_state = 10},
+  [612] = {.lex_state = 52, .external_lex_state = 3},
+  [613] = {.lex_state = 52, .external_lex_state = 3},
+  [614] = {.lex_state = 52, .external_lex_state = 2},
+  [615] = {.lex_state = 52, .external_lex_state = 3},
+  [616] = {.lex_state = 52, .external_lex_state = 2},
+  [617] = {.lex_state = 52, .external_lex_state = 3},
+  [618] = {.lex_state = 52, .external_lex_state = 2},
+  [619] = {.lex_state = 7, .external_lex_state = 9},
+  [620] = {.lex_state = 53, .external_lex_state = 3},
+  [621] = {.lex_state = 7, .external_lex_state = 9},
+  [622] = {.lex_state = 7, .external_lex_state = 9},
+  [623] = {.lex_state = 7, .external_lex_state = 9},
+  [624] = {.lex_state = 54, .external_lex_state = 11},
+  [625] = {.lex_state = 53, .external_lex_state = 2},
+  [626] = {.lex_state = 8, .external_lex_state = 9},
+  [627] = {.lex_state = 8, .external_lex_state = 9},
+  [628] = {.lex_state = 8, .external_lex_state = 9},
+  [629] = {.lex_state = 8, .external_lex_state = 9},
+  [630] = {.lex_state = 8, .external_lex_state = 9},
+  [631] = {.lex_state = 8, .external_lex_state = 9},
+  [632] = {.lex_state = 8, .external_lex_state = 9},
+  [633] = {.lex_state = 8, .external_lex_state = 9},
+  [634] = {.lex_state = 52, .external_lex_state = 3},
+  [635] = {.lex_state = 8, .external_lex_state = 9},
+  [636] = {.lex_state = 8, .external_lex_state = 9},
+  [637] = {.lex_state = 8, .external_lex_state = 9},
+  [638] = {.lex_state = 8, .external_lex_state = 9},
+  [639] = {.lex_state = 8, .external_lex_state = 9},
+  [640] = {.lex_state = 8, .external_lex_state = 9},
+  [641] = {.lex_state = 8, .external_lex_state = 9},
+  [642] = {.lex_state = 8, .external_lex_state = 9},
+  [643] = {.lex_state = 8, .external_lex_state = 9},
+  [644] = {.lex_state = 52, .external_lex_state = 2},
+  [645] = {.lex_state = 8, .external_lex_state = 9},
+  [646] = {.lex_state = 8, .external_lex_state = 9},
+  [647] = {.lex_state = 52, .external_lex_state = 3},
+  [648] = {.lex_state = 53, .external_lex_state = 3},
+  [649] = {.lex_state = 53, .external_lex_state = 2},
+  [650] = {.lex_state = 52, .external_lex_state = 2},
+  [651] = {.lex_state = 54, .external_lex_state = 11},
+  [652] = {.lex_state = 52, .external_lex_state = 2},
+  [653] = {.lex_state = 54, .external_lex_state = 10},
+  [654] = {.lex_state = 54, .external_lex_state = 10},
+  [655] = {.lex_state = 54, .external_lex_state = 10},
+  [656] = {.lex_state = 52, .external_lex_state = 2},
+  [657] = {.lex_state = 53, .external_lex_state = 3},
+  [658] = {.lex_state = 53, .external_lex_state = 3},
+  [659] = {.lex_state = 54, .external_lex_state = 11},
+  [660] = {.lex_state = 53, .external_lex_state = 3},
+  [661] = {.lex_state = 54, .external_lex_state = 10},
+  [662] = {.lex_state = 54, .external_lex_state = 10},
+  [663] = {.lex_state = 53, .external_lex_state = 3},
+  [664] = {.lex_state = 53, .external_lex_state = 3},
+  [665] = {.lex_state = 53, .external_lex_state = 3},
+  [666] = {.lex_state = 54, .external_lex_state = 10},
+  [667] = {.lex_state = 54, .external_lex_state = 10},
+  [668] = {.lex_state = 54, .external_lex_state = 10},
+  [669] = {.lex_state = 53, .external_lex_state = 3},
+  [670] = {.lex_state = 54, .external_lex_state = 10},
+  [671] = {.lex_state = 54, .external_lex_state = 10},
+  [672] = {.lex_state = 53, .external_lex_state = 2},
+  [673] = {.lex_state = 54, .external_lex_state = 10},
+  [674] = {.lex_state = 53, .external_lex_state = 3},
+  [675] = {.lex_state = 54, .external_lex_state = 11},
+  [676] = {.lex_state = 52, .external_lex_state = 3},
+  [677] = {.lex_state = 52, .external_lex_state = 6},
+  [678] = {.lex_state = 53, .external_lex_state = 2},
+  [679] = {.lex_state = 52, .external_lex_state = 6},
+  [680] = {.lex_state = 54, .external_lex_state = 11},
+  [681] = {.lex_state = 52, .external_lex_state = 3},
+  [682] = {.lex_state = 52, .external_lex_state = 2},
+  [683] = {.lex_state = 54, .external_lex_state = 11},
+  [684] = {.lex_state = 52, .external_lex_state = 2},
+  [685] = {.lex_state = 54, .external_lex_state = 11},
+  [686] = {.lex_state = 53, .external_lex_state = 2},
+  [687] = {.lex_state = 54, .external_lex_state = 11},
+  [688] = {.lex_state = 54, .external_lex_state = 11},
+  [689] = {.lex_state = 53, .external_lex_state = 2},
+  [690] = {.lex_state = 54, .external_lex_state = 11},
+  [691] = {.lex_state = 53, .external_lex_state = 2},
+  [692] = {.lex_state = 53, .external_lex_state = 2},
+  [693] = {.lex_state = 54, .external_lex_state = 11},
+  [694] = {.lex_state = 53, .external_lex_state = 2},
+  [695] = {.lex_state = 52, .external_lex_state = 3},
+  [696] = {.lex_state = 54, .external_lex_state = 11},
+  [697] = {.lex_state = 52, .external_lex_state = 3},
+  [698] = {.lex_state = 53, .external_lex_state = 2},
+  [699] = {.lex_state = 52, .external_lex_state = 3},
+  [700] = {.lex_state = 52, .external_lex_state = 3},
+  [701] = {.lex_state = 52, .external_lex_state = 2},
+  [702] = {.lex_state = 52, .external_lex_state = 2},
+  [703] = {.lex_state = 52, .external_lex_state = 2},
+  [704] = {.lex_state = 52, .external_lex_state = 3},
+  [705] = {.lex_state = 52, .external_lex_state = 2},
+  [706] = {.lex_state = 52, .external_lex_state = 2},
+  [707] = {.lex_state = 52, .external_lex_state = 3},
+  [708] = {.lex_state = 52, .external_lex_state = 3},
+  [709] = {.lex_state = 52, .external_lex_state = 2},
+  [710] = {.lex_state = 52, .external_lex_state = 2},
+  [711] = {.lex_state = 52, .external_lex_state = 3},
+  [712] = {.lex_state = 52, .external_lex_state = 2},
+  [713] = {.lex_state = 52, .external_lex_state = 3},
+  [714] = {.lex_state = 52, .external_lex_state = 2},
+  [715] = {.lex_state = 52, .external_lex_state = 2},
+  [716] = {.lex_state = 52, .external_lex_state = 3},
+  [717] = {.lex_state = 52, .external_lex_state = 2},
+  [718] = {.lex_state = 52, .external_lex_state = 3},
+  [719] = {.lex_state = 52, .external_lex_state = 3},
+  [720] = {.lex_state = 52, .external_lex_state = 3},
+  [721] = {.lex_state = 52, .external_lex_state = 7},
+  [722] = {.lex_state = 52, .external_lex_state = 3},
+  [723] = {.lex_state = 52, .external_lex_state = 2},
+  [724] = {.lex_state = 52, .external_lex_state = 2},
+  [725] = {.lex_state = 52, .external_lex_state = 3},
+  [726] = {.lex_state = 52, .external_lex_state = 7},
+  [727] = {.lex_state = 52, .external_lex_state = 2},
+  [728] = {.lex_state = 52, .external_lex_state = 2},
+  [729] = {.lex_state = 52, .external_lex_state = 2},
+  [730] = {.lex_state = 52, .external_lex_state = 7},
+  [731] = {.lex_state = 52, .external_lex_state = 2},
+  [732] = {.lex_state = 52, .external_lex_state = 2},
+  [733] = {.lex_state = 52, .external_lex_state = 3},
+  [734] = {.lex_state = 52, .external_lex_state = 2},
+  [735] = {.lex_state = 52, .external_lex_state = 2},
+  [736] = {.lex_state = 52, .external_lex_state = 3},
+  [737] = {.lex_state = 52, .external_lex_state = 3},
+  [738] = {.lex_state = 52, .external_lex_state = 2},
+  [739] = {.lex_state = 52, .external_lex_state = 3},
+  [740] = {.lex_state = 52, .external_lex_state = 3},
+  [741] = {.lex_state = 52, .external_lex_state = 3},
+  [742] = {.lex_state = 52, .external_lex_state = 2},
+  [743] = {.lex_state = 52, .external_lex_state = 2},
+  [744] = {.lex_state = 52, .external_lex_state = 3},
+  [745] = {.lex_state = 52, .external_lex_state = 3},
+  [746] = {.lex_state = 52, .external_lex_state = 2},
+  [747] = {.lex_state = 52, .external_lex_state = 3},
+  [748] = {.lex_state = 52, .external_lex_state = 3},
+  [749] = {.lex_state = 52, .external_lex_state = 3},
+  [750] = {.lex_state = 52, .external_lex_state = 3},
+  [751] = {.lex_state = 52, .external_lex_state = 3},
+  [752] = {.lex_state = 52, .external_lex_state = 3},
+  [753] = {.lex_state = 52, .external_lex_state = 3},
+  [754] = {.lex_state = 52, .external_lex_state = 3},
+  [755] = {.lex_state = 52, .external_lex_state = 2},
+  [756] = {.lex_state = 52, .external_lex_state = 2},
+  [757] = {.lex_state = 52, .external_lex_state = 3},
+  [758] = {.lex_state = 52, .external_lex_state = 3},
+  [759] = {.lex_state = 52, .external_lex_state = 3},
+  [760] = {.lex_state = 52, .external_lex_state = 2},
+  [761] = {.lex_state = 52, .external_lex_state = 2},
+  [762] = {.lex_state = 52, .external_lex_state = 2},
+  [763] = {.lex_state = 52, .external_lex_state = 3},
+  [764] = {.lex_state = 52, .external_lex_state = 2},
+  [765] = {.lex_state = 52, .external_lex_state = 3},
+  [766] = {.lex_state = 52, .external_lex_state = 2},
+  [767] = {.lex_state = 52, .external_lex_state = 3},
+  [768] = {.lex_state = 52, .external_lex_state = 2},
+  [769] = {.lex_state = 52, .external_lex_state = 2},
+  [770] = {.lex_state = 52, .external_lex_state = 2},
+  [771] = {.lex_state = 52, .external_lex_state = 3},
+  [772] = {.lex_state = 52, .external_lex_state = 3},
+  [773] = {.lex_state = 52, .external_lex_state = 3},
+  [774] = {.lex_state = 52, .external_lex_state = 7},
+  [775] = {.lex_state = 52, .external_lex_state = 2},
+  [776] = {.lex_state = 52, .external_lex_state = 3},
+  [777] = {.lex_state = 52, .external_lex_state = 3},
+  [778] = {.lex_state = 52, .external_lex_state = 3},
+  [779] = {.lex_state = 52, .external_lex_state = 3},
+  [780] = {.lex_state = 52, .external_lex_state = 3},
+  [781] = {.lex_state = 52, .external_lex_state = 2},
+  [782] = {.lex_state = 52, .external_lex_state = 3},
+  [783] = {.lex_state = 52, .external_lex_state = 3},
+  [784] = {.lex_state = 52, .external_lex_state = 3},
+  [785] = {.lex_state = 52, .external_lex_state = 2},
+  [786] = {.lex_state = 52, .external_lex_state = 3},
+  [787] = {.lex_state = 52, .external_lex_state = 8},
+  [788] = {.lex_state = 52, .external_lex_state = 3},
+  [789] = {.lex_state = 52, .external_lex_state = 2},
+  [790] = {.lex_state = 52, .external_lex_state = 2},
+  [791] = {.lex_state = 52, .external_lex_state = 2},
+  [792] = {.lex_state = 52, .external_lex_state = 2},
+  [793] = {.lex_state = 52, .external_lex_state = 2},
+  [794] = {.lex_state = 52, .external_lex_state = 3},
+  [795] = {.lex_state = 52, .external_lex_state = 3},
+  [796] = {.lex_state = 52, .external_lex_state = 2},
+  [797] = {.lex_state = 52, .external_lex_state = 2},
+  [798] = {.lex_state = 52, .external_lex_state = 2},
+  [799] = {.lex_state = 52, .external_lex_state = 3},
+  [800] = {.lex_state = 52, .external_lex_state = 2},
+  [801] = {.lex_state = 52, .external_lex_state = 3},
+  [802] = {.lex_state = 52, .external_lex_state = 3},
+  [803] = {.lex_state = 52, .external_lex_state = 3},
+  [804] = {.lex_state = 52, .external_lex_state = 3},
+  [805] = {.lex_state = 52, .external_lex_state = 2},
+  [806] = {.lex_state = 52, .external_lex_state = 2},
+  [807] = {.lex_state = 52, .external_lex_state = 3},
+  [808] = {.lex_state = 52, .external_lex_state = 3},
+  [809] = {.lex_state = 52, .external_lex_state = 3},
+  [810] = {.lex_state = 52, .external_lex_state = 3},
+  [811] = {.lex_state = 52, .external_lex_state = 3},
+  [812] = {.lex_state = 52, .external_lex_state = 3},
+  [813] = {.lex_state = 52, .external_lex_state = 3},
+  [814] = {.lex_state = 52, .external_lex_state = 3},
+  [815] = {.lex_state = 52, .external_lex_state = 3},
+  [816] = {.lex_state = 52, .external_lex_state = 2},
+  [817] = {.lex_state = 52, .external_lex_state = 3},
+  [818] = {.lex_state = 52, .external_lex_state = 3},
+  [819] = {.lex_state = 52, .external_lex_state = 2},
+  [820] = {.lex_state = 52, .external_lex_state = 2},
+  [821] = {.lex_state = 52, .external_lex_state = 2},
+  [822] = {.lex_state = 52, .external_lex_state = 2},
+  [823] = {.lex_state = 52, .external_lex_state = 2},
+  [824] = {.lex_state = 52, .external_lex_state = 2},
+  [825] = {.lex_state = 52, .external_lex_state = 2},
+  [826] = {.lex_state = 52, .external_lex_state = 2},
+  [827] = {.lex_state = 52, .external_lex_state = 2},
+  [828] = {.lex_state = 52, .external_lex_state = 2},
+  [829] = {.lex_state = 52, .external_lex_state = 2},
+  [830] = {.lex_state = 52, .external_lex_state = 2},
+  [831] = {.lex_state = 52, .external_lex_state = 2},
+  [832] = {.lex_state = 52, .external_lex_state = 8},
+  [833] = {.lex_state = 52, .external_lex_state = 2},
+  [834] = {.lex_state = 52, .external_lex_state = 2},
+  [835] = {.lex_state = 52, .external_lex_state = 2},
+  [836] = {.lex_state = 52, .external_lex_state = 2},
+  [837] = {.lex_state = 52, .external_lex_state = 3},
+  [838] = {.lex_state = 52, .external_lex_state = 2},
+  [839] = {.lex_state = 52, .external_lex_state = 2},
+  [840] = {.lex_state = 52, .external_lex_state = 2},
+  [841] = {.lex_state = 52, .external_lex_state = 2},
+  [842] = {.lex_state = 52, .external_lex_state = 2},
+  [843] = {.lex_state = 52, .external_lex_state = 2},
+  [844] = {.lex_state = 52, .external_lex_state = 2},
+  [845] = {.lex_state = 52, .external_lex_state = 2},
+  [846] = {.lex_state = 52, .external_lex_state = 2},
+  [847] = {.lex_state = 52, .external_lex_state = 2},
+  [848] = {.lex_state = 52, .external_lex_state = 2},
+  [849] = {.lex_state = 52, .external_lex_state = 2},
+  [850] = {.lex_state = 52, .external_lex_state = 2},
+  [851] = {.lex_state = 52, .external_lex_state = 2},
+  [852] = {.lex_state = 52, .external_lex_state = 2},
+  [853] = {.lex_state = 52, .external_lex_state = 2},
+  [854] = {.lex_state = 52, .external_lex_state = 2},
+  [855] = {.lex_state = 52, .external_lex_state = 2},
+  [856] = {.lex_state = 52, .external_lex_state = 2},
+  [857] = {.lex_state = 52, .external_lex_state = 2},
+  [858] = {.lex_state = 52, .external_lex_state = 7},
+  [859] = {.lex_state = 52, .external_lex_state = 2},
+  [860] = {.lex_state = 52, .external_lex_state = 2},
+  [861] = {.lex_state = 52, .external_lex_state = 2},
+  [862] = {.lex_state = 52, .external_lex_state = 2},
+  [863] = {.lex_state = 52, .external_lex_state = 2},
+  [864] = {.lex_state = 52, .external_lex_state = 2},
+  [865] = {.lex_state = 52, .external_lex_state = 2},
+  [866] = {.lex_state = 52, .external_lex_state = 2},
+  [867] = {.lex_state = 52, .external_lex_state = 2},
+  [868] = {.lex_state = 52, .external_lex_state = 2},
+  [869] = {.lex_state = 52, .external_lex_state = 2},
+  [870] = {.lex_state = 52, .external_lex_state = 2},
+  [871] = {.lex_state = 52, .external_lex_state = 2},
+  [872] = {.lex_state = 52, .external_lex_state = 2},
+  [873] = {.lex_state = 52, .external_lex_state = 2},
+  [874] = {.lex_state = 52, .external_lex_state = 2},
+  [875] = {.lex_state = 52, .external_lex_state = 2},
+  [876] = {.lex_state = 52, .external_lex_state = 2},
+  [877] = {.lex_state = 52, .external_lex_state = 2},
+  [878] = {.lex_state = 52, .external_lex_state = 2},
+  [879] = {.lex_state = 52, .external_lex_state = 2},
+  [880] = {.lex_state = 52, .external_lex_state = 2},
+  [881] = {.lex_state = 52, .external_lex_state = 2},
+  [882] = {.lex_state = 52, .external_lex_state = 2},
+  [883] = {.lex_state = 52, .external_lex_state = 2},
+  [884] = {.lex_state = 52, .external_lex_state = 2},
+  [885] = {.lex_state = 52, .external_lex_state = 2},
+  [886] = {.lex_state = 52, .external_lex_state = 2},
+  [887] = {.lex_state = 52, .external_lex_state = 2},
+  [888] = {.lex_state = 52, .external_lex_state = 2},
+  [889] = {.lex_state = 52, .external_lex_state = 2},
+  [890] = {.lex_state = 52, .external_lex_state = 2},
+  [891] = {.lex_state = 52, .external_lex_state = 2},
+  [892] = {.lex_state = 52, .external_lex_state = 2},
+  [893] = {.lex_state = 52, .external_lex_state = 2},
+  [894] = {.lex_state = 52, .external_lex_state = 2},
+  [895] = {.lex_state = 52, .external_lex_state = 2},
+  [896] = {.lex_state = 52, .external_lex_state = 2},
+  [897] = {.lex_state = 52, .external_lex_state = 2},
+  [898] = {.lex_state = 52, .external_lex_state = 2},
+  [899] = {.lex_state = 52, .external_lex_state = 2},
+  [900] = {.lex_state = 52, .external_lex_state = 2},
+  [901] = {.lex_state = 52, .external_lex_state = 2},
+  [902] = {.lex_state = 52, .external_lex_state = 2},
+  [903] = {.lex_state = 52, .external_lex_state = 2},
+  [904] = {.lex_state = 52, .external_lex_state = 2},
+  [905] = {.lex_state = 52, .external_lex_state = 2},
+  [906] = {.lex_state = 52, .external_lex_state = 2},
+  [907] = {.lex_state = 52, .external_lex_state = 2},
+  [908] = {.lex_state = 52, .external_lex_state = 2},
+  [909] = {.lex_state = 52, .external_lex_state = 2},
+  [910] = {.lex_state = 52, .external_lex_state = 2},
+  [911] = {.lex_state = 52, .external_lex_state = 2},
+  [912] = {.lex_state = 52, .external_lex_state = 2},
+  [913] = {.lex_state = 52, .external_lex_state = 2},
+  [914] = {.lex_state = 52, .external_lex_state = 2},
+  [915] = {.lex_state = 52, .external_lex_state = 2},
+  [916] = {.lex_state = 52, .external_lex_state = 2},
+  [917] = {.lex_state = 52, .external_lex_state = 2},
+  [918] = {.lex_state = 52, .external_lex_state = 2},
+  [919] = {.lex_state = 52, .external_lex_state = 2},
+  [920] = {.lex_state = 52, .external_lex_state = 2},
+  [921] = {.lex_state = 52, .external_lex_state = 2},
+  [922] = {.lex_state = 52, .external_lex_state = 2},
+  [923] = {.lex_state = 52, .external_lex_state = 2},
+  [924] = {.lex_state = 52, .external_lex_state = 2},
+  [925] = {.lex_state = 52, .external_lex_state = 2},
+  [926] = {.lex_state = 52, .external_lex_state = 2},
+  [927] = {.lex_state = 52, .external_lex_state = 2},
+  [928] = {.lex_state = 52, .external_lex_state = 2},
+  [929] = {.lex_state = 52, .external_lex_state = 2},
+  [930] = {.lex_state = 52, .external_lex_state = 2},
+  [931] = {.lex_state = 52, .external_lex_state = 2},
+  [932] = {.lex_state = 52, .external_lex_state = 2},
+  [933] = {.lex_state = 52, .external_lex_state = 2},
+  [934] = {.lex_state = 52, .external_lex_state = 2},
+  [935] = {.lex_state = 52, .external_lex_state = 2},
+  [936] = {.lex_state = 52, .external_lex_state = 2},
+  [937] = {.lex_state = 52, .external_lex_state = 2},
+  [938] = {.lex_state = 52, .external_lex_state = 2},
+  [939] = {.lex_state = 52, .external_lex_state = 2},
+  [940] = {.lex_state = 52, .external_lex_state = 2},
+  [941] = {.lex_state = 52, .external_lex_state = 2},
+  [942] = {.lex_state = 52, .external_lex_state = 2},
+  [943] = {.lex_state = 52, .external_lex_state = 2},
+  [944] = {.lex_state = 52, .external_lex_state = 2},
+  [945] = {.lex_state = 52, .external_lex_state = 2},
+  [946] = {.lex_state = 52, .external_lex_state = 2},
+  [947] = {.lex_state = 52, .external_lex_state = 2},
+  [948] = {.lex_state = 52, .external_lex_state = 2},
+  [949] = {.lex_state = 52, .external_lex_state = 2},
+  [950] = {.lex_state = 52, .external_lex_state = 2},
+  [951] = {.lex_state = 52, .external_lex_state = 2},
+  [952] = {.lex_state = 52, .external_lex_state = 2},
+  [953] = {.lex_state = 52, .external_lex_state = 2},
+  [954] = {.lex_state = 52, .external_lex_state = 2},
+  [955] = {.lex_state = 52, .external_lex_state = 2},
+  [956] = {.lex_state = 52, .external_lex_state = 2},
+  [957] = {.lex_state = 52, .external_lex_state = 2},
+  [958] = {.lex_state = 52, .external_lex_state = 2},
+  [959] = {.lex_state = 52, .external_lex_state = 2},
+  [960] = {.lex_state = 52, .external_lex_state = 2},
+  [961] = {.lex_state = 52, .external_lex_state = 2},
+  [962] = {.lex_state = 52, .external_lex_state = 2},
+  [963] = {.lex_state = 52, .external_lex_state = 2},
+  [964] = {.lex_state = 52, .external_lex_state = 2},
+  [965] = {.lex_state = 52, .external_lex_state = 2},
+  [966] = {.lex_state = 52, .external_lex_state = 2},
+  [967] = {.lex_state = 52, .external_lex_state = 2},
+  [968] = {.lex_state = 52, .external_lex_state = 2},
+  [969] = {.lex_state = 52, .external_lex_state = 2},
+  [970] = {.lex_state = 52, .external_lex_state = 2},
+  [971] = {.lex_state = 52, .external_lex_state = 2},
+  [972] = {.lex_state = 52, .external_lex_state = 2},
+  [973] = {.lex_state = 52, .external_lex_state = 2},
+  [974] = {.lex_state = 52, .external_lex_state = 2},
+  [975] = {.lex_state = 13, .external_lex_state = 4},
+  [976] = {.lex_state = 13, .external_lex_state = 4},
+  [977] = {.lex_state = 13, .external_lex_state = 9},
+  [978] = {.lex_state = 13, .external_lex_state = 4},
+  [979] = {.lex_state = 13, .external_lex_state = 6},
+  [980] = {.lex_state = 13, .external_lex_state = 6},
+  [981] = {.lex_state = 13, .external_lex_state = 9},
+  [982] = {.lex_state = 13, .external_lex_state = 9},
+  [983] = {.lex_state = 13, .external_lex_state = 9},
+  [984] = {.lex_state = 13, .external_lex_state = 9},
+  [985] = {.lex_state = 13, .external_lex_state = 9},
+  [986] = {.lex_state = 13, .external_lex_state = 9},
+  [987] = {.lex_state = 13, .external_lex_state = 9},
+  [988] = {.lex_state = 13, .external_lex_state = 6},
+  [989] = {.lex_state = 13, .external_lex_state = 9},
+  [990] = {.lex_state = 13, .external_lex_state = 9},
+  [991] = {.lex_state = 13, .external_lex_state = 6},
+  [992] = {.lex_state = 13, .external_lex_state = 9},
+  [993] = {.lex_state = 13, .external_lex_state = 6},
+  [994] = {.lex_state = 13, .external_lex_state = 12},
+  [995] = {.lex_state = 13, .external_lex_state = 9},
+  [996] = {.lex_state = 13, .external_lex_state = 12},
+  [997] = {.lex_state = 13, .external_lex_state = 6},
+  [998] = {.lex_state = 13, .external_lex_state = 9},
+  [999] = {.lex_state = 13, .external_lex_state = 12},
+  [1000] = {.lex_state = 13, .external_lex_state = 12},
+  [1001] = {.lex_state = 13, .external_lex_state = 12},
+  [1002] = {.lex_state = 13, .external_lex_state = 13},
+  [1003] = {.lex_state = 13, .external_lex_state = 12},
+  [1004] = {.lex_state = 13, .external_lex_state = 2},
+  [1005] = {.lex_state = 13, .external_lex_state = 12},
+  [1006] = {.lex_state = 13, .external_lex_state = 2},
+  [1007] = {.lex_state = 13, .external_lex_state = 12},
+  [1008] = {.lex_state = 13, .external_lex_state = 14},
+  [1009] = {.lex_state = 13, .external_lex_state = 7},
+  [1010] = {.lex_state = 13, .external_lex_state = 12},
+  [1011] = {.lex_state = 13, .external_lex_state = 12},
+  [1012] = {.lex_state = 14, .external_lex_state = 9},
+  [1013] = {.lex_state = 13, .external_lex_state = 9},
+  [1014] = {.lex_state = 13, .external_lex_state = 7},
+  [1015] = {.lex_state = 13, .external_lex_state = 12},
+  [1016] = {.lex_state = 13, .external_lex_state = 15},
+  [1017] = {.lex_state = 13, .external_lex_state = 8},
+  [1018] = {.lex_state = 13, .external_lex_state = 7},
+  [1019] = {.lex_state = 13, .external_lex_state = 8},
+  [1020] = {.lex_state = 13, .external_lex_state = 4},
+  [1021] = {.lex_state = 13, .external_lex_state = 7},
+  [1022] = {.lex_state = 13, .external_lex_state = 8},
+  [1023] = {.lex_state = 13, .external_lex_state = 12},
+  [1024] = {.lex_state = 13, .external_lex_state = 14},
+  [1025] = {.lex_state = 13, .external_lex_state = 12},
+  [1026] = {.lex_state = 13, .external_lex_state = 12},
+  [1027] = {.lex_state = 13, .external_lex_state = 12},
+  [1028] = {.lex_state = 13, .external_lex_state = 12},
+  [1029] = {.lex_state = 13, .external_lex_state = 12},
+  [1030] = {.lex_state = 13, .external_lex_state = 7},
+  [1031] = {.lex_state = 13, .external_lex_state = 12},
+  [1032] = {.lex_state = 13, .external_lex_state = 7},
+  [1033] = {.lex_state = 13, .external_lex_state = 12},
+  [1034] = {.lex_state = 13, .external_lex_state = 12},
+  [1035] = {.lex_state = 13, .external_lex_state = 12},
+  [1036] = {.lex_state = 13, .external_lex_state = 12},
+  [1037] = {.lex_state = 14, .external_lex_state = 9},
+  [1038] = {.lex_state = 13, .external_lex_state = 12},
+  [1039] = {.lex_state = 13, .external_lex_state = 12},
+  [1040] = {.lex_state = 13, .external_lex_state = 12},
+  [1041] = {.lex_state = 13, .external_lex_state = 12},
+  [1042] = {.lex_state = 13, .external_lex_state = 4},
+  [1043] = {.lex_state = 14, .external_lex_state = 9},
+  [1044] = {.lex_state = 13, .external_lex_state = 12},
+  [1045] = {.lex_state = 13, .external_lex_state = 2},
+  [1046] = {.lex_state = 13, .external_lex_state = 12},
+  [1047] = {.lex_state = 13, .external_lex_state = 12},
+  [1048] = {.lex_state = 13, .external_lex_state = 12},
+  [1049] = {.lex_state = 13, .external_lex_state = 12},
+  [1050] = {.lex_state = 13, .external_lex_state = 12},
+  [1051] = {.lex_state = 13, .external_lex_state = 12},
+  [1052] = {.lex_state = 13, .external_lex_state = 6},
+  [1053] = {.lex_state = 13, .external_lex_state = 14},
+  [1054] = {.lex_state = 13, .external_lex_state = 13},
+  [1055] = {.lex_state = 13, .external_lex_state = 13},
+  [1056] = {.lex_state = 13, .external_lex_state = 13},
+  [1057] = {.lex_state = 13, .external_lex_state = 9},
+  [1058] = {.lex_state = 13, .external_lex_state = 13},
+  [1059] = {.lex_state = 13, .external_lex_state = 13},
+  [1060] = {.lex_state = 13, .external_lex_state = 13},
+  [1061] = {.lex_state = 13, .external_lex_state = 13},
+  [1062] = {.lex_state = 13, .external_lex_state = 9},
+  [1063] = {.lex_state = 13, .external_lex_state = 13},
+  [1064] = {.lex_state = 13, .external_lex_state = 14},
+  [1065] = {.lex_state = 13, .external_lex_state = 14},
+  [1066] = {.lex_state = 13, .external_lex_state = 9},
+  [1067] = {.lex_state = 13, .external_lex_state = 9},
+  [1068] = {.lex_state = 13, .external_lex_state = 9},
+  [1069] = {.lex_state = 13, .external_lex_state = 9},
+  [1070] = {.lex_state = 13, .external_lex_state = 9},
+  [1071] = {.lex_state = 13, .external_lex_state = 9},
+  [1072] = {.lex_state = 13, .external_lex_state = 13},
+  [1073] = {.lex_state = 13, .external_lex_state = 13},
+  [1074] = {.lex_state = 13, .external_lex_state = 9},
+  [1075] = {.lex_state = 13, .external_lex_state = 9},
+  [1076] = {.lex_state = 13, .external_lex_state = 6},
+  [1077] = {.lex_state = 13, .external_lex_state = 9},
+  [1078] = {.lex_state = 13, .external_lex_state = 9},
+  [1079] = {.lex_state = 14, .external_lex_state = 14},
+  [1080] = {.lex_state = 14, .external_lex_state = 12},
+  [1081] = {.lex_state = 14, .external_lex_state = 12},
+  [1082] = {.lex_state = 13, .external_lex_state = 6},
+  [1083] = {.lex_state = 14, .external_lex_state = 12},
+  [1084] = {.lex_state = 13, .external_lex_state = 9},
+  [1085] = {.lex_state = 13, .external_lex_state = 9},
+  [1086] = {.lex_state = 13, .external_lex_state = 14},
+  [1087] = {.lex_state = 14, .external_lex_state = 14},
+  [1088] = {.lex_state = 14, .external_lex_state = 14},
+  [1089] = {.lex_state = 13, .external_lex_state = 9},
+  [1090] = {.lex_state = 13, .external_lex_state = 14},
+  [1091] = {.lex_state = 13, .external_lex_state = 9},
+  [1092] = {.lex_state = 14, .external_lex_state = 12},
+  [1093] = {.lex_state = 13, .external_lex_state = 9},
+  [1094] = {.lex_state = 13, .external_lex_state = 9},
+  [1095] = {.lex_state = 13, .external_lex_state = 9},
+  [1096] = {.lex_state = 14, .external_lex_state = 14},
+  [1097] = {.lex_state = 13, .external_lex_state = 13},
+  [1098] = {.lex_state = 13, .external_lex_state = 9},
+  [1099] = {.lex_state = 13, .external_lex_state = 15},
+  [1100] = {.lex_state = 13, .external_lex_state = 15},
+  [1101] = {.lex_state = 13, .external_lex_state = 15},
+  [1102] = {.lex_state = 13, .external_lex_state = 9},
+  [1103] = {.lex_state = 13, .external_lex_state = 9},
+  [1104] = {.lex_state = 13, .external_lex_state = 13},
+  [1105] = {.lex_state = 13, .external_lex_state = 8},
+  [1106] = {.lex_state = 14, .external_lex_state = 12},
+  [1107] = {.lex_state = 13, .external_lex_state = 6},
+  [1108] = {.lex_state = 14, .external_lex_state = 12},
+  [1109] = {.lex_state = 14, .external_lex_state = 12},
+  [1110] = {.lex_state = 13, .external_lex_state = 9},
+  [1111] = {.lex_state = 13, .external_lex_state = 9},
+  [1112] = {.lex_state = 13, .external_lex_state = 9},
+  [1113] = {.lex_state = 13, .external_lex_state = 9},
+  [1114] = {.lex_state = 14, .external_lex_state = 12},
+  [1115] = {.lex_state = 14, .external_lex_state = 12},
+  [1116] = {.lex_state = 13, .external_lex_state = 15},
+  [1117] = {.lex_state = 13, .external_lex_state = 9},
+  [1118] = {.lex_state = 13, .external_lex_state = 15},
+  [1119] = {.lex_state = 13, .external_lex_state = 15},
+  [1120] = {.lex_state = 14, .external_lex_state = 9},
+  [1121] = {.lex_state = 13, .external_lex_state = 15},
+  [1122] = {.lex_state = 13, .external_lex_state = 9},
+  [1123] = {.lex_state = 13, .external_lex_state = 15},
+  [1124] = {.lex_state = 13, .external_lex_state = 15},
+  [1125] = {.lex_state = 13, .external_lex_state = 15},
+  [1126] = {.lex_state = 13, .external_lex_state = 15},
+  [1127] = {.lex_state = 13, .external_lex_state = 9},
+  [1128] = {.lex_state = 13, .external_lex_state = 14},
+  [1129] = {.lex_state = 13, .external_lex_state = 15},
+  [1130] = {.lex_state = 13, .external_lex_state = 15},
+  [1131] = {.lex_state = 13, .external_lex_state = 8},
+  [1132] = {.lex_state = 13, .external_lex_state = 14},
+  [1133] = {.lex_state = 13, .external_lex_state = 9},
+  [1134] = {.lex_state = 13, .external_lex_state = 14},
+  [1135] = {.lex_state = 13, .external_lex_state = 14},
+  [1136] = {.lex_state = 13, .external_lex_state = 14},
+  [1137] = {.lex_state = 13, .external_lex_state = 9},
+  [1138] = {.lex_state = 13, .external_lex_state = 9},
+  [1139] = {.lex_state = 13, .external_lex_state = 14},
+  [1140] = {.lex_state = 13, .external_lex_state = 14},
+  [1141] = {.lex_state = 14, .external_lex_state = 12},
+  [1142] = {.lex_state = 13, .external_lex_state = 14},
+  [1143] = {.lex_state = 13, .external_lex_state = 9},
+  [1144] = {.lex_state = 13, .external_lex_state = 14},
+  [1145] = {.lex_state = 13, .external_lex_state = 9},
+  [1146] = {.lex_state = 13, .external_lex_state = 9},
+  [1147] = {.lex_state = 13, .external_lex_state = 14},
+  [1148] = {.lex_state = 14, .external_lex_state = 12},
+  [1149] = {.lex_state = 14, .external_lex_state = 12},
+  [1150] = {.lex_state = 13, .external_lex_state = 8},
+  [1151] = {.lex_state = 13, .external_lex_state = 14},
+  [1152] = {.lex_state = 13, .external_lex_state = 14},
+  [1153] = {.lex_state = 13, .external_lex_state = 14},
+  [1154] = {.lex_state = 13, .external_lex_state = 9},
+  [1155] = {.lex_state = 13, .external_lex_state = 14},
+  [1156] = {.lex_state = 13, .external_lex_state = 14},
+  [1157] = {.lex_state = 13, .external_lex_state = 14},
+  [1158] = {.lex_state = 13, .external_lex_state = 14},
+  [1159] = {.lex_state = 13, .external_lex_state = 14},
+  [1160] = {.lex_state = 13, .external_lex_state = 14},
+  [1161] = {.lex_state = 13, .external_lex_state = 14},
+  [1162] = {.lex_state = 13, .external_lex_state = 15},
+  [1163] = {.lex_state = 13, .external_lex_state = 12},
+  [1164] = {.lex_state = 13, .external_lex_state = 12},
+  [1165] = {.lex_state = 13, .external_lex_state = 8},
+  [1166] = {.lex_state = 13, .external_lex_state = 12},
+  [1167] = {.lex_state = 13, .external_lex_state = 12},
+  [1168] = {.lex_state = 13, .external_lex_state = 12},
+  [1169] = {.lex_state = 13, .external_lex_state = 12},
+  [1170] = {.lex_state = 13, .external_lex_state = 12},
+  [1171] = {.lex_state = 14, .external_lex_state = 14},
+  [1172] = {.lex_state = 14, .external_lex_state = 14},
+  [1173] = {.lex_state = 14, .external_lex_state = 14},
+  [1174] = {.lex_state = 13, .external_lex_state = 12},
+  [1175] = {.lex_state = 13, .external_lex_state = 12},
+  [1176] = {.lex_state = 13, .external_lex_state = 12},
+  [1177] = {.lex_state = 13, .external_lex_state = 12},
+  [1178] = {.lex_state = 13, .external_lex_state = 12},
+  [1179] = {.lex_state = 13, .external_lex_state = 15},
+  [1180] = {.lex_state = 13, .external_lex_state = 12},
+  [1181] = {.lex_state = 13, .external_lex_state = 7},
+  [1182] = {.lex_state = 13, .external_lex_state = 12},
+  [1183] = {.lex_state = 13, .external_lex_state = 12},
+  [1184] = {.lex_state = 13, .external_lex_state = 12},
+  [1185] = {.lex_state = 13, .external_lex_state = 12},
+  [1186] = {.lex_state = 13, .external_lex_state = 12},
+  [1187] = {.lex_state = 13, .external_lex_state = 14},
+  [1188] = {.lex_state = 13, .external_lex_state = 15},
+  [1189] = {.lex_state = 13, .external_lex_state = 15},
+  [1190] = {.lex_state = 14, .external_lex_state = 14},
+  [1191] = {.lex_state = 14, .external_lex_state = 13},
+  [1192] = {.lex_state = 13, .external_lex_state = 12},
+  [1193] = {.lex_state = 13, .external_lex_state = 12},
+  [1194] = {.lex_state = 13, .external_lex_state = 8},
+  [1195] = {.lex_state = 13, .external_lex_state = 12},
+  [1196] = {.lex_state = 13, .external_lex_state = 7},
+  [1197] = {.lex_state = 13, .external_lex_state = 12},
+  [1198] = {.lex_state = 13, .external_lex_state = 12},
+  [1199] = {.lex_state = 13, .external_lex_state = 12},
+  [1200] = {.lex_state = 14, .external_lex_state = 15},
+  [1201] = {.lex_state = 13, .external_lex_state = 12},
+  [1202] = {.lex_state = 13, .external_lex_state = 7},
+  [1203] = {.lex_state = 13, .external_lex_state = 12},
+  [1204] = {.lex_state = 13, .external_lex_state = 12},
+  [1205] = {.lex_state = 14, .external_lex_state = 13},
+  [1206] = {.lex_state = 13, .external_lex_state = 12},
+  [1207] = {.lex_state = 14, .external_lex_state = 13},
+  [1208] = {.lex_state = 13, .external_lex_state = 2},
+  [1209] = {.lex_state = 14, .external_lex_state = 13},
+  [1210] = {.lex_state = 13, .external_lex_state = 15},
+  [1211] = {.lex_state = 13, .external_lex_state = 12},
+  [1212] = {.lex_state = 13, .external_lex_state = 12},
+  [1213] = {.lex_state = 13, .external_lex_state = 15},
+  [1214] = {.lex_state = 14, .external_lex_state = 14},
+  [1215] = {.lex_state = 13, .external_lex_state = 12},
+  [1216] = {.lex_state = 13, .external_lex_state = 15},
+  [1217] = {.lex_state = 13, .external_lex_state = 15},
+  [1218] = {.lex_state = 13, .external_lex_state = 12},
+  [1219] = {.lex_state = 13, .external_lex_state = 14},
+  [1220] = {.lex_state = 13, .external_lex_state = 12},
+  [1221] = {.lex_state = 13, .external_lex_state = 12},
+  [1222] = {.lex_state = 13, .external_lex_state = 15},
+  [1223] = {.lex_state = 13, .external_lex_state = 15},
+  [1224] = {.lex_state = 13, .external_lex_state = 12},
+  [1225] = {.lex_state = 13, .external_lex_state = 15},
+  [1226] = {.lex_state = 14, .external_lex_state = 15},
+  [1227] = {.lex_state = 13, .external_lex_state = 12},
+  [1228] = {.lex_state = 14, .external_lex_state = 15},
+  [1229] = {.lex_state = 14, .external_lex_state = 15},
+  [1230] = {.lex_state = 14, .external_lex_state = 15},
+  [1231] = {.lex_state = 13, .external_lex_state = 15},
+  [1232] = {.lex_state = 13, .external_lex_state = 15},
+  [1233] = {.lex_state = 13, .external_lex_state = 12},
+  [1234] = {.lex_state = 14, .external_lex_state = 15},
+  [1235] = {.lex_state = 13, .external_lex_state = 12},
+  [1236] = {.lex_state = 13, .external_lex_state = 12},
+  [1237] = {.lex_state = 13, .external_lex_state = 12},
+  [1238] = {.lex_state = 13, .external_lex_state = 12},
+  [1239] = {.lex_state = 13, .external_lex_state = 12},
+  [1240] = {.lex_state = 13, .external_lex_state = 12},
+  [1241] = {.lex_state = 13, .external_lex_state = 12},
+  [1242] = {.lex_state = 14, .external_lex_state = 14},
+  [1243] = {.lex_state = 14, .external_lex_state = 14},
+  [1244] = {.lex_state = 14, .external_lex_state = 14},
+  [1245] = {.lex_state = 14, .external_lex_state = 14},
+  [1246] = {.lex_state = 14, .external_lex_state = 15},
+  [1247] = {.lex_state = 13, .external_lex_state = 12},
+  [1248] = {.lex_state = 14, .external_lex_state = 14},
+  [1249] = {.lex_state = 14, .external_lex_state = 15},
+  [1250] = {.lex_state = 13, .external_lex_state = 12},
+  [1251] = {.lex_state = 14, .external_lex_state = 14},
+  [1252] = {.lex_state = 13, .external_lex_state = 12},
+  [1253] = {.lex_state = 13, .external_lex_state = 12},
+  [1254] = {.lex_state = 14, .external_lex_state = 15},
+  [1255] = {.lex_state = 14, .external_lex_state = 15},
+  [1256] = {.lex_state = 13, .external_lex_state = 12},
+  [1257] = {.lex_state = 13, .external_lex_state = 12},
+  [1258] = {.lex_state = 13, .external_lex_state = 12},
+  [1259] = {.lex_state = 13, .external_lex_state = 2},
+  [1260] = {.lex_state = 13, .external_lex_state = 7},
+  [1261] = {.lex_state = 14, .external_lex_state = 14},
+  [1262] = {.lex_state = 13, .external_lex_state = 12},
+  [1263] = {.lex_state = 13, .external_lex_state = 12},
+  [1264] = {.lex_state = 13, .external_lex_state = 12},
+  [1265] = {.lex_state = 13, .external_lex_state = 12},
+  [1266] = {.lex_state = 13, .external_lex_state = 12},
+  [1267] = {.lex_state = 13, .external_lex_state = 12},
+  [1268] = {.lex_state = 13, .external_lex_state = 12},
+  [1269] = {.lex_state = 13, .external_lex_state = 14},
+  [1270] = {.lex_state = 13, .external_lex_state = 14},
+  [1271] = {.lex_state = 13, .external_lex_state = 14},
+  [1272] = {.lex_state = 13, .external_lex_state = 12},
+  [1273] = {.lex_state = 13, .external_lex_state = 12},
+  [1274] = {.lex_state = 13, .external_lex_state = 14},
+  [1275] = {.lex_state = 13, .external_lex_state = 12},
+  [1276] = {.lex_state = 13, .external_lex_state = 12},
+  [1277] = {.lex_state = 13, .external_lex_state = 12},
+  [1278] = {.lex_state = 13, .external_lex_state = 14},
+  [1279] = {.lex_state = 13, .external_lex_state = 12},
+  [1280] = {.lex_state = 13, .external_lex_state = 12},
+  [1281] = {.lex_state = 13, .external_lex_state = 12},
+  [1282] = {.lex_state = 13, .external_lex_state = 12},
+  [1283] = {.lex_state = 13, .external_lex_state = 12},
+  [1284] = {.lex_state = 13, .external_lex_state = 12},
+  [1285] = {.lex_state = 13, .external_lex_state = 12},
+  [1286] = {.lex_state = 13, .external_lex_state = 12},
+  [1287] = {.lex_state = 13, .external_lex_state = 14},
+  [1288] = {.lex_state = 13, .external_lex_state = 14},
+  [1289] = {.lex_state = 13, .external_lex_state = 14},
+  [1290] = {.lex_state = 13, .external_lex_state = 14},
+  [1291] = {.lex_state = 13, .external_lex_state = 15},
+  [1292] = {.lex_state = 13, .external_lex_state = 14},
+  [1293] = {.lex_state = 13, .external_lex_state = 13},
+  [1294] = {.lex_state = 13, .external_lex_state = 13},
+  [1295] = {.lex_state = 13, .external_lex_state = 13},
+  [1296] = {.lex_state = 13, .external_lex_state = 14},
+  [1297] = {.lex_state = 13, .external_lex_state = 14},
+  [1298] = {.lex_state = 13, .external_lex_state = 14},
+  [1299] = {.lex_state = 13, .external_lex_state = 14},
+  [1300] = {.lex_state = 13, .external_lex_state = 14},
+  [1301] = {.lex_state = 13, .external_lex_state = 14},
+  [1302] = {.lex_state = 13, .external_lex_state = 14},
+  [1303] = {.lex_state = 13, .external_lex_state = 14},
+  [1304] = {.lex_state = 13, .external_lex_state = 14},
+  [1305] = {.lex_state = 13, .external_lex_state = 14},
+  [1306] = {.lex_state = 13, .external_lex_state = 14},
+  [1307] = {.lex_state = 14, .external_lex_state = 14},
+  [1308] = {.lex_state = 14, .external_lex_state = 14},
+  [1309] = {.lex_state = 13, .external_lex_state = 13},
+  [1310] = {.lex_state = 14, .external_lex_state = 14},
+  [1311] = {.lex_state = 13, .external_lex_state = 14},
+  [1312] = {.lex_state = 13, .external_lex_state = 13},
+  [1313] = {.lex_state = 13, .external_lex_state = 14},
+  [1314] = {.lex_state = 13, .external_lex_state = 13},
+  [1315] = {.lex_state = 13, .external_lex_state = 15},
+  [1316] = {.lex_state = 13, .external_lex_state = 15},
+  [1317] = {.lex_state = 13, .external_lex_state = 15},
+  [1318] = {.lex_state = 13, .external_lex_state = 15},
+  [1319] = {.lex_state = 13, .external_lex_state = 14},
+  [1320] = {.lex_state = 13, .external_lex_state = 13},
+  [1321] = {.lex_state = 13, .external_lex_state = 13},
+  [1322] = {.lex_state = 13, .external_lex_state = 13},
+  [1323] = {.lex_state = 13, .external_lex_state = 14},
+  [1324] = {.lex_state = 13, .external_lex_state = 13},
+  [1325] = {.lex_state = 13, .external_lex_state = 15},
+  [1326] = {.lex_state = 13, .external_lex_state = 15},
+  [1327] = {.lex_state = 13, .external_lex_state = 15},
+  [1328] = {.lex_state = 13, .external_lex_state = 13},
+  [1329] = {.lex_state = 13, .external_lex_state = 13},
+  [1330] = {.lex_state = 13, .external_lex_state = 13},
+  [1331] = {.lex_state = 13, .external_lex_state = 13},
+  [1332] = {.lex_state = 13, .external_lex_state = 14},
+  [1333] = {.lex_state = 13, .external_lex_state = 14},
+  [1334] = {.lex_state = 13, .external_lex_state = 9},
+  [1335] = {.lex_state = 13, .external_lex_state = 13},
+  [1336] = {.lex_state = 13, .external_lex_state = 13},
+  [1337] = {.lex_state = 13, .external_lex_state = 14},
+  [1338] = {.lex_state = 13, .external_lex_state = 13},
+  [1339] = {.lex_state = 13, .external_lex_state = 13},
+  [1340] = {.lex_state = 14, .external_lex_state = 15},
+  [1341] = {.lex_state = 13, .external_lex_state = 14},
+  [1342] = {.lex_state = 13, .external_lex_state = 14},
+  [1343] = {.lex_state = 14, .external_lex_state = 15},
+  [1344] = {.lex_state = 13, .external_lex_state = 13},
+  [1345] = {.lex_state = 14, .external_lex_state = 15},
+  [1346] = {.lex_state = 13, .external_lex_state = 13},
+  [1347] = {.lex_state = 13, .external_lex_state = 13},
+  [1348] = {.lex_state = 13, .external_lex_state = 13},
+  [1349] = {.lex_state = 13, .external_lex_state = 15},
+  [1350] = {.lex_state = 13, .external_lex_state = 14},
+  [1351] = {.lex_state = 13, .external_lex_state = 13},
+  [1352] = {.lex_state = 13, .external_lex_state = 14},
+  [1353] = {.lex_state = 13, .external_lex_state = 13},
+  [1354] = {.lex_state = 13, .external_lex_state = 14},
+  [1355] = {.lex_state = 8, .external_lex_state = 9},
+  [1356] = {.lex_state = 13, .external_lex_state = 15},
+  [1357] = {.lex_state = 13, .external_lex_state = 15},
+  [1358] = {.lex_state = 13, .external_lex_state = 15},
+  [1359] = {.lex_state = 13, .external_lex_state = 15},
+  [1360] = {.lex_state = 13, .external_lex_state = 13},
+  [1361] = {.lex_state = 13, .external_lex_state = 13},
+  [1362] = {.lex_state = 13, .external_lex_state = 13},
+  [1363] = {.lex_state = 8, .external_lex_state = 9},
+  [1364] = {.lex_state = 13, .external_lex_state = 15},
+  [1365] = {.lex_state = 13, .external_lex_state = 13},
+  [1366] = {.lex_state = 13, .external_lex_state = 14},
+  [1367] = {.lex_state = 13, .external_lex_state = 15},
+  [1368] = {.lex_state = 13, .external_lex_state = 15},
+  [1369] = {.lex_state = 13, .external_lex_state = 14},
+  [1370] = {.lex_state = 13, .external_lex_state = 14},
+  [1371] = {.lex_state = 13, .external_lex_state = 14},
+  [1372] = {.lex_state = 13, .external_lex_state = 14},
+  [1373] = {.lex_state = 13, .external_lex_state = 14},
+  [1374] = {.lex_state = 13, .external_lex_state = 14},
+  [1375] = {.lex_state = 13, .external_lex_state = 14},
+  [1376] = {.lex_state = 13, .external_lex_state = 14},
+  [1377] = {.lex_state = 13, .external_lex_state = 14},
+  [1378] = {.lex_state = 13, .external_lex_state = 14},
+  [1379] = {.lex_state = 13, .external_lex_state = 14},
+  [1380] = {.lex_state = 13, .external_lex_state = 15},
+  [1381] = {.lex_state = 13, .external_lex_state = 15},
+  [1382] = {.lex_state = 13, .external_lex_state = 15},
+  [1383] = {.lex_state = 13, .external_lex_state = 14},
+  [1384] = {.lex_state = 13, .external_lex_state = 14},
+  [1385] = {.lex_state = 13, .external_lex_state = 14},
+  [1386] = {.lex_state = 13, .external_lex_state = 14},
+  [1387] = {.lex_state = 13, .external_lex_state = 15},
+  [1388] = {.lex_state = 13, .external_lex_state = 13},
+  [1389] = {.lex_state = 13, .external_lex_state = 14},
+  [1390] = {.lex_state = 13, .external_lex_state = 14},
+  [1391] = {.lex_state = 13, .external_lex_state = 14},
+  [1392] = {.lex_state = 13, .external_lex_state = 13},
+  [1393] = {.lex_state = 13, .external_lex_state = 15},
+  [1394] = {.lex_state = 8, .external_lex_state = 9},
+  [1395] = {.lex_state = 13, .external_lex_state = 14},
+  [1396] = {.lex_state = 13, .external_lex_state = 14},
+  [1397] = {.lex_state = 13, .external_lex_state = 15},
+  [1398] = {.lex_state = 13, .external_lex_state = 15},
+  [1399] = {.lex_state = 8, .external_lex_state = 9},
+  [1400] = {.lex_state = 8, .external_lex_state = 9},
+  [1401] = {.lex_state = 8, .external_lex_state = 9},
+  [1402] = {.lex_state = 13, .external_lex_state = 15},
+  [1403] = {.lex_state = 13, .external_lex_state = 15},
+  [1404] = {.lex_state = 13, .external_lex_state = 15},
+  [1405] = {.lex_state = 13, .external_lex_state = 14},
+  [1406] = {.lex_state = 13, .external_lex_state = 14},
+  [1407] = {.lex_state = 13, .external_lex_state = 14},
+  [1408] = {.lex_state = 13, .external_lex_state = 14},
+  [1409] = {.lex_state = 13, .external_lex_state = 14},
+  [1410] = {.lex_state = 13, .external_lex_state = 8},
+  [1411] = {.lex_state = 13, .external_lex_state = 15},
+  [1412] = {.lex_state = 13, .external_lex_state = 14},
+  [1413] = {.lex_state = 13, .external_lex_state = 15},
+  [1414] = {.lex_state = 13, .external_lex_state = 15},
+  [1415] = {.lex_state = 13, .external_lex_state = 15},
+  [1416] = {.lex_state = 13, .external_lex_state = 15},
+  [1417] = {.lex_state = 13, .external_lex_state = 15},
+  [1418] = {.lex_state = 13, .external_lex_state = 14},
+  [1419] = {.lex_state = 13, .external_lex_state = 15},
+  [1420] = {.lex_state = 13, .external_lex_state = 8},
+  [1421] = {.lex_state = 13, .external_lex_state = 15},
+  [1422] = {.lex_state = 13, .external_lex_state = 14},
+  [1423] = {.lex_state = 13, .external_lex_state = 14},
+  [1424] = {.lex_state = 13, .external_lex_state = 15},
+  [1425] = {.lex_state = 13, .external_lex_state = 15},
+  [1426] = {.lex_state = 13, .external_lex_state = 14},
+  [1427] = {.lex_state = 13, .external_lex_state = 14},
+  [1428] = {.lex_state = 13, .external_lex_state = 14},
+  [1429] = {.lex_state = 13, .external_lex_state = 13},
+  [1430] = {.lex_state = 13, .external_lex_state = 15},
+  [1431] = {.lex_state = 13, .external_lex_state = 14},
+  [1432] = {.lex_state = 13, .external_lex_state = 14},
+  [1433] = {.lex_state = 13, .external_lex_state = 13},
+  [1434] = {.lex_state = 13, .external_lex_state = 13},
+  [1435] = {.lex_state = 13, .external_lex_state = 14},
+  [1436] = {.lex_state = 13, .external_lex_state = 13},
+  [1437] = {.lex_state = 13, .external_lex_state = 13},
+  [1438] = {.lex_state = 13, .external_lex_state = 14},
+  [1439] = {.lex_state = 13, .external_lex_state = 13},
+  [1440] = {.lex_state = 13, .external_lex_state = 14},
+  [1441] = {.lex_state = 13, .external_lex_state = 14},
+  [1442] = {.lex_state = 13, .external_lex_state = 14},
+  [1443] = {.lex_state = 13, .external_lex_state = 15},
+  [1444] = {.lex_state = 13, .external_lex_state = 15},
+  [1445] = {.lex_state = 13, .external_lex_state = 15},
+  [1446] = {.lex_state = 13, .external_lex_state = 14},
+  [1447] = {.lex_state = 13, .external_lex_state = 14},
+  [1448] = {.lex_state = 13, .external_lex_state = 15},
+  [1449] = {.lex_state = 13, .external_lex_state = 14},
+  [1450] = {.lex_state = 13, .external_lex_state = 15},
+  [1451] = {.lex_state = 14, .external_lex_state = 14},
+  [1452] = {.lex_state = 13, .external_lex_state = 15},
+  [1453] = {.lex_state = 13, .external_lex_state = 13},
+  [1454] = {.lex_state = 13, .external_lex_state = 15},
+  [1455] = {.lex_state = 13, .external_lex_state = 15},
+  [1456] = {.lex_state = 13, .external_lex_state = 15},
+  [1457] = {.lex_state = 13, .external_lex_state = 15},
+  [1458] = {.lex_state = 13, .external_lex_state = 15},
+  [1459] = {.lex_state = 13, .external_lex_state = 15},
+  [1460] = {.lex_state = 13, .external_lex_state = 15},
+  [1461] = {.lex_state = 13, .external_lex_state = 15},
+  [1462] = {.lex_state = 13, .external_lex_state = 15},
+  [1463] = {.lex_state = 14, .external_lex_state = 12},
+  [1464] = {.lex_state = 13, .external_lex_state = 15},
+  [1465] = {.lex_state = 13, .external_lex_state = 15},
+  [1466] = {.lex_state = 14, .external_lex_state = 12},
+  [1467] = {.lex_state = 14, .external_lex_state = 12},
+  [1468] = {.lex_state = 13, .external_lex_state = 15},
+  [1469] = {.lex_state = 13, .external_lex_state = 15},
+  [1470] = {.lex_state = 13, .external_lex_state = 15},
+  [1471] = {.lex_state = 13, .external_lex_state = 15},
+  [1472] = {.lex_state = 13, .external_lex_state = 15},
+  [1473] = {.lex_state = 13, .external_lex_state = 15},
+  [1474] = {.lex_state = 14, .external_lex_state = 14},
+  [1475] = {.lex_state = 13, .external_lex_state = 15},
+  [1476] = {.lex_state = 14, .external_lex_state = 14},
+  [1477] = {.lex_state = 13, .external_lex_state = 15},
+  [1478] = {.lex_state = 13, .external_lex_state = 15},
+  [1479] = {.lex_state = 13, .external_lex_state = 15},
+  [1480] = {.lex_state = 13, .external_lex_state = 15},
+  [1481] = {.lex_state = 13, .external_lex_state = 15},
+  [1482] = {.lex_state = 13, .external_lex_state = 15},
+  [1483] = {.lex_state = 13, .external_lex_state = 15},
+  [1484] = {.lex_state = 13, .external_lex_state = 15},
+  [1485] = {.lex_state = 13, .external_lex_state = 15},
+  [1486] = {.lex_state = 13, .external_lex_state = 15},
+  [1487] = {.lex_state = 13, .external_lex_state = 15},
+  [1488] = {.lex_state = 13, .external_lex_state = 15},
+  [1489] = {.lex_state = 13, .external_lex_state = 15},
+  [1490] = {.lex_state = 13, .external_lex_state = 15},
+  [1491] = {.lex_state = 13, .external_lex_state = 15},
+  [1492] = {.lex_state = 13, .external_lex_state = 15},
+  [1493] = {.lex_state = 14, .external_lex_state = 15},
+  [1494] = {.lex_state = 14, .external_lex_state = 15},
+  [1495] = {.lex_state = 14, .external_lex_state = 15},
+  [1496] = {.lex_state = 13, .external_lex_state = 15},
+  [1497] = {.lex_state = 8, .external_lex_state = 13},
+  [1498] = {.lex_state = 8, .external_lex_state = 13},
+  [1499] = {.lex_state = 8, .external_lex_state = 13},
+  [1500] = {.lex_state = 8, .external_lex_state = 13},
+  [1501] = {.lex_state = 8, .external_lex_state = 13},
+  [1502] = {.lex_state = 8, .external_lex_state = 13},
+  [1503] = {.lex_state = 8, .external_lex_state = 13},
+  [1504] = {.lex_state = 8, .external_lex_state = 13},
+  [1505] = {.lex_state = 8, .external_lex_state = 13},
+  [1506] = {.lex_state = 8, .external_lex_state = 13},
+  [1507] = {.lex_state = 8, .external_lex_state = 13},
+  [1508] = {.lex_state = 8, .external_lex_state = 13},
+  [1509] = {.lex_state = 8, .external_lex_state = 13},
+  [1510] = {.lex_state = 8, .external_lex_state = 13},
+  [1511] = {.lex_state = 8, .external_lex_state = 13},
+  [1512] = {.lex_state = 8, .external_lex_state = 13},
+  [1513] = {.lex_state = 13, .external_lex_state = 14},
+  [1514] = {.lex_state = 13, .external_lex_state = 15},
+  [1515] = {.lex_state = 13, .external_lex_state = 12},
+  [1516] = {.lex_state = 12, .external_lex_state = 2},
+  [1517] = {.lex_state = 12, .external_lex_state = 2},
+  [1518] = {.lex_state = 5, .external_lex_state = 7},
+  [1519] = {.lex_state = 5, .external_lex_state = 7},
+  [1520] = {.lex_state = 5, .external_lex_state = 7},
+  [1521] = {.lex_state = 5, .external_lex_state = 7},
+  [1522] = {.lex_state = 5, .external_lex_state = 7},
+  [1523] = {.lex_state = 5, .external_lex_state = 7},
+  [1524] = {.lex_state = 5, .external_lex_state = 8},
+  [1525] = {.lex_state = 5, .external_lex_state = 7},
+  [1526] = {.lex_state = 5, .external_lex_state = 7},
+  [1527] = {.lex_state = 5, .external_lex_state = 8},
+  [1528] = {.lex_state = 5, .external_lex_state = 8},
+  [1529] = {.lex_state = 5, .external_lex_state = 7},
+  [1530] = {.lex_state = 5, .external_lex_state = 8},
+  [1531] = {.lex_state = 5, .external_lex_state = 8},
+  [1532] = {.lex_state = 5, .external_lex_state = 7},
+  [1533] = {.lex_state = 5, .external_lex_state = 8},
+  [1534] = {.lex_state = 5, .external_lex_state = 7},
+  [1535] = {.lex_state = 5, .external_lex_state = 7},
+  [1536] = {.lex_state = 5, .external_lex_state = 8},
+  [1537] = {.lex_state = 5, .external_lex_state = 7},
+  [1538] = {.lex_state = 5, .external_lex_state = 8},
+  [1539] = {.lex_state = 5, .external_lex_state = 7},
+  [1540] = {.lex_state = 5, .external_lex_state = 8},
+  [1541] = {.lex_state = 5, .external_lex_state = 7},
+  [1542] = {.lex_state = 5, .external_lex_state = 7},
+  [1543] = {.lex_state = 5, .external_lex_state = 8},
+  [1544] = {.lex_state = 5, .external_lex_state = 8},
+  [1545] = {.lex_state = 5, .external_lex_state = 7},
+  [1546] = {.lex_state = 5, .external_lex_state = 7},
+  [1547] = {.lex_state = 5, .external_lex_state = 7},
+  [1548] = {.lex_state = 5, .external_lex_state = 7},
+  [1549] = {.lex_state = 5, .external_lex_state = 7},
+  [1550] = {.lex_state = 5, .external_lex_state = 7},
+  [1551] = {.lex_state = 5, .external_lex_state = 8},
+  [1552] = {.lex_state = 5, .external_lex_state = 7},
+  [1553] = {.lex_state = 5, .external_lex_state = 7},
+  [1554] = {.lex_state = 5, .external_lex_state = 2},
+  [1555] = {.lex_state = 5, .external_lex_state = 2},
+  [1556] = {.lex_state = 5, .external_lex_state = 2},
+  [1557] = {.lex_state = 5, .external_lex_state = 2},
+  [1558] = {.lex_state = 5, .external_lex_state = 2},
+  [1559] = {.lex_state = 5, .external_lex_state = 6},
+  [1560] = {.lex_state = 5, .external_lex_state = 6},
+  [1561] = {.lex_state = 5, .external_lex_state = 6},
+  [1562] = {.lex_state = 5, .external_lex_state = 6},
+  [1563] = {.lex_state = 5, .external_lex_state = 6},
+  [1564] = {.lex_state = 5, .external_lex_state = 6},
+  [1565] = {.lex_state = 5, .external_lex_state = 6},
+  [1566] = {.lex_state = 5, .external_lex_state = 6},
+  [1567] = {.lex_state = 5, .external_lex_state = 6},
+  [1568] = {.lex_state = 5, .external_lex_state = 6},
+  [1569] = {.lex_state = 5, .external_lex_state = 6},
+  [1570] = {.lex_state = 5, .external_lex_state = 6},
+  [1571] = {.lex_state = 5, .external_lex_state = 6},
+  [1572] = {.lex_state = 5, .external_lex_state = 6},
+  [1573] = {.lex_state = 5, .external_lex_state = 6},
+  [1574] = {.lex_state = 5, .external_lex_state = 6},
+  [1575] = {.lex_state = 5, .external_lex_state = 6},
+  [1576] = {.lex_state = 5, .external_lex_state = 6},
+  [1577] = {.lex_state = 5, .external_lex_state = 6},
+  [1578] = {.lex_state = 5, .external_lex_state = 6},
+  [1579] = {.lex_state = 5, .external_lex_state = 2},
+  [1580] = {.lex_state = 5, .external_lex_state = 2},
+  [1581] = {.lex_state = 5, .external_lex_state = 2},
+  [1582] = {.lex_state = 5, .external_lex_state = 2},
+  [1583] = {.lex_state = 5, .external_lex_state = 2},
+  [1584] = {.lex_state = 5, .external_lex_state = 2},
+  [1585] = {.lex_state = 5, .external_lex_state = 2},
+  [1586] = {.lex_state = 5, .external_lex_state = 2},
+  [1587] = {.lex_state = 5, .external_lex_state = 2},
+  [1588] = {.lex_state = 8, .external_lex_state = 9},
+  [1589] = {.lex_state = 8, .external_lex_state = 9},
+  [1590] = {.lex_state = 13, .external_lex_state = 12},
+  [1591] = {.lex_state = 13, .external_lex_state = 12},
+  [1592] = {.lex_state = 13, .external_lex_state = 12},
+  [1593] = {.lex_state = 8, .external_lex_state = 13},
+  [1594] = {.lex_state = 13, .external_lex_state = 12},
+  [1595] = {.lex_state = 8, .external_lex_state = 13},
+  [1596] = {.lex_state = 8, .external_lex_state = 14},
+  [1597] = {.lex_state = 8, .external_lex_state = 14},
+  [1598] = {.lex_state = 13, .external_lex_state = 12},
+  [1599] = {.lex_state = 13, .external_lex_state = 12},
+  [1600] = {.lex_state = 8, .external_lex_state = 15},
+  [1601] = {.lex_state = 52, .external_lex_state = 12},
+  [1602] = {.lex_state = 52, .external_lex_state = 12},
+  [1603] = {.lex_state = 52, .external_lex_state = 12},
+  [1604] = {.lex_state = 8, .external_lex_state = 15},
+  [1605] = {.lex_state = 52, .external_lex_state = 12},
+  [1606] = {.lex_state = 13, .external_lex_state = 14},
+  [1607] = {.lex_state = 13, .external_lex_state = 14},
+  [1608] = {.lex_state = 13, .external_lex_state = 14},
+  [1609] = {.lex_state = 13, .external_lex_state = 14},
+  [1610] = {.lex_state = 52, .external_lex_state = 14},
+  [1611] = {.lex_state = 11, .external_lex_state = 9},
+  [1612] = {.lex_state = 13, .external_lex_state = 14},
+  [1613] = {.lex_state = 52, .external_lex_state = 14},
+  [1614] = {.lex_state = 52, .external_lex_state = 15},
+  [1615] = {.lex_state = 11, .external_lex_state = 9},
+  [1616] = {.lex_state = 13, .external_lex_state = 14},
+  [1617] = {.lex_state = 52, .external_lex_state = 15},
+  [1618] = {.lex_state = 13, .external_lex_state = 13},
+  [1619] = {.lex_state = 13, .external_lex_state = 13},
+  [1620] = {.lex_state = 13, .external_lex_state = 13},
+  [1621] = {.lex_state = 13, .external_lex_state = 13},
+  [1622] = {.lex_state = 13, .external_lex_state = 15},
+  [1623] = {.lex_state = 13, .external_lex_state = 13},
+  [1624] = {.lex_state = 13, .external_lex_state = 13},
+  [1625] = {.lex_state = 13, .external_lex_state = 13},
+  [1626] = {.lex_state = 13, .external_lex_state = 14},
+  [1627] = {.lex_state = 13, .external_lex_state = 14},
+  [1628] = {.lex_state = 11, .external_lex_state = 9},
+  [1629] = {.lex_state = 13, .external_lex_state = 15},
+  [1630] = {.lex_state = 13, .external_lex_state = 15},
+  [1631] = {.lex_state = 13, .external_lex_state = 13},
+  [1632] = {.lex_state = 13, .external_lex_state = 15},
+  [1633] = {.lex_state = 13, .external_lex_state = 13},
+  [1634] = {.lex_state = 13, .external_lex_state = 15},
+  [1635] = {.lex_state = 11, .external_lex_state = 9},
+  [1636] = {.lex_state = 13, .external_lex_state = 13},
+  [1637] = {.lex_state = 13, .external_lex_state = 13},
+  [1638] = {.lex_state = 13, .external_lex_state = 14},
+  [1639] = {.lex_state = 13, .external_lex_state = 13},
+  [1640] = {.lex_state = 13, .external_lex_state = 13},
+  [1641] = {.lex_state = 13, .external_lex_state = 13},
+  [1642] = {.lex_state = 13, .external_lex_state = 14},
+  [1643] = {.lex_state = 13, .external_lex_state = 15},
+  [1644] = {.lex_state = 13, .external_lex_state = 13},
+  [1645] = {.lex_state = 13, .external_lex_state = 14},
+  [1646] = {.lex_state = 13, .external_lex_state = 13},
+  [1647] = {.lex_state = 13, .external_lex_state = 13},
+  [1648] = {.lex_state = 13, .external_lex_state = 13},
+  [1649] = {.lex_state = 11, .external_lex_state = 9},
+  [1650] = {.lex_state = 13, .external_lex_state = 13},
+  [1651] = {.lex_state = 13, .external_lex_state = 13},
+  [1652] = {.lex_state = 13, .external_lex_state = 13},
+  [1653] = {.lex_state = 11, .external_lex_state = 9},
+  [1654] = {.lex_state = 13, .external_lex_state = 13},
+  [1655] = {.lex_state = 13, .external_lex_state = 14},
+  [1656] = {.lex_state = 12, .external_lex_state = 13},
+  [1657] = {.lex_state = 12, .external_lex_state = 13},
+  [1658] = {.lex_state = 12, .external_lex_state = 13},
+  [1659] = {.lex_state = 12, .external_lex_state = 13},
+  [1660] = {.lex_state = 12, .external_lex_state = 13},
+  [1661] = {.lex_state = 11, .external_lex_state = 13},
+  [1662] = {.lex_state = 12, .external_lex_state = 13},
+  [1663] = {.lex_state = 12, .external_lex_state = 13},
+  [1664] = {.lex_state = 11, .external_lex_state = 13},
+  [1665] = {.lex_state = 12, .external_lex_state = 13},
+  [1666] = {.lex_state = 11, .external_lex_state = 9},
+  [1667] = {.lex_state = 12, .external_lex_state = 13},
+  [1668] = {.lex_state = 11, .external_lex_state = 13},
+  [1669] = {.lex_state = 12, .external_lex_state = 13},
+  [1670] = {.lex_state = 11, .external_lex_state = 13},
+  [1671] = {.lex_state = 11, .external_lex_state = 13},
+  [1672] = {.lex_state = 11, .external_lex_state = 13},
+  [1673] = {.lex_state = 11, .external_lex_state = 13},
+  [1674] = {.lex_state = 12, .external_lex_state = 13},
+  [1675] = {.lex_state = 11, .external_lex_state = 13},
+  [1676] = {.lex_state = 5, .external_lex_state = 14},
+  [1677] = {.lex_state = 12, .external_lex_state = 13},
+  [1678] = {.lex_state = 5, .external_lex_state = 14},
+  [1679] = {.lex_state = 11, .external_lex_state = 13},
+  [1680] = {.lex_state = 12, .external_lex_state = 13},
+  [1681] = {.lex_state = 5, .external_lex_state = 14},
+  [1682] = {.lex_state = 5, .external_lex_state = 13},
+  [1683] = {.lex_state = 5, .external_lex_state = 13},
+  [1684] = {.lex_state = 52, .external_lex_state = 12},
+  [1685] = {.lex_state = 8, .external_lex_state = 9},
+  [1686] = {.lex_state = 52, .external_lex_state = 12},
+  [1687] = {.lex_state = 8, .external_lex_state = 9},
+  [1688] = {.lex_state = 8, .external_lex_state = 9},
+  [1689] = {.lex_state = 8, .external_lex_state = 9},
+  [1690] = {.lex_state = 52, .external_lex_state = 12},
+  [1691] = {.lex_state = 52, .external_lex_state = 12},
+  [1692] = {.lex_state = 8, .external_lex_state = 9},
+  [1693] = {.lex_state = 8, .external_lex_state = 9},
+  [1694] = {.lex_state = 52, .external_lex_state = 12},
+  [1695] = {.lex_state = 52, .external_lex_state = 12},
+  [1696] = {.lex_state = 8, .external_lex_state = 9},
+  [1697] = {.lex_state = 8, .external_lex_state = 9},
+  [1698] = {.lex_state = 52, .external_lex_state = 12},
+  [1699] = {.lex_state = 8, .external_lex_state = 9},
+  [1700] = {.lex_state = 52, .external_lex_state = 12},
+  [1701] = {.lex_state = 52, .external_lex_state = 15},
+  [1702] = {.lex_state = 52, .external_lex_state = 15},
+  [1703] = {.lex_state = 52, .external_lex_state = 15},
+  [1704] = {.lex_state = 52, .external_lex_state = 14},
+  [1705] = {.lex_state = 52, .external_lex_state = 14},
+  [1706] = {.lex_state = 52, .external_lex_state = 14},
+  [1707] = {.lex_state = 52, .external_lex_state = 14},
+  [1708] = {.lex_state = 52, .external_lex_state = 14},
+  [1709] = {.lex_state = 8, .external_lex_state = 9},
+  [1710] = {.lex_state = 52, .external_lex_state = 15},
+  [1711] = {.lex_state = 52, .external_lex_state = 14},
+  [1712] = {.lex_state = 52, .external_lex_state = 14},
+  [1713] = {.lex_state = 52, .external_lex_state = 14},
+  [1714] = {.lex_state = 52, .external_lex_state = 15},
+  [1715] = {.lex_state = 52, .external_lex_state = 15},
+  [1716] = {.lex_state = 52, .external_lex_state = 14},
+  [1717] = {.lex_state = 52, .external_lex_state = 14},
+  [1718] = {.lex_state = 52, .external_lex_state = 14},
+  [1719] = {.lex_state = 52, .external_lex_state = 14},
+  [1720] = {.lex_state = 52, .external_lex_state = 14},
+  [1721] = {.lex_state = 52, .external_lex_state = 14},
+  [1722] = {.lex_state = 52, .external_lex_state = 14},
+  [1723] = {.lex_state = 52, .external_lex_state = 15},
+  [1724] = {.lex_state = 52, .external_lex_state = 14},
+  [1725] = {.lex_state = 52, .external_lex_state = 15},
+  [1726] = {.lex_state = 52, .external_lex_state = 14},
   [1727] = {.lex_state = 0, .external_lex_state = 16},
   [1728] = {.lex_state = 0, .external_lex_state = 16},
-  [1729] = {.lex_state = 33, .external_lex_state = 14},
+  [1729] = {.lex_state = 8, .external_lex_state = 14},
   [1730] = {.lex_state = 0, .external_lex_state = 16},
   [1731] = {.lex_state = 0, .external_lex_state = 16},
-  [1732] = {.lex_state = 54, .external_lex_state = 12},
+  [1732] = {.lex_state = 52, .external_lex_state = 12},
   [1733] = {.lex_state = 0, .external_lex_state = 16},
-  [1734] = {.lex_state = 33, .external_lex_state = 14},
-  [1735] = {.lex_state = 33, .external_lex_state = 14},
+  [1734] = {.lex_state = 8, .external_lex_state = 14},
+  [1735] = {.lex_state = 8, .external_lex_state = 14},
   [1736] = {.lex_state = 0, .external_lex_state = 16},
-  [1737] = {.lex_state = 33, .external_lex_state = 14},
-  [1738] = {.lex_state = 33, .external_lex_state = 14},
+  [1737] = {.lex_state = 8, .external_lex_state = 14},
+  [1738] = {.lex_state = 8, .external_lex_state = 14},
   [1739] = {.lex_state = 0, .external_lex_state = 16},
-  [1740] = {.lex_state = 33, .external_lex_state = 13},
-  [1741] = {.lex_state = 33, .external_lex_state = 13},
+  [1740] = {.lex_state = 8, .external_lex_state = 13},
+  [1741] = {.lex_state = 8, .external_lex_state = 13},
   [1742] = {.lex_state = 0, .external_lex_state = 16},
   [1743] = {.lex_state = 0, .external_lex_state = 16},
-  [1744] = {.lex_state = 33, .external_lex_state = 13},
-  [1745] = {.lex_state = 33, .external_lex_state = 14},
-  [1746] = {.lex_state = 33, .external_lex_state = 13},
+  [1744] = {.lex_state = 8, .external_lex_state = 13},
+  [1745] = {.lex_state = 8, .external_lex_state = 14},
+  [1746] = {.lex_state = 8, .external_lex_state = 13},
   [1747] = {.lex_state = 0, .external_lex_state = 16},
-  [1748] = {.lex_state = 33, .external_lex_state = 13},
-  [1749] = {.lex_state = 33, .external_lex_state = 13},
-  [1750] = {.lex_state = 33, .external_lex_state = 13},
-  [1751] = {.lex_state = 33, .external_lex_state = 14},
-  [1752] = {.lex_state = 54, .external_lex_state = 12},
-  [1753] = {.lex_state = 33, .external_lex_state = 9},
-  [1754] = {.lex_state = 33, .external_lex_state = 14},
-  [1755] = {.lex_state = 33, .external_lex_state = 14},
+  [1748] = {.lex_state = 8, .external_lex_state = 13},
+  [1749] = {.lex_state = 8, .external_lex_state = 13},
+  [1750] = {.lex_state = 8, .external_lex_state = 13},
+  [1751] = {.lex_state = 8, .external_lex_state = 14},
+  [1752] = {.lex_state = 52, .external_lex_state = 12},
+  [1753] = {.lex_state = 8, .external_lex_state = 9},
+  [1754] = {.lex_state = 8, .external_lex_state = 14},
+  [1755] = {.lex_state = 8, .external_lex_state = 14},
   [1756] = {.lex_state = 0, .external_lex_state = 16},
   [1757] = {.lex_state = 0, .external_lex_state = 16},
-  [1758] = {.lex_state = 33, .external_lex_state = 13},
+  [1758] = {.lex_state = 8, .external_lex_state = 13},
   [1759] = {.lex_state = 0, .external_lex_state = 16},
-  [1760] = {.lex_state = 33, .external_lex_state = 14},
+  [1760] = {.lex_state = 8, .external_lex_state = 14},
   [1761] = {.lex_state = 0, .external_lex_state = 16},
-  [1762] = {.lex_state = 33, .external_lex_state = 13},
+  [1762] = {.lex_state = 8, .external_lex_state = 13},
   [1763] = {.lex_state = 0, .external_lex_state = 16},
   [1764] = {.lex_state = 0, .external_lex_state = 16},
   [1765] = {.lex_state = 0, .external_lex_state = 16},
   [1766] = {.lex_state = 0, .external_lex_state = 16},
   [1767] = {.lex_state = 0, .external_lex_state = 16},
-  [1768] = {.lex_state = 54, .external_lex_state = 12},
-  [1769] = {.lex_state = 33, .external_lex_state = 15},
-  [1770] = {.lex_state = 54, .external_lex_state = 12},
-  [1771] = {.lex_state = 54, .external_lex_state = 12},
-  [1772] = {.lex_state = 54, .external_lex_state = 12},
-  [1773] = {.lex_state = 54, .external_lex_state = 12},
-  [1774] = {.lex_state = 54, .external_lex_state = 12},
-  [1775] = {.lex_state = 54, .external_lex_state = 12},
-  [1776] = {.lex_state = 54, .external_lex_state = 12},
-  [1777] = {.lex_state = 54, .external_lex_state = 12},
-  [1778] = {.lex_state = 54, .external_lex_state = 12},
-  [1779] = {.lex_state = 33, .external_lex_state = 13},
-  [1780] = {.lex_state = 54, .external_lex_state = 12},
-  [1781] = {.lex_state = 54, .external_lex_state = 12},
-  [1782] = {.lex_state = 33, .external_lex_state = 15},
-  [1783] = {.lex_state = 54, .external_lex_state = 12},
-  [1784] = {.lex_state = 33, .external_lex_state = 15},
-  [1785] = {.lex_state = 54, .external_lex_state = 12},
-  [1786] = {.lex_state = 33, .external_lex_state = 15},
-  [1787] = {.lex_state = 33, .external_lex_state = 15},
-  [1788] = {.lex_state = 54, .external_lex_state = 12},
-  [1789] = {.lex_state = 54, .external_lex_state = 12},
-  [1790] = {.lex_state = 33, .external_lex_state = 13},
-  [1791] = {.lex_state = 33, .external_lex_state = 15},
-  [1792] = {.lex_state = 54, .external_lex_state = 9},
-  [1793] = {.lex_state = 33, .external_lex_state = 15},
-  [1794] = {.lex_state = 33, .external_lex_state = 15},
-  [1795] = {.lex_state = 33, .external_lex_state = 15},
-  [1796] = {.lex_state = 33, .external_lex_state = 13},
-  [1797] = {.lex_state = 54, .external_lex_state = 12},
-  [1798] = {.lex_state = 33, .external_lex_state = 13},
-  [1799] = {.lex_state = 54, .external_lex_state = 12},
-  [1800] = {.lex_state = 54, .external_lex_state = 12},
-  [1801] = {.lex_state = 54, .external_lex_state = 12},
-  [1802] = {.lex_state = 33, .external_lex_state = 15},
-  [1803] = {.lex_state = 33, .external_lex_state = 13},
-  [1804] = {.lex_state = 54, .external_lex_state = 15},
-  [1805] = {.lex_state = 54, .external_lex_state = 14},
-  [1806] = {.lex_state = 54, .external_lex_state = 12},
-  [1807] = {.lex_state = 54, .external_lex_state = 15},
-  [1808] = {.lex_state = 54, .external_lex_state = 9},
-  [1809] = {.lex_state = 54, .external_lex_state = 15},
-  [1810] = {.lex_state = 54, .external_lex_state = 14},
-  [1811] = {.lex_state = 54, .external_lex_state = 14},
-  [1812] = {.lex_state = 54, .external_lex_state = 2},
-  [1813] = {.lex_state = 34, .external_lex_state = 17},
-  [1814] = {.lex_state = 54, .external_lex_state = 14},
-  [1815] = {.lex_state = 54, .external_lex_state = 15},
-  [1816] = {.lex_state = 54, .external_lex_state = 14},
-  [1817] = {.lex_state = 54, .external_lex_state = 12},
-  [1818] = {.lex_state = 54, .external_lex_state = 15},
-  [1819] = {.lex_state = 54, .external_lex_state = 15},
-  [1820] = {.lex_state = 54, .external_lex_state = 9},
-  [1821] = {.lex_state = 32, .external_lex_state = 14},
-  [1822] = {.lex_state = 54, .external_lex_state = 14},
-  [1823] = {.lex_state = 54, .external_lex_state = 14},
-  [1824] = {.lex_state = 54, .external_lex_state = 13},
-  [1825] = {.lex_state = 54, .external_lex_state = 12},
-  [1826] = {.lex_state = 54, .external_lex_state = 14},
-  [1827] = {.lex_state = 54, .external_lex_state = 15},
-  [1828] = {.lex_state = 54, .external_lex_state = 13},
-  [1829] = {.lex_state = 54, .external_lex_state = 9},
-  [1830] = {.lex_state = 34, .external_lex_state = 17},
-  [1831] = {.lex_state = 54, .external_lex_state = 15},
-  [1832] = {.lex_state = 54, .external_lex_state = 14},
-  [1833] = {.lex_state = 34, .external_lex_state = 17},
-  [1834] = {.lex_state = 54, .external_lex_state = 15},
-  [1835] = {.lex_state = 54, .external_lex_state = 15},
-  [1836] = {.lex_state = 33, .external_lex_state = 13},
-  [1837] = {.lex_state = 54, .external_lex_state = 14},
-  [1838] = {.lex_state = 54, .external_lex_state = 15},
-  [1839] = {.lex_state = 54, .external_lex_state = 15},
-  [1840] = {.lex_state = 32, .external_lex_state = 15},
-  [1841] = {.lex_state = 34, .external_lex_state = 17},
-  [1842] = {.lex_state = 32, .external_lex_state = 12},
-  [1843] = {.lex_state = 54, .external_lex_state = 14},
-  [1844] = {.lex_state = 54, .external_lex_state = 14},
-  [1845] = {.lex_state = 54, .external_lex_state = 12},
-  [1846] = {.lex_state = 54, .external_lex_state = 15},
-  [1847] = {.lex_state = 54, .external_lex_state = 15},
-  [1848] = {.lex_state = 54, .external_lex_state = 15},
-  [1849] = {.lex_state = 54, .external_lex_state = 9},
-  [1850] = {.lex_state = 54, .external_lex_state = 9},
-  [1851] = {.lex_state = 54, .external_lex_state = 15},
-  [1852] = {.lex_state = 54, .external_lex_state = 15},
-  [1853] = {.lex_state = 54, .external_lex_state = 9},
-  [1854] = {.lex_state = 54, .external_lex_state = 15},
-  [1855] = {.lex_state = 54, .external_lex_state = 15},
-  [1856] = {.lex_state = 54, .external_lex_state = 15},
-  [1857] = {.lex_state = 54, .external_lex_state = 15},
-  [1858] = {.lex_state = 54, .external_lex_state = 9},
-  [1859] = {.lex_state = 54, .external_lex_state = 9},
-  [1860] = {.lex_state = 54, .external_lex_state = 15},
-  [1861] = {.lex_state = 54, .external_lex_state = 9},
-  [1862] = {.lex_state = 54, .external_lex_state = 12},
-  [1863] = {.lex_state = 32, .external_lex_state = 14},
-  [1864] = {.lex_state = 54, .external_lex_state = 12},
-  [1865] = {.lex_state = 32, .external_lex_state = 12},
-  [1866] = {.lex_state = 32, .external_lex_state = 15},
-  [1867] = {.lex_state = 54, .external_lex_state = 15},
-  [1868] = {.lex_state = 54, .external_lex_state = 12},
-  [1869] = {.lex_state = 54, .external_lex_state = 14},
-  [1870] = {.lex_state = 54, .external_lex_state = 12},
-  [1871] = {.lex_state = 54, .external_lex_state = 13},
-  [1872] = {.lex_state = 54, .external_lex_state = 9},
-  [1873] = {.lex_state = 54, .external_lex_state = 14},
-  [1874] = {.lex_state = 54, .external_lex_state = 13},
-  [1875] = {.lex_state = 54, .external_lex_state = 15},
-  [1876] = {.lex_state = 54, .external_lex_state = 12},
-  [1877] = {.lex_state = 32, .external_lex_state = 12},
-  [1878] = {.lex_state = 54, .external_lex_state = 13},
-  [1879] = {.lex_state = 54, .external_lex_state = 13},
-  [1880] = {.lex_state = 54, .external_lex_state = 15},
-  [1881] = {.lex_state = 54, .external_lex_state = 13},
-  [1882] = {.lex_state = 54, .external_lex_state = 14},
+  [1768] = {.lex_state = 52, .external_lex_state = 12},
+  [1769] = {.lex_state = 8, .external_lex_state = 15},
+  [1770] = {.lex_state = 52, .external_lex_state = 12},
+  [1771] = {.lex_state = 52, .external_lex_state = 12},
+  [1772] = {.lex_state = 52, .external_lex_state = 12},
+  [1773] = {.lex_state = 52, .external_lex_state = 12},
+  [1774] = {.lex_state = 52, .external_lex_state = 12},
+  [1775] = {.lex_state = 52, .external_lex_state = 12},
+  [1776] = {.lex_state = 52, .external_lex_state = 12},
+  [1777] = {.lex_state = 52, .external_lex_state = 12},
+  [1778] = {.lex_state = 52, .external_lex_state = 12},
+  [1779] = {.lex_state = 8, .external_lex_state = 13},
+  [1780] = {.lex_state = 52, .external_lex_state = 12},
+  [1781] = {.lex_state = 52, .external_lex_state = 12},
+  [1782] = {.lex_state = 8, .external_lex_state = 15},
+  [1783] = {.lex_state = 52, .external_lex_state = 12},
+  [1784] = {.lex_state = 8, .external_lex_state = 15},
+  [1785] = {.lex_state = 52, .external_lex_state = 12},
+  [1786] = {.lex_state = 8, .external_lex_state = 15},
+  [1787] = {.lex_state = 8, .external_lex_state = 15},
+  [1788] = {.lex_state = 52, .external_lex_state = 12},
+  [1789] = {.lex_state = 52, .external_lex_state = 12},
+  [1790] = {.lex_state = 8, .external_lex_state = 13},
+  [1791] = {.lex_state = 8, .external_lex_state = 15},
+  [1792] = {.lex_state = 52, .external_lex_state = 9},
+  [1793] = {.lex_state = 8, .external_lex_state = 15},
+  [1794] = {.lex_state = 8, .external_lex_state = 15},
+  [1795] = {.lex_state = 8, .external_lex_state = 15},
+  [1796] = {.lex_state = 8, .external_lex_state = 13},
+  [1797] = {.lex_state = 52, .external_lex_state = 12},
+  [1798] = {.lex_state = 8, .external_lex_state = 13},
+  [1799] = {.lex_state = 52, .external_lex_state = 12},
+  [1800] = {.lex_state = 52, .external_lex_state = 12},
+  [1801] = {.lex_state = 52, .external_lex_state = 12},
+  [1802] = {.lex_state = 8, .external_lex_state = 15},
+  [1803] = {.lex_state = 8, .external_lex_state = 13},
+  [1804] = {.lex_state = 52, .external_lex_state = 15},
+  [1805] = {.lex_state = 52, .external_lex_state = 14},
+  [1806] = {.lex_state = 52, .external_lex_state = 12},
+  [1807] = {.lex_state = 52, .external_lex_state = 15},
+  [1808] = {.lex_state = 52, .external_lex_state = 9},
+  [1809] = {.lex_state = 52, .external_lex_state = 15},
+  [1810] = {.lex_state = 52, .external_lex_state = 14},
+  [1811] = {.lex_state = 52, .external_lex_state = 14},
+  [1812] = {.lex_state = 52, .external_lex_state = 2},
+  [1813] = {.lex_state = 9, .external_lex_state = 17},
+  [1814] = {.lex_state = 52, .external_lex_state = 14},
+  [1815] = {.lex_state = 52, .external_lex_state = 15},
+  [1816] = {.lex_state = 52, .external_lex_state = 14},
+  [1817] = {.lex_state = 52, .external_lex_state = 12},
+  [1818] = {.lex_state = 52, .external_lex_state = 15},
+  [1819] = {.lex_state = 52, .external_lex_state = 15},
+  [1820] = {.lex_state = 52, .external_lex_state = 9},
+  [1821] = {.lex_state = 7, .external_lex_state = 14},
+  [1822] = {.lex_state = 52, .external_lex_state = 14},
+  [1823] = {.lex_state = 52, .external_lex_state = 14},
+  [1824] = {.lex_state = 52, .external_lex_state = 13},
+  [1825] = {.lex_state = 52, .external_lex_state = 12},
+  [1826] = {.lex_state = 52, .external_lex_state = 14},
+  [1827] = {.lex_state = 52, .external_lex_state = 15},
+  [1828] = {.lex_state = 52, .external_lex_state = 13},
+  [1829] = {.lex_state = 52, .external_lex_state = 9},
+  [1830] = {.lex_state = 9, .external_lex_state = 17},
+  [1831] = {.lex_state = 52, .external_lex_state = 15},
+  [1832] = {.lex_state = 52, .external_lex_state = 14},
+  [1833] = {.lex_state = 9, .external_lex_state = 17},
+  [1834] = {.lex_state = 52, .external_lex_state = 15},
+  [1835] = {.lex_state = 52, .external_lex_state = 15},
+  [1836] = {.lex_state = 8, .external_lex_state = 13},
+  [1837] = {.lex_state = 52, .external_lex_state = 14},
+  [1838] = {.lex_state = 52, .external_lex_state = 15},
+  [1839] = {.lex_state = 52, .external_lex_state = 15},
+  [1840] = {.lex_state = 7, .external_lex_state = 15},
+  [1841] = {.lex_state = 9, .external_lex_state = 17},
+  [1842] = {.lex_state = 7, .external_lex_state = 12},
+  [1843] = {.lex_state = 52, .external_lex_state = 14},
+  [1844] = {.lex_state = 52, .external_lex_state = 14},
+  [1845] = {.lex_state = 52, .external_lex_state = 12},
+  [1846] = {.lex_state = 52, .external_lex_state = 15},
+  [1847] = {.lex_state = 52, .external_lex_state = 15},
+  [1848] = {.lex_state = 52, .external_lex_state = 15},
+  [1849] = {.lex_state = 52, .external_lex_state = 9},
+  [1850] = {.lex_state = 52, .external_lex_state = 9},
+  [1851] = {.lex_state = 52, .external_lex_state = 15},
+  [1852] = {.lex_state = 52, .external_lex_state = 15},
+  [1853] = {.lex_state = 52, .external_lex_state = 9},
+  [1854] = {.lex_state = 52, .external_lex_state = 15},
+  [1855] = {.lex_state = 52, .external_lex_state = 15},
+  [1856] = {.lex_state = 52, .external_lex_state = 15},
+  [1857] = {.lex_state = 52, .external_lex_state = 15},
+  [1858] = {.lex_state = 52, .external_lex_state = 9},
+  [1859] = {.lex_state = 52, .external_lex_state = 9},
+  [1860] = {.lex_state = 52, .external_lex_state = 15},
+  [1861] = {.lex_state = 52, .external_lex_state = 9},
+  [1862] = {.lex_state = 52, .external_lex_state = 12},
+  [1863] = {.lex_state = 7, .external_lex_state = 14},
+  [1864] = {.lex_state = 52, .external_lex_state = 12},
+  [1865] = {.lex_state = 7, .external_lex_state = 12},
+  [1866] = {.lex_state = 7, .external_lex_state = 15},
+  [1867] = {.lex_state = 52, .external_lex_state = 15},
+  [1868] = {.lex_state = 52, .external_lex_state = 12},
+  [1869] = {.lex_state = 52, .external_lex_state = 14},
+  [1870] = {.lex_state = 52, .external_lex_state = 12},
+  [1871] = {.lex_state = 52, .external_lex_state = 13},
+  [1872] = {.lex_state = 52, .external_lex_state = 9},
+  [1873] = {.lex_state = 52, .external_lex_state = 14},
+  [1874] = {.lex_state = 52, .external_lex_state = 13},
+  [1875] = {.lex_state = 52, .external_lex_state = 15},
+  [1876] = {.lex_state = 52, .external_lex_state = 12},
+  [1877] = {.lex_state = 7, .external_lex_state = 12},
+  [1878] = {.lex_state = 52, .external_lex_state = 13},
+  [1879] = {.lex_state = 52, .external_lex_state = 13},
+  [1880] = {.lex_state = 52, .external_lex_state = 15},
+  [1881] = {.lex_state = 52, .external_lex_state = 13},
+  [1882] = {.lex_state = 52, .external_lex_state = 14},
   [1883] = {.lex_state = 0, .external_lex_state = 16},
-  [1884] = {.lex_state = 54, .external_lex_state = 13},
-  [1885] = {.lex_state = 54, .external_lex_state = 13},
-  [1886] = {.lex_state = 54, .external_lex_state = 12},
-  [1887] = {.lex_state = 54, .external_lex_state = 8},
-  [1888] = {.lex_state = 32, .external_lex_state = 14},
-  [1889] = {.lex_state = 32, .external_lex_state = 15},
-  [1890] = {.lex_state = 54, .external_lex_state = 12},
-  [1891] = {.lex_state = 54, .external_lex_state = 12},
-  [1892] = {.lex_state = 54, .external_lex_state = 12},
-  [1893] = {.lex_state = 54, .external_lex_state = 15},
-  [1894] = {.lex_state = 54, .external_lex_state = 14},
-  [1895] = {.lex_state = 54, .external_lex_state = 6},
-  [1896] = {.lex_state = 54, .external_lex_state = 12},
-  [1897] = {.lex_state = 54, .external_lex_state = 15},
-  [1898] = {.lex_state = 54, .external_lex_state = 7},
-  [1899] = {.lex_state = 54, .external_lex_state = 9},
-  [1900] = {.lex_state = 32, .external_lex_state = 15},
-  [1901] = {.lex_state = 32, .external_lex_state = 12},
-  [1902] = {.lex_state = 54, .external_lex_state = 14},
-  [1903] = {.lex_state = 54, .external_lex_state = 15},
-  [1904] = {.lex_state = 54, .external_lex_state = 14},
-  [1905] = {.lex_state = 54, .external_lex_state = 12},
-  [1906] = {.lex_state = 32, .external_lex_state = 13},
-  [1907] = {.lex_state = 54, .external_lex_state = 13},
-  [1908] = {.lex_state = 54, .external_lex_state = 13},
-  [1909] = {.lex_state = 54, .external_lex_state = 12},
+  [1884] = {.lex_state = 52, .external_lex_state = 13},
+  [1885] = {.lex_state = 52, .external_lex_state = 13},
+  [1886] = {.lex_state = 52, .external_lex_state = 12},
+  [1887] = {.lex_state = 52, .external_lex_state = 8},
+  [1888] = {.lex_state = 7, .external_lex_state = 14},
+  [1889] = {.lex_state = 7, .external_lex_state = 15},
+  [1890] = {.lex_state = 52, .external_lex_state = 12},
+  [1891] = {.lex_state = 52, .external_lex_state = 12},
+  [1892] = {.lex_state = 52, .external_lex_state = 12},
+  [1893] = {.lex_state = 52, .external_lex_state = 15},
+  [1894] = {.lex_state = 52, .external_lex_state = 14},
+  [1895] = {.lex_state = 52, .external_lex_state = 6},
+  [1896] = {.lex_state = 52, .external_lex_state = 12},
+  [1897] = {.lex_state = 52, .external_lex_state = 15},
+  [1898] = {.lex_state = 52, .external_lex_state = 7},
+  [1899] = {.lex_state = 52, .external_lex_state = 9},
+  [1900] = {.lex_state = 7, .external_lex_state = 15},
+  [1901] = {.lex_state = 7, .external_lex_state = 12},
+  [1902] = {.lex_state = 52, .external_lex_state = 14},
+  [1903] = {.lex_state = 52, .external_lex_state = 15},
+  [1904] = {.lex_state = 52, .external_lex_state = 14},
+  [1905] = {.lex_state = 52, .external_lex_state = 12},
+  [1906] = {.lex_state = 7, .external_lex_state = 13},
+  [1907] = {.lex_state = 52, .external_lex_state = 13},
+  [1908] = {.lex_state = 52, .external_lex_state = 13},
+  [1909] = {.lex_state = 52, .external_lex_state = 12},
   [1910] = {.lex_state = 0, .external_lex_state = 16},
-  [1911] = {.lex_state = 54, .external_lex_state = 15},
-  [1912] = {.lex_state = 54, .external_lex_state = 15},
-  [1913] = {.lex_state = 32, .external_lex_state = 14},
-  [1914] = {.lex_state = 32, .external_lex_state = 9},
+  [1911] = {.lex_state = 52, .external_lex_state = 15},
+  [1912] = {.lex_state = 52, .external_lex_state = 15},
+  [1913] = {.lex_state = 7, .external_lex_state = 14},
+  [1914] = {.lex_state = 7, .external_lex_state = 9},
   [1915] = {.lex_state = 0, .external_lex_state = 16},
   [1916] = {.lex_state = 0, .external_lex_state = 16},
-  [1917] = {.lex_state = 54, .external_lex_state = 13},
+  [1917] = {.lex_state = 52, .external_lex_state = 13},
   [1918] = {.lex_state = 0, .external_lex_state = 16},
   [1919] = {.lex_state = 0, .external_lex_state = 16},
-  [1920] = {.lex_state = 54, .external_lex_state = 14},
-  [1921] = {.lex_state = 54, .external_lex_state = 12},
-  [1922] = {.lex_state = 54, .external_lex_state = 14},
-  [1923] = {.lex_state = 54, .external_lex_state = 13},
-  [1924] = {.lex_state = 54, .external_lex_state = 15},
-  [1925] = {.lex_state = 33, .external_lex_state = 15},
-  [1926] = {.lex_state = 54, .external_lex_state = 14},
-  [1927] = {.lex_state = 33, .external_lex_state = 13},
-  [1928] = {.lex_state = 33, .external_lex_state = 15},
-  [1929] = {.lex_state = 33, .external_lex_state = 14},
-  [1930] = {.lex_state = 54, .external_lex_state = 12},
+  [1920] = {.lex_state = 52, .external_lex_state = 14},
+  [1921] = {.lex_state = 52, .external_lex_state = 12},
+  [1922] = {.lex_state = 52, .external_lex_state = 14},
+  [1923] = {.lex_state = 52, .external_lex_state = 13},
+  [1924] = {.lex_state = 52, .external_lex_state = 15},
+  [1925] = {.lex_state = 8, .external_lex_state = 15},
+  [1926] = {.lex_state = 52, .external_lex_state = 14},
+  [1927] = {.lex_state = 8, .external_lex_state = 13},
+  [1928] = {.lex_state = 8, .external_lex_state = 15},
+  [1929] = {.lex_state = 8, .external_lex_state = 14},
+  [1930] = {.lex_state = 52, .external_lex_state = 12},
   [1931] = {.lex_state = 0, .external_lex_state = 16},
-  [1932] = {.lex_state = 54, .external_lex_state = 12},
+  [1932] = {.lex_state = 52, .external_lex_state = 12},
   [1933] = {.lex_state = 0, .external_lex_state = 16},
-  [1934] = {.lex_state = 33, .external_lex_state = 14},
-  [1935] = {.lex_state = 54, .external_lex_state = 13},
-  [1936] = {.lex_state = 54, .external_lex_state = 9},
-  [1937] = {.lex_state = 33, .external_lex_state = 14},
-  [1938] = {.lex_state = 54, .external_lex_state = 13},
-  [1939] = {.lex_state = 33, .external_lex_state = 15},
-  [1940] = {.lex_state = 54, .external_lex_state = 14},
-  [1941] = {.lex_state = 54, .external_lex_state = 15},
-  [1942] = {.lex_state = 54, .external_lex_state = 15},
-  [1943] = {.lex_state = 54, .external_lex_state = 15},
-  [1944] = {.lex_state = 54, .external_lex_state = 14},
-  [1945] = {.lex_state = 54, .external_lex_state = 14},
-  [1946] = {.lex_state = 54, .external_lex_state = 14},
-  [1947] = {.lex_state = 54, .external_lex_state = 15},
-  [1948] = {.lex_state = 33, .external_lex_state = 9},
-  [1949] = {.lex_state = 32, .external_lex_state = 14},
-  [1950] = {.lex_state = 54, .external_lex_state = 13},
-  [1951] = {.lex_state = 54, .external_lex_state = 12},
-  [1952] = {.lex_state = 54, .external_lex_state = 14},
-  [1953] = {.lex_state = 54, .external_lex_state = 12},
-  [1954] = {.lex_state = 54, .external_lex_state = 12},
-  [1955] = {.lex_state = 54, .external_lex_state = 13},
-  [1956] = {.lex_state = 33, .external_lex_state = 9},
-  [1957] = {.lex_state = 33, .external_lex_state = 14},
-  [1958] = {.lex_state = 54, .external_lex_state = 13},
-  [1959] = {.lex_state = 33, .external_lex_state = 9},
-  [1960] = {.lex_state = 54, .external_lex_state = 9},
-  [1961] = {.lex_state = 54, .external_lex_state = 13},
-  [1962] = {.lex_state = 54, .external_lex_state = 14},
-  [1963] = {.lex_state = 33, .external_lex_state = 14},
-  [1964] = {.lex_state = 33, .external_lex_state = 14},
-  [1965] = {.lex_state = 33, .external_lex_state = 14},
-  [1966] = {.lex_state = 54, .external_lex_state = 14},
-  [1967] = {.lex_state = 54, .external_lex_state = 15},
-  [1968] = {.lex_state = 33, .external_lex_state = 9},
-  [1969] = {.lex_state = 54, .external_lex_state = 13},
-  [1970] = {.lex_state = 32, .external_lex_state = 15},
-  [1971] = {.lex_state = 33, .external_lex_state = 9},
-  [1972] = {.lex_state = 32, .external_lex_state = 12},
-  [1973] = {.lex_state = 54, .external_lex_state = 14},
-  [1974] = {.lex_state = 54, .external_lex_state = 14},
-  [1975] = {.lex_state = 54, .external_lex_state = 14},
-  [1976] = {.lex_state = 54, .external_lex_state = 15},
-  [1977] = {.lex_state = 54, .external_lex_state = 12},
+  [1934] = {.lex_state = 8, .external_lex_state = 14},
+  [1935] = {.lex_state = 52, .external_lex_state = 13},
+  [1936] = {.lex_state = 52, .external_lex_state = 9},
+  [1937] = {.lex_state = 8, .external_lex_state = 14},
+  [1938] = {.lex_state = 52, .external_lex_state = 13},
+  [1939] = {.lex_state = 8, .external_lex_state = 15},
+  [1940] = {.lex_state = 52, .external_lex_state = 14},
+  [1941] = {.lex_state = 52, .external_lex_state = 15},
+  [1942] = {.lex_state = 52, .external_lex_state = 15},
+  [1943] = {.lex_state = 52, .external_lex_state = 15},
+  [1944] = {.lex_state = 52, .external_lex_state = 14},
+  [1945] = {.lex_state = 52, .external_lex_state = 14},
+  [1946] = {.lex_state = 52, .external_lex_state = 14},
+  [1947] = {.lex_state = 52, .external_lex_state = 15},
+  [1948] = {.lex_state = 8, .external_lex_state = 9},
+  [1949] = {.lex_state = 7, .external_lex_state = 14},
+  [1950] = {.lex_state = 52, .external_lex_state = 13},
+  [1951] = {.lex_state = 52, .external_lex_state = 12},
+  [1952] = {.lex_state = 52, .external_lex_state = 14},
+  [1953] = {.lex_state = 52, .external_lex_state = 12},
+  [1954] = {.lex_state = 52, .external_lex_state = 12},
+  [1955] = {.lex_state = 52, .external_lex_state = 13},
+  [1956] = {.lex_state = 8, .external_lex_state = 9},
+  [1957] = {.lex_state = 8, .external_lex_state = 14},
+  [1958] = {.lex_state = 52, .external_lex_state = 13},
+  [1959] = {.lex_state = 8, .external_lex_state = 9},
+  [1960] = {.lex_state = 52, .external_lex_state = 9},
+  [1961] = {.lex_state = 52, .external_lex_state = 13},
+  [1962] = {.lex_state = 52, .external_lex_state = 14},
+  [1963] = {.lex_state = 8, .external_lex_state = 14},
+  [1964] = {.lex_state = 8, .external_lex_state = 14},
+  [1965] = {.lex_state = 8, .external_lex_state = 14},
+  [1966] = {.lex_state = 52, .external_lex_state = 14},
+  [1967] = {.lex_state = 52, .external_lex_state = 15},
+  [1968] = {.lex_state = 8, .external_lex_state = 9},
+  [1969] = {.lex_state = 52, .external_lex_state = 13},
+  [1970] = {.lex_state = 7, .external_lex_state = 15},
+  [1971] = {.lex_state = 8, .external_lex_state = 9},
+  [1972] = {.lex_state = 7, .external_lex_state = 12},
+  [1973] = {.lex_state = 52, .external_lex_state = 14},
+  [1974] = {.lex_state = 52, .external_lex_state = 14},
+  [1975] = {.lex_state = 52, .external_lex_state = 14},
+  [1976] = {.lex_state = 52, .external_lex_state = 15},
+  [1977] = {.lex_state = 52, .external_lex_state = 12},
   [1978] = {.lex_state = 0, .external_lex_state = 16},
-  [1979] = {.lex_state = 54, .external_lex_state = 15},
-  [1980] = {.lex_state = 54, .external_lex_state = 15},
-  [1981] = {.lex_state = 54, .external_lex_state = 12},
-  [1982] = {.lex_state = 54, .external_lex_state = 12},
-  [1983] = {.lex_state = 54, .external_lex_state = 14},
-  [1984] = {.lex_state = 54, .external_lex_state = 9},
-  [1985] = {.lex_state = 54, .external_lex_state = 14},
-  [1986] = {.lex_state = 54, .external_lex_state = 15},
-  [1987] = {.lex_state = 33, .external_lex_state = 14},
-  [1988] = {.lex_state = 33, .external_lex_state = 14},
-  [1989] = {.lex_state = 54, .external_lex_state = 15},
-  [1990] = {.lex_state = 54, .external_lex_state = 14},
-  [1991] = {.lex_state = 32, .external_lex_state = 9},
-  [1992] = {.lex_state = 33, .external_lex_state = 15},
-  [1993] = {.lex_state = 54, .external_lex_state = 13},
-  [1994] = {.lex_state = 54, .external_lex_state = 13},
-  [1995] = {.lex_state = 33, .external_lex_state = 9},
-  [1996] = {.lex_state = 54, .external_lex_state = 12},
-  [1997] = {.lex_state = 33, .external_lex_state = 9},
-  [1998] = {.lex_state = 54, .external_lex_state = 12},
-  [1999] = {.lex_state = 54, .external_lex_state = 15},
+  [1979] = {.lex_state = 52, .external_lex_state = 15},
+  [1980] = {.lex_state = 52, .external_lex_state = 15},
+  [1981] = {.lex_state = 52, .external_lex_state = 12},
+  [1982] = {.lex_state = 52, .external_lex_state = 12},
+  [1983] = {.lex_state = 52, .external_lex_state = 14},
+  [1984] = {.lex_state = 52, .external_lex_state = 9},
+  [1985] = {.lex_state = 52, .external_lex_state = 14},
+  [1986] = {.lex_state = 52, .external_lex_state = 15},
+  [1987] = {.lex_state = 8, .external_lex_state = 14},
+  [1988] = {.lex_state = 8, .external_lex_state = 14},
+  [1989] = {.lex_state = 52, .external_lex_state = 15},
+  [1990] = {.lex_state = 52, .external_lex_state = 14},
+  [1991] = {.lex_state = 7, .external_lex_state = 9},
+  [1992] = {.lex_state = 8, .external_lex_state = 15},
+  [1993] = {.lex_state = 52, .external_lex_state = 13},
+  [1994] = {.lex_state = 52, .external_lex_state = 13},
+  [1995] = {.lex_state = 8, .external_lex_state = 9},
+  [1996] = {.lex_state = 52, .external_lex_state = 12},
+  [1997] = {.lex_state = 8, .external_lex_state = 9},
+  [1998] = {.lex_state = 52, .external_lex_state = 12},
+  [1999] = {.lex_state = 52, .external_lex_state = 15},
   [2000] = {.lex_state = 0, .external_lex_state = 16},
-  [2001] = {.lex_state = 33, .external_lex_state = 9},
-  [2002] = {.lex_state = 32, .external_lex_state = 9},
-  [2003] = {.lex_state = 33, .external_lex_state = 13},
-  [2004] = {.lex_state = 33, .external_lex_state = 9},
-  [2005] = {.lex_state = 54, .external_lex_state = 15},
-  [2006] = {.lex_state = 54, .external_lex_state = 12},
-  [2007] = {.lex_state = 33, .external_lex_state = 14},
-  [2008] = {.lex_state = 54, .external_lex_state = 13},
-  [2009] = {.lex_state = 54, .external_lex_state = 14},
-  [2010] = {.lex_state = 54, .external_lex_state = 13},
-  [2011] = {.lex_state = 54, .external_lex_state = 14},
-  [2012] = {.lex_state = 54, .external_lex_state = 12},
-  [2013] = {.lex_state = 54, .external_lex_state = 13},
-  [2014] = {.lex_state = 54, .external_lex_state = 12},
-  [2015] = {.lex_state = 54, .external_lex_state = 15},
-  [2016] = {.lex_state = 33, .external_lex_state = 9},
-  [2017] = {.lex_state = 33, .external_lex_state = 13},
-  [2018] = {.lex_state = 54, .external_lex_state = 12},
-  [2019] = {.lex_state = 54, .external_lex_state = 13},
-  [2020] = {.lex_state = 54, .external_lex_state = 13},
-  [2021] = {.lex_state = 54, .external_lex_state = 13},
-  [2022] = {.lex_state = 54, .external_lex_state = 13},
-  [2023] = {.lex_state = 33, .external_lex_state = 13},
-  [2024] = {.lex_state = 54, .external_lex_state = 12},
-  [2025] = {.lex_state = 54, .external_lex_state = 13},
-  [2026] = {.lex_state = 54, .external_lex_state = 12},
-  [2027] = {.lex_state = 54, .external_lex_state = 15},
-  [2028] = {.lex_state = 54, .external_lex_state = 15},
-  [2029] = {.lex_state = 54, .external_lex_state = 9},
-  [2030] = {.lex_state = 54, .external_lex_state = 13},
-  [2031] = {.lex_state = 54, .external_lex_state = 13},
-  [2032] = {.lex_state = 54, .external_lex_state = 12},
-  [2033] = {.lex_state = 54, .external_lex_state = 12},
-  [2034] = {.lex_state = 54, .external_lex_state = 12},
-  [2035] = {.lex_state = 54, .external_lex_state = 14},
-  [2036] = {.lex_state = 54, .external_lex_state = 12},
-  [2037] = {.lex_state = 54, .external_lex_state = 13},
-  [2038] = {.lex_state = 33, .external_lex_state = 15},
-  [2039] = {.lex_state = 33, .external_lex_state = 15},
-  [2040] = {.lex_state = 54, .external_lex_state = 12},
+  [2001] = {.lex_state = 8, .external_lex_state = 9},
+  [2002] = {.lex_state = 7, .external_lex_state = 9},
+  [2003] = {.lex_state = 8, .external_lex_state = 13},
+  [2004] = {.lex_state = 8, .external_lex_state = 9},
+  [2005] = {.lex_state = 52, .external_lex_state = 15},
+  [2006] = {.lex_state = 52, .external_lex_state = 12},
+  [2007] = {.lex_state = 8, .external_lex_state = 14},
+  [2008] = {.lex_state = 52, .external_lex_state = 13},
+  [2009] = {.lex_state = 52, .external_lex_state = 14},
+  [2010] = {.lex_state = 52, .external_lex_state = 13},
+  [2011] = {.lex_state = 52, .external_lex_state = 14},
+  [2012] = {.lex_state = 52, .external_lex_state = 12},
+  [2013] = {.lex_state = 52, .external_lex_state = 13},
+  [2014] = {.lex_state = 52, .external_lex_state = 12},
+  [2015] = {.lex_state = 52, .external_lex_state = 15},
+  [2016] = {.lex_state = 8, .external_lex_state = 9},
+  [2017] = {.lex_state = 8, .external_lex_state = 13},
+  [2018] = {.lex_state = 52, .external_lex_state = 12},
+  [2019] = {.lex_state = 52, .external_lex_state = 13},
+  [2020] = {.lex_state = 52, .external_lex_state = 13},
+  [2021] = {.lex_state = 52, .external_lex_state = 13},
+  [2022] = {.lex_state = 52, .external_lex_state = 13},
+  [2023] = {.lex_state = 8, .external_lex_state = 13},
+  [2024] = {.lex_state = 52, .external_lex_state = 12},
+  [2025] = {.lex_state = 52, .external_lex_state = 13},
+  [2026] = {.lex_state = 52, .external_lex_state = 12},
+  [2027] = {.lex_state = 52, .external_lex_state = 15},
+  [2028] = {.lex_state = 52, .external_lex_state = 15},
+  [2029] = {.lex_state = 52, .external_lex_state = 9},
+  [2030] = {.lex_state = 52, .external_lex_state = 13},
+  [2031] = {.lex_state = 52, .external_lex_state = 13},
+  [2032] = {.lex_state = 52, .external_lex_state = 12},
+  [2033] = {.lex_state = 52, .external_lex_state = 12},
+  [2034] = {.lex_state = 52, .external_lex_state = 12},
+  [2035] = {.lex_state = 52, .external_lex_state = 14},
+  [2036] = {.lex_state = 52, .external_lex_state = 12},
+  [2037] = {.lex_state = 52, .external_lex_state = 13},
+  [2038] = {.lex_state = 8, .external_lex_state = 15},
+  [2039] = {.lex_state = 8, .external_lex_state = 15},
+  [2040] = {.lex_state = 52, .external_lex_state = 12},
   [2041] = {.lex_state = 3, .external_lex_state = 12},
-  [2042] = {.lex_state = 54, .external_lex_state = 12},
-  [2043] = {.lex_state = 54, .external_lex_state = 12},
-  [2044] = {.lex_state = 33, .external_lex_state = 15},
-  [2045] = {.lex_state = 54, .external_lex_state = 13},
-  [2046] = {.lex_state = 54, .external_lex_state = 13},
-  [2047] = {.lex_state = 54, .external_lex_state = 14},
-  [2048] = {.lex_state = 54, .external_lex_state = 15},
+  [2042] = {.lex_state = 52, .external_lex_state = 12},
+  [2043] = {.lex_state = 52, .external_lex_state = 12},
+  [2044] = {.lex_state = 8, .external_lex_state = 15},
+  [2045] = {.lex_state = 52, .external_lex_state = 13},
+  [2046] = {.lex_state = 52, .external_lex_state = 13},
+  [2047] = {.lex_state = 52, .external_lex_state = 14},
+  [2048] = {.lex_state = 52, .external_lex_state = 15},
   [2049] = {.lex_state = 3, .external_lex_state = 12},
-  [2050] = {.lex_state = 54, .external_lex_state = 9},
-  [2051] = {.lex_state = 33, .external_lex_state = 13},
-  [2052] = {.lex_state = 33, .external_lex_state = 13},
-  [2053] = {.lex_state = 54, .external_lex_state = 12},
-  [2054] = {.lex_state = 54, .external_lex_state = 13},
-  [2055] = {.lex_state = 54, .external_lex_state = 12},
-  [2056] = {.lex_state = 54, .external_lex_state = 13},
-  [2057] = {.lex_state = 54, .external_lex_state = 13},
-  [2058] = {.lex_state = 54, .external_lex_state = 12},
-  [2059] = {.lex_state = 54, .external_lex_state = 12},
-  [2060] = {.lex_state = 54, .external_lex_state = 13},
-  [2061] = {.lex_state = 33, .external_lex_state = 15},
-  [2062] = {.lex_state = 33, .external_lex_state = 15},
-  [2063] = {.lex_state = 33, .external_lex_state = 13},
-  [2064] = {.lex_state = 54, .external_lex_state = 13},
-  [2065] = {.lex_state = 54, .external_lex_state = 12},
-  [2066] = {.lex_state = 54, .external_lex_state = 13},
-  [2067] = {.lex_state = 54, .external_lex_state = 13},
-  [2068] = {.lex_state = 33, .external_lex_state = 13},
-  [2069] = {.lex_state = 33, .external_lex_state = 15},
-  [2070] = {.lex_state = 54, .external_lex_state = 12},
-  [2071] = {.lex_state = 54, .external_lex_state = 13},
-  [2072] = {.lex_state = 54, .external_lex_state = 13},
-  [2073] = {.lex_state = 33, .external_lex_state = 15},
-  [2074] = {.lex_state = 54, .external_lex_state = 9},
-  [2075] = {.lex_state = 54, .external_lex_state = 14},
-  [2076] = {.lex_state = 54, .external_lex_state = 14},
-  [2077] = {.lex_state = 33, .external_lex_state = 15},
-  [2078] = {.lex_state = 33, .external_lex_state = 14},
-  [2079] = {.lex_state = 54, .external_lex_state = 13},
-  [2080] = {.lex_state = 33, .external_lex_state = 9},
-  [2081] = {.lex_state = 54, .external_lex_state = 9},
-  [2082] = {.lex_state = 54, .external_lex_state = 13},
-  [2083] = {.lex_state = 54, .external_lex_state = 13},
-  [2084] = {.lex_state = 54, .external_lex_state = 13},
-  [2085] = {.lex_state = 54, .external_lex_state = 12},
-  [2086] = {.lex_state = 54, .external_lex_state = 9},
-  [2087] = {.lex_state = 54, .external_lex_state = 9},
-  [2088] = {.lex_state = 54, .external_lex_state = 13},
-  [2089] = {.lex_state = 54, .external_lex_state = 13},
-  [2090] = {.lex_state = 54, .external_lex_state = 13},
-  [2091] = {.lex_state = 54, .external_lex_state = 13},
-  [2092] = {.lex_state = 33, .external_lex_state = 13},
-  [2093] = {.lex_state = 54, .external_lex_state = 13},
-  [2094] = {.lex_state = 54, .external_lex_state = 13},
-  [2095] = {.lex_state = 54, .external_lex_state = 13},
-  [2096] = {.lex_state = 54, .external_lex_state = 13},
-  [2097] = {.lex_state = 33, .external_lex_state = 15},
-  [2098] = {.lex_state = 54, .external_lex_state = 12},
-  [2099] = {.lex_state = 32, .external_lex_state = 9},
-  [2100] = {.lex_state = 54, .external_lex_state = 13},
-  [2101] = {.lex_state = 54, .external_lex_state = 12},
-  [2102] = {.lex_state = 54, .external_lex_state = 9},
-  [2103] = {.lex_state = 54, .external_lex_state = 13},
-  [2104] = {.lex_state = 54, .external_lex_state = 13},
-  [2105] = {.lex_state = 54, .external_lex_state = 13},
-  [2106] = {.lex_state = 54, .external_lex_state = 15},
-  [2107] = {.lex_state = 54, .external_lex_state = 13},
-  [2108] = {.lex_state = 54, .external_lex_state = 13},
-  [2109] = {.lex_state = 54, .external_lex_state = 12},
-  [2110] = {.lex_state = 54, .external_lex_state = 14},
-  [2111] = {.lex_state = 54, .external_lex_state = 14},
-  [2112] = {.lex_state = 54, .external_lex_state = 14},
-  [2113] = {.lex_state = 54, .external_lex_state = 13},
-  [2114] = {.lex_state = 54, .external_lex_state = 13},
-  [2115] = {.lex_state = 54, .external_lex_state = 15},
+  [2050] = {.lex_state = 52, .external_lex_state = 9},
+  [2051] = {.lex_state = 8, .external_lex_state = 13},
+  [2052] = {.lex_state = 8, .external_lex_state = 13},
+  [2053] = {.lex_state = 52, .external_lex_state = 12},
+  [2054] = {.lex_state = 52, .external_lex_state = 13},
+  [2055] = {.lex_state = 52, .external_lex_state = 12},
+  [2056] = {.lex_state = 52, .external_lex_state = 13},
+  [2057] = {.lex_state = 52, .external_lex_state = 13},
+  [2058] = {.lex_state = 52, .external_lex_state = 12},
+  [2059] = {.lex_state = 52, .external_lex_state = 12},
+  [2060] = {.lex_state = 52, .external_lex_state = 13},
+  [2061] = {.lex_state = 8, .external_lex_state = 15},
+  [2062] = {.lex_state = 8, .external_lex_state = 15},
+  [2063] = {.lex_state = 8, .external_lex_state = 13},
+  [2064] = {.lex_state = 52, .external_lex_state = 13},
+  [2065] = {.lex_state = 52, .external_lex_state = 12},
+  [2066] = {.lex_state = 52, .external_lex_state = 13},
+  [2067] = {.lex_state = 52, .external_lex_state = 13},
+  [2068] = {.lex_state = 8, .external_lex_state = 13},
+  [2069] = {.lex_state = 8, .external_lex_state = 15},
+  [2070] = {.lex_state = 52, .external_lex_state = 12},
+  [2071] = {.lex_state = 52, .external_lex_state = 13},
+  [2072] = {.lex_state = 52, .external_lex_state = 13},
+  [2073] = {.lex_state = 8, .external_lex_state = 15},
+  [2074] = {.lex_state = 52, .external_lex_state = 9},
+  [2075] = {.lex_state = 52, .external_lex_state = 14},
+  [2076] = {.lex_state = 52, .external_lex_state = 14},
+  [2077] = {.lex_state = 8, .external_lex_state = 15},
+  [2078] = {.lex_state = 8, .external_lex_state = 14},
+  [2079] = {.lex_state = 52, .external_lex_state = 13},
+  [2080] = {.lex_state = 8, .external_lex_state = 9},
+  [2081] = {.lex_state = 52, .external_lex_state = 9},
+  [2082] = {.lex_state = 52, .external_lex_state = 13},
+  [2083] = {.lex_state = 52, .external_lex_state = 13},
+  [2084] = {.lex_state = 52, .external_lex_state = 13},
+  [2085] = {.lex_state = 52, .external_lex_state = 12},
+  [2086] = {.lex_state = 52, .external_lex_state = 9},
+  [2087] = {.lex_state = 52, .external_lex_state = 9},
+  [2088] = {.lex_state = 52, .external_lex_state = 13},
+  [2089] = {.lex_state = 52, .external_lex_state = 13},
+  [2090] = {.lex_state = 52, .external_lex_state = 13},
+  [2091] = {.lex_state = 52, .external_lex_state = 13},
+  [2092] = {.lex_state = 8, .external_lex_state = 13},
+  [2093] = {.lex_state = 52, .external_lex_state = 13},
+  [2094] = {.lex_state = 52, .external_lex_state = 13},
+  [2095] = {.lex_state = 52, .external_lex_state = 13},
+  [2096] = {.lex_state = 52, .external_lex_state = 13},
+  [2097] = {.lex_state = 8, .external_lex_state = 15},
+  [2098] = {.lex_state = 52, .external_lex_state = 12},
+  [2099] = {.lex_state = 7, .external_lex_state = 9},
+  [2100] = {.lex_state = 52, .external_lex_state = 13},
+  [2101] = {.lex_state = 52, .external_lex_state = 12},
+  [2102] = {.lex_state = 52, .external_lex_state = 9},
+  [2103] = {.lex_state = 52, .external_lex_state = 13},
+  [2104] = {.lex_state = 52, .external_lex_state = 13},
+  [2105] = {.lex_state = 52, .external_lex_state = 13},
+  [2106] = {.lex_state = 52, .external_lex_state = 15},
+  [2107] = {.lex_state = 52, .external_lex_state = 13},
+  [2108] = {.lex_state = 52, .external_lex_state = 13},
+  [2109] = {.lex_state = 52, .external_lex_state = 12},
+  [2110] = {.lex_state = 52, .external_lex_state = 14},
+  [2111] = {.lex_state = 52, .external_lex_state = 14},
+  [2112] = {.lex_state = 52, .external_lex_state = 14},
+  [2113] = {.lex_state = 52, .external_lex_state = 13},
+  [2114] = {.lex_state = 52, .external_lex_state = 13},
+  [2115] = {.lex_state = 52, .external_lex_state = 15},
   [2116] = {.lex_state = 3, .external_lex_state = 12},
-  [2117] = {.lex_state = 54, .external_lex_state = 13},
-  [2118] = {.lex_state = 54, .external_lex_state = 14},
-  [2119] = {.lex_state = 54, .external_lex_state = 13},
-  [2120] = {.lex_state = 54, .external_lex_state = 13},
-  [2121] = {.lex_state = 54, .external_lex_state = 13},
-  [2122] = {.lex_state = 54, .external_lex_state = 15},
-  [2123] = {.lex_state = 54, .external_lex_state = 13},
-  [2124] = {.lex_state = 54, .external_lex_state = 13},
-  [2125] = {.lex_state = 54, .external_lex_state = 13},
-  [2126] = {.lex_state = 54, .external_lex_state = 13},
-  [2127] = {.lex_state = 54, .external_lex_state = 12},
-  [2128] = {.lex_state = 54, .external_lex_state = 13},
-  [2129] = {.lex_state = 54, .external_lex_state = 15},
-  [2130] = {.lex_state = 54, .external_lex_state = 12},
-  [2131] = {.lex_state = 54, .external_lex_state = 14},
-  [2132] = {.lex_state = 54, .external_lex_state = 13},
-  [2133] = {.lex_state = 54, .external_lex_state = 15},
-  [2134] = {.lex_state = 54, .external_lex_state = 13},
-  [2135] = {.lex_state = 54, .external_lex_state = 15},
-  [2136] = {.lex_state = 33, .external_lex_state = 15},
-  [2137] = {.lex_state = 33, .external_lex_state = 13},
-  [2138] = {.lex_state = 54, .external_lex_state = 13},
-  [2139] = {.lex_state = 54, .external_lex_state = 18},
-  [2140] = {.lex_state = 33, .external_lex_state = 13},
-  [2141] = {.lex_state = 54, .external_lex_state = 9},
-  [2142] = {.lex_state = 54, .external_lex_state = 12},
-  [2143] = {.lex_state = 54, .external_lex_state = 12},
-  [2144] = {.lex_state = 54, .external_lex_state = 14},
-  [2145] = {.lex_state = 54, .external_lex_state = 14},
-  [2146] = {.lex_state = 54, .external_lex_state = 14},
-  [2147] = {.lex_state = 54, .external_lex_state = 14},
-  [2148] = {.lex_state = 54, .external_lex_state = 14},
-  [2149] = {.lex_state = 54, .external_lex_state = 9},
-  [2150] = {.lex_state = 54, .external_lex_state = 14},
-  [2151] = {.lex_state = 54, .external_lex_state = 9},
-  [2152] = {.lex_state = 54, .external_lex_state = 14},
-  [2153] = {.lex_state = 54, .external_lex_state = 13},
-  [2154] = {.lex_state = 54, .external_lex_state = 14},
-  [2155] = {.lex_state = 54, .external_lex_state = 15},
-  [2156] = {.lex_state = 54, .external_lex_state = 14},
-  [2157] = {.lex_state = 54, .external_lex_state = 14},
-  [2158] = {.lex_state = 54, .external_lex_state = 12},
-  [2159] = {.lex_state = 54, .external_lex_state = 13},
-  [2160] = {.lex_state = 54, .external_lex_state = 9},
-  [2161] = {.lex_state = 54, .external_lex_state = 18},
-  [2162] = {.lex_state = 54, .external_lex_state = 9},
-  [2163] = {.lex_state = 54, .external_lex_state = 14},
-  [2164] = {.lex_state = 54, .external_lex_state = 18},
-  [2165] = {.lex_state = 54, .external_lex_state = 14},
-  [2166] = {.lex_state = 54, .external_lex_state = 14},
-  [2167] = {.lex_state = 54, .external_lex_state = 14},
-  [2168] = {.lex_state = 54, .external_lex_state = 14},
-  [2169] = {.lex_state = 54, .external_lex_state = 14},
-  [2170] = {.lex_state = 54, .external_lex_state = 14},
-  [2171] = {.lex_state = 54, .external_lex_state = 13},
-  [2172] = {.lex_state = 54, .external_lex_state = 15},
-  [2173] = {.lex_state = 32, .external_lex_state = 13},
-  [2174] = {.lex_state = 54, .external_lex_state = 9},
-  [2175] = {.lex_state = 54, .external_lex_state = 14},
-  [2176] = {.lex_state = 54, .external_lex_state = 14},
-  [2177] = {.lex_state = 54, .external_lex_state = 9},
-  [2178] = {.lex_state = 54, .external_lex_state = 9},
-  [2179] = {.lex_state = 54, .external_lex_state = 14},
-  [2180] = {.lex_state = 54, .external_lex_state = 14},
-  [2181] = {.lex_state = 54, .external_lex_state = 14},
-  [2182] = {.lex_state = 54, .external_lex_state = 14},
-  [2183] = {.lex_state = 54, .external_lex_state = 14},
-  [2184] = {.lex_state = 54, .external_lex_state = 14},
-  [2185] = {.lex_state = 54, .external_lex_state = 14},
-  [2186] = {.lex_state = 54, .external_lex_state = 15},
-  [2187] = {.lex_state = 54, .external_lex_state = 14},
-  [2188] = {.lex_state = 54, .external_lex_state = 15},
-  [2189] = {.lex_state = 54, .external_lex_state = 14},
-  [2190] = {.lex_state = 54, .external_lex_state = 14},
-  [2191] = {.lex_state = 54, .external_lex_state = 12},
-  [2192] = {.lex_state = 54, .external_lex_state = 9},
-  [2193] = {.lex_state = 54, .external_lex_state = 15},
-  [2194] = {.lex_state = 54, .external_lex_state = 13},
-  [2195] = {.lex_state = 54, .external_lex_state = 15},
-  [2196] = {.lex_state = 54, .external_lex_state = 14},
-  [2197] = {.lex_state = 54, .external_lex_state = 13},
-  [2198] = {.lex_state = 54, .external_lex_state = 14},
-  [2199] = {.lex_state = 33, .external_lex_state = 13},
-  [2200] = {.lex_state = 54, .external_lex_state = 13},
-  [2201] = {.lex_state = 54, .external_lex_state = 9},
-  [2202] = {.lex_state = 54, .external_lex_state = 12},
-  [2203] = {.lex_state = 54, .external_lex_state = 14},
-  [2204] = {.lex_state = 54, .external_lex_state = 15},
-  [2205] = {.lex_state = 54, .external_lex_state = 13},
-  [2206] = {.lex_state = 54, .external_lex_state = 14},
-  [2207] = {.lex_state = 54, .external_lex_state = 15},
-  [2208] = {.lex_state = 54, .external_lex_state = 12},
-  [2209] = {.lex_state = 54, .external_lex_state = 15},
-  [2210] = {.lex_state = 54, .external_lex_state = 12},
-  [2211] = {.lex_state = 54, .external_lex_state = 12},
-  [2212] = {.lex_state = 54, .external_lex_state = 12},
-  [2213] = {.lex_state = 54, .external_lex_state = 12},
-  [2214] = {.lex_state = 54, .external_lex_state = 14},
-  [2215] = {.lex_state = 54, .external_lex_state = 15},
-  [2216] = {.lex_state = 54, .external_lex_state = 12},
-  [2217] = {.lex_state = 54, .external_lex_state = 12},
-  [2218] = {.lex_state = 54, .external_lex_state = 12},
-  [2219] = {.lex_state = 54, .external_lex_state = 15},
-  [2220] = {.lex_state = 54, .external_lex_state = 15},
-  [2221] = {.lex_state = 54, .external_lex_state = 12},
-  [2222] = {.lex_state = 54, .external_lex_state = 18},
-  [2223] = {.lex_state = 54, .external_lex_state = 13},
-  [2224] = {.lex_state = 54, .external_lex_state = 12},
-  [2225] = {.lex_state = 54, .external_lex_state = 9},
-  [2226] = {.lex_state = 54, .external_lex_state = 13},
-  [2227] = {.lex_state = 54, .external_lex_state = 15},
-  [2228] = {.lex_state = 54, .external_lex_state = 9},
-  [2229] = {.lex_state = 54, .external_lex_state = 18},
-  [2230] = {.lex_state = 54, .external_lex_state = 12},
-  [2231] = {.lex_state = 54, .external_lex_state = 14},
-  [2232] = {.lex_state = 54, .external_lex_state = 9},
-  [2233] = {.lex_state = 54, .external_lex_state = 9},
-  [2234] = {.lex_state = 54, .external_lex_state = 12},
-  [2235] = {.lex_state = 54, .external_lex_state = 12},
-  [2236] = {.lex_state = 54, .external_lex_state = 13},
-  [2237] = {.lex_state = 32, .external_lex_state = 13},
-  [2238] = {.lex_state = 54, .external_lex_state = 14},
-  [2239] = {.lex_state = 54, .external_lex_state = 15},
-  [2240] = {.lex_state = 54, .external_lex_state = 15},
-  [2241] = {.lex_state = 54, .external_lex_state = 15},
-  [2242] = {.lex_state = 54, .external_lex_state = 15},
-  [2243] = {.lex_state = 54, .external_lex_state = 15},
-  [2244] = {.lex_state = 54, .external_lex_state = 14},
-  [2245] = {.lex_state = 54, .external_lex_state = 15},
-  [2246] = {.lex_state = 54, .external_lex_state = 15},
-  [2247] = {.lex_state = 54, .external_lex_state = 12},
-  [2248] = {.lex_state = 54, .external_lex_state = 15},
-  [2249] = {.lex_state = 54, .external_lex_state = 13},
-  [2250] = {.lex_state = 54, .external_lex_state = 15},
-  [2251] = {.lex_state = 54, .external_lex_state = 12},
-  [2252] = {.lex_state = 54, .external_lex_state = 15},
-  [2253] = {.lex_state = 54, .external_lex_state = 12},
-  [2254] = {.lex_state = 54, .external_lex_state = 15},
-  [2255] = {.lex_state = 54, .external_lex_state = 12},
-  [2256] = {.lex_state = 54, .external_lex_state = 12},
-  [2257] = {.lex_state = 54, .external_lex_state = 15},
-  [2258] = {.lex_state = 54, .external_lex_state = 12},
-  [2259] = {.lex_state = 54, .external_lex_state = 12},
-  [2260] = {.lex_state = 54, .external_lex_state = 15},
-  [2261] = {.lex_state = 54, .external_lex_state = 15},
-  [2262] = {.lex_state = 54, .external_lex_state = 12},
-  [2263] = {.lex_state = 54, .external_lex_state = 9},
-  [2264] = {.lex_state = 54, .external_lex_state = 9},
-  [2265] = {.lex_state = 54, .external_lex_state = 15},
-  [2266] = {.lex_state = 54, .external_lex_state = 9},
-  [2267] = {.lex_state = 54, .external_lex_state = 13},
-  [2268] = {.lex_state = 54, .external_lex_state = 9},
-  [2269] = {.lex_state = 54, .external_lex_state = 14},
-  [2270] = {.lex_state = 54, .external_lex_state = 13},
-  [2271] = {.lex_state = 54, .external_lex_state = 12},
-  [2272] = {.lex_state = 54, .external_lex_state = 13},
-  [2273] = {.lex_state = 34, .external_lex_state = 17},
-  [2274] = {.lex_state = 54, .external_lex_state = 19},
-  [2275] = {.lex_state = 54, .external_lex_state = 19},
-  [2276] = {.lex_state = 54, .external_lex_state = 12},
-  [2277] = {.lex_state = 54, .external_lex_state = 15},
-  [2278] = {.lex_state = 54, .external_lex_state = 15},
-  [2279] = {.lex_state = 54, .external_lex_state = 9},
-  [2280] = {.lex_state = 54, .external_lex_state = 15},
-  [2281] = {.lex_state = 54, .external_lex_state = 13},
-  [2282] = {.lex_state = 54, .external_lex_state = 13},
-  [2283] = {.lex_state = 33, .external_lex_state = 13},
-  [2284] = {.lex_state = 54, .external_lex_state = 14},
-  [2285] = {.lex_state = 54, .external_lex_state = 14},
-  [2286] = {.lex_state = 54, .external_lex_state = 15},
-  [2287] = {.lex_state = 54, .external_lex_state = 9},
+  [2117] = {.lex_state = 52, .external_lex_state = 13},
+  [2118] = {.lex_state = 52, .external_lex_state = 14},
+  [2119] = {.lex_state = 52, .external_lex_state = 13},
+  [2120] = {.lex_state = 52, .external_lex_state = 13},
+  [2121] = {.lex_state = 52, .external_lex_state = 13},
+  [2122] = {.lex_state = 52, .external_lex_state = 15},
+  [2123] = {.lex_state = 52, .external_lex_state = 13},
+  [2124] = {.lex_state = 52, .external_lex_state = 13},
+  [2125] = {.lex_state = 52, .external_lex_state = 13},
+  [2126] = {.lex_state = 52, .external_lex_state = 13},
+  [2127] = {.lex_state = 52, .external_lex_state = 12},
+  [2128] = {.lex_state = 52, .external_lex_state = 13},
+  [2129] = {.lex_state = 52, .external_lex_state = 15},
+  [2130] = {.lex_state = 52, .external_lex_state = 12},
+  [2131] = {.lex_state = 52, .external_lex_state = 14},
+  [2132] = {.lex_state = 52, .external_lex_state = 13},
+  [2133] = {.lex_state = 52, .external_lex_state = 15},
+  [2134] = {.lex_state = 52, .external_lex_state = 13},
+  [2135] = {.lex_state = 52, .external_lex_state = 15},
+  [2136] = {.lex_state = 8, .external_lex_state = 15},
+  [2137] = {.lex_state = 8, .external_lex_state = 13},
+  [2138] = {.lex_state = 52, .external_lex_state = 13},
+  [2139] = {.lex_state = 52, .external_lex_state = 18},
+  [2140] = {.lex_state = 8, .external_lex_state = 13},
+  [2141] = {.lex_state = 52, .external_lex_state = 9},
+  [2142] = {.lex_state = 52, .external_lex_state = 12},
+  [2143] = {.lex_state = 52, .external_lex_state = 12},
+  [2144] = {.lex_state = 52, .external_lex_state = 14},
+  [2145] = {.lex_state = 52, .external_lex_state = 14},
+  [2146] = {.lex_state = 52, .external_lex_state = 14},
+  [2147] = {.lex_state = 52, .external_lex_state = 14},
+  [2148] = {.lex_state = 52, .external_lex_state = 14},
+  [2149] = {.lex_state = 52, .external_lex_state = 9},
+  [2150] = {.lex_state = 52, .external_lex_state = 14},
+  [2151] = {.lex_state = 52, .external_lex_state = 9},
+  [2152] = {.lex_state = 52, .external_lex_state = 14},
+  [2153] = {.lex_state = 52, .external_lex_state = 13},
+  [2154] = {.lex_state = 52, .external_lex_state = 14},
+  [2155] = {.lex_state = 52, .external_lex_state = 15},
+  [2156] = {.lex_state = 52, .external_lex_state = 14},
+  [2157] = {.lex_state = 52, .external_lex_state = 14},
+  [2158] = {.lex_state = 52, .external_lex_state = 12},
+  [2159] = {.lex_state = 52, .external_lex_state = 13},
+  [2160] = {.lex_state = 52, .external_lex_state = 9},
+  [2161] = {.lex_state = 52, .external_lex_state = 18},
+  [2162] = {.lex_state = 52, .external_lex_state = 9},
+  [2163] = {.lex_state = 52, .external_lex_state = 14},
+  [2164] = {.lex_state = 52, .external_lex_state = 18},
+  [2165] = {.lex_state = 52, .external_lex_state = 14},
+  [2166] = {.lex_state = 52, .external_lex_state = 14},
+  [2167] = {.lex_state = 52, .external_lex_state = 14},
+  [2168] = {.lex_state = 52, .external_lex_state = 14},
+  [2169] = {.lex_state = 52, .external_lex_state = 14},
+  [2170] = {.lex_state = 52, .external_lex_state = 14},
+  [2171] = {.lex_state = 52, .external_lex_state = 13},
+  [2172] = {.lex_state = 52, .external_lex_state = 15},
+  [2173] = {.lex_state = 7, .external_lex_state = 13},
+  [2174] = {.lex_state = 52, .external_lex_state = 9},
+  [2175] = {.lex_state = 52, .external_lex_state = 14},
+  [2176] = {.lex_state = 52, .external_lex_state = 14},
+  [2177] = {.lex_state = 52, .external_lex_state = 9},
+  [2178] = {.lex_state = 52, .external_lex_state = 9},
+  [2179] = {.lex_state = 52, .external_lex_state = 14},
+  [2180] = {.lex_state = 52, .external_lex_state = 14},
+  [2181] = {.lex_state = 52, .external_lex_state = 14},
+  [2182] = {.lex_state = 52, .external_lex_state = 14},
+  [2183] = {.lex_state = 52, .external_lex_state = 14},
+  [2184] = {.lex_state = 52, .external_lex_state = 14},
+  [2185] = {.lex_state = 52, .external_lex_state = 14},
+  [2186] = {.lex_state = 52, .external_lex_state = 15},
+  [2187] = {.lex_state = 52, .external_lex_state = 14},
+  [2188] = {.lex_state = 52, .external_lex_state = 15},
+  [2189] = {.lex_state = 52, .external_lex_state = 14},
+  [2190] = {.lex_state = 52, .external_lex_state = 14},
+  [2191] = {.lex_state = 52, .external_lex_state = 12},
+  [2192] = {.lex_state = 52, .external_lex_state = 9},
+  [2193] = {.lex_state = 52, .external_lex_state = 15},
+  [2194] = {.lex_state = 52, .external_lex_state = 13},
+  [2195] = {.lex_state = 52, .external_lex_state = 15},
+  [2196] = {.lex_state = 52, .external_lex_state = 14},
+  [2197] = {.lex_state = 52, .external_lex_state = 13},
+  [2198] = {.lex_state = 52, .external_lex_state = 14},
+  [2199] = {.lex_state = 8, .external_lex_state = 13},
+  [2200] = {.lex_state = 52, .external_lex_state = 13},
+  [2201] = {.lex_state = 52, .external_lex_state = 9},
+  [2202] = {.lex_state = 52, .external_lex_state = 12},
+  [2203] = {.lex_state = 52, .external_lex_state = 14},
+  [2204] = {.lex_state = 52, .external_lex_state = 15},
+  [2205] = {.lex_state = 52, .external_lex_state = 13},
+  [2206] = {.lex_state = 52, .external_lex_state = 14},
+  [2207] = {.lex_state = 52, .external_lex_state = 15},
+  [2208] = {.lex_state = 52, .external_lex_state = 12},
+  [2209] = {.lex_state = 52, .external_lex_state = 15},
+  [2210] = {.lex_state = 52, .external_lex_state = 12},
+  [2211] = {.lex_state = 52, .external_lex_state = 12},
+  [2212] = {.lex_state = 52, .external_lex_state = 12},
+  [2213] = {.lex_state = 52, .external_lex_state = 12},
+  [2214] = {.lex_state = 52, .external_lex_state = 14},
+  [2215] = {.lex_state = 52, .external_lex_state = 15},
+  [2216] = {.lex_state = 52, .external_lex_state = 12},
+  [2217] = {.lex_state = 52, .external_lex_state = 12},
+  [2218] = {.lex_state = 52, .external_lex_state = 12},
+  [2219] = {.lex_state = 52, .external_lex_state = 15},
+  [2220] = {.lex_state = 52, .external_lex_state = 15},
+  [2221] = {.lex_state = 52, .external_lex_state = 12},
+  [2222] = {.lex_state = 52, .external_lex_state = 18},
+  [2223] = {.lex_state = 52, .external_lex_state = 13},
+  [2224] = {.lex_state = 52, .external_lex_state = 12},
+  [2225] = {.lex_state = 52, .external_lex_state = 9},
+  [2226] = {.lex_state = 52, .external_lex_state = 13},
+  [2227] = {.lex_state = 52, .external_lex_state = 15},
+  [2228] = {.lex_state = 52, .external_lex_state = 9},
+  [2229] = {.lex_state = 52, .external_lex_state = 18},
+  [2230] = {.lex_state = 52, .external_lex_state = 12},
+  [2231] = {.lex_state = 52, .external_lex_state = 14},
+  [2232] = {.lex_state = 52, .external_lex_state = 9},
+  [2233] = {.lex_state = 52, .external_lex_state = 9},
+  [2234] = {.lex_state = 52, .external_lex_state = 12},
+  [2235] = {.lex_state = 52, .external_lex_state = 12},
+  [2236] = {.lex_state = 52, .external_lex_state = 13},
+  [2237] = {.lex_state = 7, .external_lex_state = 13},
+  [2238] = {.lex_state = 52, .external_lex_state = 14},
+  [2239] = {.lex_state = 52, .external_lex_state = 15},
+  [2240] = {.lex_state = 52, .external_lex_state = 15},
+  [2241] = {.lex_state = 52, .external_lex_state = 15},
+  [2242] = {.lex_state = 52, .external_lex_state = 15},
+  [2243] = {.lex_state = 52, .external_lex_state = 15},
+  [2244] = {.lex_state = 52, .external_lex_state = 14},
+  [2245] = {.lex_state = 52, .external_lex_state = 15},
+  [2246] = {.lex_state = 52, .external_lex_state = 15},
+  [2247] = {.lex_state = 52, .external_lex_state = 12},
+  [2248] = {.lex_state = 52, .external_lex_state = 15},
+  [2249] = {.lex_state = 52, .external_lex_state = 13},
+  [2250] = {.lex_state = 52, .external_lex_state = 15},
+  [2251] = {.lex_state = 52, .external_lex_state = 12},
+  [2252] = {.lex_state = 52, .external_lex_state = 15},
+  [2253] = {.lex_state = 52, .external_lex_state = 12},
+  [2254] = {.lex_state = 52, .external_lex_state = 15},
+  [2255] = {.lex_state = 52, .external_lex_state = 12},
+  [2256] = {.lex_state = 52, .external_lex_state = 12},
+  [2257] = {.lex_state = 52, .external_lex_state = 15},
+  [2258] = {.lex_state = 52, .external_lex_state = 12},
+  [2259] = {.lex_state = 52, .external_lex_state = 12},
+  [2260] = {.lex_state = 52, .external_lex_state = 15},
+  [2261] = {.lex_state = 52, .external_lex_state = 15},
+  [2262] = {.lex_state = 52, .external_lex_state = 12},
+  [2263] = {.lex_state = 52, .external_lex_state = 9},
+  [2264] = {.lex_state = 52, .external_lex_state = 9},
+  [2265] = {.lex_state = 52, .external_lex_state = 15},
+  [2266] = {.lex_state = 52, .external_lex_state = 9},
+  [2267] = {.lex_state = 52, .external_lex_state = 13},
+  [2268] = {.lex_state = 52, .external_lex_state = 9},
+  [2269] = {.lex_state = 52, .external_lex_state = 14},
+  [2270] = {.lex_state = 52, .external_lex_state = 13},
+  [2271] = {.lex_state = 52, .external_lex_state = 12},
+  [2272] = {.lex_state = 52, .external_lex_state = 13},
+  [2273] = {.lex_state = 9, .external_lex_state = 17},
+  [2274] = {.lex_state = 52, .external_lex_state = 19},
+  [2275] = {.lex_state = 52, .external_lex_state = 19},
+  [2276] = {.lex_state = 52, .external_lex_state = 12},
+  [2277] = {.lex_state = 52, .external_lex_state = 15},
+  [2278] = {.lex_state = 52, .external_lex_state = 15},
+  [2279] = {.lex_state = 52, .external_lex_state = 9},
+  [2280] = {.lex_state = 52, .external_lex_state = 15},
+  [2281] = {.lex_state = 52, .external_lex_state = 13},
+  [2282] = {.lex_state = 52, .external_lex_state = 13},
+  [2283] = {.lex_state = 8, .external_lex_state = 13},
+  [2284] = {.lex_state = 52, .external_lex_state = 14},
+  [2285] = {.lex_state = 52, .external_lex_state = 14},
+  [2286] = {.lex_state = 52, .external_lex_state = 15},
+  [2287] = {.lex_state = 52, .external_lex_state = 9},
   [2288] = {.lex_state = 3, .external_lex_state = 12},
-  [2289] = {.lex_state = 54, .external_lex_state = 9},
-  [2290] = {.lex_state = 54, .external_lex_state = 12},
+  [2289] = {.lex_state = 52, .external_lex_state = 9},
+  [2290] = {.lex_state = 52, .external_lex_state = 12},
   [2291] = {.lex_state = 3, .external_lex_state = 12},
   [2292] = {.lex_state = 3, .external_lex_state = 12},
-  [2293] = {.lex_state = 54, .external_lex_state = 12},
+  [2293] = {.lex_state = 52, .external_lex_state = 12},
   [2294] = {.lex_state = 3, .external_lex_state = 12},
   [2295] = {.lex_state = 3, .external_lex_state = 12},
-  [2296] = {.lex_state = 54, .external_lex_state = 14},
-  [2297] = {.lex_state = 54, .external_lex_state = 14},
-  [2298] = {.lex_state = 54, .external_lex_state = 15},
-  [2299] = {.lex_state = 54, .external_lex_state = 19},
-  [2300] = {.lex_state = 54, .external_lex_state = 15},
+  [2296] = {.lex_state = 52, .external_lex_state = 14},
+  [2297] = {.lex_state = 52, .external_lex_state = 14},
+  [2298] = {.lex_state = 52, .external_lex_state = 15},
+  [2299] = {.lex_state = 52, .external_lex_state = 19},
+  [2300] = {.lex_state = 52, .external_lex_state = 15},
   [2301] = {.lex_state = 3, .external_lex_state = 12},
-  [2302] = {.lex_state = 54, .external_lex_state = 14},
-  [2303] = {.lex_state = 54, .external_lex_state = 9},
-  [2304] = {.lex_state = 34, .external_lex_state = 17},
-  [2305] = {.lex_state = 54, .external_lex_state = 15},
-  [2306] = {.lex_state = 54, .external_lex_state = 12},
-  [2307] = {.lex_state = 54, .external_lex_state = 14},
-  [2308] = {.lex_state = 54, .external_lex_state = 15},
-  [2309] = {.lex_state = 54, .external_lex_state = 14},
-  [2310] = {.lex_state = 54, .external_lex_state = 9},
-  [2311] = {.lex_state = 54, .external_lex_state = 15},
-  [2312] = {.lex_state = 54, .external_lex_state = 15},
-  [2313] = {.lex_state = 54, .external_lex_state = 15},
-  [2314] = {.lex_state = 54, .external_lex_state = 14},
-  [2315] = {.lex_state = 54, .external_lex_state = 13},
-  [2316] = {.lex_state = 54, .external_lex_state = 15},
-  [2317] = {.lex_state = 54, .external_lex_state = 14},
-  [2318] = {.lex_state = 54, .external_lex_state = 14},
-  [2319] = {.lex_state = 54, .external_lex_state = 9},
-  [2320] = {.lex_state = 54, .external_lex_state = 14},
-  [2321] = {.lex_state = 33, .external_lex_state = 13},
-  [2322] = {.lex_state = 54, .external_lex_state = 14},
-  [2323] = {.lex_state = 54, .external_lex_state = 14},
-  [2324] = {.lex_state = 54, .external_lex_state = 14},
-  [2325] = {.lex_state = 54, .external_lex_state = 13},
-  [2326] = {.lex_state = 34, .external_lex_state = 17},
+  [2302] = {.lex_state = 52, .external_lex_state = 14},
+  [2303] = {.lex_state = 52, .external_lex_state = 9},
+  [2304] = {.lex_state = 9, .external_lex_state = 17},
+  [2305] = {.lex_state = 52, .external_lex_state = 15},
+  [2306] = {.lex_state = 52, .external_lex_state = 12},
+  [2307] = {.lex_state = 52, .external_lex_state = 14},
+  [2308] = {.lex_state = 52, .external_lex_state = 15},
+  [2309] = {.lex_state = 52, .external_lex_state = 14},
+  [2310] = {.lex_state = 52, .external_lex_state = 9},
+  [2311] = {.lex_state = 52, .external_lex_state = 15},
+  [2312] = {.lex_state = 52, .external_lex_state = 15},
+  [2313] = {.lex_state = 52, .external_lex_state = 15},
+  [2314] = {.lex_state = 52, .external_lex_state = 14},
+  [2315] = {.lex_state = 52, .external_lex_state = 13},
+  [2316] = {.lex_state = 52, .external_lex_state = 15},
+  [2317] = {.lex_state = 52, .external_lex_state = 14},
+  [2318] = {.lex_state = 52, .external_lex_state = 14},
+  [2319] = {.lex_state = 52, .external_lex_state = 9},
+  [2320] = {.lex_state = 52, .external_lex_state = 14},
+  [2321] = {.lex_state = 8, .external_lex_state = 13},
+  [2322] = {.lex_state = 52, .external_lex_state = 14},
+  [2323] = {.lex_state = 52, .external_lex_state = 14},
+  [2324] = {.lex_state = 52, .external_lex_state = 14},
+  [2325] = {.lex_state = 52, .external_lex_state = 13},
+  [2326] = {.lex_state = 9, .external_lex_state = 17},
   [2327] = {.lex_state = 3, .external_lex_state = 12},
-  [2328] = {.lex_state = 54, .external_lex_state = 14},
-  [2329] = {.lex_state = 54, .external_lex_state = 14},
-  [2330] = {.lex_state = 54, .external_lex_state = 14},
-  [2331] = {.lex_state = 54, .external_lex_state = 12},
-  [2332] = {.lex_state = 54, .external_lex_state = 14},
-  [2333] = {.lex_state = 54, .external_lex_state = 13},
-  [2334] = {.lex_state = 54, .external_lex_state = 14},
-  [2335] = {.lex_state = 33, .external_lex_state = 13},
-  [2336] = {.lex_state = 54, .external_lex_state = 14},
-  [2337] = {.lex_state = 54, .external_lex_state = 12},
-  [2338] = {.lex_state = 54, .external_lex_state = 14},
-  [2339] = {.lex_state = 54, .external_lex_state = 15},
-  [2340] = {.lex_state = 54, .external_lex_state = 15},
-  [2341] = {.lex_state = 54, .external_lex_state = 19},
-  [2342] = {.lex_state = 33, .external_lex_state = 13},
-  [2343] = {.lex_state = 54, .external_lex_state = 12},
-  [2344] = {.lex_state = 33, .external_lex_state = 13},
-  [2345] = {.lex_state = 54, .external_lex_state = 12},
-  [2346] = {.lex_state = 33, .external_lex_state = 13},
-  [2347] = {.lex_state = 54, .external_lex_state = 13},
-  [2348] = {.lex_state = 33, .external_lex_state = 13},
-  [2349] = {.lex_state = 54, .external_lex_state = 12},
-  [2350] = {.lex_state = 54, .external_lex_state = 13},
-  [2351] = {.lex_state = 54, .external_lex_state = 14},
-  [2352] = {.lex_state = 54, .external_lex_state = 13},
-  [2353] = {.lex_state = 54, .external_lex_state = 14},
-  [2354] = {.lex_state = 54, .external_lex_state = 13},
-  [2355] = {.lex_state = 54, .external_lex_state = 13},
-  [2356] = {.lex_state = 54, .external_lex_state = 9},
+  [2328] = {.lex_state = 52, .external_lex_state = 14},
+  [2329] = {.lex_state = 52, .external_lex_state = 14},
+  [2330] = {.lex_state = 52, .external_lex_state = 14},
+  [2331] = {.lex_state = 52, .external_lex_state = 12},
+  [2332] = {.lex_state = 52, .external_lex_state = 14},
+  [2333] = {.lex_state = 52, .external_lex_state = 13},
+  [2334] = {.lex_state = 52, .external_lex_state = 14},
+  [2335] = {.lex_state = 8, .external_lex_state = 13},
+  [2336] = {.lex_state = 52, .external_lex_state = 14},
+  [2337] = {.lex_state = 52, .external_lex_state = 12},
+  [2338] = {.lex_state = 52, .external_lex_state = 14},
+  [2339] = {.lex_state = 52, .external_lex_state = 15},
+  [2340] = {.lex_state = 52, .external_lex_state = 15},
+  [2341] = {.lex_state = 52, .external_lex_state = 19},
+  [2342] = {.lex_state = 8, .external_lex_state = 13},
+  [2343] = {.lex_state = 52, .external_lex_state = 12},
+  [2344] = {.lex_state = 8, .external_lex_state = 13},
+  [2345] = {.lex_state = 52, .external_lex_state = 12},
+  [2346] = {.lex_state = 8, .external_lex_state = 13},
+  [2347] = {.lex_state = 52, .external_lex_state = 13},
+  [2348] = {.lex_state = 8, .external_lex_state = 13},
+  [2349] = {.lex_state = 52, .external_lex_state = 12},
+  [2350] = {.lex_state = 52, .external_lex_state = 13},
+  [2351] = {.lex_state = 52, .external_lex_state = 14},
+  [2352] = {.lex_state = 52, .external_lex_state = 13},
+  [2353] = {.lex_state = 52, .external_lex_state = 14},
+  [2354] = {.lex_state = 52, .external_lex_state = 13},
+  [2355] = {.lex_state = 52, .external_lex_state = 13},
+  [2356] = {.lex_state = 52, .external_lex_state = 9},
   [2357] = {.lex_state = 3, .external_lex_state = 12},
-  [2358] = {.lex_state = 54, .external_lex_state = 12},
-  [2359] = {.lex_state = 54, .external_lex_state = 12},
-  [2360] = {.lex_state = 54, .external_lex_state = 15},
-  [2361] = {.lex_state = 54, .external_lex_state = 12},
-  [2362] = {.lex_state = 54, .external_lex_state = 14},
-  [2363] = {.lex_state = 54, .external_lex_state = 13},
-  [2364] = {.lex_state = 54, .external_lex_state = 12},
-  [2365] = {.lex_state = 54, .external_lex_state = 9},
-  [2366] = {.lex_state = 54, .external_lex_state = 12},
-  [2367] = {.lex_state = 54, .external_lex_state = 15},
-  [2368] = {.lex_state = 54, .external_lex_state = 14},
-  [2369] = {.lex_state = 54, .external_lex_state = 9},
-  [2370] = {.lex_state = 54, .external_lex_state = 14},
-  [2371] = {.lex_state = 54, .external_lex_state = 14},
-  [2372] = {.lex_state = 54, .external_lex_state = 15},
-  [2373] = {.lex_state = 54, .external_lex_state = 14},
-  [2374] = {.lex_state = 54, .external_lex_state = 15},
-  [2375] = {.lex_state = 54, .external_lex_state = 19},
-  [2376] = {.lex_state = 54, .external_lex_state = 14},
-  [2377] = {.lex_state = 54, .external_lex_state = 15},
-  [2378] = {.lex_state = 54, .external_lex_state = 15},
-  [2379] = {.lex_state = 54, .external_lex_state = 14},
-  [2380] = {.lex_state = 54, .external_lex_state = 15},
-  [2381] = {.lex_state = 54, .external_lex_state = 12},
-  [2382] = {.lex_state = 54, .external_lex_state = 13},
-  [2383] = {.lex_state = 54, .external_lex_state = 15},
-  [2384] = {.lex_state = 54, .external_lex_state = 14},
-  [2385] = {.lex_state = 54, .external_lex_state = 15},
-  [2386] = {.lex_state = 54, .external_lex_state = 9},
-  [2387] = {.lex_state = 54, .external_lex_state = 9},
-  [2388] = {.lex_state = 54, .external_lex_state = 19},
-  [2389] = {.lex_state = 54, .external_lex_state = 13},
-  [2390] = {.lex_state = 54, .external_lex_state = 14},
-  [2391] = {.lex_state = 54, .external_lex_state = 12},
-  [2392] = {.lex_state = 54, .external_lex_state = 15},
-  [2393] = {.lex_state = 54, .external_lex_state = 15},
-  [2394] = {.lex_state = 54, .external_lex_state = 14},
-  [2395] = {.lex_state = 54, .external_lex_state = 12},
-  [2396] = {.lex_state = 54, .external_lex_state = 14},
-  [2397] = {.lex_state = 54, .external_lex_state = 14},
-  [2398] = {.lex_state = 54, .external_lex_state = 13},
-  [2399] = {.lex_state = 54, .external_lex_state = 15},
-  [2400] = {.lex_state = 54, .external_lex_state = 14},
-  [2401] = {.lex_state = 54, .external_lex_state = 14},
-  [2402] = {.lex_state = 54, .external_lex_state = 14},
-  [2403] = {.lex_state = 54, .external_lex_state = 15},
-  [2404] = {.lex_state = 54, .external_lex_state = 14},
-  [2405] = {.lex_state = 54, .external_lex_state = 15},
-  [2406] = {.lex_state = 54, .external_lex_state = 14},
-  [2407] = {.lex_state = 54, .external_lex_state = 19},
-  [2408] = {.lex_state = 54, .external_lex_state = 13},
-  [2409] = {.lex_state = 54, .external_lex_state = 12},
-  [2410] = {.lex_state = 54, .external_lex_state = 15},
-  [2411] = {.lex_state = 54, .external_lex_state = 12},
-  [2412] = {.lex_state = 54, .external_lex_state = 14},
-  [2413] = {.lex_state = 54, .external_lex_state = 12},
-  [2414] = {.lex_state = 54, .external_lex_state = 14},
-  [2415] = {.lex_state = 54, .external_lex_state = 9},
-  [2416] = {.lex_state = 54, .external_lex_state = 15},
-  [2417] = {.lex_state = 54, .external_lex_state = 15},
-  [2418] = {.lex_state = 54, .external_lex_state = 14},
-  [2419] = {.lex_state = 54, .external_lex_state = 15},
-  [2420] = {.lex_state = 34, .external_lex_state = 17},
-  [2421] = {.lex_state = 54, .external_lex_state = 12},
-  [2422] = {.lex_state = 54, .external_lex_state = 14},
-  [2423] = {.lex_state = 54, .external_lex_state = 12},
-  [2424] = {.lex_state = 54, .external_lex_state = 14},
-  [2425] = {.lex_state = 54, .external_lex_state = 9},
-  [2426] = {.lex_state = 34, .external_lex_state = 17},
-  [2427] = {.lex_state = 54, .external_lex_state = 13},
-  [2428] = {.lex_state = 54, .external_lex_state = 12},
-  [2429] = {.lex_state = 33, .external_lex_state = 13},
-  [2430] = {.lex_state = 54, .external_lex_state = 13},
-  [2431] = {.lex_state = 54, .external_lex_state = 14},
-  [2432] = {.lex_state = 54, .external_lex_state = 12},
-  [2433] = {.lex_state = 54, .external_lex_state = 12},
-  [2434] = {.lex_state = 54, .external_lex_state = 15},
-  [2435] = {.lex_state = 54, .external_lex_state = 13},
-  [2436] = {.lex_state = 54, .external_lex_state = 12},
-  [2437] = {.lex_state = 54, .external_lex_state = 14},
-  [2438] = {.lex_state = 54, .external_lex_state = 14},
-  [2439] = {.lex_state = 54, .external_lex_state = 15},
-  [2440] = {.lex_state = 54, .external_lex_state = 15},
-  [2441] = {.lex_state = 54, .external_lex_state = 15},
-  [2442] = {.lex_state = 54, .external_lex_state = 13},
-  [2443] = {.lex_state = 54, .external_lex_state = 12},
-  [2444] = {.lex_state = 54, .external_lex_state = 14},
-  [2445] = {.lex_state = 54, .external_lex_state = 12},
-  [2446] = {.lex_state = 54, .external_lex_state = 13},
-  [2447] = {.lex_state = 54, .external_lex_state = 14},
-  [2448] = {.lex_state = 54, .external_lex_state = 14},
-  [2449] = {.lex_state = 54, .external_lex_state = 9},
-  [2450] = {.lex_state = 54, .external_lex_state = 15},
-  [2451] = {.lex_state = 54, .external_lex_state = 13},
-  [2452] = {.lex_state = 54, .external_lex_state = 14},
-  [2453] = {.lex_state = 54, .external_lex_state = 15},
-  [2454] = {.lex_state = 54, .external_lex_state = 13},
-  [2455] = {.lex_state = 54, .external_lex_state = 14},
-  [2456] = {.lex_state = 54, .external_lex_state = 13},
-  [2457] = {.lex_state = 54, .external_lex_state = 14},
-  [2458] = {.lex_state = 54, .external_lex_state = 15},
-  [2459] = {.lex_state = 54, .external_lex_state = 14},
-  [2460] = {.lex_state = 54, .external_lex_state = 14},
-  [2461] = {.lex_state = 54, .external_lex_state = 13},
-  [2462] = {.lex_state = 54, .external_lex_state = 9},
-  [2463] = {.lex_state = 54, .external_lex_state = 12},
+  [2358] = {.lex_state = 52, .external_lex_state = 12},
+  [2359] = {.lex_state = 52, .external_lex_state = 12},
+  [2360] = {.lex_state = 52, .external_lex_state = 15},
+  [2361] = {.lex_state = 52, .external_lex_state = 12},
+  [2362] = {.lex_state = 52, .external_lex_state = 14},
+  [2363] = {.lex_state = 52, .external_lex_state = 13},
+  [2364] = {.lex_state = 52, .external_lex_state = 12},
+  [2365] = {.lex_state = 52, .external_lex_state = 9},
+  [2366] = {.lex_state = 52, .external_lex_state = 12},
+  [2367] = {.lex_state = 52, .external_lex_state = 15},
+  [2368] = {.lex_state = 52, .external_lex_state = 14},
+  [2369] = {.lex_state = 52, .external_lex_state = 9},
+  [2370] = {.lex_state = 52, .external_lex_state = 14},
+  [2371] = {.lex_state = 52, .external_lex_state = 14},
+  [2372] = {.lex_state = 52, .external_lex_state = 15},
+  [2373] = {.lex_state = 52, .external_lex_state = 14},
+  [2374] = {.lex_state = 52, .external_lex_state = 15},
+  [2375] = {.lex_state = 52, .external_lex_state = 19},
+  [2376] = {.lex_state = 52, .external_lex_state = 14},
+  [2377] = {.lex_state = 52, .external_lex_state = 15},
+  [2378] = {.lex_state = 52, .external_lex_state = 15},
+  [2379] = {.lex_state = 52, .external_lex_state = 14},
+  [2380] = {.lex_state = 52, .external_lex_state = 15},
+  [2381] = {.lex_state = 52, .external_lex_state = 12},
+  [2382] = {.lex_state = 52, .external_lex_state = 13},
+  [2383] = {.lex_state = 52, .external_lex_state = 15},
+  [2384] = {.lex_state = 52, .external_lex_state = 14},
+  [2385] = {.lex_state = 52, .external_lex_state = 15},
+  [2386] = {.lex_state = 52, .external_lex_state = 9},
+  [2387] = {.lex_state = 52, .external_lex_state = 9},
+  [2388] = {.lex_state = 52, .external_lex_state = 19},
+  [2389] = {.lex_state = 52, .external_lex_state = 13},
+  [2390] = {.lex_state = 52, .external_lex_state = 14},
+  [2391] = {.lex_state = 52, .external_lex_state = 12},
+  [2392] = {.lex_state = 52, .external_lex_state = 15},
+  [2393] = {.lex_state = 52, .external_lex_state = 15},
+  [2394] = {.lex_state = 52, .external_lex_state = 14},
+  [2395] = {.lex_state = 52, .external_lex_state = 12},
+  [2396] = {.lex_state = 52, .external_lex_state = 14},
+  [2397] = {.lex_state = 52, .external_lex_state = 14},
+  [2398] = {.lex_state = 52, .external_lex_state = 13},
+  [2399] = {.lex_state = 52, .external_lex_state = 15},
+  [2400] = {.lex_state = 52, .external_lex_state = 14},
+  [2401] = {.lex_state = 52, .external_lex_state = 14},
+  [2402] = {.lex_state = 52, .external_lex_state = 14},
+  [2403] = {.lex_state = 52, .external_lex_state = 15},
+  [2404] = {.lex_state = 52, .external_lex_state = 14},
+  [2405] = {.lex_state = 52, .external_lex_state = 15},
+  [2406] = {.lex_state = 52, .external_lex_state = 14},
+  [2407] = {.lex_state = 52, .external_lex_state = 19},
+  [2408] = {.lex_state = 52, .external_lex_state = 13},
+  [2409] = {.lex_state = 52, .external_lex_state = 12},
+  [2410] = {.lex_state = 52, .external_lex_state = 15},
+  [2411] = {.lex_state = 52, .external_lex_state = 12},
+  [2412] = {.lex_state = 52, .external_lex_state = 14},
+  [2413] = {.lex_state = 52, .external_lex_state = 12},
+  [2414] = {.lex_state = 52, .external_lex_state = 14},
+  [2415] = {.lex_state = 52, .external_lex_state = 9},
+  [2416] = {.lex_state = 52, .external_lex_state = 15},
+  [2417] = {.lex_state = 52, .external_lex_state = 15},
+  [2418] = {.lex_state = 52, .external_lex_state = 14},
+  [2419] = {.lex_state = 52, .external_lex_state = 15},
+  [2420] = {.lex_state = 9, .external_lex_state = 17},
+  [2421] = {.lex_state = 52, .external_lex_state = 12},
+  [2422] = {.lex_state = 52, .external_lex_state = 14},
+  [2423] = {.lex_state = 52, .external_lex_state = 12},
+  [2424] = {.lex_state = 52, .external_lex_state = 14},
+  [2425] = {.lex_state = 52, .external_lex_state = 9},
+  [2426] = {.lex_state = 9, .external_lex_state = 17},
+  [2427] = {.lex_state = 52, .external_lex_state = 13},
+  [2428] = {.lex_state = 52, .external_lex_state = 12},
+  [2429] = {.lex_state = 8, .external_lex_state = 13},
+  [2430] = {.lex_state = 52, .external_lex_state = 13},
+  [2431] = {.lex_state = 52, .external_lex_state = 14},
+  [2432] = {.lex_state = 52, .external_lex_state = 12},
+  [2433] = {.lex_state = 52, .external_lex_state = 12},
+  [2434] = {.lex_state = 52, .external_lex_state = 15},
+  [2435] = {.lex_state = 52, .external_lex_state = 13},
+  [2436] = {.lex_state = 52, .external_lex_state = 12},
+  [2437] = {.lex_state = 52, .external_lex_state = 14},
+  [2438] = {.lex_state = 52, .external_lex_state = 14},
+  [2439] = {.lex_state = 52, .external_lex_state = 15},
+  [2440] = {.lex_state = 52, .external_lex_state = 15},
+  [2441] = {.lex_state = 52, .external_lex_state = 15},
+  [2442] = {.lex_state = 52, .external_lex_state = 13},
+  [2443] = {.lex_state = 52, .external_lex_state = 12},
+  [2444] = {.lex_state = 52, .external_lex_state = 14},
+  [2445] = {.lex_state = 52, .external_lex_state = 12},
+  [2446] = {.lex_state = 52, .external_lex_state = 13},
+  [2447] = {.lex_state = 52, .external_lex_state = 14},
+  [2448] = {.lex_state = 52, .external_lex_state = 14},
+  [2449] = {.lex_state = 52, .external_lex_state = 9},
+  [2450] = {.lex_state = 52, .external_lex_state = 15},
+  [2451] = {.lex_state = 52, .external_lex_state = 13},
+  [2452] = {.lex_state = 52, .external_lex_state = 14},
+  [2453] = {.lex_state = 52, .external_lex_state = 15},
+  [2454] = {.lex_state = 52, .external_lex_state = 13},
+  [2455] = {.lex_state = 52, .external_lex_state = 14},
+  [2456] = {.lex_state = 52, .external_lex_state = 13},
+  [2457] = {.lex_state = 52, .external_lex_state = 14},
+  [2458] = {.lex_state = 52, .external_lex_state = 15},
+  [2459] = {.lex_state = 52, .external_lex_state = 14},
+  [2460] = {.lex_state = 52, .external_lex_state = 14},
+  [2461] = {.lex_state = 52, .external_lex_state = 13},
+  [2462] = {.lex_state = 52, .external_lex_state = 9},
+  [2463] = {.lex_state = 52, .external_lex_state = 12},
   [2464] = {.lex_state = 3, .external_lex_state = 12},
-  [2465] = {.lex_state = 54, .external_lex_state = 14},
-  [2466] = {.lex_state = 54, .external_lex_state = 14},
-  [2467] = {.lex_state = 54, .external_lex_state = 15},
-  [2468] = {.lex_state = 54, .external_lex_state = 14},
-  [2469] = {.lex_state = 54, .external_lex_state = 9},
-  [2470] = {.lex_state = 54, .external_lex_state = 12},
-  [2471] = {.lex_state = 54, .external_lex_state = 14},
-  [2472] = {.lex_state = 54, .external_lex_state = 9},
-  [2473] = {.lex_state = 54, .external_lex_state = 14},
-  [2474] = {.lex_state = 54, .external_lex_state = 14},
-  [2475] = {.lex_state = 54, .external_lex_state = 15},
-  [2476] = {.lex_state = 54, .external_lex_state = 12},
-  [2477] = {.lex_state = 54, .external_lex_state = 9},
-  [2478] = {.lex_state = 54, .external_lex_state = 12},
-  [2479] = {.lex_state = 54, .external_lex_state = 14},
-  [2480] = {.lex_state = 54, .external_lex_state = 9},
-  [2481] = {.lex_state = 54, .external_lex_state = 9},
-  [2482] = {.lex_state = 54, .external_lex_state = 14},
-  [2483] = {.lex_state = 54, .external_lex_state = 19},
-  [2484] = {.lex_state = 54, .external_lex_state = 15},
-  [2485] = {.lex_state = 54, .external_lex_state = 15},
-  [2486] = {.lex_state = 54, .external_lex_state = 15},
-  [2487] = {.lex_state = 54, .external_lex_state = 14},
-  [2488] = {.lex_state = 54, .external_lex_state = 12},
-  [2489] = {.lex_state = 54, .external_lex_state = 12},
-  [2490] = {.lex_state = 54, .external_lex_state = 14},
-  [2491] = {.lex_state = 54, .external_lex_state = 13},
-  [2492] = {.lex_state = 54, .external_lex_state = 15},
-  [2493] = {.lex_state = 54, .external_lex_state = 12},
-  [2494] = {.lex_state = 54, .external_lex_state = 13},
-  [2495] = {.lex_state = 54, .external_lex_state = 14},
-  [2496] = {.lex_state = 54, .external_lex_state = 14},
-  [2497] = {.lex_state = 54, .external_lex_state = 14},
-  [2498] = {.lex_state = 54, .external_lex_state = 15},
-  [2499] = {.lex_state = 54, .external_lex_state = 15},
-  [2500] = {.lex_state = 54, .external_lex_state = 14},
-  [2501] = {.lex_state = 54, .external_lex_state = 14},
-  [2502] = {.lex_state = 54, .external_lex_state = 9},
-  [2503] = {.lex_state = 54, .external_lex_state = 13},
-  [2504] = {.lex_state = 54, .external_lex_state = 14},
-  [2505] = {.lex_state = 54, .external_lex_state = 13},
-  [2506] = {.lex_state = 54, .external_lex_state = 14},
-  [2507] = {.lex_state = 54, .external_lex_state = 13},
-  [2508] = {.lex_state = 54, .external_lex_state = 15},
-  [2509] = {.lex_state = 54, .external_lex_state = 15},
-  [2510] = {.lex_state = 54, .external_lex_state = 12},
-  [2511] = {.lex_state = 54, .external_lex_state = 12},
-  [2512] = {.lex_state = 54, .external_lex_state = 13},
-  [2513] = {.lex_state = 54, .external_lex_state = 9},
-  [2514] = {.lex_state = 54, .external_lex_state = 14},
-  [2515] = {.lex_state = 54, .external_lex_state = 14},
-  [2516] = {.lex_state = 54, .external_lex_state = 15},
-  [2517] = {.lex_state = 54, .external_lex_state = 12},
-  [2518] = {.lex_state = 54, .external_lex_state = 12},
-  [2519] = {.lex_state = 54, .external_lex_state = 14},
-  [2520] = {.lex_state = 54, .external_lex_state = 14},
-  [2521] = {.lex_state = 54, .external_lex_state = 15},
-  [2522] = {.lex_state = 54, .external_lex_state = 9},
-  [2523] = {.lex_state = 54, .external_lex_state = 14},
-  [2524] = {.lex_state = 54, .external_lex_state = 14},
-  [2525] = {.lex_state = 54, .external_lex_state = 14},
-  [2526] = {.lex_state = 54, .external_lex_state = 15},
-  [2527] = {.lex_state = 54, .external_lex_state = 14},
-  [2528] = {.lex_state = 54, .external_lex_state = 18},
-  [2529] = {.lex_state = 54, .external_lex_state = 9},
-  [2530] = {.lex_state = 54, .external_lex_state = 13},
-  [2531] = {.lex_state = 54, .external_lex_state = 18},
-  [2532] = {.lex_state = 54, .external_lex_state = 13},
-  [2533] = {.lex_state = 54, .external_lex_state = 9},
-  [2534] = {.lex_state = 54, .external_lex_state = 18},
-  [2535] = {.lex_state = 54, .external_lex_state = 12},
-  [2536] = {.lex_state = 54, .external_lex_state = 18},
-  [2537] = {.lex_state = 54, .external_lex_state = 9},
-  [2538] = {.lex_state = 34, .external_lex_state = 13},
-  [2539] = {.lex_state = 54, .external_lex_state = 13},
-  [2540] = {.lex_state = 54, .external_lex_state = 9},
-  [2541] = {.lex_state = 54, .external_lex_state = 9},
-  [2542] = {.lex_state = 54, .external_lex_state = 13},
-  [2543] = {.lex_state = 54, .external_lex_state = 13},
-  [2544] = {.lex_state = 54, .external_lex_state = 9},
-  [2545] = {.lex_state = 54, .external_lex_state = 18},
-  [2546] = {.lex_state = 54, .external_lex_state = 15},
-  [2547] = {.lex_state = 54, .external_lex_state = 18},
-  [2548] = {.lex_state = 54, .external_lex_state = 18},
-  [2549] = {.lex_state = 54, .external_lex_state = 13},
-  [2550] = {.lex_state = 54, .external_lex_state = 18},
-  [2551] = {.lex_state = 54, .external_lex_state = 9},
-  [2552] = {.lex_state = 54, .external_lex_state = 13},
-  [2553] = {.lex_state = 54, .external_lex_state = 9},
-  [2554] = {.lex_state = 54, .external_lex_state = 14},
-  [2555] = {.lex_state = 54, .external_lex_state = 18},
-  [2556] = {.lex_state = 54, .external_lex_state = 14},
-  [2557] = {.lex_state = 54, .external_lex_state = 9},
-  [2558] = {.lex_state = 54, .external_lex_state = 18},
-  [2559] = {.lex_state = 54, .external_lex_state = 9},
-  [2560] = {.lex_state = 54, .external_lex_state = 18},
-  [2561] = {.lex_state = 54, .external_lex_state = 13},
-  [2562] = {.lex_state = 54, .external_lex_state = 18},
-  [2563] = {.lex_state = 54, .external_lex_state = 13},
-  [2564] = {.lex_state = 54, .external_lex_state = 14},
-  [2565] = {.lex_state = 54, .external_lex_state = 13},
-  [2566] = {.lex_state = 54, .external_lex_state = 13},
-  [2567] = {.lex_state = 54, .external_lex_state = 18},
-  [2568] = {.lex_state = 54, .external_lex_state = 13},
-  [2569] = {.lex_state = 54, .external_lex_state = 18},
-  [2570] = {.lex_state = 54, .external_lex_state = 14},
-  [2571] = {.lex_state = 54, .external_lex_state = 15},
-  [2572] = {.lex_state = 34, .external_lex_state = 13},
-  [2573] = {.lex_state = 54, .external_lex_state = 14},
-  [2574] = {.lex_state = 54, .external_lex_state = 14},
-  [2575] = {.lex_state = 54, .external_lex_state = 13},
-  [2576] = {.lex_state = 54, .external_lex_state = 14},
-  [2577] = {.lex_state = 54, .external_lex_state = 13},
-  [2578] = {.lex_state = 54, .external_lex_state = 14},
-  [2579] = {.lex_state = 54, .external_lex_state = 14},
-  [2580] = {.lex_state = 54, .external_lex_state = 15},
-  [2581] = {.lex_state = 34, .external_lex_state = 13},
-  [2582] = {.lex_state = 34, .external_lex_state = 13},
-  [2583] = {.lex_state = 54, .external_lex_state = 13},
-  [2584] = {.lex_state = 34, .external_lex_state = 13},
-  [2585] = {.lex_state = 54, .external_lex_state = 15},
-  [2586] = {.lex_state = 34, .external_lex_state = 13},
-  [2587] = {.lex_state = 34, .external_lex_state = 13},
-  [2588] = {.lex_state = 54, .external_lex_state = 13},
-  [2589] = {.lex_state = 54, .external_lex_state = 14},
-  [2590] = {.lex_state = 34, .external_lex_state = 13},
-  [2591] = {.lex_state = 54, .external_lex_state = 18},
-  [2592] = {.lex_state = 54, .external_lex_state = 9},
-  [2593] = {.lex_state = 54, .external_lex_state = 18},
-  [2594] = {.lex_state = 54, .external_lex_state = 9},
-  [2595] = {.lex_state = 54, .external_lex_state = 12},
-  [2596] = {.lex_state = 54, .external_lex_state = 18},
-  [2597] = {.lex_state = 54, .external_lex_state = 13},
-  [2598] = {.lex_state = 54, .external_lex_state = 18},
-  [2599] = {.lex_state = 54, .external_lex_state = 14},
-  [2600] = {.lex_state = 54, .external_lex_state = 15},
-  [2601] = {.lex_state = 54, .external_lex_state = 13},
-  [2602] = {.lex_state = 54, .external_lex_state = 14},
-  [2603] = {.lex_state = 54, .external_lex_state = 15},
-  [2604] = {.lex_state = 34, .external_lex_state = 13},
-  [2605] = {.lex_state = 54, .external_lex_state = 13},
-  [2606] = {.lex_state = 54, .external_lex_state = 9},
-  [2607] = {.lex_state = 54, .external_lex_state = 9},
-  [2608] = {.lex_state = 54, .external_lex_state = 14},
-  [2609] = {.lex_state = 54, .external_lex_state = 9},
-  [2610] = {.lex_state = 34, .external_lex_state = 13},
-  [2611] = {.lex_state = 54, .external_lex_state = 14},
-  [2612] = {.lex_state = 54, .external_lex_state = 12},
-  [2613] = {.lex_state = 54, .external_lex_state = 13},
-  [2614] = {.lex_state = 54, .external_lex_state = 12},
-  [2615] = {.lex_state = 54, .external_lex_state = 9},
-  [2616] = {.lex_state = 54, .external_lex_state = 14},
-  [2617] = {.lex_state = 54, .external_lex_state = 13},
-  [2618] = {.lex_state = 54, .external_lex_state = 13},
-  [2619] = {.lex_state = 54, .external_lex_state = 13},
-  [2620] = {.lex_state = 54, .external_lex_state = 15},
-  [2621] = {.lex_state = 54, .external_lex_state = 9},
-  [2622] = {.lex_state = 54, .external_lex_state = 9},
-  [2623] = {.lex_state = 54, .external_lex_state = 13},
-  [2624] = {.lex_state = 54, .external_lex_state = 15},
-  [2625] = {.lex_state = 54, .external_lex_state = 13},
-  [2626] = {.lex_state = 54, .external_lex_state = 13},
-  [2627] = {.lex_state = 54, .external_lex_state = 15},
-  [2628] = {.lex_state = 54, .external_lex_state = 12},
-  [2629] = {.lex_state = 29, .external_lex_state = 13},
-  [2630] = {.lex_state = 54, .external_lex_state = 14},
-  [2631] = {.lex_state = 54, .external_lex_state = 12},
-  [2632] = {.lex_state = 54, .external_lex_state = 13},
-  [2633] = {.lex_state = 29, .external_lex_state = 13},
-  [2634] = {.lex_state = 54, .external_lex_state = 15},
-  [2635] = {.lex_state = 54, .external_lex_state = 13},
-  [2636] = {.lex_state = 54, .external_lex_state = 13},
-  [2637] = {.lex_state = 54, .external_lex_state = 14},
-  [2638] = {.lex_state = 54, .external_lex_state = 13},
-  [2639] = {.lex_state = 54, .external_lex_state = 13},
-  [2640] = {.lex_state = 54, .external_lex_state = 15},
-  [2641] = {.lex_state = 54, .external_lex_state = 12},
-  [2642] = {.lex_state = 54, .external_lex_state = 13},
-  [2643] = {.lex_state = 54, .external_lex_state = 12},
-  [2644] = {.lex_state = 54, .external_lex_state = 12},
-  [2645] = {.lex_state = 54, .external_lex_state = 13},
-  [2646] = {.lex_state = 54, .external_lex_state = 13},
-  [2647] = {.lex_state = 54, .external_lex_state = 12},
-  [2648] = {.lex_state = 54, .external_lex_state = 13},
-  [2649] = {.lex_state = 54, .external_lex_state = 13},
-  [2650] = {.lex_state = 54, .external_lex_state = 13},
-  [2651] = {.lex_state = 54, .external_lex_state = 14},
-  [2652] = {.lex_state = 54, .external_lex_state = 15},
-  [2653] = {.lex_state = 54, .external_lex_state = 13},
-  [2654] = {.lex_state = 54, .external_lex_state = 14},
-  [2655] = {.lex_state = 54, .external_lex_state = 12},
-  [2656] = {.lex_state = 54, .external_lex_state = 12},
-  [2657] = {.lex_state = 54, .external_lex_state = 13},
-  [2658] = {.lex_state = 54, .external_lex_state = 13},
-  [2659] = {.lex_state = 54, .external_lex_state = 14},
-  [2660] = {.lex_state = 54, .external_lex_state = 13},
-  [2661] = {.lex_state = 54, .external_lex_state = 15},
-  [2662] = {.lex_state = 54, .external_lex_state = 12},
-  [2663] = {.lex_state = 54, .external_lex_state = 14},
-  [2664] = {.lex_state = 54, .external_lex_state = 14},
-  [2665] = {.lex_state = 54, .external_lex_state = 14},
-  [2666] = {.lex_state = 54, .external_lex_state = 12},
-  [2667] = {.lex_state = 54, .external_lex_state = 12},
-  [2668] = {.lex_state = 54, .external_lex_state = 12},
-  [2669] = {.lex_state = 54, .external_lex_state = 12},
-  [2670] = {.lex_state = 54, .external_lex_state = 13},
-  [2671] = {.lex_state = 54, .external_lex_state = 13},
-  [2672] = {.lex_state = 54, .external_lex_state = 15},
-  [2673] = {.lex_state = 54, .external_lex_state = 13},
-  [2674] = {.lex_state = 54, .external_lex_state = 14},
-  [2675] = {.lex_state = 54, .external_lex_state = 13},
-  [2676] = {.lex_state = 54, .external_lex_state = 13},
-  [2677] = {.lex_state = 54, .external_lex_state = 14},
-  [2678] = {.lex_state = 54, .external_lex_state = 13},
-  [2679] = {.lex_state = 54, .external_lex_state = 12},
-  [2680] = {.lex_state = 54, .external_lex_state = 14},
-  [2681] = {.lex_state = 54, .external_lex_state = 13},
-  [2682] = {.lex_state = 54, .external_lex_state = 12},
-  [2683] = {.lex_state = 54, .external_lex_state = 13},
-  [2684] = {.lex_state = 54, .external_lex_state = 13},
-  [2685] = {.lex_state = 29, .external_lex_state = 13},
-  [2686] = {.lex_state = 54, .external_lex_state = 13},
-  [2687] = {.lex_state = 54, .external_lex_state = 12},
-  [2688] = {.lex_state = 54, .external_lex_state = 12},
-  [2689] = {.lex_state = 54, .external_lex_state = 14},
-  [2690] = {.lex_state = 54, .external_lex_state = 13},
-  [2691] = {.lex_state = 54, .external_lex_state = 15},
-  [2692] = {.lex_state = 54, .external_lex_state = 14},
-  [2693] = {.lex_state = 54, .external_lex_state = 13},
-  [2694] = {.lex_state = 54, .external_lex_state = 13},
-  [2695] = {.lex_state = 54, .external_lex_state = 15},
-  [2696] = {.lex_state = 54, .external_lex_state = 13},
-  [2697] = {.lex_state = 54, .external_lex_state = 13},
-  [2698] = {.lex_state = 54, .external_lex_state = 14},
-  [2699] = {.lex_state = 54, .external_lex_state = 15},
-  [2700] = {.lex_state = 54, .external_lex_state = 14},
-  [2701] = {.lex_state = 54, .external_lex_state = 13},
-  [2702] = {.lex_state = 29, .external_lex_state = 13},
-  [2703] = {.lex_state = 54, .external_lex_state = 14},
-  [2704] = {.lex_state = 54, .external_lex_state = 13},
-  [2705] = {.lex_state = 54, .external_lex_state = 12},
-  [2706] = {.lex_state = 54, .external_lex_state = 13},
-  [2707] = {.lex_state = 54, .external_lex_state = 14},
-  [2708] = {.lex_state = 54, .external_lex_state = 13},
-  [2709] = {.lex_state = 54, .external_lex_state = 13},
-  [2710] = {.lex_state = 54, .external_lex_state = 13},
-  [2711] = {.lex_state = 54, .external_lex_state = 13},
-  [2712] = {.lex_state = 54, .external_lex_state = 14},
-  [2713] = {.lex_state = 54, .external_lex_state = 13},
-  [2714] = {.lex_state = 54, .external_lex_state = 13},
-  [2715] = {.lex_state = 54, .external_lex_state = 13},
-  [2716] = {.lex_state = 54, .external_lex_state = 13},
-  [2717] = {.lex_state = 54, .external_lex_state = 13},
-  [2718] = {.lex_state = 54, .external_lex_state = 13},
-  [2719] = {.lex_state = 54, .external_lex_state = 12},
-  [2720] = {.lex_state = 54, .external_lex_state = 13},
-  [2721] = {.lex_state = 54, .external_lex_state = 13},
-  [2722] = {.lex_state = 54, .external_lex_state = 12},
-  [2723] = {.lex_state = 54, .external_lex_state = 13},
-  [2724] = {.lex_state = 54, .external_lex_state = 12},
-  [2725] = {.lex_state = 54, .external_lex_state = 13},
-  [2726] = {.lex_state = 54, .external_lex_state = 15},
-  [2727] = {.lex_state = 54, .external_lex_state = 12},
-  [2728] = {.lex_state = 54, .external_lex_state = 13},
-  [2729] = {.lex_state = 54, .external_lex_state = 13},
-  [2730] = {.lex_state = 54, .external_lex_state = 12},
-  [2731] = {.lex_state = 54, .external_lex_state = 13},
-  [2732] = {.lex_state = 54, .external_lex_state = 13},
-  [2733] = {.lex_state = 54, .external_lex_state = 13},
-  [2734] = {.lex_state = 54, .external_lex_state = 13},
-  [2735] = {.lex_state = 54, .external_lex_state = 14},
-  [2736] = {.lex_state = 54, .external_lex_state = 15},
-  [2737] = {.lex_state = 54, .external_lex_state = 12},
-  [2738] = {.lex_state = 54, .external_lex_state = 15},
-  [2739] = {.lex_state = 54, .external_lex_state = 12},
-  [2740] = {.lex_state = 54, .external_lex_state = 15},
-  [2741] = {.lex_state = 54, .external_lex_state = 15},
-  [2742] = {.lex_state = 54, .external_lex_state = 14},
-  [2743] = {.lex_state = 54, .external_lex_state = 12},
-  [2744] = {.lex_state = 54, .external_lex_state = 13},
-  [2745] = {.lex_state = 54, .external_lex_state = 13},
-  [2746] = {.lex_state = 54, .external_lex_state = 13},
-  [2747] = {.lex_state = 54, .external_lex_state = 13},
-  [2748] = {.lex_state = 54, .external_lex_state = 12},
-  [2749] = {.lex_state = 54, .external_lex_state = 13},
-  [2750] = {.lex_state = 54, .external_lex_state = 13},
-  [2751] = {.lex_state = 54, .external_lex_state = 13},
-  [2752] = {.lex_state = 54, .external_lex_state = 13},
-  [2753] = {.lex_state = 54, .external_lex_state = 13},
-  [2754] = {.lex_state = 54, .external_lex_state = 14},
-  [2755] = {.lex_state = 54, .external_lex_state = 12},
-  [2756] = {.lex_state = 54, .external_lex_state = 13},
-  [2757] = {.lex_state = 54, .external_lex_state = 13},
-  [2758] = {.lex_state = 54, .external_lex_state = 13},
-  [2759] = {.lex_state = 54, .external_lex_state = 13},
-  [2760] = {.lex_state = 54, .external_lex_state = 14},
-  [2761] = {.lex_state = 54, .external_lex_state = 13},
-  [2762] = {.lex_state = 54, .external_lex_state = 15},
-  [2763] = {.lex_state = 54, .external_lex_state = 14},
-  [2764] = {.lex_state = 54, .external_lex_state = 15},
-  [2765] = {.lex_state = 54, .external_lex_state = 12},
-  [2766] = {.lex_state = 54, .external_lex_state = 12},
-  [2767] = {.lex_state = 54, .external_lex_state = 15},
-  [2768] = {.lex_state = 54, .external_lex_state = 13},
-  [2769] = {.lex_state = 54, .external_lex_state = 14},
-  [2770] = {.lex_state = 54, .external_lex_state = 12},
-  [2771] = {.lex_state = 54, .external_lex_state = 14},
-  [2772] = {.lex_state = 54, .external_lex_state = 13},
-  [2773] = {.lex_state = 54, .external_lex_state = 14},
-  [2774] = {.lex_state = 54, .external_lex_state = 14},
-  [2775] = {.lex_state = 54, .external_lex_state = 14},
-  [2776] = {.lex_state = 54, .external_lex_state = 13},
-  [2777] = {.lex_state = 54, .external_lex_state = 13},
-  [2778] = {.lex_state = 54, .external_lex_state = 13},
-  [2779] = {.lex_state = 29, .external_lex_state = 13},
-  [2780] = {.lex_state = 54, .external_lex_state = 14},
-  [2781] = {.lex_state = 54, .external_lex_state = 14},
-  [2782] = {.lex_state = 29, .external_lex_state = 13},
-  [2783] = {.lex_state = 54, .external_lex_state = 12},
-  [2784] = {.lex_state = 54, .external_lex_state = 12},
-  [2785] = {.lex_state = 54, .external_lex_state = 12},
-  [2786] = {.lex_state = 54, .external_lex_state = 12},
-  [2787] = {.lex_state = 54, .external_lex_state = 13},
-  [2788] = {.lex_state = 54, .external_lex_state = 15},
-  [2789] = {.lex_state = 54, .external_lex_state = 13},
-  [2790] = {.lex_state = 54, .external_lex_state = 13},
-  [2791] = {.lex_state = 54, .external_lex_state = 13},
-  [2792] = {.lex_state = 54, .external_lex_state = 13},
-  [2793] = {.lex_state = 54, .external_lex_state = 14},
-  [2794] = {.lex_state = 54, .external_lex_state = 13},
-  [2795] = {.lex_state = 54, .external_lex_state = 13},
-  [2796] = {.lex_state = 54, .external_lex_state = 13},
-  [2797] = {.lex_state = 54, .external_lex_state = 13},
-  [2798] = {.lex_state = 54, .external_lex_state = 12},
-  [2799] = {.lex_state = 54, .external_lex_state = 15},
-  [2800] = {.lex_state = 54, .external_lex_state = 13},
-  [2801] = {.lex_state = 54, .external_lex_state = 13},
-  [2802] = {.lex_state = 54, .external_lex_state = 13},
-  [2803] = {.lex_state = 29, .external_lex_state = 13},
-  [2804] = {.lex_state = 54, .external_lex_state = 13},
-  [2805] = {.lex_state = 54, .external_lex_state = 13},
-  [2806] = {.lex_state = 54, .external_lex_state = 13},
-  [2807] = {.lex_state = 54, .external_lex_state = 13},
-  [2808] = {.lex_state = 54, .external_lex_state = 13},
-  [2809] = {.lex_state = 54, .external_lex_state = 12},
-  [2810] = {.lex_state = 54, .external_lex_state = 13},
-  [2811] = {.lex_state = 54, .external_lex_state = 13},
-  [2812] = {.lex_state = 54, .external_lex_state = 13},
-  [2813] = {.lex_state = 54, .external_lex_state = 12},
-  [2814] = {.lex_state = 54, .external_lex_state = 12},
-  [2815] = {.lex_state = 54, .external_lex_state = 13},
-  [2816] = {.lex_state = 54, .external_lex_state = 12},
-  [2817] = {.lex_state = 54, .external_lex_state = 15},
-  [2818] = {.lex_state = 54, .external_lex_state = 15},
-  [2819] = {.lex_state = 54, .external_lex_state = 12},
-  [2820] = {.lex_state = 54, .external_lex_state = 13},
-  [2821] = {.lex_state = 54, .external_lex_state = 13},
-  [2822] = {.lex_state = 54, .external_lex_state = 13},
-  [2823] = {.lex_state = 54, .external_lex_state = 13},
-  [2824] = {.lex_state = 54, .external_lex_state = 13},
-  [2825] = {.lex_state = 54, .external_lex_state = 13},
-  [2826] = {.lex_state = 54, .external_lex_state = 14},
-  [2827] = {.lex_state = 54, .external_lex_state = 13},
-  [2828] = {.lex_state = 54, .external_lex_state = 13},
-  [2829] = {.lex_state = 54, .external_lex_state = 15},
-  [2830] = {.lex_state = 29, .external_lex_state = 13},
+  [2465] = {.lex_state = 52, .external_lex_state = 14},
+  [2466] = {.lex_state = 52, .external_lex_state = 14},
+  [2467] = {.lex_state = 52, .external_lex_state = 15},
+  [2468] = {.lex_state = 52, .external_lex_state = 14},
+  [2469] = {.lex_state = 52, .external_lex_state = 9},
+  [2470] = {.lex_state = 52, .external_lex_state = 12},
+  [2471] = {.lex_state = 52, .external_lex_state = 14},
+  [2472] = {.lex_state = 52, .external_lex_state = 9},
+  [2473] = {.lex_state = 52, .external_lex_state = 14},
+  [2474] = {.lex_state = 52, .external_lex_state = 14},
+  [2475] = {.lex_state = 52, .external_lex_state = 15},
+  [2476] = {.lex_state = 52, .external_lex_state = 12},
+  [2477] = {.lex_state = 52, .external_lex_state = 9},
+  [2478] = {.lex_state = 52, .external_lex_state = 12},
+  [2479] = {.lex_state = 52, .external_lex_state = 14},
+  [2480] = {.lex_state = 52, .external_lex_state = 9},
+  [2481] = {.lex_state = 52, .external_lex_state = 9},
+  [2482] = {.lex_state = 52, .external_lex_state = 14},
+  [2483] = {.lex_state = 52, .external_lex_state = 19},
+  [2484] = {.lex_state = 52, .external_lex_state = 15},
+  [2485] = {.lex_state = 52, .external_lex_state = 15},
+  [2486] = {.lex_state = 52, .external_lex_state = 15},
+  [2487] = {.lex_state = 52, .external_lex_state = 14},
+  [2488] = {.lex_state = 52, .external_lex_state = 12},
+  [2489] = {.lex_state = 52, .external_lex_state = 12},
+  [2490] = {.lex_state = 52, .external_lex_state = 14},
+  [2491] = {.lex_state = 52, .external_lex_state = 13},
+  [2492] = {.lex_state = 52, .external_lex_state = 15},
+  [2493] = {.lex_state = 52, .external_lex_state = 12},
+  [2494] = {.lex_state = 52, .external_lex_state = 13},
+  [2495] = {.lex_state = 52, .external_lex_state = 14},
+  [2496] = {.lex_state = 52, .external_lex_state = 14},
+  [2497] = {.lex_state = 52, .external_lex_state = 14},
+  [2498] = {.lex_state = 52, .external_lex_state = 15},
+  [2499] = {.lex_state = 52, .external_lex_state = 15},
+  [2500] = {.lex_state = 52, .external_lex_state = 14},
+  [2501] = {.lex_state = 52, .external_lex_state = 14},
+  [2502] = {.lex_state = 52, .external_lex_state = 9},
+  [2503] = {.lex_state = 52, .external_lex_state = 13},
+  [2504] = {.lex_state = 52, .external_lex_state = 14},
+  [2505] = {.lex_state = 52, .external_lex_state = 13},
+  [2506] = {.lex_state = 52, .external_lex_state = 14},
+  [2507] = {.lex_state = 52, .external_lex_state = 13},
+  [2508] = {.lex_state = 52, .external_lex_state = 15},
+  [2509] = {.lex_state = 52, .external_lex_state = 15},
+  [2510] = {.lex_state = 52, .external_lex_state = 12},
+  [2511] = {.lex_state = 52, .external_lex_state = 12},
+  [2512] = {.lex_state = 52, .external_lex_state = 13},
+  [2513] = {.lex_state = 52, .external_lex_state = 9},
+  [2514] = {.lex_state = 52, .external_lex_state = 14},
+  [2515] = {.lex_state = 52, .external_lex_state = 14},
+  [2516] = {.lex_state = 52, .external_lex_state = 15},
+  [2517] = {.lex_state = 52, .external_lex_state = 12},
+  [2518] = {.lex_state = 52, .external_lex_state = 12},
+  [2519] = {.lex_state = 52, .external_lex_state = 14},
+  [2520] = {.lex_state = 52, .external_lex_state = 14},
+  [2521] = {.lex_state = 52, .external_lex_state = 15},
+  [2522] = {.lex_state = 52, .external_lex_state = 9},
+  [2523] = {.lex_state = 52, .external_lex_state = 14},
+  [2524] = {.lex_state = 52, .external_lex_state = 14},
+  [2525] = {.lex_state = 52, .external_lex_state = 14},
+  [2526] = {.lex_state = 52, .external_lex_state = 15},
+  [2527] = {.lex_state = 52, .external_lex_state = 14},
+  [2528] = {.lex_state = 52, .external_lex_state = 18},
+  [2529] = {.lex_state = 52, .external_lex_state = 9},
+  [2530] = {.lex_state = 52, .external_lex_state = 13},
+  [2531] = {.lex_state = 52, .external_lex_state = 18},
+  [2532] = {.lex_state = 52, .external_lex_state = 13},
+  [2533] = {.lex_state = 52, .external_lex_state = 9},
+  [2534] = {.lex_state = 52, .external_lex_state = 18},
+  [2535] = {.lex_state = 52, .external_lex_state = 12},
+  [2536] = {.lex_state = 52, .external_lex_state = 18},
+  [2537] = {.lex_state = 52, .external_lex_state = 9},
+  [2538] = {.lex_state = 9, .external_lex_state = 13},
+  [2539] = {.lex_state = 52, .external_lex_state = 13},
+  [2540] = {.lex_state = 52, .external_lex_state = 9},
+  [2541] = {.lex_state = 52, .external_lex_state = 9},
+  [2542] = {.lex_state = 52, .external_lex_state = 13},
+  [2543] = {.lex_state = 52, .external_lex_state = 13},
+  [2544] = {.lex_state = 52, .external_lex_state = 9},
+  [2545] = {.lex_state = 52, .external_lex_state = 18},
+  [2546] = {.lex_state = 52, .external_lex_state = 15},
+  [2547] = {.lex_state = 52, .external_lex_state = 18},
+  [2548] = {.lex_state = 52, .external_lex_state = 18},
+  [2549] = {.lex_state = 52, .external_lex_state = 13},
+  [2550] = {.lex_state = 52, .external_lex_state = 18},
+  [2551] = {.lex_state = 52, .external_lex_state = 9},
+  [2552] = {.lex_state = 52, .external_lex_state = 13},
+  [2553] = {.lex_state = 52, .external_lex_state = 9},
+  [2554] = {.lex_state = 52, .external_lex_state = 14},
+  [2555] = {.lex_state = 52, .external_lex_state = 18},
+  [2556] = {.lex_state = 52, .external_lex_state = 14},
+  [2557] = {.lex_state = 52, .external_lex_state = 9},
+  [2558] = {.lex_state = 52, .external_lex_state = 18},
+  [2559] = {.lex_state = 52, .external_lex_state = 9},
+  [2560] = {.lex_state = 52, .external_lex_state = 18},
+  [2561] = {.lex_state = 52, .external_lex_state = 13},
+  [2562] = {.lex_state = 52, .external_lex_state = 18},
+  [2563] = {.lex_state = 52, .external_lex_state = 13},
+  [2564] = {.lex_state = 52, .external_lex_state = 14},
+  [2565] = {.lex_state = 52, .external_lex_state = 13},
+  [2566] = {.lex_state = 52, .external_lex_state = 13},
+  [2567] = {.lex_state = 52, .external_lex_state = 18},
+  [2568] = {.lex_state = 52, .external_lex_state = 13},
+  [2569] = {.lex_state = 52, .external_lex_state = 18},
+  [2570] = {.lex_state = 52, .external_lex_state = 14},
+  [2571] = {.lex_state = 52, .external_lex_state = 15},
+  [2572] = {.lex_state = 9, .external_lex_state = 13},
+  [2573] = {.lex_state = 52, .external_lex_state = 14},
+  [2574] = {.lex_state = 52, .external_lex_state = 14},
+  [2575] = {.lex_state = 52, .external_lex_state = 13},
+  [2576] = {.lex_state = 52, .external_lex_state = 14},
+  [2577] = {.lex_state = 52, .external_lex_state = 13},
+  [2578] = {.lex_state = 52, .external_lex_state = 14},
+  [2579] = {.lex_state = 52, .external_lex_state = 14},
+  [2580] = {.lex_state = 52, .external_lex_state = 15},
+  [2581] = {.lex_state = 9, .external_lex_state = 13},
+  [2582] = {.lex_state = 9, .external_lex_state = 13},
+  [2583] = {.lex_state = 52, .external_lex_state = 13},
+  [2584] = {.lex_state = 9, .external_lex_state = 13},
+  [2585] = {.lex_state = 52, .external_lex_state = 15},
+  [2586] = {.lex_state = 9, .external_lex_state = 13},
+  [2587] = {.lex_state = 9, .external_lex_state = 13},
+  [2588] = {.lex_state = 52, .external_lex_state = 13},
+  [2589] = {.lex_state = 52, .external_lex_state = 14},
+  [2590] = {.lex_state = 9, .external_lex_state = 13},
+  [2591] = {.lex_state = 52, .external_lex_state = 18},
+  [2592] = {.lex_state = 52, .external_lex_state = 9},
+  [2593] = {.lex_state = 52, .external_lex_state = 18},
+  [2594] = {.lex_state = 52, .external_lex_state = 9},
+  [2595] = {.lex_state = 52, .external_lex_state = 12},
+  [2596] = {.lex_state = 52, .external_lex_state = 18},
+  [2597] = {.lex_state = 52, .external_lex_state = 13},
+  [2598] = {.lex_state = 52, .external_lex_state = 18},
+  [2599] = {.lex_state = 52, .external_lex_state = 14},
+  [2600] = {.lex_state = 52, .external_lex_state = 15},
+  [2601] = {.lex_state = 52, .external_lex_state = 13},
+  [2602] = {.lex_state = 52, .external_lex_state = 14},
+  [2603] = {.lex_state = 52, .external_lex_state = 15},
+  [2604] = {.lex_state = 9, .external_lex_state = 13},
+  [2605] = {.lex_state = 52, .external_lex_state = 13},
+  [2606] = {.lex_state = 52, .external_lex_state = 9},
+  [2607] = {.lex_state = 52, .external_lex_state = 9},
+  [2608] = {.lex_state = 52, .external_lex_state = 14},
+  [2609] = {.lex_state = 52, .external_lex_state = 9},
+  [2610] = {.lex_state = 9, .external_lex_state = 13},
+  [2611] = {.lex_state = 52, .external_lex_state = 14},
+  [2612] = {.lex_state = 52, .external_lex_state = 12},
+  [2613] = {.lex_state = 52, .external_lex_state = 13},
+  [2614] = {.lex_state = 52, .external_lex_state = 12},
+  [2615] = {.lex_state = 52, .external_lex_state = 9},
+  [2616] = {.lex_state = 52, .external_lex_state = 14},
+  [2617] = {.lex_state = 52, .external_lex_state = 13},
+  [2618] = {.lex_state = 52, .external_lex_state = 13},
+  [2619] = {.lex_state = 52, .external_lex_state = 13},
+  [2620] = {.lex_state = 52, .external_lex_state = 15},
+  [2621] = {.lex_state = 52, .external_lex_state = 9},
+  [2622] = {.lex_state = 52, .external_lex_state = 9},
+  [2623] = {.lex_state = 52, .external_lex_state = 13},
+  [2624] = {.lex_state = 52, .external_lex_state = 15},
+  [2625] = {.lex_state = 52, .external_lex_state = 13},
+  [2626] = {.lex_state = 52, .external_lex_state = 13},
+  [2627] = {.lex_state = 52, .external_lex_state = 15},
+  [2628] = {.lex_state = 52, .external_lex_state = 12},
+  [2629] = {.lex_state = 4, .external_lex_state = 13},
+  [2630] = {.lex_state = 52, .external_lex_state = 14},
+  [2631] = {.lex_state = 52, .external_lex_state = 12},
+  [2632] = {.lex_state = 52, .external_lex_state = 13},
+  [2633] = {.lex_state = 4, .external_lex_state = 13},
+  [2634] = {.lex_state = 52, .external_lex_state = 15},
+  [2635] = {.lex_state = 52, .external_lex_state = 13},
+  [2636] = {.lex_state = 52, .external_lex_state = 13},
+  [2637] = {.lex_state = 52, .external_lex_state = 14},
+  [2638] = {.lex_state = 52, .external_lex_state = 13},
+  [2639] = {.lex_state = 52, .external_lex_state = 13},
+  [2640] = {.lex_state = 52, .external_lex_state = 15},
+  [2641] = {.lex_state = 52, .external_lex_state = 12},
+  [2642] = {.lex_state = 52, .external_lex_state = 13},
+  [2643] = {.lex_state = 52, .external_lex_state = 12},
+  [2644] = {.lex_state = 52, .external_lex_state = 12},
+  [2645] = {.lex_state = 52, .external_lex_state = 13},
+  [2646] = {.lex_state = 52, .external_lex_state = 13},
+  [2647] = {.lex_state = 52, .external_lex_state = 12},
+  [2648] = {.lex_state = 52, .external_lex_state = 13},
+  [2649] = {.lex_state = 52, .external_lex_state = 13},
+  [2650] = {.lex_state = 52, .external_lex_state = 13},
+  [2651] = {.lex_state = 52, .external_lex_state = 14},
+  [2652] = {.lex_state = 52, .external_lex_state = 15},
+  [2653] = {.lex_state = 52, .external_lex_state = 13},
+  [2654] = {.lex_state = 52, .external_lex_state = 14},
+  [2655] = {.lex_state = 52, .external_lex_state = 12},
+  [2656] = {.lex_state = 52, .external_lex_state = 12},
+  [2657] = {.lex_state = 52, .external_lex_state = 13},
+  [2658] = {.lex_state = 52, .external_lex_state = 13},
+  [2659] = {.lex_state = 52, .external_lex_state = 14},
+  [2660] = {.lex_state = 52, .external_lex_state = 13},
+  [2661] = {.lex_state = 52, .external_lex_state = 15},
+  [2662] = {.lex_state = 52, .external_lex_state = 12},
+  [2663] = {.lex_state = 52, .external_lex_state = 14},
+  [2664] = {.lex_state = 52, .external_lex_state = 14},
+  [2665] = {.lex_state = 52, .external_lex_state = 14},
+  [2666] = {.lex_state = 52, .external_lex_state = 12},
+  [2667] = {.lex_state = 52, .external_lex_state = 12},
+  [2668] = {.lex_state = 52, .external_lex_state = 12},
+  [2669] = {.lex_state = 52, .external_lex_state = 12},
+  [2670] = {.lex_state = 52, .external_lex_state = 13},
+  [2671] = {.lex_state = 52, .external_lex_state = 13},
+  [2672] = {.lex_state = 52, .external_lex_state = 15},
+  [2673] = {.lex_state = 52, .external_lex_state = 13},
+  [2674] = {.lex_state = 52, .external_lex_state = 14},
+  [2675] = {.lex_state = 52, .external_lex_state = 13},
+  [2676] = {.lex_state = 52, .external_lex_state = 13},
+  [2677] = {.lex_state = 52, .external_lex_state = 14},
+  [2678] = {.lex_state = 52, .external_lex_state = 13},
+  [2679] = {.lex_state = 52, .external_lex_state = 12},
+  [2680] = {.lex_state = 52, .external_lex_state = 14},
+  [2681] = {.lex_state = 52, .external_lex_state = 13},
+  [2682] = {.lex_state = 52, .external_lex_state = 12},
+  [2683] = {.lex_state = 52, .external_lex_state = 13},
+  [2684] = {.lex_state = 52, .external_lex_state = 13},
+  [2685] = {.lex_state = 4, .external_lex_state = 13},
+  [2686] = {.lex_state = 52, .external_lex_state = 13},
+  [2687] = {.lex_state = 52, .external_lex_state = 12},
+  [2688] = {.lex_state = 52, .external_lex_state = 12},
+  [2689] = {.lex_state = 52, .external_lex_state = 14},
+  [2690] = {.lex_state = 52, .external_lex_state = 13},
+  [2691] = {.lex_state = 52, .external_lex_state = 15},
+  [2692] = {.lex_state = 52, .external_lex_state = 14},
+  [2693] = {.lex_state = 52, .external_lex_state = 13},
+  [2694] = {.lex_state = 52, .external_lex_state = 13},
+  [2695] = {.lex_state = 52, .external_lex_state = 15},
+  [2696] = {.lex_state = 52, .external_lex_state = 13},
+  [2697] = {.lex_state = 52, .external_lex_state = 13},
+  [2698] = {.lex_state = 52, .external_lex_state = 14},
+  [2699] = {.lex_state = 52, .external_lex_state = 15},
+  [2700] = {.lex_state = 52, .external_lex_state = 14},
+  [2701] = {.lex_state = 52, .external_lex_state = 13},
+  [2702] = {.lex_state = 4, .external_lex_state = 13},
+  [2703] = {.lex_state = 52, .external_lex_state = 14},
+  [2704] = {.lex_state = 52, .external_lex_state = 13},
+  [2705] = {.lex_state = 52, .external_lex_state = 12},
+  [2706] = {.lex_state = 52, .external_lex_state = 13},
+  [2707] = {.lex_state = 52, .external_lex_state = 14},
+  [2708] = {.lex_state = 52, .external_lex_state = 13},
+  [2709] = {.lex_state = 52, .external_lex_state = 13},
+  [2710] = {.lex_state = 52, .external_lex_state = 13},
+  [2711] = {.lex_state = 52, .external_lex_state = 13},
+  [2712] = {.lex_state = 52, .external_lex_state = 14},
+  [2713] = {.lex_state = 52, .external_lex_state = 13},
+  [2714] = {.lex_state = 52, .external_lex_state = 13},
+  [2715] = {.lex_state = 52, .external_lex_state = 13},
+  [2716] = {.lex_state = 52, .external_lex_state = 13},
+  [2717] = {.lex_state = 52, .external_lex_state = 13},
+  [2718] = {.lex_state = 52, .external_lex_state = 13},
+  [2719] = {.lex_state = 52, .external_lex_state = 12},
+  [2720] = {.lex_state = 52, .external_lex_state = 13},
+  [2721] = {.lex_state = 52, .external_lex_state = 13},
+  [2722] = {.lex_state = 52, .external_lex_state = 12},
+  [2723] = {.lex_state = 52, .external_lex_state = 13},
+  [2724] = {.lex_state = 52, .external_lex_state = 12},
+  [2725] = {.lex_state = 52, .external_lex_state = 13},
+  [2726] = {.lex_state = 52, .external_lex_state = 15},
+  [2727] = {.lex_state = 52, .external_lex_state = 12},
+  [2728] = {.lex_state = 52, .external_lex_state = 13},
+  [2729] = {.lex_state = 52, .external_lex_state = 13},
+  [2730] = {.lex_state = 52, .external_lex_state = 12},
+  [2731] = {.lex_state = 52, .external_lex_state = 13},
+  [2732] = {.lex_state = 52, .external_lex_state = 13},
+  [2733] = {.lex_state = 52, .external_lex_state = 13},
+  [2734] = {.lex_state = 52, .external_lex_state = 13},
+  [2735] = {.lex_state = 52, .external_lex_state = 14},
+  [2736] = {.lex_state = 52, .external_lex_state = 15},
+  [2737] = {.lex_state = 52, .external_lex_state = 12},
+  [2738] = {.lex_state = 52, .external_lex_state = 15},
+  [2739] = {.lex_state = 52, .external_lex_state = 12},
+  [2740] = {.lex_state = 52, .external_lex_state = 15},
+  [2741] = {.lex_state = 52, .external_lex_state = 15},
+  [2742] = {.lex_state = 52, .external_lex_state = 14},
+  [2743] = {.lex_state = 52, .external_lex_state = 12},
+  [2744] = {.lex_state = 52, .external_lex_state = 13},
+  [2745] = {.lex_state = 52, .external_lex_state = 13},
+  [2746] = {.lex_state = 52, .external_lex_state = 13},
+  [2747] = {.lex_state = 52, .external_lex_state = 13},
+  [2748] = {.lex_state = 52, .external_lex_state = 12},
+  [2749] = {.lex_state = 52, .external_lex_state = 13},
+  [2750] = {.lex_state = 52, .external_lex_state = 13},
+  [2751] = {.lex_state = 52, .external_lex_state = 13},
+  [2752] = {.lex_state = 52, .external_lex_state = 13},
+  [2753] = {.lex_state = 52, .external_lex_state = 13},
+  [2754] = {.lex_state = 52, .external_lex_state = 14},
+  [2755] = {.lex_state = 52, .external_lex_state = 12},
+  [2756] = {.lex_state = 52, .external_lex_state = 13},
+  [2757] = {.lex_state = 52, .external_lex_state = 13},
+  [2758] = {.lex_state = 52, .external_lex_state = 13},
+  [2759] = {.lex_state = 52, .external_lex_state = 13},
+  [2760] = {.lex_state = 52, .external_lex_state = 14},
+  [2761] = {.lex_state = 52, .external_lex_state = 13},
+  [2762] = {.lex_state = 52, .external_lex_state = 15},
+  [2763] = {.lex_state = 52, .external_lex_state = 14},
+  [2764] = {.lex_state = 52, .external_lex_state = 15},
+  [2765] = {.lex_state = 52, .external_lex_state = 12},
+  [2766] = {.lex_state = 52, .external_lex_state = 12},
+  [2767] = {.lex_state = 52, .external_lex_state = 15},
+  [2768] = {.lex_state = 52, .external_lex_state = 13},
+  [2769] = {.lex_state = 52, .external_lex_state = 14},
+  [2770] = {.lex_state = 52, .external_lex_state = 12},
+  [2771] = {.lex_state = 52, .external_lex_state = 14},
+  [2772] = {.lex_state = 52, .external_lex_state = 13},
+  [2773] = {.lex_state = 52, .external_lex_state = 14},
+  [2774] = {.lex_state = 52, .external_lex_state = 14},
+  [2775] = {.lex_state = 52, .external_lex_state = 14},
+  [2776] = {.lex_state = 52, .external_lex_state = 13},
+  [2777] = {.lex_state = 52, .external_lex_state = 13},
+  [2778] = {.lex_state = 52, .external_lex_state = 13},
+  [2779] = {.lex_state = 4, .external_lex_state = 13},
+  [2780] = {.lex_state = 52, .external_lex_state = 14},
+  [2781] = {.lex_state = 52, .external_lex_state = 14},
+  [2782] = {.lex_state = 4, .external_lex_state = 13},
+  [2783] = {.lex_state = 52, .external_lex_state = 12},
+  [2784] = {.lex_state = 52, .external_lex_state = 12},
+  [2785] = {.lex_state = 52, .external_lex_state = 12},
+  [2786] = {.lex_state = 52, .external_lex_state = 12},
+  [2787] = {.lex_state = 52, .external_lex_state = 13},
+  [2788] = {.lex_state = 52, .external_lex_state = 15},
+  [2789] = {.lex_state = 52, .external_lex_state = 13},
+  [2790] = {.lex_state = 52, .external_lex_state = 13},
+  [2791] = {.lex_state = 52, .external_lex_state = 13},
+  [2792] = {.lex_state = 52, .external_lex_state = 13},
+  [2793] = {.lex_state = 52, .external_lex_state = 14},
+  [2794] = {.lex_state = 52, .external_lex_state = 13},
+  [2795] = {.lex_state = 52, .external_lex_state = 13},
+  [2796] = {.lex_state = 52, .external_lex_state = 13},
+  [2797] = {.lex_state = 52, .external_lex_state = 13},
+  [2798] = {.lex_state = 52, .external_lex_state = 12},
+  [2799] = {.lex_state = 52, .external_lex_state = 15},
+  [2800] = {.lex_state = 52, .external_lex_state = 13},
+  [2801] = {.lex_state = 52, .external_lex_state = 13},
+  [2802] = {.lex_state = 52, .external_lex_state = 13},
+  [2803] = {.lex_state = 4, .external_lex_state = 13},
+  [2804] = {.lex_state = 52, .external_lex_state = 13},
+  [2805] = {.lex_state = 52, .external_lex_state = 13},
+  [2806] = {.lex_state = 52, .external_lex_state = 13},
+  [2807] = {.lex_state = 52, .external_lex_state = 13},
+  [2808] = {.lex_state = 52, .external_lex_state = 13},
+  [2809] = {.lex_state = 52, .external_lex_state = 12},
+  [2810] = {.lex_state = 52, .external_lex_state = 13},
+  [2811] = {.lex_state = 52, .external_lex_state = 13},
+  [2812] = {.lex_state = 52, .external_lex_state = 13},
+  [2813] = {.lex_state = 52, .external_lex_state = 12},
+  [2814] = {.lex_state = 52, .external_lex_state = 12},
+  [2815] = {.lex_state = 52, .external_lex_state = 13},
+  [2816] = {.lex_state = 52, .external_lex_state = 12},
+  [2817] = {.lex_state = 52, .external_lex_state = 15},
+  [2818] = {.lex_state = 52, .external_lex_state = 15},
+  [2819] = {.lex_state = 52, .external_lex_state = 12},
+  [2820] = {.lex_state = 52, .external_lex_state = 13},
+  [2821] = {.lex_state = 52, .external_lex_state = 13},
+  [2822] = {.lex_state = 52, .external_lex_state = 13},
+  [2823] = {.lex_state = 52, .external_lex_state = 13},
+  [2824] = {.lex_state = 52, .external_lex_state = 13},
+  [2825] = {.lex_state = 52, .external_lex_state = 13},
+  [2826] = {.lex_state = 52, .external_lex_state = 14},
+  [2827] = {.lex_state = 52, .external_lex_state = 13},
+  [2828] = {.lex_state = 52, .external_lex_state = 13},
+  [2829] = {.lex_state = 52, .external_lex_state = 15},
+  [2830] = {.lex_state = 4, .external_lex_state = 13},
 };
 
 static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = {
@@ -131026,7 +128597,7 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(),
   [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(),
   [5] = {.entry = {.count = 1, .reusable = false}}, SHIFT_EXTRA(),
-  [7] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 0),
+  [7] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 0, 0, 0),
   [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(619),
   [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2267),
   [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1906),
@@ -131083,79 +128654,79 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [115] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2273),
   [117] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2426),
   [119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(697),
-  [121] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 1),
+  [121] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 1, 0, 0),
   [123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(652),
-  [125] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(619),
-  [128] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(2267),
-  [131] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1906),
-  [134] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(191),
-  [137] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(956),
-  [140] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(83),
-  [143] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(605),
-  [146] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(385),
-  [149] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(478),
-  [152] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(350),
-  [155] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(2537),
-  [158] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(2540),
-  [161] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(2541),
-  [164] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(580),
-  [167] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(86),
-  [170] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(476),
-  [173] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(729),
-  [176] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(583),
-  [179] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(2795),
-  [182] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(427),
-  [185] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(2820),
-  [188] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(2802),
-  [191] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(2731),
-  [194] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(470),
-  [197] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(74),
-  [200] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(2797),
-  [203] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(196),
-  [206] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(582),
-  [209] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(879),
-  [212] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(197),
-  [215] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(581),
-  [218] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1659),
-  [221] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(353),
-  [224] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1057),
-  [227] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1057),
-  [230] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(154),
-  [233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2),
-  [235] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(1764),
+  [125] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(619),
+  [128] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(2267),
+  [131] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1906),
+  [134] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(191),
+  [137] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(956),
+  [140] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(83),
+  [143] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(605),
+  [146] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(385),
+  [149] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(478),
+  [152] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(350),
+  [155] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(2537),
+  [158] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(2540),
+  [161] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(2541),
+  [164] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(580),
+  [167] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(86),
+  [170] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(476),
+  [173] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(729),
+  [176] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(583),
+  [179] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(2795),
+  [182] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(427),
+  [185] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(2820),
+  [188] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(2802),
+  [191] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(2731),
+  [194] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(470),
+  [197] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(74),
+  [200] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(2797),
+  [203] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(196),
+  [206] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(582),
+  [209] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(879),
+  [212] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(197),
+  [215] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(581),
+  [218] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1659),
+  [221] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(353),
+  [224] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1057),
+  [227] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1057),
+  [230] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(154),
+  [233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0),
+  [235] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(1764),
   [238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(691),
   [240] = {.entry = {.count = 1, .reusable = true}}, SHIFT(683),
   [242] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2531),
-  [244] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(600),
-  [247] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(85),
-  [250] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(474),
-  [253] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(785),
-  [256] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(597),
-  [259] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(2807),
-  [262] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(419),
-  [265] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(2805),
-  [268] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2), SHIFT_REPEAT(2796),
+  [244] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(600),
+  [247] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(85),
+  [250] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(474),
+  [253] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(785),
+  [256] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(597),
+  [259] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(2807),
+  [262] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(419),
+  [265] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(2805),
+  [268] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_module_repeat1, 2, 0, 0), SHIFT_REPEAT(2796),
   [271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(665),
   [273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(667),
   [275] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1191),
-  [277] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1, .production_id = 1),
-  [279] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1, .production_id = 1),
-  [281] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, .production_id = 1), SHIFT(307),
-  [284] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_pattern, 1, .production_id = 1), REDUCE(sym_primary_expression, 1, .production_id = 1),
-  [287] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, .production_id = 1), SHIFT(968),
+  [277] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1),
+  [279] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1),
+  [281] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(307),
+  [284] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 1), REDUCE(sym_primary_expression, 1, 0, 1),
+  [287] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(968),
   [290] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1209),
-  [292] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__named_expression_lhs, 1, .production_id = 1),
-  [294] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_pattern, 1, .production_id = 1), REDUCE(sym_primary_expression, 1, .production_id = 1),
-  [297] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, .production_id = 1), SHIFT(2747),
+  [292] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__named_expression_lhs, 1, 0, 1),
+  [294] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_pattern, 1, 0, 1), REDUCE(sym_primary_expression, 1, 0, 1),
+  [297] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(2747),
   [300] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1207),
-  [302] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern, 1, .production_id = 1),
-  [304] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, .production_id = 1), SHIFT(318),
-  [307] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, .production_id = 1), SHIFT(873),
+  [302] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern, 1, 0, 1),
+  [304] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(318),
+  [307] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(873),
   [310] = {.entry = {.count = 1, .reusable = true}}, SHIFT(212),
-  [312] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, .production_id = 1), SHIFT(573),
+  [312] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(573),
   [315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(873),
   [317] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1665),
-  [319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1, .production_id = 1),
+  [319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 1),
   [321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1365),
   [323] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1365),
   [325] = {.entry = {.count = 1, .reusable = false}}, SHIFT(167),
@@ -131187,14 +128758,14 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [377] = {.entry = {.count = 1, .reusable = true}}, SHIFT(769),
   [379] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47),
   [381] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1043),
-  [383] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, .production_id = 1), SHIFT(298),
-  [386] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, .production_id = 1), SHIFT(875),
+  [383] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(298),
+  [386] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(875),
   [389] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1037),
   [391] = {.entry = {.count = 1, .reusable = false}}, SHIFT(524),
   [393] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1012),
-  [395] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, .production_id = 1), SHIFT(299),
-  [398] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, .production_id = 1), SHIFT(879),
-  [401] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, .production_id = 1), SHIFT(581),
+  [395] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(299),
+  [398] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(879),
+  [401] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), SHIFT(581),
   [404] = {.entry = {.count = 1, .reusable = false}}, SHIFT(157),
   [406] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1205),
   [408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(307),
@@ -131326,13 +128897,13 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [660] = {.entry = {.count = 1, .reusable = true}}, SHIFT(299),
   [662] = {.entry = {.count = 1, .reusable = false}}, SHIFT(879),
   [664] = {.entry = {.count = 1, .reusable = false}}, SHIFT(161),
-  [666] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat_pattern, 2, .production_id = 5),
-  [668] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, .production_id = 1), REDUCE(sym_list_splat_pattern, 2, .production_id = 5),
-  [671] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_splat_pattern, 2, .production_id = 5),
+  [666] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat_pattern, 2, 0, 5),
+  [668] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 1), REDUCE(sym_list_splat_pattern, 2, 0, 5),
+  [671] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_splat_pattern, 2, 0, 5),
   [673] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1434),
   [675] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1436),
   [677] = {.entry = {.count = 1, .reusable = false}}, SHIFT(177),
-  [679] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, .production_id = 1), REDUCE(sym_list_splat_pattern, 2, .production_id = 5),
+  [679] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 1), REDUCE(sym_list_splat_pattern, 2, 0, 5),
   [682] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1241),
   [684] = {.entry = {.count = 1, .reusable = true}}, SHIFT(293),
   [686] = {.entry = {.count = 1, .reusable = false}}, SHIFT(870),
@@ -131470,14 +129041,14 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [950] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1643),
   [952] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1399),
   [954] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1400),
-  [956] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 3),
+  [956] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 3, 0, 0),
   [958] = {.entry = {.count = 1, .reusable = true}}, SHIFT(220),
   [960] = {.entry = {.count = 1, .reusable = false}}, SHIFT(956),
   [962] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1363),
   [964] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1355),
   [966] = {.entry = {.count = 1, .reusable = true}}, SHIFT(202),
   [968] = {.entry = {.count = 1, .reusable = false}}, SHIFT(176),
-  [970] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 2),
+  [970] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern_list, 2, 0, 0),
   [972] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1226),
   [974] = {.entry = {.count = 1, .reusable = false}}, SHIFT(872),
   [976] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1340),
@@ -131545,7 +129116,7 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [1100] = {.entry = {.count = 1, .reusable = false}}, SHIFT(187),
   [1102] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1141),
   [1104] = {.entry = {.count = 1, .reusable = false}}, SHIFT(526),
-  [1106] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 1),
+  [1106] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 1, 0, 0),
   [1108] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1149),
   [1110] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1148),
   [1112] = {.entry = {.count = 1, .reusable = false}}, SHIFT(160),
@@ -131617,31 +129188,31 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [1244] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1345),
   [1246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(278),
   [1248] = {.entry = {.count = 1, .reusable = true}}, SHIFT(500),
-  [1250] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 2),
+  [1250] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 2, 0, 0),
   [1252] = {.entry = {.count = 1, .reusable = true}}, SHIFT(959),
-  [1254] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 7, .production_id = 110),
-  [1256] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 7, .production_id = 110),
+  [1254] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 7, 0, 110),
+  [1256] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 7, 0, 110),
   [1258] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1658),
-  [1260] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, .production_id = 79),
+  [1260] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, 0, 79),
   [1262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(954),
-  [1264] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 5, .production_id = 79),
+  [1264] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 5, 0, 79),
   [1266] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1674),
-  [1268] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, .production_id = 98),
-  [1270] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 6, .production_id = 98),
-  [1272] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, .production_id = 99),
-  [1274] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 6, .production_id = 99),
+  [1268] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, 0, 98),
+  [1270] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 6, 0, 98),
+  [1272] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, 0, 99),
+  [1274] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_in_clause, 6, 0, 99),
   [1276] = {.entry = {.count = 1, .reusable = true}}, SHIFT(279),
   [1278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(589),
-  [1280] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 3),
+  [1280] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 3, 0, 0),
   [1282] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1173),
   [1284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(515),
   [1286] = {.entry = {.count = 1, .reusable = true}}, SHIFT(972),
   [1288] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1667),
-  [1290] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 2),
-  [1292] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 3),
+  [1290] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 2, 0, 0),
+  [1292] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_list, 3, 0, 0),
   [1294] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1285),
   [1296] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1299),
-  [1298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 1),
+  [1298] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 1, 0, 0),
   [1300] = {.entry = {.count = 1, .reusable = false}}, SHIFT(513),
   [1302] = {.entry = {.count = 1, .reusable = true}}, SHIFT(875),
   [1304] = {.entry = {.count = 1, .reusable = false}}, SHIFT(522),
@@ -131667,19 +129238,19 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [1344] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1324),
   [1346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1511),
   [1348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1177),
-  [1350] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2),
+  [1350] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 2, 0, 0),
   [1352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(440),
   [1354] = {.entry = {.count = 1, .reusable = true}}, SHIFT(626),
-  [1356] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 1),
+  [1356] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 1, 0, 0),
   [1358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(438),
   [1360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1161),
-  [1362] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 2),
+  [1362] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 2, 0, 0),
   [1364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1074),
   [1366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1035),
-  [1368] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 3),
+  [1368] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression_list, 3, 0, 0),
   [1370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1497),
   [1372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1178),
-  [1374] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 1),
+  [1374] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 1, 0, 0),
   [1376] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1484),
   [1378] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1491),
   [1380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1492),
@@ -131694,7 +129265,7 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [1398] = {.entry = {.count = 1, .reusable = true}}, SHIFT(641),
   [1400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1426),
   [1402] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1431),
-  [1404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat_pattern, 2, .production_id = 5),
+  [1404] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat_pattern, 2, 0, 5),
   [1406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1312),
   [1408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1411),
   [1410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1446),
@@ -131705,17 +129276,17 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [1420] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2639),
   [1422] = {.entry = {.count = 1, .reusable = true}}, SHIFT(256),
   [1424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(893),
-  [1426] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 3),
-  [1428] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 2),
-  [1430] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4),
+  [1426] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 3, 0, 0),
+  [1428] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 2, 0, 0),
+  [1430] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 4, 0, 0),
   [1432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2794),
-  [1434] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3),
-  [1436] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 3),
-  [1438] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 4, .production_id = 14),
-  [1440] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 2),
-  [1442] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, .dynamic_precedence = -1, .production_id = 6),
-  [1444] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3),
-  [1446] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 4, .dynamic_precedence = -1, .production_id = 15),
+  [1434] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 3, 0, 0),
+  [1436] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 3, 0, 0),
+  [1438] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 4, 0, 14),
+  [1440] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 2, 0, 0),
+  [1442] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, -1, 6),
+  [1444] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 0),
+  [1446] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 4, -1, 15),
   [1448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2483),
   [1450] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2472),
   [1452] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1730),
@@ -131734,14 +129305,14 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [1478] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1244),
   [1480] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1248),
   [1482] = {.entry = {.count = 1, .reusable = false}}, SHIFT(171),
-  [1484] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 5, .production_id = 63),
-  [1486] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 5, .production_id = 63),
+  [1484] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 5, 0, 63),
+  [1486] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 5, 0, 63),
   [1488] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2733),
   [1490] = {.entry = {.count = 1, .reusable = true}}, SHIFT(598),
   [1492] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2704),
   [1494] = {.entry = {.count = 1, .reusable = false}}, SHIFT(464),
-  [1496] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 4, .production_id = 42),
-  [1498] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 4, .production_id = 42),
+  [1496] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 4, 0, 42),
+  [1498] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 4, 0, 42),
   [1500] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1495),
   [1502] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1493),
   [1504] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1494),
@@ -131763,95 +129334,95 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [1536] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1463),
   [1538] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1467),
   [1540] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1466),
-  [1542] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1),
-  [1544] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_pattern, 1), REDUCE(sym_primary_expression, 1),
-  [1547] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1),
-  [1549] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__named_expression_lhs, 1),
-  [1551] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_pattern, 1), REDUCE(sym_primary_expression, 1),
-  [1554] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern, 1),
+  [1542] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 0),
+  [1544] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 0), REDUCE(sym_primary_expression, 1, 0, 0),
+  [1547] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 0),
+  [1549] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__named_expression_lhs, 1, 0, 0),
+  [1551] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_pattern, 1, 0, 0), REDUCE(sym_primary_expression, 1, 0, 0),
+  [1554] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern, 1, 0, 0),
   [1556] = {.entry = {.count = 1, .reusable = true}}, SHIFT(259),
-  [1558] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1),
-  [1560] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 4, .production_id = 37),
-  [1562] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 4, .production_id = 37),
+  [1558] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 0),
+  [1560] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 4, 0, 37),
+  [1562] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 4, 0, 37),
   [1564] = {.entry = {.count = 1, .reusable = false}}, SHIFT(495),
-  [1566] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2),
-  [1568] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat1, 2),
-  [1570] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2), SHIFT_REPEAT(464),
-  [1573] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, .production_id = 57),
-  [1575] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, .production_id = 57),
+  [1566] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0),
+  [1568] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0),
+  [1570] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(464),
+  [1573] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 57),
+  [1575] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 57),
   [1577] = {.entry = {.count = 1, .reusable = false}}, SHIFT(601),
-  [1579] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, .production_id = 56),
-  [1581] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, .production_id = 56),
-  [1583] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, .production_id = 83),
-  [1585] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, .production_id = 83),
-  [1587] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2),
-  [1589] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat2, 2),
-  [1591] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat2, 2), SHIFT_REPEAT(598),
-  [1594] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2), SHIFT_REPEAT(477),
-  [1597] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat2, 2), SHIFT_REPEAT(546),
-  [1600] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_subscript, 5, .production_id = 48),
-  [1602] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_subscript, 5, .production_id = 48),
-  [1604] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat_pattern, 2),
-  [1606] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_splat_type, 2),
-  [1608] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1), REDUCE(sym_list_splat_pattern, 2),
-  [1611] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1), REDUCE(sym_list_splat_pattern, 2),
-  [1614] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_splat_pattern, 2),
-  [1616] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_splat_type, 2),
-  [1618] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 2),
-  [1620] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_tuple_pattern, 2), REDUCE(sym_tuple, 2),
-  [1623] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple, 2),
-  [1625] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 2),
-  [1627] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 2),
-  [1629] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1, .production_id = 2),
-  [1631] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_pattern, 1), REDUCE(sym_primary_expression, 1, .production_id = 2),
-  [1634] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1, .production_id = 2),
-  [1636] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 2),
-  [1638] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_list_pattern, 2), REDUCE(sym_list, 2),
-  [1641] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 2),
-  [1643] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_pattern, 2),
-  [1645] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_pattern, 2),
-  [1647] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_subscript, 5, .production_id = 72),
-  [1649] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_subscript, 5, .production_id = 72),
-  [1651] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, .production_id = 81),
-  [1653] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 2, .production_id = 81),
-  [1655] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, .production_id = 81), SHIFT_REPEAT(601),
-  [1658] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_subscript, 4, .production_id = 48),
-  [1660] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_subscript, 4, .production_id = 48),
-  [1662] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_subscript, 6, .production_id = 72),
-  [1664] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_subscript, 6, .production_id = 72),
-  [1666] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 3, .production_id = 23),
-  [1668] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 3, .production_id = 23),
-  [1670] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, .production_id = 81), SHIFT_REPEAT(495),
-  [1673] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 3),
-  [1675] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 3),
-  [1677] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 6, .production_id = 129),
-  [1679] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 6, .production_id = 129),
-  [1681] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 5),
-  [1683] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 5),
-  [1685] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 5),
-  [1687] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 5),
-  [1689] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 2),
-  [1691] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 2),
-  [1693] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 1),
-  [1695] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 1),
-  [1697] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 3, .production_id = 90),
-  [1699] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 3, .production_id = 90),
-  [1701] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 4),
-  [1703] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 4),
-  [1705] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 2),
-  [1707] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 2),
-  [1709] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 4),
-  [1711] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 4),
-  [1713] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 4, .production_id = 106),
-  [1715] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 4, .production_id = 106),
-  [1717] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 4, .production_id = 106),
-  [1719] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 4, .production_id = 106),
-  [1721] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 6, .production_id = 129),
-  [1723] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 6, .production_id = 129),
-  [1725] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 7),
-  [1727] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 7),
-  [1729] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 7),
-  [1731] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 7),
+  [1579] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 56),
+  [1581] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 56),
+  [1583] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 83),
+  [1585] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 83),
+  [1587] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0),
+  [1589] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0),
+  [1591] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), SHIFT_REPEAT(598),
+  [1594] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_try_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(477),
+  [1597] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_try_statement_repeat2, 2, 0, 0), SHIFT_REPEAT(546),
+  [1600] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_subscript, 5, 0, 48),
+  [1602] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_subscript, 5, 0, 48),
+  [1604] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat_pattern, 2, 0, 0),
+  [1606] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_splat_type, 2, 0, 0),
+  [1608] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 0), REDUCE(sym_list_splat_pattern, 2, 0, 0),
+  [1611] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 0), REDUCE(sym_list_splat_pattern, 2, 0, 0),
+  [1614] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_splat_pattern, 2, 0, 0),
+  [1616] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_splat_type, 2, 0, 0),
+  [1618] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 2, 0, 0),
+  [1620] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_tuple_pattern, 2, 0, 0), REDUCE(sym_tuple, 2, 0, 0),
+  [1623] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple, 2, 0, 0),
+  [1625] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 2, 0, 0),
+  [1627] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple_pattern, 2, 0, 0),
+  [1629] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primary_expression, 1, 0, 2),
+  [1631] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_pattern, 1, 0, 0), REDUCE(sym_primary_expression, 1, 0, 2),
+  [1634] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_primary_expression, 1, 0, 2),
+  [1636] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 2, 0, 0),
+  [1638] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_list_pattern, 2, 0, 0), REDUCE(sym_list, 2, 0, 0),
+  [1641] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 2, 0, 0),
+  [1643] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_pattern, 2, 0, 0),
+  [1645] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_pattern, 2, 0, 0),
+  [1647] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_subscript, 5, 0, 72),
+  [1649] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_subscript, 5, 0, 72),
+  [1651] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 81),
+  [1653] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 81),
+  [1655] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 81), SHIFT_REPEAT(601),
+  [1658] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_subscript, 4, 0, 48),
+  [1660] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_subscript, 4, 0, 48),
+  [1662] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_subscript, 6, 0, 72),
+  [1664] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_subscript, 6, 0, 72),
+  [1666] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_attribute, 3, 0, 23),
+  [1668] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_attribute, 3, 0, 23),
+  [1670] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 2, 0, 81), SHIFT_REPEAT(495),
+  [1673] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 3, 0, 0),
+  [1675] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 3, 0, 0),
+  [1677] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 6, 0, 129),
+  [1679] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 6, 0, 129),
+  [1681] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 5, 0, 0),
+  [1683] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 5, 0, 0),
+  [1685] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 5, 0, 0),
+  [1687] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 5, 0, 0),
+  [1689] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 2, 0, 0),
+  [1691] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 2, 0, 0),
+  [1693] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_block, 1, 0, 0),
+  [1695] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block, 1, 0, 0),
+  [1697] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 3, 0, 90),
+  [1699] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 3, 0, 90),
+  [1701] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 4, 0, 0),
+  [1703] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 4, 0, 0),
+  [1705] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__simple_statements, 2, 0, 0),
+  [1707] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_statements, 2, 0, 0),
+  [1709] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 4, 0, 0),
+  [1711] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 4, 0, 0),
+  [1713] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 4, 0, 106),
+  [1715] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 4, 0, 106),
+  [1717] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 4, 0, 106),
+  [1719] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 4, 0, 106),
+  [1721] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 6, 0, 129),
+  [1723] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 6, 0, 129),
+  [1725] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_group_clause, 7, 0, 0),
+  [1727] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_group_clause, 7, 0, 0),
+  [1729] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_except_clause, 7, 0, 0),
+  [1731] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_except_clause, 7, 0, 0),
   [1733] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1599),
   [1735] = {.entry = {.count = 1, .reusable = true}}, SHIFT(193),
   [1737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(868),
@@ -131859,28 +129430,28 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [1741] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1592),
   [1743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(214),
   [1745] = {.entry = {.count = 1, .reusable = false}}, SHIFT(328),
-  [1747] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, .production_id = 114),
-  [1749] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, .production_id = 114),
-  [1751] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, .production_id = 105),
-  [1753] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, .production_id = 105),
-  [1755] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 4, .production_id = 41),
-  [1757] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 4, .production_id = 41),
-  [1759] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 5, .production_id = 42),
-  [1761] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 5, .production_id = 42),
-  [1763] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, .production_id = 101),
-  [1765] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, .production_id = 101),
-  [1767] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 1, .production_id = 54),
-  [1769] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 1, .production_id = 54),
-  [1771] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, .production_id = 62),
-  [1773] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, .production_id = 62),
-  [1775] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elif_clause, 5, .production_id = 57),
-  [1777] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elif_clause, 5, .production_id = 57),
-  [1779] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 6, .production_id = 63),
-  [1781] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 6, .production_id = 63),
-  [1783] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 6, .production_id = 88),
-  [1785] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 6, .production_id = 88),
-  [1787] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elif_clause, 4, .production_id = 37),
-  [1789] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elif_clause, 4, .production_id = 37),
+  [1747] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, 0, 114),
+  [1749] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, 0, 114),
+  [1751] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 105),
+  [1753] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 105),
+  [1755] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 4, 0, 41),
+  [1757] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 4, 0, 41),
+  [1759] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 5, 0, 42),
+  [1761] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 5, 0, 42),
+  [1763] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 101),
+  [1765] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 101),
+  [1767] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_if_statement_repeat1, 1, 0, 54),
+  [1769] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_if_statement_repeat1, 1, 0, 54),
+  [1771] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, 0, 62),
+  [1773] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, 0, 62),
+  [1775] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elif_clause, 5, 0, 57),
+  [1777] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elif_clause, 5, 0, 57),
+  [1779] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 6, 0, 63),
+  [1781] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 6, 0, 63),
+  [1783] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 6, 0, 88),
+  [1785] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 6, 0, 88),
+  [1787] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_elif_clause, 4, 0, 37),
+  [1789] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_elif_clause, 4, 0, 37),
   [1791] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1642),
   [1793] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207),
   [1795] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2302),
@@ -131889,95 +129460,95 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [1801] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1627),
   [1803] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189),
   [1805] = {.entry = {.count = 1, .reusable = false}}, SHIFT(409),
-  [1807] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 3, .production_id = 42),
-  [1809] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 3, .production_id = 42),
-  [1811] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 4, .production_id = 63),
-  [1813] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 4, .production_id = 63),
+  [1807] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 3, 0, 42),
+  [1809] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 3, 0, 42),
+  [1811] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_else_clause, 4, 0, 63),
+  [1813] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_else_clause, 4, 0, 63),
   [1815] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2430),
-  [1817] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_block, 2),
-  [1819] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__match_block, 2),
+  [1817] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_block, 2, 0, 0),
+  [1819] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__match_block, 2, 0, 0),
   [1821] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1651),
   [1823] = {.entry = {.count = 1, .reusable = true}}, SHIFT(210),
   [1825] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1648),
   [1827] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1646),
   [1829] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211),
   [1831] = {.entry = {.count = 1, .reusable = false}}, SHIFT(413),
-  [1833] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 2),
-  [1835] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, .production_id = 108),
-  [1837] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, .production_id = 108),
-  [1839] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 7, .production_id = 109),
-  [1841] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 7, .production_id = 109),
-  [1843] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, .production_id = 91),
-  [1845] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, .production_id = 91),
-  [1847] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, .production_id = 92),
-  [1849] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, .production_id = 92),
-  [1851] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, .production_id = 61),
-  [1853] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, .production_id = 61),
-  [1855] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 5, .production_id = 60),
-  [1857] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 5, .production_id = 60),
-  [1859] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 5, .production_id = 59),
-  [1861] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 5, .production_id = 59),
-  [1863] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 5, .production_id = 58),
-  [1865] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 5, .production_id = 58),
-  [1867] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, .production_id = 55),
-  [1869] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, .production_id = 55),
-  [1871] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, .production_id = 93),
-  [1873] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, .production_id = 93),
-  [1875] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 5, .production_id = 64),
-  [1877] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 5, .production_id = 64),
-  [1879] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 5, .production_id = 65),
-  [1881] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 5, .production_id = 65),
-  [1883] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, .production_id = 66),
-  [1885] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, .production_id = 66),
-  [1887] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, .production_id = 67),
-  [1889] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, .production_id = 67),
-  [1891] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, .production_id = 68),
-  [1893] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, .production_id = 68),
-  [1895] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, .production_id = 80),
-  [1897] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, .production_id = 80),
-  [1899] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, .production_id = 82),
-  [1901] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, .production_id = 82),
-  [1903] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__match_block, 3, .production_id = 84),
-  [1905] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_block, 3, .production_id = 84),
-  [1907] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 6, .production_id = 42),
-  [1909] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 6, .production_id = 42),
-  [1911] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_finally_clause, 3, .production_id = 90),
-  [1913] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_finally_clause, 3, .production_id = 90),
-  [1915] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 6, .production_id = 85),
-  [1917] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 6, .production_id = 85),
-  [1919] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 6, .production_id = 86),
-  [1921] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 6, .production_id = 86),
-  [1923] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, .production_id = 87),
-  [1925] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, .production_id = 87),
-  [1927] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, .production_id = 94),
-  [1929] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, .production_id = 94),
-  [1931] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, .production_id = 113),
-  [1933] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, .production_id = 113),
-  [1935] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, .production_id = 115),
-  [1937] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, .production_id = 115),
-  [1939] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 6, .production_id = 89),
-  [1941] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 6, .production_id = 89),
-  [1943] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, .production_id = 116),
-  [1945] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, .production_id = 116),
-  [1947] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, .production_id = 117),
-  [1949] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, .production_id = 117),
-  [1951] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, .production_id = 118),
-  [1953] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, .production_id = 118),
-  [1955] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, .production_id = 119),
-  [1957] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, .production_id = 119),
-  [1959] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, .production_id = 95),
-  [1961] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, .production_id = 95),
-  [1963] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 4, .production_id = 44),
-  [1965] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 4, .production_id = 44),
-  [1967] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 3),
-  [1969] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 4, .production_id = 43),
-  [1971] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 4, .production_id = 43),
-  [1973] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 4, .production_id = 39),
-  [1975] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 4, .production_id = 39),
-  [1977] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__match_block, 1),
-  [1979] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_block, 1),
-  [1981] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 7, .production_id = 100),
-  [1983] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 7, .production_id = 100),
+  [1833] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 2, 0, 0),
+  [1835] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 108),
+  [1837] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 108),
+  [1839] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 7, 0, 109),
+  [1841] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 7, 0, 109),
+  [1843] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 91),
+  [1845] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 91),
+  [1847] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 92),
+  [1849] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 92),
+  [1851] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 5, 0, 61),
+  [1853] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 5, 0, 61),
+  [1855] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 5, 0, 60),
+  [1857] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 5, 0, 60),
+  [1859] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 5, 0, 59),
+  [1861] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 5, 0, 59),
+  [1863] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 5, 0, 58),
+  [1865] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 5, 0, 58),
+  [1867] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 5, 0, 55),
+  [1869] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 5, 0, 55),
+  [1871] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, 0, 93),
+  [1873] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, 0, 93),
+  [1875] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 5, 0, 64),
+  [1877] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 5, 0, 64),
+  [1879] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 5, 0, 65),
+  [1881] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 5, 0, 65),
+  [1883] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, 0, 66),
+  [1885] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, 0, 66),
+  [1887] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, 0, 67),
+  [1889] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, 0, 67),
+  [1891] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 5, 0, 68),
+  [1893] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 5, 0, 68),
+  [1895] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 80),
+  [1897] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 80),
+  [1899] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 6, 0, 82),
+  [1901] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 6, 0, 82),
+  [1903] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__match_block, 3, 0, 84),
+  [1905] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_block, 3, 0, 84),
+  [1907] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 6, 0, 42),
+  [1909] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 6, 0, 42),
+  [1911] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_finally_clause, 3, 0, 90),
+  [1913] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_finally_clause, 3, 0, 90),
+  [1915] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 6, 0, 85),
+  [1917] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 6, 0, 85),
+  [1919] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 6, 0, 86),
+  [1921] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 6, 0, 86),
+  [1923] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 6, 0, 87),
+  [1925] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 6, 0, 87),
+  [1927] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, 0, 94),
+  [1929] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, 0, 94),
+  [1931] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, 0, 113),
+  [1933] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, 0, 113),
+  [1935] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 115),
+  [1937] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 115),
+  [1939] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_while_statement, 6, 0, 89),
+  [1941] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_statement, 6, 0, 89),
+  [1943] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 116),
+  [1945] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 116),
+  [1947] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 8, 0, 117),
+  [1949] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 8, 0, 117),
+  [1951] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 118),
+  [1953] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 118),
+  [1955] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 8, 0, 119),
+  [1957] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 8, 0, 119),
+  [1959] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 6, 0, 95),
+  [1961] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 6, 0, 95),
+  [1963] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_class_definition, 4, 0, 44),
+  [1965] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_definition, 4, 0, 44),
+  [1967] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 3, 0, 0),
+  [1969] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_with_statement, 4, 0, 43),
+  [1971] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_statement, 4, 0, 43),
+  [1973] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_match_statement, 4, 0, 39),
+  [1975] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_match_statement, 4, 0, 39),
+  [1977] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__match_block, 1, 0, 0),
+  [1979] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__match_block, 1, 0, 0),
+  [1981] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_if_statement, 7, 0, 100),
+  [1983] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_statement, 7, 0, 100),
   [1985] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1622),
   [1987] = {.entry = {.count = 1, .reusable = true}}, SHIFT(217),
   [1989] = {.entry = {.count = 1, .reusable = true}}, SHIFT(890),
@@ -131985,35 +129556,35 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [1993] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1629),
   [1995] = {.entry = {.count = 1, .reusable = true}}, SHIFT(219),
   [1997] = {.entry = {.count = 1, .reusable = false}}, SHIFT(445),
-  [1999] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, .production_id = 102),
-  [2001] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, .production_id = 102),
-  [2003] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, .production_id = 107),
-  [2005] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, .production_id = 107),
-  [2007] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, .production_id = 103),
-  [2009] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, .production_id = 103),
-  [2011] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, .production_id = 104),
-  [2013] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, .production_id = 104),
-  [2015] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 9, .production_id = 126),
-  [2017] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 9, .production_id = 126),
-  [2019] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_finally_clause, 4),
-  [2021] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_finally_clause, 4),
-  [2023] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, .production_id = 128),
-  [2025] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, .production_id = 128),
-  [2027] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 7, .production_id = 63),
-  [2029] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 7, .production_id = 63),
-  [2031] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, .production_id = 127),
-  [2033] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, .production_id = 127),
-  [2035] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, .production_id = 130),
-  [2037] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, .production_id = 130),
-  [2039] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 10, .production_id = 135),
-  [2041] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 10, .production_id = 135),
-  [2043] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern_list, 3),
-  [2045] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_decorated_definition, 2, .production_id = 12),
-  [2047] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decorated_definition, 2, .production_id = 12),
-  [2049] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern_list, 2),
+  [1999] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 102),
+  [2001] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 102),
+  [2003] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 107),
+  [2005] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 107),
+  [2007] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 7, 0, 103),
+  [2009] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 7, 0, 103),
+  [2011] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 7, 0, 104),
+  [2013] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 7, 0, 104),
+  [2015] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_statement, 9, 0, 126),
+  [2017] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_for_statement, 9, 0, 126),
+  [2019] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_finally_clause, 4, 0, 0),
+  [2021] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_finally_clause, 4, 0, 0),
+  [2023] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, 0, 128),
+  [2025] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, 0, 128),
+  [2027] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_try_statement, 7, 0, 63),
+  [2029] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_try_statement, 7, 0, 63),
+  [2031] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, 0, 127),
+  [2033] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, 0, 127),
+  [2035] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 9, 0, 130),
+  [2037] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 9, 0, 130),
+  [2039] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_definition, 10, 0, 135),
+  [2041] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_definition, 10, 0, 135),
+  [2043] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern_list, 3, 0, 0),
+  [2045] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_decorated_definition, 2, 0, 12),
+  [2047] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decorated_definition, 2, 0, 12),
+  [2049] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_pattern_list, 2, 0, 0),
   [2051] = {.entry = {.count = 1, .reusable = true}}, SHIFT(952),
   [2053] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1644),
-  [2055] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_separator, 1),
+  [2055] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_separator, 1, 0, 0),
   [2057] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1625),
   [2059] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1618),
   [2061] = {.entry = {.count = 1, .reusable = false}}, SHIFT(447),
@@ -132079,16 +129650,16 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [2181] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1381),
   [2183] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1417),
   [2185] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1413),
-  [2187] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_concatenated_string, 2),
-  [2189] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_concatenated_string, 2),
-  [2191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1),
+  [2187] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_concatenated_string, 2, 0, 0),
+  [2189] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_concatenated_string, 2, 0, 0),
+  [2191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression, 1, 0, 0),
   [2193] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2808),
   [2195] = {.entry = {.count = 1, .reusable = true}}, SHIFT(248),
   [2197] = {.entry = {.count = 1, .reusable = false}}, SHIFT(934),
   [2199] = {.entry = {.count = 1, .reusable = true}}, SHIFT(933),
   [2201] = {.entry = {.count = 1, .reusable = true}}, SHIFT(932),
   [2203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(921),
-  [2205] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 1),
+  [2205] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_expression, 1, 0, 0),
   [2207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(449),
   [2209] = {.entry = {.count = 1, .reusable = true}}, SHIFT(934),
   [2211] = {.entry = {.count = 1, .reusable = true}}, SHIFT(871),
@@ -132098,18 +129669,18 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [2219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(888),
   [2221] = {.entry = {.count = 1, .reusable = false}}, SHIFT(932),
   [2223] = {.entry = {.count = 1, .reusable = true}}, SHIFT(866),
-  [2225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2),
-  [2227] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_concatenated_string_repeat1, 2),
-  [2229] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), SHIFT_REPEAT(1764),
-  [2232] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_operator, 3, .production_id = 21),
-  [2234] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_operator, 3, .production_id = 21),
-  [2236] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 24),
-  [2238] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 24),
-  [2240] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, .production_id = 49),
-  [2242] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, .production_id = 49),
-  [2244] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), SHIFT_REPEAT(1766),
-  [2247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_operator, 2, .production_id = 9),
-  [2249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_operator, 2, .production_id = 9),
+  [2225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0),
+  [2227] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0),
+  [2229] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1764),
+  [2232] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_operator, 3, 0, 21),
+  [2234] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_operator, 3, 0, 21),
+  [2236] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 24),
+  [2238] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 24),
+  [2240] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 49),
+  [2242] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 49),
+  [2244] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1766),
+  [2247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_operator, 2, 0, 9),
+  [2249] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_unary_operator, 2, 0, 9),
   [2251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2810),
   [2253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(238),
   [2255] = {.entry = {.count = 1, .reusable = false}}, SHIFT(886),
@@ -132125,8 +129696,8 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [2275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(877),
   [2277] = {.entry = {.count = 1, .reusable = false}}, SHIFT(884),
   [2279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(861),
-  [2281] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_await, 2),
-  [2283] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_await, 2),
+  [2281] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_await, 2, 0, 0),
+  [2283] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_await, 2, 0, 0),
   [2285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2710),
   [2287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(240),
   [2289] = {.entry = {.count = 1, .reusable = false}}, SHIFT(896),
@@ -132142,9 +129713,9 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [2309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(929),
   [2311] = {.entry = {.count = 1, .reusable = false}}, SHIFT(913),
   [2313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(864),
-  [2315] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), SHIFT_REPEAT(1727),
-  [2318] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, .production_id = 50),
-  [2320] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, .production_id = 50),
+  [2315] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1727),
+  [2318] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 50),
+  [2320] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 3, 0, 50),
   [2322] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2684),
   [2324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(236),
   [2326] = {.entry = {.count = 1, .reusable = false}}, SHIFT(951),
@@ -132177,7 +129748,7 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [2380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(860),
   [2382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2720),
   [2384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(414),
-  [2386] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), SHIFT_REPEAT(1767),
+  [2386] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1767),
   [2389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2749),
   [2391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(257),
   [2393] = {.entry = {.count = 1, .reusable = false}}, SHIFT(927),
@@ -132193,10 +129764,10 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [2413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(917),
   [2415] = {.entry = {.count = 1, .reusable = false}}, SHIFT(924),
   [2417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(862),
-  [2419] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), SHIFT_REPEAT(1742),
-  [2422] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 2),
-  [2424] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 2),
-  [2426] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), SHIFT_REPEAT(1759),
+  [2419] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1742),
+  [2422] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 2, 0, 0),
+  [2424] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 2, 0, 0),
+  [2426] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1759),
   [2429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2660),
   [2431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(250),
   [2433] = {.entry = {.count = 1, .reusable = false}}, SHIFT(901),
@@ -132212,31 +129783,31 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [2453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(908),
   [2455] = {.entry = {.count = 1, .reusable = false}}, SHIFT(903),
   [2457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(863),
-  [2459] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 3),
-  [2461] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 3),
-  [2463] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), SHIFT_REPEAT(1757),
-  [2466] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 3),
-  [2468] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 3),
-  [2470] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 3),
-  [2472] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 3),
-  [2474] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 5),
-  [2476] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 5),
-  [2478] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set, 3),
-  [2480] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set, 3),
-  [2482] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3),
-  [2484] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3),
-  [2486] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 2),
-  [2488] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 2),
-  [2490] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 3),
-  [2492] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple, 3),
-  [2494] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expression, 3),
-  [2496] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expression, 3),
+  [2459] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string, 3, 0, 0),
+  [2461] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string, 3, 0, 0),
+  [2463] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1757),
+  [2466] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list, 3, 0, 0),
+  [2468] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list, 3, 0, 0),
+  [2470] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 3, 0, 0),
+  [2472] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 3, 0, 0),
+  [2474] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 5, 0, 0),
+  [2476] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 5, 0, 0),
+  [2478] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set, 3, 0, 0),
+  [2480] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set, 3, 0, 0),
+  [2482] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, 0, 0),
+  [2484] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, 0, 0),
+  [2486] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 2, 0, 0),
+  [2488] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 2, 0, 0),
+  [2490] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple, 3, 0, 0),
+  [2492] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_tuple, 3, 0, 0),
+  [2494] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_expression, 3, 0, 0),
+  [2496] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_parenthesized_expression, 3, 0, 0),
   [2498] = {.entry = {.count = 1, .reusable = false}}, SHIFT(539),
-  [2500] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_comprehension, 4, .production_id = 34),
-  [2502] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary_comprehension, 4, .production_id = 34),
+  [2500] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_comprehension, 4, 0, 34),
+  [2502] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary_comprehension, 4, 0, 34),
   [2504] = {.entry = {.count = 1, .reusable = true}}, SHIFT(237),
-  [2506] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set_comprehension, 4, .production_id = 34),
-  [2508] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set_comprehension, 4, .production_id = 34),
+  [2506] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_set_comprehension, 4, 0, 34),
+  [2508] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_set_comprehension, 4, 0, 34),
   [2510] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2683),
   [2512] = {.entry = {.count = 1, .reusable = true}}, SHIFT(247),
   [2514] = {.entry = {.count = 1, .reusable = false}}, SHIFT(936),
@@ -132252,28 +129823,28 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [2534] = {.entry = {.count = 1, .reusable = true}}, SHIFT(909),
   [2536] = {.entry = {.count = 1, .reusable = false}}, SHIFT(931),
   [2538] = {.entry = {.count = 1, .reusable = true}}, SHIFT(859),
-  [2540] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 4),
-  [2542] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 4),
-  [2544] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_comprehension, 4, .production_id = 34),
-  [2546] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_comprehension, 4, .production_id = 34),
-  [2548] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2), SHIFT_REPEAT(1736),
-  [2551] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 5, .production_id = 33),
-  [2553] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 5, .production_id = 33),
+  [2540] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 4, 0, 0),
+  [2542] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 4, 0, 0),
+  [2544] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_comprehension, 4, 0, 34),
+  [2546] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_list_comprehension, 4, 0, 34),
+  [2548] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_concatenated_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1736),
+  [2551] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 5, 0, 33),
+  [2553] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 5, 0, 33),
   [2555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(235),
-  [2557] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generator_expression, 4, .production_id = 34),
-  [2559] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generator_expression, 4, .production_id = 34),
-  [2561] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call, 2, .production_id = 10),
-  [2563] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call, 2, .production_id = 10),
-  [2565] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, .production_id = 33),
-  [2567] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, .production_id = 33),
-  [2569] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 5),
-  [2571] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 5),
-  [2573] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4),
-  [2575] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4),
-  [2577] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 2),
-  [2579] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 2),
-  [2581] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, .production_id = 33),
-  [2583] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, .production_id = 33),
+  [2557] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generator_expression, 4, 0, 34),
+  [2559] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_generator_expression, 4, 0, 34),
+  [2561] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_call, 2, 0, 10),
+  [2563] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_call, 2, 0, 10),
+  [2565] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 33),
+  [2567] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 33),
+  [2569] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 5, 0, 0),
+  [2571] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 5, 0, 0),
+  [2573] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 4, 0, 0),
+  [2575] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 4, 0, 0),
+  [2577] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary, 2, 0, 0),
+  [2579] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_dictionary, 2, 0, 0),
+  [2581] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_argument_list, 3, 0, 33),
+  [2583] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_argument_list, 3, 0, 33),
   [2585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(255),
   [2587] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1803),
   [2589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1534),
@@ -132387,50 +129958,50 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [2805] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2042),
   [2807] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2036),
   [2809] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2008),
-  [2811] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25),
-  [2813] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(932),
-  [2816] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25),
-  [2818] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(2642),
-  [2821] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(932),
-  [2824] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(866),
-  [2827] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comparison_operator, 2, .production_id = 11),
-  [2829] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comparison_operator, 2, .production_id = 11),
-  [2831] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(949),
-  [2834] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(2801),
-  [2837] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(949),
-  [2840] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(865),
-  [2843] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(961),
-  [2846] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(2728),
-  [2849] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(961),
-  [2852] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(860),
-  [2855] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(931),
-  [2858] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(2650),
-  [2861] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(931),
-  [2864] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(859),
-  [2867] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(913),
-  [2870] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(2806),
-  [2873] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(913),
-  [2876] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(864),
-  [2879] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(884),
-  [2882] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(2753),
-  [2885] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(884),
-  [2888] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(861),
-  [2891] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat_pattern, 2),
-  [2893] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(903),
-  [2896] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(2701),
-  [2899] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(903),
-  [2902] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(863),
+  [2811] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25),
+  [2813] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(932),
+  [2816] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25),
+  [2818] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(2642),
+  [2821] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(932),
+  [2824] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(866),
+  [2827] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comparison_operator, 2, 0, 11),
+  [2829] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_comparison_operator, 2, 0, 11),
+  [2831] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(949),
+  [2834] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(2801),
+  [2837] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(949),
+  [2840] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(865),
+  [2843] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(961),
+  [2846] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(2728),
+  [2849] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(961),
+  [2852] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(860),
+  [2855] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(931),
+  [2858] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(2650),
+  [2861] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(931),
+  [2864] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(859),
+  [2867] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(913),
+  [2870] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(2806),
+  [2873] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(913),
+  [2876] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(864),
+  [2879] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(884),
+  [2882] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(2753),
+  [2885] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(884),
+  [2888] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(861),
+  [2891] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat_pattern, 2, 0, 0),
+  [2893] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(903),
+  [2896] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(2701),
+  [2899] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(903),
+  [2902] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(863),
   [2905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(222),
-  [2907] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2),
-  [2909] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2), SHIFT_REPEAT(855),
-  [2912] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(924),
-  [2915] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(2681),
-  [2918] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(924),
-  [2921] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, .production_id = 25), SHIFT_REPEAT(862),
-  [2924] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_pattern, 3),
+  [2907] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 0),
+  [2909] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 0), SHIFT_REPEAT(855),
+  [2912] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(924),
+  [2915] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(2681),
+  [2918] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(924),
+  [2921] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_comparison_operator_repeat1, 2, 0, 25), SHIFT_REPEAT(862),
+  [2924] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_pattern, 3, 0, 0),
   [2926] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2693),
   [2928] = {.entry = {.count = 1, .reusable = true}}, SHIFT(432),
-  [2930] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 3),
+  [2930] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_tuple_pattern, 3, 0, 0),
   [2932] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2512),
   [2934] = {.entry = {.count = 1, .reusable = true}}, SHIFT(726),
   [2936] = {.entry = {.count = 1, .reusable = false}}, SHIFT(857),
@@ -132441,11 +130012,11 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [2946] = {.entry = {.count = 1, .reusable = true}}, SHIFT(442),
   [2948] = {.entry = {.count = 1, .reusable = true}}, SHIFT(591),
   [2950] = {.entry = {.count = 1, .reusable = true}}, SHIFT(566),
-  [2952] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2), SHIFT_REPEAT(851),
+  [2952] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 0), SHIFT_REPEAT(851),
   [2955] = {.entry = {.count = 1, .reusable = true}}, SHIFT(523),
   [2957] = {.entry = {.count = 1, .reusable = true}}, SHIFT(486),
   [2959] = {.entry = {.count = 1, .reusable = true}}, SHIFT(483),
-  [2961] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__right_hand_side, 1),
+  [2961] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__right_hand_side, 1, 0, 0),
   [2963] = {.entry = {.count = 1, .reusable = true}}, SHIFT(246),
   [2965] = {.entry = {.count = 1, .reusable = true}}, SHIFT(221),
   [2967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(216),
@@ -132461,29 +130032,29 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [2987] = {.entry = {.count = 1, .reusable = false}}, SHIFT(858),
   [2989] = {.entry = {.count = 1, .reusable = true}}, SHIFT(960),
   [2991] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2589),
-  [2993] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 3),
-  [2995] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 2),
+  [2993] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 3, 0, 0),
+  [2995] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 2, 0, 0),
   [2997] = {.entry = {.count = 1, .reusable = true}}, SHIFT(338),
   [2999] = {.entry = {.count = 1, .reusable = false}}, SHIFT(602),
   [3001] = {.entry = {.count = 1, .reusable = true}}, SHIFT(561),
   [3003] = {.entry = {.count = 1, .reusable = true}}, SHIFT(562),
   [3005] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2828),
   [3007] = {.entry = {.count = 1, .reusable = true}}, SHIFT(743),
-  [3009] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 1),
+  [3009] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__collection_elements, 1, 0, 0),
   [3011] = {.entry = {.count = 1, .reusable = true}}, SHIFT(603),
   [3013] = {.entry = {.count = 1, .reusable = true}}, SHIFT(512),
-  [3015] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_as_pattern, 3, .production_id = 22),
+  [3015] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_as_pattern, 3, 0, 22),
   [3017] = {.entry = {.count = 1, .reusable = true}}, SHIFT(484),
   [3019] = {.entry = {.count = 1, .reusable = true}}, SHIFT(485),
-  [3021] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean_operator, 3, .production_id = 21),
-  [3023] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_not_operator, 2, .production_id = 6),
-  [3025] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional_expression, 5),
+  [3021] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean_operator, 3, 0, 21),
+  [3023] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_not_operator, 2, 0, 6),
+  [3025] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_conditional_expression, 5, 0, 0),
   [3027] = {.entry = {.count = 1, .reusable = true}}, SHIFT(553),
   [3029] = {.entry = {.count = 1, .reusable = true}}, SHIFT(548),
-  [3031] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda, 4, .production_id = 47),
-  [3033] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_expression, 3, .production_id = 18),
-  [3035] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_named_expression, 3, .production_id = 18), SHIFT(553),
-  [3038] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda, 3, .production_id = 17),
+  [3031] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda, 4, 0, 47),
+  [3033] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_named_expression, 3, 0, 18),
+  [3035] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_named_expression, 3, 0, 18), SHIFT(553),
+  [3038] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda, 3, 0, 17),
   [3040] = {.entry = {.count = 1, .reusable = true}}, SHIFT(326),
   [3042] = {.entry = {.count = 1, .reusable = false}}, SHIFT(570),
   [3044] = {.entry = {.count = 1, .reusable = true}}, SHIFT(559),
@@ -132505,8 +130076,8 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [3076] = {.entry = {.count = 1, .reusable = true}}, SHIFT(342),
   [3078] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1085),
   [3080] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1195),
-  [3082] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 1),
-  [3084] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1),
+  [3082] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_expression_statement, 1, 0, 0),
+  [3084] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type, 1, 0, 0),
   [3086] = {.entry = {.count = 1, .reusable = true}}, SHIFT(452),
   [3088] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1292),
   [3090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(295),
@@ -132515,7 +130086,7 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [3096] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1468),
   [3098] = {.entry = {.count = 1, .reusable = true}}, SHIFT(322),
   [3100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1348),
-  [3102] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_with_item, 1, .dynamic_precedence = 1, .production_id = 7), SHIFT(342),
+  [3102] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_with_item, 1, 1, 7), SHIFT(342),
   [3105] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1475),
   [3107] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1335),
   [3109] = {.entry = {.count = 1, .reusable = true}}, SHIFT(303),
@@ -132540,11 +130111,11 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [3147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(343),
   [3149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(563),
   [3151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(564),
-  [3153] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__f_expression, 1),
+  [3153] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__f_expression, 1, 0, 0),
   [3155] = {.entry = {.count = 1, .reusable = true}}, SHIFT(560),
   [3157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(557),
   [3159] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1202),
-  [3161] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_named_expression, 3, .production_id = 18), SHIFT(536),
+  [3161] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_named_expression, 3, 0, 18), SHIFT(536),
   [3164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1420),
   [3166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1082),
   [3168] = {.entry = {.count = 1, .reusable = true}}, SHIFT(545),
@@ -132553,51 +130124,51 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [3174] = {.entry = {.count = 1, .reusable = true}}, SHIFT(529),
   [3176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1181),
   [3178] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2502),
-  [3180] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_named_expression, 3, .production_id = 18), SHIFT(545),
+  [3180] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_named_expression, 3, 0, 18), SHIFT(545),
   [3183] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1259),
-  [3185] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 2),
+  [3185] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 2, 0, 0),
   [3187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1410),
   [3189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1208),
   [3191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1165),
-  [3193] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2), SHIFT_REPEAT(227),
-  [3196] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2), SHIFT_REPEAT(1883),
-  [3199] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2), SHIFT_REPEAT(1883),
-  [3202] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2),
+  [3193] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2, 0, 0), SHIFT_REPEAT(227),
+  [3196] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1883),
+  [3199] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_repeat1, 2, 0, 0), SHIFT_REPEAT(1883),
+  [3202] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_repeat1, 2, 0, 0),
   [3204] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1194),
   [3206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1020),
   [3208] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1042),
   [3210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1052),
   [3212] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1260),
-  [3214] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_named_expression, 3, .production_id = 18), SHIFT(488),
+  [3214] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_named_expression, 3, 0, 18), SHIFT(488),
   [3217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(489),
   [3219] = {.entry = {.count = 1, .reusable = true}}, SHIFT(490),
-  [3221] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean_operator, 3, .production_id = 21),
-  [3223] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_named_expression, 3, .production_id = 18), SHIFT(563),
-  [3226] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dotted_name_repeat1, 2),
-  [3228] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dotted_name_repeat1, 2), SHIFT_REPEAT(2676),
-  [3231] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_as_pattern, 3, .production_id = 22),
-  [3233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2),
+  [3221] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_boolean_operator, 3, 0, 21),
+  [3223] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym_named_expression, 3, 0, 18), SHIFT(563),
+  [3226] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dotted_name_repeat1, 2, 0, 0),
+  [3228] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dotted_name_repeat1, 2, 0, 0), SHIFT_REPEAT(2676),
+  [3231] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_as_pattern, 3, 0, 22),
+  [3233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2, 0, 0),
   [3235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(488),
   [3237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(574),
-  [3239] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_named_expression, 3, .production_id = 18), SHIFT(602),
-  [3242] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_not_operator, 2, .production_id = 6),
-  [3244] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 1),
+  [3239] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_named_expression, 3, 0, 18), SHIFT(602),
+  [3242] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_not_operator, 2, 0, 6),
+  [3244] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 1, 0, 0),
   [3246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2676),
-  [3248] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 2),
+  [3248] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 2, 0, 0),
   [3250] = {.entry = {.count = 1, .reusable = true}}, SHIFT(565),
   [3252] = {.entry = {.count = 1, .reusable = true}}, SHIFT(379),
-  [3254] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 3),
-  [3256] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 2),
+  [3254] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_yield, 3, 0, 0),
+  [3256] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dotted_name, 2, 0, 0),
   [3258] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1587),
-  [3260] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_named_expression, 3, .production_id = 18), SHIFT(570),
-  [3263] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_within_for_in_clause, 1),
+  [3260] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_named_expression, 3, 0, 18), SHIFT(570),
+  [3263] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expression_within_for_in_clause, 1, 0, 0),
   [3265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(372),
   [3267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(375),
   [3269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1339),
-  [3271] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 4, .production_id = 8),
+  [3271] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 4, 0, 8),
   [3273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(551),
-  [3275] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_named_expression, 3, .production_id = 18), SHIFT(519),
-  [3278] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_pattern, 1),
+  [3275] = {.entry = {.count = 2, .reusable = false}}, REDUCE(sym_named_expression, 3, 0, 18), SHIFT(519),
+  [3278] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_pattern, 1, 0, 0),
   [3280] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2694),
   [3282] = {.entry = {.count = 1, .reusable = true}}, SHIFT(380),
   [3284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1071),
@@ -132606,7 +130177,7 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [3290] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2649),
   [3292] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2805),
   [3294] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2796),
-  [3296] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pair, 3, .production_id = 45),
+  [3296] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pair, 3, 0, 45),
   [3298] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2824),
   [3300] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2820),
   [3302] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2797),
@@ -132625,33 +130196,33 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [3328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1586),
   [3330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(397),
   [3332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1168),
-  [3334] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_delete_statement, 2),
+  [3334] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_delete_statement, 2, 0, 0),
   [3336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(373),
   [3338] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1499),
-  [3340] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 2),
+  [3340] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_return_statement, 2, 0, 0),
   [3342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(386),
   [3344] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1481),
-  [3346] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_statement, 2),
+  [3346] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_statement, 2, 0, 0),
   [3348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(404),
   [3350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1438),
-  [3352] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 2, .dynamic_precedence = -1, .production_id = 6),
+  [3352] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 2, -1, 6),
   [3354] = {.entry = {.count = 1, .reusable = true}}, SHIFT(454),
   [3356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(360),
   [3358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1067),
-  [3360] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_clause, 2),
-  [3362] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dotted_name_repeat1, 2), SHIFT_REPEAT(2758),
-  [3365] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dotted_name_repeat1, 2), SHIFT_REPEAT(2714),
+  [3360] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_clause, 2, 0, 0),
+  [3362] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dotted_name_repeat1, 2, 0, 0), SHIFT_REPEAT(2758),
+  [3365] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dotted_name_repeat1, 2, 0, 0), SHIFT_REPEAT(2714),
   [3368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(510),
-  [3370] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__comprehension_clauses, 2),
-  [3372] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2), SHIFT_REPEAT(542),
-  [3375] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2), SHIFT_REPEAT(2828),
-  [3378] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2), SHIFT_REPEAT(743),
-  [3381] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2),
+  [3370] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__comprehension_clauses, 2, 0, 0),
+  [3372] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(542),
+  [3375] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(2828),
+  [3378] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(743),
+  [3381] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0),
   [3383] = {.entry = {.count = 1, .reusable = true}}, SHIFT(533),
   [3385] = {.entry = {.count = 1, .reusable = true}}, SHIFT(542),
   [3387] = {.entry = {.count = 1, .reusable = true}}, SHIFT(467),
   [3389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2299),
-  [3391] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, .production_id = 6),
+  [3391] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, 0, 6),
   [3393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1991),
   [3395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2197),
   [3397] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2551),
@@ -132661,30 +130232,30 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [3405] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2407),
   [3407] = {.entry = {.count = 1, .reusable = true}}, SHIFT(479),
   [3409] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92),
-  [3411] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_pattern, 2),
+  [3411] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__simple_pattern, 2, 0, 0),
   [3413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2568),
-  [3415] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_content, 1),
+  [3415] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_content, 1, 0, 0),
   [3417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1910),
   [3419] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1910),
   [3421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105),
   [3423] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94),
   [3425] = {.entry = {.count = 1, .reusable = true}}, SHIFT(367),
   [3427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1485),
-  [3429] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dotted_name_repeat1, 2), SHIFT_REPEAT(2800),
+  [3429] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dotted_name_repeat1, 2, 0, 0), SHIFT_REPEAT(2800),
   [3432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(363),
   [3434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1302),
-  [3436] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__comprehension_clauses, 1),
+  [3436] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__comprehension_clauses, 1, 0, 0),
   [3438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(355),
   [3440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1203),
   [3442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(421),
   [3444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(431),
   [3446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(358),
   [3448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1294),
-  [3450] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_chevron, 2),
-  [3452] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2), SHIFT_REPEAT(533),
-  [3455] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2), SHIFT_REPEAT(2772),
-  [3458] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2), SHIFT_REPEAT(738),
-  [3461] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_subscript_repeat1, 2, .production_id = 71),
+  [3450] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_chevron, 2, 0, 0),
+  [3452] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(533),
+  [3455] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(2772),
+  [3458] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(738),
+  [3461] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_subscript_repeat1, 2, 0, 71),
   [3463] = {.entry = {.count = 1, .reusable = true}}, SHIFT(357),
   [3465] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1266),
   [3467] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2173),
@@ -132693,149 +130264,149 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [3473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2532),
   [3475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(369),
   [3477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1403),
-  [3479] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_content_repeat1, 2),
-  [3481] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_content_repeat1, 2), SHIFT_REPEAT(1910),
-  [3484] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_content_repeat1, 2), SHIFT_REPEAT(1910),
+  [3479] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0),
+  [3481] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), SHIFT_REPEAT(1910),
+  [3484] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_string_content_repeat1, 2, 0, 0), SHIFT_REPEAT(1910),
   [3487] = {.entry = {.count = 1, .reusable = true}}, SHIFT(433),
-  [3489] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2), SHIFT_REPEAT(510),
-  [3492] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2), SHIFT_REPEAT(2825),
-  [3495] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2), SHIFT_REPEAT(829),
+  [3489] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(510),
+  [3492] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(2825),
+  [3495] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__comprehension_clauses_repeat1, 2, 0, 0), SHIFT_REPEAT(829),
   [3498] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2697),
-  [3500] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 4, .production_id = 53),
-  [3502] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 4, .production_id = 53),
-  [3504] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 4, .production_id = 52),
-  [3506] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 4, .production_id = 52),
+  [3500] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 4, 0, 53),
+  [3502] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 4, 0, 53),
+  [3504] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 4, 0, 52),
+  [3506] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 4, 0, 52),
   [3508] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1525),
-  [3510] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 4, .production_id = 26),
-  [3512] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 4, .production_id = 26),
-  [3514] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 5, .production_id = 74),
-  [3516] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 5, .production_id = 74),
-  [3518] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2), SHIFT_REPEAT(508),
-  [3521] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat, 2),
-  [3523] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_decorated_definition_repeat1, 2),
-  [3525] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_decorated_definition_repeat1, 2), SHIFT_REPEAT(582),
-  [3528] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 5),
+  [3510] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 4, 0, 26),
+  [3512] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 4, 0, 26),
+  [3514] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 5, 0, 74),
+  [3516] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 5, 0, 74),
+  [3518] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(508),
+  [3521] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_splat, 2, 0, 0),
+  [3523] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_decorated_definition_repeat1, 2, 0, 0),
+  [3525] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_decorated_definition_repeat1, 2, 0, 0), SHIFT_REPEAT(582),
+  [3528] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_slice, 5, 0, 0),
   [3530] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2791),
   [3532] = {.entry = {.count = 1, .reusable = true}}, SHIFT(226),
   [3534] = {.entry = {.count = 1, .reusable = true}}, SHIFT(260),
   [3536] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1957),
   [3538] = {.entry = {.count = 1, .reusable = true}}, SHIFT(261),
-  [3540] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, .production_id = 110),
+  [3540] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 6, 0, 110),
   [3542] = {.entry = {.count = 1, .reusable = true}}, SHIFT(333),
-  [3544] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameter, 5),
+  [3544] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameter, 5, 0, 0),
   [3546] = {.entry = {.count = 1, .reusable = true}}, SHIFT(225),
   [3548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2097),
-  [3550] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 5, .production_id = 75),
-  [3552] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 5, .production_id = 75),
+  [3550] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 5, 0, 75),
+  [3552] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 5, 0, 75),
   [3554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2618),
-  [3556] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 5, .production_id = 76),
-  [3558] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 5, .production_id = 76),
-  [3560] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 3, .production_id = 16),
-  [3562] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameter, 4),
-  [3564] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_pattern, 2),
+  [3556] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 5, 0, 76),
+  [3558] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 5, 0, 76),
+  [3560] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 3, 0, 16),
+  [3562] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameter, 4, 0, 0),
+  [3564] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_pattern, 2, 0, 0),
   [3566] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1582),
   [3568] = {.entry = {.count = 1, .reusable = true}}, SHIFT(232),
   [3570] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2003),
-  [3572] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 4, .production_id = 79),
+  [3572] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 4, 0, 79),
   [3574] = {.entry = {.count = 1, .reusable = true}}, SHIFT(330),
-  [3576] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2), SHIFT_REPEAT(411),
-  [3579] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2),
+  [3576] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2, 0, 0), SHIFT_REPEAT(411),
+  [3579] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2, 0, 0),
   [3581] = {.entry = {.count = 1, .reusable = true}}, SHIFT(340),
-  [3583] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2),
-  [3585] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat, 2),
+  [3583] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, 0, 0),
+  [3585] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dictionary_splat, 2, 0, 0),
   [3587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(344),
-  [3589] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, .production_id = 98),
-  [3591] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_item, 1, .dynamic_precedence = 1, .production_id = 7),
-  [3593] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2),
+  [3589] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, 0, 98),
+  [3591] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_item, 1, 1, 7),
+  [3593] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 0),
   [3595] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2625),
-  [3597] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_union_pattern_repeat1, 2),
-  [3599] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_union_pattern_repeat1, 2), SHIFT_REPEAT(1582),
-  [3602] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameter, 3),
-  [3604] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generic_type, 2),
+  [3597] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_union_pattern_repeat1, 2, 0, 0),
+  [3599] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_union_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1582),
+  [3602] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_parameter, 3, 0, 0),
+  [3604] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_generic_type, 2, 0, 0),
   [3606] = {.entry = {.count = 1, .reusable = true}}, SHIFT(606),
   [3608] = {.entry = {.count = 1, .reusable = true}}, SHIFT(607),
   [3610] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87),
-  [3612] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_type, 3),
+  [3612] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_union_type, 3, 0, 0),
   [3614] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2673),
-  [3616] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constrained_type, 3),
+  [3616] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_constrained_type, 3, 0, 0),
   [3618] = {.entry = {.count = 1, .reusable = true}}, SHIFT(241),
   [3620] = {.entry = {.count = 1, .reusable = true}}, SHIFT(265),
-  [3622] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_member_type, 3),
-  [3624] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2), SHIFT_REPEAT(446),
-  [3627] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, .production_id = 19),
+  [3622] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_member_type, 3, 0, 0),
+  [3624] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2, 0, 0), SHIFT_REPEAT(446),
+  [3627] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, 0, 19),
   [3629] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2635),
   [3631] = {.entry = {.count = 1, .reusable = true}}, SHIFT(234),
   [3633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192),
   [3635] = {.entry = {.count = 1, .reusable = true}}, SHIFT(267),
   [3637] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2597),
-  [3639] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, .production_id = 99),
+  [3639] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_in_clause, 5, 0, 99),
   [3641] = {.entry = {.count = 1, .reusable = true}}, SHIFT(332),
   [3643] = {.entry = {.count = 1, .reusable = true}}, SHIFT(331),
-  [3645] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2), SHIFT_REPEAT(856),
-  [3648] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 6, .production_id = 97),
-  [3650] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 6, .production_id = 97),
+  [3645] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 0), SHIFT_REPEAT(856),
+  [3648] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 6, 0, 97),
+  [3650] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 6, 0, 97),
   [3652] = {.entry = {.count = 1, .reusable = true}}, SHIFT(341),
   [3654] = {.entry = {.count = 1, .reusable = true}}, SHIFT(346),
   [3656] = {.entry = {.count = 1, .reusable = true}}, SHIFT(336),
-  [3658] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_argument, 3, .production_id = 70),
-  [3660] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 4, .production_id = 36),
-  [3662] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_argument, 3, .production_id = 18),
+  [3658] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_argument, 3, 0, 70),
+  [3660] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_raise_statement, 4, 0, 36),
+  [3662] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_argument, 3, 0, 18),
   [3664] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2566),
-  [3666] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_default_parameter, 5, .production_id = 96),
+  [3666] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_default_parameter, 5, 0, 96),
   [3668] = {.entry = {.count = 1, .reusable = true}}, SHIFT(224),
   [3670] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2016),
   [3672] = {.entry = {.count = 1, .reusable = true}}, SHIFT(608),
   [3674] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97),
-  [3676] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_statement_repeat1, 2, .production_id = 38),
+  [3676] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_statement_repeat1, 2, 0, 38),
   [3678] = {.entry = {.count = 1, .reusable = true}}, SHIFT(335),
   [3680] = {.entry = {.count = 1, .reusable = true}}, SHIFT(334),
-  [3682] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 3, .production_id = 26),
-  [3684] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 3, .production_id = 26),
-  [3686] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dotted_name_repeat1, 2), SHIFT_REPEAT(2697),
+  [3682] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpolation, 3, 0, 26),
+  [3684] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_interpolation, 3, 0, 26),
+  [3686] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dotted_name_repeat1, 2, 0, 0), SHIFT_REPEAT(2697),
   [3689] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2575),
-  [3691] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_parameter, 3, .production_id = 46),
+  [3691] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_typed_parameter, 3, 0, 46),
   [3693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(540),
-  [3695] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_pattern, 3),
-  [3697] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_default_parameter, 3, .production_id = 18),
+  [3695] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_keyword_pattern, 3, 0, 0),
+  [3697] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_default_parameter, 3, 0, 18),
   [3699] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2613),
   [3701] = {.entry = {.count = 1, .reusable = true}}, SHIFT(327),
   [3703] = {.entry = {.count = 1, .reusable = true}}, SHIFT(679),
   [3705] = {.entry = {.count = 1, .reusable = true}}, SHIFT(345),
-  [3707] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2), SHIFT_REPEAT(418),
-  [3710] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_pattern, 1),
+  [3707] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_for_in_clause_repeat1, 2, 0, 0), SHIFT_REPEAT(418),
+  [3710] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_pattern, 1, 0, 0),
   [3712] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1516),
   [3714] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2777),
   [3716] = {.entry = {.count = 1, .reusable = true}}, SHIFT(511),
   [3718] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127),
-  [3720] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dict_pattern, 2),
-  [3722] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__list_pattern, 3),
+  [3720] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dict_pattern, 2, 0, 0),
+  [3722] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__list_pattern, 3, 0, 0),
   [3724] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2690),
   [3726] = {.entry = {.count = 1, .reusable = true}}, SHIFT(268),
   [3728] = {.entry = {.count = 1, .reusable = true}}, SHIFT(552),
   [3730] = {.entry = {.count = 1, .reusable = true}}, SHIFT(270),
-  [3732] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__list_pattern, 4),
-  [3734] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_within_for_in_clause, 4, .production_id = 47),
-  [3736] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_union_pattern_repeat1, 2), SHIFT_REPEAT(1583),
+  [3732] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__list_pattern, 4, 0, 0),
+  [3734] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_within_for_in_clause, 4, 0, 47),
+  [3736] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_union_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1583),
   [3739] = {.entry = {.count = 1, .reusable = true}}, SHIFT(382),
-  [3741] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_pattern, 3),
+  [3741] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_pattern, 3, 0, 0),
   [3743] = {.entry = {.count = 1, .reusable = true}}, SHIFT(550),
   [3745] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1585),
-  [3747] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_splat_pattern, 2),
+  [3747] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_splat_pattern, 2, 0, 0),
   [3749] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1549),
-  [3751] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__tuple_pattern, 4),
+  [3751] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__tuple_pattern, 4, 0, 0),
   [3753] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1568),
   [3755] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2219),
   [3757] = {.entry = {.count = 1, .reusable = false}}, SHIFT(228),
-  [3759] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_format_specifier, 2),
+  [3759] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_format_specifier, 2, 0, 0),
   [3761] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2049),
-  [3763] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_union_pattern_repeat1, 2), SHIFT_REPEAT(1585),
-  [3766] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dict_pattern, 5, .production_id = 122),
+  [3763] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_union_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1585),
+  [3766] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dict_pattern, 5, 0, 122),
   [3768] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2194),
   [3770] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1583),
-  [3772] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_format_specifier_repeat1, 2), SHIFT_REPEAT(228),
-  [3775] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_format_specifier_repeat1, 2),
-  [3777] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 2), SHIFT_REPEAT(2049),
-  [3780] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, .production_id = 4),
+  [3772] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_format_specifier_repeat1, 2, 0, 0), SHIFT_REPEAT(228),
+  [3775] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_format_specifier_repeat1, 2, 0, 0),
+  [3777] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 2, 0, 0), SHIFT_REPEAT(2049),
+  [3780] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, 0, 4),
   [3782] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2116),
   [3784] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2158),
   [3786] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2000),
@@ -132844,115 +130415,115 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [3792] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1576),
   [3794] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2150),
   [3796] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118),
-  [3798] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_within_for_in_clause, 3, .production_id = 17),
-  [3800] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_complex_pattern, 4),
+  [3798] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_within_for_in_clause, 3, 0, 17),
+  [3800] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_complex_pattern, 4, 0, 0),
   [3802] = {.entry = {.count = 1, .reusable = true}}, SHIFT(595),
   [3804] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133),
-  [3806] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_pattern, 5),
-  [3808] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_parameter_repeat1, 2),
+  [3806] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_pattern, 5, 0, 0),
+  [3808] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_type_parameter_repeat1, 2, 0, 0),
   [3810] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1570),
   [3812] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2251),
-  [3814] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_pattern, 6),
+  [3814] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_pattern, 6, 0, 0),
   [3816] = {.entry = {.count = 1, .reusable = true}}, SHIFT(506),
-  [3818] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 3, .production_id = 13),
+  [3818] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 3, 0, 13),
   [3820] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1548),
   [3822] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1581),
   [3824] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135),
-  [3826] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_statement, 4, .dynamic_precedence = 1),
-  [3828] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_complex_pattern, 3),
+  [3826] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias_statement, 4, 1, 0),
+  [3828] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_complex_pattern, 3, 0, 0),
   [3830] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114),
   [3832] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93),
   [3834] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2205),
-  [3836] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 1, .production_id = 4),
+  [3836] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 1, 0, 4),
   [3838] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2050),
   [3840] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2706),
   [3842] = {.entry = {.count = 1, .reusable = true}}, SHIFT(271),
   [3844] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121),
   [3846] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123),
   [3848] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124),
-  [3850] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__list_pattern, 5),
-  [3852] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dict_pattern, 3),
-  [3854] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_pattern, 4),
-  [3856] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dict_pattern, 4, .production_id = 122),
+  [3850] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__list_pattern, 5, 0, 0),
+  [3852] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dict_pattern, 3, 0, 0),
+  [3854] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_class_pattern, 4, 0, 0),
+  [3856] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dict_pattern, 4, 0, 122),
   [3858] = {.entry = {.count = 1, .reusable = true}}, SHIFT(480),
-  [3860] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dict_pattern, 4),
+  [3860] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dict_pattern, 4, 0, 0),
   [3862] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2143),
   [3864] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2464),
   [3866] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2478),
-  [3868] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2), SHIFT_REPEAT(551),
+  [3868] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(551),
   [3871] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130),
-  [3873] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__tuple_pattern, 2),
-  [3875] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dict_pattern, 4, .production_id = 120),
+  [3873] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__tuple_pattern, 2, 0, 0),
+  [3875] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dict_pattern, 4, 0, 120),
   [3877] = {.entry = {.count = 1, .reusable = true}}, SHIFT(499),
   [3879] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1517),
-  [3881] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_union_pattern_repeat1, 2), SHIFT_REPEAT(1581),
-  [3884] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__tuple_pattern, 5),
+  [3881] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_union_pattern_repeat1, 2, 0, 0), SHIFT_REPEAT(1581),
+  [3884] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__tuple_pattern, 5, 0, 0),
   [3886] = {.entry = {.count = 1, .reusable = true}}, SHIFT(594),
-  [3888] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_format_specifier, 1),
+  [3888] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_format_specifier, 1, 0, 0),
   [3890] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2041),
-  [3892] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dict_pattern, 4, .production_id = 111),
+  [3892] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dict_pattern, 4, 0, 111),
   [3894] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100),
-  [3896] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__list_pattern, 2),
+  [3896] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__list_pattern, 2, 0, 0),
   [3898] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1545),
   [3900] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112),
   [3902] = {.entry = {.count = 1, .reusable = true}}, SHIFT(496),
   [3904] = {.entry = {.count = 1, .reusable = true}}, SHIFT(584),
-  [3906] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dict_pattern, 3, .production_id = 111),
+  [3906] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dict_pattern, 3, 0, 111),
   [3908] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1561),
   [3910] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2093),
-  [3912] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__tuple_pattern, 3),
+  [3912] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__tuple_pattern, 3, 0, 0),
   [3914] = {.entry = {.count = 1, .reusable = true}}, SHIFT(554),
-  [3916] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dict_pattern, 5, .production_id = 120),
+  [3916] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_dict_pattern, 5, 0, 120),
   [3918] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136),
   [3920] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1556),
   [3922] = {.entry = {.count = 1, .reusable = true}}, SHIFT(740),
   [3924] = {.entry = {.count = 1, .reusable = true}}, SHIFT(269),
-  [3926] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, .production_id = 35),
-  [3928] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, .production_id = 35), SHIFT_REPEAT(494),
-  [3931] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dict_pattern_repeat1, 2),
+  [3926] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, 0, 35),
+  [3928] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_print_statement_repeat1, 2, 0, 35), SHIFT_REPEAT(494),
+  [3931] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dict_pattern_repeat1, 2, 0, 0),
   [3933] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2292),
   [3935] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2493),
   [3937] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1913),
-  [3939] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 1),
+  [3939] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameter, 1, 0, 0),
   [3941] = {.entry = {.count = 1, .reusable = true}}, SHIFT(243),
   [3943] = {.entry = {.count = 1, .reusable = true}}, SHIFT(509),
-  [3945] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_nonlocal_statement, 2),
+  [3945] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_nonlocal_statement, 2, 0, 0),
   [3947] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2711),
-  [3949] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_statement, 2),
+  [3949] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_statement, 2, 0, 0),
   [3951] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1676),
   [3953] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2128),
   [3955] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1529),
   [3957] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2657),
   [3959] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1918),
   [3961] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2349),
-  [3963] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__as_pattern, 3),
+  [3963] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__as_pattern, 3, 0, 0),
   [3965] = {.entry = {.count = 1, .reusable = true}}, SHIFT(448),
   [3967] = {.entry = {.count = 1, .reusable = true}}, SHIFT(727),
-  [3969] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 2),
+  [3969] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 2, 0, 0),
   [3971] = {.entry = {.count = 1, .reusable = true}}, SHIFT(455),
   [3973] = {.entry = {.count = 1, .reusable = true}}, SHIFT(754),
   [3975] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2165),
   [3977] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2671),
-  [3979] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_clause_repeat1, 2), SHIFT_REPEAT(1557),
-  [3982] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_case_clause_repeat1, 2),
+  [3979] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_clause_repeat1, 2, 0, 0), SHIFT_REPEAT(1557),
+  [3982] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_case_clause_repeat1, 2, 0, 0),
   [3984] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1528),
   [3986] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2752),
   [3988] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2022),
-  [3990] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_prefix, 1),
+  [3990] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_import_prefix, 1, 0, 0),
   [3992] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2237),
-  [3994] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 27),
-  [3996] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 28),
-  [3998] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 28), SHIFT_REPEAT(2398),
+  [3994] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 27),
+  [3996] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 28),
+  [3998] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 28), SHIFT_REPEAT(2398),
   [4001] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2216),
   [4003] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1520),
-  [4005] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 5, .production_id = 8),
+  [4005] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 5, 0, 8),
   [4007] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1544),
   [4009] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2255),
   [4011] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2256),
   [4013] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1541),
-  [4015] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_global_statement_repeat1, 2),
-  [4017] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_global_statement_repeat1, 2), SHIFT_REPEAT(2711),
-  [4020] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decorator, 3),
+  [4015] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_global_statement_repeat1, 2, 0, 0),
+  [4017] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_global_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(2711),
+  [4020] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_decorator, 3, 0, 0),
   [4022] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2145),
   [4024] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1553),
   [4026] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1551),
@@ -132960,27 +130531,27 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [4030] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2094),
   [4032] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1522),
   [4034] = {.entry = {.count = 1, .reusable = true}}, SHIFT(826),
-  [4036] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, .production_id = 13),
+  [4036] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__import_list, 2, 0, 13),
   [4038] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2081),
   [4040] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2074),
-  [4042] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__match_block_repeat1, 2, .production_id = 81), SHIFT_REPEAT(1556),
-  [4045] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__match_block_repeat1, 2, .production_id = 81),
+  [4042] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__match_block_repeat1, 2, 0, 81), SHIFT_REPEAT(1556),
+  [4045] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__match_block_repeat1, 2, 0, 81),
   [4047] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2184),
   [4049] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1539),
-  [4051] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_nonlocal_statement, 3),
-  [4053] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_statement, 3),
-  [4055] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_import_prefix_repeat1, 2),
-  [4057] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_import_prefix_repeat1, 2), SHIFT_REPEAT(2237),
+  [4051] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_nonlocal_statement, 3, 0, 0),
+  [4053] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_global_statement, 3, 0, 0),
+  [4055] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_import_prefix_repeat1, 2, 0, 0),
+  [4057] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_import_prefix_repeat1, 2, 0, 0), SHIFT_REPEAT(2237),
   [4060] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2250),
   [4062] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1518),
   [4064] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1540),
   [4066] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2209),
   [4068] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2204),
   [4070] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1547),
-  [4072] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, .production_id = 14),
+  [4072] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, 0, 14),
   [4074] = {.entry = {.count = 1, .reusable = true}}, SHIFT(450),
-  [4076] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_statement, 3),
-  [4078] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, .dynamic_precedence = -1, .production_id = 15),
+  [4076] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assert_statement, 3, 0, 0),
+  [4078] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_print_statement, 3, -1, 15),
   [4080] = {.entry = {.count = 1, .reusable = true}}, SHIFT(459),
   [4082] = {.entry = {.count = 1, .reusable = true}}, SHIFT(839),
   [4084] = {.entry = {.count = 1, .reusable = true}}, SHIFT(473),
@@ -132989,16 +130560,16 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [4090] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2139),
   [4092] = {.entry = {.count = 1, .reusable = true}}, SHIFT(793),
   [4094] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2161),
-  [4096] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_clause_repeat1, 2), SHIFT_REPEAT(1554),
+  [4096] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_clause_repeat1, 2, 0, 0), SHIFT_REPEAT(1554),
   [4099] = {.entry = {.count = 1, .reusable = true}}, SHIFT(150),
   [4101] = {.entry = {.count = 1, .reusable = true}}, SHIFT(465),
   [4103] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2341),
-  [4105] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2), SHIFT_REPEAT(1682),
-  [4108] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2),
+  [4105] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2, 0, 0), SHIFT_REPEAT(1682),
+  [4108] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2, 0, 0),
   [4110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79),
   [4112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2612),
   [4114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2614),
-  [4116] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2), SHIFT_REPEAT(356),
+  [4116] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, 0, 0), SHIFT_REPEAT(356),
   [4119] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140),
   [4121] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2420),
   [4123] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138),
@@ -133013,33 +130584,33 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [4141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(676),
   [4143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(396),
   [4145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(636),
-  [4147] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2), SHIFT_REPEAT(387),
-  [4150] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2),
+  [4147] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, 0, 0), SHIFT_REPEAT(387),
+  [4150] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dictionary_repeat1, 2, 0, 0),
   [4152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(312),
-  [4154] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_subscript_repeat1, 2, .production_id = 73), SHIFT_REPEAT(422),
-  [4157] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_subscript_repeat1, 2, .production_id = 73),
+  [4154] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_subscript_repeat1, 2, 0, 73), SHIFT_REPEAT(422),
+  [4157] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_subscript_repeat1, 2, 0, 73),
   [4159] = {.entry = {.count = 1, .reusable = true}}, SHIFT(314),
-  [4161] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aliased_import, 3, .production_id = 29),
+  [4161] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_aliased_import, 3, 0, 29),
   [4163] = {.entry = {.count = 1, .reusable = true}}, SHIFT(390),
   [4165] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1075),
   [4167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(406),
   [4169] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1077),
-  [4171] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_parameter_repeat1, 2), SHIFT_REPEAT(258),
+  [4171] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_type_parameter_repeat1, 2, 0, 0), SHIFT_REPEAT(258),
   [4174] = {.entry = {.count = 1, .reusable = true}}, SHIFT(774),
   [4176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(466),
   [4178] = {.entry = {.count = 1, .reusable = true}}, SHIFT(231),
   [4180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(339),
   [4182] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82),
   [4184] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1681),
-  [4186] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2), SHIFT_REPEAT(1683),
+  [4186] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__parameters_repeat1, 2, 0, 0), SHIFT_REPEAT(1683),
   [4189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(457),
   [4191] = {.entry = {.count = 1, .reusable = true}}, SHIFT(451),
-  [4193] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_format_specifier_repeat1, 1, .production_id = 51),
-  [4195] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 1, .production_id = 51),
+  [4193] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_format_specifier_repeat1, 1, 0, 51),
+  [4195] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_format_specifier_repeat1, 1, 0, 51),
   [4197] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2579),
   [4199] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2632),
   [4201] = {.entry = {.count = 1, .reusable = true}}, SHIFT(412),
-  [4203] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2), SHIFT_REPEAT(365),
+  [4203] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, 0, 0), SHIFT_REPEAT(365),
   [4206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1575),
   [4208] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2215),
   [4210] = {.entry = {.count = 1, .reusable = true}}, SHIFT(283),
@@ -133057,30 +130628,30 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [4234] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1559),
   [4236] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2248),
   [4238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78),
-  [4240] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_statement_repeat1, 2, .production_id = 40), SHIFT_REPEAT(507),
-  [4243] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_statement_repeat1, 2, .production_id = 40),
+  [4240] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_match_statement_repeat1, 2, 0, 40), SHIFT_REPEAT(507),
+  [4243] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_match_statement_repeat1, 2, 0, 40),
   [4245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77),
   [4247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1919),
   [4249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(458),
-  [4251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_with_clause_repeat1, 2),
-  [4253] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_with_clause_repeat1, 2), SHIFT_REPEAT(461),
+  [4251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_with_clause_repeat1, 2, 0, 0),
+  [4253] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_with_clause_repeat1, 2, 0, 0), SHIFT_REPEAT(461),
   [4256] = {.entry = {.count = 1, .reusable = true}}, SHIFT(444),
   [4258] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1526),
   [4260] = {.entry = {.count = 1, .reusable = true}}, SHIFT(423),
   [4262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111),
   [4264] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1566),
   [4266] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2182),
-  [4268] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2), SHIFT_REPEAT(852),
+  [4268] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 0), SHIFT_REPEAT(852),
   [4271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1571),
   [4273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2180),
-  [4275] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_relative_import, 1),
+  [4275] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_relative_import, 1, 0, 0),
   [4277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(142),
   [4279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(685),
   [4281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1569),
   [4283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2095),
   [4285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1531),
-  [4287] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2), SHIFT_REPEAT(575),
-  [4290] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2), SHIFT_REPEAT(853),
+  [4287] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(575),
+  [4290] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 0), SHIFT_REPEAT(853),
   [4293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(383),
   [4295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1504),
   [4297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1523),
@@ -133093,13 +130664,13 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [4311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132),
   [4313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(388),
   [4315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1488),
-  [4317] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 1),
+  [4317] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__patterns, 1, 0, 0),
   [4319] = {.entry = {.count = 1, .reusable = true}}, SHIFT(730),
   [4321] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139),
   [4323] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141),
   [4325] = {.entry = {.count = 1, .reusable = true}}, SHIFT(820),
-  [4327] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dict_pattern_repeat1, 2, .production_id = 121), SHIFT_REPEAT(1579),
-  [4330] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dict_pattern_repeat1, 2, .production_id = 121),
+  [4327] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_dict_pattern_repeat1, 2, 0, 121), SHIFT_REPEAT(1579),
+  [4330] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dict_pattern_repeat1, 2, 0, 121),
   [4332] = {.entry = {.count = 1, .reusable = true}}, SHIFT(399),
   [4334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1449),
   [4336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(400),
@@ -133127,18 +130698,18 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [4380] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1322),
   [4382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(402),
   [4384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1320),
-  [4386] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2), SHIFT_REPEAT(329),
+  [4386] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 0), SHIFT_REPEAT(329),
   [4389] = {.entry = {.count = 1, .reusable = true}}, SHIFT(230),
   [4391] = {.entry = {.count = 1, .reusable = true}}, SHIFT(359),
   [4393] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147),
   [4395] = {.entry = {.count = 1, .reusable = true}}, SHIFT(658),
-  [4397] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2), SHIFT_REPEAT(532),
+  [4397] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(532),
   [4400] = {.entry = {.count = 1, .reusable = true}}, SHIFT(362),
   [4402] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76),
   [4404] = {.entry = {.count = 1, .reusable = true}}, SHIFT(285),
   [4406] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1562),
   [4408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2253),
-  [4410] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2), SHIFT_REPEAT(364),
+  [4410] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__collection_elements_repeat1, 2, 0, 0), SHIFT_REPEAT(364),
   [4413] = {.entry = {.count = 1, .reusable = true}}, SHIFT(347),
   [4415] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1677),
   [4417] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1573),
@@ -133149,7 +130720,7 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [4427] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1530),
   [4429] = {.entry = {.count = 1, .reusable = true}}, SHIFT(374),
   [4431] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1175),
-  [4433] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2), SHIFT_REPEAT(854),
+  [4433] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__patterns_repeat1, 2, 0, 0), SHIFT_REPEAT(854),
   [4436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1560),
   [4438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2221),
   [4440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(319),
@@ -133157,17 +130728,17 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [4444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2217),
   [4446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(468),
   [4448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(309),
-  [4450] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__simple_statements_repeat1, 2), SHIFT_REPEAT(153),
-  [4453] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__simple_statements_repeat1, 2),
+  [4450] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__simple_statements_repeat1, 2, 0, 0), SHIFT_REPEAT(153),
+  [4453] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__simple_statements_repeat1, 2, 0, 0),
   [4455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(417),
   [4457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1521),
-  [4459] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2), SHIFT_REPEAT(521),
+  [4459] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_assert_statement_repeat1, 2, 0, 0), SHIFT_REPEAT(521),
   [4462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(472),
   [4464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1297),
   [4466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(297),
   [4468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(233),
   [4470] = {.entry = {.count = 1, .reusable = true}}, SHIFT(420),
-  [4472] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 1),
+  [4472] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 1, 0, 0),
   [4474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151),
   [4476] = {.entry = {.count = 1, .reusable = true}}, SHIFT(692),
   [4478] = {.entry = {.count = 1, .reusable = true}}, SHIFT(349),
@@ -133177,13 +130748,13 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [4486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(428),
   [4488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144),
   [4490] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2154),
-  [4492] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 2, .production_id = 8),
+  [4492] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_exec_statement, 2, 0, 8),
   [4494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(604),
-  [4496] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, .production_id = 28), SHIFT_REPEAT(2456),
+  [4496] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__import_list_repeat1, 2, 0, 28), SHIFT_REPEAT(2456),
   [4499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143),
   [4501] = {.entry = {.count = 1, .reusable = true}}, SHIFT(670),
   [4503] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2291),
-  [4505] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 1),
+  [4505] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__parameters, 1, 0, 0),
   [4507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1678),
   [4509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145),
   [4511] = {.entry = {.count = 1, .reusable = true}}, SHIFT(152),
@@ -133194,7 +130765,7 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [4521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(381),
   [4523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1039),
   [4525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(287),
-  [4527] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__key_value_pattern, 3, .production_id = 45),
+  [4527] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__key_value_pattern, 3, 0, 45),
   [4529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2638),
   [4531] = {.entry = {.count = 1, .reusable = true}}, SHIFT(352),
   [4533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(284),
@@ -133203,12 +130774,12 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [4539] = {.entry = {.count = 1, .reusable = true}}, SHIFT(430),
   [4541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1233),
   [4543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(276),
-  [4545] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_clause_repeat1, 2), SHIFT_REPEAT(1558),
+  [4545] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_case_clause_repeat1, 2, 0, 0), SHIFT_REPEAT(1558),
   [4548] = {.entry = {.count = 1, .reusable = true}}, SHIFT(378),
   [4550] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1269),
   [4552] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1170),
   [4554] = {.entry = {.count = 1, .reusable = true}}, SHIFT(282),
-  [4556] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_with_clause_repeat1, 2), SHIFT_REPEAT(469),
+  [4556] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_with_clause_repeat1, 2, 0, 0), SHIFT_REPEAT(469),
   [4559] = {.entry = {.count = 1, .reusable = true}}, SHIFT(275),
   [4561] = {.entry = {.count = 1, .reusable = true}}, SHIFT(544),
   [4563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(274),
@@ -133231,30 +130802,30 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [4597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1154),
   [4599] = {.entry = {.count = 1, .reusable = true}}, SHIFT(291),
   [4601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(244),
-  [4603] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 7, .production_id = 138),
-  [4605] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 5, .production_id = 69),
+  [4603] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 7, 0, 138),
+  [4605] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 5, 0, 69),
   [4607] = {.entry = {.count = 1, .reusable = false}}, SHIFT(1881),
   [4609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1881),
   [4611] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2082),
   [4613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2082),
-  [4615] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 4, .production_id = 31),
-  [4617] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dict_pattern_repeat1, 2, .production_id = 111),
-  [4619] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pass_statement, 1),
-  [4621] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 2),
-  [4623] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_positional_separator, 1),
-  [4625] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_statement, 1),
-  [4627] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continue_statement, 1),
-  [4629] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_future_import_statement, 4, .production_id = 30),
-  [4631] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 6, .production_id = 131),
-  [4633] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 6, .production_id = 132),
-  [4635] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 6, .production_id = 133),
-  [4637] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 6, .production_id = 134),
-  [4639] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_wildcard_import, 1),
-  [4641] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 4, .production_id = 112),
-  [4643] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 4, .production_id = 32),
-  [4645] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 7, .production_id = 136),
-  [4647] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__match_block_repeat1, 1, .production_id = 54),
-  [4649] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 7, .production_id = 137),
+  [4615] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 4, 0, 31),
+  [4617] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_dict_pattern_repeat1, 2, 0, 111),
+  [4619] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_pass_statement, 1, 0, 0),
+  [4621] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 2, 0, 0),
+  [4623] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_positional_separator, 1, 0, 0),
+  [4625] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_break_statement, 1, 0, 0),
+  [4627] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_continue_statement, 1, 0, 0),
+  [4629] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_future_import_statement, 4, 0, 30),
+  [4631] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 6, 0, 131),
+  [4633] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 6, 0, 132),
+  [4635] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 6, 0, 133),
+  [4637] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 6, 0, 134),
+  [4639] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_wildcard_import, 1, 0, 0),
+  [4641] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 4, 0, 112),
+  [4643] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 4, 0, 32),
+  [4645] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 7, 0, 136),
+  [4647] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__match_block_repeat1, 1, 0, 54),
+  [4649] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 7, 0, 137),
   [4651] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2186),
   [4653] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2005),
   [4655] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2005),
@@ -133262,11 +130833,11 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [4659] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2220),
   [4661] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2060),
   [4663] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2060),
-  [4665] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 8, .production_id = 139),
-  [4667] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 3),
+  [4665] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 8, 0, 139),
+  [4667] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 3, 0, 0),
   [4669] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2241),
   [4671] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2241),
-  [4673] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_list_splat, 3, .production_id = 33),
+  [4673] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_list_splat, 3, 0, 33),
   [4675] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96),
   [4677] = {.entry = {.count = 1, .reusable = true}}, SHIFT(252),
   [4679] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88),
@@ -133279,24 +130850,24 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [4693] = {.entry = {.count = 1, .reusable = true}}, SHIFT(264),
   [4695] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113),
   [4697] = {.entry = {.count = 1, .reusable = true}}, SHIFT(262),
-  [4699] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_statement, 2, .production_id = 3),
-  [4701] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 5, .production_id = 125),
-  [4703] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_future_import_statement, 6, .production_id = 77),
-  [4705] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 5, .production_id = 124),
+  [4699] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_statement, 2, 0, 3),
+  [4701] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 5, 0, 125),
+  [4703] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_future_import_statement, 6, 0, 77),
+  [4705] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 5, 0, 124),
   [4707] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2176),
   [4709] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2176),
-  [4711] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 5, .production_id = 123),
+  [4711] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_case_clause, 5, 0, 123),
   [4713] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2119),
   [4715] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102),
   [4717] = {.entry = {.count = 1, .reusable = true}}, SHIFT(245),
   [4719] = {.entry = {.count = 1, .reusable = true}}, SHIFT(677),
-  [4721] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 6, .production_id = 78),
-  [4723] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_augmented_assignment, 3, .production_id = 21),
-  [4725] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, .production_id = 20),
+  [4721] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_from_statement, 6, 0, 78),
+  [4723] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_augmented_assignment, 3, 0, 21),
+  [4725] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, 0, 20),
   [4727] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134),
   [4729] = {.entry = {.count = 1, .reusable = true}}, SHIFT(263),
-  [4731] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, .production_id = 33),
-  [4733] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_list_splat, 3),
+  [4731] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_argument_list_repeat1, 2, 0, 33),
+  [4733] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parenthesized_list_splat, 3, 0, 0),
   [4735] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2152),
   [4737] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2152),
   [4739] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2168),
@@ -133317,7 +130888,7 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [4769] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1995),
   [4771] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1478),
   [4773] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2337),
-  [4775] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 4),
+  [4775] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 4, 0, 0),
   [4777] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1479),
   [4779] = {.entry = {.count = 1, .reusable = true}}, SHIFT(883),
   [4781] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1098),
@@ -133381,7 +130952,7 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [4897] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1192),
   [4899] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2319),
   [4901] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1199),
-  [4903] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_relative_import, 2),
+  [4903] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_relative_import, 2, 0, 0),
   [4905] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1970),
   [4907] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117),
   [4909] = {.entry = {.count = 1, .reusable = true}}, SHIFT(530),
@@ -133440,14 +131011,14 @@ static const TSParseActionEntry ts_parse_actions[] = {
   [5015] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1331),
   [5017] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1283),
   [5019] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1330),
-  [5021] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_parameters, 1),
+  [5021] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_lambda_parameters, 1, 0, 0),
   [5023] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1328),
   [5025] = {.entry = {.count = 1, .reusable = true}},  ACCEPT_INPUT(),
   [5027] = {.entry = {.count = 1, .reusable = true}}, SHIFT(543),
   [5029] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2062),
   [5031] = {.entry = {.count = 1, .reusable = true}}, SHIFT(131),
   [5033] = {.entry = {.count = 1, .reusable = true}}, SHIFT(1321),
-  [5035] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 5),
+  [5035] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_with_clause, 5, 0, 0),
   [5037] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107),
   [5039] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2138),
   [5041] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2088),
@@ -133620,13 +131191,15 @@ bool tree_sitter_python_external_scanner_scan(void *, TSLexer *, const bool *);
 unsigned tree_sitter_python_external_scanner_serialize(void *, char *);
 void tree_sitter_python_external_scanner_deserialize(void *, const char *, unsigned);
 
-#ifdef _WIN32
+#ifdef TREE_SITTER_HIDE_SYMBOLS
+#define TS_PUBLIC
+#elif defined(_WIN32)
 #define TS_PUBLIC __declspec(dllexport)
 #else
 #define TS_PUBLIC __attribute__((visibility("default")))
 #endif
 
-TS_PUBLIC const TSLanguage *tree_sitter_python() {
+TS_PUBLIC const TSLanguage *tree_sitter_python(void) {
   static const TSLanguage language = {
     .version = LANGUAGE_VERSION,
     .symbol_count = SYMBOL_COUNT,
diff --git a/src/tree_sitter/array.h b/src/tree_sitter/array.h
index 186ba67..15a3b23 100644
--- a/src/tree_sitter/array.h
+++ b/src/tree_sitter/array.h
@@ -66,9 +66,12 @@ extern "C" {
 /// Increase the array's size by `count` elements.
 /// New elements are zero-initialized.
 #define array_grow_by(self, count) \
-  (_array__grow((Array *)(self), count, array_elem_size(self)), \
-   memset((self)->contents + (self)->size, 0, (count) * array_elem_size(self)), \
-   (self)->size += (count))
+  do { \
+    if ((count) == 0) break; \
+    _array__grow((Array *)(self), count, array_elem_size(self)); \
+    memset((self)->contents + (self)->size, 0, (count) * array_elem_size(self)); \
+    (self)->size += (count); \
+  } while (0)
 
 /// Append all elements from one array to the end of another.
 #define array_push_all(self, other)                                       \
diff --git a/src/tree_sitter/parser.h b/src/tree_sitter/parser.h
index 17b4fde..17f0e94 100644
--- a/src/tree_sitter/parser.h
+++ b/src/tree_sitter/parser.h
@@ -86,6 +86,11 @@ typedef union {
   } entry;
 } TSParseActionEntry;
 
+typedef struct {
+  int32_t start;
+  int32_t end;
+} TSCharacterRange;
+
 struct TSLanguage {
   uint32_t version;
   uint32_t symbol_count;
@@ -125,6 +130,24 @@ struct TSLanguage {
   const TSStateId *primary_state_ids;
 };
 
+static inline bool set_contains(TSCharacterRange *ranges, uint32_t len, int32_t lookahead) {
+  uint32_t index = 0;
+  uint32_t size = len - index;
+  while (size > 1) {
+    uint32_t half_size = size / 2;
+    uint32_t mid_index = index + half_size;
+    TSCharacterRange *range = &ranges[mid_index];
+    if (lookahead >= range->start && lookahead <= range->end) {
+      return true;
+    } else if (lookahead > range->end) {
+      index = mid_index;
+    }
+    size -= half_size;
+  }
+  TSCharacterRange *range = &ranges[index];
+  return (lookahead >= range->start && lookahead <= range->end);
+}
+
 /*
  *  Lexer Macros
  */
@@ -154,6 +177,17 @@ struct TSLanguage {
     goto next_state;         \
   }
 
+#define ADVANCE_MAP(...)                                              \
+  {                                                                   \
+    static const uint16_t map[] = { __VA_ARGS__ };                    \
+    for (uint32_t i = 0; i < sizeof(map) / sizeof(map[0]); i += 2) {  \
+      if (map[i] == lookahead) {                                      \
+        state = map[i + 1];                                           \
+        goto next_state;                                              \
+      }                                                               \
+    }                                                                 \
+  }
+
 #define SKIP(state_value) \
   {                       \
     skip = true;          \
@@ -203,14 +237,15 @@ struct TSLanguage {
     }                                 \
   }}
 
-#define REDUCE(symbol_val, child_count_val, ...) \
-  {{                                             \
-    .reduce = {                                  \
-      .type = TSParseActionTypeReduce,           \
-      .symbol = symbol_val,                      \
-      .child_count = child_count_val,            \
-      __VA_ARGS__                                \
-    },                                           \
+#define REDUCE(symbol_name, children, precedence, prod_id) \
+  {{                                                       \
+    .reduce = {                                            \
+      .type = TSParseActionTypeReduce,                     \
+      .symbol = symbol_name,                               \
+      .child_count = children,                             \
+      .dynamic_precedence = precedence,                    \
+      .production_id = prod_id                             \
+    },                                                     \
   }}
 
 #define RECOVER()                    \


Test patch:
diff --git a/test/corpus/literals.txt b/test/corpus/literals.txt
index a0ee2d9..ce5f720 100644
--- a/test/corpus/literals.txt
+++ b/test/corpus/literals.txt
@@ -126,7 +126,7 @@ B"sup"
 "multiline \
 string"
 b"\x12\u12\U12\x13\N{WINKING FACE}"
-"\xab\123\'\"\a\b\f\r\n\t\v\\"
+"\xab\1\12\123\'\"\a\b\f\r\n\t\v\\"
 "\xgh\o123\p\q\c\d\e\u12\U1234"
 f'\N{GREEK CAPITAL LETTER DELTA}'
 
@@ -202,6 +202,8 @@ f'\N{GREEK CAPITAL LETTER DELTA}'
         (escape_sequence)
         (escape_sequence)
         (escape_sequence)
+        (escape_sequence)
+        (escape_sequence)
         (escape_sequence))
       (string_end)))
   (expression_statement