meriyah 4.4.3 → 4.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/meriyah.cjs CHANGED
@@ -1,7 +1,5 @@
1
1
  'use strict';
2
2
 
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
3
  const errorMessages = {
6
4
  [0]: 'Unexpected token',
7
5
  [28]: "Unexpected token: '%0'",
@@ -199,7 +197,7 @@ const unicodeLookup = ((compressed, lookup) => {
199
197
  const result = new Uint32Array(104448);
200
198
  let index = 0;
201
199
  let subIndex = 0;
202
- while (index < 3540) {
200
+ while (index < 3701) {
203
201
  const inst = compressed[index++];
204
202
  if (inst < 0) {
205
203
  subIndex -= inst;
@@ -217,7 +215,7 @@ const unicodeLookup = ((compressed, lookup) => {
217
215
  }
218
216
  }
219
217
  return result;
220
- })([-1, 2, 24, 2, 25, 2, 5, -1, 0, 77595648, 3, 44, 2, 3, 0, 14, 2, 57, 2, 58, 3, 0, 3, 0, 3168796671, 0, 4294956992, 2, 1, 2, 0, 2, 59, 3, 0, 4, 0, 4294966523, 3, 0, 4, 2, 16, 2, 60, 2, 0, 0, 4294836735, 0, 3221225471, 0, 4294901942, 2, 61, 0, 134152192, 3, 0, 2, 0, 4294951935, 3, 0, 2, 0, 2683305983, 0, 2684354047, 2, 17, 2, 0, 0, 4294961151, 3, 0, 2, 2, 19, 2, 0, 0, 608174079, 2, 0, 2, 131, 2, 6, 2, 56, -1, 2, 37, 0, 4294443263, 2, 1, 3, 0, 3, 0, 4294901711, 2, 39, 0, 4089839103, 0, 2961209759, 0, 1342439375, 0, 4294543342, 0, 3547201023, 0, 1577204103, 0, 4194240, 0, 4294688750, 2, 2, 0, 80831, 0, 4261478351, 0, 4294549486, 2, 2, 0, 2967484831, 0, 196559, 0, 3594373100, 0, 3288319768, 0, 8469959, 2, 194, 2, 3, 0, 3825204735, 0, 123747807, 0, 65487, 0, 4294828015, 0, 4092591615, 0, 1080049119, 0, 458703, 2, 3, 2, 0, 0, 2163244511, 0, 4227923919, 0, 4236247022, 2, 66, 0, 4284449919, 0, 851904, 2, 4, 2, 11, 0, 67076095, -1, 2, 67, 0, 1073741743, 0, 4093591391, -1, 0, 50331649, 0, 3265266687, 2, 32, 0, 4294844415, 0, 4278190047, 2, 18, 2, 129, -1, 3, 0, 2, 2, 21, 2, 0, 2, 9, 2, 0, 2, 14, 2, 15, 3, 0, 10, 2, 69, 2, 0, 2, 70, 2, 71, 2, 72, 2, 0, 2, 73, 2, 0, 2, 10, 0, 261632, 2, 23, 3, 0, 2, 2, 12, 2, 4, 3, 0, 18, 2, 74, 2, 5, 3, 0, 2, 2, 75, 0, 2088959, 2, 27, 2, 8, 0, 909311, 3, 0, 2, 0, 814743551, 2, 41, 0, 67057664, 3, 0, 2, 2, 40, 2, 0, 2, 28, 2, 0, 2, 29, 2, 7, 0, 268374015, 2, 26, 2, 49, 2, 0, 2, 76, 0, 134153215, -1, 2, 6, 2, 0, 2, 7, 0, 2684354559, 0, 67044351, 0, 3221160064, 0, 1, -1, 3, 0, 2, 2, 42, 0, 1046528, 3, 0, 3, 2, 8, 2, 0, 2, 51, 0, 4294960127, 2, 9, 2, 38, 2, 10, 0, 4294377472, 2, 11, 3, 0, 7, 0, 4227858431, 3, 0, 8, 2, 12, 2, 0, 2, 78, 2, 9, 2, 0, 2, 79, 2, 80, 2, 81, -1, 2, 124, 0, 1048577, 2, 82, 2, 13, -1, 2, 13, 0, 131042, 2, 83, 2, 84, 2, 85, 2, 0, 2, 33, -83, 2, 0, 2, 53, 2, 7, 3, 0, 4, 0, 1046559, 2, 0, 2, 14, 2, 0, 0, 2147516671, 2, 20, 3, 86, 2, 2, 0, -16, 2, 87, 0, 524222462, 2, 4, 2, 0, 0, 4269801471, 2, 4, 2, 0, 2, 15, 2, 77, 2, 16, 3, 0, 2, 2, 47, 2, 0, -1, 2, 17, -16, 3, 0, 206, -2, 3, 0, 655, 2, 18, 3, 0, 36, 2, 68, -1, 2, 17, 2, 9, 3, 0, 8, 2, 89, 2, 121, 2, 0, 0, 3220242431, 3, 0, 3, 2, 19, 2, 90, 2, 91, 3, 0, 2, 2, 92, 2, 0, 2, 93, 2, 94, 2, 0, 0, 4351, 2, 0, 2, 8, 3, 0, 2, 0, 67043391, 0, 3909091327, 2, 0, 2, 22, 2, 8, 2, 18, 3, 0, 2, 0, 67076097, 2, 7, 2, 0, 2, 20, 0, 67059711, 0, 4236247039, 3, 0, 2, 0, 939524103, 0, 8191999, 2, 97, 2, 98, 2, 15, 2, 21, 3, 0, 3, 0, 67057663, 3, 0, 349, 2, 99, 2, 100, 2, 6, -264, 3, 0, 11, 2, 22, 3, 0, 2, 2, 31, -1, 0, 3774349439, 2, 101, 2, 102, 3, 0, 2, 2, 19, 2, 103, 3, 0, 10, 2, 9, 2, 17, 2, 0, 2, 45, 2, 0, 2, 30, 2, 104, 2, 23, 0, 1638399, 2, 172, 2, 105, 3, 0, 3, 2, 18, 2, 24, 2, 25, 2, 5, 2, 26, 2, 0, 2, 7, 2, 106, -1, 2, 107, 2, 108, 2, 109, -1, 3, 0, 3, 2, 11, -2, 2, 0, 2, 27, -3, 2, 150, -4, 2, 18, 2, 0, 2, 35, 0, 1, 2, 0, 2, 62, 2, 28, 2, 11, 2, 9, 2, 0, 2, 110, -1, 3, 0, 4, 2, 9, 2, 21, 2, 111, 2, 6, 2, 0, 2, 112, 2, 0, 2, 48, -4, 3, 0, 9, 2, 20, 2, 29, 2, 30, -4, 2, 113, 2, 114, 2, 29, 2, 20, 2, 7, -2, 2, 115, 2, 29, 2, 31, -2, 2, 0, 2, 116, -2, 0, 4277137519, 0, 2269118463, -1, 3, 18, 2, -1, 2, 32, 2, 36, 2, 0, 3, 29, 2, 2, 34, 2, 19, -3, 3, 0, 2, 2, 33, -1, 2, 0, 2, 34, 2, 0, 2, 34, 2, 0, 2, 46, -10, 2, 0, 0, 203775, -2, 2, 18, 2, 43, 2, 35, -2, 2, 17, 2, 117, 2, 20, 3, 0, 2, 2, 36, 0, 2147549120, 2, 0, 2, 11, 2, 17, 2, 135, 2, 0, 2, 37, 2, 52, 0, 5242879, 3, 0, 2, 0, 402644511, -1, 2, 120, 0, 1090519039, -2, 2, 122, 2, 38, 2, 0, 0, 67045375, 2, 39, 0, 4226678271, 0, 3766565279, 0, 2039759, -4, 3, 0, 2, 0, 3288270847, 0, 3, 3, 0, 2, 0, 67043519, -5, 2, 0, 0, 4282384383, 0, 1056964609, -1, 3, 0, 2, 0, 67043345, -1, 2, 0, 2, 40, 2, 41, -1, 2, 10, 2, 42, -6, 2, 0, 2, 11, -3, 3, 0, 2, 0, 2147484671, 2, 125, 0, 4190109695, 2, 50, -2, 2, 126, 0, 4244635647, 0, 27, 2, 0, 2, 7, 2, 43, 2, 0, 2, 63, -1, 2, 0, 2, 40, -8, 2, 54, 2, 44, 0, 67043329, 2, 127, 2, 45, 0, 8388351, -2, 2, 128, 0, 3028287487, 2, 46, 2, 130, 0, 33259519, 2, 41, -9, 2, 20, -5, 2, 64, -2, 3, 0, 28, 2, 31, -3, 3, 0, 3, 2, 47, 3, 0, 6, 2, 48, -85, 3, 0, 33, 2, 47, -126, 3, 0, 18, 2, 36, -269, 3, 0, 17, 2, 40, 2, 7, 2, 41, -2, 2, 17, 2, 49, 2, 0, 2, 20, 2, 50, 2, 132, 2, 23, -21, 3, 0, 2, -4, 3, 0, 2, 0, 4294936575, 2, 0, 0, 4294934783, -2, 0, 196635, 3, 0, 191, 2, 51, 3, 0, 38, 2, 29, -1, 2, 33, -279, 3, 0, 8, 2, 7, -1, 2, 133, 2, 52, 3, 0, 11, 2, 6, -72, 3, 0, 3, 2, 134, 0, 1677656575, -166, 0, 4161266656, 0, 4071, 0, 15360, -4, 0, 28, -13, 3, 0, 2, 2, 37, 2, 0, 2, 136, 2, 137, 2, 55, 2, 0, 2, 138, 2, 139, 2, 140, 3, 0, 10, 2, 141, 2, 142, 2, 15, 3, 37, 2, 3, 53, 2, 3, 54, 2, 0, 4294954999, 2, 0, -16, 2, 0, 2, 88, 2, 0, 0, 2105343, 0, 4160749584, 0, 65534, -42, 0, 4194303871, 0, 2011, -6, 2, 0, 0, 1073684479, 0, 17407, -11, 2, 0, 2, 31, -40, 3, 0, 6, 0, 8323103, -1, 3, 0, 2, 2, 42, -37, 2, 55, 2, 144, 2, 145, 2, 146, 2, 147, 2, 148, -105, 2, 24, -32, 3, 0, 1334, 2, 9, -1, 3, 0, 129, 2, 27, 3, 0, 6, 2, 9, 3, 0, 180, 2, 149, 3, 0, 233, 0, 1, -96, 3, 0, 16, 2, 9, -47, 3, 0, 154, 2, 56, -22381, 3, 0, 7, 2, 23, -6130, 3, 5, 2, -1, 0, 69207040, 3, 44, 2, 3, 0, 14, 2, 57, 2, 58, -3, 0, 3168731136, 0, 4294956864, 2, 1, 2, 0, 2, 59, 3, 0, 4, 0, 4294966275, 3, 0, 4, 2, 16, 2, 60, 2, 0, 2, 33, -1, 2, 17, 2, 61, -1, 2, 0, 2, 56, 0, 4294885376, 3, 0, 2, 0, 3145727, 0, 2617294944, 0, 4294770688, 2, 23, 2, 62, 3, 0, 2, 0, 131135, 2, 95, 0, 70256639, 0, 71303167, 0, 272, 2, 40, 2, 56, -1, 2, 37, 2, 30, -1, 2, 96, 2, 63, 0, 4278255616, 0, 4294836227, 0, 4294549473, 0, 600178175, 0, 2952806400, 0, 268632067, 0, 4294543328, 0, 57540095, 0, 1577058304, 0, 1835008, 0, 4294688736, 2, 65, 2, 64, 0, 33554435, 2, 123, 2, 65, 2, 151, 0, 131075, 0, 3594373096, 0, 67094296, 2, 64, -1, 0, 4294828000, 0, 603979263, 2, 160, 0, 3, 0, 4294828001, 0, 602930687, 2, 183, 0, 393219, 0, 4294828016, 0, 671088639, 0, 2154840064, 0, 4227858435, 0, 4236247008, 2, 66, 2, 36, -1, 2, 4, 0, 917503, 2, 36, -1, 2, 67, 0, 537788335, 0, 4026531935, -1, 0, 1, -1, 2, 32, 2, 68, 0, 7936, -3, 2, 0, 0, 2147485695, 0, 1010761728, 0, 4292984930, 0, 16387, 2, 0, 2, 14, 2, 15, 3, 0, 10, 2, 69, 2, 0, 2, 70, 2, 71, 2, 72, 2, 0, 2, 73, 2, 0, 2, 11, -1, 2, 23, 3, 0, 2, 2, 12, 2, 4, 3, 0, 18, 2, 74, 2, 5, 3, 0, 2, 2, 75, 0, 253951, 3, 19, 2, 0, 122879, 2, 0, 2, 8, 0, 276824064, -2, 3, 0, 2, 2, 40, 2, 0, 0, 4294903295, 2, 0, 2, 29, 2, 7, -1, 2, 17, 2, 49, 2, 0, 2, 76, 2, 41, -1, 2, 20, 2, 0, 2, 27, -2, 0, 128, -2, 2, 77, 2, 8, 0, 4064, -1, 2, 119, 0, 4227907585, 2, 0, 2, 118, 2, 0, 2, 48, 2, 173, 2, 9, 2, 38, 2, 10, -1, 0, 74440192, 3, 0, 6, -2, 3, 0, 8, 2, 12, 2, 0, 2, 78, 2, 9, 2, 0, 2, 79, 2, 80, 2, 81, -3, 2, 82, 2, 13, -3, 2, 83, 2, 84, 2, 85, 2, 0, 2, 33, -83, 2, 0, 2, 53, 2, 7, 3, 0, 4, 0, 817183, 2, 0, 2, 14, 2, 0, 0, 33023, 2, 20, 3, 86, 2, -17, 2, 87, 0, 524157950, 2, 4, 2, 0, 2, 88, 2, 4, 2, 0, 2, 15, 2, 77, 2, 16, 3, 0, 2, 2, 47, 2, 0, -1, 2, 17, -16, 3, 0, 206, -2, 3, 0, 655, 2, 18, 3, 0, 36, 2, 68, -1, 2, 17, 2, 9, 3, 0, 8, 2, 89, 0, 3072, 2, 0, 0, 2147516415, 2, 9, 3, 0, 2, 2, 23, 2, 90, 2, 91, 3, 0, 2, 2, 92, 2, 0, 2, 93, 2, 94, 0, 4294965179, 0, 7, 2, 0, 2, 8, 2, 91, 2, 8, -1, 0, 1761345536, 2, 95, 0, 4294901823, 2, 36, 2, 18, 2, 96, 2, 34, 2, 166, 0, 2080440287, 2, 0, 2, 33, 2, 143, 0, 3296722943, 2, 0, 0, 1046675455, 0, 939524101, 0, 1837055, 2, 97, 2, 98, 2, 15, 2, 21, 3, 0, 3, 0, 7, 3, 0, 349, 2, 99, 2, 100, 2, 6, -264, 3, 0, 11, 2, 22, 3, 0, 2, 2, 31, -1, 0, 2700607615, 2, 101, 2, 102, 3, 0, 2, 2, 19, 2, 103, 3, 0, 10, 2, 9, 2, 17, 2, 0, 2, 45, 2, 0, 2, 30, 2, 104, -3, 2, 105, 3, 0, 3, 2, 18, -1, 3, 5, 2, 2, 26, 2, 0, 2, 7, 2, 106, -1, 2, 107, 2, 108, 2, 109, -1, 3, 0, 3, 2, 11, -2, 2, 0, 2, 27, -8, 2, 18, 2, 0, 2, 35, -1, 2, 0, 2, 62, 2, 28, 2, 29, 2, 9, 2, 0, 2, 110, -1, 3, 0, 4, 2, 9, 2, 17, 2, 111, 2, 6, 2, 0, 2, 112, 2, 0, 2, 48, -4, 3, 0, 9, 2, 20, 2, 29, 2, 30, -4, 2, 113, 2, 114, 2, 29, 2, 20, 2, 7, -2, 2, 115, 2, 29, 2, 31, -2, 2, 0, 2, 116, -2, 0, 4277075969, 2, 29, -1, 3, 18, 2, -1, 2, 32, 2, 117, 2, 0, 3, 29, 2, 2, 34, 2, 19, -3, 3, 0, 2, 2, 33, -1, 2, 0, 2, 34, 2, 0, 2, 34, 2, 0, 2, 48, -10, 2, 0, 0, 197631, -2, 2, 18, 2, 43, 2, 118, -2, 2, 17, 2, 117, 2, 20, 2, 119, 2, 51, -2, 2, 119, 2, 23, 2, 17, 2, 33, 2, 119, 2, 36, 0, 4294901904, 0, 4718591, 2, 119, 2, 34, 0, 335544350, -1, 2, 120, 2, 121, -2, 2, 122, 2, 38, 2, 7, -1, 2, 123, 2, 65, 0, 3758161920, 0, 3, -4, 2, 0, 2, 27, 0, 2147485568, 0, 3, 2, 0, 2, 23, 0, 176, -5, 2, 0, 2, 47, 2, 186, -1, 2, 0, 2, 23, 2, 197, -1, 2, 0, 0, 16779263, -2, 2, 11, -7, 2, 0, 2, 121, -3, 3, 0, 2, 2, 124, 2, 125, 0, 2147549183, 0, 2, -2, 2, 126, 2, 35, 0, 10, 0, 4294965249, 0, 67633151, 0, 4026597376, 2, 0, 0, 536871935, -1, 2, 0, 2, 40, -8, 2, 54, 2, 47, 0, 1, 2, 127, 2, 23, -3, 2, 128, 2, 35, 2, 129, 2, 130, 0, 16778239, -10, 2, 34, -5, 2, 64, -2, 3, 0, 28, 2, 31, -3, 3, 0, 3, 2, 47, 3, 0, 6, 2, 48, -85, 3, 0, 33, 2, 47, -126, 3, 0, 18, 2, 36, -269, 3, 0, 17, 2, 40, 2, 7, -3, 2, 17, 2, 131, 2, 0, 2, 23, 2, 48, 2, 132, 2, 23, -21, 3, 0, 2, -4, 3, 0, 2, 0, 67583, -1, 2, 103, -2, 0, 11, 3, 0, 191, 2, 51, 3, 0, 38, 2, 29, -1, 2, 33, -279, 3, 0, 8, 2, 7, -1, 2, 133, 2, 52, 3, 0, 11, 2, 6, -72, 3, 0, 3, 2, 134, 2, 135, -187, 3, 0, 2, 2, 37, 2, 0, 2, 136, 2, 137, 2, 55, 2, 0, 2, 138, 2, 139, 2, 140, 3, 0, 10, 2, 141, 2, 142, 2, 15, 3, 37, 2, 3, 53, 2, 3, 54, 2, 2, 143, -73, 2, 0, 0, 1065361407, 0, 16384, -11, 2, 0, 2, 121, -40, 3, 0, 6, 2, 117, -1, 3, 0, 2, 0, 2063, -37, 2, 55, 2, 144, 2, 145, 2, 146, 2, 147, 2, 148, -138, 3, 0, 1334, 2, 9, -1, 3, 0, 129, 2, 27, 3, 0, 6, 2, 9, 3, 0, 180, 2, 149, 3, 0, 233, 0, 1, -96, 3, 0, 16, 2, 9, -47, 3, 0, 154, 2, 56, -28517, 2, 0, 0, 1, -1, 2, 124, 2, 0, 0, 8193, -21, 2, 193, 0, 10255, 0, 4, -11, 2, 64, 2, 171, -1, 0, 71680, -1, 2, 161, 0, 4292900864, 0, 805306431, -5, 2, 150, -1, 2, 157, -1, 0, 6144, -2, 2, 127, -1, 2, 154, -1, 0, 2147532800, 2, 151, 2, 165, 2, 0, 2, 164, 0, 524032, 0, 4, -4, 2, 190, 0, 205128192, 0, 1333757536, 0, 2147483696, 0, 423953, 0, 747766272, 0, 2717763192, 0, 4286578751, 0, 278545, 2, 152, 0, 4294886464, 0, 33292336, 0, 417809, 2, 152, 0, 1327482464, 0, 4278190128, 0, 700594195, 0, 1006647527, 0, 4286497336, 0, 4160749631, 2, 153, 0, 469762560, 0, 4171219488, 0, 8323120, 2, 153, 0, 202375680, 0, 3214918176, 0, 4294508592, 2, 153, -1, 0, 983584, 0, 48, 0, 58720273, 0, 3489923072, 0, 10517376, 0, 4293066815, 0, 1, 0, 2013265920, 2, 177, 2, 0, 0, 2089, 0, 3221225552, 0, 201375904, 2, 0, -2, 0, 256, 0, 122880, 0, 16777216, 2, 150, 0, 4160757760, 2, 0, -6, 2, 167, -11, 0, 3263218176, -1, 0, 49664, 0, 2160197632, 0, 8388802, -1, 0, 12713984, -1, 2, 154, 2, 159, 2, 178, -2, 2, 162, -20, 0, 3758096385, -2, 2, 155, 0, 4292878336, 2, 90, 2, 169, 0, 4294057984, -2, 2, 163, 2, 156, 2, 175, -2, 2, 155, -1, 2, 182, -1, 2, 170, 2, 124, 0, 4026593280, 0, 14, 0, 4292919296, -1, 2, 158, 0, 939588608, -1, 0, 805306368, -1, 2, 124, 0, 1610612736, 2, 156, 2, 157, 2, 4, 2, 0, -2, 2, 158, 2, 159, -3, 0, 267386880, -1, 2, 160, 0, 7168, -1, 0, 65024, 2, 154, 2, 161, 2, 179, -7, 2, 168, -8, 2, 162, -1, 0, 1426112704, 2, 163, -1, 2, 164, 0, 271581216, 0, 2149777408, 2, 23, 2, 161, 2, 124, 0, 851967, 2, 180, -1, 2, 23, 2, 181, -4, 2, 158, -20, 2, 195, 2, 165, -56, 0, 3145728, 2, 185, -4, 2, 166, 2, 124, -4, 0, 32505856, -1, 2, 167, -1, 0, 2147385088, 2, 90, 1, 2155905152, 2, -3, 2, 103, 2, 0, 2, 168, -2, 2, 169, -6, 2, 170, 0, 4026597375, 0, 1, -1, 0, 1, -1, 2, 171, -3, 2, 117, 2, 64, -2, 2, 166, -2, 2, 176, 2, 124, -878, 2, 159, -36, 2, 172, -1, 2, 201, -10, 2, 188, -5, 2, 174, -6, 0, 4294965251, 2, 27, -1, 2, 173, -1, 2, 174, -2, 0, 4227874752, -3, 0, 2146435072, 2, 159, -2, 0, 1006649344, 2, 124, -1, 2, 90, 0, 201375744, -3, 0, 134217720, 2, 90, 0, 4286677377, 0, 32896, -1, 2, 158, -3, 2, 175, -349, 2, 176, 0, 1920, 2, 177, 3, 0, 264, -11, 2, 157, -2, 2, 178, 2, 0, 0, 520617856, 0, 2692743168, 0, 36, -3, 0, 524284, -11, 2, 23, -1, 2, 187, -1, 2, 184, 0, 3221291007, 2, 178, -1, 2, 202, 0, 2158720, -3, 2, 159, 0, 1, -4, 2, 124, 0, 3808625411, 0, 3489628288, 2, 200, 0, 1207959680, 0, 3221274624, 2, 0, -3, 2, 179, 0, 120, 0, 7340032, -2, 2, 180, 2, 4, 2, 23, 2, 163, 3, 0, 4, 2, 159, -1, 2, 181, 2, 177, -1, 0, 8176, 2, 182, 2, 179, 2, 183, -1, 0, 4290773232, 2, 0, -4, 2, 163, 2, 189, 0, 15728640, 2, 177, -1, 2, 161, -1, 0, 4294934512, 3, 0, 4, -9, 2, 90, 2, 170, 2, 184, 3, 0, 4, 0, 704, 0, 1849688064, 2, 185, -1, 2, 124, 0, 4294901887, 2, 0, 0, 130547712, 0, 1879048192, 2, 199, 3, 0, 2, -1, 2, 186, 2, 187, -1, 0, 17829776, 0, 2025848832, 0, 4261477888, -2, 2, 0, -1, 0, 4286580608, -1, 0, 29360128, 2, 192, 0, 16252928, 0, 3791388672, 2, 38, 3, 0, 2, -2, 2, 196, 2, 0, -1, 2, 103, -1, 0, 66584576, -1, 2, 191, 3, 0, 9, 2, 124, -1, 0, 4294755328, 3, 0, 2, -1, 2, 161, 2, 178, 3, 0, 2, 2, 23, 2, 188, 2, 90, -2, 0, 245760, 0, 2147418112, -1, 2, 150, 2, 203, 0, 4227923456, -1, 2, 164, 2, 161, 2, 90, -3, 0, 4292870145, 0, 262144, 2, 124, 3, 0, 2, 0, 1073758848, 2, 189, -1, 0, 4227921920, 2, 190, 0, 68289024, 0, 528402016, 0, 4292927536, 3, 0, 4, -2, 0, 268435456, 2, 91, -2, 2, 191, 3, 0, 5, -1, 2, 192, 2, 163, 2, 0, -2, 0, 4227923936, 2, 62, -1, 2, 155, 2, 95, 2, 0, 2, 154, 2, 158, 3, 0, 6, -1, 2, 177, 3, 0, 3, -2, 0, 2146959360, 0, 9440640, 0, 104857600, 0, 4227923840, 3, 0, 2, 0, 768, 2, 193, 2, 77, -2, 2, 161, -2, 2, 119, -1, 2, 155, 3, 0, 8, 0, 512, 0, 8388608, 2, 194, 2, 172, 2, 187, 0, 4286578944, 3, 0, 2, 0, 1152, 0, 1266679808, 2, 191, 0, 576, 0, 4261707776, 2, 95, 3, 0, 9, 2, 155, 3, 0, 5, 2, 16, -1, 0, 2147221504, -28, 2, 178, 3, 0, 3, -3, 0, 4292902912, -6, 2, 96, 3, 0, 85, -33, 0, 4294934528, 3, 0, 126, -18, 2, 195, 3, 0, 269, -17, 2, 155, 2, 124, 2, 198, 3, 0, 2, 2, 23, 0, 4290822144, -2, 0, 67174336, 0, 520093700, 2, 17, 3, 0, 21, -2, 2, 179, 3, 0, 3, -2, 0, 30720, -1, 0, 32512, 3, 0, 2, 0, 4294770656, -191, 2, 174, -38, 2, 170, 2, 0, 2, 196, 3, 0, 279, -8, 2, 124, 2, 0, 0, 4294508543, 0, 65295, -11, 2, 177, 3, 0, 72, -3, 0, 3758159872, 0, 201391616, 3, 0, 155, -7, 2, 170, -1, 0, 384, -1, 0, 133693440, -3, 2, 196, -2, 2, 26, 3, 0, 4, 2, 169, -2, 2, 90, 2, 155, 3, 0, 4, -2, 2, 164, -1, 2, 150, 0, 335552923, 2, 197, -1, 0, 538974272, 0, 2214592512, 0, 132000, -10, 0, 192, -8, 0, 12288, -21, 0, 134213632, 0, 4294901761, 3, 0, 42, 0, 100663424, 0, 4294965284, 3, 0, 6, -1, 0, 3221282816, 2, 198, 3, 0, 11, -1, 2, 199, 3, 0, 40, -6, 0, 4286578784, 2, 0, -2, 0, 1006694400, 3, 0, 24, 2, 35, -1, 2, 94, 3, 0, 2, 0, 1, 2, 163, 3, 0, 6, 2, 197, 0, 4110942569, 0, 1432950139, 0, 2701658217, 0, 4026532864, 0, 4026532881, 2, 0, 2, 45, 3, 0, 8, -1, 2, 158, -2, 2, 169, 0, 98304, 0, 65537, 2, 170, -5, 0, 4294950912, 2, 0, 2, 118, 0, 65528, 2, 177, 0, 4294770176, 2, 26, 3, 0, 4, -30, 2, 174, 0, 3758153728, -3, 2, 169, -2, 2, 155, 2, 188, 2, 158, -1, 2, 191, -1, 2, 161, 0, 4294754304, 3, 0, 2, -3, 0, 33554432, -2, 2, 200, -3, 2, 169, 0, 4175478784, 2, 201, 0, 4286643712, 0, 4286644216, 2, 0, -4, 2, 202, -1, 2, 165, 0, 4227923967, 3, 0, 32, -1334, 2, 163, 2, 0, -129, 2, 94, -6, 2, 163, -180, 2, 203, -233, 2, 4, 3, 0, 96, -16, 2, 163, 3, 0, 47, -154, 2, 165, 3, 0, 22381, -7, 2, 17, 3, 0, 6128], [4294967295, 4294967291, 4092460543, 4294828031, 4294967294, 134217726, 268435455, 2147483647, 1048575, 1073741823, 3892314111, 134217727, 1061158911, 536805376, 4294910143, 4160749567, 4294901759, 4294901760, 536870911, 262143, 8388607, 4294902783, 4294918143, 65535, 67043328, 2281701374, 4294967232, 2097151, 4294903807, 4194303, 255, 67108863, 4294967039, 511, 524287, 131071, 127, 4292870143, 4294902271, 4294549487, 33554431, 1023, 67047423, 4294901888, 4286578687, 4294770687, 67043583, 32767, 15, 2047999, 67043343, 16777215, 4294902000, 4294934527, 4294966783, 4294967279, 2047, 262083, 20511, 4290772991, 41943039, 493567, 4294959104, 603979775, 65536, 602799615, 805044223, 4294965206, 8191, 1031749119, 4294917631, 2134769663, 4286578493, 4282253311, 4294942719, 33540095, 4294905855, 4294967264, 2868854591, 1608515583, 265232348, 534519807, 2147614720, 1060109444, 4093640016, 17376, 2139062143, 224, 4169138175, 4294909951, 4286578688, 4294967292, 4294965759, 2044, 4292870144, 4294966272, 4294967280, 8289918, 4294934399, 4294901775, 4294965375, 1602223615, 4294967259, 4294443008, 268369920, 4292804608, 486341884, 4294963199, 3087007615, 1073692671, 4128527, 4279238655, 4294902015, 4294966591, 2445279231, 3670015, 3238002687, 31, 63, 4294967288, 4294705151, 4095, 3221208447, 4294549472, 2147483648, 4285526655, 4294966527, 4294705152, 4294966143, 64, 4294966719, 16383, 3774873592, 458752, 536807423, 67043839, 3758096383, 3959414372, 3755993023, 2080374783, 4294835295, 4294967103, 4160749565, 4087, 184024726, 2862017156, 1593309078, 268434431, 268434414, 4294901763, 536870912, 2952790016, 202506752, 139264, 402653184, 4261412864, 4227922944, 49152, 61440, 3758096384, 117440512, 65280, 3233808384, 3221225472, 2097152, 4294965248, 32768, 57152, 67108864, 4293918720, 4290772992, 25165824, 57344, 4227915776, 4278190080, 4227907584, 65520, 4026531840, 4227858432, 4160749568, 3758129152, 4294836224, 63488, 1073741824, 4294967040, 4194304, 251658240, 196608, 4294963200, 64512, 417808, 4227923712, 12582912, 50331648, 65472, 4294967168, 4294966784, 16, 4294917120, 2080374784, 4096, 65408, 524288, 65532]);
218
+ })([-1, 2, 26, 2, 27, 2, 5, -1, 0, 77595648, 3, 44, 2, 3, 0, 14, 2, 57, 2, 58, 3, 0, 3, 0, 3168796671, 0, 4294956992, 2, 1, 2, 0, 2, 59, 3, 0, 4, 0, 4294966523, 3, 0, 4, 2, 16, 2, 60, 2, 0, 0, 4294836735, 0, 3221225471, 0, 4294901942, 2, 61, 0, 134152192, 3, 0, 2, 0, 4294951935, 3, 0, 2, 0, 2683305983, 0, 2684354047, 2, 18, 2, 0, 0, 4294961151, 3, 0, 2, 2, 19, 2, 0, 0, 608174079, 2, 0, 2, 54, 2, 7, 2, 6, 0, 4278222591, 3, 0, 2, 2, 1, 3, 0, 3, 0, 4294901711, 2, 40, 0, 4089839103, 0, 2961209759, 0, 1342439375, 0, 4294543342, 0, 3547201023, 0, 1577204103, 0, 4194240, 0, 4294688750, 2, 2, 0, 80831, 0, 4261478351, 0, 4294549486, 2, 2, 0, 2967484831, 0, 196559, 0, 3594373100, 0, 3288319768, 0, 8469959, 2, 200, 2, 3, 0, 4093640191, 0, 660618719, 0, 65487, 0, 4294828015, 0, 4092591615, 0, 1616920031, 0, 982991, 2, 3, 2, 0, 0, 2163244511, 0, 4227923919, 0, 4236247022, 2, 66, 0, 4284449919, 0, 851904, 2, 4, 2, 12, 0, 67076095, -1, 2, 67, 0, 1073741743, 0, 4093607775, -1, 0, 50331649, 0, 3265266687, 2, 33, 0, 4294844415, 0, 4278190047, 2, 20, 2, 133, -1, 3, 0, 2, 2, 23, 2, 0, 2, 10, 2, 0, 2, 15, 2, 22, 3, 0, 10, 2, 69, 2, 0, 2, 70, 2, 71, 2, 72, 2, 0, 2, 73, 2, 0, 2, 11, 0, 261632, 2, 25, 3, 0, 2, 2, 13, 2, 4, 3, 0, 18, 2, 74, 2, 5, 3, 0, 2, 2, 75, 0, 2151677951, 2, 29, 2, 9, 0, 909311, 3, 0, 2, 0, 814743551, 2, 42, 0, 67090432, 3, 0, 2, 2, 41, 2, 0, 2, 6, 2, 0, 2, 30, 2, 8, 0, 268374015, 2, 107, 2, 48, 2, 0, 2, 76, 0, 134153215, -1, 2, 7, 2, 0, 2, 8, 0, 2684354559, 0, 67044351, 0, 3221160064, 2, 17, -1, 3, 0, 2, 0, 67051519, 0, 1046528, 3, 0, 3, 2, 9, 2, 0, 2, 50, 0, 4294960127, 2, 10, 2, 39, 2, 11, 0, 4294377472, 2, 12, 3, 0, 16, 2, 13, 2, 0, 2, 79, 2, 10, 2, 0, 2, 80, 2, 81, 2, 82, 2, 206, 2, 129, 0, 1048577, 2, 83, 2, 14, -1, 2, 14, 0, 131042, 2, 84, 2, 85, 2, 86, 2, 0, 2, 34, -83, 3, 0, 7, 0, 1046559, 2, 0, 2, 15, 2, 0, 0, 2147516671, 2, 21, 3, 87, 2, 2, 0, -16, 2, 88, 0, 524222462, 2, 4, 2, 0, 0, 4269801471, 2, 4, 3, 0, 2, 2, 28, 2, 16, 3, 0, 2, 2, 17, 2, 0, -1, 2, 18, -16, 3, 0, 206, -2, 3, 0, 692, 2, 68, -1, 2, 18, 2, 10, 3, 0, 8, 2, 90, 2, 128, 2, 0, 0, 3220242431, 3, 0, 3, 2, 19, 2, 91, 2, 92, 3, 0, 2, 2, 93, 2, 0, 2, 94, 2, 45, 2, 0, 0, 4351, 2, 0, 2, 9, 3, 0, 2, 0, 67043391, 0, 3909091327, 2, 0, 2, 24, 2, 9, 2, 20, 3, 0, 2, 0, 67076097, 2, 8, 2, 0, 2, 21, 0, 67059711, 0, 4236247039, 3, 0, 2, 0, 939524103, 0, 8191999, 2, 98, 2, 99, 2, 22, 2, 23, 3, 0, 3, 0, 67057663, 3, 0, 349, 2, 100, 2, 101, 2, 7, -264, 3, 0, 11, 2, 24, 3, 0, 2, 2, 32, -1, 0, 3774349439, 2, 102, 2, 103, 3, 0, 2, 2, 19, 2, 104, 3, 0, 10, 2, 10, 2, 18, 2, 0, 2, 46, 2, 0, 2, 31, 2, 105, 2, 25, 0, 1638399, 2, 170, 2, 106, 3, 0, 3, 2, 20, 2, 26, 2, 27, 2, 5, 2, 28, 2, 0, 2, 8, 2, 108, -1, 2, 109, 2, 110, 2, 111, -1, 3, 0, 3, 2, 12, -2, 2, 0, 2, 29, -3, 2, 159, -4, 2, 20, 2, 0, 2, 36, 0, 1, 2, 0, 2, 62, 2, 6, 2, 12, 2, 10, 2, 0, 2, 112, -1, 3, 0, 4, 2, 10, 2, 23, 2, 113, 2, 7, 2, 0, 2, 114, 2, 0, 2, 115, 2, 116, 2, 117, -2, 3, 0, 9, 2, 21, 2, 30, 2, 31, 2, 118, 2, 119, -2, 2, 120, 2, 121, 2, 30, 2, 21, 2, 8, -2, 2, 122, 2, 30, 2, 32, -2, 2, 0, 2, 38, -2, 0, 4277137519, 0, 2269118463, -1, 3, 20, 2, -1, 2, 33, 2, 37, 2, 0, 3, 30, 2, 2, 35, 2, 19, -3, 3, 0, 2, 2, 34, -1, 2, 0, 2, 35, 2, 0, 2, 35, 2, 0, 2, 47, -10, 2, 0, 0, 203775, -1, 2, 164, 2, 20, 2, 43, 2, 36, 2, 18, 2, 77, 2, 18, 2, 123, 2, 21, 3, 0, 2, 2, 37, 0, 2151677888, 2, 0, 2, 12, 0, 4294901764, 2, 140, 2, 0, 2, 52, 2, 51, 0, 5242879, 3, 0, 2, 0, 402644511, -1, 2, 125, 2, 38, 0, 3, -1, 2, 126, 2, 39, 2, 0, 0, 67045375, 2, 40, 0, 4226678271, 0, 3766565279, 0, 2039759, -4, 3, 0, 2, 0, 3288270847, 0, 3, 3, 0, 2, 0, 67043519, -5, 2, 0, 0, 4282384383, 0, 1056964609, -1, 3, 0, 2, 0, 67043345, -1, 2, 0, 2, 41, 2, 42, -1, 2, 11, 2, 55, 2, 37, -5, 2, 0, 2, 12, -3, 3, 0, 2, 0, 2147484671, 2, 130, 0, 4190109695, 2, 49, -2, 2, 131, 0, 4244635647, 0, 27, 2, 0, 2, 8, 2, 43, 2, 0, 2, 63, 2, 18, 2, 0, 2, 41, -8, 2, 53, 2, 44, 0, 67043329, 2, 45, 2, 46, 0, 8388351, -2, 2, 132, 0, 3028287487, 2, 47, 2, 134, 0, 33259519, 2, 42, -9, 2, 21, 0, 4294836223, 0, 3355443199, 0, 67043335, -2, 2, 64, -2, 3, 0, 28, 2, 32, -3, 3, 0, 3, 2, 17, 3, 0, 6, 2, 78, -81, 2, 18, 3, 0, 2, 2, 36, 3, 0, 33, 2, 25, 2, 30, -125, 3, 0, 18, 2, 37, -269, 3, 0, 17, 2, 41, 2, 8, 2, 23, 2, 0, 2, 8, 2, 23, 2, 48, 2, 0, 2, 21, 2, 49, 2, 135, 2, 25, -21, 3, 0, 2, -4, 3, 0, 2, 0, 4294936575, 2, 0, 0, 4294934783, -2, 0, 196635, 3, 0, 191, 2, 50, 3, 0, 38, 2, 30, -1, 2, 34, -278, 2, 136, 3, 0, 9, 2, 137, 2, 138, 2, 51, 3, 0, 11, 2, 7, -72, 3, 0, 3, 2, 139, 0, 1677656575, -147, 2, 0, 2, 24, 2, 37, -16, 0, 4161266656, 0, 4071, 2, 201, -4, 0, 28, -13, 3, 0, 2, 2, 52, 2, 0, 2, 141, 2, 142, 2, 56, 2, 0, 2, 143, 2, 144, 2, 145, 3, 0, 10, 2, 146, 2, 147, 2, 22, 3, 52, 2, 3, 148, 2, 3, 53, 2, 0, 4294954999, 2, 0, -16, 2, 0, 2, 89, 2, 0, 0, 2105343, 0, 4160749584, 2, 174, -34, 2, 8, 2, 150, -6, 0, 4194303871, 0, 4294903771, 2, 0, 2, 54, 2, 97, -3, 2, 0, 0, 1073684479, 0, 17407, -9, 2, 18, 2, 17, 2, 0, 2, 32, -14, 2, 18, 2, 32, -23, 2, 151, 3, 0, 6, 0, 8323103, -1, 3, 0, 2, 2, 55, -37, 2, 56, 2, 152, 2, 153, 2, 154, 2, 155, 2, 156, -105, 2, 26, -32, 3, 0, 1335, -1, 3, 0, 129, 2, 32, 3, 0, 6, 2, 10, 3, 0, 180, 2, 157, 3, 0, 233, 2, 158, 3, 0, 18, 2, 10, -77, 3, 0, 16, 2, 10, -47, 3, 0, 154, 2, 6, 3, 0, 130, 2, 25, -22250, 3, 0, 7, 2, 25, -6130, 3, 5, 2, -1, 0, 69207040, 3, 44, 2, 3, 0, 14, 2, 57, 2, 58, -3, 0, 3168731136, 0, 4294956864, 2, 1, 2, 0, 2, 59, 3, 0, 4, 0, 4294966275, 3, 0, 4, 2, 16, 2, 60, 2, 0, 2, 34, -1, 2, 18, 2, 61, -1, 2, 0, 0, 2047, 0, 4294885376, 3, 0, 2, 0, 3145727, 0, 2617294944, 0, 4294770688, 2, 25, 2, 62, 3, 0, 2, 0, 131135, 2, 95, 0, 70256639, 0, 71303167, 0, 272, 2, 41, 2, 6, 0, 32511, 2, 0, 2, 42, -1, 2, 96, 2, 63, 0, 4278255616, 0, 4294836227, 0, 4294549473, 0, 600178175, 0, 2952806400, 0, 268632067, 0, 4294543328, 0, 57540095, 0, 1577058304, 0, 1835008, 0, 4294688736, 2, 65, 2, 64, 0, 33554435, 2, 127, 2, 65, 2, 160, 0, 131075, 0, 3594373096, 0, 67094296, 2, 64, -1, 0, 4294828000, 0, 603979263, 0, 654311424, 0, 3, 0, 4294828001, 0, 602930687, 2, 167, 0, 393219, 0, 4294828016, 0, 671088639, 0, 2154840064, 0, 4227858435, 0, 4236247008, 2, 66, 2, 37, -1, 2, 4, 0, 917503, 2, 37, -1, 2, 67, 0, 537788335, 0, 4026531935, -1, 0, 1, -1, 2, 33, 2, 68, 0, 7936, -3, 2, 0, 0, 2147485695, 0, 1010761728, 0, 4292984930, 0, 16387, 2, 0, 2, 15, 2, 22, 3, 0, 10, 2, 69, 2, 0, 2, 70, 2, 71, 2, 72, 2, 0, 2, 73, 2, 0, 2, 12, -1, 2, 25, 3, 0, 2, 2, 13, 2, 4, 3, 0, 18, 2, 74, 2, 5, 3, 0, 2, 2, 75, 0, 2147745791, 3, 19, 2, 0, 122879, 2, 0, 2, 9, 0, 276824064, -2, 3, 0, 2, 2, 41, 2, 0, 0, 4294903295, 2, 0, 2, 30, 2, 8, -1, 2, 18, 2, 48, 2, 0, 2, 76, 2, 42, -1, 2, 21, 2, 0, 2, 29, -2, 0, 128, -2, 2, 28, 2, 9, 0, 8160, -1, 2, 124, 0, 4227907585, 2, 0, 2, 77, 2, 0, 2, 78, 2, 180, 2, 10, 2, 39, 2, 11, -1, 0, 74440192, 3, 0, 6, -2, 3, 0, 8, 2, 13, 2, 0, 2, 79, 2, 10, 2, 0, 2, 80, 2, 81, 2, 82, -3, 2, 83, 2, 14, -3, 2, 84, 2, 85, 2, 86, 2, 0, 2, 34, -83, 3, 0, 7, 0, 817183, 2, 0, 2, 15, 2, 0, 0, 33023, 2, 21, 3, 87, 2, -17, 2, 88, 0, 524157950, 2, 4, 2, 0, 2, 89, 2, 4, 2, 0, 2, 22, 2, 28, 2, 16, 3, 0, 2, 2, 17, 2, 0, -1, 2, 18, -16, 3, 0, 206, -2, 3, 0, 692, 2, 68, -1, 2, 18, 2, 10, 3, 0, 8, 2, 90, 0, 3072, 2, 0, 0, 2147516415, 2, 10, 3, 0, 2, 2, 25, 2, 91, 2, 92, 3, 0, 2, 2, 93, 2, 0, 2, 94, 2, 45, 0, 4294965179, 0, 7, 2, 0, 2, 9, 2, 92, 2, 9, -1, 0, 1761345536, 2, 95, 0, 4294901823, 2, 37, 2, 20, 2, 96, 2, 35, 2, 97, 0, 2080440287, 2, 0, 2, 34, 2, 149, 0, 3296722943, 2, 0, 0, 1046675455, 0, 939524101, 0, 1837055, 2, 98, 2, 99, 2, 22, 2, 23, 3, 0, 3, 0, 7, 3, 0, 349, 2, 100, 2, 101, 2, 7, -264, 3, 0, 11, 2, 24, 3, 0, 2, 2, 32, -1, 0, 2700607615, 2, 102, 2, 103, 3, 0, 2, 2, 19, 2, 104, 3, 0, 10, 2, 10, 2, 18, 2, 0, 2, 46, 2, 0, 2, 31, 2, 105, -3, 2, 106, 3, 0, 3, 2, 20, -1, 3, 5, 2, 2, 107, 2, 0, 2, 8, 2, 108, -1, 2, 109, 2, 110, 2, 111, -1, 3, 0, 3, 2, 12, -2, 2, 0, 2, 29, -8, 2, 20, 2, 0, 2, 36, -1, 2, 0, 2, 62, 2, 6, 2, 30, 2, 10, 2, 0, 2, 112, -1, 3, 0, 4, 2, 10, 2, 18, 2, 113, 2, 7, 2, 0, 2, 114, 2, 0, 2, 115, 2, 116, 2, 117, -2, 3, 0, 9, 2, 21, 2, 30, 2, 31, 2, 118, 2, 119, -2, 2, 120, 2, 121, 2, 30, 2, 21, 2, 8, -2, 2, 122, 2, 30, 2, 32, -2, 2, 0, 2, 38, -2, 0, 4277075969, 2, 30, -1, 3, 20, 2, -1, 2, 33, 2, 123, 2, 0, 3, 30, 2, 2, 35, 2, 19, -3, 3, 0, 2, 2, 34, -1, 2, 0, 2, 35, 2, 0, 2, 35, 2, 0, 2, 78, -10, 2, 0, 0, 197631, -2, 2, 20, 2, 43, 2, 77, 2, 18, 0, 3, 2, 18, 2, 123, 2, 21, 2, 124, 2, 50, -1, 0, 2490368, 2, 124, 2, 25, 2, 18, 2, 34, 2, 124, 2, 37, 0, 4294901904, 0, 4718591, 2, 124, 2, 35, 0, 335544350, -1, 2, 125, 0, 2147487743, 0, 1, -1, 2, 126, 2, 39, 2, 8, -1, 2, 127, 2, 65, 0, 3758161920, 0, 3, -4, 2, 0, 2, 29, 0, 2147485568, 0, 3, 2, 0, 2, 25, 0, 176, -5, 2, 0, 2, 17, 2, 188, -1, 2, 0, 2, 25, 2, 205, -1, 2, 0, 0, 16779263, -2, 2, 12, -1, 2, 37, -5, 2, 0, 2, 128, -3, 3, 0, 2, 2, 129, 2, 130, 0, 2147549183, 0, 2, -2, 2, 131, 2, 36, 0, 10, 0, 4294965249, 0, 67633151, 0, 4026597376, 2, 0, 0, 536871935, 2, 18, 2, 0, 2, 41, -8, 2, 53, 2, 17, 0, 1, 2, 45, 2, 25, -3, 2, 132, 2, 36, 2, 133, 2, 134, 0, 16778239, -10, 2, 35, 0, 4294836212, 2, 9, -3, 2, 64, -2, 3, 0, 28, 2, 32, -3, 3, 0, 3, 2, 17, 3, 0, 6, 2, 78, -81, 2, 18, 3, 0, 2, 2, 36, 3, 0, 33, 2, 25, 0, 126, -125, 3, 0, 18, 2, 37, -269, 3, 0, 17, 2, 41, 2, 8, 2, 18, 2, 0, 2, 8, 2, 18, 2, 54, 2, 0, 2, 25, 2, 78, 2, 135, 2, 25, -21, 3, 0, 2, -4, 3, 0, 2, 0, 67583, -1, 2, 104, -2, 0, 11, 3, 0, 191, 2, 50, 3, 0, 38, 2, 30, -1, 2, 34, -278, 2, 136, 3, 0, 9, 2, 137, 2, 138, 2, 51, 3, 0, 11, 2, 7, -72, 3, 0, 3, 2, 139, 2, 140, -187, 3, 0, 2, 2, 52, 2, 0, 2, 141, 2, 142, 2, 56, 2, 0, 2, 143, 2, 144, 2, 145, 3, 0, 10, 2, 146, 2, 147, 2, 22, 3, 52, 2, 3, 148, 2, 3, 53, 2, 2, 149, -57, 2, 8, 2, 150, -7, 2, 18, 2, 0, 2, 54, -4, 2, 0, 0, 1065361407, 0, 16384, -9, 2, 18, 2, 54, 2, 0, 2, 128, -14, 2, 18, 2, 128, -23, 2, 151, 3, 0, 6, 2, 123, -1, 3, 0, 2, 0, 2063, -37, 2, 56, 2, 152, 2, 153, 2, 154, 2, 155, 2, 156, -138, 3, 0, 1335, -1, 3, 0, 129, 2, 32, 3, 0, 6, 2, 10, 3, 0, 180, 2, 157, 3, 0, 233, 2, 158, 3, 0, 18, 2, 10, -77, 3, 0, 16, 2, 10, -47, 3, 0, 154, 2, 6, 3, 0, 130, 2, 25, -28386, 2, 0, 0, 1, -1, 2, 129, 2, 0, 0, 8193, -21, 2, 198, 0, 10255, 0, 4, -11, 2, 64, 2, 179, -1, 0, 71680, -1, 2, 171, 0, 4292900864, 0, 268435519, -5, 2, 159, -1, 2, 169, -1, 0, 6144, -2, 2, 45, -1, 2, 163, -1, 0, 2147532800, 2, 160, 2, 166, 0, 16744448, -2, 0, 4, -4, 2, 194, 0, 205128192, 0, 1333757536, 0, 2147483696, 0, 423953, 0, 747766272, 0, 2717763192, 0, 4286578751, 0, 278545, 2, 161, 0, 4294886464, 0, 33292336, 0, 417809, 2, 161, 0, 1327482464, 0, 4278190128, 0, 700594195, 0, 1006647527, 0, 4286497336, 0, 4160749631, 2, 162, 0, 201327104, 0, 3634348576, 0, 8323120, 2, 162, 0, 202375680, 0, 2678047264, 0, 4293984304, 2, 162, -1, 0, 983584, 0, 48, 0, 58720273, 0, 3489923072, 0, 10517376, 0, 4293066815, 0, 1, 0, 2013265920, 2, 182, 2, 0, 0, 2089, 0, 3221225552, 0, 201359520, 2, 0, -2, 0, 256, 0, 122880, 0, 16777216, 2, 159, 0, 4160757760, 2, 0, -6, 2, 176, -11, 0, 3263218176, -1, 0, 49664, 0, 2160197632, 0, 8388802, -1, 0, 12713984, -1, 2, 163, 2, 164, 2, 183, -2, 2, 172, -20, 0, 3758096385, -2, 2, 165, 2, 191, 2, 91, 2, 177, 0, 4294057984, -2, 2, 173, 2, 168, 0, 4227874816, -2, 2, 165, -1, 2, 166, -1, 2, 178, 2, 129, 0, 4026593280, 0, 14, 0, 4292919296, -1, 2, 175, 0, 939588608, -1, 0, 805306368, -1, 2, 129, 2, 167, 2, 168, 2, 169, 2, 207, 2, 0, -2, 2, 170, 2, 129, -3, 0, 267386880, -1, 0, 117440512, 0, 7168, -1, 2, 210, 2, 163, 2, 171, 2, 184, -16, 2, 172, -1, 0, 1426112704, 2, 173, -1, 2, 192, 0, 271581216, 0, 2149777408, 2, 25, 2, 171, 2, 129, 0, 851967, 2, 185, -1, 2, 174, 2, 186, -4, 2, 175, -20, 2, 197, 2, 204, -56, 0, 3145728, 2, 187, -10, 0, 32505856, -1, 2, 176, -1, 0, 2147385088, 2, 91, 1, 2155905152, 2, -3, 2, 173, 2, 0, 0, 67108864, -2, 2, 177, -6, 2, 178, 2, 25, 0, 1, -1, 0, 1, -1, 2, 179, -3, 2, 123, 2, 64, -2, 2, 97, -2, 0, 32752, 2, 129, -915, 2, 170, -1, 2, 203, -10, 2, 190, -5, 2, 181, -6, 0, 4229232640, 2, 19, -1, 2, 180, -1, 2, 181, -2, 0, 4227874752, -3, 0, 2146435072, 2, 164, -2, 0, 1006649344, 2, 129, -1, 2, 91, 0, 201375744, -3, 0, 134217720, 2, 91, 0, 4286677377, 0, 32896, -1, 2, 175, -3, 0, 4227907584, -349, 0, 65520, 0, 1920, 2, 182, 3, 0, 264, -11, 2, 169, -2, 2, 183, 2, 0, 0, 520617856, 0, 2692743168, 0, 36, -3, 0, 524280, -13, 2, 189, -1, 0, 4294934272, 2, 25, 2, 183, -1, 2, 213, 0, 2158720, -3, 2, 164, 0, 1, -4, 2, 129, 0, 3808625411, 0, 3489628288, 0, 4096, 0, 1207959680, 0, 3221274624, 2, 0, -3, 2, 184, 0, 120, 0, 7340032, -2, 2, 185, 2, 4, 2, 25, 2, 173, 3, 0, 4, 2, 164, -1, 2, 186, 2, 182, -1, 0, 8176, 2, 166, 2, 184, 2, 211, -1, 0, 4290773232, 2, 0, -4, 2, 173, 2, 193, 0, 15728640, 2, 182, -1, 2, 171, -1, 0, 134250480, 0, 4720640, 0, 3825467396, 3, 0, 2, -9, 2, 91, 2, 178, 0, 4294967040, 2, 133, 0, 4160880640, 3, 0, 2, 0, 704, 0, 1849688064, 2, 187, -1, 2, 129, 0, 4294901887, 2, 0, 0, 130547712, 0, 1879048192, 2, 208, 3, 0, 2, -1, 2, 188, 2, 189, -1, 0, 17829776, 0, 2025848832, 2, 212, -2, 2, 0, -1, 0, 4286580608, -1, 0, 29360128, 2, 196, 0, 16252928, 0, 3791388672, 2, 39, 3, 0, 2, -2, 2, 202, 2, 0, -1, 2, 104, -1, 0, 66584576, -1, 2, 195, 3, 0, 9, 2, 129, -1, 0, 4294755328, 2, 0, 2, 20, -1, 2, 171, 2, 183, 2, 25, 2, 95, 2, 25, 2, 190, 2, 91, -2, 0, 245760, 2, 191, -1, 2, 159, 2, 199, 0, 4227923456, -1, 2, 192, 2, 171, 2, 91, -3, 0, 4292870145, 0, 262144, -1, 2, 92, 2, 0, 0, 1073758848, 2, 193, -1, 0, 4227921920, 2, 194, 0, 68289024, 0, 528402016, 0, 4292927536, 3, 0, 4, -2, 0, 268435456, 2, 92, -2, 2, 195, 3, 0, 5, -1, 2, 196, 2, 173, 2, 0, -2, 0, 4227923936, 2, 62, -1, 2, 183, 2, 95, 2, 0, 2, 163, 2, 175, 2, 197, 3, 0, 5, -1, 2, 182, 3, 0, 3, -2, 0, 2146959360, 0, 9440640, 0, 104857600, 0, 4227923840, 3, 0, 2, 0, 768, 2, 198, 2, 28, -2, 2, 171, -2, 2, 199, -1, 2, 165, 2, 95, 3, 0, 7, 0, 512, 0, 8388608, 2, 200, 2, 170, 2, 189, 0, 4286578944, 3, 0, 2, 0, 1152, 0, 1266679808, 2, 195, 0, 576, 0, 4261707776, 2, 95, 3, 0, 9, 2, 165, 0, 131072, 0, 939524096, 2, 183, 3, 0, 2, 2, 16, -1, 0, 2147221504, -28, 2, 183, 3, 0, 3, -3, 0, 4292902912, -6, 2, 96, 3, 0, 81, 2, 25, -2, 2, 104, -33, 2, 18, 2, 178, 3, 0, 125, -18, 2, 197, 3, 0, 269, -17, 2, 165, 2, 129, 2, 201, -1, 2, 129, 2, 193, 0, 4290822144, -2, 0, 67174336, 0, 520093700, 2, 18, 3, 0, 21, -2, 2, 184, 3, 0, 3, -2, 0, 30720, -1, 0, 32512, 3, 0, 2, 0, 4294770656, -191, 2, 181, -38, 2, 178, 2, 0, 2, 202, 3, 0, 278, 0, 2417033215, -9, 0, 4294705144, 0, 4292411391, 0, 65295, -11, 2, 182, 3, 0, 72, -3, 0, 3758159872, 0, 201391616, 3, 0, 147, -1, 2, 169, 2, 203, -3, 2, 96, 2, 0, -7, 2, 178, -1, 0, 384, -1, 0, 133693440, -3, 2, 204, -2, 2, 107, 3, 0, 3, 3, 177, 2, -2, 2, 91, 2, 165, 3, 0, 4, -2, 2, 192, -1, 2, 159, 0, 335552923, 2, 205, -1, 0, 538974272, 0, 2214592512, 0, 132000, -10, 0, 192, -8, 2, 206, -21, 0, 134213632, 2, 158, 3, 0, 34, 2, 129, 0, 4294965279, 3, 0, 6, 0, 100663424, 0, 63524, -1, 2, 209, 2, 148, 3, 0, 3, -1, 0, 3221282816, 0, 4294917120, 3, 0, 9, 2, 25, 2, 207, -1, 2, 208, 3, 0, 14, 2, 25, 2, 183, 3, 0, 23, 0, 2147520640, -6, 0, 4286578784, 2, 0, -2, 0, 1006694400, 3, 0, 24, 2, 36, -1, 0, 4292870144, 3, 0, 2, 0, 1, 2, 173, 3, 0, 6, 2, 205, 0, 4110942569, 0, 1432950139, 0, 2701658217, 0, 4026532864, 0, 4026532881, 2, 0, 2, 46, 3, 0, 8, -1, 2, 175, -2, 2, 177, 0, 98304, 0, 65537, 2, 178, -5, 2, 209, 2, 0, 2, 77, 2, 199, 2, 182, 0, 4294770176, 2, 107, 3, 0, 4, -30, 2, 188, 0, 3758153728, -3, 0, 125829120, -2, 2, 183, 0, 4294897664, 2, 175, -1, 2, 195, -1, 2, 171, 0, 4294754304, 3, 0, 2, -10, 2, 177, 0, 3758145536, 2, 210, 2, 211, 0, 4026548160, 2, 212, -4, 2, 213, -1, 2, 204, 0, 4227923967, 3, 0, 32, -1335, 2, 0, -129, 2, 183, -6, 2, 173, -180, 0, 65532, -233, 2, 174, -18, 2, 173, 3, 0, 77, -16, 2, 173, 3, 0, 47, -154, 2, 166, -130, 2, 18, 3, 0, 22250, -7, 2, 18, 3, 0, 6128], [4294967295, 4294967291, 4092460543, 4294828031, 4294967294, 134217726, 4294903807, 268435455, 2147483647, 1048575, 1073741823, 3892314111, 134217727, 1061158911, 536805376, 4294910143, 4294901759, 32767, 4294901760, 262143, 536870911, 8388607, 4160749567, 4294902783, 4294918143, 65535, 67043328, 2281701374, 4294967264, 2097151, 4194303, 255, 67108863, 4294967039, 511, 524287, 131071, 127, 3238002687, 4294902271, 4294549487, 33554431, 1023, 4294901888, 4286578687, 4294705152, 4294770687, 67043583, 2047999, 67043343, 16777215, 4294902000, 4292870143, 4294966783, 16383, 67047423, 4294967279, 262083, 20511, 4290772991, 41943039, 493567, 4294959104, 603979775, 65536, 602799615, 805044223, 4294965206, 8191, 1031749119, 4294917631, 2134769663, 4286578493, 4282253311, 4294942719, 33540095, 4294905855, 63, 15, 2868854591, 1608515583, 265232348, 534519807, 2147614720, 1060109444, 4093640016, 17376, 2139062143, 224, 4169138175, 4294909951, 4286578688, 4294967292, 4294965759, 65734655, 4294966272, 4294967280, 32768, 8289918, 4294934399, 4294901775, 4294965375, 1602223615, 4294967259, 4294443008, 268369920, 4292804608, 4294967232, 486341884, 4294963199, 3087007615, 1073692671, 4128527, 4279238655, 4294902015, 4160684047, 4290246655, 469499899, 4294967231, 134086655, 4294966591, 2445279231, 3670015, 31, 4294967288, 4294705151, 3221208447, 4294549472, 4095, 2147483648, 4285526655, 4294966527, 4294966143, 64, 4294966719, 3774873592, 1877934080, 262151, 2555904, 536807423, 67043839, 3758096383, 3959414372, 3755993023, 2080374783, 4294835295, 4294967103, 4160749565, 4294934527, 4087, 2016, 2147446655, 184024726, 2862017156, 1593309078, 268434431, 268434414, 4294901763, 4294901761, 536870912, 2952790016, 202506752, 139264, 402653184, 3758096384, 4261412864, 63488, 1610612736, 4227922944, 49152, 57344, 65280, 3233808384, 3221225472, 65534, 61440, 57152, 4293918720, 4290772992, 25165824, 4227915776, 4278190080, 4026531840, 4227858432, 4160749568, 3758129152, 4294836224, 4194304, 251658240, 196608, 4294963200, 2143289344, 2097152, 64512, 417808, 4227923712, 12582912, 4294967168, 50331648, 65528, 65472, 15360, 4294966784, 65408, 4294965248, 16, 12288, 4294934528, 2080374784, 4294950912, 65024, 1073741824, 4261477888, 524288]);
221
219
 
222
220
  function advanceChar(parser) {
223
221
  parser.column++;
@@ -1528,7 +1526,7 @@ function scanIdentifierSlowCase(parser, context, hasEscape, isValidAsKeyword) {
1528
1526
  return 122;
1529
1527
  }
1530
1528
  if ((token & 20480) === 20480) {
1531
- if (context & 1073741824 && (context & 8192) === 0) {
1529
+ if (context & 268435456 && (context & 8192) === 0) {
1532
1530
  return token;
1533
1531
  }
1534
1532
  else {
@@ -1537,12 +1535,12 @@ function scanIdentifierSlowCase(parser, context, hasEscape, isValidAsKeyword) {
1537
1535
  }
1538
1536
  return 143483;
1539
1537
  }
1540
- if (context & 1073741824 &&
1538
+ if (context & 268435456 &&
1541
1539
  (context & 8192) === 0 &&
1542
1540
  (token & 20480) === 20480)
1543
1541
  return token;
1544
1542
  if (token === 241773) {
1545
- return context & 1073741824
1543
+ return context & 268435456
1546
1544
  ? 143483
1547
1545
  : context & 2097152
1548
1546
  ? 121
@@ -4361,10 +4359,9 @@ function scanJSXIdentifier(parser) {
4361
4359
  return parser.token;
4362
4360
  }
4363
4361
 
4364
- function matchOrInsertSemicolon(parser, context, specDeviation) {
4362
+ function matchOrInsertSemicolon(parser, context) {
4365
4363
  if ((parser.flags & 1) === 0 &&
4366
- (parser.token & 1048576) !== 1048576 &&
4367
- !specDeviation) {
4364
+ (parser.token & 1048576) !== 1048576) {
4368
4365
  report(parser, 28, KeywordDescTable[parser.token & 255]);
4369
4366
  }
4370
4367
  if (!consumeOpt(parser, context, 1074790417)) {
@@ -4700,12 +4697,11 @@ function isValidIdentifier(context, t) {
4700
4697
  (t & 12288) === 12288 ||
4701
4698
  (t & 36864) === 36864);
4702
4699
  }
4703
- function classifyIdentifier(parser, context, t, isArrow) {
4700
+ function classifyIdentifier(parser, context, t) {
4704
4701
  if ((t & 537079808) === 537079808) {
4705
4702
  if (context & 1024)
4706
4703
  report(parser, 116);
4707
- if (isArrow)
4708
- parser.flags |= 512;
4704
+ parser.flags |= 512;
4709
4705
  }
4710
4706
  if (!isValidIdentifier(context, t))
4711
4707
  report(parser, 0);
@@ -4756,7 +4752,7 @@ function parseSource(source, options, context) {
4756
4752
  if (options.ranges)
4757
4753
  context |= 2;
4758
4754
  if (options.uniqueKeyInPattern)
4759
- context |= -2147483648;
4755
+ context |= 536870912;
4760
4756
  if (options.lexical)
4761
4757
  context |= 64;
4762
4758
  if (options.webcompat)
@@ -4773,10 +4769,6 @@ function parseSource(source, options, context) {
4773
4769
  context |= 1024;
4774
4770
  if (options.jsx)
4775
4771
  context |= 16;
4776
- if (options.identifierPattern)
4777
- context |= 268435456;
4778
- if (options.specDeviation)
4779
- context |= 536870912;
4780
4772
  if (options.source)
4781
4773
  sourceFile = options.source;
4782
4774
  if (options.onComment != null) {
@@ -4828,7 +4820,7 @@ function parseSource(source, options, context) {
4828
4820
  return node;
4829
4821
  }
4830
4822
  function parseStatementList(parser, context, scope) {
4831
- nextToken(parser, context | 32768 | 1073741824);
4823
+ nextToken(parser, context | 32768 | 268435456);
4832
4824
  const statements = [];
4833
4825
  while (parser.token === 134283267) {
4834
4826
  const { index, tokenPos, tokenValue, linePos, colPos, token } = parser;
@@ -4961,14 +4953,14 @@ function parseExpressionOrLabelledStatement(parser, context, scope, origin, labe
4961
4953
  let expr;
4962
4954
  switch (token) {
4963
4955
  case 241739:
4964
- expr = parseIdentifier(parser, context, 0);
4956
+ expr = parseIdentifier(parser, context);
4965
4957
  if (context & 1024)
4966
4958
  report(parser, 83);
4967
4959
  if (parser.token === 69271571)
4968
4960
  report(parser, 82);
4969
4961
  break;
4970
4962
  default:
4971
- expr = parsePrimaryExpression(parser, context, 2, 0, 1, 0, 0, 1, parser.tokenPos, parser.linePos, parser.colPos);
4963
+ expr = parsePrimaryExpression(parser, context, 2, 0, 1, 0, 1, parser.tokenPos, parser.linePos, parser.colPos);
4972
4964
  }
4973
4965
  if (token & 143360 && parser.token === 21) {
4974
4966
  return parseLabelledStatement(parser, context, scope, origin, labels, tokenValue, expr, token, allowFuncDecl, start, line, column);
@@ -5030,7 +5022,7 @@ function parseLabelledStatement(parser, context, scope, origin, labels, value, e
5030
5022
  }
5031
5023
  function parseAsyncArrowOrAsyncFunctionDeclaration(parser, context, scope, origin, labels, allowFuncDecl, start, line, column) {
5032
5024
  const { token, tokenValue } = parser;
5033
- let expr = parseIdentifier(parser, context, 0);
5025
+ let expr = parseIdentifier(parser, context);
5034
5026
  if (parser.token === 21) {
5035
5027
  return parseLabelledStatement(parser, context, scope, origin, labels, tokenValue, expr, token, 1, start, line, column);
5036
5028
  }
@@ -5053,7 +5045,7 @@ function parseAsyncArrowOrAsyncFunctionDeclaration(parser, context, scope, origi
5053
5045
  }
5054
5046
  else {
5055
5047
  if (parser.token === 10) {
5056
- classifyIdentifier(parser, context, token, 1);
5048
+ classifyIdentifier(parser, context, token);
5057
5049
  expr = parseArrowFromIdentifier(parser, context, parser.tokenValue, expr, 0, 1, 0, start, line, column);
5058
5050
  }
5059
5051
  parser.assignable = 1;
@@ -5198,7 +5190,7 @@ function parseContinueStatement(parser, context, labels, start, line, column) {
5198
5190
  let label = null;
5199
5191
  if ((parser.flags & 1) === 0 && parser.token & 143360) {
5200
5192
  const { tokenValue } = parser;
5201
- label = parseIdentifier(parser, context | 32768, 0);
5193
+ label = parseIdentifier(parser, context | 32768);
5202
5194
  if (!isValidLabel(parser, labels, tokenValue, 1))
5203
5195
  report(parser, 135, tokenValue);
5204
5196
  }
@@ -5213,7 +5205,7 @@ function parseBreakStatement(parser, context, labels, start, line, column) {
5213
5205
  let label = null;
5214
5206
  if ((parser.flags & 1) === 0 && parser.token & 143360) {
5215
5207
  const { tokenValue } = parser;
5216
- label = parseIdentifier(parser, context | 32768, 0);
5208
+ label = parseIdentifier(parser, context | 32768);
5217
5209
  if (!isValidLabel(parser, labels, tokenValue, 0))
5218
5210
  report(parser, 135, tokenValue);
5219
5211
  }
@@ -5324,7 +5316,7 @@ function parseDoWhileStatement(parser, context, scope, labels, start, line, colu
5324
5316
  }
5325
5317
  function parseLetIdentOrVarDeclarationStatement(parser, context, scope, origin, start, line, column) {
5326
5318
  const { token, tokenValue } = parser;
5327
- let expr = parseIdentifier(parser, context, 0);
5319
+ let expr = parseIdentifier(parser, context);
5328
5320
  if (parser.token & (143360 | 2097152)) {
5329
5321
  const declarations = parseVariableDeclarationList(parser, context, scope, 8, 0);
5330
5322
  matchOrInsertSemicolon(parser, context | 32768);
@@ -5394,7 +5386,7 @@ function parseVariableDeclaration(parser, context, scope, kind, origin) {
5394
5386
  const id = parseBindingPattern(parser, context, scope, kind, origin, tokenPos, linePos, colPos);
5395
5387
  if (parser.token === 1077936157) {
5396
5388
  nextToken(parser, context | 32768);
5397
- init = parseExpression(parser, context, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
5389
+ init = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
5398
5390
  if (origin & 32 || (token & 2097152) === 0) {
5399
5391
  if (parser.token === 274549 ||
5400
5392
  (parser.token === 8738868 &&
@@ -5429,7 +5421,7 @@ function parseForStatement(parser, context, scope, labels, start, line, column)
5429
5421
  const { token, tokenPos, linePos, colPos } = parser;
5430
5422
  if (isVarDecl) {
5431
5423
  if (token === 241739) {
5432
- init = parseIdentifier(parser, context, 0);
5424
+ init = parseIdentifier(parser, context);
5433
5425
  if (parser.token & (143360 | 2097152)) {
5434
5426
  if (parser.token === 8738868) {
5435
5427
  if (context & 1024)
@@ -5497,7 +5489,7 @@ function parseForStatement(parser, context, scope, labels, start, line, column)
5497
5489
  report(parser, 78, forAwait ? 'await' : 'of');
5498
5490
  reinterpretToPattern(parser, init);
5499
5491
  nextToken(parser, context | 32768);
5500
- right = parseExpression(parser, context, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
5492
+ right = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
5501
5493
  consume(parser, context | 32768, 16);
5502
5494
  const body = parseIterationStatementBody(parser, context, scope, labels);
5503
5495
  return finishNode(parser, context, start, line, column, {
@@ -5557,7 +5549,7 @@ function parseRestrictedIdentifier(parser, context, scope) {
5557
5549
  report(parser, 116);
5558
5550
  if (scope)
5559
5551
  addBlockName(parser, context, scope, parser.tokenValue, 8, 0);
5560
- return parseIdentifier(parser, context, 0);
5552
+ return parseIdentifier(parser, context);
5561
5553
  }
5562
5554
  function parseImportDeclaration(parser, context, scope) {
5563
5555
  const start = parser.tokenPos;
@@ -5630,7 +5622,9 @@ function parseImportNamespaceSpecifier(parser, context, scope) {
5630
5622
  });
5631
5623
  }
5632
5624
  function parseModuleSpecifier(parser, context) {
5633
- consumeOpt(parser, context, 12404);
5625
+ if (!consumeOpt(parser, context, 12404)) {
5626
+ report(parser, 28, KeywordDescTable[parser.token & 255]);
5627
+ }
5634
5628
  if (parser.token !== 134283267)
5635
5629
  report(parser, 103, 'Import');
5636
5630
  return parseLiteral(parser, context);
@@ -5639,7 +5633,7 @@ function parseImportSpecifierOrNamedImports(parser, context, scope, specifiers)
5639
5633
  nextToken(parser, context);
5640
5634
  while (parser.token & 143360) {
5641
5635
  let { token, tokenValue, tokenPos, linePos, colPos } = parser;
5642
- const imported = parseIdentifier(parser, context, 0);
5636
+ const imported = parseIdentifier(parser, context);
5643
5637
  let local;
5644
5638
  if (consumeOpt(parser, context, 77934)) {
5645
5639
  if ((parser.token & 134217728) === 134217728 || parser.token === 18) {
@@ -5649,7 +5643,7 @@ function parseImportSpecifierOrNamedImports(parser, context, scope, specifiers)
5649
5643
  validateBindingIdentifier(parser, context, 16, parser.token, 0);
5650
5644
  }
5651
5645
  tokenValue = parser.tokenValue;
5652
- local = parseIdentifier(parser, context, 0);
5646
+ local = parseIdentifier(parser, context);
5653
5647
  }
5654
5648
  else {
5655
5649
  validateBindingIdentifier(parser, context, 16, token, 0);
@@ -5709,7 +5703,7 @@ function parseExportDeclaration(parser, context, scope) {
5709
5703
  break;
5710
5704
  case 209007:
5711
5705
  const { tokenPos, linePos, colPos } = parser;
5712
- declaration = parseIdentifier(parser, context, 0);
5706
+ declaration = parseIdentifier(parser, context);
5713
5707
  const { flags } = parser;
5714
5708
  if ((flags & 1) === 0) {
5715
5709
  if (parser.token === 86106) {
@@ -5724,14 +5718,14 @@ function parseExportDeclaration(parser, context, scope) {
5724
5718
  else if (parser.token & 143360) {
5725
5719
  if (scope)
5726
5720
  scope = createArrowHeadParsingScope(parser, context, parser.tokenValue);
5727
- declaration = parseIdentifier(parser, context, 0);
5721
+ declaration = parseIdentifier(parser, context);
5728
5722
  declaration = parseArrowFunctionExpression(parser, context, scope, [declaration], 1, tokenPos, linePos, colPos);
5729
5723
  }
5730
5724
  }
5731
5725
  }
5732
5726
  break;
5733
5727
  default:
5734
- declaration = parseExpression(parser, context, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
5728
+ declaration = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
5735
5729
  matchOrInsertSemicolon(parser, context | 32768);
5736
5730
  }
5737
5731
  if (scope)
@@ -5749,7 +5743,7 @@ function parseExportDeclaration(parser, context, scope) {
5749
5743
  if (isNamedDeclaration) {
5750
5744
  if (scope)
5751
5745
  declareUnboundVariable(parser, parser.tokenValue);
5752
- exported = parseIdentifier(parser, context, 0);
5746
+ exported = parseIdentifier(parser, context);
5753
5747
  }
5754
5748
  consume(parser, context, 12404);
5755
5749
  if (parser.token !== 134283267)
@@ -5768,7 +5762,7 @@ function parseExportDeclaration(parser, context, scope) {
5768
5762
  const tmpExportedBindings = [];
5769
5763
  while (parser.token & 143360) {
5770
5764
  const { tokenPos, tokenValue, linePos, colPos } = parser;
5771
- const local = parseIdentifier(parser, context, 0);
5765
+ const local = parseIdentifier(parser, context);
5772
5766
  let exported;
5773
5767
  if (parser.token === 77934) {
5774
5768
  nextToken(parser, context);
@@ -5779,7 +5773,7 @@ function parseExportDeclaration(parser, context, scope) {
5779
5773
  tmpExportedNames.push(parser.tokenValue);
5780
5774
  tmpExportedBindings.push(tokenValue);
5781
5775
  }
5782
- exported = parseIdentifier(parser, context, 0);
5776
+ exported = parseIdentifier(parser, context);
5783
5777
  }
5784
5778
  else {
5785
5779
  if (scope) {
@@ -5853,15 +5847,15 @@ function parseExportDeclaration(parser, context, scope) {
5853
5847
  source
5854
5848
  });
5855
5849
  }
5856
- function parseExpression(parser, context, canAssign, isPattern, inGroup, start, line, column) {
5857
- let expr = parsePrimaryExpression(parser, context, 2, 0, canAssign, isPattern, inGroup, 1, start, line, column);
5850
+ function parseExpression(parser, context, canAssign, inGroup, start, line, column) {
5851
+ let expr = parsePrimaryExpression(parser, context, 2, 0, canAssign, inGroup, 1, start, line, column);
5858
5852
  expr = parseMemberOrUpdateExpression(parser, context, expr, inGroup, 0, start, line, column);
5859
5853
  return parseAssignmentExpression(parser, context, inGroup, 0, start, line, column, expr);
5860
5854
  }
5861
5855
  function parseSequenceExpression(parser, context, inGroup, start, line, column, expr) {
5862
5856
  const expressions = [expr];
5863
5857
  while (consumeOpt(parser, context | 32768, 18)) {
5864
- expressions.push(parseExpression(parser, context, 1, 0, inGroup, parser.tokenPos, parser.linePos, parser.colPos));
5858
+ expressions.push(parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos));
5865
5859
  }
5866
5860
  return finishNode(parser, context, start, line, column, {
5867
5861
  type: 'SequenceExpression',
@@ -5869,7 +5863,7 @@ function parseSequenceExpression(parser, context, inGroup, start, line, column,
5869
5863
  });
5870
5864
  }
5871
5865
  function parseExpressions(parser, context, inGroup, canAssign, start, line, column) {
5872
- const expr = parseExpression(parser, context, canAssign, 0, inGroup, start, line, column);
5866
+ const expr = parseExpression(parser, context, canAssign, inGroup, start, line, column);
5873
5867
  return parser.token === 18
5874
5868
  ? parseSequenceExpression(parser, context, inGroup, start, line, column, expr)
5875
5869
  : expr;
@@ -5884,7 +5878,7 @@ function parseAssignmentExpression(parser, context, inGroup, isPattern, start, l
5884
5878
  reinterpretToPattern(parser, left);
5885
5879
  }
5886
5880
  nextToken(parser, context | 32768);
5887
- const right = parseExpression(parser, context, 1, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
5881
+ const right = parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
5888
5882
  parser.assignable = 2;
5889
5883
  return finishNode(parser, context, start, line, column, isPattern
5890
5884
  ? {
@@ -5910,7 +5904,7 @@ function parseAssignmentExpression(parser, context, inGroup, isPattern, start, l
5910
5904
  function parseAssignmentExpressionOrPattern(parser, context, inGroup, isPattern, start, line, column, left) {
5911
5905
  const { token } = parser;
5912
5906
  nextToken(parser, context | 32768);
5913
- const right = parseExpression(parser, context, 1, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
5907
+ const right = parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
5914
5908
  left = finishNode(parser, context, start, line, column, isPattern
5915
5909
  ? {
5916
5910
  type: 'AssignmentPattern',
@@ -5927,10 +5921,10 @@ function parseAssignmentExpressionOrPattern(parser, context, inGroup, isPattern,
5927
5921
  return left;
5928
5922
  }
5929
5923
  function parseConditionalExpression(parser, context, test, start, line, column) {
5930
- const consequent = parseExpression(parser, (context | 134217728) ^ 134217728, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
5924
+ const consequent = parseExpression(parser, (context | 134217728) ^ 134217728, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
5931
5925
  consume(parser, context | 32768, 21);
5932
5926
  parser.assignable = 1;
5933
- const alternate = parseExpression(parser, context, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
5927
+ const alternate = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
5934
5928
  parser.assignable = 2;
5935
5929
  return finishNode(parser, context, start, line, column, {
5936
5930
  type: 'ConditionalExpression',
@@ -5988,9 +5982,9 @@ function parseUnaryExpression(parser, context, isLHS, start, line, column, inGro
5988
5982
  prefix: true
5989
5983
  });
5990
5984
  }
5991
- function parseAsyncExpression(parser, context, inGroup, isLHS, canAssign, isPattern, inNew, start, line, column) {
5985
+ function parseAsyncExpression(parser, context, inGroup, isLHS, canAssign, inNew, start, line, column) {
5992
5986
  const { token } = parser;
5993
- const expr = parseIdentifier(parser, context, isPattern);
5987
+ const expr = parseIdentifier(parser, context);
5994
5988
  const { flags } = parser;
5995
5989
  if ((flags & 1) === 0) {
5996
5990
  if (parser.token === 86106) {
@@ -6006,7 +6000,7 @@ function parseAsyncExpression(parser, context, inGroup, isLHS, canAssign, isPatt
6006
6000
  return parseAsyncArrowOrCallExpression(parser, context, expr, canAssign, 1, 0, flags, start, line, column);
6007
6001
  }
6008
6002
  if (parser.token === 10) {
6009
- classifyIdentifier(parser, context, token, 1);
6003
+ classifyIdentifier(parser, context, token);
6010
6004
  if (inNew)
6011
6005
  report(parser, 49);
6012
6006
  return parseArrowFromIdentifier(parser, context, parser.tokenValue, expr, inNew, canAssign, 0, start, line, column);
@@ -6030,7 +6024,7 @@ function parseYieldExpression(parser, context, inGroup, canAssign, start, line,
6030
6024
  if ((parser.flags & 1) === 0) {
6031
6025
  delegate = consumeOpt(parser, context | 32768, 8457014);
6032
6026
  if (parser.token & (12288 | 65536) || delegate) {
6033
- argument = parseExpression(parser, context, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
6027
+ argument = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
6034
6028
  }
6035
6029
  }
6036
6030
  parser.assignable = 2;
@@ -6155,7 +6149,7 @@ function parseSuperExpression(parser, context, start, line, column) {
6155
6149
  return finishNode(parser, context, start, line, column, { type: 'Super' });
6156
6150
  }
6157
6151
  function parseLeftHandSideExpression(parser, context, canAssign, inGroup, isLHS, start, line, column) {
6158
- const expression = parsePrimaryExpression(parser, context, 2, 0, canAssign, 0, inGroup, isLHS, start, line, column);
6152
+ const expression = parsePrimaryExpression(parser, context, 2, 0, canAssign, inGroup, isLHS, start, line, column);
6159
6153
  return parseMemberOrUpdateExpression(parser, context, expression, inGroup, 0, start, line, column);
6160
6154
  }
6161
6155
  function parseUpdateExpression(parser, context, expr, start, line, column) {
@@ -6179,7 +6173,7 @@ function parseMemberOrUpdateExpression(parser, context, expr, inGroup, inChain,
6179
6173
  context = (context | 134217728) ^ 134217728;
6180
6174
  switch (parser.token) {
6181
6175
  case 67108877: {
6182
- nextToken(parser, (context | 1073741824 | 8192) ^ 8192);
6176
+ nextToken(parser, (context | 268435456 | 8192) ^ 8192);
6183
6177
  if (context & 16384 && parser.token === 131 && parser.tokenValue === 'super') {
6184
6178
  report(parser, 27);
6185
6179
  }
@@ -6238,7 +6232,7 @@ function parseMemberOrUpdateExpression(parser, context, expr, inGroup, inChain,
6238
6232
  break;
6239
6233
  }
6240
6234
  case 67108991: {
6241
- nextToken(parser, (context | 1073741824 | 8192) ^ 8192);
6235
+ nextToken(parser, (context | 268435456 | 8192) ^ 8192);
6242
6236
  parser.flags |= 2048;
6243
6237
  parser.assignable = 2;
6244
6238
  expr = parseOptionalChain(parser, context, expr, start, line, column);
@@ -6304,7 +6298,7 @@ function parseOptionalChain(parser, context, expr, start, line, column) {
6304
6298
  else {
6305
6299
  if ((parser.token & (143360 | 4096)) === 0)
6306
6300
  report(parser, 155);
6307
- const property = parseIdentifier(parser, context, 0);
6301
+ const property = parseIdentifier(parser, context);
6308
6302
  parser.assignable = 2;
6309
6303
  node = finishNode(parser, context, start, line, column, {
6310
6304
  type: 'MemberExpression',
@@ -6325,7 +6319,7 @@ function parsePropertyOrPrivatePropertyName(parser, context) {
6325
6319
  }
6326
6320
  return context & 1 && parser.token === 131
6327
6321
  ? parsePrivateIdentifier(parser, context, parser.tokenPos, parser.linePos, parser.colPos)
6328
- : parseIdentifier(parser, context, 0);
6322
+ : parseIdentifier(parser, context);
6329
6323
  }
6330
6324
  function parseUpdateExpressionPrefixed(parser, context, inNew, isLHS, start, line, column) {
6331
6325
  if (inNew)
@@ -6346,7 +6340,7 @@ function parseUpdateExpressionPrefixed(parser, context, inNew, isLHS, start, lin
6346
6340
  prefix: true
6347
6341
  });
6348
6342
  }
6349
- function parsePrimaryExpression(parser, context, kind, inNew, canAssign, isPattern, inGroup, isLHS, start, line, column) {
6343
+ function parsePrimaryExpression(parser, context, kind, inNew, canAssign, inGroup, isLHS, start, line, column) {
6350
6344
  if ((parser.token & 143360) === 143360) {
6351
6345
  switch (parser.token) {
6352
6346
  case 209008:
@@ -6354,14 +6348,14 @@ function parsePrimaryExpression(parser, context, kind, inNew, canAssign, isPatte
6354
6348
  case 241773:
6355
6349
  return parseYieldExpression(parser, context, inGroup, canAssign, start, line, column);
6356
6350
  case 209007:
6357
- return parseAsyncExpression(parser, context, inGroup, isLHS, canAssign, isPattern, inNew, start, line, column);
6351
+ return parseAsyncExpression(parser, context, inGroup, isLHS, canAssign, inNew, start, line, column);
6358
6352
  }
6359
6353
  const { token, tokenValue } = parser;
6360
- const expr = parseIdentifier(parser, context | 65536, isPattern);
6354
+ const expr = parseIdentifier(parser, context | 65536);
6361
6355
  if (parser.token === 10) {
6362
6356
  if (!isLHS)
6363
6357
  report(parser, 0);
6364
- classifyIdentifier(parser, context, token, 1);
6358
+ classifyIdentifier(parser, context, token);
6365
6359
  return parseArrowFromIdentifier(parser, context, tokenValue, expr, inNew, canAssign, 0, start, line, column);
6366
6360
  }
6367
6361
  if (context & 16384 && token === 537079928)
@@ -6436,7 +6430,7 @@ function parsePrimaryExpression(parser, context, kind, inNew, canAssign, isPatte
6436
6430
  }
6437
6431
  }
6438
6432
  function parseImportCallOrMetaExpression(parser, context, inNew, inGroup, start, line, column) {
6439
- let expr = parseIdentifier(parser, context, 0);
6433
+ let expr = parseIdentifier(parser, context);
6440
6434
  if (parser.token === 67108877) {
6441
6435
  return parseImportMetaExpression(parser, context, expr, start, line, column);
6442
6436
  }
@@ -6456,14 +6450,14 @@ function parseImportMetaExpression(parser, context, meta, start, line, column) {
6456
6450
  return finishNode(parser, context, start, line, column, {
6457
6451
  type: 'MetaProperty',
6458
6452
  meta,
6459
- property: parseIdentifier(parser, context, 0)
6453
+ property: parseIdentifier(parser, context)
6460
6454
  });
6461
6455
  }
6462
6456
  function parseImportExpression(parser, context, inGroup, start, line, column) {
6463
6457
  consume(parser, context | 32768, 67174411);
6464
6458
  if (parser.token === 14)
6465
6459
  report(parser, 139);
6466
- const source = parseExpression(parser, context, 1, 0, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
6460
+ const source = parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
6467
6461
  consume(parser, context, 16);
6468
6462
  return finishNode(parser, context, start, line, column, {
6469
6463
  type: 'ImportExpression',
@@ -6552,7 +6546,7 @@ function parseTemplateElement(parser, context, cooked, raw, start, line, col, ta
6552
6546
  function parseSpreadElement(parser, context, start, line, column) {
6553
6547
  context = (context | 134217728) ^ 134217728;
6554
6548
  consume(parser, context | 32768, 14);
6555
- const argument = parseExpression(parser, context, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
6549
+ const argument = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
6556
6550
  parser.assignable = 1;
6557
6551
  return finishNode(parser, context, start, line, column, {
6558
6552
  type: 'SpreadElement',
@@ -6571,7 +6565,7 @@ function parseArguments(parser, context, inGroup) {
6571
6565
  args.push(parseSpreadElement(parser, context, parser.tokenPos, parser.linePos, parser.colPos));
6572
6566
  }
6573
6567
  else {
6574
- args.push(parseExpression(parser, context, 1, 0, inGroup, parser.tokenPos, parser.linePos, parser.colPos));
6568
+ args.push(parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos));
6575
6569
  }
6576
6570
  if (parser.token !== 18)
6577
6571
  break;
@@ -6582,19 +6576,13 @@ function parseArguments(parser, context, inGroup) {
6582
6576
  consume(parser, context, 16);
6583
6577
  return args;
6584
6578
  }
6585
- function parseIdentifier(parser, context, isPattern) {
6579
+ function parseIdentifier(parser, context) {
6586
6580
  const { tokenValue, tokenPos, linePos, colPos } = parser;
6587
6581
  nextToken(parser, context);
6588
- return finishNode(parser, context, tokenPos, linePos, colPos, context & 268435456
6589
- ? {
6590
- type: 'Identifier',
6591
- name: tokenValue,
6592
- pattern: isPattern === 1
6593
- }
6594
- : {
6595
- type: 'Identifier',
6596
- name: tokenValue
6597
- });
6582
+ return finishNode(parser, context, tokenPos, linePos, colPos, {
6583
+ type: 'Identifier',
6584
+ name: tokenValue
6585
+ });
6598
6586
  }
6599
6587
  function parseLiteral(parser, context) {
6600
6588
  const { tokenValue, tokenRaw, tokenPos, linePos, colPos } = parser;
@@ -6669,7 +6657,7 @@ function parseFunctionDeclaration(parser, context, scope, origin, allowGen, flag
6669
6657
  }
6670
6658
  firstRestricted = parser.token;
6671
6659
  if (parser.token & 143360) {
6672
- id = parseIdentifier(parser, context, 0);
6660
+ id = parseIdentifier(parser, context);
6673
6661
  }
6674
6662
  else {
6675
6663
  report(parser, 28, KeywordDescTable[parser.token & 255]);
@@ -6679,7 +6667,7 @@ function parseFunctionDeclaration(parser, context, scope, origin, allowGen, flag
6679
6667
  ((context | 32243712) ^ 32243712) |
6680
6668
  67108864 |
6681
6669
  ((isAsync * 2 + isGenerator) << 21) |
6682
- (isGenerator ? 0 : 1073741824);
6670
+ (isGenerator ? 0 : 268435456);
6683
6671
  if (scope)
6684
6672
  functionScope = addChildScope(functionScope, 512);
6685
6673
  const params = parseFormalParametersOrFormalList(parser, context | 8388608, functionScope, 0, 1);
@@ -6706,13 +6694,13 @@ function parseFunctionExpression(parser, context, isAsync, inGroup, start, line,
6706
6694
  if (scope)
6707
6695
  scope = addChildScope(scope, 256);
6708
6696
  firstRestricted = parser.token;
6709
- id = parseIdentifier(parser, context, 0);
6697
+ id = parseIdentifier(parser, context);
6710
6698
  }
6711
6699
  context =
6712
6700
  ((context | 32243712) ^ 32243712) |
6713
6701
  67108864 |
6714
6702
  generatorAndAsyncFlags |
6715
- (isGenerator ? 0 : 1073741824);
6703
+ (isGenerator ? 0 : 268435456);
6716
6704
  if (scope)
6717
6705
  scope = addChildScope(scope, 512);
6718
6706
  const params = parseFormalParametersOrFormalList(parser, context | 8388608, scope, inGroup, 1);
@@ -6750,14 +6738,14 @@ function parseArrayExpressionOrPattern(parser, context, scope, skipInitializer,
6750
6738
  let left;
6751
6739
  const { token, tokenPos, linePos, colPos, tokenValue } = parser;
6752
6740
  if (token & 143360) {
6753
- left = parsePrimaryExpression(parser, context, kind, 0, 1, 0, inGroup, 1, tokenPos, linePos, colPos);
6741
+ left = parsePrimaryExpression(parser, context, kind, 0, 1, inGroup, 1, tokenPos, linePos, colPos);
6754
6742
  if (parser.token === 1077936157) {
6755
6743
  if (parser.assignable & 2)
6756
6744
  report(parser, 24);
6757
6745
  nextToken(parser, context | 32768);
6758
6746
  if (scope)
6759
6747
  addVarOrBlock(parser, context, scope, tokenValue, kind, origin);
6760
- const right = parseExpression(parser, context, 1, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
6748
+ const right = parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
6761
6749
  left = finishNode(parser, context, tokenPos, linePos, colPos, isPattern
6762
6750
  ? {
6763
6751
  type: 'AssignmentPattern',
@@ -6896,7 +6884,7 @@ function parseArrayOrObjectAssignmentPattern(parser, context, destructible, inGr
6896
6884
  if (!isPattern)
6897
6885
  reinterpretToPattern(parser, node);
6898
6886
  const { tokenPos, linePos, colPos } = parser;
6899
- const right = parseExpression(parser, context, 1, 1, inGroup, tokenPos, linePos, colPos);
6887
+ const right = parseExpression(parser, context, 1, inGroup, tokenPos, linePos, colPos);
6900
6888
  parser.destructible =
6901
6889
  ((destructible | 64 | 8) ^
6902
6890
  (8 | 64)) |
@@ -6922,7 +6910,7 @@ function parseSpreadOrRestElement(parser, context, scope, closingToken, kind, or
6922
6910
  let { token, tokenValue, tokenPos, linePos, colPos } = parser;
6923
6911
  if (token & (4096 | 143360)) {
6924
6912
  parser.assignable = 1;
6925
- argument = parsePrimaryExpression(parser, context, kind, 0, 1, 0, inGroup, 1, tokenPos, linePos, colPos);
6913
+ argument = parsePrimaryExpression(parser, context, kind, 0, 1, inGroup, 1, tokenPos, linePos, colPos);
6926
6914
  token = parser.token;
6927
6915
  argument = parseMemberOrUpdateExpression(parser, context, argument, inGroup, 0, tokenPos, linePos, colPos);
6928
6916
  if (parser.token !== 18 && parser.token !== closingToken) {
@@ -7017,7 +7005,7 @@ function parseSpreadOrRestElement(parser, context, scope, closingToken, kind, or
7017
7005
  if (destructible & 16)
7018
7006
  report(parser, 24);
7019
7007
  reinterpretToPattern(parser, argument);
7020
- const right = parseExpression(parser, context, 1, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
7008
+ const right = parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
7021
7009
  argument = finishNode(parser, context, tokenPos, linePos, colPos, isPattern
7022
7010
  ? {
7023
7011
  type: 'AssignmentPattern',
@@ -7089,7 +7077,7 @@ function parseObjectLiteralOrPattern(parser, context, scope, skipInitializer, in
7089
7077
  let value;
7090
7078
  const t = parser.token;
7091
7079
  if (parser.token & (143360 | 4096) || parser.token === 121) {
7092
- key = parseIdentifier(parser, context, 0);
7080
+ key = parseIdentifier(parser, context);
7093
7081
  if (parser.token === 18 || parser.token === 1074790415 || parser.token === 1077936157) {
7094
7082
  state |= 4;
7095
7083
  if (context & 1024 && (token & 537079808) === 537079808) {
@@ -7102,7 +7090,7 @@ function parseObjectLiteralOrPattern(parser, context, scope, skipInitializer, in
7102
7090
  addVarOrBlock(parser, context, scope, tokenValue, kind, origin);
7103
7091
  if (consumeOpt(parser, context | 32768, 1077936157)) {
7104
7092
  destructible |= 8;
7105
- const right = parseExpression(parser, context, 1, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
7093
+ const right = parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
7106
7094
  destructible |=
7107
7095
  parser.destructible & 256
7108
7096
  ? 256
@@ -7111,7 +7099,7 @@ function parseObjectLiteralOrPattern(parser, context, scope, skipInitializer, in
7111
7099
  : 0;
7112
7100
  value = finishNode(parser, context, tokenPos, linePos, colPos, {
7113
7101
  type: 'AssignmentPattern',
7114
- left: context & -2147483648 ? Object.assign({}, key) : key,
7102
+ left: context & 536870912 ? Object.assign({}, key) : key,
7115
7103
  right
7116
7104
  });
7117
7105
  }
@@ -7119,7 +7107,7 @@ function parseObjectLiteralOrPattern(parser, context, scope, skipInitializer, in
7119
7107
  destructible |=
7120
7108
  (token === 209008 ? 128 : 0) |
7121
7109
  (token === 121 ? 16 : 0);
7122
- value = context & -2147483648 ? Object.assign({}, key) : key;
7110
+ value = context & 536870912 ? Object.assign({}, key) : key;
7123
7111
  }
7124
7112
  }
7125
7113
  else if (consumeOpt(parser, context | 32768, 21)) {
@@ -7130,7 +7118,7 @@ function parseObjectLiteralOrPattern(parser, context, scope, skipInitializer, in
7130
7118
  const tokenAfterColon = parser.token;
7131
7119
  const valueAfterColon = parser.tokenValue;
7132
7120
  destructible |= t === 121 ? 16 : 0;
7133
- value = parsePrimaryExpression(parser, context, kind, 0, 1, 0, inGroup, 1, tokenPos, linePos, colPos);
7121
+ value = parsePrimaryExpression(parser, context, kind, 0, 1, inGroup, 1, tokenPos, linePos, colPos);
7134
7122
  const { token } = parser;
7135
7123
  value = parseMemberOrUpdateExpression(parser, context, value, inGroup, 0, tokenPos, linePos, colPos);
7136
7124
  if (parser.token === 18 || parser.token === 1074790415) {
@@ -7251,7 +7239,7 @@ function parseObjectLiteralOrPattern(parser, context, scope, skipInitializer, in
7251
7239
  report(parser, 129);
7252
7240
  state |= 16;
7253
7241
  }
7254
- key = parseIdentifier(parser, context, 0);
7242
+ key = parseIdentifier(parser, context);
7255
7243
  state |=
7256
7244
  token === 12402
7257
7245
  ? 256
@@ -7280,7 +7268,7 @@ function parseObjectLiteralOrPattern(parser, context, scope, skipInitializer, in
7280
7268
  state |=
7281
7269
  8 | 1 | (token === 209007 ? 16 : 0);
7282
7270
  if (parser.token & 143360) {
7283
- key = parseIdentifier(parser, context, 0);
7271
+ key = parseIdentifier(parser, context);
7284
7272
  }
7285
7273
  else if ((parser.token & 134217728) === 134217728) {
7286
7274
  key = parseLiteral(parser, context);
@@ -7320,7 +7308,7 @@ function parseObjectLiteralOrPattern(parser, context, scope, skipInitializer, in
7320
7308
  if (tokenValue === '__proto__')
7321
7309
  prototypeCount++;
7322
7310
  if (parser.token & 143360) {
7323
- value = parsePrimaryExpression(parser, context, kind, 0, 1, 0, inGroup, 1, tokenPos, linePos, colPos);
7311
+ value = parsePrimaryExpression(parser, context, kind, 0, 1, inGroup, 1, tokenPos, linePos, colPos);
7324
7312
  const { token, tokenValue: valueAfterColon } = parser;
7325
7313
  value = parseMemberOrUpdateExpression(parser, context, value, inGroup, 0, tokenPos, linePos, colPos);
7326
7314
  if (parser.token === 18 || parser.token === 1074790415) {
@@ -7421,7 +7409,7 @@ function parseObjectLiteralOrPattern(parser, context, scope, skipInitializer, in
7421
7409
  nextToken(parser, context | 32768);
7422
7410
  const { tokenPos, linePos, colPos, tokenValue, token: tokenAfterColon } = parser;
7423
7411
  if (parser.token & 143360) {
7424
- value = parsePrimaryExpression(parser, context, kind, 0, 1, 0, inGroup, 1, tokenPos, linePos, colPos);
7412
+ value = parsePrimaryExpression(parser, context, kind, 0, 1, inGroup, 1, tokenPos, linePos, colPos);
7425
7413
  const { token } = parser;
7426
7414
  value = parseMemberOrUpdateExpression(parser, context, value, inGroup, 0, tokenPos, linePos, colPos);
7427
7415
  if ((parser.token & 4194304) === 4194304) {
@@ -7527,7 +7515,7 @@ function parseObjectLiteralOrPattern(parser, context, scope, skipInitializer, in
7527
7515
  state |= 8;
7528
7516
  if (parser.token & 143360) {
7529
7517
  const { token, line, index } = parser;
7530
- key = parseIdentifier(parser, context, 0);
7518
+ key = parseIdentifier(parser, context);
7531
7519
  state |= 1;
7532
7520
  if (parser.token === 67174411) {
7533
7521
  destructible |= 16;
@@ -7641,7 +7629,7 @@ function parseMethodFormals(parser, context, scope, kind, type, inGroup) {
7641
7629
  if (parser.token === 1077936157) {
7642
7630
  nextToken(parser, context | 32768);
7643
7631
  isSimpleParameterList = 1;
7644
- const right = parseExpression(parser, context, 1, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
7632
+ const right = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
7645
7633
  left = finishNode(parser, context, tokenPos, linePos, colPos, {
7646
7634
  type: 'AssignmentPattern',
7647
7635
  left: left,
@@ -7668,14 +7656,14 @@ function parseMethodFormals(parser, context, scope, kind, type, inGroup) {
7668
7656
  }
7669
7657
  function parseComputedPropertyName(parser, context, inGroup) {
7670
7658
  nextToken(parser, context | 32768);
7671
- const key = parseExpression(parser, (context | 134217728) ^ 134217728, 1, 0, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
7659
+ const key = parseExpression(parser, (context | 134217728) ^ 134217728, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
7672
7660
  consume(parser, context, 20);
7673
7661
  return key;
7674
7662
  }
7675
7663
  function parseParenthesizedExpression(parser, context, canAssign, kind, origin, start, line, column) {
7676
7664
  parser.flags = (parser.flags | 128) ^ 128;
7677
7665
  const { tokenPos: piStart, linePos: plStart, colPos: pcStart } = parser;
7678
- nextToken(parser, context | 32768 | 1073741824);
7666
+ nextToken(parser, context | 32768 | 268435456);
7679
7667
  const scope = context & 64 ? addChildScope(createScope(), 1024) : void 0;
7680
7668
  context = (context | 134217728) ^ 134217728;
7681
7669
  if (consumeOpt(parser, context, 16)) {
@@ -7694,7 +7682,7 @@ function parseParenthesizedExpression(parser, context, canAssign, kind, origin,
7694
7682
  if (token & (143360 | 4096)) {
7695
7683
  if (scope)
7696
7684
  addBlockName(parser, context, scope, parser.tokenValue, 1, 0);
7697
- expr = parsePrimaryExpression(parser, context, kind, 0, 1, 0, 1, 1, tokenPos, linePos, colPos);
7685
+ expr = parsePrimaryExpression(parser, context, kind, 0, 1, 1, 1, tokenPos, linePos, colPos);
7698
7686
  if (parser.token === 16 || parser.token === 18) {
7699
7687
  if (parser.assignable & 2) {
7700
7688
  destructible |= 16;
@@ -7721,8 +7709,8 @@ function parseParenthesizedExpression(parser, context, canAssign, kind, origin,
7721
7709
  else if ((token & 2097152) === 2097152) {
7722
7710
  expr =
7723
7711
  token === 2162700
7724
- ? parseObjectLiteralOrPattern(parser, context | 1073741824, scope, 0, 1, 0, kind, origin, tokenPos, linePos, colPos)
7725
- : parseArrayExpressionOrPattern(parser, context | 1073741824, scope, 0, 1, 0, kind, origin, tokenPos, linePos, colPos);
7712
+ ? parseObjectLiteralOrPattern(parser, context | 268435456, scope, 0, 1, 0, kind, origin, tokenPos, linePos, colPos)
7713
+ : parseArrayExpressionOrPattern(parser, context | 268435456, scope, 0, 1, 0, kind, origin, tokenPos, linePos, colPos);
7726
7714
  destructible |= parser.destructible;
7727
7715
  isSimpleParameterList = 1;
7728
7716
  parser.assignable = 2;
@@ -7749,7 +7737,7 @@ function parseParenthesizedExpression(parser, context, canAssign, kind, origin,
7749
7737
  }
7750
7738
  else {
7751
7739
  destructible |= 16;
7752
- expr = parseExpression(parser, context, 1, 0, 1, tokenPos, linePos, colPos);
7740
+ expr = parseExpression(parser, context, 1, 1, tokenPos, linePos, colPos);
7753
7741
  if (isSequence && (parser.token === 16 || parser.token === 18)) {
7754
7742
  expressions.push(expr);
7755
7743
  }
@@ -7761,7 +7749,7 @@ function parseParenthesizedExpression(parser, context, canAssign, kind, origin,
7761
7749
  }
7762
7750
  if (isSequence) {
7763
7751
  while (consumeOpt(parser, context | 32768, 18)) {
7764
- expressions.push(parseExpression(parser, context, 1, 0, 1, parser.tokenPos, parser.linePos, parser.colPos));
7752
+ expressions.push(parseExpression(parser, context, 1, 1, parser.tokenPos, parser.linePos, parser.colPos));
7765
7753
  }
7766
7754
  parser.assignable = 2;
7767
7755
  expr = finishNode(parser, context, iStart, lStart, cStart, {
@@ -7828,7 +7816,7 @@ function parseParenthesizedExpression(parser, context, canAssign, kind, origin,
7828
7816
  }
7829
7817
  function parseIdentifierOrArrow(parser, context, start, line, column) {
7830
7818
  const { tokenValue } = parser;
7831
- const expr = parseIdentifier(parser, context, 0);
7819
+ const expr = parseIdentifier(parser, context);
7832
7820
  parser.assignable = 1;
7833
7821
  if (parser.token === 10) {
7834
7822
  let scope = void 0;
@@ -7866,7 +7854,7 @@ function parseArrowFunctionExpression(parser, context, scope, params, isAsync, s
7866
7854
  reportScopeError(scope.scopeError);
7867
7855
  }
7868
7856
  if (expression) {
7869
- body = parseExpression(parser, context & 16384 ? context | 33554432 : context, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
7857
+ body = parseExpression(parser, context & 16384 ? context | 33554432 : context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
7870
7858
  }
7871
7859
  else {
7872
7860
  if (scope)
@@ -7947,7 +7935,7 @@ function parseFormalParametersOrFormalList(parser, context, scope, inGroup, kind
7947
7935
  if (parser.token === 1077936157) {
7948
7936
  nextToken(parser, context | 32768);
7949
7937
  isSimpleParameterList = 1;
7950
- const right = parseExpression(parser, context, 1, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
7938
+ const right = parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
7951
7939
  left = finishNode(parser, context, tokenPos, linePos, colPos, {
7952
7940
  type: 'AssignmentPattern',
7953
7941
  left,
@@ -7973,7 +7961,7 @@ function parseMembeExpressionNoCall(parser, context, expr, inGroup, start, line,
7973
7961
  const { token } = parser;
7974
7962
  if (token & 67108864) {
7975
7963
  if (token === 67108877) {
7976
- nextToken(parser, context | 1073741824);
7964
+ nextToken(parser, context | 268435456);
7977
7965
  parser.assignable = 1;
7978
7966
  const property = parsePropertyOrPrivatePropertyName(parser, context);
7979
7967
  return parseMembeExpressionNoCall(parser, context, finishNode(parser, context, start, line, column, {
@@ -8010,7 +7998,7 @@ function parseMembeExpressionNoCall(parser, context, expr, inGroup, start, line,
8010
7998
  return expr;
8011
7999
  }
8012
8000
  function parseNewExpression(parser, context, inGroup, start, line, column) {
8013
- const id = parseIdentifier(parser, context | 32768, 0);
8001
+ const id = parseIdentifier(parser, context | 32768);
8014
8002
  const { tokenPos, linePos, colPos } = parser;
8015
8003
  if (consumeOpt(parser, context, 67108877)) {
8016
8004
  if (context & 67108864 && parser.token === 143494) {
@@ -8023,7 +8011,7 @@ function parseNewExpression(parser, context, inGroup, start, line, column) {
8023
8011
  if ((parser.token & 16842752) === 16842752) {
8024
8012
  report(parser, 63, KeywordDescTable[parser.token & 255]);
8025
8013
  }
8026
- const expr = parsePrimaryExpression(parser, context, 2, 1, 0, 0, inGroup, 1, tokenPos, linePos, colPos);
8014
+ const expr = parsePrimaryExpression(parser, context, 2, 1, 0, inGroup, 1, tokenPos, linePos, colPos);
8027
8015
  context = (context | 134217728) ^ 134217728;
8028
8016
  if (parser.token === 67108991)
8029
8017
  report(parser, 163);
@@ -8036,7 +8024,7 @@ function parseNewExpression(parser, context, inGroup, start, line, column) {
8036
8024
  });
8037
8025
  }
8038
8026
  function parseMetaProperty(parser, context, meta, start, line, column) {
8039
- const property = parseIdentifier(parser, context, 0);
8027
+ const property = parseIdentifier(parser, context);
8040
8028
  return finishNode(parser, context, start, line, column, {
8041
8029
  type: 'MetaProperty',
8042
8030
  meta,
@@ -8052,7 +8040,7 @@ function parseAsyncArrowAfterIdent(parser, context, canAssign, start, line, colu
8052
8040
  if ((parser.token & 537079808) === 537079808) {
8053
8041
  parser.flags |= 512;
8054
8042
  }
8055
- return parseArrowFromIdentifier(parser, context, parser.tokenValue, parseIdentifier(parser, context, 0), 0, canAssign, 1, start, line, column);
8043
+ return parseArrowFromIdentifier(parser, context, parser.tokenValue, parseIdentifier(parser, context), 0, canAssign, 1, start, line, column);
8056
8044
  }
8057
8045
  function parseAsyncArrowOrCallExpression(parser, context, callee, canAssign, kind, origin, flags, start, line, column) {
8058
8046
  nextToken(parser, context | 32768);
@@ -8082,7 +8070,7 @@ function parseAsyncArrowOrCallExpression(parser, context, callee, canAssign, kin
8082
8070
  if (token & (143360 | 4096)) {
8083
8071
  if (scope)
8084
8072
  addBlockName(parser, context, scope, parser.tokenValue, kind, 0);
8085
- expr = parsePrimaryExpression(parser, context, kind, 0, 1, 0, 1, 1, tokenPos, linePos, colPos);
8073
+ expr = parsePrimaryExpression(parser, context, kind, 0, 1, 1, 1, tokenPos, linePos, colPos);
8086
8074
  if (parser.token === 16 || parser.token === 18) {
8087
8075
  if (parser.assignable & 2) {
8088
8076
  destructible |= 16;
@@ -8134,11 +8122,11 @@ function parseAsyncArrowOrCallExpression(parser, context, callee, canAssign, kin
8134
8122
  isSimpleParameterList = 1;
8135
8123
  }
8136
8124
  else {
8137
- expr = parseExpression(parser, context, 1, 0, 0, tokenPos, linePos, colPos);
8125
+ expr = parseExpression(parser, context, 1, 0, tokenPos, linePos, colPos);
8138
8126
  destructible = parser.assignable;
8139
8127
  params.push(expr);
8140
8128
  while (consumeOpt(parser, context | 32768, 18)) {
8141
- params.push(parseExpression(parser, context, 1, 0, 0, tokenPos, linePos, colPos));
8129
+ params.push(parseExpression(parser, context, 1, 0, tokenPos, linePos, colPos));
8142
8130
  }
8143
8131
  destructible |= parser.assignable;
8144
8132
  consume(parser, context, 16);
@@ -8233,7 +8221,7 @@ function parseClassDeclaration(parser, context, scope, flags, start, line, colum
8233
8221
  }
8234
8222
  }
8235
8223
  }
8236
- id = parseIdentifier(parser, context, 0);
8224
+ id = parseIdentifier(parser, context);
8237
8225
  }
8238
8226
  else {
8239
8227
  if ((flags & 1) === 0)
@@ -8280,7 +8268,7 @@ function parseClassExpression(parser, context, inGroup, start, line, column) {
8280
8268
  if ((parser.token & 537079808) === 537079808) {
8281
8269
  report(parser, 116);
8282
8270
  }
8283
- id = parseIdentifier(parser, context, 0);
8271
+ id = parseIdentifier(parser, context);
8284
8272
  }
8285
8273
  let inheritedContext = context;
8286
8274
  if (consumeOpt(parser, context | 32768, 20567)) {
@@ -8318,7 +8306,7 @@ function parseDecorators(parser, context) {
8318
8306
  }
8319
8307
  function parseDecoratorList(parser, context, start, line, column) {
8320
8308
  nextToken(parser, context | 32768);
8321
- let expression = parsePrimaryExpression(parser, context, 2, 0, 1, 0, 0, 1, start, line, column);
8309
+ let expression = parsePrimaryExpression(parser, context, 2, 0, 1, 0, 1, start, line, column);
8322
8310
  expression = parseMemberOrUpdateExpression(parser, context, expression, 0, 0, start, line, column);
8323
8311
  return finishNode(parser, context, start, line, column, {
8324
8312
  type: 'Decorator',
@@ -8361,7 +8349,7 @@ function parseClassElementList(parser, context, scope, inheritedContext, type, d
8361
8349
  let key = null;
8362
8350
  const { token, tokenPos, linePos, colPos } = parser;
8363
8351
  if (token & (143360 | 36864)) {
8364
- key = parseIdentifier(parser, context, 0);
8352
+ key = parseIdentifier(parser, context);
8365
8353
  switch (token) {
8366
8354
  case 36972:
8367
8355
  if (!isStatic &&
@@ -8419,7 +8407,7 @@ function parseClassElementList(parser, context, scope, inheritedContext, type, d
8419
8407
  return parseStaticBlock(parser, context, scope, tokenPos, linePos, colPos);
8420
8408
  }
8421
8409
  else if (token === 122) {
8422
- key = parseIdentifier(parser, context, 0);
8410
+ key = parseIdentifier(parser, context);
8423
8411
  if (parser.token !== 67174411)
8424
8412
  report(parser, 28, KeywordDescTable[parser.token & 255]);
8425
8413
  }
@@ -8428,7 +8416,7 @@ function parseClassElementList(parser, context, scope, inheritedContext, type, d
8428
8416
  }
8429
8417
  if (kind & (8 | 16 | 768)) {
8430
8418
  if (parser.token & 143360) {
8431
- key = parseIdentifier(parser, context, 0);
8419
+ key = parseIdentifier(parser, context);
8432
8420
  }
8433
8421
  else if ((parser.token & 134217728) === 134217728) {
8434
8422
  key = parseLiteral(parser, context);
@@ -8438,7 +8426,7 @@ function parseClassElementList(parser, context, scope, inheritedContext, type, d
8438
8426
  key = parseComputedPropertyName(parser, context, 0);
8439
8427
  }
8440
8428
  else if (parser.token === 122) {
8441
- key = parseIdentifier(parser, context, 0);
8429
+ key = parseIdentifier(parser, context);
8442
8430
  }
8443
8431
  else if (context & 1 && parser.token === 131) {
8444
8432
  kind |= 4096;
@@ -8533,7 +8521,7 @@ function parsePropertyDefinition(parser, context, key, state, decorators, start,
8533
8521
  ((context | modifierFlags) ^ modifierFlags) |
8534
8522
  ((state & 88) << 18) |
8535
8523
  100925440;
8536
- value = parsePrimaryExpression(parser, context | 16384, 2, 0, 1, 0, 0, 1, tokenPos, linePos, colPos);
8524
+ value = parsePrimaryExpression(parser, context | 16384, 2, 0, 1, 0, 1, tokenPos, linePos, colPos);
8537
8525
  if ((parser.token & 1073741824) !== 1073741824 ||
8538
8526
  (parser.token & 4194304) === 4194304) {
8539
8527
  value = parseMemberOrUpdateExpression(parser, context | 16384, value, 0, 0, tokenPos, linePos, colPos);
@@ -8741,7 +8729,7 @@ function parseJSXAttributes(parser, context) {
8741
8729
  function parseJSXSpreadAttribute(parser, context, start, line, column) {
8742
8730
  nextToken(parser, context);
8743
8731
  consume(parser, context, 14);
8744
- const expression = parseExpression(parser, context, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
8732
+ const expression = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
8745
8733
  consume(parser, context, 1074790415);
8746
8734
  return finishNode(parser, context, start, line, column, {
8747
8735
  type: 'JSXSpreadAttribute',
@@ -8801,7 +8789,7 @@ function parseJSXExpressionContainer(parser, context, inJSXChild, isAttr, start,
8801
8789
  expression = parseJSXEmptyExpression(parser, context, parser.startPos, parser.startLine, parser.startColumn);
8802
8790
  }
8803
8791
  else {
8804
- expression = parseExpression(parser, context, 1, 0, 0, tokenPos, linePos, colPos);
8792
+ expression = parseExpression(parser, context, 1, 0, tokenPos, linePos, colPos);
8805
8793
  }
8806
8794
  if (inJSXChild) {
8807
8795
  consume(parser, context, 1074790415);
@@ -8816,7 +8804,7 @@ function parseJSXExpressionContainer(parser, context, inJSXChild, isAttr, start,
8816
8804
  }
8817
8805
  function parseJSXSpreadChild(parser, context, start, line, column) {
8818
8806
  consume(parser, context, 14);
8819
- const expression = parseExpression(parser, context, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
8807
+ const expression = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
8820
8808
  consume(parser, context, 1074790415);
8821
8809
  return finishNode(parser, context, start, line, column, {
8822
8810
  type: 'JSXSpreadChild',
@@ -8844,7 +8832,7 @@ var estree = /*#__PURE__*/Object.freeze({
8844
8832
  __proto__: null
8845
8833
  });
8846
8834
 
8847
- var version$1 = "4.4.3";
8835
+ var version$1 = "4.5.0";
8848
8836
 
8849
8837
  const version = version$1;
8850
8838
  function parseScript(source, options) {