@danielx/civet 0.5.50 → 0.5.52

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/main.mjs CHANGED
@@ -481,6 +481,7 @@ ${input.slice(result.pos)}
481
481
  ExtendsTarget,
482
482
  ImplementsClause,
483
483
  ImplementsToken,
484
+ ImplementsShorthand,
484
485
  ImplementsTarget,
485
486
  ClassBody,
486
487
  NestedClassElements,
@@ -922,6 +923,7 @@ ${input.slice(result.pos)}
922
923
  EOS,
923
924
  EOL,
924
925
  Debugger,
926
+ InsertSemicolon,
925
927
  InsertOpenParen,
926
928
  InsertCloseParen,
927
929
  InsertOpenBrace,
@@ -950,6 +952,7 @@ ${input.slice(result.pos)}
950
952
  CoffeeNotEnabled,
951
953
  CoffeeOfEnabled,
952
954
  CoffeePrototypeEnabled,
955
+ ObjectIsEnabled,
953
956
  Reset,
954
957
  Init,
955
958
  Indent,
@@ -968,169 +971,170 @@ ${input.slice(result.pos)}
968
971
  var $L5 = $L("=>");
969
972
  var $L6 = $L(" ");
970
973
  var $L7 = $L("implements");
971
- var $L8 = $L("#");
972
- var $L9 = $L("super");
973
- var $L10 = $L("import");
974
- var $L11 = $L("!");
975
- var $L12 = $L("super[");
976
- var $L13 = $L("import.meta");
977
- var $L14 = $L("");
978
- var $L15 = $L(")");
979
- var $L16 = $L("->");
980
- var $L17 = $L("}");
981
- var $L18 = $L("null");
982
- var $L19 = $L("true");
983
- var $L20 = $L("false");
984
- var $L21 = $L("yes");
985
- var $L22 = $L("on");
986
- var $L23 = $L("no");
987
- var $L24 = $L("off");
988
- var $L25 = $L(",");
989
- var $L26 = $L("=");
990
- var $L27 = $L(">");
991
- var $L28 = $L("]");
992
- var $L29 = $L(":");
993
- var $L30 = $L("**=");
994
- var $L31 = $L("*=");
995
- var $L32 = $L("/=");
996
- var $L33 = $L("%=");
997
- var $L34 = $L("+=");
998
- var $L35 = $L("-=");
999
- var $L36 = $L("<<=");
1000
- var $L37 = $L(">>>=");
1001
- var $L38 = $L(">>=");
1002
- var $L39 = $L("&&=");
1003
- var $L40 = $L("&=");
1004
- var $L41 = $L("^=");
1005
- var $L42 = $L("||=");
1006
- var $L43 = $L("|=");
1007
- var $L44 = $L("??=");
1008
- var $L45 = $L("?=");
1009
- var $L46 = $L("and=");
1010
- var $L47 = $L("or=");
1011
- var $L48 = $L("**");
1012
- var $L49 = $L("*");
1013
- var $L50 = $L("/");
1014
- var $L51 = $L("%%");
1015
- var $L52 = $L("%");
1016
- var $L53 = $L("+");
1017
- var $L54 = $L("-");
1018
- var $L55 = $L("<=");
1019
- var $L56 = $L(">=");
1020
- var $L57 = $L("<?");
1021
- var $L58 = $L("<<");
1022
- var $L59 = $L(">>>");
1023
- var $L60 = $L(">>");
1024
- var $L61 = $L("!==");
1025
- var $L62 = $L("!=");
1026
- var $L63 = $L("isnt");
1027
- var $L64 = $L("===");
1028
- var $L65 = $L("==");
1029
- var $L66 = $L("and");
1030
- var $L67 = $L("&&");
1031
- var $L68 = $L("of");
1032
- var $L69 = $L("or");
1033
- var $L70 = $L("||");
1034
- var $L71 = $L("??");
1035
- var $L72 = $L("instanceof");
1036
- var $L73 = $L("not");
1037
- var $L74 = $L("in");
1038
- var $L75 = $L("is");
1039
- var $L76 = $L("&");
1040
- var $L77 = $L("^");
1041
- var $L78 = $L("|");
1042
- var $L79 = $L(";");
1043
- var $L80 = $L("own");
1044
- var $L81 = $L("finally");
1045
- var $L82 = $L("break");
1046
- var $L83 = $L("continue");
1047
- var $L84 = $L("debugger");
1048
- var $L85 = $L("assert");
1049
- var $L86 = $L(":=");
1050
- var $L87 = $L(".=");
1051
- var $L88 = $L("/*");
1052
- var $L89 = $L("*/");
1053
- var $L90 = $L("\\");
1054
- var $L91 = $L("abstract");
1055
- var $L92 = $L("as");
1056
- var $L93 = $L("@");
1057
- var $L94 = $L("@@");
1058
- var $L95 = $L("async");
1059
- var $L96 = $L("await");
1060
- var $L97 = $L("`");
1061
- var $L98 = $L("by");
1062
- var $L99 = $L("case");
1063
- var $L100 = $L("catch");
1064
- var $L101 = $L("class");
1065
- var $L102 = $L("#{");
1066
- var $L103 = $L("declare");
1067
- var $L104 = $L("default");
1068
- var $L105 = $L("delete");
1069
- var $L106 = $L("do");
1070
- var $L107 = $L("..");
1071
- var $L108 = $L("...");
1072
- var $L109 = $L("::");
1073
- var $L110 = $L('"');
1074
- var $L111 = $L("else");
1075
- var $L112 = $L("export");
1076
- var $L113 = $L("extends");
1077
- var $L114 = $L("for");
1078
- var $L115 = $L("from");
1079
- var $L116 = $L("function");
1080
- var $L117 = $L("get");
1081
- var $L118 = $L("set");
1082
- var $L119 = $L("if");
1083
- var $L120 = $L("let");
1084
- var $L121 = $L("const");
1085
- var $L122 = $L("loop");
1086
- var $L123 = $L("new");
1087
- var $L124 = $L("<");
1088
- var $L125 = $L("{");
1089
- var $L126 = $L("[");
1090
- var $L127 = $L("(");
1091
- var $L128 = $L("public");
1092
- var $L129 = $L("private");
1093
- var $L130 = $L("protected");
1094
- var $L131 = $L("|>");
1095
- var $L132 = $L("readonly");
1096
- var $L133 = $L("return");
1097
- var $L134 = $L("satisfies");
1098
- var $L135 = $L("'");
1099
- var $L136 = $L("static");
1100
- var $L137 = $L("${");
1101
- var $L138 = $L("switch");
1102
- var $L139 = $L("target");
1103
- var $L140 = $L("then");
1104
- var $L141 = $L("this");
1105
- var $L142 = $L("throw");
1106
- var $L143 = $L('"""');
1107
- var $L144 = $L("'''");
1108
- var $L145 = $L("///");
1109
- var $L146 = $L("```");
1110
- var $L147 = $L("try");
1111
- var $L148 = $L("typeof");
1112
- var $L149 = $L("unless");
1113
- var $L150 = $L("until");
1114
- var $L151 = $L("var");
1115
- var $L152 = $L("void");
1116
- var $L153 = $L("when");
1117
- var $L154 = $L("while");
1118
- var $L155 = $L("yield");
1119
- var $L156 = $L("/>");
1120
- var $L157 = $L("</");
1121
- var $L158 = $L("<>");
1122
- var $L159 = $L("</>");
1123
- var $L160 = $L("<!--");
1124
- var $L161 = $L("-->");
1125
- var $L162 = $L("type");
1126
- var $L163 = $L("interface");
1127
- var $L164 = $L("namespace");
1128
- var $L165 = $L("asserts");
1129
- var $L166 = $L("keyof");
1130
- var $L167 = $L("infer");
1131
- var $L168 = $L("[]");
1132
- var $L169 = $L("civet");
1133
- var $R0 = $R(new RegExp("(as|for|of|satisfies|then|when)(?!\\p{ID_Continue}|[\\u200C\\u200D$])", "suy"));
974
+ var $L8 = $L("<:");
975
+ var $L9 = $L("#");
976
+ var $L10 = $L("super");
977
+ var $L11 = $L("import");
978
+ var $L12 = $L("!");
979
+ var $L13 = $L("super[");
980
+ var $L14 = $L("import.meta");
981
+ var $L15 = $L("");
982
+ var $L16 = $L(")");
983
+ var $L17 = $L("->");
984
+ var $L18 = $L("}");
985
+ var $L19 = $L("null");
986
+ var $L20 = $L("true");
987
+ var $L21 = $L("false");
988
+ var $L22 = $L("yes");
989
+ var $L23 = $L("on");
990
+ var $L24 = $L("no");
991
+ var $L25 = $L("off");
992
+ var $L26 = $L(",");
993
+ var $L27 = $L("=");
994
+ var $L28 = $L(">");
995
+ var $L29 = $L("]");
996
+ var $L30 = $L(":");
997
+ var $L31 = $L("**=");
998
+ var $L32 = $L("*=");
999
+ var $L33 = $L("/=");
1000
+ var $L34 = $L("%=");
1001
+ var $L35 = $L("+=");
1002
+ var $L36 = $L("-=");
1003
+ var $L37 = $L("<<=");
1004
+ var $L38 = $L(">>>=");
1005
+ var $L39 = $L(">>=");
1006
+ var $L40 = $L("&&=");
1007
+ var $L41 = $L("&=");
1008
+ var $L42 = $L("^=");
1009
+ var $L43 = $L("||=");
1010
+ var $L44 = $L("|=");
1011
+ var $L45 = $L("??=");
1012
+ var $L46 = $L("?=");
1013
+ var $L47 = $L("and=");
1014
+ var $L48 = $L("or=");
1015
+ var $L49 = $L("**");
1016
+ var $L50 = $L("*");
1017
+ var $L51 = $L("/");
1018
+ var $L52 = $L("%%");
1019
+ var $L53 = $L("%");
1020
+ var $L54 = $L("+");
1021
+ var $L55 = $L("-");
1022
+ var $L56 = $L("<=");
1023
+ var $L57 = $L(">=");
1024
+ var $L58 = $L("<?");
1025
+ var $L59 = $L("<<");
1026
+ var $L60 = $L(">>>");
1027
+ var $L61 = $L(">>");
1028
+ var $L62 = $L("!==");
1029
+ var $L63 = $L("!=");
1030
+ var $L64 = $L("isnt");
1031
+ var $L65 = $L("===");
1032
+ var $L66 = $L("==");
1033
+ var $L67 = $L("and");
1034
+ var $L68 = $L("&&");
1035
+ var $L69 = $L("of");
1036
+ var $L70 = $L("or");
1037
+ var $L71 = $L("||");
1038
+ var $L72 = $L("??");
1039
+ var $L73 = $L("instanceof");
1040
+ var $L74 = $L("not");
1041
+ var $L75 = $L("in");
1042
+ var $L76 = $L("is");
1043
+ var $L77 = $L("&");
1044
+ var $L78 = $L("^");
1045
+ var $L79 = $L("|");
1046
+ var $L80 = $L(";");
1047
+ var $L81 = $L("own");
1048
+ var $L82 = $L("finally");
1049
+ var $L83 = $L("break");
1050
+ var $L84 = $L("continue");
1051
+ var $L85 = $L("debugger");
1052
+ var $L86 = $L("assert");
1053
+ var $L87 = $L(":=");
1054
+ var $L88 = $L(".=");
1055
+ var $L89 = $L("/*");
1056
+ var $L90 = $L("*/");
1057
+ var $L91 = $L("\\");
1058
+ var $L92 = $L("(");
1059
+ var $L93 = $L("[");
1060
+ var $L94 = $L("`");
1061
+ var $L95 = $L("abstract");
1062
+ var $L96 = $L("as");
1063
+ var $L97 = $L("@");
1064
+ var $L98 = $L("@@");
1065
+ var $L99 = $L("async");
1066
+ var $L100 = $L("await");
1067
+ var $L101 = $L("by");
1068
+ var $L102 = $L("case");
1069
+ var $L103 = $L("catch");
1070
+ var $L104 = $L("class");
1071
+ var $L105 = $L("#{");
1072
+ var $L106 = $L("declare");
1073
+ var $L107 = $L("default");
1074
+ var $L108 = $L("delete");
1075
+ var $L109 = $L("do");
1076
+ var $L110 = $L("..");
1077
+ var $L111 = $L("...");
1078
+ var $L112 = $L("::");
1079
+ var $L113 = $L('"');
1080
+ var $L114 = $L("else");
1081
+ var $L115 = $L("export");
1082
+ var $L116 = $L("extends");
1083
+ var $L117 = $L("for");
1084
+ var $L118 = $L("from");
1085
+ var $L119 = $L("function");
1086
+ var $L120 = $L("get");
1087
+ var $L121 = $L("set");
1088
+ var $L122 = $L("if");
1089
+ var $L123 = $L("let");
1090
+ var $L124 = $L("const");
1091
+ var $L125 = $L("loop");
1092
+ var $L126 = $L("new");
1093
+ var $L127 = $L("<");
1094
+ var $L128 = $L("{");
1095
+ var $L129 = $L("public");
1096
+ var $L130 = $L("private");
1097
+ var $L131 = $L("protected");
1098
+ var $L132 = $L("|>");
1099
+ var $L133 = $L("readonly");
1100
+ var $L134 = $L("return");
1101
+ var $L135 = $L("satisfies");
1102
+ var $L136 = $L("'");
1103
+ var $L137 = $L("static");
1104
+ var $L138 = $L("${");
1105
+ var $L139 = $L("switch");
1106
+ var $L140 = $L("target");
1107
+ var $L141 = $L("then");
1108
+ var $L142 = $L("this");
1109
+ var $L143 = $L("throw");
1110
+ var $L144 = $L('"""');
1111
+ var $L145 = $L("'''");
1112
+ var $L146 = $L("///");
1113
+ var $L147 = $L("```");
1114
+ var $L148 = $L("try");
1115
+ var $L149 = $L("typeof");
1116
+ var $L150 = $L("unless");
1117
+ var $L151 = $L("until");
1118
+ var $L152 = $L("var");
1119
+ var $L153 = $L("void");
1120
+ var $L154 = $L("when");
1121
+ var $L155 = $L("while");
1122
+ var $L156 = $L("yield");
1123
+ var $L157 = $L("/>");
1124
+ var $L158 = $L("</");
1125
+ var $L159 = $L("<>");
1126
+ var $L160 = $L("</>");
1127
+ var $L161 = $L("<!--");
1128
+ var $L162 = $L("-->");
1129
+ var $L163 = $L("type");
1130
+ var $L164 = $L("interface");
1131
+ var $L165 = $L("namespace");
1132
+ var $L166 = $L("asserts");
1133
+ var $L167 = $L("keyof");
1134
+ var $L168 = $L("infer");
1135
+ var $L169 = $L("[]");
1136
+ var $L170 = $L("civet");
1137
+ var $R0 = $R(new RegExp("(as|for|of|satisfies|then|when|implements)(?!\\p{ID_Continue}|[\\u200C\\u200D$])", "suy"));
1134
1138
  var $R1 = $R(new RegExp("[&]", "suy"));
1135
1139
  var $R2 = $R(new RegExp("[!~+-]+", "suy"));
1136
1140
  var $R3 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
@@ -1178,16 +1182,17 @@ ${input.slice(result.pos)}
1178
1182
  var $R45 = $R(new RegExp("\\s", "suy"));
1179
1183
  var $R46 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*", "suy"));
1180
1184
  var $R47 = $R(new RegExp("(?:[\\w\\-:]+|\\([^()]*\\)|\\[[^\\[\\]]*\\])+", "suy"));
1181
- var $R48 = $R(new RegExp("(?:-[^-]|[^-]*)*", "suy"));
1182
- var $R49 = $R(new RegExp("[^{}<>\\r\\n]+", "suy"));
1183
- var $R50 = $R(new RegExp("[+-]?", "suy"));
1184
- var $R51 = $R(new RegExp("[+-]", "suy"));
1185
- var $R52 = $R(new RegExp("#![^\\r\\n]*", "suy"));
1186
- var $R53 = $R(new RegExp("[\\t ]*", "suy"));
1187
- var $R54 = $R(new RegExp("[\\s]*", "suy"));
1188
- var $R55 = $R(new RegExp("\\s+([+-]?)([a-zA-Z0-9-]+)(\\s*=\\s*([a-zA-Z0-9.+-]*))?", "suy"));
1189
- var $R56 = $R(new RegExp("\\r\\n|\\n|\\r|$", "suy"));
1190
- var $R57 = $R(new RegExp("[ \\t]*", "suy"));
1185
+ var $R48 = $R(new RegExp("[<>]", "suy"));
1186
+ var $R49 = $R(new RegExp("(?:-[^-]|[^-]*)*", "suy"));
1187
+ var $R50 = $R(new RegExp("[^{}<>\\r\\n]+", "suy"));
1188
+ var $R51 = $R(new RegExp("[+-]?", "suy"));
1189
+ var $R52 = $R(new RegExp("[+-]", "suy"));
1190
+ var $R53 = $R(new RegExp("#![^\\r\\n]*", "suy"));
1191
+ var $R54 = $R(new RegExp("[\\t ]*", "suy"));
1192
+ var $R55 = $R(new RegExp("[\\s]*", "suy"));
1193
+ var $R56 = $R(new RegExp("\\s+([+-]?)([a-zA-Z0-9-]+)(\\s*=\\s*([a-zA-Z0-9.+-]*))?", "suy"));
1194
+ var $R57 = $R(new RegExp("\\r\\n|\\n|\\r|$", "suy"));
1195
+ var $R58 = $R(new RegExp("[ \\t]*", "suy"));
1191
1196
  var Program$0 = $TS($S(Reset, Init, __, $Q(TopLevelStatement), __), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
1192
1197
  var statements = $4;
1193
1198
  module.processProgram(statements);
@@ -1406,7 +1411,7 @@ ${input.slice(result.pos)}
1406
1411
  return result;
1407
1412
  }
1408
1413
  }
1409
- var ImplicitArguments$0 = $TS($S($E($S(TypeArguments, $N($S(__, ImplementsToken)))), ApplicationStart, InsertOpenParen, $Q(_), ArgumentList, InsertCloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
1414
+ var ImplicitArguments$0 = $TS($S($E($S(TypeArguments, $N(ImplementsToken))), ApplicationStart, InsertOpenParen, $Q(_), ArgumentList, InsertCloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
1410
1415
  var ta = $1;
1411
1416
  var open = $3;
1412
1417
  var ws = $4;
@@ -1483,7 +1488,7 @@ ${input.slice(result.pos)}
1483
1488
  return result;
1484
1489
  }
1485
1490
  }
1486
- var ForbiddenImplicitCalls$0 = $R$0($EXPECT($R0, fail, "ForbiddenImplicitCalls /(as|for|of|satisfies|then|when)(?!\\p{ID_Continue}|[\\u200C\\u200D$])/"));
1491
+ var ForbiddenImplicitCalls$0 = $R$0($EXPECT($R0, fail, "ForbiddenImplicitCalls /(as|for|of|satisfies|then|when|implements)(?!\\p{ID_Continue}|[\\u200C\\u200D$])/"));
1487
1492
  var ForbiddenImplicitCalls$1 = $EXPECT($L0, fail, 'ForbiddenImplicitCalls "/ "');
1488
1493
  var ForbiddenImplicitCalls$2 = AtAt;
1489
1494
  function ForbiddenImplicitCalls(state) {
@@ -1508,7 +1513,15 @@ ${input.slice(result.pos)}
1508
1513
  return result;
1509
1514
  }
1510
1515
  }
1511
- var ArgumentsWithTrailingMemberExpressions$0 = $S(Arguments, TrailingMemberExpressions);
1516
+ var ArgumentsWithTrailingMemberExpressions$0 = $TS($S(Arguments, TrailingMemberExpressions), function($skip, $loc, $0, $1, $2) {
1517
+ var args = $1;
1518
+ var trailing = $2;
1519
+ const call = {
1520
+ type: "Call",
1521
+ children: args
1522
+ };
1523
+ return [call, ...trailing];
1524
+ });
1512
1525
  function ArgumentsWithTrailingMemberExpressions(state) {
1513
1526
  let eventData;
1514
1527
  if (state.events) {
@@ -2671,9 +2684,7 @@ ${input.slice(result.pos)}
2671
2684
  if (!ws.length) {
2672
2685
  children.unshift({ $loc: l.$loc, token: " " });
2673
2686
  }
2674
- return {
2675
- children
2676
- };
2687
+ return { children };
2677
2688
  });
2678
2689
  var ExtendsToken$1 = $S(__, Extends);
2679
2690
  function ExtendsToken(state) {
@@ -2728,7 +2739,7 @@ ${input.slice(result.pos)}
2728
2739
  return result;
2729
2740
  }
2730
2741
  }
2731
- var ImplementsClause$0 = $TS($S(__, ImplementsToken, ImplementsTarget, $Q($S(Comma, ImplementsTarget))), function($skip, $loc, $0, $1, $2, $3, $4) {
2742
+ var ImplementsClause$0 = $TS($S(ImplementsToken, ImplementsTarget, $Q($S(Comma, ImplementsTarget))), function($skip, $loc, $0, $1, $2, $3) {
2732
2743
  return {
2733
2744
  ts: true,
2734
2745
  children: $0
@@ -2756,8 +2767,19 @@ ${input.slice(result.pos)}
2756
2767
  return result;
2757
2768
  }
2758
2769
  }
2759
- var ImplementsToken$0 = $TS($S($EXPECT($L7, fail, 'ImplementsToken "implements"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
2760
- return { $loc, token: $1 };
2770
+ var ImplementsToken$0 = $TS($S(Loc, __, ImplementsShorthand, $E($EXPECT($L6, fail, 'ImplementsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
2771
+ var l = $1;
2772
+ var ws = $2;
2773
+ var token = $3;
2774
+ const children = [...ws, token];
2775
+ if (!ws.length) {
2776
+ children.unshift({ $loc: l.$loc, token: " " });
2777
+ }
2778
+ return { children };
2779
+ });
2780
+ var ImplementsToken$1 = $TS($S(__, $EXPECT($L7, fail, 'ImplementsToken "implements"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
2781
+ $2 = { $loc, token: $2 };
2782
+ return [$1, $2];
2761
2783
  });
2762
2784
  function ImplementsToken(state) {
2763
2785
  let eventData;
@@ -2770,17 +2792,42 @@ ${input.slice(result.pos)}
2770
2792
  }
2771
2793
  }
2772
2794
  if (state.tokenize) {
2773
- const result = $TOKEN("ImplementsToken", state, ImplementsToken$0(state));
2795
+ const result = $TOKEN("ImplementsToken", state, ImplementsToken$0(state) || ImplementsToken$1(state));
2774
2796
  if (state.events)
2775
2797
  state.events.exit?.("ImplementsToken", state, result, eventData);
2776
2798
  return result;
2777
2799
  } else {
2778
- const result = ImplementsToken$0(state);
2800
+ const result = ImplementsToken$0(state) || ImplementsToken$1(state);
2779
2801
  if (state.events)
2780
2802
  state.events.exit?.("ImplementsToken", state, result, eventData);
2781
2803
  return result;
2782
2804
  }
2783
2805
  }
2806
+ var ImplementsShorthand$0 = $TV($EXPECT($L8, fail, 'ImplementsShorthand "<:"'), function($skip, $loc, $0, $1) {
2807
+ return { $loc, token: "implements " };
2808
+ });
2809
+ function ImplementsShorthand(state) {
2810
+ let eventData;
2811
+ if (state.events) {
2812
+ const result = state.events.enter?.("ImplementsShorthand", state);
2813
+ if (result) {
2814
+ if (result.cache)
2815
+ return result.cache;
2816
+ eventData = result.data;
2817
+ }
2818
+ }
2819
+ if (state.tokenize) {
2820
+ const result = $TOKEN("ImplementsShorthand", state, ImplementsShorthand$0(state));
2821
+ if (state.events)
2822
+ state.events.exit?.("ImplementsShorthand", state, result, eventData);
2823
+ return result;
2824
+ } else {
2825
+ const result = ImplementsShorthand$0(state);
2826
+ if (state.events)
2827
+ state.events.exit?.("ImplementsShorthand", state, result, eventData);
2828
+ return result;
2829
+ }
2830
+ }
2784
2831
  var ImplementsTarget$0 = $S(__, IdentifierName, $Q($S(Dot, IdentifierName)), $E(TypeArguments));
2785
2832
  function ImplementsTarget(state) {
2786
2833
  let eventData;
@@ -3007,7 +3054,7 @@ ${input.slice(result.pos)}
3007
3054
  }
3008
3055
  }
3009
3056
  var ThisLiteral$0 = This;
3010
- var ThisLiteral$1 = $TS($S(AtThis, $TEXT($S($E($EXPECT($L8, fail, 'ThisLiteral "#"')), IdentifierName))), function($skip, $loc, $0, $1, $2) {
3057
+ var ThisLiteral$1 = $TS($S(AtThis, $TEXT($S($E($EXPECT($L9, fail, 'ThisLiteral "#"')), IdentifierName))), function($skip, $loc, $0, $1, $2) {
3011
3058
  var at = $1;
3012
3059
  var id = $2;
3013
3060
  return [at, ".", id];
@@ -3088,11 +3135,18 @@ ${input.slice(result.pos)}
3088
3135
  return result;
3089
3136
  }
3090
3137
  }
3091
- var CallExpression$0 = $S($EXPECT($L9, fail, 'CallExpression "super"'), ArgumentsWithTrailingMemberExpressions, $Q(CallExpressionRest));
3092
- var CallExpression$1 = $TS($S($EXPECT($L10, fail, 'CallExpression "import"'), ArgumentsWithTrailingMemberExpressions, $Q(CallExpressionRest)), function($skip, $loc, $0, $1, $2, $3) {
3138
+ var CallExpression$0 = $TS($S($EXPECT($L10, fail, 'CallExpression "super"'), ArgumentsWithTrailingMemberExpressions, $Q(CallExpressionRest)), function($skip, $loc, $0, $1, $2, $3) {
3139
+ var rest = $3;
3093
3140
  return {
3094
3141
  type: "CallExpression",
3095
- children: $0
3142
+ children: [$1, ...$2, ...rest.flat()]
3143
+ };
3144
+ });
3145
+ var CallExpression$1 = $TS($S($EXPECT($L11, fail, 'CallExpression "import"'), ArgumentsWithTrailingMemberExpressions, $Q(CallExpressionRest)), function($skip, $loc, $0, $1, $2, $3) {
3146
+ var rest = $3;
3147
+ return {
3148
+ type: "CallExpression",
3149
+ children: [$1, ...$2, ...rest.flat()]
3096
3150
  };
3097
3151
  });
3098
3152
  var CallExpression$2 = $TS($S(MemberExpression, NonSuppressedTrailingMemberExpressions, $Q(CallExpressionRest)), function($skip, $loc, $0, $1, $2, $3) {
@@ -3100,8 +3154,9 @@ ${input.slice(result.pos)}
3100
3154
  var trailing = $2;
3101
3155
  var rest = $3;
3102
3156
  if (rest.length || trailing.length) {
3157
+ rest = rest.flat();
3103
3158
  return {
3104
- type: rest.length ? "CallExpression" : "MemberExpression",
3159
+ type: rest.length && rest[rest.length - 1].type === "Call" ? "CallExpression" : "MemberExpression",
3105
3160
  children: [member, ...trailing, ...rest]
3106
3161
  };
3107
3162
  }
@@ -3131,7 +3186,11 @@ ${input.slice(result.pos)}
3131
3186
  }
3132
3187
  var CallExpressionRest$0 = MemberExpressionRest;
3133
3188
  var CallExpressionRest$1 = TemplateLiteral;
3134
- var CallExpressionRest$2 = $S($E($C(OptionalShorthand, NonNullAssertion)), ArgumentsWithTrailingMemberExpressions);
3189
+ var CallExpressionRest$2 = $TS($S($E($C(OptionalShorthand, NonNullAssertion)), ArgumentsWithTrailingMemberExpressions), function($skip, $loc, $0, $1, $2) {
3190
+ if (!$1)
3191
+ return $2;
3192
+ return [$1, ...$2];
3193
+ });
3135
3194
  function CallExpressionRest(state) {
3136
3195
  let eventData;
3137
3196
  if (state.events) {
@@ -3154,7 +3213,12 @@ ${input.slice(result.pos)}
3154
3213
  return result;
3155
3214
  }
3156
3215
  }
3157
- var OptionalShorthand$0 = $S(QuestionMark, $C(Dot, InsertDot));
3216
+ var OptionalShorthand$0 = $TS($S(QuestionMark, $C(Dot, InsertDot)), function($skip, $loc, $0, $1, $2) {
3217
+ return {
3218
+ type: "Optional",
3219
+ children: $0
3220
+ };
3221
+ });
3158
3222
  function OptionalShorthand(state) {
3159
3223
  let eventData;
3160
3224
  if (state.events) {
@@ -3177,8 +3241,8 @@ ${input.slice(result.pos)}
3177
3241
  return result;
3178
3242
  }
3179
3243
  }
3180
- var NonNullAssertion$0 = $T($EXPECT($L11, fail, 'NonNullAssertion "!"'), function(value) {
3181
- return { "ts": true, "children": value };
3244
+ var NonNullAssertion$0 = $T($EXPECT($L12, fail, 'NonNullAssertion "!"'), function(value) {
3245
+ return { "type": "NonNullAssertion", "ts": true, "children": value };
3182
3246
  });
3183
3247
  function NonNullAssertion(state) {
3184
3248
  let eventData;
@@ -3238,8 +3302,8 @@ ${input.slice(result.pos)}
3238
3302
  }
3239
3303
  var MemberExpressionRest$0 = $TS($S($E($C(OptionalShorthand, NonNullAssertion)), MemberBracketContent), function($skip, $loc, $0, $1, $2) {
3240
3304
  if ($1) {
3241
- if ($1.length === 2 && $2.type === "SliceExpression") {
3242
- return [$1[0], $2];
3305
+ if ($1.type === "Optional" && $2.type === "SliceExpression") {
3306
+ return [$1.children[0], $2];
3243
3307
  }
3244
3308
  return $0;
3245
3309
  }
@@ -3289,6 +3353,15 @@ ${input.slice(result.pos)}
3289
3353
  }
3290
3354
  return $0;
3291
3355
  });
3356
+ var MemberBracketContent$1 = $TS($S(Dot, $C(StringLiteral, TemplateLiteral)), function($skip, $loc, $0, $1, $2) {
3357
+ var dot = $1;
3358
+ var str = $2;
3359
+ return [
3360
+ { token: "[", $loc: dot.$loc },
3361
+ str,
3362
+ "]"
3363
+ ];
3364
+ });
3292
3365
  function MemberBracketContent(state) {
3293
3366
  let eventData;
3294
3367
  if (state.events) {
@@ -3300,12 +3373,12 @@ ${input.slice(result.pos)}
3300
3373
  }
3301
3374
  }
3302
3375
  if (state.tokenize) {
3303
- const result = $TOKEN("MemberBracketContent", state, MemberBracketContent$0(state));
3376
+ const result = $TOKEN("MemberBracketContent", state, MemberBracketContent$0(state) || MemberBracketContent$1(state));
3304
3377
  if (state.events)
3305
3378
  state.events.exit?.("MemberBracketContent", state, result, eventData);
3306
3379
  return result;
3307
3380
  } else {
3308
- const result = MemberBracketContent$0(state);
3381
+ const result = MemberBracketContent$0(state) || MemberBracketContent$1(state);
3309
3382
  if (state.events)
3310
3383
  state.events.exit?.("MemberBracketContent", state, result, eventData);
3311
3384
  return result;
@@ -3386,6 +3459,7 @@ ${input.slice(result.pos)}
3386
3459
  children.unshift($1);
3387
3460
  return {
3388
3461
  type: "PropertyAccess",
3462
+ name: id.name,
3389
3463
  children
3390
3464
  };
3391
3465
  });
@@ -3421,8 +3495,8 @@ ${input.slice(result.pos)}
3421
3495
  return result;
3422
3496
  }
3423
3497
  }
3424
- var SuperProperty$0 = $S($EXPECT($L12, fail, 'SuperProperty "super["'), ExtendedExpression, __, CloseBracket);
3425
- var SuperProperty$1 = $S($EXPECT($L9, fail, 'SuperProperty "super"'), $N($C(QuestionMark, NonNullAssertion)), PropertyAccess);
3498
+ var SuperProperty$0 = $S($EXPECT($L13, fail, 'SuperProperty "super["'), ExtendedExpression, __, CloseBracket);
3499
+ var SuperProperty$1 = $S($EXPECT($L10, fail, 'SuperProperty "super"'), $N($C(QuestionMark, NonNullAssertion)), PropertyAccess);
3426
3500
  function SuperProperty(state) {
3427
3501
  let eventData;
3428
3502
  if (state.events) {
@@ -3446,7 +3520,7 @@ ${input.slice(result.pos)}
3446
3520
  }
3447
3521
  }
3448
3522
  var MetaProperty$0 = $S(New, Dot, Target);
3449
- var MetaProperty$1 = $TS($S($EXPECT($L13, fail, 'MetaProperty "import.meta"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
3523
+ var MetaProperty$1 = $TS($S($EXPECT($L14, fail, 'MetaProperty "import.meta"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
3450
3524
  return { $loc, token: $1 };
3451
3525
  });
3452
3526
  function MetaProperty(state) {
@@ -3472,7 +3546,7 @@ ${input.slice(result.pos)}
3472
3546
  }
3473
3547
  }
3474
3548
  var Parameters$0 = NonEmptyParameters;
3475
- var Parameters$1 = $TV($EXPECT($L14, fail, 'Parameters ""'), function($skip, $loc, $0, $1) {
3549
+ var Parameters$1 = $TV($EXPECT($L15, fail, 'Parameters ""'), function($skip, $loc, $0, $1) {
3476
3550
  return {
3477
3551
  type: "Parameters",
3478
3552
  children: [{ $loc, token: "()" }],
@@ -3633,7 +3707,7 @@ ${input.slice(result.pos)}
3633
3707
  }
3634
3708
  }
3635
3709
  var ParameterElementDelimiter$0 = $S($Q(_), Comma);
3636
- var ParameterElementDelimiter$1 = $Y($S(__, $EXPECT($L15, fail, 'ParameterElementDelimiter ")"')));
3710
+ var ParameterElementDelimiter$1 = $Y($S(__, $EXPECT($L16, fail, 'ParameterElementDelimiter ")"')));
3637
3711
  var ParameterElementDelimiter$2 = $T($S($Y(EOS), InsertComma), function(value) {
3638
3712
  return value[1];
3639
3713
  });
@@ -4291,7 +4365,7 @@ ${input.slice(result.pos)}
4291
4365
  return result;
4292
4366
  }
4293
4367
  }
4294
- var EmptyBindingPattern$0 = $TV($EXPECT($L14, fail, 'EmptyBindingPattern ""'), function($skip, $loc, $0, $1) {
4368
+ var EmptyBindingPattern$0 = $TV($EXPECT($L15, fail, 'EmptyBindingPattern ""'), function($skip, $loc, $0, $1) {
4295
4369
  const ref = {
4296
4370
  type: "Ref",
4297
4371
  base: "ref",
@@ -4567,7 +4641,7 @@ ${input.slice(result.pos)}
4567
4641
  return result;
4568
4642
  }
4569
4643
  }
4570
- var Arrow$0 = $TV($EXPECT($L16, fail, 'Arrow "->"'), function($skip, $loc, $0, $1) {
4644
+ var Arrow$0 = $TV($EXPECT($L17, fail, 'Arrow "->"'), function($skip, $loc, $0, $1) {
4571
4645
  return { $loc, token: $1 };
4572
4646
  });
4573
4647
  function Arrow(state) {
@@ -4592,7 +4666,17 @@ ${input.slice(result.pos)}
4592
4666
  return result;
4593
4667
  }
4594
4668
  }
4595
- var ExplicitBlock$0 = $TS($S(__, OpenBrace, NestedBlockStatements, __, CloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
4669
+ var ExplicitBlock$0 = $TS($S(__, OpenBrace, __, CloseBrace), function($skip, $loc, $0, $1, $2, $3, $4) {
4670
+ const expressions = [];
4671
+ return {
4672
+ type: "BlockStatement",
4673
+ expressions,
4674
+ children: [$1, expressions, $2],
4675
+ bare: false,
4676
+ empty: true
4677
+ };
4678
+ });
4679
+ var ExplicitBlock$1 = $TS($S(__, OpenBrace, NestedBlockStatements, __, CloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
4596
4680
  var block = $3;
4597
4681
  return Object.assign({}, block, {
4598
4682
  children: [$1, $2, ...block.children, $4, $5],
@@ -4610,12 +4694,12 @@ ${input.slice(result.pos)}
4610
4694
  }
4611
4695
  }
4612
4696
  if (state.tokenize) {
4613
- const result = $TOKEN("ExplicitBlock", state, ExplicitBlock$0(state));
4697
+ const result = $TOKEN("ExplicitBlock", state, ExplicitBlock$0(state) || ExplicitBlock$1(state));
4614
4698
  if (state.events)
4615
4699
  state.events.exit?.("ExplicitBlock", state, result, eventData);
4616
4700
  return result;
4617
4701
  } else {
4618
- const result = ExplicitBlock$0(state);
4702
+ const result = ExplicitBlock$0(state) || ExplicitBlock$1(state);
4619
4703
  if (state.events)
4620
4704
  state.events.exit?.("ExplicitBlock", state, result, eventData);
4621
4705
  return result;
@@ -4741,7 +4825,8 @@ ${input.slice(result.pos)}
4741
4825
  type: "BlockStatement",
4742
4826
  expressions,
4743
4827
  children: [$1, expressions, $2],
4744
- bare: false
4828
+ bare: false,
4829
+ empty: true
4745
4830
  };
4746
4831
  });
4747
4832
  function EmptyBlock(state) {
@@ -4790,6 +4875,8 @@ ${input.slice(result.pos)}
4790
4875
  var s = $3;
4791
4876
  var ws = $4;
4792
4877
  var c = $5;
4878
+ if (!s.children.length)
4879
+ return $skip;
4793
4880
  return {
4794
4881
  type: "BlockStatement",
4795
4882
  expressions: s.expressions,
@@ -4862,7 +4949,7 @@ ${input.slice(result.pos)}
4862
4949
  children: [$1, expressions]
4863
4950
  };
4864
4951
  });
4865
- var BracedContent$2 = $TV($Y($S(__, $EXPECT($L17, fail, 'BracedContent "}"'))), function($skip, $loc, $0, $1) {
4952
+ var BracedContent$2 = $TV($Y($S(__, $EXPECT($L18, fail, 'BracedContent "}"'))), function($skip, $loc, $0, $1) {
4866
4953
  const expressions = [];
4867
4954
  return {
4868
4955
  type: "BlockStatement",
@@ -5007,7 +5094,7 @@ ${input.slice(result.pos)}
5007
5094
  return result;
5008
5095
  }
5009
5096
  }
5010
- var NullLiteral$0 = $TS($S($EXPECT($L18, fail, 'NullLiteral "null"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5097
+ var NullLiteral$0 = $TS($S($EXPECT($L19, fail, 'NullLiteral "null"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5011
5098
  return { $loc, token: $1 };
5012
5099
  });
5013
5100
  function NullLiteral(state) {
@@ -5035,7 +5122,7 @@ ${input.slice(result.pos)}
5035
5122
  var BooleanLiteral$0 = $T($S(CoffeeBooleansEnabled, CoffeeScriptBooleanLiteral), function(value) {
5036
5123
  return value[1];
5037
5124
  });
5038
- var BooleanLiteral$1 = $TS($S($C($EXPECT($L19, fail, 'BooleanLiteral "true"'), $EXPECT($L20, fail, 'BooleanLiteral "false"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5125
+ var BooleanLiteral$1 = $TS($S($C($EXPECT($L20, fail, 'BooleanLiteral "true"'), $EXPECT($L21, fail, 'BooleanLiteral "false"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5039
5126
  return { $loc, token: $1 };
5040
5127
  });
5041
5128
  function BooleanLiteral(state) {
@@ -5060,10 +5147,10 @@ ${input.slice(result.pos)}
5060
5147
  return result;
5061
5148
  }
5062
5149
  }
5063
- var CoffeeScriptBooleanLiteral$0 = $TS($S($C($EXPECT($L21, fail, 'CoffeeScriptBooleanLiteral "yes"'), $EXPECT($L22, fail, 'CoffeeScriptBooleanLiteral "on"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5150
+ var CoffeeScriptBooleanLiteral$0 = $TS($S($C($EXPECT($L22, fail, 'CoffeeScriptBooleanLiteral "yes"'), $EXPECT($L23, fail, 'CoffeeScriptBooleanLiteral "on"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5064
5151
  return { $loc, token: "true" };
5065
5152
  });
5066
- var CoffeeScriptBooleanLiteral$1 = $TS($S($C($EXPECT($L23, fail, 'CoffeeScriptBooleanLiteral "no"'), $EXPECT($L24, fail, 'CoffeeScriptBooleanLiteral "off"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5153
+ var CoffeeScriptBooleanLiteral$1 = $TS($S($C($EXPECT($L24, fail, 'CoffeeScriptBooleanLiteral "no"'), $EXPECT($L25, fail, 'CoffeeScriptBooleanLiteral "off"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5067
5154
  return { $loc, token: "false" };
5068
5155
  });
5069
5156
  function CoffeeScriptBooleanLiteral(state) {
@@ -5088,7 +5175,7 @@ ${input.slice(result.pos)}
5088
5175
  return result;
5089
5176
  }
5090
5177
  }
5091
- var Comma$0 = $TV($EXPECT($L25, fail, 'Comma ","'), function($skip, $loc, $0, $1) {
5178
+ var Comma$0 = $TV($EXPECT($L26, fail, 'Comma ","'), function($skip, $loc, $0, $1) {
5092
5179
  return { $loc, token: $1 };
5093
5180
  });
5094
5181
  function Comma(state) {
@@ -5194,7 +5281,7 @@ ${input.slice(result.pos)}
5194
5281
  return result;
5195
5282
  }
5196
5283
  }
5197
- var UpcomingAssignment$0 = $Y($S(__, $EXPECT($L26, fail, 'UpcomingAssignment "="'), $N($C($EXPECT($L26, fail, 'UpcomingAssignment "="'), $EXPECT($L27, fail, 'UpcomingAssignment ">"')))));
5284
+ var UpcomingAssignment$0 = $Y($S(__, $EXPECT($L27, fail, 'UpcomingAssignment "="'), $N($C($EXPECT($L27, fail, 'UpcomingAssignment "="'), $EXPECT($L28, fail, 'UpcomingAssignment ">"')))));
5198
5285
  function UpcomingAssignment(state) {
5199
5286
  let eventData;
5200
5287
  if (state.events) {
@@ -5467,7 +5554,7 @@ ${input.slice(result.pos)}
5467
5554
  }
5468
5555
  }
5469
5556
  var ArrayElementDelimiter$0 = $S(__, Comma);
5470
- var ArrayElementDelimiter$1 = $Y($S(__, $EXPECT($L28, fail, 'ArrayElementDelimiter "]"')));
5557
+ var ArrayElementDelimiter$1 = $Y($S(__, $EXPECT($L29, fail, 'ArrayElementDelimiter "]"')));
5471
5558
  var ArrayElementDelimiter$2 = $T($S($Y(EOS), InsertComma), function(value) {
5472
5559
  return value[1];
5473
5560
  });
@@ -5892,7 +5979,7 @@ ${input.slice(result.pos)}
5892
5979
  var ImplicitInlineObjectPropertyDelimiter$1 = $T($S($Y($S($C(Samedent, $Q(_)), NamedProperty)), InsertComma), function(value) {
5893
5980
  return value[1];
5894
5981
  });
5895
- var ImplicitInlineObjectPropertyDelimiter$2 = $T($Y($S(__, $C($EXPECT($L29, fail, 'ImplicitInlineObjectPropertyDelimiter ":"'), $EXPECT($L15, fail, 'ImplicitInlineObjectPropertyDelimiter ")"'), $EXPECT($L28, fail, 'ImplicitInlineObjectPropertyDelimiter "]"'), $EXPECT($L17, fail, 'ImplicitInlineObjectPropertyDelimiter "}"'), ReservedWord))), function(value) {
5982
+ var ImplicitInlineObjectPropertyDelimiter$2 = $T($Y($S(__, $C($EXPECT($L30, fail, 'ImplicitInlineObjectPropertyDelimiter ":"'), $EXPECT($L16, fail, 'ImplicitInlineObjectPropertyDelimiter ")"'), $EXPECT($L29, fail, 'ImplicitInlineObjectPropertyDelimiter "]"'), $EXPECT($L18, fail, 'ImplicitInlineObjectPropertyDelimiter "}"'), ReservedWord))), function(value) {
5896
5983
  return "";
5897
5984
  });
5898
5985
  var ImplicitInlineObjectPropertyDelimiter$3 = $T($Y(EOS), function(value) {
@@ -5921,7 +6008,7 @@ ${input.slice(result.pos)}
5921
6008
  }
5922
6009
  }
5923
6010
  var ObjectPropertyDelimiter$0 = $S($Q(_), Comma);
5924
- var ObjectPropertyDelimiter$1 = $Y($S(__, $EXPECT($L17, fail, 'ObjectPropertyDelimiter "}"')));
6011
+ var ObjectPropertyDelimiter$1 = $Y($S(__, $EXPECT($L18, fail, 'ObjectPropertyDelimiter "}"')));
5925
6012
  var ObjectPropertyDelimiter$2 = $T($S($Y(EOS), InsertComma), function(value) {
5926
6013
  return value[1];
5927
6014
  });
@@ -6014,6 +6101,8 @@ ${input.slice(result.pos)}
6014
6101
  var PropertyDefinition$3 = $TS($S(__, MethodDefinition), function($skip, $loc, $0, $1, $2) {
6015
6102
  var ws = $1;
6016
6103
  var def = $2;
6104
+ if (def.block.empty)
6105
+ return $skip;
6017
6106
  return {
6018
6107
  ...def,
6019
6108
  children: [...ws, ...def.children]
@@ -6030,10 +6119,31 @@ ${input.slice(result.pos)}
6030
6119
  value: [dots, exp]
6031
6120
  };
6032
6121
  });
6033
- var PropertyDefinition$5 = $TS($S(__, IdentifierReference), function($skip, $loc, $0, $1, $2) {
6122
+ var PropertyDefinition$5 = $TS($S(__, CallExpression), function($skip, $loc, $0, $1, $2) {
6034
6123
  var ws = $1;
6035
- var id = $2;
6036
- return { ...id, children: [...ws, ...id.children] };
6124
+ var value = $2;
6125
+ if (value.type === "Identifier") {
6126
+ return { ...value, children: [...ws, ...value.children] };
6127
+ }
6128
+ let exp = value, children, i;
6129
+ do {
6130
+ ({ children } = exp);
6131
+ i = children.length - 1;
6132
+ while (i >= 0 && (children[i].type === "Call" || children[i].type === "NonNullAssertion" || children[i].type === "Optional"))
6133
+ i--;
6134
+ if (i < 0)
6135
+ return $skip;
6136
+ } while (children[i].type === "MemberExpression" && (exp = children[i]));
6137
+ const { name } = children[i];
6138
+ if (!name)
6139
+ return $skip;
6140
+ return {
6141
+ type: "Property",
6142
+ children: [ws, name, ": ", value],
6143
+ name,
6144
+ value,
6145
+ names: []
6146
+ };
6037
6147
  });
6038
6148
  function PropertyDefinition(state) {
6039
6149
  let eventData;
@@ -6364,7 +6474,7 @@ ${input.slice(result.pos)}
6364
6474
  return result;
6365
6475
  }
6366
6476
  }
6367
- var PrivateIdentifier$0 = $TV($TEXT($S($EXPECT($L8, fail, 'PrivateIdentifier "#"'), IdentifierName)), function($skip, $loc, $0, $1) {
6477
+ var PrivateIdentifier$0 = $TV($TEXT($S($EXPECT($L9, fail, 'PrivateIdentifier "#"'), IdentifierName)), function($skip, $loc, $0, $1) {
6368
6478
  return {
6369
6479
  type: "Identifier",
6370
6480
  name: $0,
@@ -6428,25 +6538,25 @@ ${input.slice(result.pos)}
6428
6538
  return result;
6429
6539
  }
6430
6540
  }
6431
- var AssignmentOpSymbol$0 = $EXPECT($L30, fail, 'AssignmentOpSymbol "**="');
6432
- var AssignmentOpSymbol$1 = $EXPECT($L31, fail, 'AssignmentOpSymbol "*="');
6433
- var AssignmentOpSymbol$2 = $EXPECT($L32, fail, 'AssignmentOpSymbol "/="');
6434
- var AssignmentOpSymbol$3 = $EXPECT($L33, fail, 'AssignmentOpSymbol "%="');
6435
- var AssignmentOpSymbol$4 = $EXPECT($L34, fail, 'AssignmentOpSymbol "+="');
6436
- var AssignmentOpSymbol$5 = $EXPECT($L35, fail, 'AssignmentOpSymbol "-="');
6437
- var AssignmentOpSymbol$6 = $EXPECT($L36, fail, 'AssignmentOpSymbol "<<="');
6438
- var AssignmentOpSymbol$7 = $EXPECT($L37, fail, 'AssignmentOpSymbol ">>>="');
6439
- var AssignmentOpSymbol$8 = $EXPECT($L38, fail, 'AssignmentOpSymbol ">>="');
6440
- var AssignmentOpSymbol$9 = $EXPECT($L39, fail, 'AssignmentOpSymbol "&&="');
6441
- var AssignmentOpSymbol$10 = $EXPECT($L40, fail, 'AssignmentOpSymbol "&="');
6442
- var AssignmentOpSymbol$11 = $EXPECT($L41, fail, 'AssignmentOpSymbol "^="');
6443
- var AssignmentOpSymbol$12 = $EXPECT($L42, fail, 'AssignmentOpSymbol "||="');
6444
- var AssignmentOpSymbol$13 = $EXPECT($L43, fail, 'AssignmentOpSymbol "|="');
6445
- var AssignmentOpSymbol$14 = $EXPECT($L44, fail, 'AssignmentOpSymbol "??="');
6446
- var AssignmentOpSymbol$15 = $T($EXPECT($L45, fail, 'AssignmentOpSymbol "?="'), function(value) {
6541
+ var AssignmentOpSymbol$0 = $EXPECT($L31, fail, 'AssignmentOpSymbol "**="');
6542
+ var AssignmentOpSymbol$1 = $EXPECT($L32, fail, 'AssignmentOpSymbol "*="');
6543
+ var AssignmentOpSymbol$2 = $EXPECT($L33, fail, 'AssignmentOpSymbol "/="');
6544
+ var AssignmentOpSymbol$3 = $EXPECT($L34, fail, 'AssignmentOpSymbol "%="');
6545
+ var AssignmentOpSymbol$4 = $EXPECT($L35, fail, 'AssignmentOpSymbol "+="');
6546
+ var AssignmentOpSymbol$5 = $EXPECT($L36, fail, 'AssignmentOpSymbol "-="');
6547
+ var AssignmentOpSymbol$6 = $EXPECT($L37, fail, 'AssignmentOpSymbol "<<="');
6548
+ var AssignmentOpSymbol$7 = $EXPECT($L38, fail, 'AssignmentOpSymbol ">>>="');
6549
+ var AssignmentOpSymbol$8 = $EXPECT($L39, fail, 'AssignmentOpSymbol ">>="');
6550
+ var AssignmentOpSymbol$9 = $EXPECT($L40, fail, 'AssignmentOpSymbol "&&="');
6551
+ var AssignmentOpSymbol$10 = $EXPECT($L41, fail, 'AssignmentOpSymbol "&="');
6552
+ var AssignmentOpSymbol$11 = $EXPECT($L42, fail, 'AssignmentOpSymbol "^="');
6553
+ var AssignmentOpSymbol$12 = $EXPECT($L43, fail, 'AssignmentOpSymbol "||="');
6554
+ var AssignmentOpSymbol$13 = $EXPECT($L44, fail, 'AssignmentOpSymbol "|="');
6555
+ var AssignmentOpSymbol$14 = $EXPECT($L45, fail, 'AssignmentOpSymbol "??="');
6556
+ var AssignmentOpSymbol$15 = $T($EXPECT($L46, fail, 'AssignmentOpSymbol "?="'), function(value) {
6447
6557
  return "??=";
6448
6558
  });
6449
- var AssignmentOpSymbol$16 = $T($S($EXPECT($L26, fail, 'AssignmentOpSymbol "="'), $N($EXPECT($L26, fail, 'AssignmentOpSymbol "="'))), function(value) {
6559
+ var AssignmentOpSymbol$16 = $T($S($EXPECT($L27, fail, 'AssignmentOpSymbol "="'), $N($EXPECT($L27, fail, 'AssignmentOpSymbol "="'))), function(value) {
6450
6560
  return value[0];
6451
6561
  });
6452
6562
  var AssignmentOpSymbol$17 = $T($S(CoffeeWordAssignmentOp), function(value) {
@@ -6474,10 +6584,10 @@ ${input.slice(result.pos)}
6474
6584
  return result;
6475
6585
  }
6476
6586
  }
6477
- var CoffeeWordAssignmentOp$0 = $T($EXPECT($L46, fail, 'CoffeeWordAssignmentOp "and="'), function(value) {
6587
+ var CoffeeWordAssignmentOp$0 = $T($EXPECT($L47, fail, 'CoffeeWordAssignmentOp "and="'), function(value) {
6478
6588
  return "&&=";
6479
6589
  });
6480
- var CoffeeWordAssignmentOp$1 = $T($EXPECT($L47, fail, 'CoffeeWordAssignmentOp "or="'), function(value) {
6590
+ var CoffeeWordAssignmentOp$1 = $T($EXPECT($L48, fail, 'CoffeeWordAssignmentOp "or="'), function(value) {
6481
6591
  return "||=";
6482
6592
  });
6483
6593
  function CoffeeWordAssignmentOp(state) {
@@ -6529,74 +6639,80 @@ ${input.slice(result.pos)}
6529
6639
  return result;
6530
6640
  }
6531
6641
  }
6532
- var BinaryOpSymbol$0 = $EXPECT($L48, fail, 'BinaryOpSymbol "**"');
6533
- var BinaryOpSymbol$1 = $EXPECT($L49, fail, 'BinaryOpSymbol "*"');
6534
- var BinaryOpSymbol$2 = $EXPECT($L50, fail, 'BinaryOpSymbol "/"');
6535
- var BinaryOpSymbol$3 = $TV($EXPECT($L51, fail, 'BinaryOpSymbol "%%"'), function($skip, $loc, $0, $1) {
6642
+ var BinaryOpSymbol$0 = $EXPECT($L49, fail, 'BinaryOpSymbol "**"');
6643
+ var BinaryOpSymbol$1 = $EXPECT($L50, fail, 'BinaryOpSymbol "*"');
6644
+ var BinaryOpSymbol$2 = $EXPECT($L51, fail, 'BinaryOpSymbol "/"');
6645
+ var BinaryOpSymbol$3 = $TV($EXPECT($L52, fail, 'BinaryOpSymbol "%%"'), function($skip, $loc, $0, $1) {
6536
6646
  return {
6537
6647
  call: module.getRef("modulo"),
6538
6648
  special: true
6539
6649
  };
6540
6650
  });
6541
- var BinaryOpSymbol$4 = $EXPECT($L52, fail, 'BinaryOpSymbol "%"');
6542
- var BinaryOpSymbol$5 = $EXPECT($L53, fail, 'BinaryOpSymbol "+"');
6543
- var BinaryOpSymbol$6 = $EXPECT($L54, fail, 'BinaryOpSymbol "-"');
6544
- var BinaryOpSymbol$7 = $EXPECT($L55, fail, 'BinaryOpSymbol "<="');
6545
- var BinaryOpSymbol$8 = $EXPECT($L56, fail, 'BinaryOpSymbol ">="');
6546
- var BinaryOpSymbol$9 = $TS($S($EXPECT($L57, fail, 'BinaryOpSymbol "<?"'), $E($EXPECT($L6, fail, 'BinaryOpSymbol " "'))), function($skip, $loc, $0, $1, $2) {
6547
- return "instanceof ";
6651
+ var BinaryOpSymbol$4 = $EXPECT($L53, fail, 'BinaryOpSymbol "%"');
6652
+ var BinaryOpSymbol$5 = $EXPECT($L54, fail, 'BinaryOpSymbol "+"');
6653
+ var BinaryOpSymbol$6 = $EXPECT($L55, fail, 'BinaryOpSymbol "-"');
6654
+ var BinaryOpSymbol$7 = $EXPECT($L56, fail, 'BinaryOpSymbol "<="');
6655
+ var BinaryOpSymbol$8 = $EXPECT($L57, fail, 'BinaryOpSymbol ">="');
6656
+ var BinaryOpSymbol$9 = $TV($EXPECT($L58, fail, 'BinaryOpSymbol "<?"'), function($skip, $loc, $0, $1) {
6657
+ return {
6658
+ $loc,
6659
+ token: "instanceof",
6660
+ relational: true,
6661
+ special: true
6662
+ };
6548
6663
  });
6549
- var BinaryOpSymbol$10 = $EXPECT($L58, fail, 'BinaryOpSymbol "<<"');
6664
+ var BinaryOpSymbol$10 = $EXPECT($L59, fail, 'BinaryOpSymbol "<<"');
6550
6665
  var BinaryOpSymbol$11 = $TR($EXPECT($R5, fail, "BinaryOpSymbol /<(?!\\p{ID_Start}|[_$])/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
6551
6666
  return "<";
6552
6667
  });
6553
- var BinaryOpSymbol$12 = $EXPECT($L59, fail, 'BinaryOpSymbol ">>>"');
6554
- var BinaryOpSymbol$13 = $EXPECT($L60, fail, 'BinaryOpSymbol ">>"');
6555
- var BinaryOpSymbol$14 = $EXPECT($L27, fail, 'BinaryOpSymbol ">"');
6556
- var BinaryOpSymbol$15 = $EXPECT($L61, fail, 'BinaryOpSymbol "!=="');
6557
- var BinaryOpSymbol$16 = $TV($EXPECT($L62, fail, 'BinaryOpSymbol "!="'), function($skip, $loc, $0, $1) {
6668
+ var BinaryOpSymbol$12 = $EXPECT($L60, fail, 'BinaryOpSymbol ">>>"');
6669
+ var BinaryOpSymbol$13 = $EXPECT($L61, fail, 'BinaryOpSymbol ">>"');
6670
+ var BinaryOpSymbol$14 = $EXPECT($L28, fail, 'BinaryOpSymbol ">"');
6671
+ var BinaryOpSymbol$15 = $EXPECT($L62, fail, 'BinaryOpSymbol "!=="');
6672
+ var BinaryOpSymbol$16 = $TV($EXPECT($L63, fail, 'BinaryOpSymbol "!="'), function($skip, $loc, $0, $1) {
6558
6673
  if (module.config.coffeeEq)
6559
6674
  return "!==";
6560
6675
  return $1;
6561
6676
  });
6562
- var BinaryOpSymbol$17 = $TS($S($EXPECT($L63, fail, 'BinaryOpSymbol "isnt"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6677
+ var BinaryOpSymbol$17 = $TS($S($EXPECT($L64, fail, 'BinaryOpSymbol "isnt"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6563
6678
  if (module.config.coffeeIsnt)
6564
6679
  return "!==";
6565
6680
  return $skip;
6566
6681
  });
6567
- var BinaryOpSymbol$18 = $EXPECT($L64, fail, 'BinaryOpSymbol "==="');
6568
- var BinaryOpSymbol$19 = $TV($EXPECT($L65, fail, 'BinaryOpSymbol "=="'), function($skip, $loc, $0, $1) {
6682
+ var BinaryOpSymbol$18 = $EXPECT($L65, fail, 'BinaryOpSymbol "==="');
6683
+ var BinaryOpSymbol$19 = $TV($EXPECT($L66, fail, 'BinaryOpSymbol "=="'), function($skip, $loc, $0, $1) {
6569
6684
  if (module.config.coffeeEq)
6570
6685
  return "===";
6571
6686
  return $1;
6572
6687
  });
6573
- var BinaryOpSymbol$20 = $T($S($EXPECT($L66, fail, 'BinaryOpSymbol "and"'), NonIdContinue), function(value) {
6688
+ var BinaryOpSymbol$20 = $T($S($EXPECT($L67, fail, 'BinaryOpSymbol "and"'), NonIdContinue), function(value) {
6574
6689
  return "&&";
6575
6690
  });
6576
- var BinaryOpSymbol$21 = $EXPECT($L67, fail, 'BinaryOpSymbol "&&"');
6577
- var BinaryOpSymbol$22 = $T($S(CoffeeOfEnabled, $EXPECT($L68, fail, 'BinaryOpSymbol "of"'), NonIdContinue), function(value) {
6691
+ var BinaryOpSymbol$21 = $EXPECT($L68, fail, 'BinaryOpSymbol "&&"');
6692
+ var BinaryOpSymbol$22 = $T($S(CoffeeOfEnabled, $EXPECT($L69, fail, 'BinaryOpSymbol "of"'), NonIdContinue), function(value) {
6578
6693
  return "in";
6579
6694
  });
6580
- var BinaryOpSymbol$23 = $T($S($EXPECT($L69, fail, 'BinaryOpSymbol "or"'), NonIdContinue), function(value) {
6695
+ var BinaryOpSymbol$23 = $T($S($EXPECT($L70, fail, 'BinaryOpSymbol "or"'), NonIdContinue), function(value) {
6581
6696
  return "||";
6582
6697
  });
6583
- var BinaryOpSymbol$24 = $EXPECT($L70, fail, 'BinaryOpSymbol "||"');
6584
- var BinaryOpSymbol$25 = $EXPECT($L71, fail, 'BinaryOpSymbol "??"');
6698
+ var BinaryOpSymbol$24 = $EXPECT($L71, fail, 'BinaryOpSymbol "||"');
6699
+ var BinaryOpSymbol$25 = $EXPECT($L72, fail, 'BinaryOpSymbol "??"');
6585
6700
  var BinaryOpSymbol$26 = $T($S(CoffeeBinaryExistentialEnabled, $EXPECT($L1, fail, 'BinaryOpSymbol "?"')), function(value) {
6586
6701
  return "??";
6587
6702
  });
6588
- var BinaryOpSymbol$27 = $TS($S($EXPECT($L72, fail, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6703
+ var BinaryOpSymbol$27 = $TS($S($EXPECT($L73, fail, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6589
6704
  return $1;
6590
6705
  });
6591
- var BinaryOpSymbol$28 = $TS($S(CoffeeNotEnabled, $EXPECT($L73, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L72, fail, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
6706
+ var BinaryOpSymbol$28 = $TS($S(CoffeeNotEnabled, $EXPECT($L74, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L73, fail, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
6592
6707
  return {
6593
6708
  $loc,
6594
6709
  token: "instanceof",
6710
+ relational: true,
6595
6711
  special: true,
6596
6712
  negated: true
6597
6713
  };
6598
6714
  });
6599
- var BinaryOpSymbol$29 = $TV($C($S($N(CoffeeOfEnabled), $EXPECT($L73, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L74, fail, 'BinaryOpSymbol "in"'), NonIdContinue), $S(CoffeeOfEnabled, $EXPECT($L73, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L68, fail, 'BinaryOpSymbol "of"'), NonIdContinue)), function($skip, $loc, $0, $1) {
6715
+ var BinaryOpSymbol$29 = $TV($C($S($N(CoffeeOfEnabled), $EXPECT($L74, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L75, fail, 'BinaryOpSymbol "in"'), NonIdContinue), $S(CoffeeOfEnabled, $EXPECT($L74, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L69, fail, 'BinaryOpSymbol "of"'), NonIdContinue)), function($skip, $loc, $0, $1) {
6600
6716
  return {
6601
6717
  $loc,
6602
6718
  token: "in",
@@ -6604,7 +6720,7 @@ ${input.slice(result.pos)}
6604
6720
  negated: true
6605
6721
  };
6606
6722
  });
6607
- var BinaryOpSymbol$30 = $TS($S($EXPECT($L75, fail, 'BinaryOpSymbol "is"'), NonIdContinue, __, $EXPECT($L74, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
6723
+ var BinaryOpSymbol$30 = $TS($S($EXPECT($L76, fail, 'BinaryOpSymbol "is"'), NonIdContinue, __, $EXPECT($L75, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
6608
6724
  return {
6609
6725
  method: "includes",
6610
6726
  relational: true,
@@ -6612,7 +6728,7 @@ ${input.slice(result.pos)}
6612
6728
  special: true
6613
6729
  };
6614
6730
  });
6615
- var BinaryOpSymbol$31 = $TS($S(CoffeeOfEnabled, $EXPECT($L74, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
6731
+ var BinaryOpSymbol$31 = $TS($S(CoffeeOfEnabled, $EXPECT($L75, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
6616
6732
  return {
6617
6733
  call: [module.getRef("indexOf"), ".call"],
6618
6734
  relational: true,
@@ -6621,7 +6737,7 @@ ${input.slice(result.pos)}
6621
6737
  special: true
6622
6738
  };
6623
6739
  });
6624
- var BinaryOpSymbol$32 = $TS($S($EXPECT($L75, fail, 'BinaryOpSymbol "is"'), NonIdContinue, __, $EXPECT($L73, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L74, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8) {
6740
+ var BinaryOpSymbol$32 = $TS($S($EXPECT($L76, fail, 'BinaryOpSymbol "is"'), NonIdContinue, __, $EXPECT($L74, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L75, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8) {
6625
6741
  return {
6626
6742
  method: "includes",
6627
6743
  relational: true,
@@ -6630,7 +6746,7 @@ ${input.slice(result.pos)}
6630
6746
  negated: true
6631
6747
  };
6632
6748
  });
6633
- var BinaryOpSymbol$33 = $TS($S(CoffeeOfEnabled, $EXPECT($L73, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L74, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
6749
+ var BinaryOpSymbol$33 = $TS($S(CoffeeOfEnabled, $EXPECT($L74, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L75, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
6634
6750
  return {
6635
6751
  call: [module.getRef("indexOf"), ".call"],
6636
6752
  relational: true,
@@ -6639,18 +6755,35 @@ ${input.slice(result.pos)}
6639
6755
  special: true
6640
6756
  };
6641
6757
  });
6642
- var BinaryOpSymbol$34 = $T($S($N(CoffeeNotEnabled), $EXPECT($L75, fail, 'BinaryOpSymbol "is"'), NonIdContinue, __, $EXPECT($L73, fail, 'BinaryOpSymbol "not"'), NonIdContinue), function(value) {
6758
+ var BinaryOpSymbol$34 = $TS($S($N(CoffeeNotEnabled), $EXPECT($L76, fail, 'BinaryOpSymbol "is"'), NonIdContinue, __, $EXPECT($L74, fail, 'BinaryOpSymbol "not"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
6759
+ if (module.config.objectIs) {
6760
+ return {
6761
+ call: module.getRef("is"),
6762
+ relational: true,
6763
+ special: true,
6764
+ asConst: true,
6765
+ negated: true
6766
+ };
6767
+ }
6643
6768
  return "!==";
6644
6769
  });
6645
- var BinaryOpSymbol$35 = $T($S($EXPECT($L75, fail, 'BinaryOpSymbol "is"'), NonIdContinue), function(value) {
6770
+ var BinaryOpSymbol$35 = $TS($S($EXPECT($L76, fail, 'BinaryOpSymbol "is"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6771
+ if (module.config.objectIs) {
6772
+ return {
6773
+ call: module.getRef("is"),
6774
+ relational: true,
6775
+ special: true,
6776
+ asConst: true
6777
+ };
6778
+ }
6646
6779
  return "===";
6647
6780
  });
6648
- var BinaryOpSymbol$36 = $TS($S($EXPECT($L74, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6781
+ var BinaryOpSymbol$36 = $TS($S($EXPECT($L75, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6649
6782
  return $1;
6650
6783
  });
6651
- var BinaryOpSymbol$37 = $EXPECT($L76, fail, 'BinaryOpSymbol "&"');
6652
- var BinaryOpSymbol$38 = $EXPECT($L77, fail, 'BinaryOpSymbol "^"');
6653
- var BinaryOpSymbol$39 = $EXPECT($L78, fail, 'BinaryOpSymbol "|"');
6784
+ var BinaryOpSymbol$37 = $EXPECT($L77, fail, 'BinaryOpSymbol "&"');
6785
+ var BinaryOpSymbol$38 = $EXPECT($L78, fail, 'BinaryOpSymbol "^"');
6786
+ var BinaryOpSymbol$39 = $EXPECT($L79, fail, 'BinaryOpSymbol "|"');
6654
6787
  function BinaryOpSymbol(state) {
6655
6788
  let eventData;
6656
6789
  if (state.events) {
@@ -6821,7 +6954,7 @@ ${input.slice(result.pos)}
6821
6954
  return result;
6822
6955
  }
6823
6956
  }
6824
- var EmptyStatement$0 = $T($S($Q(TrailingComment), $Y($EXPECT($L79, fail, 'EmptyStatement ";"'))), function(value) {
6957
+ var EmptyStatement$0 = $T($S($Q(TrailingComment), $Y($EXPECT($L80, fail, 'EmptyStatement ";"'))), function(value) {
6825
6958
  return { "type": "EmptyStatement", "children": value[0] };
6826
6959
  });
6827
6960
  function EmptyStatement(state) {
@@ -6846,7 +6979,7 @@ ${input.slice(result.pos)}
6846
6979
  return result;
6847
6980
  }
6848
6981
  }
6849
- var BlockStatement$0 = $T($S(ExplicitBlock, $N($S(__, $EXPECT($L26, fail, 'BlockStatement "="')))), function(value) {
6982
+ var BlockStatement$0 = $T($S(ExplicitBlock, $N($S(__, $EXPECT($L27, fail, 'BlockStatement "="')))), function(value) {
6850
6983
  return value[0];
6851
6984
  });
6852
6985
  function BlockStatement(state) {
@@ -7781,7 +7914,7 @@ ${input.slice(result.pos)}
7781
7914
  return result;
7782
7915
  }
7783
7916
  }
7784
- var CoffeeForDeclaration$0 = $TS($S($E($S(__, $EXPECT($L80, fail, 'CoffeeForDeclaration "own"'), NonIdContinue)), ForBinding), function($skip, $loc, $0, $1, $2) {
7917
+ var CoffeeForDeclaration$0 = $TS($S($E($S(__, $EXPECT($L81, fail, 'CoffeeForDeclaration "own"'), NonIdContinue)), ForBinding), function($skip, $loc, $0, $1, $2) {
7785
7918
  var own = $1;
7786
7919
  var binding = $2;
7787
7920
  return {
@@ -8250,7 +8383,7 @@ ${input.slice(result.pos)}
8250
8383
  return result;
8251
8384
  }
8252
8385
  }
8253
- var NoExpressions$0 = $T($EXPECT($L14, fail, 'NoExpressions ""'), function(value) {
8386
+ var NoExpressions$0 = $T($EXPECT($L15, fail, 'NoExpressions ""'), function(value) {
8254
8387
  return [];
8255
8388
  });
8256
8389
  function NoExpressions(state) {
@@ -8276,7 +8409,7 @@ ${input.slice(result.pos)}
8276
8409
  }
8277
8410
  }
8278
8411
  var ImpliedColon$0 = $S(__, Colon);
8279
- var ImpliedColon$1 = $TV($EXPECT($L14, fail, 'ImpliedColon ""'), function($skip, $loc, $0, $1) {
8412
+ var ImpliedColon$1 = $TV($EXPECT($L15, fail, 'ImpliedColon ""'), function($skip, $loc, $0, $1) {
8280
8413
  return { $loc, token: ":" };
8281
8414
  });
8282
8415
  function ImpliedColon(state) {
@@ -8416,7 +8549,7 @@ ${input.slice(result.pos)}
8416
8549
  return result;
8417
8550
  }
8418
8551
  }
8419
- var Finally$0 = $S(__, $EXPECT($L81, fail, 'Finally "finally"'), NonIdContinue, BracedBlock);
8552
+ var Finally$0 = $S(__, $EXPECT($L82, fail, 'Finally "finally"'), NonIdContinue, BracedBlock);
8420
8553
  function Finally(state) {
8421
8554
  let eventData;
8422
8555
  if (state.events) {
@@ -8528,7 +8661,7 @@ ${input.slice(result.pos)}
8528
8661
  return result;
8529
8662
  }
8530
8663
  }
8531
- var SuppressIndentedApplication$0 = $TV($EXPECT($L14, fail, 'SuppressIndentedApplication ""'), function($skip, $loc, $0, $1) {
8664
+ var SuppressIndentedApplication$0 = $TV($EXPECT($L15, fail, 'SuppressIndentedApplication ""'), function($skip, $loc, $0, $1) {
8532
8665
  module.suppressIndentedApplication = true;
8533
8666
  });
8534
8667
  function SuppressIndentedApplication(state) {
@@ -8553,7 +8686,7 @@ ${input.slice(result.pos)}
8553
8686
  return result;
8554
8687
  }
8555
8688
  }
8556
- var IndentedApplicationAllowed$0 = $TV($EXPECT($L14, fail, 'IndentedApplicationAllowed ""'), function($skip, $loc, $0, $1) {
8689
+ var IndentedApplicationAllowed$0 = $TV($EXPECT($L15, fail, 'IndentedApplicationAllowed ""'), function($skip, $loc, $0, $1) {
8557
8690
  if (module.suppressIndentedApplication)
8558
8691
  return $skip;
8559
8692
  return;
@@ -8580,7 +8713,7 @@ ${input.slice(result.pos)}
8580
8713
  return result;
8581
8714
  }
8582
8715
  }
8583
- var SuppressTrailingMemberProperty$0 = $TV($EXPECT($L14, fail, 'SuppressTrailingMemberProperty ""'), function($skip, $loc, $0, $1) {
8716
+ var SuppressTrailingMemberProperty$0 = $TV($EXPECT($L15, fail, 'SuppressTrailingMemberProperty ""'), function($skip, $loc, $0, $1) {
8584
8717
  module.suppressTrailingMemberProperty.push(true);
8585
8718
  });
8586
8719
  function SuppressTrailingMemberProperty(state) {
@@ -8605,7 +8738,7 @@ ${input.slice(result.pos)}
8605
8738
  return result;
8606
8739
  }
8607
8740
  }
8608
- var TrailingMemberPropertyAllowed$0 = $TV($EXPECT($L14, fail, 'TrailingMemberPropertyAllowed ""'), function($skip, $loc, $0, $1) {
8741
+ var TrailingMemberPropertyAllowed$0 = $TV($EXPECT($L15, fail, 'TrailingMemberPropertyAllowed ""'), function($skip, $loc, $0, $1) {
8609
8742
  if (module.trailingMemberPropertySuppressed)
8610
8743
  return $skip;
8611
8744
  });
@@ -8654,13 +8787,13 @@ ${input.slice(result.pos)}
8654
8787
  return result;
8655
8788
  }
8656
8789
  }
8657
- var KeywordStatement$0 = $T($S($EXPECT($L82, fail, 'KeywordStatement "break"'), NonIdContinue), function(value) {
8790
+ var KeywordStatement$0 = $T($S($EXPECT($L83, fail, 'KeywordStatement "break"'), NonIdContinue), function(value) {
8658
8791
  return { "type": "BreakStatement", "children": value };
8659
8792
  });
8660
- var KeywordStatement$1 = $T($S($EXPECT($L83, fail, 'KeywordStatement "continue"'), NonIdContinue), function(value) {
8793
+ var KeywordStatement$1 = $T($S($EXPECT($L84, fail, 'KeywordStatement "continue"'), NonIdContinue), function(value) {
8661
8794
  return { "type": "ContinueStatement", "children": value };
8662
8795
  });
8663
- var KeywordStatement$2 = $T($S($EXPECT($L84, fail, 'KeywordStatement "debugger"'), NonIdContinue), function(value) {
8796
+ var KeywordStatement$2 = $T($S($EXPECT($L85, fail, 'KeywordStatement "debugger"'), NonIdContinue), function(value) {
8664
8797
  return { "type": "DebuggerStatement", "children": value };
8665
8798
  });
8666
8799
  var KeywordStatement$3 = $T($S(Return, $E(MaybeNestedExpression)), function(value) {
@@ -8691,7 +8824,7 @@ ${input.slice(result.pos)}
8691
8824
  return result;
8692
8825
  }
8693
8826
  }
8694
- var DebuggerExpression$0 = $TS($S($EXPECT($L84, fail, 'DebuggerExpression "debugger"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8827
+ var DebuggerExpression$0 = $TS($S($EXPECT($L85, fail, 'DebuggerExpression "debugger"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8695
8828
  return {
8696
8829
  type: "DebuggerExpression",
8697
8830
  children: ["(()=>{", $1, "})()"]
@@ -8819,7 +8952,7 @@ ${input.slice(result.pos)}
8819
8952
  return result;
8820
8953
  }
8821
8954
  }
8822
- var ImpliedImport$0 = $TV($EXPECT($L14, fail, 'ImpliedImport ""'), function($skip, $loc, $0, $1) {
8955
+ var ImpliedImport$0 = $TV($EXPECT($L15, fail, 'ImpliedImport ""'), function($skip, $loc, $0, $1) {
8823
8956
  return { $loc, token: "import " };
8824
8957
  });
8825
8958
  function ImpliedImport(state) {
@@ -8968,7 +9101,7 @@ ${input.slice(result.pos)}
8968
9101
  return result;
8969
9102
  }
8970
9103
  }
8971
- var ImportAssertion$0 = $S($E(_), $EXPECT($L85, fail, 'ImportAssertion "assert"'), NonIdContinue, $E(_), ObjectLiteral);
9104
+ var ImportAssertion$0 = $S($E(_), $EXPECT($L86, fail, 'ImportAssertion "assert"'), NonIdContinue, $E(_), ObjectLiteral);
8972
9105
  function ImportAssertion(state) {
8973
9106
  let eventData;
8974
9107
  if (state.events) {
@@ -9548,7 +9681,7 @@ ${input.slice(result.pos)}
9548
9681
  return result;
9549
9682
  }
9550
9683
  }
9551
- var ConstAssignment$0 = $TV($EXPECT($L86, fail, 'ConstAssignment ":="'), function($skip, $loc, $0, $1) {
9684
+ var ConstAssignment$0 = $TV($EXPECT($L87, fail, 'ConstAssignment ":="'), function($skip, $loc, $0, $1) {
9552
9685
  return { $loc, token: "=" };
9553
9686
  });
9554
9687
  function ConstAssignment(state) {
@@ -9573,7 +9706,7 @@ ${input.slice(result.pos)}
9573
9706
  return result;
9574
9707
  }
9575
9708
  }
9576
- var LetAssignment$0 = $TV($EXPECT($L87, fail, 'LetAssignment ".="'), function($skip, $loc, $0, $1) {
9709
+ var LetAssignment$0 = $TV($EXPECT($L88, fail, 'LetAssignment ".="'), function($skip, $loc, $0, $1) {
9577
9710
  return { $loc, token: "=" };
9578
9711
  });
9579
9712
  function LetAssignment(state) {
@@ -10223,7 +10356,7 @@ ${input.slice(result.pos)}
10223
10356
  }
10224
10357
  }
10225
10358
  var RegularExpressionLiteral$0 = HeregexLiteral;
10226
- var RegularExpressionLiteral$1 = $TV($TEXT($S($EXPECT($L50, fail, 'RegularExpressionLiteral "/"'), RegularExpressionBody, $EXPECT($L50, fail, 'RegularExpressionLiteral "/"'), RegularExpressionFlags)), function($skip, $loc, $0, $1) {
10359
+ var RegularExpressionLiteral$1 = $TV($TEXT($S($EXPECT($L51, fail, 'RegularExpressionLiteral "/"'), RegularExpressionBody, $EXPECT($L51, fail, 'RegularExpressionLiteral "/"'), RegularExpressionFlags)), function($skip, $loc, $0, $1) {
10227
10360
  return { $loc, token: $1 };
10228
10361
  });
10229
10362
  function RegularExpressionLiteral(state) {
@@ -10626,7 +10759,7 @@ ${input.slice(result.pos)}
10626
10759
  var ReservedWord$2 = $S(CoffeeForLoopsEnabled, $R$0($EXPECT($R34, fail, "ReservedWord /(?:by)(?!\\p{ID_Continue})/")));
10627
10760
  var ReservedWord$3 = $S(CoffeeOfEnabled, $R$0($EXPECT($R35, fail, "ReservedWord /(?:of)(?!\\p{ID_Continue})/")));
10628
10761
  var ReservedWord$4 = $S(CoffeeNotEnabled, $R$0($EXPECT($R36, fail, "ReservedWord /(?:not)(?!\\p{ID_Continue})/")));
10629
- var ReservedWord$5 = $S($EXPECT($L73, fail, 'ReservedWord "not"'), NonIdContinue, __, $EXPECT($L74, fail, 'ReservedWord "in"'), NonIdContinue);
10762
+ var ReservedWord$5 = $S($EXPECT($L74, fail, 'ReservedWord "not"'), NonIdContinue, __, $EXPECT($L75, fail, 'ReservedWord "in"'), NonIdContinue);
10630
10763
  var ReservedWord$6 = $R$0($EXPECT($R37, fail, "ReservedWord /(?:and|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|false|finally|for|function|if|import|in|instanceof|interface|is|let|loop|new|null|or|private|protected|public|return|static|super|switch|this|throw|true|try|typeof|unless|until|var|void|while|with|yield)(?!\\p{ID_Continue})/"));
10631
10764
  function ReservedWord(state) {
10632
10765
  let eventData;
@@ -10747,7 +10880,7 @@ ${input.slice(result.pos)}
10747
10880
  return result;
10748
10881
  }
10749
10882
  }
10750
- var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L88, fail, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L89, fail, 'JSMultiLineComment "*/"')), $EXPECT($R39, fail, "JSMultiLineComment /./"))), $EXPECT($L89, fail, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
10883
+ var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L89, fail, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L90, fail, 'JSMultiLineComment "*/"')), $EXPECT($R39, fail, "JSMultiLineComment /./"))), $EXPECT($L90, fail, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
10751
10884
  return { $loc, token: $1 };
10752
10885
  });
10753
10886
  function JSMultiLineComment(state) {
@@ -10797,7 +10930,7 @@ ${input.slice(result.pos)}
10797
10930
  return result;
10798
10931
  }
10799
10932
  }
10800
- var CoffeeMultiLineComment$0 = $TS($S(CoffeeHereCommentStart, $TEXT($Q($S($N($C(CoffeeHereCommentStart, $EXPECT($L89, fail, 'CoffeeMultiLineComment "*/"'))), $EXPECT($R39, fail, "CoffeeMultiLineComment /./")))), CoffeeHereCommentStart), function($skip, $loc, $0, $1, $2, $3) {
10933
+ var CoffeeMultiLineComment$0 = $TS($S(CoffeeHereCommentStart, $TEXT($Q($S($N($C(CoffeeHereCommentStart, $EXPECT($L90, fail, 'CoffeeMultiLineComment "*/"'))), $EXPECT($R39, fail, "CoffeeMultiLineComment /./")))), CoffeeHereCommentStart), function($skip, $loc, $0, $1, $2, $3) {
10801
10934
  return { $loc, token: `/*${$2}*/` };
10802
10935
  });
10803
10936
  function CoffeeMultiLineComment(state) {
@@ -10845,7 +10978,7 @@ ${input.slice(result.pos)}
10845
10978
  return result;
10846
10979
  }
10847
10980
  }
10848
- var InlineComment$0 = $TV($TEXT($S($EXPECT($L88, fail, 'InlineComment "/*"'), $TEXT($Q($S($N($EXPECT($L89, fail, 'InlineComment "*/"')), $EXPECT($R42, fail, "InlineComment /[^\\r\\n]/")))), $EXPECT($L89, fail, 'InlineComment "*/"'))), function($skip, $loc, $0, $1) {
10981
+ var InlineComment$0 = $TV($TEXT($S($EXPECT($L89, fail, 'InlineComment "/*"'), $TEXT($Q($S($N($EXPECT($L90, fail, 'InlineComment "*/"')), $EXPECT($R42, fail, "InlineComment /[^\\r\\n]/")))), $EXPECT($L90, fail, 'InlineComment "*/"'))), function($skip, $loc, $0, $1) {
10849
10982
  return { $loc, token: $1 };
10850
10983
  });
10851
10984
  function InlineComment(state) {
@@ -10944,7 +11077,7 @@ ${input.slice(result.pos)}
10944
11077
  var NonNewlineWhitespace$0 = $TR($EXPECT($R43, fail, "NonNewlineWhitespace /[ \\t]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
10945
11078
  return { $loc, token: $0 };
10946
11079
  });
10947
- var NonNewlineWhitespace$1 = $T($S(CoffeeLineContinuationEnabled, $EXPECT($L90, fail, 'NonNewlineWhitespace "\\\\\\\\"'), EOL), function(value) {
11080
+ var NonNewlineWhitespace$1 = $T($S(CoffeeLineContinuationEnabled, $EXPECT($L91, fail, 'NonNewlineWhitespace "\\\\\\\\"'), EOL), function(value) {
10948
11081
  return "";
10949
11082
  });
10950
11083
  function NonNewlineWhitespace(state) {
@@ -11072,7 +11205,8 @@ ${input.slice(result.pos)}
11072
11205
  }
11073
11206
  }
11074
11207
  var StatementDelimiter$0 = SemicolonDelimiter;
11075
- var StatementDelimiter$1 = $Y(EOS);
11208
+ var StatementDelimiter$1 = $S($Y($S(Samedent, $C($EXPECT($L92, fail, 'StatementDelimiter "("'), $EXPECT($L93, fail, 'StatementDelimiter "["'), $EXPECT($L94, fail, 'StatementDelimiter "`"'), $EXPECT($L54, fail, 'StatementDelimiter "+"'), $EXPECT($L55, fail, 'StatementDelimiter "-"'), $EXPECT($L50, fail, 'StatementDelimiter "*"'), $EXPECT($L51, fail, 'StatementDelimiter "/"'), ObjectLiteral))), InsertSemicolon);
11209
+ var StatementDelimiter$2 = $Y(EOS);
11076
11210
  function StatementDelimiter(state) {
11077
11211
  let eventData;
11078
11212
  if (state.events) {
@@ -11084,12 +11218,12 @@ ${input.slice(result.pos)}
11084
11218
  }
11085
11219
  }
11086
11220
  if (state.tokenize) {
11087
- const result = $TOKEN("StatementDelimiter", state, StatementDelimiter$0(state) || StatementDelimiter$1(state));
11221
+ const result = $TOKEN("StatementDelimiter", state, StatementDelimiter$0(state) || StatementDelimiter$1(state) || StatementDelimiter$2(state));
11088
11222
  if (state.events)
11089
11223
  state.events.exit?.("StatementDelimiter", state, result, eventData);
11090
11224
  return result;
11091
11225
  } else {
11092
- const result = StatementDelimiter$0(state) || StatementDelimiter$1(state);
11226
+ const result = StatementDelimiter$0(state) || StatementDelimiter$1(state) || StatementDelimiter$2(state);
11093
11227
  if (state.events)
11094
11228
  state.events.exit?.("StatementDelimiter", state, result, eventData);
11095
11229
  return result;
@@ -11146,7 +11280,7 @@ ${input.slice(result.pos)}
11146
11280
  return result;
11147
11281
  }
11148
11282
  }
11149
- var Loc$0 = $TV($EXPECT($L14, fail, 'Loc ""'), function($skip, $loc, $0, $1) {
11283
+ var Loc$0 = $TV($EXPECT($L15, fail, 'Loc ""'), function($skip, $loc, $0, $1) {
11150
11284
  return { $loc, token: "" };
11151
11285
  });
11152
11286
  function Loc(state) {
@@ -11171,7 +11305,7 @@ ${input.slice(result.pos)}
11171
11305
  return result;
11172
11306
  }
11173
11307
  }
11174
- var Abstract$0 = $TV($TEXT($S($EXPECT($L91, fail, 'Abstract "abstract"'), NonIdContinue, $E($EXPECT($L6, fail, 'Abstract " "')))), function($skip, $loc, $0, $1) {
11308
+ var Abstract$0 = $TV($TEXT($S($EXPECT($L95, fail, 'Abstract "abstract"'), NonIdContinue, $E($EXPECT($L6, fail, 'Abstract " "')))), function($skip, $loc, $0, $1) {
11175
11309
  return { $loc, token: $1, ts: true };
11176
11310
  });
11177
11311
  function Abstract(state) {
@@ -11196,7 +11330,7 @@ ${input.slice(result.pos)}
11196
11330
  return result;
11197
11331
  }
11198
11332
  }
11199
- var Ampersand$0 = $TV($EXPECT($L76, fail, 'Ampersand "&"'), function($skip, $loc, $0, $1) {
11333
+ var Ampersand$0 = $TV($EXPECT($L77, fail, 'Ampersand "&"'), function($skip, $loc, $0, $1) {
11200
11334
  return { $loc, token: $1 };
11201
11335
  });
11202
11336
  function Ampersand(state) {
@@ -11221,7 +11355,7 @@ ${input.slice(result.pos)}
11221
11355
  return result;
11222
11356
  }
11223
11357
  }
11224
- var As$0 = $TS($S($EXPECT($L92, fail, 'As "as"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11358
+ var As$0 = $TS($S($EXPECT($L96, fail, 'As "as"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11225
11359
  return { $loc, token: $1 };
11226
11360
  });
11227
11361
  function As(state) {
@@ -11246,7 +11380,7 @@ ${input.slice(result.pos)}
11246
11380
  return result;
11247
11381
  }
11248
11382
  }
11249
- var At$0 = $TV($EXPECT($L93, fail, 'At "@"'), function($skip, $loc, $0, $1) {
11383
+ var At$0 = $TV($EXPECT($L97, fail, 'At "@"'), function($skip, $loc, $0, $1) {
11250
11384
  return { $loc, token: $1 };
11251
11385
  });
11252
11386
  function At(state) {
@@ -11271,7 +11405,7 @@ ${input.slice(result.pos)}
11271
11405
  return result;
11272
11406
  }
11273
11407
  }
11274
- var AtAt$0 = $TV($EXPECT($L94, fail, 'AtAt "@@"'), function($skip, $loc, $0, $1) {
11408
+ var AtAt$0 = $TV($EXPECT($L98, fail, 'AtAt "@@"'), function($skip, $loc, $0, $1) {
11275
11409
  return { $loc, token: "@" };
11276
11410
  });
11277
11411
  function AtAt(state) {
@@ -11296,7 +11430,7 @@ ${input.slice(result.pos)}
11296
11430
  return result;
11297
11431
  }
11298
11432
  }
11299
- var Async$0 = $TS($S($EXPECT($L95, fail, 'Async "async"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11433
+ var Async$0 = $TS($S($EXPECT($L99, fail, 'Async "async"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11300
11434
  return { $loc, token: $1, type: "Async" };
11301
11435
  });
11302
11436
  function Async(state) {
@@ -11321,7 +11455,7 @@ ${input.slice(result.pos)}
11321
11455
  return result;
11322
11456
  }
11323
11457
  }
11324
- var Await$0 = $TS($S($EXPECT($L96, fail, 'Await "await"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11458
+ var Await$0 = $TS($S($EXPECT($L100, fail, 'Await "await"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11325
11459
  return { $loc, token: $1 };
11326
11460
  });
11327
11461
  function Await(state) {
@@ -11346,7 +11480,7 @@ ${input.slice(result.pos)}
11346
11480
  return result;
11347
11481
  }
11348
11482
  }
11349
- var Backtick$0 = $TV($EXPECT($L97, fail, 'Backtick "`"'), function($skip, $loc, $0, $1) {
11483
+ var Backtick$0 = $TV($EXPECT($L94, fail, 'Backtick "`"'), function($skip, $loc, $0, $1) {
11350
11484
  return { $loc, token: $1 };
11351
11485
  });
11352
11486
  function Backtick(state) {
@@ -11371,7 +11505,7 @@ ${input.slice(result.pos)}
11371
11505
  return result;
11372
11506
  }
11373
11507
  }
11374
- var By$0 = $TS($S($EXPECT($L98, fail, 'By "by"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11508
+ var By$0 = $TS($S($EXPECT($L101, fail, 'By "by"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11375
11509
  return { $loc, token: $1 };
11376
11510
  });
11377
11511
  function By(state) {
@@ -11396,7 +11530,7 @@ ${input.slice(result.pos)}
11396
11530
  return result;
11397
11531
  }
11398
11532
  }
11399
- var Case$0 = $TS($S($EXPECT($L99, fail, 'Case "case"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11533
+ var Case$0 = $TS($S($EXPECT($L102, fail, 'Case "case"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11400
11534
  return { $loc, token: $1 };
11401
11535
  });
11402
11536
  function Case(state) {
@@ -11421,7 +11555,7 @@ ${input.slice(result.pos)}
11421
11555
  return result;
11422
11556
  }
11423
11557
  }
11424
- var Catch$0 = $TS($S($EXPECT($L100, fail, 'Catch "catch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11558
+ var Catch$0 = $TS($S($EXPECT($L103, fail, 'Catch "catch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11425
11559
  return { $loc, token: $1 };
11426
11560
  });
11427
11561
  function Catch(state) {
@@ -11446,7 +11580,7 @@ ${input.slice(result.pos)}
11446
11580
  return result;
11447
11581
  }
11448
11582
  }
11449
- var Class$0 = $TS($S($EXPECT($L101, fail, 'Class "class"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11583
+ var Class$0 = $TS($S($EXPECT($L104, fail, 'Class "class"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11450
11584
  return { $loc, token: $1 };
11451
11585
  });
11452
11586
  function Class(state) {
@@ -11471,7 +11605,7 @@ ${input.slice(result.pos)}
11471
11605
  return result;
11472
11606
  }
11473
11607
  }
11474
- var CloseBrace$0 = $TV($EXPECT($L17, fail, 'CloseBrace "}"'), function($skip, $loc, $0, $1) {
11608
+ var CloseBrace$0 = $TV($EXPECT($L18, fail, 'CloseBrace "}"'), function($skip, $loc, $0, $1) {
11475
11609
  return { $loc, token: $1 };
11476
11610
  });
11477
11611
  function CloseBrace(state) {
@@ -11496,7 +11630,7 @@ ${input.slice(result.pos)}
11496
11630
  return result;
11497
11631
  }
11498
11632
  }
11499
- var CloseBracket$0 = $TV($EXPECT($L28, fail, 'CloseBracket "]"'), function($skip, $loc, $0, $1) {
11633
+ var CloseBracket$0 = $TV($EXPECT($L29, fail, 'CloseBracket "]"'), function($skip, $loc, $0, $1) {
11500
11634
  return { $loc, token: $1 };
11501
11635
  });
11502
11636
  function CloseBracket(state) {
@@ -11521,7 +11655,7 @@ ${input.slice(result.pos)}
11521
11655
  return result;
11522
11656
  }
11523
11657
  }
11524
- var CloseParen$0 = $TV($EXPECT($L15, fail, 'CloseParen ")"'), function($skip, $loc, $0, $1) {
11658
+ var CloseParen$0 = $TV($EXPECT($L16, fail, 'CloseParen ")"'), function($skip, $loc, $0, $1) {
11525
11659
  return { $loc, token: $1 };
11526
11660
  });
11527
11661
  function CloseParen(state) {
@@ -11546,7 +11680,7 @@ ${input.slice(result.pos)}
11546
11680
  return result;
11547
11681
  }
11548
11682
  }
11549
- var CoffeeSubstitutionStart$0 = $TV($EXPECT($L102, fail, 'CoffeeSubstitutionStart "#{"'), function($skip, $loc, $0, $1) {
11683
+ var CoffeeSubstitutionStart$0 = $TV($EXPECT($L105, fail, 'CoffeeSubstitutionStart "#{"'), function($skip, $loc, $0, $1) {
11550
11684
  return { $loc, token: "${" };
11551
11685
  });
11552
11686
  function CoffeeSubstitutionStart(state) {
@@ -11571,7 +11705,7 @@ ${input.slice(result.pos)}
11571
11705
  return result;
11572
11706
  }
11573
11707
  }
11574
- var Colon$0 = $TV($EXPECT($L29, fail, 'Colon ":"'), function($skip, $loc, $0, $1) {
11708
+ var Colon$0 = $TV($EXPECT($L30, fail, 'Colon ":"'), function($skip, $loc, $0, $1) {
11575
11709
  return { $loc, token: $1 };
11576
11710
  });
11577
11711
  function Colon(state) {
@@ -11596,7 +11730,7 @@ ${input.slice(result.pos)}
11596
11730
  return result;
11597
11731
  }
11598
11732
  }
11599
- var ConstructorShorthand$0 = $TV($EXPECT($L93, fail, 'ConstructorShorthand "@"'), function($skip, $loc, $0, $1) {
11733
+ var ConstructorShorthand$0 = $TV($EXPECT($L97, fail, 'ConstructorShorthand "@"'), function($skip, $loc, $0, $1) {
11600
11734
  return { $loc, token: "constructor" };
11601
11735
  });
11602
11736
  function ConstructorShorthand(state) {
@@ -11621,7 +11755,7 @@ ${input.slice(result.pos)}
11621
11755
  return result;
11622
11756
  }
11623
11757
  }
11624
- var Declare$0 = $TS($S($EXPECT($L103, fail, 'Declare "declare"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11758
+ var Declare$0 = $TS($S($EXPECT($L106, fail, 'Declare "declare"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11625
11759
  return { $loc, token: $1 };
11626
11760
  });
11627
11761
  function Declare(state) {
@@ -11646,7 +11780,7 @@ ${input.slice(result.pos)}
11646
11780
  return result;
11647
11781
  }
11648
11782
  }
11649
- var Default$0 = $TS($S($EXPECT($L104, fail, 'Default "default"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11783
+ var Default$0 = $TS($S($EXPECT($L107, fail, 'Default "default"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11650
11784
  return { $loc, token: $1 };
11651
11785
  });
11652
11786
  function Default(state) {
@@ -11671,7 +11805,7 @@ ${input.slice(result.pos)}
11671
11805
  return result;
11672
11806
  }
11673
11807
  }
11674
- var Delete$0 = $TS($S($EXPECT($L105, fail, 'Delete "delete"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11808
+ var Delete$0 = $TS($S($EXPECT($L108, fail, 'Delete "delete"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11675
11809
  return { $loc, token: $1 };
11676
11810
  });
11677
11811
  function Delete(state) {
@@ -11696,7 +11830,7 @@ ${input.slice(result.pos)}
11696
11830
  return result;
11697
11831
  }
11698
11832
  }
11699
- var Do$0 = $TS($S($EXPECT($L106, fail, 'Do "do"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11833
+ var Do$0 = $TS($S($EXPECT($L109, fail, 'Do "do"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11700
11834
  return { $loc, token: $1 };
11701
11835
  });
11702
11836
  function Do(state) {
@@ -11746,7 +11880,7 @@ ${input.slice(result.pos)}
11746
11880
  return result;
11747
11881
  }
11748
11882
  }
11749
- var DotDot$0 = $TV($EXPECT($L107, fail, 'DotDot ".."'), function($skip, $loc, $0, $1) {
11883
+ var DotDot$0 = $TV($EXPECT($L110, fail, 'DotDot ".."'), function($skip, $loc, $0, $1) {
11750
11884
  return { $loc, token: $1 };
11751
11885
  });
11752
11886
  function DotDot(state) {
@@ -11771,7 +11905,7 @@ ${input.slice(result.pos)}
11771
11905
  return result;
11772
11906
  }
11773
11907
  }
11774
- var DotDotDot$0 = $TV($EXPECT($L108, fail, 'DotDotDot "..."'), function($skip, $loc, $0, $1) {
11908
+ var DotDotDot$0 = $TV($EXPECT($L111, fail, 'DotDotDot "..."'), function($skip, $loc, $0, $1) {
11775
11909
  return { $loc, token: $1 };
11776
11910
  });
11777
11911
  function DotDotDot(state) {
@@ -11796,7 +11930,7 @@ ${input.slice(result.pos)}
11796
11930
  return result;
11797
11931
  }
11798
11932
  }
11799
- var DoubleColon$0 = $TV($EXPECT($L109, fail, 'DoubleColon "::"'), function($skip, $loc, $0, $1) {
11933
+ var DoubleColon$0 = $TV($EXPECT($L112, fail, 'DoubleColon "::"'), function($skip, $loc, $0, $1) {
11800
11934
  return { $loc, token: $1 };
11801
11935
  });
11802
11936
  function DoubleColon(state) {
@@ -11821,7 +11955,7 @@ ${input.slice(result.pos)}
11821
11955
  return result;
11822
11956
  }
11823
11957
  }
11824
- var DoubleQuote$0 = $TV($EXPECT($L110, fail, 'DoubleQuote "\\\\\\""'), function($skip, $loc, $0, $1) {
11958
+ var DoubleQuote$0 = $TV($EXPECT($L113, fail, 'DoubleQuote "\\\\\\""'), function($skip, $loc, $0, $1) {
11825
11959
  return { $loc, token: $1 };
11826
11960
  });
11827
11961
  function DoubleQuote(state) {
@@ -11846,7 +11980,7 @@ ${input.slice(result.pos)}
11846
11980
  return result;
11847
11981
  }
11848
11982
  }
11849
- var Else$0 = $TS($S($EXPECT($L111, fail, 'Else "else"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11983
+ var Else$0 = $TS($S($EXPECT($L114, fail, 'Else "else"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11850
11984
  return { $loc, token: $1 };
11851
11985
  });
11852
11986
  function Else(state) {
@@ -11871,7 +12005,7 @@ ${input.slice(result.pos)}
11871
12005
  return result;
11872
12006
  }
11873
12007
  }
11874
- var Equals$0 = $TV($EXPECT($L26, fail, 'Equals "="'), function($skip, $loc, $0, $1) {
12008
+ var Equals$0 = $TV($EXPECT($L27, fail, 'Equals "="'), function($skip, $loc, $0, $1) {
11875
12009
  return { $loc, token: $1 };
11876
12010
  });
11877
12011
  function Equals(state) {
@@ -11896,7 +12030,7 @@ ${input.slice(result.pos)}
11896
12030
  return result;
11897
12031
  }
11898
12032
  }
11899
- var Export$0 = $TS($S($EXPECT($L112, fail, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12033
+ var Export$0 = $TS($S($EXPECT($L115, fail, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11900
12034
  return { $loc, token: $1 };
11901
12035
  });
11902
12036
  function Export(state) {
@@ -11921,7 +12055,7 @@ ${input.slice(result.pos)}
11921
12055
  return result;
11922
12056
  }
11923
12057
  }
11924
- var Extends$0 = $TS($S($EXPECT($L113, fail, 'Extends "extends"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12058
+ var Extends$0 = $TS($S($EXPECT($L116, fail, 'Extends "extends"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11925
12059
  return { $loc, token: $1 };
11926
12060
  });
11927
12061
  function Extends(state) {
@@ -11946,7 +12080,7 @@ ${input.slice(result.pos)}
11946
12080
  return result;
11947
12081
  }
11948
12082
  }
11949
- var For$0 = $TS($S($EXPECT($L114, fail, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12083
+ var For$0 = $TS($S($EXPECT($L117, fail, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11950
12084
  return { $loc, token: $1 };
11951
12085
  });
11952
12086
  function For(state) {
@@ -11971,7 +12105,7 @@ ${input.slice(result.pos)}
11971
12105
  return result;
11972
12106
  }
11973
12107
  }
11974
- var From$0 = $TS($S($EXPECT($L115, fail, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12108
+ var From$0 = $TS($S($EXPECT($L118, fail, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11975
12109
  return { $loc, token: $1 };
11976
12110
  });
11977
12111
  function From(state) {
@@ -11996,7 +12130,7 @@ ${input.slice(result.pos)}
11996
12130
  return result;
11997
12131
  }
11998
12132
  }
11999
- var Function$0 = $TS($S($EXPECT($L116, fail, 'Function "function"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12133
+ var Function$0 = $TS($S($EXPECT($L119, fail, 'Function "function"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12000
12134
  return { $loc, token: $1 };
12001
12135
  });
12002
12136
  function Function(state) {
@@ -12021,7 +12155,7 @@ ${input.slice(result.pos)}
12021
12155
  return result;
12022
12156
  }
12023
12157
  }
12024
- var GetOrSet$0 = $TS($S($C($EXPECT($L117, fail, 'GetOrSet "get"'), $EXPECT($L118, fail, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12158
+ var GetOrSet$0 = $TS($S($C($EXPECT($L120, fail, 'GetOrSet "get"'), $EXPECT($L121, fail, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12025
12159
  return { $loc, token: $1, type: "GetOrSet" };
12026
12160
  });
12027
12161
  function GetOrSet(state) {
@@ -12046,7 +12180,7 @@ ${input.slice(result.pos)}
12046
12180
  return result;
12047
12181
  }
12048
12182
  }
12049
- var If$0 = $TV($TEXT($S($EXPECT($L119, fail, 'If "if"'), NonIdContinue, $E($EXPECT($L6, fail, 'If " "')))), function($skip, $loc, $0, $1) {
12183
+ var If$0 = $TV($TEXT($S($EXPECT($L122, fail, 'If "if"'), NonIdContinue, $E($EXPECT($L6, fail, 'If " "')))), function($skip, $loc, $0, $1) {
12050
12184
  return { $loc, token: $1 };
12051
12185
  });
12052
12186
  function If(state) {
@@ -12071,7 +12205,7 @@ ${input.slice(result.pos)}
12071
12205
  return result;
12072
12206
  }
12073
12207
  }
12074
- var Import$0 = $TS($S($EXPECT($L10, fail, 'Import "import"'), $Y($EXPECT($R45, fail, "Import /\\s/"))), function($skip, $loc, $0, $1, $2) {
12208
+ var Import$0 = $TS($S($EXPECT($L11, fail, 'Import "import"'), $Y($EXPECT($R45, fail, "Import /\\s/"))), function($skip, $loc, $0, $1, $2) {
12075
12209
  return { $loc, token: $1 };
12076
12210
  });
12077
12211
  function Import(state) {
@@ -12096,7 +12230,7 @@ ${input.slice(result.pos)}
12096
12230
  return result;
12097
12231
  }
12098
12232
  }
12099
- var In$0 = $TS($S($EXPECT($L74, fail, 'In "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12233
+ var In$0 = $TS($S($EXPECT($L75, fail, 'In "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12100
12234
  return { $loc, token: $1 };
12101
12235
  });
12102
12236
  function In(state) {
@@ -12121,7 +12255,7 @@ ${input.slice(result.pos)}
12121
12255
  return result;
12122
12256
  }
12123
12257
  }
12124
- var LetOrConst$0 = $TS($S($C($EXPECT($L120, fail, 'LetOrConst "let"'), $EXPECT($L121, fail, 'LetOrConst "const"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12258
+ var LetOrConst$0 = $TS($S($C($EXPECT($L123, fail, 'LetOrConst "let"'), $EXPECT($L124, fail, 'LetOrConst "const"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12125
12259
  return { $loc, token: $1 };
12126
12260
  });
12127
12261
  function LetOrConst(state) {
@@ -12146,7 +12280,7 @@ ${input.slice(result.pos)}
12146
12280
  return result;
12147
12281
  }
12148
12282
  }
12149
- var Loop$0 = $TS($S($EXPECT($L122, fail, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12283
+ var Loop$0 = $TS($S($EXPECT($L125, fail, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12150
12284
  return { $loc, token: "while(true)" };
12151
12285
  });
12152
12286
  function Loop(state) {
@@ -12171,7 +12305,7 @@ ${input.slice(result.pos)}
12171
12305
  return result;
12172
12306
  }
12173
12307
  }
12174
- var New$0 = $TS($S($EXPECT($L123, fail, 'New "new"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12308
+ var New$0 = $TS($S($EXPECT($L126, fail, 'New "new"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12175
12309
  return { $loc, token: $1 };
12176
12310
  });
12177
12311
  function New(state) {
@@ -12196,7 +12330,7 @@ ${input.slice(result.pos)}
12196
12330
  return result;
12197
12331
  }
12198
12332
  }
12199
- var Not$0 = $TS($S(CoffeeNotEnabled, $EXPECT($L73, fail, 'Not "not"'), NonIdContinue, $E($EXPECT($L6, fail, 'Not " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
12333
+ var Not$0 = $TS($S(CoffeeNotEnabled, $EXPECT($L74, fail, 'Not "not"'), NonIdContinue, $E($EXPECT($L6, fail, 'Not " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
12200
12334
  return { $loc, token: "!" };
12201
12335
  });
12202
12336
  function Not(state) {
@@ -12221,7 +12355,7 @@ ${input.slice(result.pos)}
12221
12355
  return result;
12222
12356
  }
12223
12357
  }
12224
- var Of$0 = $TS($S($EXPECT($L68, fail, 'Of "of"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12358
+ var Of$0 = $TS($S($EXPECT($L69, fail, 'Of "of"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12225
12359
  return { $loc, token: $1 };
12226
12360
  });
12227
12361
  function Of(state) {
@@ -12246,7 +12380,7 @@ ${input.slice(result.pos)}
12246
12380
  return result;
12247
12381
  }
12248
12382
  }
12249
- var OpenAngleBracket$0 = $TV($EXPECT($L124, fail, 'OpenAngleBracket "<"'), function($skip, $loc, $0, $1) {
12383
+ var OpenAngleBracket$0 = $TV($EXPECT($L127, fail, 'OpenAngleBracket "<"'), function($skip, $loc, $0, $1) {
12250
12384
  return { $loc, token: $1 };
12251
12385
  });
12252
12386
  function OpenAngleBracket(state) {
@@ -12271,7 +12405,7 @@ ${input.slice(result.pos)}
12271
12405
  return result;
12272
12406
  }
12273
12407
  }
12274
- var OpenBrace$0 = $TV($EXPECT($L125, fail, 'OpenBrace "{"'), function($skip, $loc, $0, $1) {
12408
+ var OpenBrace$0 = $TV($EXPECT($L128, fail, 'OpenBrace "{"'), function($skip, $loc, $0, $1) {
12275
12409
  return { $loc, token: $1 };
12276
12410
  });
12277
12411
  function OpenBrace(state) {
@@ -12296,7 +12430,7 @@ ${input.slice(result.pos)}
12296
12430
  return result;
12297
12431
  }
12298
12432
  }
12299
- var OpenBracket$0 = $TV($EXPECT($L126, fail, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
12433
+ var OpenBracket$0 = $TV($EXPECT($L93, fail, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
12300
12434
  return { $loc, token: $1 };
12301
12435
  });
12302
12436
  function OpenBracket(state) {
@@ -12321,7 +12455,7 @@ ${input.slice(result.pos)}
12321
12455
  return result;
12322
12456
  }
12323
12457
  }
12324
- var OpenParen$0 = $TV($EXPECT($L127, fail, 'OpenParen "("'), function($skip, $loc, $0, $1) {
12458
+ var OpenParen$0 = $TV($EXPECT($L92, fail, 'OpenParen "("'), function($skip, $loc, $0, $1) {
12325
12459
  return { $loc, token: $1 };
12326
12460
  });
12327
12461
  function OpenParen(state) {
@@ -12346,7 +12480,7 @@ ${input.slice(result.pos)}
12346
12480
  return result;
12347
12481
  }
12348
12482
  }
12349
- var Public$0 = $TS($S($EXPECT($L128, fail, 'Public "public"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12483
+ var Public$0 = $TS($S($EXPECT($L129, fail, 'Public "public"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12350
12484
  return { $loc, token: $1 };
12351
12485
  });
12352
12486
  function Public(state) {
@@ -12371,7 +12505,7 @@ ${input.slice(result.pos)}
12371
12505
  return result;
12372
12506
  }
12373
12507
  }
12374
- var Private$0 = $TS($S($EXPECT($L129, fail, 'Private "private"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12508
+ var Private$0 = $TS($S($EXPECT($L130, fail, 'Private "private"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12375
12509
  return { $loc, token: $1 };
12376
12510
  });
12377
12511
  function Private(state) {
@@ -12396,7 +12530,7 @@ ${input.slice(result.pos)}
12396
12530
  return result;
12397
12531
  }
12398
12532
  }
12399
- var Protected$0 = $TS($S($EXPECT($L130, fail, 'Protected "protected"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12533
+ var Protected$0 = $TS($S($EXPECT($L131, fail, 'Protected "protected"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12400
12534
  return { $loc, token: $1 };
12401
12535
  });
12402
12536
  function Protected(state) {
@@ -12421,7 +12555,7 @@ ${input.slice(result.pos)}
12421
12555
  return result;
12422
12556
  }
12423
12557
  }
12424
- var Pipe$0 = $TV($EXPECT($L131, fail, 'Pipe "|>"'), function($skip, $loc, $0, $1) {
12558
+ var Pipe$0 = $TV($EXPECT($L132, fail, 'Pipe "|>"'), function($skip, $loc, $0, $1) {
12425
12559
  return { $loc, token: $1 };
12426
12560
  });
12427
12561
  function Pipe(state) {
@@ -12471,7 +12605,7 @@ ${input.slice(result.pos)}
12471
12605
  return result;
12472
12606
  }
12473
12607
  }
12474
- var Readonly$0 = $TS($S($EXPECT($L132, fail, 'Readonly "readonly"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12608
+ var Readonly$0 = $TS($S($EXPECT($L133, fail, 'Readonly "readonly"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12475
12609
  return { $loc, token: $1, ts: true };
12476
12610
  });
12477
12611
  function Readonly(state) {
@@ -12496,7 +12630,7 @@ ${input.slice(result.pos)}
12496
12630
  return result;
12497
12631
  }
12498
12632
  }
12499
- var Return$0 = $TS($S($EXPECT($L133, fail, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12633
+ var Return$0 = $TS($S($EXPECT($L134, fail, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12500
12634
  return { $loc, token: $1 };
12501
12635
  });
12502
12636
  function Return(state) {
@@ -12521,7 +12655,7 @@ ${input.slice(result.pos)}
12521
12655
  return result;
12522
12656
  }
12523
12657
  }
12524
- var Satisfies$0 = $TS($S($EXPECT($L134, fail, 'Satisfies "satisfies"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12658
+ var Satisfies$0 = $TS($S($EXPECT($L135, fail, 'Satisfies "satisfies"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12525
12659
  return { $loc, token: $1 };
12526
12660
  });
12527
12661
  function Satisfies(state) {
@@ -12546,7 +12680,7 @@ ${input.slice(result.pos)}
12546
12680
  return result;
12547
12681
  }
12548
12682
  }
12549
- var Semicolon$0 = $TV($EXPECT($L79, fail, 'Semicolon ";"'), function($skip, $loc, $0, $1) {
12683
+ var Semicolon$0 = $TV($EXPECT($L80, fail, 'Semicolon ";"'), function($skip, $loc, $0, $1) {
12550
12684
  return { $loc, token: $1 };
12551
12685
  });
12552
12686
  function Semicolon(state) {
@@ -12571,7 +12705,7 @@ ${input.slice(result.pos)}
12571
12705
  return result;
12572
12706
  }
12573
12707
  }
12574
- var SingleQuote$0 = $TV($EXPECT($L135, fail, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
12708
+ var SingleQuote$0 = $TV($EXPECT($L136, fail, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
12575
12709
  return { $loc, token: $1 };
12576
12710
  });
12577
12711
  function SingleQuote(state) {
@@ -12596,7 +12730,7 @@ ${input.slice(result.pos)}
12596
12730
  return result;
12597
12731
  }
12598
12732
  }
12599
- var Star$0 = $TV($EXPECT($L49, fail, 'Star "*"'), function($skip, $loc, $0, $1) {
12733
+ var Star$0 = $TV($EXPECT($L50, fail, 'Star "*"'), function($skip, $loc, $0, $1) {
12600
12734
  return { $loc, token: $1 };
12601
12735
  });
12602
12736
  function Star(state) {
@@ -12621,10 +12755,10 @@ ${input.slice(result.pos)}
12621
12755
  return result;
12622
12756
  }
12623
12757
  }
12624
- var Static$0 = $TS($S($EXPECT($L136, fail, 'Static "static"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12758
+ var Static$0 = $TS($S($EXPECT($L137, fail, 'Static "static"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12625
12759
  return { $loc, token: $1 };
12626
12760
  });
12627
- var Static$1 = $TS($S($EXPECT($L93, fail, 'Static "@"'), $N($C($EXPECT($L127, fail, 'Static "("'), $EXPECT($L93, fail, 'Static "@"')))), function($skip, $loc, $0, $1, $2) {
12761
+ var Static$1 = $TS($S($EXPECT($L97, fail, 'Static "@"'), $N($C($EXPECT($L92, fail, 'Static "("'), $EXPECT($L97, fail, 'Static "@"')))), function($skip, $loc, $0, $1, $2) {
12628
12762
  return { $loc, token: "static " };
12629
12763
  });
12630
12764
  function Static(state) {
@@ -12649,7 +12783,7 @@ ${input.slice(result.pos)}
12649
12783
  return result;
12650
12784
  }
12651
12785
  }
12652
- var SubstitutionStart$0 = $TV($EXPECT($L137, fail, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
12786
+ var SubstitutionStart$0 = $TV($EXPECT($L138, fail, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
12653
12787
  return { $loc, token: $1 };
12654
12788
  });
12655
12789
  function SubstitutionStart(state) {
@@ -12674,7 +12808,7 @@ ${input.slice(result.pos)}
12674
12808
  return result;
12675
12809
  }
12676
12810
  }
12677
- var Switch$0 = $TS($S($EXPECT($L138, fail, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12811
+ var Switch$0 = $TS($S($EXPECT($L139, fail, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12678
12812
  return { $loc, token: $1 };
12679
12813
  });
12680
12814
  function Switch(state) {
@@ -12699,7 +12833,7 @@ ${input.slice(result.pos)}
12699
12833
  return result;
12700
12834
  }
12701
12835
  }
12702
- var Target$0 = $TS($S($EXPECT($L139, fail, 'Target "target"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12836
+ var Target$0 = $TS($S($EXPECT($L140, fail, 'Target "target"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12703
12837
  return { $loc, token: $1 };
12704
12838
  });
12705
12839
  function Target(state) {
@@ -12724,7 +12858,7 @@ ${input.slice(result.pos)}
12724
12858
  return result;
12725
12859
  }
12726
12860
  }
12727
- var Then$0 = $TS($S(__, $EXPECT($L140, fail, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
12861
+ var Then$0 = $TS($S(__, $EXPECT($L141, fail, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
12728
12862
  return { $loc, token: "" };
12729
12863
  });
12730
12864
  function Then(state) {
@@ -12749,7 +12883,7 @@ ${input.slice(result.pos)}
12749
12883
  return result;
12750
12884
  }
12751
12885
  }
12752
- var This$0 = $TS($S($EXPECT($L141, fail, 'This "this"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12886
+ var This$0 = $TS($S($EXPECT($L142, fail, 'This "this"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12753
12887
  return { $loc, token: $1 };
12754
12888
  });
12755
12889
  function This(state) {
@@ -12774,7 +12908,7 @@ ${input.slice(result.pos)}
12774
12908
  return result;
12775
12909
  }
12776
12910
  }
12777
- var Throw$0 = $TS($S($EXPECT($L142, fail, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12911
+ var Throw$0 = $TS($S($EXPECT($L143, fail, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12778
12912
  return { $loc, token: $1 };
12779
12913
  });
12780
12914
  function Throw(state) {
@@ -12799,7 +12933,7 @@ ${input.slice(result.pos)}
12799
12933
  return result;
12800
12934
  }
12801
12935
  }
12802
- var TripleDoubleQuote$0 = $TV($EXPECT($L143, fail, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
12936
+ var TripleDoubleQuote$0 = $TV($EXPECT($L144, fail, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
12803
12937
  return { $loc, token: "`" };
12804
12938
  });
12805
12939
  function TripleDoubleQuote(state) {
@@ -12824,7 +12958,7 @@ ${input.slice(result.pos)}
12824
12958
  return result;
12825
12959
  }
12826
12960
  }
12827
- var TripleSingleQuote$0 = $TV($EXPECT($L144, fail, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
12961
+ var TripleSingleQuote$0 = $TV($EXPECT($L145, fail, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
12828
12962
  return { $loc, token: "`" };
12829
12963
  });
12830
12964
  function TripleSingleQuote(state) {
@@ -12849,7 +12983,7 @@ ${input.slice(result.pos)}
12849
12983
  return result;
12850
12984
  }
12851
12985
  }
12852
- var TripleSlash$0 = $TV($EXPECT($L145, fail, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
12986
+ var TripleSlash$0 = $TV($EXPECT($L146, fail, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
12853
12987
  return { $loc, token: "/" };
12854
12988
  });
12855
12989
  function TripleSlash(state) {
@@ -12874,7 +13008,7 @@ ${input.slice(result.pos)}
12874
13008
  return result;
12875
13009
  }
12876
13010
  }
12877
- var TripleTick$0 = $TV($EXPECT($L146, fail, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
13011
+ var TripleTick$0 = $TV($EXPECT($L147, fail, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
12878
13012
  return { $loc, token: "`" };
12879
13013
  });
12880
13014
  function TripleTick(state) {
@@ -12899,7 +13033,7 @@ ${input.slice(result.pos)}
12899
13033
  return result;
12900
13034
  }
12901
13035
  }
12902
- var Try$0 = $TS($S($EXPECT($L147, fail, 'Try "try"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13036
+ var Try$0 = $TS($S($EXPECT($L148, fail, 'Try "try"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12903
13037
  return { $loc, token: $1 };
12904
13038
  });
12905
13039
  function Try(state) {
@@ -12924,7 +13058,7 @@ ${input.slice(result.pos)}
12924
13058
  return result;
12925
13059
  }
12926
13060
  }
12927
- var Typeof$0 = $TS($S($EXPECT($L148, fail, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13061
+ var Typeof$0 = $TS($S($EXPECT($L149, fail, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12928
13062
  return { $loc, token: $1 };
12929
13063
  });
12930
13064
  function Typeof(state) {
@@ -12949,7 +13083,7 @@ ${input.slice(result.pos)}
12949
13083
  return result;
12950
13084
  }
12951
13085
  }
12952
- var Unless$0 = $TS($S($EXPECT($L149, fail, 'Unless "unless"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13086
+ var Unless$0 = $TS($S($EXPECT($L150, fail, 'Unless "unless"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12953
13087
  return { $loc, token: $1 };
12954
13088
  });
12955
13089
  function Unless(state) {
@@ -12974,7 +13108,7 @@ ${input.slice(result.pos)}
12974
13108
  return result;
12975
13109
  }
12976
13110
  }
12977
- var Until$0 = $TS($S($EXPECT($L150, fail, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13111
+ var Until$0 = $TS($S($EXPECT($L151, fail, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12978
13112
  return { $loc, token: $1 };
12979
13113
  });
12980
13114
  function Until(state) {
@@ -12999,7 +13133,7 @@ ${input.slice(result.pos)}
12999
13133
  return result;
13000
13134
  }
13001
13135
  }
13002
- var Var$0 = $TS($S($EXPECT($L151, fail, 'Var "var"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13136
+ var Var$0 = $TS($S($EXPECT($L152, fail, 'Var "var"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13003
13137
  return { $loc, token: $1 };
13004
13138
  });
13005
13139
  function Var(state) {
@@ -13024,7 +13158,7 @@ ${input.slice(result.pos)}
13024
13158
  return result;
13025
13159
  }
13026
13160
  }
13027
- var Void$0 = $TS($S($EXPECT($L152, fail, 'Void "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13161
+ var Void$0 = $TS($S($EXPECT($L153, fail, 'Void "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13028
13162
  return { $loc, token: $1 };
13029
13163
  });
13030
13164
  function Void(state) {
@@ -13049,7 +13183,7 @@ ${input.slice(result.pos)}
13049
13183
  return result;
13050
13184
  }
13051
13185
  }
13052
- var When$0 = $TS($S($EXPECT($L153, fail, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13186
+ var When$0 = $TS($S($EXPECT($L154, fail, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13053
13187
  return { $loc, token: "case" };
13054
13188
  });
13055
13189
  function When(state) {
@@ -13074,7 +13208,7 @@ ${input.slice(result.pos)}
13074
13208
  return result;
13075
13209
  }
13076
13210
  }
13077
- var While$0 = $TS($S($EXPECT($L154, fail, 'While "while"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13211
+ var While$0 = $TS($S($EXPECT($L155, fail, 'While "while"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13078
13212
  return { $loc, token: $1 };
13079
13213
  });
13080
13214
  function While(state) {
@@ -13099,7 +13233,7 @@ ${input.slice(result.pos)}
13099
13233
  return result;
13100
13234
  }
13101
13235
  }
13102
- var Yield$0 = $TS($S($EXPECT($L155, fail, 'Yield "yield"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13236
+ var Yield$0 = $TS($S($EXPECT($L156, fail, 'Yield "yield"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13103
13237
  return { $loc, token: $1 };
13104
13238
  });
13105
13239
  function Yield(state) {
@@ -13245,7 +13379,7 @@ ${input.slice(result.pos)}
13245
13379
  return result;
13246
13380
  }
13247
13381
  }
13248
- var JSXSelfClosingElement$0 = $TS($S($EXPECT($L124, fail, 'JSXSelfClosingElement "<"'), $TEXT(JSXElementName), $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L156, fail, 'JSXSelfClosingElement "/>"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
13382
+ var JSXSelfClosingElement$0 = $TS($S($EXPECT($L127, fail, 'JSXSelfClosingElement "<"'), $TEXT(JSXElementName), $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L157, fail, 'JSXSelfClosingElement "/>"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
13249
13383
  return { type: "JSXElement", children: $0, tag: $2 };
13250
13384
  });
13251
13385
  function JSXSelfClosingElement(state) {
@@ -13296,7 +13430,7 @@ ${input.slice(result.pos)}
13296
13430
  return result;
13297
13431
  }
13298
13432
  }
13299
- var JSXOpeningElement$0 = $S($EXPECT($L124, fail, 'JSXOpeningElement "<"'), $TEXT(JSXElementName), $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L27, fail, 'JSXOpeningElement ">"'));
13433
+ var JSXOpeningElement$0 = $S($EXPECT($L127, fail, 'JSXOpeningElement "<"'), $TEXT(JSXElementName), $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L28, fail, 'JSXOpeningElement ">"'));
13300
13434
  function JSXOpeningElement(state) {
13301
13435
  let eventData;
13302
13436
  if (state.events) {
@@ -13325,7 +13459,7 @@ ${input.slice(result.pos)}
13325
13459
  return $skip;
13326
13460
  return $0;
13327
13461
  });
13328
- var JSXOptionalClosingElement$1 = $EXPECT($L14, fail, 'JSXOptionalClosingElement ""');
13462
+ var JSXOptionalClosingElement$1 = $EXPECT($L15, fail, 'JSXOptionalClosingElement ""');
13329
13463
  function JSXOptionalClosingElement(state) {
13330
13464
  let eventData;
13331
13465
  if (state.events) {
@@ -13348,7 +13482,7 @@ ${input.slice(result.pos)}
13348
13482
  return result;
13349
13483
  }
13350
13484
  }
13351
- var JSXClosingElement$0 = $S($EXPECT($L157, fail, 'JSXClosingElement "</"'), $E(Whitespace), $TEXT(JSXElementName), $E(Whitespace), $EXPECT($L27, fail, 'JSXClosingElement ">"'));
13485
+ var JSXClosingElement$0 = $S($EXPECT($L158, fail, 'JSXClosingElement "</"'), $E(Whitespace), $TEXT(JSXElementName), $E(Whitespace), $EXPECT($L28, fail, 'JSXClosingElement ">"'));
13352
13486
  function JSXClosingElement(state) {
13353
13487
  let eventData;
13354
13488
  if (state.events) {
@@ -13387,7 +13521,7 @@ ${input.slice(result.pos)}
13387
13521
  ];
13388
13522
  return { type: "JSXFragment", children: parts, jsxChildren: children.jsxChildren };
13389
13523
  });
13390
- var JSXFragment$1 = $TS($S(CoffeeJSXEnabled, $EXPECT($L158, fail, 'JSXFragment "<>"'), $E(JSXChildren), $E(Whitespace), JSXClosingFragment), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
13524
+ var JSXFragment$1 = $TS($S(CoffeeJSXEnabled, $EXPECT($L159, fail, 'JSXFragment "<>"'), $E(JSXChildren), $E(Whitespace), JSXClosingFragment), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
13391
13525
  var children = $3;
13392
13526
  $0 = $0.slice(1);
13393
13527
  return {
@@ -13418,7 +13552,7 @@ ${input.slice(result.pos)}
13418
13552
  return result;
13419
13553
  }
13420
13554
  }
13421
- var PushJSXOpeningFragment$0 = $TV($EXPECT($L158, fail, 'PushJSXOpeningFragment "<>"'), function($skip, $loc, $0, $1) {
13555
+ var PushJSXOpeningFragment$0 = $TV($EXPECT($L159, fail, 'PushJSXOpeningFragment "<>"'), function($skip, $loc, $0, $1) {
13422
13556
  module.JSXTagStack.push("");
13423
13557
  return $1;
13424
13558
  });
@@ -13449,7 +13583,7 @@ ${input.slice(result.pos)}
13449
13583
  return $skip;
13450
13584
  return $0;
13451
13585
  });
13452
- var JSXOptionalClosingFragment$1 = $EXPECT($L14, fail, 'JSXOptionalClosingFragment ""');
13586
+ var JSXOptionalClosingFragment$1 = $EXPECT($L15, fail, 'JSXOptionalClosingFragment ""');
13453
13587
  function JSXOptionalClosingFragment(state) {
13454
13588
  let eventData;
13455
13589
  if (state.events) {
@@ -13472,7 +13606,7 @@ ${input.slice(result.pos)}
13472
13606
  return result;
13473
13607
  }
13474
13608
  }
13475
- var JSXClosingFragment$0 = $EXPECT($L159, fail, 'JSXClosingFragment "</>"');
13609
+ var JSXClosingFragment$0 = $EXPECT($L160, fail, 'JSXClosingFragment "</>"');
13476
13610
  function JSXClosingFragment(state) {
13477
13611
  let eventData;
13478
13612
  if (state.events) {
@@ -13697,7 +13831,7 @@ ${input.slice(result.pos)}
13697
13831
  }
13698
13832
  });
13699
13833
  var JSXAttribute$2 = $S(InsertInlineOpenBrace, DotDotDot, InlineJSXAttributeValue, InsertCloseBrace);
13700
- var JSXAttribute$3 = $TS($S($EXPECT($L8, fail, 'JSXAttribute "#"'), JSXShorthandString), function($skip, $loc, $0, $1, $2) {
13834
+ var JSXAttribute$3 = $TS($S($EXPECT($L9, fail, 'JSXAttribute "#"'), JSXShorthandString), function($skip, $loc, $0, $1, $2) {
13701
13835
  return [" ", "id=", $2];
13702
13836
  });
13703
13837
  var JSXAttribute$4 = $TS($S(Dot, JSXShorthandString), function($skip, $loc, $0, $1, $2) {
@@ -13875,8 +14009,10 @@ ${input.slice(result.pos)}
13875
14009
  return result;
13876
14010
  }
13877
14011
  }
13878
- var InlineJSXBinaryOpRHS$0 = $TS($S(BinaryOp, $C(ParenthesizedAssignment, InlineJSXUnaryExpression)), function($skip, $loc, $0, $1, $2) {
13879
- return [[], $1, [], $2];
14012
+ var InlineJSXBinaryOpRHS$0 = $TS($S($N($EXPECT($R48, fail, "InlineJSXBinaryOpRHS /[<>]/")), BinaryOp, $C(ParenthesizedAssignment, InlineJSXUnaryExpression)), function($skip, $loc, $0, $1, $2, $3) {
14013
+ var op = $2;
14014
+ var rhs = $3;
14015
+ return [[], op, [], rhs];
13880
14016
  });
13881
14017
  function InlineJSXBinaryOpRHS(state) {
13882
14018
  let eventData;
@@ -14004,8 +14140,8 @@ ${input.slice(result.pos)}
14004
14140
  return result;
14005
14141
  }
14006
14142
  }
14007
- var InlineJSXCallExpression$0 = $S($EXPECT($L9, fail, 'InlineJSXCallExpression "super"'), ExplicitArguments);
14008
- var InlineJSXCallExpression$1 = $S($EXPECT($L10, fail, 'InlineJSXCallExpression "import"'), OpenParen, ExtendedExpression, __, CloseParen);
14143
+ var InlineJSXCallExpression$0 = $S($EXPECT($L10, fail, 'InlineJSXCallExpression "super"'), ExplicitArguments);
14144
+ var InlineJSXCallExpression$1 = $S($EXPECT($L11, fail, 'InlineJSXCallExpression "import"'), OpenParen, ExtendedExpression, __, CloseParen);
14009
14145
  var InlineJSXCallExpression$2 = $TS($S(InlineJSXMemberExpression, $Q(InlineJSXCallExpressionRest)), function($skip, $loc, $0, $1, $2) {
14010
14146
  if ($2.length)
14011
14147
  return $0;
@@ -14089,8 +14225,8 @@ ${input.slice(result.pos)}
14089
14225
  }
14090
14226
  var InlineJSXMemberExpressionRest$0 = $TS($S($E($C(OptionalShorthand, NonNullAssertion)), MemberBracketContent), function($skip, $loc, $0, $1, $2) {
14091
14227
  if ($1) {
14092
- if ($1.length === 2 && $2.type === "SliceExpression") {
14093
- return [$1[0], $2];
14228
+ if ($1.type === "Optional" && $2.type === "SliceExpression") {
14229
+ return [$1.children[0], $2];
14094
14230
  }
14095
14231
  return $0;
14096
14232
  }
@@ -14220,7 +14356,7 @@ ${input.slice(result.pos)}
14220
14356
  }
14221
14357
  return $skip;
14222
14358
  });
14223
- var JSXNestedChildren$1 = $TV($Y($C(JSXEOS, $EXPECT($L17, fail, 'JSXNestedChildren "}"'), JSXClosingElement, JSXClosingFragment)), function($skip, $loc, $0, $1) {
14359
+ var JSXNestedChildren$1 = $TV($Y($C(JSXEOS, $EXPECT($L18, fail, 'JSXNestedChildren "}"'), JSXClosingElement, JSXClosingFragment)), function($skip, $loc, $0, $1) {
14224
14360
  return { children: [], jsxChildren: [] };
14225
14361
  });
14226
14362
  function JSXNestedChildren(state) {
@@ -14349,7 +14485,7 @@ ${input.slice(result.pos)}
14349
14485
  return result;
14350
14486
  }
14351
14487
  }
14352
- var JSXComment$0 = $TS($S($EXPECT($L160, fail, 'JSXComment "<!--"'), JSXCommentContent, $EXPECT($L161, fail, 'JSXComment "-->"')), function($skip, $loc, $0, $1, $2, $3) {
14488
+ var JSXComment$0 = $TS($S($EXPECT($L161, fail, 'JSXComment "<!--"'), JSXCommentContent, $EXPECT($L162, fail, 'JSXComment "-->"')), function($skip, $loc, $0, $1, $2, $3) {
14353
14489
  return ["{/*", $2, "*/}"];
14354
14490
  });
14355
14491
  function JSXComment(state) {
@@ -14374,7 +14510,7 @@ ${input.slice(result.pos)}
14374
14510
  return result;
14375
14511
  }
14376
14512
  }
14377
- var JSXCommentContent$0 = $TR($EXPECT($R48, fail, "JSXCommentContent /(?:-[^-]|[^-]*)*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14513
+ var JSXCommentContent$0 = $TR($EXPECT($R49, fail, "JSXCommentContent /(?:-[^-]|[^-]*)*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14378
14514
  return { $loc, token: $0.replace(/\*\//g, "* /") };
14379
14515
  });
14380
14516
  function JSXCommentContent(state) {
@@ -14399,7 +14535,7 @@ ${input.slice(result.pos)}
14399
14535
  return result;
14400
14536
  }
14401
14537
  }
14402
- var JSXText$0 = $TR($EXPECT($R49, fail, "JSXText /[^{}<>\\r\\n]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14538
+ var JSXText$0 = $TR($EXPECT($R50, fail, "JSXText /[^{}<>\\r\\n]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14403
14539
  return {
14404
14540
  type: "JSXText",
14405
14541
  token: $0,
@@ -14601,7 +14737,7 @@ ${input.slice(result.pos)}
14601
14737
  return result;
14602
14738
  }
14603
14739
  }
14604
- var InterfaceExtendsClause$0 = $S(ExtendsToken, InterfaceExtendsTarget);
14740
+ var InterfaceExtendsClause$0 = $S(ExtendsToken, InterfaceExtendsTarget, $Q($S(Comma, InterfaceExtendsTarget)));
14605
14741
  function InterfaceExtendsClause(state) {
14606
14742
  let eventData;
14607
14743
  if (state.events) {
@@ -14647,7 +14783,7 @@ ${input.slice(result.pos)}
14647
14783
  return result;
14648
14784
  }
14649
14785
  }
14650
- var TypeKeyword$0 = $S($EXPECT($L162, fail, 'TypeKeyword "type"'), NonIdContinue);
14786
+ var TypeKeyword$0 = $S($EXPECT($L163, fail, 'TypeKeyword "type"'), NonIdContinue);
14651
14787
  function TypeKeyword(state) {
14652
14788
  let eventData;
14653
14789
  if (state.events) {
@@ -14670,7 +14806,7 @@ ${input.slice(result.pos)}
14670
14806
  return result;
14671
14807
  }
14672
14808
  }
14673
- var Interface$0 = $S($EXPECT($L163, fail, 'Interface "interface"'), NonIdContinue);
14809
+ var Interface$0 = $S($EXPECT($L164, fail, 'Interface "interface"'), NonIdContinue);
14674
14810
  function Interface(state) {
14675
14811
  let eventData;
14676
14812
  if (state.events) {
@@ -14693,7 +14829,7 @@ ${input.slice(result.pos)}
14693
14829
  return result;
14694
14830
  }
14695
14831
  }
14696
- var Namespace$0 = $S($EXPECT($L164, fail, 'Namespace "namespace"'), NonIdContinue);
14832
+ var Namespace$0 = $S($EXPECT($L165, fail, 'Namespace "namespace"'), NonIdContinue);
14697
14833
  function Namespace(state) {
14698
14834
  let eventData;
14699
14835
  if (state.events) {
@@ -14941,7 +15077,7 @@ ${input.slice(result.pos)}
14941
15077
  return result;
14942
15078
  }
14943
15079
  }
14944
- var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($R50, fail, "TypeIndexSignature /[+-]?/")), $EXPECT($L132, fail, 'TypeIndexSignature "readonly"'), __)), OpenBracket, TypeIndex, CloseBracket, $E($S(__, $R$0($EXPECT($R51, fail, "TypeIndexSignature /[+-]/")), QuestionMark)));
15080
+ var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($R51, fail, "TypeIndexSignature /[+-]?/")), $EXPECT($L133, fail, 'TypeIndexSignature "readonly"'), __)), OpenBracket, TypeIndex, CloseBracket, $E($S(__, $R$0($EXPECT($R52, fail, "TypeIndexSignature /[+-]/")), QuestionMark)));
14945
15081
  function TypeIndexSignature(state) {
14946
15082
  let eventData;
14947
15083
  if (state.events) {
@@ -15013,7 +15149,7 @@ ${input.slice(result.pos)}
15013
15149
  return result;
15014
15150
  }
15015
15151
  }
15016
- var ReturnTypeSuffix$0 = $TS($S(__, Colon, $E($S(__, $EXPECT($L165, fail, 'ReturnTypeSuffix "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2, $3, $4) {
15152
+ var ReturnTypeSuffix$0 = $TS($S(__, Colon, $E($S(__, $EXPECT($L166, fail, 'ReturnTypeSuffix "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2, $3, $4) {
15017
15153
  const children = [...$1, $2];
15018
15154
  if ($3)
15019
15155
  children.push($3);
@@ -15046,7 +15182,7 @@ ${input.slice(result.pos)}
15046
15182
  return result;
15047
15183
  }
15048
15184
  }
15049
- var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L75, fail, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
15185
+ var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L76, fail, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
15050
15186
  if (!$2)
15051
15187
  return $1;
15052
15188
  return $0;
@@ -15172,10 +15308,10 @@ ${input.slice(result.pos)}
15172
15308
  return result;
15173
15309
  }
15174
15310
  }
15175
- var TypeUnaryOp$0 = $S($EXPECT($L166, fail, 'TypeUnaryOp "keyof"'), NonIdContinue);
15176
- var TypeUnaryOp$1 = $S($EXPECT($L148, fail, 'TypeUnaryOp "typeof"'), NonIdContinue);
15177
- var TypeUnaryOp$2 = $S($EXPECT($L167, fail, 'TypeUnaryOp "infer"'), NonIdContinue);
15178
- var TypeUnaryOp$3 = $S($EXPECT($L132, fail, 'TypeUnaryOp "readonly"'), NonIdContinue);
15311
+ var TypeUnaryOp$0 = $S($EXPECT($L167, fail, 'TypeUnaryOp "keyof"'), NonIdContinue);
15312
+ var TypeUnaryOp$1 = $S($EXPECT($L149, fail, 'TypeUnaryOp "typeof"'), NonIdContinue);
15313
+ var TypeUnaryOp$2 = $S($EXPECT($L168, fail, 'TypeUnaryOp "infer"'), NonIdContinue);
15314
+ var TypeUnaryOp$3 = $S($EXPECT($L133, fail, 'TypeUnaryOp "readonly"'), NonIdContinue);
15179
15315
  function TypeUnaryOp(state) {
15180
15316
  let eventData;
15181
15317
  if (state.events) {
@@ -15251,8 +15387,8 @@ ${input.slice(result.pos)}
15251
15387
  return result;
15252
15388
  }
15253
15389
  }
15254
- var ImportType$0 = $S($EXPECT($L10, fail, 'ImportType "import"'), OpenParen, __, BasicStringLiteral, __, CloseParen, $E($S(Dot, IdentifierName)), $E(TypeArguments));
15255
- var ImportType$1 = $S($EXPECT($L10, fail, 'ImportType "import"'), InsertOpenParen, Trimmed_, BasicStringLiteral, InsertCloseParen);
15390
+ var ImportType$0 = $S($EXPECT($L11, fail, 'ImportType "import"'), OpenParen, __, BasicStringLiteral, __, CloseParen, $E($S(Dot, IdentifierName)), $E(TypeArguments));
15391
+ var ImportType$1 = $S($EXPECT($L11, fail, 'ImportType "import"'), InsertOpenParen, Trimmed_, BasicStringLiteral, InsertCloseParen);
15256
15392
  function ImportType(state) {
15257
15393
  let eventData;
15258
15394
  if (state.events) {
@@ -15373,7 +15509,7 @@ ${input.slice(result.pos)}
15373
15509
  return result;
15374
15510
  }
15375
15511
  }
15376
- var TypeConditional$0 = $TS($S(TypeBinary, $E($S(__, $EXPECT($L113, fail, 'TypeConditional "extends"'), NonIdContinue, Type, $E($S(__, QuestionMark, Type, __, Colon, Type))))), function($skip, $loc, $0, $1, $2) {
15512
+ var TypeConditional$0 = $TS($S(TypeBinary, $E($S(__, $EXPECT($L116, fail, 'TypeConditional "extends"'), NonIdContinue, Type, $E($S(__, QuestionMark, Type, __, Colon, Type))))), function($skip, $loc, $0, $1, $2) {
15377
15513
  if ($2)
15378
15514
  return $0;
15379
15515
  return $1;
@@ -15402,10 +15538,10 @@ ${input.slice(result.pos)}
15402
15538
  }
15403
15539
  var TypeLiteral$0 = Literal;
15404
15540
  var TypeLiteral$1 = TemplateLiteral;
15405
- var TypeLiteral$2 = $TS($S($EXPECT($L152, fail, 'TypeLiteral "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15541
+ var TypeLiteral$2 = $TS($S($EXPECT($L153, fail, 'TypeLiteral "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15406
15542
  return { $loc, token: "void" };
15407
15543
  });
15408
- var TypeLiteral$3 = $TV($EXPECT($L168, fail, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
15544
+ var TypeLiteral$3 = $TV($EXPECT($L169, fail, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
15409
15545
  return { $loc, token: "[]" };
15410
15546
  });
15411
15547
  function TypeLiteral(state) {
@@ -15480,7 +15616,7 @@ ${input.slice(result.pos)}
15480
15616
  var InlineInterfacePropertyDelimiter$1 = $T($S($Y($S($C(IndentedFurther, $E(_)), InlineBasicInterfaceProperty)), InsertComma), function(value) {
15481
15617
  return value[1];
15482
15618
  });
15483
- var InlineInterfacePropertyDelimiter$2 = $Y($S(__, $C($EXPECT($L29, fail, 'InlineInterfacePropertyDelimiter ":"'), $EXPECT($L15, fail, 'InlineInterfacePropertyDelimiter ")"'), $EXPECT($L28, fail, 'InlineInterfacePropertyDelimiter "]"'), $EXPECT($L17, fail, 'InlineInterfacePropertyDelimiter "}"'))));
15619
+ var InlineInterfacePropertyDelimiter$2 = $Y($S(__, $C($EXPECT($L30, fail, 'InlineInterfacePropertyDelimiter ":"'), $EXPECT($L16, fail, 'InlineInterfacePropertyDelimiter ")"'), $EXPECT($L29, fail, 'InlineInterfacePropertyDelimiter "]"'), $EXPECT($L18, fail, 'InlineInterfacePropertyDelimiter "}"'))));
15484
15620
  var InlineInterfacePropertyDelimiter$3 = $Y(EOS);
15485
15621
  function InlineInterfacePropertyDelimiter(state) {
15486
15622
  let eventData;
@@ -15504,10 +15640,10 @@ ${input.slice(result.pos)}
15504
15640
  return result;
15505
15641
  }
15506
15642
  }
15507
- var TypeBinaryOp$0 = $TV($EXPECT($L78, fail, 'TypeBinaryOp "|"'), function($skip, $loc, $0, $1) {
15643
+ var TypeBinaryOp$0 = $TV($EXPECT($L79, fail, 'TypeBinaryOp "|"'), function($skip, $loc, $0, $1) {
15508
15644
  return { $loc, token: "|" };
15509
15645
  });
15510
- var TypeBinaryOp$1 = $TV($EXPECT($L76, fail, 'TypeBinaryOp "&"'), function($skip, $loc, $0, $1) {
15646
+ var TypeBinaryOp$1 = $TV($EXPECT($L77, fail, 'TypeBinaryOp "&"'), function($skip, $loc, $0, $1) {
15511
15647
  return { $loc, token: "&" };
15512
15648
  });
15513
15649
  function TypeBinaryOp(state) {
@@ -15561,7 +15697,7 @@ ${input.slice(result.pos)}
15561
15697
  return result;
15562
15698
  }
15563
15699
  }
15564
- var TypeArguments$0 = $TS($S($EXPECT($L124, fail, 'TypeArguments "<"'), $P(TypeArgument), __, $EXPECT($L27, fail, 'TypeArguments ">"')), function($skip, $loc, $0, $1, $2, $3, $4) {
15700
+ var TypeArguments$0 = $TS($S($EXPECT($L127, fail, 'TypeArguments "<"'), $P(TypeArgument), __, $EXPECT($L28, fail, 'TypeArguments ">"')), function($skip, $loc, $0, $1, $2, $3, $4) {
15565
15701
  return { ts: true, children: $0 };
15566
15702
  });
15567
15703
  function TypeArguments(state) {
@@ -15632,7 +15768,7 @@ ${input.slice(result.pos)}
15632
15768
  return result;
15633
15769
  }
15634
15770
  }
15635
- var TypeParameters$0 = $TS($S(__, $EXPECT($L124, fail, 'TypeParameters "<"'), $P(TypeParameter), __, $EXPECT($L27, fail, 'TypeParameters ">"')), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
15771
+ var TypeParameters$0 = $TS($S(__, $EXPECT($L127, fail, 'TypeParameters "<"'), $P(TypeParameter), __, $EXPECT($L28, fail, 'TypeParameters ">"')), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
15636
15772
  var parameters = $3;
15637
15773
  return {
15638
15774
  type: "TypeParameters",
@@ -15686,7 +15822,7 @@ ${input.slice(result.pos)}
15686
15822
  return result;
15687
15823
  }
15688
15824
  }
15689
- var TypeConstraint$0 = $S(__, $EXPECT($L113, fail, 'TypeConstraint "extends"'), NonIdContinue, Type);
15825
+ var TypeConstraint$0 = $S(__, $EXPECT($L116, fail, 'TypeConstraint "extends"'), NonIdContinue, Type);
15690
15826
  function TypeConstraint(state) {
15691
15827
  let eventData;
15692
15828
  if (state.events) {
@@ -15709,7 +15845,7 @@ ${input.slice(result.pos)}
15709
15845
  return result;
15710
15846
  }
15711
15847
  }
15712
- var TypeInitializer$0 = $S(__, $EXPECT($L26, fail, 'TypeInitializer "="'), Type);
15848
+ var TypeInitializer$0 = $S(__, $EXPECT($L27, fail, 'TypeInitializer "="'), Type);
15713
15849
  function TypeInitializer(state) {
15714
15850
  let eventData;
15715
15851
  if (state.events) {
@@ -15733,7 +15869,7 @@ ${input.slice(result.pos)}
15733
15869
  }
15734
15870
  }
15735
15871
  var TypeParameterDelimiter$0 = $S($Q(_), Comma);
15736
- var TypeParameterDelimiter$1 = $Y($S(__, $EXPECT($L27, fail, 'TypeParameterDelimiter ">"')));
15872
+ var TypeParameterDelimiter$1 = $Y($S(__, $EXPECT($L28, fail, 'TypeParameterDelimiter ">"')));
15737
15873
  var TypeParameterDelimiter$2 = $T($S($Y(EOS), InsertComma), function(value) {
15738
15874
  return value[1];
15739
15875
  });
@@ -15784,7 +15920,7 @@ ${input.slice(result.pos)}
15784
15920
  return result;
15785
15921
  }
15786
15922
  }
15787
- var Shebang$0 = $S($R$0($EXPECT($R52, fail, "Shebang /#![^\\r\\n]*/")), EOL);
15923
+ var Shebang$0 = $S($R$0($EXPECT($R53, fail, "Shebang /#![^\\r\\n]*/")), EOL);
15788
15924
  function Shebang(state) {
15789
15925
  let eventData;
15790
15926
  if (state.events) {
@@ -15807,11 +15943,11 @@ ${input.slice(result.pos)}
15807
15943
  return result;
15808
15944
  }
15809
15945
  }
15810
- var CivetPrologue$0 = $T($S($EXPECT($R53, fail, "CivetPrologue /[\\t ]*/"), DoubleQuote, CivetPrologueContent, DoubleQuote, $TEXT(StatementDelimiter), $E(EOS)), function(value) {
15946
+ var CivetPrologue$0 = $T($S($EXPECT($R54, fail, "CivetPrologue /[\\t ]*/"), DoubleQuote, CivetPrologueContent, DoubleQuote, $TEXT(StatementDelimiter), $E(EOS)), function(value) {
15811
15947
  var content = value[2];
15812
15948
  return content;
15813
15949
  });
15814
- var CivetPrologue$1 = $T($S($EXPECT($R53, fail, "CivetPrologue /[\\t ]*/"), SingleQuote, CivetPrologueContent, SingleQuote, $TEXT(StatementDelimiter), $E(EOS)), function(value) {
15950
+ var CivetPrologue$1 = $T($S($EXPECT($R54, fail, "CivetPrologue /[\\t ]*/"), SingleQuote, CivetPrologueContent, SingleQuote, $TEXT(StatementDelimiter), $E(EOS)), function(value) {
15815
15951
  var content = value[2];
15816
15952
  return content;
15817
15953
  });
@@ -15837,7 +15973,7 @@ ${input.slice(result.pos)}
15837
15973
  return result;
15838
15974
  }
15839
15975
  }
15840
- var CivetPrologueContent$0 = $TS($S($EXPECT($L169, fail, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($R54, fail, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
15976
+ var CivetPrologueContent$0 = $TS($S($EXPECT($L170, fail, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($R55, fail, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
15841
15977
  var options = $3;
15842
15978
  return {
15843
15979
  type: "CivetPrologue",
@@ -15867,7 +16003,7 @@ ${input.slice(result.pos)}
15867
16003
  return result;
15868
16004
  }
15869
16005
  }
15870
- var CivetOption$0 = $TR($EXPECT($R55, fail, "CivetOption /\\s+([+-]?)([a-zA-Z0-9-]+)(\\s*=\\s*([a-zA-Z0-9.+-]*))?/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
16006
+ var CivetOption$0 = $TR($EXPECT($R56, fail, "CivetOption /\\s+([+-]?)([a-zA-Z0-9-]+)(\\s*=\\s*([a-zA-Z0-9.+-]*))?/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
15871
16007
  const optionName = $2.replace(/-+([a-z]?)/g, (_2, l) => {
15872
16008
  if (l)
15873
16009
  return l.toUpperCase();
@@ -15903,7 +16039,7 @@ ${input.slice(result.pos)}
15903
16039
  return result;
15904
16040
  }
15905
16041
  }
15906
- var UnknownPrologue$0 = $S($R$0($EXPECT($R53, fail, "UnknownPrologue /[\\t ]*/")), BasicStringLiteral, $TEXT(StatementDelimiter), EOS);
16042
+ var UnknownPrologue$0 = $S($R$0($EXPECT($R54, fail, "UnknownPrologue /[\\t ]*/")), BasicStringLiteral, $TEXT(StatementDelimiter), EOS);
15907
16043
  function UnknownPrologue(state) {
15908
16044
  let eventData;
15909
16045
  if (state.events) {
@@ -15973,7 +16109,7 @@ ${input.slice(result.pos)}
15973
16109
  return result;
15974
16110
  }
15975
16111
  }
15976
- var EOL$0 = $TR($EXPECT($R56, fail, "EOL /\\r\\n|\\n|\\r|$/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
16112
+ var EOL$0 = $TR($EXPECT($R57, fail, "EOL /\\r\\n|\\n|\\r|$/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
15977
16113
  return { $loc, token: $0 };
15978
16114
  });
15979
16115
  function EOL(state) {
@@ -15998,7 +16134,7 @@ ${input.slice(result.pos)}
15998
16134
  return result;
15999
16135
  }
16000
16136
  }
16001
- var Debugger$0 = $TV($EXPECT($L14, fail, 'Debugger ""'), function($skip, $loc, $0, $1) {
16137
+ var Debugger$0 = $TV($EXPECT($L15, fail, 'Debugger ""'), function($skip, $loc, $0, $1) {
16002
16138
  debugger;
16003
16139
  });
16004
16140
  function Debugger(state) {
@@ -16023,7 +16159,32 @@ ${input.slice(result.pos)}
16023
16159
  return result;
16024
16160
  }
16025
16161
  }
16026
- var InsertOpenParen$0 = $TV($EXPECT($L14, fail, 'InsertOpenParen ""'), function($skip, $loc, $0, $1) {
16162
+ var InsertSemicolon$0 = $TV($EXPECT($L15, fail, 'InsertSemicolon ""'), function($skip, $loc, $0, $1) {
16163
+ return { $loc, token: ";" };
16164
+ });
16165
+ function InsertSemicolon(state) {
16166
+ let eventData;
16167
+ if (state.events) {
16168
+ const result = state.events.enter?.("InsertSemicolon", state);
16169
+ if (result) {
16170
+ if (result.cache)
16171
+ return result.cache;
16172
+ eventData = result.data;
16173
+ }
16174
+ }
16175
+ if (state.tokenize) {
16176
+ const result = $TOKEN("InsertSemicolon", state, InsertSemicolon$0(state));
16177
+ if (state.events)
16178
+ state.events.exit?.("InsertSemicolon", state, result, eventData);
16179
+ return result;
16180
+ } else {
16181
+ const result = InsertSemicolon$0(state);
16182
+ if (state.events)
16183
+ state.events.exit?.("InsertSemicolon", state, result, eventData);
16184
+ return result;
16185
+ }
16186
+ }
16187
+ var InsertOpenParen$0 = $TV($EXPECT($L15, fail, 'InsertOpenParen ""'), function($skip, $loc, $0, $1) {
16027
16188
  return { $loc, token: "(" };
16028
16189
  });
16029
16190
  function InsertOpenParen(state) {
@@ -16048,7 +16209,7 @@ ${input.slice(result.pos)}
16048
16209
  return result;
16049
16210
  }
16050
16211
  }
16051
- var InsertCloseParen$0 = $TV($EXPECT($L14, fail, 'InsertCloseParen ""'), function($skip, $loc, $0, $1) {
16212
+ var InsertCloseParen$0 = $TV($EXPECT($L15, fail, 'InsertCloseParen ""'), function($skip, $loc, $0, $1) {
16052
16213
  return { $loc, token: ")" };
16053
16214
  });
16054
16215
  function InsertCloseParen(state) {
@@ -16073,7 +16234,7 @@ ${input.slice(result.pos)}
16073
16234
  return result;
16074
16235
  }
16075
16236
  }
16076
- var InsertOpenBrace$0 = $TV($EXPECT($L14, fail, 'InsertOpenBrace ""'), function($skip, $loc, $0, $1) {
16237
+ var InsertOpenBrace$0 = $TV($EXPECT($L15, fail, 'InsertOpenBrace ""'), function($skip, $loc, $0, $1) {
16077
16238
  return [{ $loc, token: " " }, { $loc, token: "{" }];
16078
16239
  });
16079
16240
  function InsertOpenBrace(state) {
@@ -16098,7 +16259,7 @@ ${input.slice(result.pos)}
16098
16259
  return result;
16099
16260
  }
16100
16261
  }
16101
- var InsertInlineOpenBrace$0 = $TV($EXPECT($L14, fail, 'InsertInlineOpenBrace ""'), function($skip, $loc, $0, $1) {
16262
+ var InsertInlineOpenBrace$0 = $TV($EXPECT($L15, fail, 'InsertInlineOpenBrace ""'), function($skip, $loc, $0, $1) {
16102
16263
  return { $loc, token: "{" };
16103
16264
  });
16104
16265
  function InsertInlineOpenBrace(state) {
@@ -16123,7 +16284,7 @@ ${input.slice(result.pos)}
16123
16284
  return result;
16124
16285
  }
16125
16286
  }
16126
- var InsertCloseBrace$0 = $TV($EXPECT($L14, fail, 'InsertCloseBrace ""'), function($skip, $loc, $0, $1) {
16287
+ var InsertCloseBrace$0 = $TV($EXPECT($L15, fail, 'InsertCloseBrace ""'), function($skip, $loc, $0, $1) {
16127
16288
  return { $loc, token: "}" };
16128
16289
  });
16129
16290
  function InsertCloseBrace(state) {
@@ -16148,7 +16309,7 @@ ${input.slice(result.pos)}
16148
16309
  return result;
16149
16310
  }
16150
16311
  }
16151
- var InsertComma$0 = $TV($EXPECT($L14, fail, 'InsertComma ""'), function($skip, $loc, $0, $1) {
16312
+ var InsertComma$0 = $TV($EXPECT($L15, fail, 'InsertComma ""'), function($skip, $loc, $0, $1) {
16152
16313
  return { $loc, token: "," };
16153
16314
  });
16154
16315
  function InsertComma(state) {
@@ -16173,7 +16334,7 @@ ${input.slice(result.pos)}
16173
16334
  return result;
16174
16335
  }
16175
16336
  }
16176
- var InsertConst$0 = $TV($EXPECT($L14, fail, 'InsertConst ""'), function($skip, $loc, $0, $1) {
16337
+ var InsertConst$0 = $TV($EXPECT($L15, fail, 'InsertConst ""'), function($skip, $loc, $0, $1) {
16177
16338
  return { $loc, token: "const " };
16178
16339
  });
16179
16340
  function InsertConst(state) {
@@ -16198,7 +16359,7 @@ ${input.slice(result.pos)}
16198
16359
  return result;
16199
16360
  }
16200
16361
  }
16201
- var InsertLet$0 = $TV($EXPECT($L14, fail, 'InsertLet ""'), function($skip, $loc, $0, $1) {
16362
+ var InsertLet$0 = $TV($EXPECT($L15, fail, 'InsertLet ""'), function($skip, $loc, $0, $1) {
16202
16363
  return { $loc, token: "let " };
16203
16364
  });
16204
16365
  function InsertLet(state) {
@@ -16223,7 +16384,7 @@ ${input.slice(result.pos)}
16223
16384
  return result;
16224
16385
  }
16225
16386
  }
16226
- var InsertReadonly$0 = $TV($EXPECT($L14, fail, 'InsertReadonly ""'), function($skip, $loc, $0, $1) {
16387
+ var InsertReadonly$0 = $TV($EXPECT($L15, fail, 'InsertReadonly ""'), function($skip, $loc, $0, $1) {
16227
16388
  return { ts: true, children: [{ $loc, token: "readonly " }] };
16228
16389
  });
16229
16390
  function InsertReadonly(state) {
@@ -16248,7 +16409,7 @@ ${input.slice(result.pos)}
16248
16409
  return result;
16249
16410
  }
16250
16411
  }
16251
- var InsertNewline$0 = $TV($EXPECT($L14, fail, 'InsertNewline ""'), function($skip, $loc, $0, $1) {
16412
+ var InsertNewline$0 = $TV($EXPECT($L15, fail, 'InsertNewline ""'), function($skip, $loc, $0, $1) {
16252
16413
  return "\n";
16253
16414
  });
16254
16415
  function InsertNewline(state) {
@@ -16273,7 +16434,7 @@ ${input.slice(result.pos)}
16273
16434
  return result;
16274
16435
  }
16275
16436
  }
16276
- var InsertIndent$0 = $TV($EXPECT($L14, fail, 'InsertIndent ""'), function($skip, $loc, $0, $1) {
16437
+ var InsertIndent$0 = $TV($EXPECT($L15, fail, 'InsertIndent ""'), function($skip, $loc, $0, $1) {
16277
16438
  return module.currentIndent.token;
16278
16439
  });
16279
16440
  function InsertIndent(state) {
@@ -16298,7 +16459,7 @@ ${input.slice(result.pos)}
16298
16459
  return result;
16299
16460
  }
16300
16461
  }
16301
- var InsertSpace$0 = $TV($EXPECT($L14, fail, 'InsertSpace ""'), function($skip, $loc, $0, $1) {
16462
+ var InsertSpace$0 = $TV($EXPECT($L15, fail, 'InsertSpace ""'), function($skip, $loc, $0, $1) {
16302
16463
  return { $loc, token: " " };
16303
16464
  });
16304
16465
  function InsertSpace(state) {
@@ -16323,7 +16484,7 @@ ${input.slice(result.pos)}
16323
16484
  return result;
16324
16485
  }
16325
16486
  }
16326
- var InsertDot$0 = $TV($EXPECT($L14, fail, 'InsertDot ""'), function($skip, $loc, $0, $1) {
16487
+ var InsertDot$0 = $TV($EXPECT($L15, fail, 'InsertDot ""'), function($skip, $loc, $0, $1) {
16327
16488
  return { $loc, token: "." };
16328
16489
  });
16329
16490
  function InsertDot(state) {
@@ -16348,7 +16509,7 @@ ${input.slice(result.pos)}
16348
16509
  return result;
16349
16510
  }
16350
16511
  }
16351
- var InsertBreak$0 = $TV($EXPECT($L14, fail, 'InsertBreak ""'), function($skip, $loc, $0, $1) {
16512
+ var InsertBreak$0 = $TV($EXPECT($L15, fail, 'InsertBreak ""'), function($skip, $loc, $0, $1) {
16352
16513
  return { $loc, token: ";break;" };
16353
16514
  });
16354
16515
  function InsertBreak(state) {
@@ -16373,7 +16534,7 @@ ${input.slice(result.pos)}
16373
16534
  return result;
16374
16535
  }
16375
16536
  }
16376
- var InsertVar$0 = $TV($EXPECT($L14, fail, 'InsertVar ""'), function($skip, $loc, $0, $1) {
16537
+ var InsertVar$0 = $TV($EXPECT($L15, fail, 'InsertVar ""'), function($skip, $loc, $0, $1) {
16377
16538
  return { $loc, token: "var " };
16378
16539
  });
16379
16540
  function InsertVar(state) {
@@ -16398,7 +16559,7 @@ ${input.slice(result.pos)}
16398
16559
  return result;
16399
16560
  }
16400
16561
  }
16401
- var CoffeeBinaryExistentialEnabled$0 = $TV($EXPECT($L14, fail, 'CoffeeBinaryExistentialEnabled ""'), function($skip, $loc, $0, $1) {
16562
+ var CoffeeBinaryExistentialEnabled$0 = $TV($EXPECT($L15, fail, 'CoffeeBinaryExistentialEnabled ""'), function($skip, $loc, $0, $1) {
16402
16563
  if (module.config.coffeeBinaryExistential)
16403
16564
  return;
16404
16565
  return $skip;
@@ -16425,7 +16586,7 @@ ${input.slice(result.pos)}
16425
16586
  return result;
16426
16587
  }
16427
16588
  }
16428
- var CoffeeBooleansEnabled$0 = $TV($EXPECT($L14, fail, 'CoffeeBooleansEnabled ""'), function($skip, $loc, $0, $1) {
16589
+ var CoffeeBooleansEnabled$0 = $TV($EXPECT($L15, fail, 'CoffeeBooleansEnabled ""'), function($skip, $loc, $0, $1) {
16429
16590
  if (module.config.coffeeBooleans)
16430
16591
  return;
16431
16592
  return $skip;
@@ -16452,7 +16613,7 @@ ${input.slice(result.pos)}
16452
16613
  return result;
16453
16614
  }
16454
16615
  }
16455
- var CoffeeClassesEnabled$0 = $TV($EXPECT($L14, fail, 'CoffeeClassesEnabled ""'), function($skip, $loc, $0, $1) {
16616
+ var CoffeeClassesEnabled$0 = $TV($EXPECT($L15, fail, 'CoffeeClassesEnabled ""'), function($skip, $loc, $0, $1) {
16456
16617
  if (module.config.coffeeClasses)
16457
16618
  return;
16458
16619
  return $skip;
@@ -16479,7 +16640,7 @@ ${input.slice(result.pos)}
16479
16640
  return result;
16480
16641
  }
16481
16642
  }
16482
- var CoffeeCommentEnabled$0 = $TV($EXPECT($L14, fail, 'CoffeeCommentEnabled ""'), function($skip, $loc, $0, $1) {
16643
+ var CoffeeCommentEnabled$0 = $TV($EXPECT($L15, fail, 'CoffeeCommentEnabled ""'), function($skip, $loc, $0, $1) {
16483
16644
  if (module.config.coffeeComment)
16484
16645
  return;
16485
16646
  return $skip;
@@ -16506,7 +16667,7 @@ ${input.slice(result.pos)}
16506
16667
  return result;
16507
16668
  }
16508
16669
  }
16509
- var CoffeeDoEnabled$0 = $TV($EXPECT($L14, fail, 'CoffeeDoEnabled ""'), function($skip, $loc, $0, $1) {
16670
+ var CoffeeDoEnabled$0 = $TV($EXPECT($L15, fail, 'CoffeeDoEnabled ""'), function($skip, $loc, $0, $1) {
16510
16671
  if (module.config.coffeeDo)
16511
16672
  return;
16512
16673
  return $skip;
@@ -16533,7 +16694,7 @@ ${input.slice(result.pos)}
16533
16694
  return result;
16534
16695
  }
16535
16696
  }
16536
- var CoffeeForLoopsEnabled$0 = $TV($EXPECT($L14, fail, 'CoffeeForLoopsEnabled ""'), function($skip, $loc, $0, $1) {
16697
+ var CoffeeForLoopsEnabled$0 = $TV($EXPECT($L15, fail, 'CoffeeForLoopsEnabled ""'), function($skip, $loc, $0, $1) {
16537
16698
  if (module.config.coffeeForLoops)
16538
16699
  return;
16539
16700
  return $skip;
@@ -16560,7 +16721,7 @@ ${input.slice(result.pos)}
16560
16721
  return result;
16561
16722
  }
16562
16723
  }
16563
- var CoffeeInterpolationEnabled$0 = $TV($EXPECT($L14, fail, 'CoffeeInterpolationEnabled ""'), function($skip, $loc, $0, $1) {
16724
+ var CoffeeInterpolationEnabled$0 = $TV($EXPECT($L15, fail, 'CoffeeInterpolationEnabled ""'), function($skip, $loc, $0, $1) {
16564
16725
  if (module.config.coffeeInterpolation)
16565
16726
  return;
16566
16727
  return $skip;
@@ -16587,7 +16748,7 @@ ${input.slice(result.pos)}
16587
16748
  return result;
16588
16749
  }
16589
16750
  }
16590
- var CoffeeIsntEnabled$0 = $TV($EXPECT($L14, fail, 'CoffeeIsntEnabled ""'), function($skip, $loc, $0, $1) {
16751
+ var CoffeeIsntEnabled$0 = $TV($EXPECT($L15, fail, 'CoffeeIsntEnabled ""'), function($skip, $loc, $0, $1) {
16591
16752
  if (module.config.coffeeIsnt)
16592
16753
  return;
16593
16754
  return $skip;
@@ -16614,7 +16775,7 @@ ${input.slice(result.pos)}
16614
16775
  return result;
16615
16776
  }
16616
16777
  }
16617
- var CoffeeJSXEnabled$0 = $TV($EXPECT($L14, fail, 'CoffeeJSXEnabled ""'), function($skip, $loc, $0, $1) {
16778
+ var CoffeeJSXEnabled$0 = $TV($EXPECT($L15, fail, 'CoffeeJSXEnabled ""'), function($skip, $loc, $0, $1) {
16618
16779
  if (module.config.coffeeJSX)
16619
16780
  return;
16620
16781
  return $skip;
@@ -16641,7 +16802,7 @@ ${input.slice(result.pos)}
16641
16802
  return result;
16642
16803
  }
16643
16804
  }
16644
- var CoffeeLineContinuationEnabled$0 = $TV($EXPECT($L14, fail, 'CoffeeLineContinuationEnabled ""'), function($skip, $loc, $0, $1) {
16805
+ var CoffeeLineContinuationEnabled$0 = $TV($EXPECT($L15, fail, 'CoffeeLineContinuationEnabled ""'), function($skip, $loc, $0, $1) {
16645
16806
  if (module.config.coffeeLineContinuation)
16646
16807
  return;
16647
16808
  return $skip;
@@ -16668,7 +16829,7 @@ ${input.slice(result.pos)}
16668
16829
  return result;
16669
16830
  }
16670
16831
  }
16671
- var CoffeeNotEnabled$0 = $TV($EXPECT($L14, fail, 'CoffeeNotEnabled ""'), function($skip, $loc, $0, $1) {
16832
+ var CoffeeNotEnabled$0 = $TV($EXPECT($L15, fail, 'CoffeeNotEnabled ""'), function($skip, $loc, $0, $1) {
16672
16833
  if (module.config.coffeeNot)
16673
16834
  return;
16674
16835
  return $skip;
@@ -16695,7 +16856,7 @@ ${input.slice(result.pos)}
16695
16856
  return result;
16696
16857
  }
16697
16858
  }
16698
- var CoffeeOfEnabled$0 = $TV($EXPECT($L14, fail, 'CoffeeOfEnabled ""'), function($skip, $loc, $0, $1) {
16859
+ var CoffeeOfEnabled$0 = $TV($EXPECT($L15, fail, 'CoffeeOfEnabled ""'), function($skip, $loc, $0, $1) {
16699
16860
  if (module.config.coffeeOf)
16700
16861
  return;
16701
16862
  return $skip;
@@ -16722,7 +16883,7 @@ ${input.slice(result.pos)}
16722
16883
  return result;
16723
16884
  }
16724
16885
  }
16725
- var CoffeePrototypeEnabled$0 = $TV($EXPECT($L14, fail, 'CoffeePrototypeEnabled ""'), function($skip, $loc, $0, $1) {
16886
+ var CoffeePrototypeEnabled$0 = $TV($EXPECT($L15, fail, 'CoffeePrototypeEnabled ""'), function($skip, $loc, $0, $1) {
16726
16887
  if (module.config.coffeePrototype)
16727
16888
  return;
16728
16889
  return $skip;
@@ -16749,7 +16910,34 @@ ${input.slice(result.pos)}
16749
16910
  return result;
16750
16911
  }
16751
16912
  }
16752
- var Reset$0 = $TV($EXPECT($L14, fail, 'Reset ""'), function($skip, $loc, $0, $1) {
16913
+ var ObjectIsEnabled$0 = $TV($EXPECT($L15, fail, 'ObjectIsEnabled ""'), function($skip, $loc, $0, $1) {
16914
+ if (module.config.objectIs)
16915
+ return;
16916
+ return $skip;
16917
+ });
16918
+ function ObjectIsEnabled(state) {
16919
+ let eventData;
16920
+ if (state.events) {
16921
+ const result = state.events.enter?.("ObjectIsEnabled", state);
16922
+ if (result) {
16923
+ if (result.cache)
16924
+ return result.cache;
16925
+ eventData = result.data;
16926
+ }
16927
+ }
16928
+ if (state.tokenize) {
16929
+ const result = $TOKEN("ObjectIsEnabled", state, ObjectIsEnabled$0(state));
16930
+ if (state.events)
16931
+ state.events.exit?.("ObjectIsEnabled", state, result, eventData);
16932
+ return result;
16933
+ } else {
16934
+ const result = ObjectIsEnabled$0(state);
16935
+ if (state.events)
16936
+ state.events.exit?.("ObjectIsEnabled", state, result, eventData);
16937
+ return result;
16938
+ }
16939
+ }
16940
+ var Reset$0 = $TV($EXPECT($L15, fail, 'Reset ""'), function($skip, $loc, $0, $1) {
16753
16941
  module.indentLevels = [{
16754
16942
  level: 0,
16755
16943
  token: ""
@@ -16797,6 +16985,7 @@ ${input.slice(result.pos)}
16797
16985
  coffeeOf: false,
16798
16986
  coffeePrototype: false,
16799
16987
  implicitReturns: true,
16988
+ objectIs: false,
16800
16989
  react: false,
16801
16990
  solid: false,
16802
16991
  client: false,
@@ -16808,6 +16997,10 @@ ${input.slice(result.pos)}
16808
16997
  ts: true,
16809
16998
  children: [" as any"]
16810
16999
  };
17000
+ module.asConst = {
17001
+ ts: true,
17002
+ children: [" as const"]
17003
+ };
16811
17004
  module.prelude = [];
16812
17005
  const declareRef = {
16813
17006
  indexOf(indexOfRef) {
@@ -16824,6 +17017,13 @@ ${input.slice(result.pos)}
16824
17017
  };
16825
17018
  module.prelude.push(["", ["const ", hasPropRef, typeSuffix, " = {}.hasOwnProperty", module.asAny, "\n"]]);
16826
17019
  },
17020
+ is(isRef) {
17021
+ const typeSuffix = {
17022
+ ts: true,
17023
+ children: [": { <B, A extends B> (a: A, b: B): b is A, <A, B> (a: A, b: B): a is A & B }"]
17024
+ };
17025
+ module.prelude.push(["", ["const ", isRef, typeSuffix, " = Object.is", module.asAny, "\n"]]);
17026
+ },
16827
17027
  modulo(moduloRef) {
16828
17028
  const typeSuffix = {
16829
17029
  ts: true,
@@ -16883,6 +17083,12 @@ ${input.slice(result.pos)}
16883
17083
  declareRef[base](ref);
16884
17084
  return refs[base] = ref;
16885
17085
  };
17086
+ module.makeAsConst = function(node) {
17087
+ if (node.type === "Literal" && node.raw !== "null" || node.type === "ArrayExpression" || node.type === "ObjectExpression") {
17088
+ return { ...node, children: [...node.children, module.asConst] };
17089
+ }
17090
+ return node;
17091
+ };
16886
17092
  module.typeOfJSX = function(node) {
16887
17093
  switch (node.type) {
16888
17094
  case "JSXElement":
@@ -16962,6 +17168,9 @@ ${input.slice(result.pos)}
16962
17168
  ]) {
16963
17169
  module.config[option] = b;
16964
17170
  }
17171
+ if (b) {
17172
+ module.config.objectIs = false;
17173
+ }
16965
17174
  }
16966
17175
  });
16967
17176
  module.modifyString = function(str) {
@@ -16998,7 +17207,7 @@ ${input.slice(result.pos)}
16998
17207
  return result;
16999
17208
  }
17000
17209
  }
17001
- var Init$0 = $TS($S($E(Shebang), $Q(DirectivePrologue), $EXPECT($L14, fail, 'Init ""')), function($skip, $loc, $0, $1, $2, $3) {
17210
+ var Init$0 = $TS($S($E(Shebang), $Q(DirectivePrologue), $EXPECT($L15, fail, 'Init ""')), function($skip, $loc, $0, $1, $2, $3) {
17002
17211
  var directives = $2;
17003
17212
  directives.forEach((directive) => {
17004
17213
  if (directive.type === "CivetPrologue") {
@@ -17305,6 +17514,10 @@ ${input.slice(result.pos)}
17305
17514
  const op = expandedOps[i];
17306
17515
  if (op.special) {
17307
17516
  let [a, wsOp, op2, wsB, b] = expandedOps.slice(i - 2, i + 3);
17517
+ if (op2.asConst) {
17518
+ a = module.makeAsConst(a);
17519
+ b = module.makeAsConst(b);
17520
+ }
17308
17521
  let children;
17309
17522
  if (op2.call) {
17310
17523
  wsOp = module.insertTrimmingSpace(wsOp, "");
@@ -18013,7 +18226,7 @@ ${input.slice(result.pos)}
18013
18226
  return result;
18014
18227
  }
18015
18228
  }
18016
- var Indent$0 = $TR($EXPECT($R57, fail, "Indent /[ \\t]*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
18229
+ var Indent$0 = $TR($EXPECT($R58, fail, "Indent /[ \\t]*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
18017
18230
  let level;
18018
18231
  if (module.config.tab) {
18019
18232
  const tabs = $0.match(/\t/g);
@@ -18168,7 +18381,7 @@ ${input.slice(result.pos)}
18168
18381
  return result;
18169
18382
  }
18170
18383
  }
18171
- var PopIndent$0 = $TV($EXPECT($L14, fail, 'PopIndent ""'), function($skip, $loc, $0, $1) {
18384
+ var PopIndent$0 = $TV($EXPECT($L15, fail, 'PopIndent ""'), function($skip, $loc, $0, $1) {
18172
18385
  if (module.config.verbose) {
18173
18386
  console.log("popping indent", module.indentLevels[module.indentLevels.length - 1], "->", module.indentLevels[module.indentLevels.length - 2]);
18174
18387
  }