@danielx/civet 0.6.27 → 0.6.29

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
@@ -1543,26 +1543,32 @@ var require_lib = __commonJS({
1543
1543
  return gatherRecursive(node, predicate, isFunction);
1544
1544
  }
1545
1545
  function insertTrimmingSpace(target, c) {
1546
- if (!target)
1546
+ if (!target) {
1547
1547
  return target;
1548
- if (Array.isArray(target))
1548
+ }
1549
+ if (Array.isArray(target)) {
1550
+ if (target.length === 0) {
1551
+ return c;
1552
+ }
1549
1553
  return target.map((e, i) => {
1550
- if (i === 0)
1554
+ if (i === 0) {
1551
1555
  return insertTrimmingSpace(e, c);
1556
+ }
1552
1557
  return e;
1553
1558
  });
1554
- if (target.children)
1555
- return Object.assign({}, target, {
1556
- children: target.children.map((e, i) => {
1557
- if (i === 0)
1558
- return insertTrimmingSpace(e, c);
1559
- return e;
1560
- })
1561
- });
1562
- if (target.token)
1563
- return Object.assign({}, target, {
1559
+ }
1560
+ if (target.children) {
1561
+ return {
1562
+ ...target,
1563
+ children: insertTrimmingSpace(target.children, c)
1564
+ };
1565
+ }
1566
+ if (target.token) {
1567
+ return {
1568
+ ...target,
1564
1569
  token: target.token.replace(/^ ?/, c)
1565
- });
1570
+ };
1571
+ }
1566
1572
  return target;
1567
1573
  }
1568
1574
  function getTrimmingSpace(target) {
@@ -2009,25 +2015,6 @@ var require_lib = __commonJS({
2009
2015
  length: assign.$loc.length + 1
2010
2016
  }
2011
2017
  };
2012
- if (decl.token.startsWith("const")) {
2013
- let exp;
2014
- if (e.type === "FunctionExpression") {
2015
- exp = e;
2016
- } else {
2017
- exp = e[1];
2018
- }
2019
- if (exp?.children?.[0]?.token?.match(/^\s+$/))
2020
- exp.children.shift();
2021
- if (id.type === "Identifier" && exp?.type === "FunctionExpression" && !exp.id) {
2022
- const i = exp.children.findIndex((c) => c?.token === "function") + 1;
2023
- exp = {
2024
- ...exp,
2025
- children: [...exp.children.slice(0, i), " ", id, suffix, ws, ...exp.children.slice(i)],
2026
- id
2027
- };
2028
- return exp;
2029
- }
2030
- }
2031
2018
  let [splices, thisAssignments] = gatherBindingCode(id);
2032
2019
  splices = splices.map((s) => [", ", s]);
2033
2020
  thisAssignments = thisAssignments.map((a) => ["", a, ";"]);
@@ -3417,8 +3404,10 @@ var require_parser = __commonJS({
3417
3404
  NonNullAssertion,
3418
3405
  MemberExpression,
3419
3406
  MemberExpressionRest,
3407
+ MemberExpressionRestBody,
3420
3408
  MemberBracketContent,
3421
3409
  SliceParameters,
3410
+ AccessStart,
3422
3411
  PropertyAccess,
3423
3412
  PropertyGlob,
3424
3413
  PropertyBind,
@@ -3531,6 +3520,7 @@ var require_parser = __commonJS({
3531
3520
  AssignmentOpSymbol,
3532
3521
  CoffeeWordAssignmentOp,
3533
3522
  NotDedentedBinaryOp,
3523
+ IdentifierBinaryOp,
3534
3524
  BinaryOp,
3535
3525
  BinaryOpSymbol,
3536
3526
  Xor,
@@ -3933,7 +3923,9 @@ var require_parser = __commonJS({
3933
3923
  CivetPrologueContent,
3934
3924
  CivetOption,
3935
3925
  UnknownPrologue,
3926
+ TripleSlashDirective,
3936
3927
  DirectivePrologue,
3928
+ PrologueString,
3937
3929
  EOS,
3938
3930
  EOL,
3939
3931
  DebugHere,
@@ -4005,193 +3997,194 @@ var require_parser = __commonJS({
4005
3997
  var $L19 = $L("import.meta");
4006
3998
  var $L20 = $L("return.value");
4007
3999
  var $L21 = $L(",");
4008
- var $L22 = $L("->");
4009
- var $L23 = $L("\u2192");
4010
- var $L24 = $L("}");
4011
- var $L25 = $L("null");
4012
- var $L26 = $L("true");
4013
- var $L27 = $L("false");
4014
- var $L28 = $L("yes");
4015
- var $L29 = $L("on");
4016
- var $L30 = $L("no");
4017
- var $L31 = $L("off");
4018
- var $L32 = $L(">");
4019
- var $L33 = $L("]");
4020
- var $L34 = $L("**=");
4021
- var $L35 = $L("*=");
4022
- var $L36 = $L("/=");
4023
- var $L37 = $L("%=");
4024
- var $L38 = $L("+=");
4025
- var $L39 = $L("-=");
4026
- var $L40 = $L("<<=");
4027
- var $L41 = $L(">>>=");
4028
- var $L42 = $L(">>=");
4029
- var $L43 = $L("&&=");
4030
- var $L44 = $L("&=");
4031
- var $L45 = $L("^=");
4032
- var $L46 = $L("||=");
4033
- var $L47 = $L("|=");
4034
- var $L48 = $L("??=");
4035
- var $L49 = $L("?=");
4036
- var $L50 = $L("and=");
4037
- var $L51 = $L("or=");
4038
- var $L52 = $L("**");
4039
- var $L53 = $L("*");
4040
- var $L54 = $L("/");
4041
- var $L55 = $L("%%");
4042
- var $L56 = $L("%");
4043
- var $L57 = $L("+");
4044
- var $L58 = $L("<=");
4045
- var $L59 = $L("\u2264");
4046
- var $L60 = $L(">=");
4047
- var $L61 = $L("\u2265");
4048
- var $L62 = $L("<?");
4049
- var $L63 = $L("!<?");
4050
- var $L64 = $L("<<");
4051
- var $L65 = $L("\xAB");
4052
- var $L66 = $L(">>>");
4053
- var $L67 = $L("\u22D9");
4054
- var $L68 = $L(">>");
4055
- var $L69 = $L("\xBB");
4056
- var $L70 = $L("!==");
4057
- var $L71 = $L("\u2262");
4058
- var $L72 = $L("!=");
4059
- var $L73 = $L("\u2260");
4060
- var $L74 = $L("isnt");
4061
- var $L75 = $L("===");
4062
- var $L76 = $L("\u2263");
4063
- var $L77 = $L("\u2A76");
4064
- var $L78 = $L("==");
4065
- var $L79 = $L("\u2261");
4066
- var $L80 = $L("\u2A75");
4067
- var $L81 = $L("and");
4068
- var $L82 = $L("&&");
4069
- var $L83 = $L("of");
4070
- var $L84 = $L("or");
4071
- var $L85 = $L("||");
4072
- var $L86 = $L("\u2016");
4073
- var $L87 = $L("^^");
4074
- var $L88 = $L("xor");
4075
- var $L89 = $L("xnor");
4076
- var $L90 = $L("??");
4077
- var $L91 = $L("\u2047");
4078
- var $L92 = $L("instanceof");
4079
- var $L93 = $L("\u2208");
4080
- var $L94 = $L("\u220B");
4081
- var $L95 = $L("\u220C");
4082
- var $L96 = $L("\u2209");
4083
- var $L97 = $L("&");
4084
- var $L98 = $L("|");
4085
- var $L99 = $L(";");
4086
- var $L100 = $L("$:");
4087
- var $L101 = $L("break");
4088
- var $L102 = $L("continue");
4089
- var $L103 = $L("debugger");
4090
- var $L104 = $L("assert");
4091
- var $L105 = $L(":=");
4092
- var $L106 = $L("\u2254");
4093
- var $L107 = $L(".=");
4094
- var $L108 = $L("/*");
4095
- var $L109 = $L("*/");
4096
- var $L110 = $L("\\");
4097
- var $L111 = $L("[");
4098
- var $L112 = $L("`");
4099
- var $L113 = $L(")");
4100
- var $L114 = $L("abstract");
4101
- var $L115 = $L("as");
4102
- var $L116 = $L("@");
4103
- var $L117 = $L("@@");
4104
- var $L118 = $L("async");
4105
- var $L119 = $L("await");
4106
- var $L120 = $L("by");
4107
- var $L121 = $L("case");
4108
- var $L122 = $L("catch");
4109
- var $L123 = $L("class");
4110
- var $L124 = $L("#{");
4111
- var $L125 = $L("declare");
4112
- var $L126 = $L("default");
4113
- var $L127 = $L("delete");
4114
- var $L128 = $L("do");
4115
- var $L129 = $L("..");
4116
- var $L130 = $L("\u2025");
4117
- var $L131 = $L("...");
4118
- var $L132 = $L("\u2026");
4119
- var $L133 = $L("::");
4120
- var $L134 = $L('"');
4121
- var $L135 = $L("each");
4122
- var $L136 = $L("else");
4123
- var $L137 = $L("export");
4124
- var $L138 = $L("extends");
4125
- var $L139 = $L("finally");
4126
- var $L140 = $L("for");
4127
- var $L141 = $L("from");
4128
- var $L142 = $L("function");
4129
- var $L143 = $L("get");
4130
- var $L144 = $L("set");
4131
- var $L145 = $L("#");
4132
- var $L146 = $L("if");
4133
- var $L147 = $L("in");
4134
- var $L148 = $L("let");
4135
- var $L149 = $L("const");
4136
- var $L150 = $L("is");
4137
- var $L151 = $L("loop");
4138
- var $L152 = $L("new");
4139
- var $L153 = $L("not");
4140
- var $L154 = $L("<");
4141
- var $L155 = $L("operator");
4142
- var $L156 = $L("own");
4143
- var $L157 = $L("public");
4144
- var $L158 = $L("private");
4145
- var $L159 = $L("protected");
4146
- var $L160 = $L("||>");
4147
- var $L161 = $L("|\u25B7");
4148
- var $L162 = $L("|>=");
4149
- var $L163 = $L("\u25B7=");
4150
- var $L164 = $L("|>");
4151
- var $L165 = $L("\u25B7");
4152
- var $L166 = $L("readonly");
4153
- var $L167 = $L("return");
4154
- var $L168 = $L("satisfies");
4155
- var $L169 = $L("'");
4156
- var $L170 = $L("static");
4157
- var $L171 = $L("${");
4158
- var $L172 = $L("super");
4159
- var $L173 = $L("switch");
4160
- var $L174 = $L("target");
4161
- var $L175 = $L("then");
4162
- var $L176 = $L("this");
4163
- var $L177 = $L("throw");
4164
- var $L178 = $L('"""');
4165
- var $L179 = $L("'''");
4166
- var $L180 = $L("///");
4167
- var $L181 = $L("```");
4168
- var $L182 = $L("try");
4169
- var $L183 = $L("typeof");
4170
- var $L184 = $L("unless");
4171
- var $L185 = $L("until");
4172
- var $L186 = $L("var");
4173
- var $L187 = $L("void");
4174
- var $L188 = $L("when");
4175
- var $L189 = $L("while");
4176
- var $L190 = $L("yield");
4177
- var $L191 = $L("/>");
4178
- var $L192 = $L("</");
4179
- var $L193 = $L("<>");
4180
- var $L194 = $L("</>");
4181
- var $L195 = $L("<!--");
4182
- var $L196 = $L("-->");
4183
- var $L197 = $L("type");
4184
- var $L198 = $L("enum");
4185
- var $L199 = $L("interface");
4186
- var $L200 = $L("global");
4187
- var $L201 = $L("module");
4188
- var $L202 = $L("namespace");
4189
- var $L203 = $L("asserts");
4190
- var $L204 = $L("keyof");
4191
- var $L205 = $L("infer");
4192
- var $L206 = $L("???");
4193
- var $L207 = $L("[]");
4194
- var $L208 = $L("civet");
4000
+ var $L22 = $L("(&)");
4001
+ var $L23 = $L("->");
4002
+ var $L24 = $L("\u2192");
4003
+ var $L25 = $L("}");
4004
+ var $L26 = $L("null");
4005
+ var $L27 = $L("true");
4006
+ var $L28 = $L("false");
4007
+ var $L29 = $L("yes");
4008
+ var $L30 = $L("on");
4009
+ var $L31 = $L("no");
4010
+ var $L32 = $L("off");
4011
+ var $L33 = $L(">");
4012
+ var $L34 = $L("]");
4013
+ var $L35 = $L("**=");
4014
+ var $L36 = $L("*=");
4015
+ var $L37 = $L("/=");
4016
+ var $L38 = $L("%=");
4017
+ var $L39 = $L("+=");
4018
+ var $L40 = $L("-=");
4019
+ var $L41 = $L("<<=");
4020
+ var $L42 = $L(">>>=");
4021
+ var $L43 = $L(">>=");
4022
+ var $L44 = $L("&&=");
4023
+ var $L45 = $L("&=");
4024
+ var $L46 = $L("^=");
4025
+ var $L47 = $L("||=");
4026
+ var $L48 = $L("|=");
4027
+ var $L49 = $L("??=");
4028
+ var $L50 = $L("?=");
4029
+ var $L51 = $L("and=");
4030
+ var $L52 = $L("or=");
4031
+ var $L53 = $L("**");
4032
+ var $L54 = $L("*");
4033
+ var $L55 = $L("/");
4034
+ var $L56 = $L("%%");
4035
+ var $L57 = $L("%");
4036
+ var $L58 = $L("+");
4037
+ var $L59 = $L("<=");
4038
+ var $L60 = $L("\u2264");
4039
+ var $L61 = $L(">=");
4040
+ var $L62 = $L("\u2265");
4041
+ var $L63 = $L("<?");
4042
+ var $L64 = $L("!<?");
4043
+ var $L65 = $L("<<");
4044
+ var $L66 = $L("\xAB");
4045
+ var $L67 = $L(">>>");
4046
+ var $L68 = $L("\u22D9");
4047
+ var $L69 = $L(">>");
4048
+ var $L70 = $L("\xBB");
4049
+ var $L71 = $L("!==");
4050
+ var $L72 = $L("\u2262");
4051
+ var $L73 = $L("!=");
4052
+ var $L74 = $L("\u2260");
4053
+ var $L75 = $L("isnt");
4054
+ var $L76 = $L("===");
4055
+ var $L77 = $L("\u2263");
4056
+ var $L78 = $L("\u2A76");
4057
+ var $L79 = $L("==");
4058
+ var $L80 = $L("\u2261");
4059
+ var $L81 = $L("\u2A75");
4060
+ var $L82 = $L("and");
4061
+ var $L83 = $L("&&");
4062
+ var $L84 = $L("of");
4063
+ var $L85 = $L("or");
4064
+ var $L86 = $L("||");
4065
+ var $L87 = $L("\u2016");
4066
+ var $L88 = $L("^^");
4067
+ var $L89 = $L("xor");
4068
+ var $L90 = $L("xnor");
4069
+ var $L91 = $L("??");
4070
+ var $L92 = $L("\u2047");
4071
+ var $L93 = $L("instanceof");
4072
+ var $L94 = $L("\u2208");
4073
+ var $L95 = $L("\u220B");
4074
+ var $L96 = $L("\u220C");
4075
+ var $L97 = $L("\u2209");
4076
+ var $L98 = $L("&");
4077
+ var $L99 = $L("|");
4078
+ var $L100 = $L(";");
4079
+ var $L101 = $L("$:");
4080
+ var $L102 = $L("break");
4081
+ var $L103 = $L("continue");
4082
+ var $L104 = $L("debugger");
4083
+ var $L105 = $L("assert");
4084
+ var $L106 = $L(":=");
4085
+ var $L107 = $L("\u2254");
4086
+ var $L108 = $L(".=");
4087
+ var $L109 = $L("/*");
4088
+ var $L110 = $L("*/");
4089
+ var $L111 = $L("\\");
4090
+ var $L112 = $L("[");
4091
+ var $L113 = $L("`");
4092
+ var $L114 = $L(")");
4093
+ var $L115 = $L("abstract");
4094
+ var $L116 = $L("as");
4095
+ var $L117 = $L("@");
4096
+ var $L118 = $L("@@");
4097
+ var $L119 = $L("async");
4098
+ var $L120 = $L("await");
4099
+ var $L121 = $L("by");
4100
+ var $L122 = $L("case");
4101
+ var $L123 = $L("catch");
4102
+ var $L124 = $L("class");
4103
+ var $L125 = $L("#{");
4104
+ var $L126 = $L("declare");
4105
+ var $L127 = $L("default");
4106
+ var $L128 = $L("delete");
4107
+ var $L129 = $L("do");
4108
+ var $L130 = $L("..");
4109
+ var $L131 = $L("\u2025");
4110
+ var $L132 = $L("...");
4111
+ var $L133 = $L("\u2026");
4112
+ var $L134 = $L("::");
4113
+ var $L135 = $L('"');
4114
+ var $L136 = $L("each");
4115
+ var $L137 = $L("else");
4116
+ var $L138 = $L("export");
4117
+ var $L139 = $L("extends");
4118
+ var $L140 = $L("finally");
4119
+ var $L141 = $L("for");
4120
+ var $L142 = $L("from");
4121
+ var $L143 = $L("function");
4122
+ var $L144 = $L("get");
4123
+ var $L145 = $L("set");
4124
+ var $L146 = $L("#");
4125
+ var $L147 = $L("if");
4126
+ var $L148 = $L("in");
4127
+ var $L149 = $L("let");
4128
+ var $L150 = $L("const");
4129
+ var $L151 = $L("is");
4130
+ var $L152 = $L("loop");
4131
+ var $L153 = $L("new");
4132
+ var $L154 = $L("not");
4133
+ var $L155 = $L("<");
4134
+ var $L156 = $L("operator");
4135
+ var $L157 = $L("own");
4136
+ var $L158 = $L("public");
4137
+ var $L159 = $L("private");
4138
+ var $L160 = $L("protected");
4139
+ var $L161 = $L("||>");
4140
+ var $L162 = $L("|\u25B7");
4141
+ var $L163 = $L("|>=");
4142
+ var $L164 = $L("\u25B7=");
4143
+ var $L165 = $L("|>");
4144
+ var $L166 = $L("\u25B7");
4145
+ var $L167 = $L("readonly");
4146
+ var $L168 = $L("return");
4147
+ var $L169 = $L("satisfies");
4148
+ var $L170 = $L("'");
4149
+ var $L171 = $L("static");
4150
+ var $L172 = $L("${");
4151
+ var $L173 = $L("super");
4152
+ var $L174 = $L("switch");
4153
+ var $L175 = $L("target");
4154
+ var $L176 = $L("then");
4155
+ var $L177 = $L("this");
4156
+ var $L178 = $L("throw");
4157
+ var $L179 = $L('"""');
4158
+ var $L180 = $L("'''");
4159
+ var $L181 = $L("///");
4160
+ var $L182 = $L("```");
4161
+ var $L183 = $L("try");
4162
+ var $L184 = $L("typeof");
4163
+ var $L185 = $L("unless");
4164
+ var $L186 = $L("until");
4165
+ var $L187 = $L("var");
4166
+ var $L188 = $L("void");
4167
+ var $L189 = $L("when");
4168
+ var $L190 = $L("while");
4169
+ var $L191 = $L("yield");
4170
+ var $L192 = $L("/>");
4171
+ var $L193 = $L("</");
4172
+ var $L194 = $L("<>");
4173
+ var $L195 = $L("</>");
4174
+ var $L196 = $L("<!--");
4175
+ var $L197 = $L("-->");
4176
+ var $L198 = $L("type");
4177
+ var $L199 = $L("enum");
4178
+ var $L200 = $L("interface");
4179
+ var $L201 = $L("global");
4180
+ var $L202 = $L("module");
4181
+ var $L203 = $L("namespace");
4182
+ var $L204 = $L("asserts");
4183
+ var $L205 = $L("keyof");
4184
+ var $L206 = $L("infer");
4185
+ var $L207 = $L("???");
4186
+ var $L208 = $L("[]");
4187
+ var $L209 = $L("civet");
4195
4188
  var $R0 = $R(new RegExp("(as|of|satisfies|then|when|implements|xor|xnor)(?!\\p{ID_Continue}|[\\u200C\\u200D$])", "suy"));
4196
4189
  var $R1 = $R(new RegExp("[0-9]", "suy"));
4197
4190
  var $R2 = $R(new RegExp("[)}]", "suy"));
@@ -4257,8 +4250,9 @@ var require_parser = __commonJS({
4257
4250
  var $R62 = $R(new RegExp("[\\t ]*", "suy"));
4258
4251
  var $R63 = $R(new RegExp("[\\s]*", "suy"));
4259
4252
  var $R64 = $R(new RegExp("\\s+([+-]?)([a-zA-Z0-9-]+)(\\s*=\\s*([a-zA-Z0-9.+-]*))?", "suy"));
4260
- var $R65 = $R(new RegExp("\\r\\n|\\n|\\r|$", "suy"));
4261
- var $R66 = $R(new RegExp("[ \\t]*", "suy"));
4253
+ var $R65 = $R(new RegExp("\\/\\/\\/[^\\r\\n]*", "suy"));
4254
+ var $R66 = $R(new RegExp("\\r\\n|\\n|\\r|$", "suy"));
4255
+ var $R67 = $R(new RegExp("[ \\t]*", "suy"));
4262
4256
  var Program$0 = $TS($S(Reset, Init, $E(EOS), TopLevelStatements, __), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
4263
4257
  var statements = $4;
4264
4258
  processProgram({
@@ -4437,7 +4431,7 @@ var require_parser = __commonJS({
4437
4431
  function ExplicitArguments(ctx, state) {
4438
4432
  return $EVENT(ctx, state, "ExplicitArguments", ExplicitArguments$0);
4439
4433
  }
4440
- var ApplicationStart$0 = $S(IndentedApplicationAllowed, $Y(NestedImplicitObjectLiteral));
4434
+ var ApplicationStart$0 = $S(IndentedApplicationAllowed, $Y($S(IndentedFurther, $N(IdentifierBinaryOp), $N(AccessStart))));
4441
4435
  var ApplicationStart$1 = $S($N(EOS), $Y($S(_, $C(BracedApplicationAllowed, $N($EXPECT($L1, 'ApplicationStart "{"'))), $N(ForbiddenImplicitCalls))));
4442
4436
  var ApplicationStart$$ = [ApplicationStart$0, ApplicationStart$1];
4443
4437
  function ApplicationStart(ctx, state) {
@@ -5220,7 +5214,7 @@ var require_parser = __commonJS({
5220
5214
  function CallExpressionRest(ctx, state) {
5221
5215
  return $EVENT_C(ctx, state, "CallExpressionRest", CallExpressionRest$$);
5222
5216
  }
5223
- var OptionalShorthand$0 = $TS($S(QuestionMark, OptionalDot), function($skip, $loc, $0, $1, $2) {
5217
+ var OptionalShorthand$0 = $TS($S($Q(MultiLineComment), QuestionMark, OptionalDot), function($skip, $loc, $0, $1, $2, $3) {
5224
5218
  return {
5225
5219
  type: "Optional",
5226
5220
  children: $0
@@ -5229,8 +5223,8 @@ var require_parser = __commonJS({
5229
5223
  function OptionalShorthand(ctx, state) {
5230
5224
  return $EVENT(ctx, state, "OptionalShorthand", OptionalShorthand$0);
5231
5225
  }
5232
- var OptionalDot$0 = Dot;
5233
- var OptionalDot$1 = InsertDot;
5226
+ var OptionalDot$0 = $S($Q(MultiLineComment), Dot);
5227
+ var OptionalDot$1 = $S(InsertDot, $Q(MultiLineComment));
5234
5228
  var OptionalDot$$ = [OptionalDot$0, OptionalDot$1];
5235
5229
  function OptionalDot(ctx, state) {
5236
5230
  return $EVENT_C(ctx, state, "OptionalDot", OptionalDot$$);
@@ -5254,22 +5248,38 @@ var require_parser = __commonJS({
5254
5248
  function MemberExpression(ctx, state) {
5255
5249
  return $EVENT(ctx, state, "MemberExpression", MemberExpression$0);
5256
5250
  }
5257
- var MemberExpressionRest$0 = $TS($S($E($C(OptionalShorthand, NonNullAssertion)), MemberBracketContent), function($skip, $loc, $0, $1, $2) {
5258
- if ($1) {
5259
- if ($1.type === "Optional" && $2.type === "SliceExpression") {
5260
- return [$1.children[0], $2];
5251
+ var MemberExpressionRest$0 = $TS($S($Q(MultiLineComment), MemberExpressionRestBody), function($skip, $loc, $0, $1, $2) {
5252
+ var comments = $1;
5253
+ var body = $2;
5254
+ if (Array.isArray(body))
5255
+ return [...comments, ...body];
5256
+ return {
5257
+ ...body,
5258
+ children: [...comments, ...body.children]
5259
+ };
5260
+ });
5261
+ function MemberExpressionRest(ctx, state) {
5262
+ return $EVENT(ctx, state, "MemberExpressionRest", MemberExpressionRest$0);
5263
+ }
5264
+ var MemberExpressionRestBody$0 = $TS($S($E($C(OptionalShorthand, NonNullAssertion)), $Q(MultiLineComment), MemberBracketContent), function($skip, $loc, $0, $1, $2, $3) {
5265
+ var dot = $1;
5266
+ var comments = $2;
5267
+ var content = $3;
5268
+ if (dot) {
5269
+ if (dot.type === "Optional" && content.type === "SliceExpression") {
5270
+ return [...dot.children.slice(0, -1), ...comments, content];
5261
5271
  }
5262
5272
  return $0.flat();
5263
5273
  }
5264
- return $2;
5274
+ return content;
5265
5275
  });
5266
- var MemberExpressionRest$1 = PropertyAccess;
5267
- var MemberExpressionRest$2 = PropertyGlob;
5268
- var MemberExpressionRest$3 = PropertyBind;
5269
- var MemberExpressionRest$4 = NonNullAssertion;
5270
- var MemberExpressionRest$$ = [MemberExpressionRest$0, MemberExpressionRest$1, MemberExpressionRest$2, MemberExpressionRest$3, MemberExpressionRest$4];
5271
- function MemberExpressionRest(ctx, state) {
5272
- return $EVENT_C(ctx, state, "MemberExpressionRest", MemberExpressionRest$$);
5276
+ var MemberExpressionRestBody$1 = PropertyAccess;
5277
+ var MemberExpressionRestBody$2 = PropertyGlob;
5278
+ var MemberExpressionRestBody$3 = PropertyBind;
5279
+ var MemberExpressionRestBody$4 = NonNullAssertion;
5280
+ var MemberExpressionRestBody$$ = [MemberExpressionRestBody$0, MemberExpressionRestBody$1, MemberExpressionRestBody$2, MemberExpressionRestBody$3, MemberExpressionRestBody$4];
5281
+ function MemberExpressionRestBody(ctx, state) {
5282
+ return $EVENT_C(ctx, state, "MemberExpressionRestBody", MemberExpressionRestBody$$);
5273
5283
  }
5274
5284
  var MemberBracketContent$0 = $TS($S(OpenBracket, $C(SliceParameters, PostfixedExpression), __, CloseBracket), function($skip, $loc, $0, $1, $2, $3, $4) {
5275
5285
  var open = $1;
@@ -5400,11 +5410,19 @@ var require_parser = __commonJS({
5400
5410
  function SliceParameters(ctx, state) {
5401
5411
  return $EVENT_C(ctx, state, "SliceParameters", SliceParameters$$);
5402
5412
  }
5403
- var PropertyAccess$0 = $TS($S($E($C(QuestionMark, NonNullAssertion)), Dot, $C(IdentifierName, PrivateIdentifier)), function($skip, $loc, $0, $1, $2, $3) {
5404
- var id = $3;
5405
- const children = [$2, ...id.children];
5413
+ var AccessStart$0 = $TS($S($E($C(QuestionMark, NonNullAssertion)), Dot, $N(Dot)), function($skip, $loc, $0, $1, $2, $3) {
5406
5414
  if ($1)
5407
- children.unshift($1);
5415
+ return [$1, $2];
5416
+ return $2;
5417
+ });
5418
+ function AccessStart(ctx, state) {
5419
+ return $EVENT(ctx, state, "AccessStart", AccessStart$0);
5420
+ }
5421
+ var PropertyAccess$0 = $TS($S(AccessStart, $Q(MultiLineComment), $C(IdentifierName, PrivateIdentifier)), function($skip, $loc, $0, $1, $2, $3) {
5422
+ var access = $1;
5423
+ var comments = $2;
5424
+ var id = $3;
5425
+ const children = [access, ...comments, ...id.children];
5408
5426
  return {
5409
5427
  type: "PropertyAccess",
5410
5428
  name: id.name,
@@ -5415,19 +5433,26 @@ var require_parser = __commonJS({
5415
5433
  var p = $2;
5416
5434
  var id = $3;
5417
5435
  if (id) {
5418
- p.token = ".prototype.";
5419
- return [p, id];
5436
+ return {
5437
+ type: "PropertyAccess",
5438
+ name: id.name,
5439
+ children: [{ token: ".prototype.", $loc: p.$loc }, id]
5440
+ };
5441
+ } else {
5442
+ return {
5443
+ type: "PropertyAccess",
5444
+ name: "prototype",
5445
+ children: [{ token: ".prototype", $loc: p.$loc }]
5446
+ };
5420
5447
  }
5421
- p.token = ".prototype";
5422
- return p;
5423
5448
  });
5424
5449
  var PropertyAccess$$ = [PropertyAccess$0, PropertyAccess$1];
5425
5450
  function PropertyAccess(ctx, state) {
5426
5451
  return $EVENT_C(ctx, state, "PropertyAccess", PropertyAccess$$);
5427
5452
  }
5428
- var PropertyGlob$0 = $TS($S(OptionalDot, BracedObjectLiteral), function($skip, $loc, $0, $1, $2) {
5453
+ var PropertyGlob$0 = $TS($S(OptionalDot, $Q(MultiLineComment), BracedObjectLiteral), function($skip, $loc, $0, $1, $2, $3) {
5429
5454
  var dot = $1;
5430
- var object = $2;
5455
+ var object = $3;
5431
5456
  return {
5432
5457
  type: "PropertyGlob",
5433
5458
  dot,
@@ -5971,8 +5996,29 @@ var require_parser = __commonJS({
5971
5996
  block
5972
5997
  };
5973
5998
  });
5974
- var FunctionExpression$1 = AmpersandFunctionExpression;
5975
- var FunctionExpression$$ = [FunctionExpression$0, FunctionExpression$1];
5999
+ var FunctionExpression$1 = $TV($EXPECT($L22, 'FunctionExpression "(&)"'), function($skip, $loc, $0, $1) {
6000
+ const ref = makeRef("$"), body = [ref];
6001
+ return {
6002
+ type: "ArrowFunction",
6003
+ children: [ref, " => ", body],
6004
+ ref,
6005
+ body,
6006
+ ampersandBlock: true
6007
+ };
6008
+ });
6009
+ var FunctionExpression$2 = AmpersandFunctionExpression;
6010
+ var FunctionExpression$3 = $TS($S(Identifier, __, ConstAssignment, $Q(_), ThinArrowFunction), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
6011
+ var id = $1;
6012
+ var ws = $4;
6013
+ var fn = $5;
6014
+ debugger;
6015
+ return {
6016
+ ...fn,
6017
+ id,
6018
+ children: [...fn.children.slice(0, 2), insertTrimmingSpace(ws, " "), id, ...fn.children.slice(2)]
6019
+ };
6020
+ });
6021
+ var FunctionExpression$$ = [FunctionExpression$0, FunctionExpression$1, FunctionExpression$2, FunctionExpression$3];
5976
6022
  function FunctionExpression(ctx, state) {
5977
6023
  return $EVENT_C(ctx, state, "FunctionExpression", FunctionExpression$$);
5978
6024
  }
@@ -6151,7 +6197,7 @@ var require_parser = __commonJS({
6151
6197
  function ThinArrowFunction(ctx, state) {
6152
6198
  return $EVENT(ctx, state, "ThinArrowFunction", ThinArrowFunction$0);
6153
6199
  }
6154
- var Arrow$0 = $TV($C($EXPECT($L22, 'Arrow "->"'), $EXPECT($L23, 'Arrow "\u2192"')), function($skip, $loc, $0, $1) {
6200
+ var Arrow$0 = $TV($C($EXPECT($L23, 'Arrow "->"'), $EXPECT($L24, 'Arrow "\u2192"')), function($skip, $loc, $0, $1) {
6155
6201
  return { $loc, token: "->" };
6156
6202
  });
6157
6203
  function Arrow(ctx, state) {
@@ -6384,7 +6430,7 @@ var require_parser = __commonJS({
6384
6430
  }
6385
6431
  var BracedContent$0 = NestedBlockStatements;
6386
6432
  var BracedContent$1 = SingleLineStatements;
6387
- var BracedContent$2 = $TV($Y($S(__, $EXPECT($L24, 'BracedContent "}"'))), function($skip, $loc, $0, $1) {
6433
+ var BracedContent$2 = $TV($Y($S(__, $EXPECT($L25, 'BracedContent "}"'))), function($skip, $loc, $0, $1) {
6388
6434
  const expressions = [];
6389
6435
  return {
6390
6436
  type: "BlockStatement",
@@ -6453,7 +6499,7 @@ var require_parser = __commonJS({
6453
6499
  function LiteralContent(ctx, state) {
6454
6500
  return $EVENT_C(ctx, state, "LiteralContent", LiteralContent$$);
6455
6501
  }
6456
- var NullLiteral$0 = $TS($S($EXPECT($L25, 'NullLiteral "null"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6502
+ var NullLiteral$0 = $TS($S($EXPECT($L26, 'NullLiteral "null"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6457
6503
  return { $loc, token: $1 };
6458
6504
  });
6459
6505
  function NullLiteral(ctx, state) {
@@ -6462,17 +6508,17 @@ var require_parser = __commonJS({
6462
6508
  var BooleanLiteral$0 = $T($S(CoffeeBooleansEnabled, CoffeeScriptBooleanLiteral), function(value) {
6463
6509
  return value[1];
6464
6510
  });
6465
- var BooleanLiteral$1 = $TS($S($C($EXPECT($L26, 'BooleanLiteral "true"'), $EXPECT($L27, 'BooleanLiteral "false"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6511
+ var BooleanLiteral$1 = $TS($S($C($EXPECT($L27, 'BooleanLiteral "true"'), $EXPECT($L28, 'BooleanLiteral "false"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6466
6512
  return { $loc, token: $1 };
6467
6513
  });
6468
6514
  var BooleanLiteral$$ = [BooleanLiteral$0, BooleanLiteral$1];
6469
6515
  function BooleanLiteral(ctx, state) {
6470
6516
  return $EVENT_C(ctx, state, "BooleanLiteral", BooleanLiteral$$);
6471
6517
  }
6472
- var CoffeeScriptBooleanLiteral$0 = $TS($S($C($EXPECT($L28, 'CoffeeScriptBooleanLiteral "yes"'), $EXPECT($L29, 'CoffeeScriptBooleanLiteral "on"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6518
+ var CoffeeScriptBooleanLiteral$0 = $TS($S($C($EXPECT($L29, 'CoffeeScriptBooleanLiteral "yes"'), $EXPECT($L30, 'CoffeeScriptBooleanLiteral "on"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6473
6519
  return { $loc, token: "true" };
6474
6520
  });
6475
- var CoffeeScriptBooleanLiteral$1 = $TS($S($C($EXPECT($L30, 'CoffeeScriptBooleanLiteral "no"'), $EXPECT($L31, 'CoffeeScriptBooleanLiteral "off"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6521
+ var CoffeeScriptBooleanLiteral$1 = $TS($S($C($EXPECT($L31, 'CoffeeScriptBooleanLiteral "no"'), $EXPECT($L32, 'CoffeeScriptBooleanLiteral "off"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6476
6522
  return { $loc, token: "false" };
6477
6523
  });
6478
6524
  var CoffeeScriptBooleanLiteral$$ = [CoffeeScriptBooleanLiteral$0, CoffeeScriptBooleanLiteral$1];
@@ -6503,7 +6549,7 @@ var require_parser = __commonJS({
6503
6549
  function IdentifierReference(ctx, state) {
6504
6550
  return $EVENT(ctx, state, "IdentifierReference", IdentifierReference$0);
6505
6551
  }
6506
- var UpcomingAssignment$0 = $Y($S(__, $EXPECT($L3, 'UpcomingAssignment "="'), $N($C($EXPECT($L3, 'UpcomingAssignment "="'), $EXPECT($L32, 'UpcomingAssignment ">"')))));
6552
+ var UpcomingAssignment$0 = $Y($S(__, $EXPECT($L3, 'UpcomingAssignment "="'), $N($C($EXPECT($L3, 'UpcomingAssignment "="'), $EXPECT($L33, 'UpcomingAssignment ">"')))));
6507
6553
  function UpcomingAssignment(ctx, state) {
6508
6554
  return $EVENT(ctx, state, "UpcomingAssignment", UpcomingAssignment$0);
6509
6555
  }
@@ -6655,7 +6701,7 @@ var require_parser = __commonJS({
6655
6701
  return $EVENT(ctx, state, "NestedElement", NestedElement$0);
6656
6702
  }
6657
6703
  var ArrayElementDelimiter$0 = $S(__, Comma);
6658
- var ArrayElementDelimiter$1 = $Y($S(__, $EXPECT($L33, 'ArrayElementDelimiter "]"')));
6704
+ var ArrayElementDelimiter$1 = $Y($S(__, $EXPECT($L34, 'ArrayElementDelimiter "]"')));
6659
6705
  var ArrayElementDelimiter$2 = $T($S($Y(EOS), InsertComma), function(value) {
6660
6706
  return value[1];
6661
6707
  });
@@ -6767,6 +6813,8 @@ var require_parser = __commonJS({
6767
6813
  line = line.flatMap(([prop, delim]) => {
6768
6814
  prop = Array.isArray(prop) ? prop : [prop];
6769
6815
  let last = prop[prop.length - 1];
6816
+ if (!last)
6817
+ return [];
6770
6818
  last = {
6771
6819
  ...last,
6772
6820
  delim,
@@ -6881,7 +6929,7 @@ var require_parser = __commonJS({
6881
6929
  return $EVENT_C(ctx, state, "ImplicitInlineObjectPropertyDelimiter", ImplicitInlineObjectPropertyDelimiter$$);
6882
6930
  }
6883
6931
  var ObjectPropertyDelimiter$0 = $S($E(_), Comma);
6884
- var ObjectPropertyDelimiter$1 = $Y($S(__, $EXPECT($L24, 'ObjectPropertyDelimiter "}"')));
6932
+ var ObjectPropertyDelimiter$1 = $Y($S(__, $EXPECT($L25, 'ObjectPropertyDelimiter "}"')));
6885
6933
  var ObjectPropertyDelimiter$2 = $T($S($Y(EOS), InsertComma), function(value) {
6886
6934
  return value[1];
6887
6935
  });
@@ -7293,22 +7341,22 @@ var require_parser = __commonJS({
7293
7341
  function OperatorAssignmentOp(ctx, state) {
7294
7342
  return $EVENT_C(ctx, state, "OperatorAssignmentOp", OperatorAssignmentOp$$);
7295
7343
  }
7296
- var AssignmentOpSymbol$0 = $EXPECT($L34, 'AssignmentOpSymbol "**="');
7297
- var AssignmentOpSymbol$1 = $EXPECT($L35, 'AssignmentOpSymbol "*="');
7298
- var AssignmentOpSymbol$2 = $EXPECT($L36, 'AssignmentOpSymbol "/="');
7299
- var AssignmentOpSymbol$3 = $EXPECT($L37, 'AssignmentOpSymbol "%="');
7300
- var AssignmentOpSymbol$4 = $EXPECT($L38, 'AssignmentOpSymbol "+="');
7301
- var AssignmentOpSymbol$5 = $EXPECT($L39, 'AssignmentOpSymbol "-="');
7302
- var AssignmentOpSymbol$6 = $EXPECT($L40, 'AssignmentOpSymbol "<<="');
7303
- var AssignmentOpSymbol$7 = $EXPECT($L41, 'AssignmentOpSymbol ">>>="');
7304
- var AssignmentOpSymbol$8 = $EXPECT($L42, 'AssignmentOpSymbol ">>="');
7305
- var AssignmentOpSymbol$9 = $EXPECT($L43, 'AssignmentOpSymbol "&&="');
7306
- var AssignmentOpSymbol$10 = $EXPECT($L44, 'AssignmentOpSymbol "&="');
7307
- var AssignmentOpSymbol$11 = $EXPECT($L45, 'AssignmentOpSymbol "^="');
7308
- var AssignmentOpSymbol$12 = $EXPECT($L46, 'AssignmentOpSymbol "||="');
7309
- var AssignmentOpSymbol$13 = $EXPECT($L47, 'AssignmentOpSymbol "|="');
7310
- var AssignmentOpSymbol$14 = $EXPECT($L48, 'AssignmentOpSymbol "??="');
7311
- var AssignmentOpSymbol$15 = $T($EXPECT($L49, 'AssignmentOpSymbol "?="'), function(value) {
7344
+ var AssignmentOpSymbol$0 = $EXPECT($L35, 'AssignmentOpSymbol "**="');
7345
+ var AssignmentOpSymbol$1 = $EXPECT($L36, 'AssignmentOpSymbol "*="');
7346
+ var AssignmentOpSymbol$2 = $EXPECT($L37, 'AssignmentOpSymbol "/="');
7347
+ var AssignmentOpSymbol$3 = $EXPECT($L38, 'AssignmentOpSymbol "%="');
7348
+ var AssignmentOpSymbol$4 = $EXPECT($L39, 'AssignmentOpSymbol "+="');
7349
+ var AssignmentOpSymbol$5 = $EXPECT($L40, 'AssignmentOpSymbol "-="');
7350
+ var AssignmentOpSymbol$6 = $EXPECT($L41, 'AssignmentOpSymbol "<<="');
7351
+ var AssignmentOpSymbol$7 = $EXPECT($L42, 'AssignmentOpSymbol ">>>="');
7352
+ var AssignmentOpSymbol$8 = $EXPECT($L43, 'AssignmentOpSymbol ">>="');
7353
+ var AssignmentOpSymbol$9 = $EXPECT($L44, 'AssignmentOpSymbol "&&="');
7354
+ var AssignmentOpSymbol$10 = $EXPECT($L45, 'AssignmentOpSymbol "&="');
7355
+ var AssignmentOpSymbol$11 = $EXPECT($L46, 'AssignmentOpSymbol "^="');
7356
+ var AssignmentOpSymbol$12 = $EXPECT($L47, 'AssignmentOpSymbol "||="');
7357
+ var AssignmentOpSymbol$13 = $EXPECT($L48, 'AssignmentOpSymbol "|="');
7358
+ var AssignmentOpSymbol$14 = $EXPECT($L49, 'AssignmentOpSymbol "??="');
7359
+ var AssignmentOpSymbol$15 = $T($EXPECT($L50, 'AssignmentOpSymbol "?="'), function(value) {
7312
7360
  return "??=";
7313
7361
  });
7314
7362
  var AssignmentOpSymbol$16 = $T($S($EXPECT($L3, 'AssignmentOpSymbol "="'), $N($EXPECT($L3, 'AssignmentOpSymbol "="'))), function(value) {
@@ -7321,10 +7369,10 @@ var require_parser = __commonJS({
7321
7369
  function AssignmentOpSymbol(ctx, state) {
7322
7370
  return $EVENT_C(ctx, state, "AssignmentOpSymbol", AssignmentOpSymbol$$);
7323
7371
  }
7324
- var CoffeeWordAssignmentOp$0 = $T($EXPECT($L50, 'CoffeeWordAssignmentOp "and="'), function(value) {
7372
+ var CoffeeWordAssignmentOp$0 = $T($EXPECT($L51, 'CoffeeWordAssignmentOp "and="'), function(value) {
7325
7373
  return "&&=";
7326
7374
  });
7327
- var CoffeeWordAssignmentOp$1 = $T($EXPECT($L51, 'CoffeeWordAssignmentOp "or="'), function(value) {
7375
+ var CoffeeWordAssignmentOp$1 = $T($EXPECT($L52, 'CoffeeWordAssignmentOp "or="'), function(value) {
7328
7376
  return "||=";
7329
7377
  });
7330
7378
  var CoffeeWordAssignmentOp$$ = [CoffeeWordAssignmentOp$0, CoffeeWordAssignmentOp$1];
@@ -7349,6 +7397,15 @@ var require_parser = __commonJS({
7349
7397
  function NotDedentedBinaryOp(ctx, state) {
7350
7398
  return $EVENT_C(ctx, state, "NotDedentedBinaryOp", NotDedentedBinaryOp$$);
7351
7399
  }
7400
+ var IdentifierBinaryOp$0 = $TV(Identifier, function($skip, $loc, $0, $1) {
7401
+ var id = $0;
7402
+ if (module.operators.has(id.name))
7403
+ return id;
7404
+ return $skip;
7405
+ });
7406
+ function IdentifierBinaryOp(ctx, state) {
7407
+ return $EVENT(ctx, state, "IdentifierBinaryOp", IdentifierBinaryOp$0);
7408
+ }
7352
7409
  var BinaryOp$0 = $TS($S(BinaryOpSymbol), function($skip, $loc, $0, $1) {
7353
7410
  if (typeof $1 === "string")
7354
7411
  return { $loc, token: $1 };
@@ -7377,27 +7434,27 @@ var require_parser = __commonJS({
7377
7434
  function BinaryOp(ctx, state) {
7378
7435
  return $EVENT_C(ctx, state, "BinaryOp", BinaryOp$$);
7379
7436
  }
7380
- var BinaryOpSymbol$0 = $EXPECT($L52, 'BinaryOpSymbol "**"');
7381
- var BinaryOpSymbol$1 = $EXPECT($L53, 'BinaryOpSymbol "*"');
7382
- var BinaryOpSymbol$2 = $EXPECT($L54, 'BinaryOpSymbol "/"');
7383
- var BinaryOpSymbol$3 = $TV($EXPECT($L55, 'BinaryOpSymbol "%%"'), function($skip, $loc, $0, $1) {
7437
+ var BinaryOpSymbol$0 = $EXPECT($L53, 'BinaryOpSymbol "**"');
7438
+ var BinaryOpSymbol$1 = $EXPECT($L54, 'BinaryOpSymbol "*"');
7439
+ var BinaryOpSymbol$2 = $EXPECT($L55, 'BinaryOpSymbol "/"');
7440
+ var BinaryOpSymbol$3 = $TV($EXPECT($L56, 'BinaryOpSymbol "%%"'), function($skip, $loc, $0, $1) {
7384
7441
  return {
7385
7442
  call: module.getRef("modulo"),
7386
7443
  special: true
7387
7444
  };
7388
7445
  });
7389
- var BinaryOpSymbol$4 = $EXPECT($L56, 'BinaryOpSymbol "%"');
7390
- var BinaryOpSymbol$5 = $EXPECT($L57, 'BinaryOpSymbol "+"');
7446
+ var BinaryOpSymbol$4 = $EXPECT($L57, 'BinaryOpSymbol "%"');
7447
+ var BinaryOpSymbol$5 = $EXPECT($L58, 'BinaryOpSymbol "+"');
7391
7448
  var BinaryOpSymbol$6 = $EXPECT($L18, 'BinaryOpSymbol "-"');
7392
- var BinaryOpSymbol$7 = $EXPECT($L58, 'BinaryOpSymbol "<="');
7393
- var BinaryOpSymbol$8 = $T($EXPECT($L59, 'BinaryOpSymbol "\u2264"'), function(value) {
7449
+ var BinaryOpSymbol$7 = $EXPECT($L59, 'BinaryOpSymbol "<="');
7450
+ var BinaryOpSymbol$8 = $T($EXPECT($L60, 'BinaryOpSymbol "\u2264"'), function(value) {
7394
7451
  return "<=";
7395
7452
  });
7396
- var BinaryOpSymbol$9 = $EXPECT($L60, 'BinaryOpSymbol ">="');
7397
- var BinaryOpSymbol$10 = $T($EXPECT($L61, 'BinaryOpSymbol "\u2265"'), function(value) {
7453
+ var BinaryOpSymbol$9 = $EXPECT($L61, 'BinaryOpSymbol ">="');
7454
+ var BinaryOpSymbol$10 = $T($EXPECT($L62, 'BinaryOpSymbol "\u2265"'), function(value) {
7398
7455
  return ">=";
7399
7456
  });
7400
- var BinaryOpSymbol$11 = $TV($EXPECT($L62, 'BinaryOpSymbol "<?"'), function($skip, $loc, $0, $1) {
7457
+ var BinaryOpSymbol$11 = $TV($EXPECT($L63, 'BinaryOpSymbol "<?"'), function($skip, $loc, $0, $1) {
7401
7458
  return {
7402
7459
  $loc,
7403
7460
  token: "instanceof",
@@ -7405,7 +7462,7 @@ var require_parser = __commonJS({
7405
7462
  special: true
7406
7463
  };
7407
7464
  });
7408
- var BinaryOpSymbol$12 = $TV($EXPECT($L63, 'BinaryOpSymbol "!<?"'), function($skip, $loc, $0, $1) {
7465
+ var BinaryOpSymbol$12 = $TV($EXPECT($L64, 'BinaryOpSymbol "!<?"'), function($skip, $loc, $0, $1) {
7409
7466
  return {
7410
7467
  $loc,
7411
7468
  token: "instanceof",
@@ -7414,79 +7471,79 @@ var require_parser = __commonJS({
7414
7471
  negated: true
7415
7472
  };
7416
7473
  });
7417
- var BinaryOpSymbol$13 = $EXPECT($L64, 'BinaryOpSymbol "<<"');
7418
- var BinaryOpSymbol$14 = $T($EXPECT($L65, 'BinaryOpSymbol "\xAB"'), function(value) {
7474
+ var BinaryOpSymbol$13 = $EXPECT($L65, 'BinaryOpSymbol "<<"');
7475
+ var BinaryOpSymbol$14 = $T($EXPECT($L66, 'BinaryOpSymbol "\xAB"'), function(value) {
7419
7476
  return "<<";
7420
7477
  });
7421
7478
  var BinaryOpSymbol$15 = $TR($EXPECT($R7, "BinaryOpSymbol /<(?!\\p{ID_Start}|[_$])/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
7422
7479
  return "<";
7423
7480
  });
7424
- var BinaryOpSymbol$16 = $EXPECT($L66, 'BinaryOpSymbol ">>>"');
7425
- var BinaryOpSymbol$17 = $T($EXPECT($L67, 'BinaryOpSymbol "\u22D9"'), function(value) {
7481
+ var BinaryOpSymbol$16 = $EXPECT($L67, 'BinaryOpSymbol ">>>"');
7482
+ var BinaryOpSymbol$17 = $T($EXPECT($L68, 'BinaryOpSymbol "\u22D9"'), function(value) {
7426
7483
  return ">>>";
7427
7484
  });
7428
- var BinaryOpSymbol$18 = $EXPECT($L68, 'BinaryOpSymbol ">>"');
7429
- var BinaryOpSymbol$19 = $T($EXPECT($L69, 'BinaryOpSymbol "\xBB"'), function(value) {
7485
+ var BinaryOpSymbol$18 = $EXPECT($L69, 'BinaryOpSymbol ">>"');
7486
+ var BinaryOpSymbol$19 = $T($EXPECT($L70, 'BinaryOpSymbol "\xBB"'), function(value) {
7430
7487
  return ">>";
7431
7488
  });
7432
- var BinaryOpSymbol$20 = $EXPECT($L32, 'BinaryOpSymbol ">"');
7433
- var BinaryOpSymbol$21 = $EXPECT($L70, 'BinaryOpSymbol "!=="');
7434
- var BinaryOpSymbol$22 = $T($EXPECT($L71, 'BinaryOpSymbol "\u2262"'), function(value) {
7489
+ var BinaryOpSymbol$20 = $EXPECT($L33, 'BinaryOpSymbol ">"');
7490
+ var BinaryOpSymbol$21 = $EXPECT($L71, 'BinaryOpSymbol "!=="');
7491
+ var BinaryOpSymbol$22 = $T($EXPECT($L72, 'BinaryOpSymbol "\u2262"'), function(value) {
7435
7492
  return "!==";
7436
7493
  });
7437
- var BinaryOpSymbol$23 = $TV($C($EXPECT($L72, 'BinaryOpSymbol "!="'), $EXPECT($L73, 'BinaryOpSymbol "\u2260"')), function($skip, $loc, $0, $1) {
7494
+ var BinaryOpSymbol$23 = $TV($C($EXPECT($L73, 'BinaryOpSymbol "!="'), $EXPECT($L74, 'BinaryOpSymbol "\u2260"')), function($skip, $loc, $0, $1) {
7438
7495
  if (module.config.coffeeEq)
7439
7496
  return "!==";
7440
7497
  return "!=";
7441
7498
  });
7442
- var BinaryOpSymbol$24 = $TS($S($EXPECT($L74, 'BinaryOpSymbol "isnt"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7499
+ var BinaryOpSymbol$24 = $TS($S($EXPECT($L75, 'BinaryOpSymbol "isnt"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7443
7500
  if (module.config.coffeeIsnt)
7444
7501
  return "!==";
7445
7502
  return $skip;
7446
7503
  });
7447
- var BinaryOpSymbol$25 = $EXPECT($L75, 'BinaryOpSymbol "==="');
7448
- var BinaryOpSymbol$26 = $T($C($EXPECT($L76, 'BinaryOpSymbol "\u2263"'), $EXPECT($L77, 'BinaryOpSymbol "\u2A76"')), function(value) {
7504
+ var BinaryOpSymbol$25 = $EXPECT($L76, 'BinaryOpSymbol "==="');
7505
+ var BinaryOpSymbol$26 = $T($C($EXPECT($L77, 'BinaryOpSymbol "\u2263"'), $EXPECT($L78, 'BinaryOpSymbol "\u2A76"')), function(value) {
7449
7506
  return "===";
7450
7507
  });
7451
- var BinaryOpSymbol$27 = $TV($C($EXPECT($L78, 'BinaryOpSymbol "=="'), $EXPECT($L79, 'BinaryOpSymbol "\u2261"'), $EXPECT($L80, 'BinaryOpSymbol "\u2A75"')), function($skip, $loc, $0, $1) {
7508
+ var BinaryOpSymbol$27 = $TV($C($EXPECT($L79, 'BinaryOpSymbol "=="'), $EXPECT($L80, 'BinaryOpSymbol "\u2261"'), $EXPECT($L81, 'BinaryOpSymbol "\u2A75"')), function($skip, $loc, $0, $1) {
7452
7509
  if (module.config.coffeeEq)
7453
7510
  return "===";
7454
7511
  return "==";
7455
7512
  });
7456
- var BinaryOpSymbol$28 = $T($S($EXPECT($L81, 'BinaryOpSymbol "and"'), NonIdContinue), function(value) {
7513
+ var BinaryOpSymbol$28 = $T($S($EXPECT($L82, 'BinaryOpSymbol "and"'), NonIdContinue), function(value) {
7457
7514
  return "&&";
7458
7515
  });
7459
- var BinaryOpSymbol$29 = $EXPECT($L82, 'BinaryOpSymbol "&&"');
7460
- var BinaryOpSymbol$30 = $T($S(CoffeeOfEnabled, $EXPECT($L83, 'BinaryOpSymbol "of"'), NonIdContinue), function(value) {
7516
+ var BinaryOpSymbol$29 = $EXPECT($L83, 'BinaryOpSymbol "&&"');
7517
+ var BinaryOpSymbol$30 = $T($S(CoffeeOfEnabled, $EXPECT($L84, 'BinaryOpSymbol "of"'), NonIdContinue), function(value) {
7461
7518
  return "in";
7462
7519
  });
7463
- var BinaryOpSymbol$31 = $T($S($EXPECT($L84, 'BinaryOpSymbol "or"'), NonIdContinue), function(value) {
7520
+ var BinaryOpSymbol$31 = $T($S($EXPECT($L85, 'BinaryOpSymbol "or"'), NonIdContinue), function(value) {
7464
7521
  return "||";
7465
7522
  });
7466
- var BinaryOpSymbol$32 = $EXPECT($L85, 'BinaryOpSymbol "||"');
7467
- var BinaryOpSymbol$33 = $T($EXPECT($L86, 'BinaryOpSymbol "\u2016"'), function(value) {
7523
+ var BinaryOpSymbol$32 = $EXPECT($L86, 'BinaryOpSymbol "||"');
7524
+ var BinaryOpSymbol$33 = $T($EXPECT($L87, 'BinaryOpSymbol "\u2016"'), function(value) {
7468
7525
  return "||";
7469
7526
  });
7470
- var BinaryOpSymbol$34 = $TV($C($EXPECT($L87, 'BinaryOpSymbol "^^"'), $S($EXPECT($L88, 'BinaryOpSymbol "xor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
7527
+ var BinaryOpSymbol$34 = $TV($C($EXPECT($L88, 'BinaryOpSymbol "^^"'), $S($EXPECT($L89, 'BinaryOpSymbol "xor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
7471
7528
  return {
7472
7529
  call: module.getRef("xor"),
7473
7530
  special: true
7474
7531
  };
7475
7532
  });
7476
- var BinaryOpSymbol$35 = $TV($C($EXPECT($R8, "BinaryOpSymbol /!\\^\\^?/"), $S($EXPECT($L89, 'BinaryOpSymbol "xnor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
7533
+ var BinaryOpSymbol$35 = $TV($C($EXPECT($R8, "BinaryOpSymbol /!\\^\\^?/"), $S($EXPECT($L90, 'BinaryOpSymbol "xnor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
7477
7534
  return {
7478
7535
  call: module.getRef("xnor"),
7479
7536
  special: true
7480
7537
  };
7481
7538
  });
7482
- var BinaryOpSymbol$36 = $EXPECT($L90, 'BinaryOpSymbol "??"');
7483
- var BinaryOpSymbol$37 = $T($EXPECT($L91, 'BinaryOpSymbol "\u2047"'), function(value) {
7539
+ var BinaryOpSymbol$36 = $EXPECT($L91, 'BinaryOpSymbol "??"');
7540
+ var BinaryOpSymbol$37 = $T($EXPECT($L92, 'BinaryOpSymbol "\u2047"'), function(value) {
7484
7541
  return "??";
7485
7542
  });
7486
7543
  var BinaryOpSymbol$38 = $T($S(CoffeeBinaryExistentialEnabled, $EXPECT($L5, 'BinaryOpSymbol "?"')), function(value) {
7487
7544
  return "??";
7488
7545
  });
7489
- var BinaryOpSymbol$39 = $TS($S($EXPECT($L92, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7546
+ var BinaryOpSymbol$39 = $TS($S($EXPECT($L93, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7490
7547
  return {
7491
7548
  $loc,
7492
7549
  token: $1,
@@ -7494,7 +7551,7 @@ var require_parser = __commonJS({
7494
7551
  special: true
7495
7552
  };
7496
7553
  });
7497
- var BinaryOpSymbol$40 = $TS($S(Not, __, $EXPECT($L92, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4) {
7554
+ var BinaryOpSymbol$40 = $TS($S(Not, __, $EXPECT($L93, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4) {
7498
7555
  return {
7499
7556
  $loc,
7500
7557
  token: "instanceof",
@@ -7503,7 +7560,7 @@ var require_parser = __commonJS({
7503
7560
  negated: true
7504
7561
  };
7505
7562
  });
7506
- var BinaryOpSymbol$41 = $TV($C($S($N(CoffeeOfEnabled), Not, __, In), $S(CoffeeOfEnabled, Not, __, $EXPECT($L83, 'BinaryOpSymbol "of"'), NonIdContinue)), function($skip, $loc, $0, $1) {
7563
+ var BinaryOpSymbol$41 = $TV($C($S($N(CoffeeOfEnabled), Not, __, In), $S(CoffeeOfEnabled, Not, __, $EXPECT($L84, 'BinaryOpSymbol "of"'), NonIdContinue)), function($skip, $loc, $0, $1) {
7507
7564
  return {
7508
7565
  $loc,
7509
7566
  token: "in",
@@ -7511,7 +7568,7 @@ var require_parser = __commonJS({
7511
7568
  negated: true
7512
7569
  };
7513
7570
  });
7514
- var BinaryOpSymbol$42 = $TV($C($S(Is, __, In), $EXPECT($L93, 'BinaryOpSymbol "\u2208"')), function($skip, $loc, $0, $1) {
7571
+ var BinaryOpSymbol$42 = $TV($C($S(Is, __, In), $EXPECT($L94, 'BinaryOpSymbol "\u2208"')), function($skip, $loc, $0, $1) {
7515
7572
  return {
7516
7573
  method: "includes",
7517
7574
  relational: true,
@@ -7519,14 +7576,14 @@ var require_parser = __commonJS({
7519
7576
  special: true
7520
7577
  };
7521
7578
  });
7522
- var BinaryOpSymbol$43 = $TV($EXPECT($L94, 'BinaryOpSymbol "\u220B"'), function($skip, $loc, $0, $1) {
7579
+ var BinaryOpSymbol$43 = $TV($EXPECT($L95, 'BinaryOpSymbol "\u220B"'), function($skip, $loc, $0, $1) {
7523
7580
  return {
7524
7581
  method: "includes",
7525
7582
  relational: true,
7526
7583
  special: true
7527
7584
  };
7528
7585
  });
7529
- var BinaryOpSymbol$44 = $TV($EXPECT($L95, 'BinaryOpSymbol "\u220C"'), function($skip, $loc, $0, $1) {
7586
+ var BinaryOpSymbol$44 = $TV($EXPECT($L96, 'BinaryOpSymbol "\u220C"'), function($skip, $loc, $0, $1) {
7530
7587
  return {
7531
7588
  method: "includes",
7532
7589
  relational: true,
@@ -7543,7 +7600,7 @@ var require_parser = __commonJS({
7543
7600
  special: true
7544
7601
  };
7545
7602
  });
7546
- var BinaryOpSymbol$46 = $TV($C($S(Is, __, Not, __, In), $EXPECT($L96, 'BinaryOpSymbol "\u2209"')), function($skip, $loc, $0, $1) {
7603
+ var BinaryOpSymbol$46 = $TV($C($S(Is, __, Not, __, In), $EXPECT($L97, 'BinaryOpSymbol "\u2209"')), function($skip, $loc, $0, $1) {
7547
7604
  return {
7548
7605
  method: "includes",
7549
7606
  relational: true,
@@ -7587,21 +7644,21 @@ var require_parser = __commonJS({
7587
7644
  var BinaryOpSymbol$50 = $TS($S(In), function($skip, $loc, $0, $1) {
7588
7645
  return "in";
7589
7646
  });
7590
- var BinaryOpSymbol$51 = $EXPECT($L97, 'BinaryOpSymbol "&"');
7647
+ var BinaryOpSymbol$51 = $EXPECT($L98, 'BinaryOpSymbol "&"');
7591
7648
  var BinaryOpSymbol$52 = $EXPECT($L17, 'BinaryOpSymbol "^"');
7592
- var BinaryOpSymbol$53 = $EXPECT($L98, 'BinaryOpSymbol "|"');
7649
+ var BinaryOpSymbol$53 = $EXPECT($L99, 'BinaryOpSymbol "|"');
7593
7650
  var BinaryOpSymbol$$ = [BinaryOpSymbol$0, BinaryOpSymbol$1, BinaryOpSymbol$2, BinaryOpSymbol$3, BinaryOpSymbol$4, BinaryOpSymbol$5, BinaryOpSymbol$6, BinaryOpSymbol$7, BinaryOpSymbol$8, BinaryOpSymbol$9, BinaryOpSymbol$10, BinaryOpSymbol$11, BinaryOpSymbol$12, BinaryOpSymbol$13, BinaryOpSymbol$14, BinaryOpSymbol$15, BinaryOpSymbol$16, BinaryOpSymbol$17, BinaryOpSymbol$18, BinaryOpSymbol$19, BinaryOpSymbol$20, BinaryOpSymbol$21, BinaryOpSymbol$22, BinaryOpSymbol$23, BinaryOpSymbol$24, BinaryOpSymbol$25, BinaryOpSymbol$26, BinaryOpSymbol$27, BinaryOpSymbol$28, BinaryOpSymbol$29, BinaryOpSymbol$30, BinaryOpSymbol$31, BinaryOpSymbol$32, BinaryOpSymbol$33, BinaryOpSymbol$34, BinaryOpSymbol$35, BinaryOpSymbol$36, BinaryOpSymbol$37, BinaryOpSymbol$38, BinaryOpSymbol$39, BinaryOpSymbol$40, BinaryOpSymbol$41, BinaryOpSymbol$42, BinaryOpSymbol$43, BinaryOpSymbol$44, BinaryOpSymbol$45, BinaryOpSymbol$46, BinaryOpSymbol$47, BinaryOpSymbol$48, BinaryOpSymbol$49, BinaryOpSymbol$50, BinaryOpSymbol$51, BinaryOpSymbol$52, BinaryOpSymbol$53];
7594
7651
  function BinaryOpSymbol(ctx, state) {
7595
7652
  return $EVENT_C(ctx, state, "BinaryOpSymbol", BinaryOpSymbol$$);
7596
7653
  }
7597
- var Xor$0 = $EXPECT($L87, 'Xor "^^"');
7598
- var Xor$1 = $S($EXPECT($L88, 'Xor "xor"'), NonIdContinue);
7654
+ var Xor$0 = $EXPECT($L88, 'Xor "^^"');
7655
+ var Xor$1 = $S($EXPECT($L89, 'Xor "xor"'), NonIdContinue);
7599
7656
  var Xor$$ = [Xor$0, Xor$1];
7600
7657
  function Xor(ctx, state) {
7601
7658
  return $EVENT_C(ctx, state, "Xor", Xor$$);
7602
7659
  }
7603
7660
  var Xnor$0 = $R$0($EXPECT($R8, "Xnor /!\\^\\^?/"));
7604
- var Xnor$1 = $EXPECT($L89, 'Xnor "xnor"');
7661
+ var Xnor$1 = $EXPECT($L90, 'Xnor "xnor"');
7605
7662
  var Xnor$$ = [Xnor$0, Xnor$1];
7606
7663
  function Xnor(ctx, state) {
7607
7664
  return $EVENT_C(ctx, state, "Xnor", Xnor$$);
@@ -7705,7 +7762,7 @@ var require_parser = __commonJS({
7705
7762
  function Statement(ctx, state) {
7706
7763
  return $EVENT_C(ctx, state, "Statement", Statement$$);
7707
7764
  }
7708
- var EmptyStatement$0 = $TS($S($E(_), $Y($EXPECT($L99, 'EmptyStatement ";"'))), function($skip, $loc, $0, $1, $2) {
7765
+ var EmptyStatement$0 = $TS($S($E(_), $Y($EXPECT($L100, 'EmptyStatement ";"'))), function($skip, $loc, $0, $1, $2) {
7709
7766
  return { type: "EmptyStatement", children: $1 || [] };
7710
7767
  });
7711
7768
  function EmptyStatement(ctx, state) {
@@ -7727,7 +7784,7 @@ var require_parser = __commonJS({
7727
7784
  var w = $3;
7728
7785
  return [id, colon, w];
7729
7786
  });
7730
- var Label$1 = $S($EXPECT($L100, 'Label "$:"'), Whitespace);
7787
+ var Label$1 = $S($EXPECT($L101, 'Label "$:"'), Whitespace);
7731
7788
  var Label$$ = [Label$0, Label$1];
7732
7789
  function Label(ctx, state) {
7733
7790
  return $EVENT_C(ctx, state, "Label", Label$$);
@@ -8426,8 +8483,10 @@ var require_parser = __commonJS({
8426
8483
  return $EVENT(ctx, state, "PatternExpressionList", PatternExpressionList$0);
8427
8484
  }
8428
8485
  var ConditionFragment$0 = BindingPattern;
8429
- var ConditionFragment$1 = $TV($P(SingleLineBinaryOpRHS), function($skip, $loc, $0, $1) {
8430
- var pattern = $0;
8486
+ var ConditionFragment$1 = $TS($S(ForbidIndentedApplication, $E($P(SingleLineBinaryOpRHS)), RestoreIndentedApplication), function($skip, $loc, $0, $1, $2, $3) {
8487
+ var pattern = $2;
8488
+ if (!pattern)
8489
+ return $skip;
8431
8490
  return {
8432
8491
  type: "ConditionFragment",
8433
8492
  children: pattern
@@ -8588,8 +8647,10 @@ var require_parser = __commonJS({
8588
8647
  function Condition(ctx, state) {
8589
8648
  return $EVENT_C(ctx, state, "Condition", Condition$$);
8590
8649
  }
8591
- var DeclarationCondition$0 = $TV(LexicalDeclaration, function($skip, $loc, $0, $1) {
8592
- var dec = $0;
8650
+ var DeclarationCondition$0 = $TS($S(ForbidIndentedApplication, $E(LexicalDeclaration), RestoreIndentedApplication), function($skip, $loc, $0, $1, $2, $3) {
8651
+ var dec = $2;
8652
+ if (!dec)
8653
+ return $skip;
8593
8654
  const ref = makeRef();
8594
8655
  const { decl, bindings } = dec;
8595
8656
  const binding = bindings[0];
@@ -8810,19 +8871,19 @@ var require_parser = __commonJS({
8810
8871
  function KeywordStatement(ctx, state) {
8811
8872
  return $EVENT_C(ctx, state, "KeywordStatement", KeywordStatement$$);
8812
8873
  }
8813
- var Break$0 = $TS($S($EXPECT($L101, 'Break "break"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8874
+ var Break$0 = $TS($S($EXPECT($L102, 'Break "break"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8814
8875
  return { $loc, token: $1 };
8815
8876
  });
8816
8877
  function Break(ctx, state) {
8817
8878
  return $EVENT(ctx, state, "Break", Break$0);
8818
8879
  }
8819
- var Continue$0 = $TS($S($EXPECT($L102, 'Continue "continue"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8880
+ var Continue$0 = $TS($S($EXPECT($L103, 'Continue "continue"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8820
8881
  return { $loc, token: $1 };
8821
8882
  });
8822
8883
  function Continue(ctx, state) {
8823
8884
  return $EVENT(ctx, state, "Continue", Continue$0);
8824
8885
  }
8825
- var Debugger$0 = $TS($S($EXPECT($L103, 'Debugger "debugger"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8886
+ var Debugger$0 = $TS($S($EXPECT($L104, 'Debugger "debugger"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8826
8887
  return { $loc, token: $1 };
8827
8888
  });
8828
8889
  function Debugger(ctx, state) {
@@ -8941,7 +9002,7 @@ var require_parser = __commonJS({
8941
9002
  function FromClause(ctx, state) {
8942
9003
  return $EVENT(ctx, state, "FromClause", FromClause$0);
8943
9004
  }
8944
- var ImportAssertion$0 = $S($E(_), $EXPECT($L104, 'ImportAssertion "assert"'), NonIdContinue, $E(_), ObjectLiteral);
9005
+ var ImportAssertion$0 = $S($E(_), $EXPECT($L105, 'ImportAssertion "assert"'), NonIdContinue, $E(_), ObjectLiteral);
8945
9006
  function ImportAssertion(ctx, state) {
8946
9007
  return $EVENT(ctx, state, "ImportAssertion", ImportAssertion$0);
8947
9008
  }
@@ -9160,13 +9221,13 @@ var require_parser = __commonJS({
9160
9221
  function LexicalDeclaration(ctx, state) {
9161
9222
  return $EVENT_C(ctx, state, "LexicalDeclaration", LexicalDeclaration$$);
9162
9223
  }
9163
- var ConstAssignment$0 = $TV($C($EXPECT($L105, 'ConstAssignment ":="'), $EXPECT($L106, 'ConstAssignment "\u2254"')), function($skip, $loc, $0, $1) {
9224
+ var ConstAssignment$0 = $TV($C($EXPECT($L106, 'ConstAssignment ":="'), $EXPECT($L107, 'ConstAssignment "\u2254"')), function($skip, $loc, $0, $1) {
9164
9225
  return { $loc, token: "=" };
9165
9226
  });
9166
9227
  function ConstAssignment(ctx, state) {
9167
9228
  return $EVENT(ctx, state, "ConstAssignment", ConstAssignment$0);
9168
9229
  }
9169
- var LetAssignment$0 = $TV($EXPECT($L107, 'LetAssignment ".="'), function($skip, $loc, $0, $1) {
9230
+ var LetAssignment$0 = $TV($EXPECT($L108, 'LetAssignment ".="'), function($skip, $loc, $0, $1) {
9170
9231
  return { $loc, token: "=" };
9171
9232
  });
9172
9233
  function LetAssignment(ctx, state) {
@@ -9361,7 +9422,7 @@ var require_parser = __commonJS({
9361
9422
  return $EVENT(ctx, state, "CoffeeDoubleQuotedStringCharacters", CoffeeDoubleQuotedStringCharacters$0);
9362
9423
  }
9363
9424
  var RegularExpressionLiteral$0 = HeregexLiteral;
9364
- var RegularExpressionLiteral$1 = $TV($TEXT($S($EXPECT($L54, 'RegularExpressionLiteral "/"'), RegularExpressionBody, $EXPECT($L54, 'RegularExpressionLiteral "/"'), RegularExpressionFlags)), function($skip, $loc, $0, $1) {
9425
+ var RegularExpressionLiteral$1 = $TV($TEXT($S($EXPECT($L55, 'RegularExpressionLiteral "/"'), RegularExpressionBody, $EXPECT($L55, 'RegularExpressionLiteral "/"'), RegularExpressionFlags)), function($skip, $loc, $0, $1) {
9365
9426
  return { type: "RegularExpressionLiteral", $loc, token: $1 };
9366
9427
  });
9367
9428
  var RegularExpressionLiteral$$ = [RegularExpressionLiteral$0, RegularExpressionLiteral$1];
@@ -9557,7 +9618,7 @@ var require_parser = __commonJS({
9557
9618
  function MultiLineComment(ctx, state) {
9558
9619
  return $EVENT_C(ctx, state, "MultiLineComment", MultiLineComment$$);
9559
9620
  }
9560
- var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L108, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L109, 'JSMultiLineComment "*/"')), $EXPECT($R42, "JSMultiLineComment /./"))), $EXPECT($L109, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
9621
+ var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L109, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L110, 'JSMultiLineComment "*/"')), $EXPECT($R42, "JSMultiLineComment /./"))), $EXPECT($L110, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
9561
9622
  return { type: "Comment", $loc, token: $1 };
9562
9623
  });
9563
9624
  function JSMultiLineComment(ctx, state) {
@@ -9580,7 +9641,7 @@ var require_parser = __commonJS({
9580
9641
  function CoffeeHereCommentStart(ctx, state) {
9581
9642
  return $EVENT(ctx, state, "CoffeeHereCommentStart", CoffeeHereCommentStart$0);
9582
9643
  }
9583
- var InlineComment$0 = $TV($TEXT($S($EXPECT($L108, 'InlineComment "/*"'), $TEXT($Q($S($N($EXPECT($L109, 'InlineComment "*/"')), $EXPECT($R46, "InlineComment /[^\\r\\n]/")))), $EXPECT($L109, 'InlineComment "*/"'))), function($skip, $loc, $0, $1) {
9644
+ var InlineComment$0 = $TV($TEXT($S($EXPECT($L109, 'InlineComment "/*"'), $TEXT($Q($S($N($EXPECT($L110, 'InlineComment "*/"')), $EXPECT($R46, "InlineComment /[^\\r\\n]/")))), $EXPECT($L110, 'InlineComment "*/"'))), function($skip, $loc, $0, $1) {
9584
9645
  return { $loc, token: $1 };
9585
9646
  });
9586
9647
  function InlineComment(ctx, state) {
@@ -9601,7 +9662,7 @@ var require_parser = __commonJS({
9601
9662
  var NonNewlineWhitespace$0 = $TR($EXPECT($R47, "NonNewlineWhitespace /[ \\t]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
9602
9663
  return { $loc, token: $0 };
9603
9664
  });
9604
- var NonNewlineWhitespace$1 = $T($S(CoffeeLineContinuationEnabled, $EXPECT($L110, 'NonNewlineWhitespace "\\\\\\\\"'), EOL), function(value) {
9665
+ var NonNewlineWhitespace$1 = $T($S(CoffeeLineContinuationEnabled, $EXPECT($L111, 'NonNewlineWhitespace "\\\\\\\\"'), EOL), function(value) {
9605
9666
  return "";
9606
9667
  });
9607
9668
  var NonNewlineWhitespace$$ = [NonNewlineWhitespace$0, NonNewlineWhitespace$1];
@@ -9642,9 +9703,9 @@ var require_parser = __commonJS({
9642
9703
  return $EVENT_C(ctx, state, "SimpleStatementDelimiter", SimpleStatementDelimiter$$);
9643
9704
  }
9644
9705
  var StatementDelimiter$0 = SemicolonDelimiter;
9645
- var StatementDelimiter$1 = $S($Y($S(Nested, $C($EXPECT($L4, 'StatementDelimiter "("'), $EXPECT($L111, 'StatementDelimiter "["'), $EXPECT($L112, 'StatementDelimiter "`"'), $EXPECT($L57, 'StatementDelimiter "+"'), $EXPECT($L18, 'StatementDelimiter "-"'), $EXPECT($L53, 'StatementDelimiter "*"'), $EXPECT($L54, 'StatementDelimiter "/"'), ObjectLiteral, Arrow, FatArrow, $S(Function, $E($S($E(_), Star)), $E(_), $EXPECT($L4, 'StatementDelimiter "("'))))), InsertSemicolon);
9706
+ var StatementDelimiter$1 = $S($Y($S(Nested, $C($EXPECT($L4, 'StatementDelimiter "("'), $EXPECT($L112, 'StatementDelimiter "["'), $EXPECT($L113, 'StatementDelimiter "`"'), $EXPECT($L58, 'StatementDelimiter "+"'), $EXPECT($L18, 'StatementDelimiter "-"'), $EXPECT($L54, 'StatementDelimiter "*"'), $EXPECT($L55, 'StatementDelimiter "/"'), ObjectLiteral, Arrow, FatArrow, $S(Function, $E($S($E(_), Star)), $E(_), $EXPECT($L4, 'StatementDelimiter "("'))))), InsertSemicolon);
9646
9707
  var StatementDelimiter$2 = $Y(EOS);
9647
- var StatementDelimiter$3 = $Y($S($Q(_), $C($EXPECT($L24, 'StatementDelimiter "}"'), $EXPECT($L113, 'StatementDelimiter ")"'), $EXPECT($L33, 'StatementDelimiter "]"'))));
9708
+ var StatementDelimiter$3 = $Y($S($Q(_), $C($EXPECT($L25, 'StatementDelimiter "}"'), $EXPECT($L114, 'StatementDelimiter ")"'), $EXPECT($L34, 'StatementDelimiter "]"'))));
9648
9709
  var StatementDelimiter$$ = [StatementDelimiter$0, StatementDelimiter$1, StatementDelimiter$2, StatementDelimiter$3];
9649
9710
  function StatementDelimiter(ctx, state) {
9650
9711
  return $EVENT_C(ctx, state, "StatementDelimiter", StatementDelimiter$$);
@@ -9668,97 +9729,97 @@ var require_parser = __commonJS({
9668
9729
  function Loc(ctx, state) {
9669
9730
  return $EVENT(ctx, state, "Loc", Loc$0);
9670
9731
  }
9671
- var Abstract$0 = $TV($TEXT($S($EXPECT($L114, 'Abstract "abstract"'), NonIdContinue, $E($EXPECT($L11, 'Abstract " "')))), function($skip, $loc, $0, $1) {
9732
+ var Abstract$0 = $TV($TEXT($S($EXPECT($L115, 'Abstract "abstract"'), NonIdContinue, $E($EXPECT($L11, 'Abstract " "')))), function($skip, $loc, $0, $1) {
9672
9733
  return { $loc, token: $1, ts: true };
9673
9734
  });
9674
9735
  function Abstract(ctx, state) {
9675
9736
  return $EVENT(ctx, state, "Abstract", Abstract$0);
9676
9737
  }
9677
- var Ampersand$0 = $TV($EXPECT($L97, 'Ampersand "&"'), function($skip, $loc, $0, $1) {
9738
+ var Ampersand$0 = $TV($EXPECT($L98, 'Ampersand "&"'), function($skip, $loc, $0, $1) {
9678
9739
  return { $loc, token: $1 };
9679
9740
  });
9680
9741
  function Ampersand(ctx, state) {
9681
9742
  return $EVENT(ctx, state, "Ampersand", Ampersand$0);
9682
9743
  }
9683
- var As$0 = $TS($S($EXPECT($L115, 'As "as"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9744
+ var As$0 = $TS($S($EXPECT($L116, 'As "as"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9684
9745
  return { $loc, token: $1 };
9685
9746
  });
9686
9747
  function As(ctx, state) {
9687
9748
  return $EVENT(ctx, state, "As", As$0);
9688
9749
  }
9689
- var At$0 = $TV($EXPECT($L116, 'At "@"'), function($skip, $loc, $0, $1) {
9750
+ var At$0 = $TV($EXPECT($L117, 'At "@"'), function($skip, $loc, $0, $1) {
9690
9751
  return { $loc, token: $1 };
9691
9752
  });
9692
9753
  function At(ctx, state) {
9693
9754
  return $EVENT(ctx, state, "At", At$0);
9694
9755
  }
9695
- var AtAt$0 = $TV($EXPECT($L117, 'AtAt "@@"'), function($skip, $loc, $0, $1) {
9756
+ var AtAt$0 = $TV($EXPECT($L118, 'AtAt "@@"'), function($skip, $loc, $0, $1) {
9696
9757
  return { $loc, token: "@" };
9697
9758
  });
9698
9759
  function AtAt(ctx, state) {
9699
9760
  return $EVENT(ctx, state, "AtAt", AtAt$0);
9700
9761
  }
9701
- var Async$0 = $TS($S($EXPECT($L118, 'Async "async"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9762
+ var Async$0 = $TS($S($EXPECT($L119, 'Async "async"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9702
9763
  return { $loc, token: $1, type: "Async" };
9703
9764
  });
9704
9765
  function Async(ctx, state) {
9705
9766
  return $EVENT(ctx, state, "Async", Async$0);
9706
9767
  }
9707
- var Await$0 = $TS($S($EXPECT($L119, 'Await "await"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9768
+ var Await$0 = $TS($S($EXPECT($L120, 'Await "await"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9708
9769
  return { $loc, token: $1, type: "Await" };
9709
9770
  });
9710
9771
  function Await(ctx, state) {
9711
9772
  return $EVENT(ctx, state, "Await", Await$0);
9712
9773
  }
9713
- var Backtick$0 = $TV($EXPECT($L112, 'Backtick "`"'), function($skip, $loc, $0, $1) {
9774
+ var Backtick$0 = $TV($EXPECT($L113, 'Backtick "`"'), function($skip, $loc, $0, $1) {
9714
9775
  return { $loc, token: $1 };
9715
9776
  });
9716
9777
  function Backtick(ctx, state) {
9717
9778
  return $EVENT(ctx, state, "Backtick", Backtick$0);
9718
9779
  }
9719
- var By$0 = $TS($S($EXPECT($L120, 'By "by"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9780
+ var By$0 = $TS($S($EXPECT($L121, 'By "by"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9720
9781
  return { $loc, token: $1 };
9721
9782
  });
9722
9783
  function By(ctx, state) {
9723
9784
  return $EVENT(ctx, state, "By", By$0);
9724
9785
  }
9725
- var Case$0 = $TS($S($EXPECT($L121, 'Case "case"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9786
+ var Case$0 = $TS($S($EXPECT($L122, 'Case "case"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9726
9787
  return { $loc, token: $1 };
9727
9788
  });
9728
9789
  function Case(ctx, state) {
9729
9790
  return $EVENT(ctx, state, "Case", Case$0);
9730
9791
  }
9731
- var Catch$0 = $TS($S($EXPECT($L122, 'Catch "catch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9792
+ var Catch$0 = $TS($S($EXPECT($L123, 'Catch "catch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9732
9793
  return { $loc, token: $1 };
9733
9794
  });
9734
9795
  function Catch(ctx, state) {
9735
9796
  return $EVENT(ctx, state, "Catch", Catch$0);
9736
9797
  }
9737
- var Class$0 = $TS($S($EXPECT($L123, 'Class "class"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9798
+ var Class$0 = $TS($S($EXPECT($L124, 'Class "class"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9738
9799
  return { $loc, token: $1 };
9739
9800
  });
9740
9801
  function Class(ctx, state) {
9741
9802
  return $EVENT(ctx, state, "Class", Class$0);
9742
9803
  }
9743
- var CloseBrace$0 = $TV($EXPECT($L24, 'CloseBrace "}"'), function($skip, $loc, $0, $1) {
9804
+ var CloseBrace$0 = $TV($EXPECT($L25, 'CloseBrace "}"'), function($skip, $loc, $0, $1) {
9744
9805
  return { $loc, token: $1 };
9745
9806
  });
9746
9807
  function CloseBrace(ctx, state) {
9747
9808
  return $EVENT(ctx, state, "CloseBrace", CloseBrace$0);
9748
9809
  }
9749
- var CloseBracket$0 = $TV($EXPECT($L33, 'CloseBracket "]"'), function($skip, $loc, $0, $1) {
9810
+ var CloseBracket$0 = $TV($EXPECT($L34, 'CloseBracket "]"'), function($skip, $loc, $0, $1) {
9750
9811
  return { $loc, token: $1 };
9751
9812
  });
9752
9813
  function CloseBracket(ctx, state) {
9753
9814
  return $EVENT(ctx, state, "CloseBracket", CloseBracket$0);
9754
9815
  }
9755
- var CloseParen$0 = $TV($EXPECT($L113, 'CloseParen ")"'), function($skip, $loc, $0, $1) {
9816
+ var CloseParen$0 = $TV($EXPECT($L114, 'CloseParen ")"'), function($skip, $loc, $0, $1) {
9756
9817
  return { $loc, token: $1 };
9757
9818
  });
9758
9819
  function CloseParen(ctx, state) {
9759
9820
  return $EVENT(ctx, state, "CloseParen", CloseParen$0);
9760
9821
  }
9761
- var CoffeeSubstitutionStart$0 = $TV($EXPECT($L124, 'CoffeeSubstitutionStart "#{"'), function($skip, $loc, $0, $1) {
9822
+ var CoffeeSubstitutionStart$0 = $TV($EXPECT($L125, 'CoffeeSubstitutionStart "#{"'), function($skip, $loc, $0, $1) {
9762
9823
  return { $loc, token: "${" };
9763
9824
  });
9764
9825
  function CoffeeSubstitutionStart(ctx, state) {
@@ -9776,31 +9837,31 @@ var require_parser = __commonJS({
9776
9837
  function Comma(ctx, state) {
9777
9838
  return $EVENT(ctx, state, "Comma", Comma$0);
9778
9839
  }
9779
- var ConstructorShorthand$0 = $TV($EXPECT($L116, 'ConstructorShorthand "@"'), function($skip, $loc, $0, $1) {
9840
+ var ConstructorShorthand$0 = $TV($EXPECT($L117, 'ConstructorShorthand "@"'), function($skip, $loc, $0, $1) {
9780
9841
  return { $loc, token: "constructor" };
9781
9842
  });
9782
9843
  function ConstructorShorthand(ctx, state) {
9783
9844
  return $EVENT(ctx, state, "ConstructorShorthand", ConstructorShorthand$0);
9784
9845
  }
9785
- var Declare$0 = $TS($S($EXPECT($L125, 'Declare "declare"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9846
+ var Declare$0 = $TS($S($EXPECT($L126, 'Declare "declare"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9786
9847
  return { $loc, token: $1 };
9787
9848
  });
9788
9849
  function Declare(ctx, state) {
9789
9850
  return $EVENT(ctx, state, "Declare", Declare$0);
9790
9851
  }
9791
- var Default$0 = $TS($S($EXPECT($L126, 'Default "default"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9852
+ var Default$0 = $TS($S($EXPECT($L127, 'Default "default"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9792
9853
  return { $loc, token: $1 };
9793
9854
  });
9794
9855
  function Default(ctx, state) {
9795
9856
  return $EVENT(ctx, state, "Default", Default$0);
9796
9857
  }
9797
- var Delete$0 = $TS($S($EXPECT($L127, 'Delete "delete"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9858
+ var Delete$0 = $TS($S($EXPECT($L128, 'Delete "delete"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9798
9859
  return { $loc, token: $1 };
9799
9860
  });
9800
9861
  function Delete(ctx, state) {
9801
9862
  return $EVENT(ctx, state, "Delete", Delete$0);
9802
9863
  }
9803
- var Do$0 = $TS($S($EXPECT($L128, 'Do "do"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9864
+ var Do$0 = $TS($S($EXPECT($L129, 'Do "do"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9804
9865
  return { $loc, token: $1 };
9805
9866
  });
9806
9867
  function Do(ctx, state) {
@@ -9820,45 +9881,45 @@ var require_parser = __commonJS({
9820
9881
  function Dot(ctx, state) {
9821
9882
  return $EVENT_C(ctx, state, "Dot", Dot$$);
9822
9883
  }
9823
- var DotDot$0 = $TS($S($EXPECT($L129, 'DotDot ".."'), $N($EXPECT($L6, 'DotDot "."'))), function($skip, $loc, $0, $1, $2) {
9884
+ var DotDot$0 = $TS($S($EXPECT($L130, 'DotDot ".."'), $N($EXPECT($L6, 'DotDot "."'))), function($skip, $loc, $0, $1, $2) {
9824
9885
  return { $loc, token: $1 };
9825
9886
  });
9826
- var DotDot$1 = $TV($EXPECT($L130, 'DotDot "\u2025"'), function($skip, $loc, $0, $1) {
9887
+ var DotDot$1 = $TV($EXPECT($L131, 'DotDot "\u2025"'), function($skip, $loc, $0, $1) {
9827
9888
  return { $loc, token: ".." };
9828
9889
  });
9829
9890
  var DotDot$$ = [DotDot$0, DotDot$1];
9830
9891
  function DotDot(ctx, state) {
9831
9892
  return $EVENT_C(ctx, state, "DotDot", DotDot$$);
9832
9893
  }
9833
- var DotDotDot$0 = $TV($EXPECT($L131, 'DotDotDot "..."'), function($skip, $loc, $0, $1) {
9894
+ var DotDotDot$0 = $TV($EXPECT($L132, 'DotDotDot "..."'), function($skip, $loc, $0, $1) {
9834
9895
  return { $loc, token: $1 };
9835
9896
  });
9836
- var DotDotDot$1 = $TV($EXPECT($L132, 'DotDotDot "\u2026"'), function($skip, $loc, $0, $1) {
9897
+ var DotDotDot$1 = $TV($EXPECT($L133, 'DotDotDot "\u2026"'), function($skip, $loc, $0, $1) {
9837
9898
  return { $loc, token: "..." };
9838
9899
  });
9839
9900
  var DotDotDot$$ = [DotDotDot$0, DotDotDot$1];
9840
9901
  function DotDotDot(ctx, state) {
9841
9902
  return $EVENT_C(ctx, state, "DotDotDot", DotDotDot$$);
9842
9903
  }
9843
- var DoubleColon$0 = $TV($EXPECT($L133, 'DoubleColon "::"'), function($skip, $loc, $0, $1) {
9904
+ var DoubleColon$0 = $TV($EXPECT($L134, 'DoubleColon "::"'), function($skip, $loc, $0, $1) {
9844
9905
  return { $loc, token: $1 };
9845
9906
  });
9846
9907
  function DoubleColon(ctx, state) {
9847
9908
  return $EVENT(ctx, state, "DoubleColon", DoubleColon$0);
9848
9909
  }
9849
- var DoubleQuote$0 = $TV($EXPECT($L134, 'DoubleQuote "\\\\\\""'), function($skip, $loc, $0, $1) {
9910
+ var DoubleQuote$0 = $TV($EXPECT($L135, 'DoubleQuote "\\\\\\""'), function($skip, $loc, $0, $1) {
9850
9911
  return { $loc, token: $1 };
9851
9912
  });
9852
9913
  function DoubleQuote(ctx, state) {
9853
9914
  return $EVENT(ctx, state, "DoubleQuote", DoubleQuote$0);
9854
9915
  }
9855
- var Each$0 = $TS($S($EXPECT($L135, 'Each "each"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9916
+ var Each$0 = $TS($S($EXPECT($L136, 'Each "each"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9856
9917
  return { $loc, token: $1 };
9857
9918
  });
9858
9919
  function Each(ctx, state) {
9859
9920
  return $EVENT(ctx, state, "Each", Each$0);
9860
9921
  }
9861
- var Else$0 = $TS($S($EXPECT($L136, 'Else "else"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9922
+ var Else$0 = $TS($S($EXPECT($L137, 'Else "else"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9862
9923
  return { $loc, token: $1 };
9863
9924
  });
9864
9925
  function Else(ctx, state) {
@@ -9870,55 +9931,55 @@ var require_parser = __commonJS({
9870
9931
  function Equals(ctx, state) {
9871
9932
  return $EVENT(ctx, state, "Equals", Equals$0);
9872
9933
  }
9873
- var Export$0 = $TS($S($EXPECT($L137, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9934
+ var Export$0 = $TS($S($EXPECT($L138, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9874
9935
  return { $loc, token: $1 };
9875
9936
  });
9876
9937
  function Export(ctx, state) {
9877
9938
  return $EVENT(ctx, state, "Export", Export$0);
9878
9939
  }
9879
- var Extends$0 = $TS($S($EXPECT($L138, 'Extends "extends"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9940
+ var Extends$0 = $TS($S($EXPECT($L139, 'Extends "extends"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9880
9941
  return { $loc, token: $1 };
9881
9942
  });
9882
9943
  function Extends(ctx, state) {
9883
9944
  return $EVENT(ctx, state, "Extends", Extends$0);
9884
9945
  }
9885
- var Finally$0 = $TS($S($EXPECT($L139, 'Finally "finally"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9946
+ var Finally$0 = $TS($S($EXPECT($L140, 'Finally "finally"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9886
9947
  return { $loc, token: $1 };
9887
9948
  });
9888
9949
  function Finally(ctx, state) {
9889
9950
  return $EVENT(ctx, state, "Finally", Finally$0);
9890
9951
  }
9891
- var For$0 = $TS($S($EXPECT($L140, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9952
+ var For$0 = $TS($S($EXPECT($L141, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9892
9953
  return { $loc, token: $1 };
9893
9954
  });
9894
9955
  function For(ctx, state) {
9895
9956
  return $EVENT(ctx, state, "For", For$0);
9896
9957
  }
9897
- var From$0 = $TS($S($EXPECT($L141, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9958
+ var From$0 = $TS($S($EXPECT($L142, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9898
9959
  return { $loc, token: $1 };
9899
9960
  });
9900
9961
  function From(ctx, state) {
9901
9962
  return $EVENT(ctx, state, "From", From$0);
9902
9963
  }
9903
- var Function$0 = $TS($S($EXPECT($L142, 'Function "function"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9964
+ var Function$0 = $TS($S($EXPECT($L143, 'Function "function"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9904
9965
  return { $loc, token: $1 };
9905
9966
  });
9906
9967
  function Function(ctx, state) {
9907
9968
  return $EVENT(ctx, state, "Function", Function$0);
9908
9969
  }
9909
- var GetOrSet$0 = $TS($S($C($EXPECT($L143, 'GetOrSet "get"'), $EXPECT($L144, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9970
+ var GetOrSet$0 = $TS($S($C($EXPECT($L144, 'GetOrSet "get"'), $EXPECT($L145, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9910
9971
  return { $loc, token: $1, type: "GetOrSet" };
9911
9972
  });
9912
9973
  function GetOrSet(ctx, state) {
9913
9974
  return $EVENT(ctx, state, "GetOrSet", GetOrSet$0);
9914
9975
  }
9915
- var Hash$0 = $TV($EXPECT($L145, 'Hash "#"'), function($skip, $loc, $0, $1) {
9976
+ var Hash$0 = $TV($EXPECT($L146, 'Hash "#"'), function($skip, $loc, $0, $1) {
9916
9977
  return { $loc, token: $1 };
9917
9978
  });
9918
9979
  function Hash(ctx, state) {
9919
9980
  return $EVENT(ctx, state, "Hash", Hash$0);
9920
9981
  }
9921
- var If$0 = $TV($TEXT($S($EXPECT($L146, 'If "if"'), NonIdContinue, $E($EXPECT($L11, 'If " "')))), function($skip, $loc, $0, $1) {
9982
+ var If$0 = $TV($TEXT($S($EXPECT($L147, 'If "if"'), NonIdContinue, $E($EXPECT($L11, 'If " "')))), function($skip, $loc, $0, $1) {
9922
9983
  return { $loc, token: $1 };
9923
9984
  });
9924
9985
  function If(ctx, state) {
@@ -9930,25 +9991,25 @@ var require_parser = __commonJS({
9930
9991
  function Import(ctx, state) {
9931
9992
  return $EVENT(ctx, state, "Import", Import$0);
9932
9993
  }
9933
- var In$0 = $TS($S($EXPECT($L147, 'In "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9994
+ var In$0 = $TS($S($EXPECT($L148, 'In "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9934
9995
  return { $loc, token: $1 };
9935
9996
  });
9936
9997
  function In(ctx, state) {
9937
9998
  return $EVENT(ctx, state, "In", In$0);
9938
9999
  }
9939
- var LetOrConst$0 = $TS($S($C($EXPECT($L148, 'LetOrConst "let"'), $EXPECT($L149, 'LetOrConst "const"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10000
+ var LetOrConst$0 = $TS($S($C($EXPECT($L149, 'LetOrConst "let"'), $EXPECT($L150, 'LetOrConst "const"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9940
10001
  return { $loc, token: $1 };
9941
10002
  });
9942
10003
  function LetOrConst(ctx, state) {
9943
10004
  return $EVENT(ctx, state, "LetOrConst", LetOrConst$0);
9944
10005
  }
9945
- var Const$0 = $TS($S($EXPECT($L149, 'Const "const"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10006
+ var Const$0 = $TS($S($EXPECT($L150, 'Const "const"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9946
10007
  return { $loc, token: $1 };
9947
10008
  });
9948
10009
  function Const(ctx, state) {
9949
10010
  return $EVENT(ctx, state, "Const", Const$0);
9950
10011
  }
9951
- var Is$0 = $TS($S($EXPECT($L150, 'Is "is"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10012
+ var Is$0 = $TS($S($EXPECT($L151, 'Is "is"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9952
10013
  return { $loc, token: $1 };
9953
10014
  });
9954
10015
  function Is(ctx, state) {
@@ -9960,31 +10021,31 @@ var require_parser = __commonJS({
9960
10021
  function LetOrConstOrVar(ctx, state) {
9961
10022
  return $EVENT_C(ctx, state, "LetOrConstOrVar", LetOrConstOrVar$$);
9962
10023
  }
9963
- var Loop$0 = $TS($S($EXPECT($L151, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10024
+ var Loop$0 = $TS($S($EXPECT($L152, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9964
10025
  return { $loc, token: "while(true)" };
9965
10026
  });
9966
10027
  function Loop(ctx, state) {
9967
10028
  return $EVENT(ctx, state, "Loop", Loop$0);
9968
10029
  }
9969
- var New$0 = $TS($S($EXPECT($L152, 'New "new"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10030
+ var New$0 = $TS($S($EXPECT($L153, 'New "new"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9970
10031
  return { $loc, token: $1 };
9971
10032
  });
9972
10033
  function New(ctx, state) {
9973
10034
  return $EVENT(ctx, state, "New", New$0);
9974
10035
  }
9975
- var Not$0 = $TS($S($EXPECT($L153, 'Not "not"'), NonIdContinue, $N($S($E(_), $EXPECT($L12, 'Not ":"')))), function($skip, $loc, $0, $1, $2, $3) {
10036
+ var Not$0 = $TS($S($EXPECT($L154, 'Not "not"'), NonIdContinue, $N($S($E(_), $EXPECT($L12, 'Not ":"')))), function($skip, $loc, $0, $1, $2, $3) {
9976
10037
  return { $loc, token: "!" };
9977
10038
  });
9978
10039
  function Not(ctx, state) {
9979
10040
  return $EVENT(ctx, state, "Not", Not$0);
9980
10041
  }
9981
- var Of$0 = $TS($S($EXPECT($L83, 'Of "of"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10042
+ var Of$0 = $TS($S($EXPECT($L84, 'Of "of"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9982
10043
  return { $loc, token: $1 };
9983
10044
  });
9984
10045
  function Of(ctx, state) {
9985
10046
  return $EVENT(ctx, state, "Of", Of$0);
9986
10047
  }
9987
- var OpenAngleBracket$0 = $TV($EXPECT($L154, 'OpenAngleBracket "<"'), function($skip, $loc, $0, $1) {
10048
+ var OpenAngleBracket$0 = $TV($EXPECT($L155, 'OpenAngleBracket "<"'), function($skip, $loc, $0, $1) {
9988
10049
  return { $loc, token: $1 };
9989
10050
  });
9990
10051
  function OpenAngleBracket(ctx, state) {
@@ -9996,7 +10057,7 @@ var require_parser = __commonJS({
9996
10057
  function OpenBrace(ctx, state) {
9997
10058
  return $EVENT(ctx, state, "OpenBrace", OpenBrace$0);
9998
10059
  }
9999
- var OpenBracket$0 = $TV($EXPECT($L111, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
10060
+ var OpenBracket$0 = $TV($EXPECT($L112, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
10000
10061
  return { $loc, token: $1 };
10001
10062
  });
10002
10063
  function OpenBracket(ctx, state) {
@@ -10008,43 +10069,43 @@ var require_parser = __commonJS({
10008
10069
  function OpenParen(ctx, state) {
10009
10070
  return $EVENT(ctx, state, "OpenParen", OpenParen$0);
10010
10071
  }
10011
- var Operator$0 = $TS($S($EXPECT($L155, 'Operator "operator"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10072
+ var Operator$0 = $TS($S($EXPECT($L156, 'Operator "operator"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10012
10073
  return { $loc, token: $1 };
10013
10074
  });
10014
10075
  function Operator(ctx, state) {
10015
10076
  return $EVENT(ctx, state, "Operator", Operator$0);
10016
10077
  }
10017
- var Own$0 = $TS($S($EXPECT($L156, 'Own "own"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10078
+ var Own$0 = $TS($S($EXPECT($L157, 'Own "own"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10018
10079
  return { $loc, token: $1 };
10019
10080
  });
10020
10081
  function Own(ctx, state) {
10021
10082
  return $EVENT(ctx, state, "Own", Own$0);
10022
10083
  }
10023
- var Public$0 = $TS($S($EXPECT($L157, 'Public "public"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10084
+ var Public$0 = $TS($S($EXPECT($L158, 'Public "public"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10024
10085
  return { $loc, token: $1 };
10025
10086
  });
10026
10087
  function Public(ctx, state) {
10027
10088
  return $EVENT(ctx, state, "Public", Public$0);
10028
10089
  }
10029
- var Private$0 = $TS($S($EXPECT($L158, 'Private "private"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10090
+ var Private$0 = $TS($S($EXPECT($L159, 'Private "private"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10030
10091
  return { $loc, token: $1 };
10031
10092
  });
10032
10093
  function Private(ctx, state) {
10033
10094
  return $EVENT(ctx, state, "Private", Private$0);
10034
10095
  }
10035
- var Protected$0 = $TS($S($EXPECT($L159, 'Protected "protected"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10096
+ var Protected$0 = $TS($S($EXPECT($L160, 'Protected "protected"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10036
10097
  return { $loc, token: $1 };
10037
10098
  });
10038
10099
  function Protected(ctx, state) {
10039
10100
  return $EVENT(ctx, state, "Protected", Protected$0);
10040
10101
  }
10041
- var Pipe$0 = $TV($C($EXPECT($L160, 'Pipe "||>"'), $EXPECT($L161, 'Pipe "|\u25B7"')), function($skip, $loc, $0, $1) {
10102
+ var Pipe$0 = $TV($C($EXPECT($L161, 'Pipe "||>"'), $EXPECT($L162, 'Pipe "|\u25B7"')), function($skip, $loc, $0, $1) {
10042
10103
  return { $loc, token: "||>" };
10043
10104
  });
10044
- var Pipe$1 = $TV($C($EXPECT($L162, 'Pipe "|>="'), $EXPECT($L163, 'Pipe "\u25B7="')), function($skip, $loc, $0, $1) {
10105
+ var Pipe$1 = $TV($C($EXPECT($L163, 'Pipe "|>="'), $EXPECT($L164, 'Pipe "\u25B7="')), function($skip, $loc, $0, $1) {
10045
10106
  return { $loc, token: "|>=" };
10046
10107
  });
10047
- var Pipe$2 = $TV($C($EXPECT($L164, 'Pipe "|>"'), $EXPECT($L165, 'Pipe "\u25B7"')), function($skip, $loc, $0, $1) {
10108
+ var Pipe$2 = $TV($C($EXPECT($L165, 'Pipe "|>"'), $EXPECT($L166, 'Pipe "\u25B7"')), function($skip, $loc, $0, $1) {
10048
10109
  return { $loc, token: "|>" };
10049
10110
  });
10050
10111
  var Pipe$$ = [Pipe$0, Pipe$1, Pipe$2];
@@ -10057,167 +10118,167 @@ var require_parser = __commonJS({
10057
10118
  function QuestionMark(ctx, state) {
10058
10119
  return $EVENT(ctx, state, "QuestionMark", QuestionMark$0);
10059
10120
  }
10060
- var Readonly$0 = $TS($S($EXPECT($L166, 'Readonly "readonly"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10121
+ var Readonly$0 = $TS($S($EXPECT($L167, 'Readonly "readonly"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10061
10122
  return { $loc, token: $1, ts: true };
10062
10123
  });
10063
10124
  function Readonly(ctx, state) {
10064
10125
  return $EVENT(ctx, state, "Readonly", Readonly$0);
10065
10126
  }
10066
- var Return$0 = $TS($S($EXPECT($L167, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10127
+ var Return$0 = $TS($S($EXPECT($L168, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10067
10128
  return { $loc, token: $1 };
10068
10129
  });
10069
10130
  function Return(ctx, state) {
10070
10131
  return $EVENT(ctx, state, "Return", Return$0);
10071
10132
  }
10072
- var Satisfies$0 = $TS($S($EXPECT($L168, 'Satisfies "satisfies"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10133
+ var Satisfies$0 = $TS($S($EXPECT($L169, 'Satisfies "satisfies"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10073
10134
  return { $loc, token: $1 };
10074
10135
  });
10075
10136
  function Satisfies(ctx, state) {
10076
10137
  return $EVENT(ctx, state, "Satisfies", Satisfies$0);
10077
10138
  }
10078
- var Semicolon$0 = $TV($EXPECT($L99, 'Semicolon ";"'), function($skip, $loc, $0, $1) {
10139
+ var Semicolon$0 = $TV($EXPECT($L100, 'Semicolon ";"'), function($skip, $loc, $0, $1) {
10079
10140
  return { $loc, token: $1 };
10080
10141
  });
10081
10142
  function Semicolon(ctx, state) {
10082
10143
  return $EVENT(ctx, state, "Semicolon", Semicolon$0);
10083
10144
  }
10084
- var SingleQuote$0 = $TV($EXPECT($L169, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
10145
+ var SingleQuote$0 = $TV($EXPECT($L170, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
10085
10146
  return { $loc, token: $1 };
10086
10147
  });
10087
10148
  function SingleQuote(ctx, state) {
10088
10149
  return $EVENT(ctx, state, "SingleQuote", SingleQuote$0);
10089
10150
  }
10090
- var Star$0 = $TV($EXPECT($L53, 'Star "*"'), function($skip, $loc, $0, $1) {
10151
+ var Star$0 = $TV($EXPECT($L54, 'Star "*"'), function($skip, $loc, $0, $1) {
10091
10152
  return { $loc, token: $1 };
10092
10153
  });
10093
10154
  function Star(ctx, state) {
10094
10155
  return $EVENT(ctx, state, "Star", Star$0);
10095
10156
  }
10096
- var Static$0 = $TS($S($EXPECT($L170, 'Static "static"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10157
+ var Static$0 = $TS($S($EXPECT($L171, 'Static "static"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10097
10158
  return { $loc, token: $1 };
10098
10159
  });
10099
- var Static$1 = $TS($S($EXPECT($L116, 'Static "@"'), $N($C($EXPECT($L4, 'Static "("'), $EXPECT($L116, 'Static "@"')))), function($skip, $loc, $0, $1, $2) {
10160
+ var Static$1 = $TS($S($EXPECT($L117, 'Static "@"'), $N($C($EXPECT($L4, 'Static "("'), $EXPECT($L117, 'Static "@"')))), function($skip, $loc, $0, $1, $2) {
10100
10161
  return { $loc, token: "static " };
10101
10162
  });
10102
10163
  var Static$$ = [Static$0, Static$1];
10103
10164
  function Static(ctx, state) {
10104
10165
  return $EVENT_C(ctx, state, "Static", Static$$);
10105
10166
  }
10106
- var SubstitutionStart$0 = $TV($EXPECT($L171, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
10167
+ var SubstitutionStart$0 = $TV($EXPECT($L172, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
10107
10168
  return { $loc, token: $1 };
10108
10169
  });
10109
10170
  function SubstitutionStart(ctx, state) {
10110
10171
  return $EVENT(ctx, state, "SubstitutionStart", SubstitutionStart$0);
10111
10172
  }
10112
- var Super$0 = $TS($S($EXPECT($L172, 'Super "super"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10173
+ var Super$0 = $TS($S($EXPECT($L173, 'Super "super"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10113
10174
  return { $loc, token: $1 };
10114
10175
  });
10115
10176
  function Super(ctx, state) {
10116
10177
  return $EVENT(ctx, state, "Super", Super$0);
10117
10178
  }
10118
- var Switch$0 = $TS($S($EXPECT($L173, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10179
+ var Switch$0 = $TS($S($EXPECT($L174, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10119
10180
  return { $loc, token: $1 };
10120
10181
  });
10121
10182
  function Switch(ctx, state) {
10122
10183
  return $EVENT(ctx, state, "Switch", Switch$0);
10123
10184
  }
10124
- var Target$0 = $TS($S($EXPECT($L174, 'Target "target"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10185
+ var Target$0 = $TS($S($EXPECT($L175, 'Target "target"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10125
10186
  return { $loc, token: $1 };
10126
10187
  });
10127
10188
  function Target(ctx, state) {
10128
10189
  return $EVENT(ctx, state, "Target", Target$0);
10129
10190
  }
10130
- var Then$0 = $TS($S(__, $EXPECT($L175, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
10191
+ var Then$0 = $TS($S(__, $EXPECT($L176, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
10131
10192
  return { $loc, token: "" };
10132
10193
  });
10133
10194
  function Then(ctx, state) {
10134
10195
  return $EVENT(ctx, state, "Then", Then$0);
10135
10196
  }
10136
- var This$0 = $TS($S($EXPECT($L176, 'This "this"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10197
+ var This$0 = $TS($S($EXPECT($L177, 'This "this"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10137
10198
  return { $loc, token: $1 };
10138
10199
  });
10139
10200
  function This(ctx, state) {
10140
10201
  return $EVENT(ctx, state, "This", This$0);
10141
10202
  }
10142
- var Throw$0 = $TS($S($EXPECT($L177, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10203
+ var Throw$0 = $TS($S($EXPECT($L178, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10143
10204
  return { $loc, token: $1 };
10144
10205
  });
10145
10206
  function Throw(ctx, state) {
10146
10207
  return $EVENT(ctx, state, "Throw", Throw$0);
10147
10208
  }
10148
- var TripleDoubleQuote$0 = $TV($EXPECT($L178, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
10209
+ var TripleDoubleQuote$0 = $TV($EXPECT($L179, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
10149
10210
  return { $loc, token: "`" };
10150
10211
  });
10151
10212
  function TripleDoubleQuote(ctx, state) {
10152
10213
  return $EVENT(ctx, state, "TripleDoubleQuote", TripleDoubleQuote$0);
10153
10214
  }
10154
- var TripleSingleQuote$0 = $TV($EXPECT($L179, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
10215
+ var TripleSingleQuote$0 = $TV($EXPECT($L180, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
10155
10216
  return { $loc, token: "`" };
10156
10217
  });
10157
10218
  function TripleSingleQuote(ctx, state) {
10158
10219
  return $EVENT(ctx, state, "TripleSingleQuote", TripleSingleQuote$0);
10159
10220
  }
10160
- var TripleSlash$0 = $TV($EXPECT($L180, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
10221
+ var TripleSlash$0 = $TV($EXPECT($L181, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
10161
10222
  return { $loc, token: "/" };
10162
10223
  });
10163
10224
  function TripleSlash(ctx, state) {
10164
10225
  return $EVENT(ctx, state, "TripleSlash", TripleSlash$0);
10165
10226
  }
10166
- var TripleTick$0 = $TV($EXPECT($L181, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
10227
+ var TripleTick$0 = $TV($EXPECT($L182, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
10167
10228
  return { $loc, token: "`" };
10168
10229
  });
10169
10230
  function TripleTick(ctx, state) {
10170
10231
  return $EVENT(ctx, state, "TripleTick", TripleTick$0);
10171
10232
  }
10172
- var Try$0 = $TS($S($EXPECT($L182, 'Try "try"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10233
+ var Try$0 = $TS($S($EXPECT($L183, 'Try "try"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10173
10234
  return { $loc, token: $1 };
10174
10235
  });
10175
10236
  function Try(ctx, state) {
10176
10237
  return $EVENT(ctx, state, "Try", Try$0);
10177
10238
  }
10178
- var Typeof$0 = $TS($S($EXPECT($L183, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10239
+ var Typeof$0 = $TS($S($EXPECT($L184, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10179
10240
  return { $loc, token: $1 };
10180
10241
  });
10181
10242
  function Typeof(ctx, state) {
10182
10243
  return $EVENT(ctx, state, "Typeof", Typeof$0);
10183
10244
  }
10184
- var Unless$0 = $TS($S($EXPECT($L184, 'Unless "unless"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10245
+ var Unless$0 = $TS($S($EXPECT($L185, 'Unless "unless"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10185
10246
  return { $loc, token: $1 };
10186
10247
  });
10187
10248
  function Unless(ctx, state) {
10188
10249
  return $EVENT(ctx, state, "Unless", Unless$0);
10189
10250
  }
10190
- var Until$0 = $TS($S($EXPECT($L185, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10251
+ var Until$0 = $TS($S($EXPECT($L186, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10191
10252
  return { $loc, token: $1 };
10192
10253
  });
10193
10254
  function Until(ctx, state) {
10194
10255
  return $EVENT(ctx, state, "Until", Until$0);
10195
10256
  }
10196
- var Var$0 = $TS($S($EXPECT($L186, 'Var "var"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10257
+ var Var$0 = $TS($S($EXPECT($L187, 'Var "var"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10197
10258
  return { $loc, token: $1 };
10198
10259
  });
10199
10260
  function Var(ctx, state) {
10200
10261
  return $EVENT(ctx, state, "Var", Var$0);
10201
10262
  }
10202
- var Void$0 = $TS($S($EXPECT($L187, 'Void "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10263
+ var Void$0 = $TS($S($EXPECT($L188, 'Void "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10203
10264
  return { $loc, token: $1 };
10204
10265
  });
10205
10266
  function Void(ctx, state) {
10206
10267
  return $EVENT(ctx, state, "Void", Void$0);
10207
10268
  }
10208
- var When$0 = $TS($S($EXPECT($L188, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10269
+ var When$0 = $TS($S($EXPECT($L189, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10209
10270
  return { $loc, token: "case" };
10210
10271
  });
10211
10272
  function When(ctx, state) {
10212
10273
  return $EVENT(ctx, state, "When", When$0);
10213
10274
  }
10214
- var While$0 = $TS($S($EXPECT($L189, 'While "while"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10275
+ var While$0 = $TS($S($EXPECT($L190, 'While "while"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10215
10276
  return { $loc, token: $1 };
10216
10277
  });
10217
10278
  function While(ctx, state) {
10218
10279
  return $EVENT(ctx, state, "While", While$0);
10219
10280
  }
10220
- var Yield$0 = $TS($S($EXPECT($L190, 'Yield "yield"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10281
+ var Yield$0 = $TS($S($EXPECT($L191, 'Yield "yield"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10221
10282
  return { $loc, token: $1, type: "Yield" };
10222
10283
  });
10223
10284
  function Yield(ctx, state) {
@@ -10288,7 +10349,7 @@ var require_parser = __commonJS({
10288
10349
  function JSXElement(ctx, state) {
10289
10350
  return $EVENT_C(ctx, state, "JSXElement", JSXElement$$);
10290
10351
  }
10291
- var JSXSelfClosingElement$0 = $TS($S($EXPECT($L154, 'JSXSelfClosingElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L191, 'JSXSelfClosingElement "/>"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
10352
+ var JSXSelfClosingElement$0 = $TS($S($EXPECT($L155, 'JSXSelfClosingElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L192, 'JSXSelfClosingElement "/>"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
10292
10353
  return { type: "JSXElement", children: $0, tag: $2 };
10293
10354
  });
10294
10355
  function JSXSelfClosingElement(ctx, state) {
@@ -10307,7 +10368,7 @@ var require_parser = __commonJS({
10307
10368
  function PopJSXStack(ctx, state) {
10308
10369
  return $EVENT(ctx, state, "PopJSXStack", PopJSXStack$0);
10309
10370
  }
10310
- var JSXOpeningElement$0 = $S($EXPECT($L154, 'JSXOpeningElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L32, 'JSXOpeningElement ">"'));
10371
+ var JSXOpeningElement$0 = $S($EXPECT($L155, 'JSXOpeningElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L33, 'JSXOpeningElement ">"'));
10311
10372
  function JSXOpeningElement(ctx, state) {
10312
10373
  return $EVENT(ctx, state, "JSXOpeningElement", JSXOpeningElement$0);
10313
10374
  }
@@ -10322,7 +10383,7 @@ var require_parser = __commonJS({
10322
10383
  function JSXOptionalClosingElement(ctx, state) {
10323
10384
  return $EVENT_C(ctx, state, "JSXOptionalClosingElement", JSXOptionalClosingElement$$);
10324
10385
  }
10325
- var JSXClosingElement$0 = $S($EXPECT($L192, 'JSXClosingElement "</"'), $E(Whitespace), JSXElementName, $E(Whitespace), $EXPECT($L32, 'JSXClosingElement ">"'));
10386
+ var JSXClosingElement$0 = $S($EXPECT($L193, 'JSXClosingElement "</"'), $E(Whitespace), JSXElementName, $E(Whitespace), $EXPECT($L33, 'JSXClosingElement ">"'));
10326
10387
  function JSXClosingElement(ctx, state) {
10327
10388
  return $EVENT(ctx, state, "JSXClosingElement", JSXClosingElement$0);
10328
10389
  }
@@ -10341,7 +10402,7 @@ var require_parser = __commonJS({
10341
10402
  ];
10342
10403
  return { type: "JSXFragment", children: parts, jsxChildren: children.jsxChildren };
10343
10404
  });
10344
- var JSXFragment$1 = $TS($S(CoffeeJSXEnabled, $EXPECT($L193, 'JSXFragment "<>"'), $E(JSXChildren), $E(Whitespace), JSXClosingFragment), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
10405
+ var JSXFragment$1 = $TS($S(CoffeeJSXEnabled, $EXPECT($L194, 'JSXFragment "<>"'), $E(JSXChildren), $E(Whitespace), JSXClosingFragment), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
10345
10406
  var children = $3;
10346
10407
  $0 = $0.slice(1);
10347
10408
  return {
@@ -10354,7 +10415,7 @@ var require_parser = __commonJS({
10354
10415
  function JSXFragment(ctx, state) {
10355
10416
  return $EVENT_C(ctx, state, "JSXFragment", JSXFragment$$);
10356
10417
  }
10357
- var PushJSXOpeningFragment$0 = $TV($EXPECT($L193, 'PushJSXOpeningFragment "<>"'), function($skip, $loc, $0, $1) {
10418
+ var PushJSXOpeningFragment$0 = $TV($EXPECT($L194, 'PushJSXOpeningFragment "<>"'), function($skip, $loc, $0, $1) {
10358
10419
  module.JSXTagStack.push("");
10359
10420
  return $1;
10360
10421
  });
@@ -10371,11 +10432,11 @@ var require_parser = __commonJS({
10371
10432
  function JSXOptionalClosingFragment(ctx, state) {
10372
10433
  return $EVENT_C(ctx, state, "JSXOptionalClosingFragment", JSXOptionalClosingFragment$$);
10373
10434
  }
10374
- var JSXClosingFragment$0 = $EXPECT($L194, 'JSXClosingFragment "</>"');
10435
+ var JSXClosingFragment$0 = $EXPECT($L195, 'JSXClosingFragment "</>"');
10375
10436
  function JSXClosingFragment(ctx, state) {
10376
10437
  return $EVENT(ctx, state, "JSXClosingFragment", JSXClosingFragment$0);
10377
10438
  }
10378
- var JSXElementName$0 = $TV($Y($S($C($EXPECT($L145, 'JSXElementName "#"'), Dot), JSXShorthandString)), function($skip, $loc, $0, $1) {
10439
+ var JSXElementName$0 = $TV($Y($S($C($EXPECT($L146, 'JSXElementName "#"'), Dot), JSXShorthandString)), function($skip, $loc, $0, $1) {
10379
10440
  return module.config.defaultElement;
10380
10441
  });
10381
10442
  var JSXElementName$1 = $TEXT($S(JSXIdentifierName, $C($S(Colon, JSXIdentifierName), $Q($S(Dot, JSXIdentifierName)))));
@@ -10547,7 +10608,7 @@ var require_parser = __commonJS({
10547
10608
  }
10548
10609
  return $skip;
10549
10610
  });
10550
- var JSXAttribute$5 = $TS($S($EXPECT($L145, 'JSXAttribute "#"'), JSXShorthandString), function($skip, $loc, $0, $1, $2) {
10611
+ var JSXAttribute$5 = $TS($S($EXPECT($L146, 'JSXAttribute "#"'), JSXShorthandString), function($skip, $loc, $0, $1, $2) {
10551
10612
  return [" ", "id=", $2];
10552
10613
  });
10553
10614
  var JSXAttribute$6 = $TS($S(Dot, JSXShorthandString), function($skip, $loc, $0, $1, $2) {
@@ -10785,7 +10846,7 @@ var require_parser = __commonJS({
10785
10846
  }
10786
10847
  return $skip;
10787
10848
  });
10788
- var JSXNestedChildren$1 = $TV($Y($C(JSXEOS, $EXPECT($L24, 'JSXNestedChildren "}"'), JSXClosingElement, JSXClosingFragment)), function($skip, $loc, $0, $1) {
10849
+ var JSXNestedChildren$1 = $TV($Y($C(JSXEOS, $EXPECT($L25, 'JSXNestedChildren "}"'), JSXClosingElement, JSXClosingFragment)), function($skip, $loc, $0, $1) {
10789
10850
  return { children: [], jsxChildren: [] };
10790
10851
  });
10791
10852
  var JSXNestedChildren$$ = [JSXNestedChildren$0, JSXNestedChildren$1];
@@ -10840,7 +10901,7 @@ var require_parser = __commonJS({
10840
10901
  function JSXChild(ctx, state) {
10841
10902
  return $EVENT_C(ctx, state, "JSXChild", JSXChild$$);
10842
10903
  }
10843
- var JSXComment$0 = $TS($S($EXPECT($L195, 'JSXComment "<!--"'), JSXCommentContent, $EXPECT($L196, 'JSXComment "-->"')), function($skip, $loc, $0, $1, $2, $3) {
10904
+ var JSXComment$0 = $TS($S($EXPECT($L196, 'JSXComment "<!--"'), JSXCommentContent, $EXPECT($L197, 'JSXComment "-->"')), function($skip, $loc, $0, $1, $2, $3) {
10844
10905
  return ["{/*", $2, "*/}"];
10845
10906
  });
10846
10907
  function JSXComment(ctx, state) {
@@ -10926,37 +10987,37 @@ var require_parser = __commonJS({
10926
10987
  function InterfaceExtendsTarget(ctx, state) {
10927
10988
  return $EVENT(ctx, state, "InterfaceExtendsTarget", InterfaceExtendsTarget$0);
10928
10989
  }
10929
- var TypeKeyword$0 = $TS($S($EXPECT($L197, 'TypeKeyword "type"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10990
+ var TypeKeyword$0 = $TS($S($EXPECT($L198, 'TypeKeyword "type"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10930
10991
  return { $loc, token: $1 };
10931
10992
  });
10932
10993
  function TypeKeyword(ctx, state) {
10933
10994
  return $EVENT(ctx, state, "TypeKeyword", TypeKeyword$0);
10934
10995
  }
10935
- var Enum$0 = $TS($S($EXPECT($L198, 'Enum "enum"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10996
+ var Enum$0 = $TS($S($EXPECT($L199, 'Enum "enum"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10936
10997
  return { $loc, token: $1 };
10937
10998
  });
10938
10999
  function Enum(ctx, state) {
10939
11000
  return $EVENT(ctx, state, "Enum", Enum$0);
10940
11001
  }
10941
- var Interface$0 = $TS($S($EXPECT($L199, 'Interface "interface"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11002
+ var Interface$0 = $TS($S($EXPECT($L200, 'Interface "interface"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10942
11003
  return { $loc, token: $1 };
10943
11004
  });
10944
11005
  function Interface(ctx, state) {
10945
11006
  return $EVENT(ctx, state, "Interface", Interface$0);
10946
11007
  }
10947
- var Global$0 = $TS($S($EXPECT($L200, 'Global "global"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11008
+ var Global$0 = $TS($S($EXPECT($L201, 'Global "global"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10948
11009
  return { $loc, token: $1 };
10949
11010
  });
10950
11011
  function Global(ctx, state) {
10951
11012
  return $EVENT(ctx, state, "Global", Global$0);
10952
11013
  }
10953
- var Module$0 = $TS($S($EXPECT($L201, 'Module "module"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11014
+ var Module$0 = $TS($S($EXPECT($L202, 'Module "module"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10954
11015
  return { $loc, token: $1 };
10955
11016
  });
10956
11017
  function Module(ctx, state) {
10957
11018
  return $EVENT(ctx, state, "Module", Module$0);
10958
11019
  }
10959
- var Namespace$0 = $TS($S($EXPECT($L202, 'Namespace "namespace"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11020
+ var Namespace$0 = $TS($S($EXPECT($L203, 'Namespace "namespace"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10960
11021
  return { $loc, token: $1 };
10961
11022
  });
10962
11023
  function Namespace(ctx, state) {
@@ -11201,7 +11262,7 @@ var require_parser = __commonJS({
11201
11262
  function ReturnTypeSuffix(ctx, state) {
11202
11263
  return $EVENT(ctx, state, "ReturnTypeSuffix", ReturnTypeSuffix$0);
11203
11264
  }
11204
- var ReturnType$0 = $TS($S($E($S(__, $EXPECT($L203, 'ReturnType "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2) {
11265
+ var ReturnType$0 = $TS($S($E($S(__, $EXPECT($L204, 'ReturnType "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2) {
11205
11266
  var asserts = $1;
11206
11267
  var t = $2;
11207
11268
  if (asserts) {
@@ -11222,7 +11283,7 @@ var require_parser = __commonJS({
11222
11283
  function ReturnType(ctx, state) {
11223
11284
  return $EVENT(ctx, state, "ReturnType", ReturnType$0);
11224
11285
  }
11225
- var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L150, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
11286
+ var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L151, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
11226
11287
  var lhs = $1;
11227
11288
  var rhs = $2;
11228
11289
  if (!rhs)
@@ -11270,10 +11331,10 @@ var require_parser = __commonJS({
11270
11331
  function TypeUnarySuffix(ctx, state) {
11271
11332
  return $EVENT_C(ctx, state, "TypeUnarySuffix", TypeUnarySuffix$$);
11272
11333
  }
11273
- var TypeUnaryOp$0 = $S($EXPECT($L204, 'TypeUnaryOp "keyof"'), NonIdContinue);
11274
- var TypeUnaryOp$1 = $S($EXPECT($L183, 'TypeUnaryOp "typeof"'), NonIdContinue);
11275
- var TypeUnaryOp$2 = $S($EXPECT($L205, 'TypeUnaryOp "infer"'), NonIdContinue);
11276
- var TypeUnaryOp$3 = $S($EXPECT($L166, 'TypeUnaryOp "readonly"'), NonIdContinue);
11334
+ var TypeUnaryOp$0 = $S($EXPECT($L205, 'TypeUnaryOp "keyof"'), NonIdContinue);
11335
+ var TypeUnaryOp$1 = $S($EXPECT($L184, 'TypeUnaryOp "typeof"'), NonIdContinue);
11336
+ var TypeUnaryOp$2 = $S($EXPECT($L206, 'TypeUnaryOp "infer"'), NonIdContinue);
11337
+ var TypeUnaryOp$3 = $S($EXPECT($L167, 'TypeUnaryOp "readonly"'), NonIdContinue);
11277
11338
  var TypeUnaryOp$$ = [TypeUnaryOp$0, TypeUnaryOp$1, TypeUnaryOp$2, TypeUnaryOp$3];
11278
11339
  function TypeUnaryOp(ctx, state) {
11279
11340
  return $EVENT_C(ctx, state, "TypeUnaryOp", TypeUnaryOp$$);
@@ -11282,7 +11343,7 @@ var require_parser = __commonJS({
11282
11343
  function TypeIndexedAccess(ctx, state) {
11283
11344
  return $EVENT(ctx, state, "TypeIndexedAccess", TypeIndexedAccess$0);
11284
11345
  }
11285
- var UnknownAlias$0 = $TV($EXPECT($L206, 'UnknownAlias "???"'), function($skip, $loc, $0, $1) {
11346
+ var UnknownAlias$0 = $TV($EXPECT($L207, 'UnknownAlias "???"'), function($skip, $loc, $0, $1) {
11286
11347
  return { $loc, token: "unknown" };
11287
11348
  });
11288
11349
  function UnknownAlias(ctx, state) {
@@ -11384,7 +11445,7 @@ var require_parser = __commonJS({
11384
11445
  function NestedType(ctx, state) {
11385
11446
  return $EVENT(ctx, state, "NestedType", NestedType$0);
11386
11447
  }
11387
- var TypeConditional$0 = $TS($S(TypeBinary, $E($S(__, $EXPECT($L138, 'TypeConditional "extends"'), NonIdContinue, Type, $E($S(__, QuestionMark, Type, __, Colon, Type))))), function($skip, $loc, $0, $1, $2) {
11448
+ var TypeConditional$0 = $TS($S(TypeBinary, $E($S(__, $EXPECT($L139, 'TypeConditional "extends"'), NonIdContinue, Type, $E($S(__, QuestionMark, Type, __, Colon, Type))))), function($skip, $loc, $0, $1, $2) {
11388
11449
  if ($2)
11389
11450
  return $0;
11390
11451
  return $1;
@@ -11422,10 +11483,10 @@ var require_parser = __commonJS({
11422
11483
  }
11423
11484
  var TypeLiteral$0 = TypeTemplateLiteral;
11424
11485
  var TypeLiteral$1 = Literal;
11425
- var TypeLiteral$2 = $TS($S($EXPECT($L187, 'TypeLiteral "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11486
+ var TypeLiteral$2 = $TS($S($EXPECT($L188, 'TypeLiteral "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11426
11487
  return { type: "VoidType", $loc, token: $1 };
11427
11488
  });
11428
- var TypeLiteral$3 = $TV($EXPECT($L207, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
11489
+ var TypeLiteral$3 = $TV($EXPECT($L208, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
11429
11490
  return { $loc, token: "[]" };
11430
11491
  });
11431
11492
  var TypeLiteral$$ = [TypeLiteral$0, TypeLiteral$1, TypeLiteral$2, TypeLiteral$3];
@@ -11444,16 +11505,16 @@ var require_parser = __commonJS({
11444
11505
  var InlineInterfacePropertyDelimiter$1 = $T($S($Y($S($C(IndentedFurther, $E(_)), InlineBasicInterfaceProperty)), InsertComma), function(value) {
11445
11506
  return value[1];
11446
11507
  });
11447
- var InlineInterfacePropertyDelimiter$2 = $Y($S(__, $C($EXPECT($L12, 'InlineInterfacePropertyDelimiter ":"'), $EXPECT($L113, 'InlineInterfacePropertyDelimiter ")"'), $EXPECT($L33, 'InlineInterfacePropertyDelimiter "]"'), $EXPECT($L24, 'InlineInterfacePropertyDelimiter "}"'))));
11508
+ var InlineInterfacePropertyDelimiter$2 = $Y($S(__, $C($EXPECT($L12, 'InlineInterfacePropertyDelimiter ":"'), $EXPECT($L114, 'InlineInterfacePropertyDelimiter ")"'), $EXPECT($L34, 'InlineInterfacePropertyDelimiter "]"'), $EXPECT($L25, 'InlineInterfacePropertyDelimiter "}"'))));
11448
11509
  var InlineInterfacePropertyDelimiter$3 = $Y(EOS);
11449
11510
  var InlineInterfacePropertyDelimiter$$ = [InlineInterfacePropertyDelimiter$0, InlineInterfacePropertyDelimiter$1, InlineInterfacePropertyDelimiter$2, InlineInterfacePropertyDelimiter$3];
11450
11511
  function InlineInterfacePropertyDelimiter(ctx, state) {
11451
11512
  return $EVENT_C(ctx, state, "InlineInterfacePropertyDelimiter", InlineInterfacePropertyDelimiter$$);
11452
11513
  }
11453
- var TypeBinaryOp$0 = $TV($EXPECT($L98, 'TypeBinaryOp "|"'), function($skip, $loc, $0, $1) {
11514
+ var TypeBinaryOp$0 = $TV($EXPECT($L99, 'TypeBinaryOp "|"'), function($skip, $loc, $0, $1) {
11454
11515
  return { $loc, token: "|" };
11455
11516
  });
11456
- var TypeBinaryOp$1 = $TV($EXPECT($L97, 'TypeBinaryOp "&"'), function($skip, $loc, $0, $1) {
11517
+ var TypeBinaryOp$1 = $TV($EXPECT($L98, 'TypeBinaryOp "&"'), function($skip, $loc, $0, $1) {
11457
11518
  return { $loc, token: "&" };
11458
11519
  });
11459
11520
  var TypeBinaryOp$$ = [TypeBinaryOp$0, TypeBinaryOp$1];
@@ -11470,13 +11531,13 @@ var require_parser = __commonJS({
11470
11531
  function FunctionType(ctx, state) {
11471
11532
  return $EVENT(ctx, state, "FunctionType", FunctionType$0);
11472
11533
  }
11473
- var TypeArrowFunction$0 = $TV($C($EXPECT($L9, 'TypeArrowFunction "=>"'), $EXPECT($L10, 'TypeArrowFunction "\u21D2"'), $EXPECT($L22, 'TypeArrowFunction "->"'), $EXPECT($L23, 'TypeArrowFunction "\u2192"')), function($skip, $loc, $0, $1) {
11534
+ var TypeArrowFunction$0 = $TV($C($EXPECT($L9, 'TypeArrowFunction "=>"'), $EXPECT($L10, 'TypeArrowFunction "\u21D2"'), $EXPECT($L23, 'TypeArrowFunction "->"'), $EXPECT($L24, 'TypeArrowFunction "\u2192"')), function($skip, $loc, $0, $1) {
11474
11535
  return { $loc, token: "=>" };
11475
11536
  });
11476
11537
  function TypeArrowFunction(ctx, state) {
11477
11538
  return $EVENT(ctx, state, "TypeArrowFunction", TypeArrowFunction$0);
11478
11539
  }
11479
- var TypeArguments$0 = $TS($S($EXPECT($L154, 'TypeArguments "<"'), $P(TypeArgument), __, $EXPECT($L32, 'TypeArguments ">"')), function($skip, $loc, $0, $1, $2, $3, $4) {
11540
+ var TypeArguments$0 = $TS($S($EXPECT($L155, 'TypeArguments "<"'), $P(TypeArgument), __, $EXPECT($L33, 'TypeArguments ">"')), function($skip, $loc, $0, $1, $2, $3, $4) {
11480
11541
  var args = $2;
11481
11542
  return { ts: true, types: args.map(([, t]) => t), children: $0 };
11482
11543
  });
@@ -11491,7 +11552,7 @@ var require_parser = __commonJS({
11491
11552
  function TypeArgumentDelimiter(ctx, state) {
11492
11553
  return $EVENT(ctx, state, "TypeArgumentDelimiter", TypeArgumentDelimiter$0);
11493
11554
  }
11494
- var TypeParameters$0 = $TS($S($E(_), $EXPECT($L154, 'TypeParameters "<"'), $P(TypeParameter), __, $EXPECT($L32, 'TypeParameters ">"')), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
11555
+ var TypeParameters$0 = $TS($S($E(_), $EXPECT($L155, 'TypeParameters "<"'), $P(TypeParameter), __, $EXPECT($L33, 'TypeParameters ">"')), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
11495
11556
  var parameters = $3;
11496
11557
  return {
11497
11558
  type: "TypeParameters",
@@ -11503,11 +11564,11 @@ var require_parser = __commonJS({
11503
11564
  function TypeParameters(ctx, state) {
11504
11565
  return $EVENT(ctx, state, "TypeParameters", TypeParameters$0);
11505
11566
  }
11506
- var TypeParameter$0 = $S(__, $E($S($EXPECT($L149, 'TypeParameter "const"'), $E(_))), Identifier, $E(TypeConstraint), $E(TypeInitializer), TypeParameterDelimiter);
11567
+ var TypeParameter$0 = $S(__, $E($S($EXPECT($L150, 'TypeParameter "const"'), $E(_))), Identifier, $E(TypeConstraint), $E(TypeInitializer), TypeParameterDelimiter);
11507
11568
  function TypeParameter(ctx, state) {
11508
11569
  return $EVENT(ctx, state, "TypeParameter", TypeParameter$0);
11509
11570
  }
11510
- var TypeConstraint$0 = $S(__, $EXPECT($L138, 'TypeConstraint "extends"'), NonIdContinue, Type);
11571
+ var TypeConstraint$0 = $S(__, $EXPECT($L139, 'TypeConstraint "extends"'), NonIdContinue, Type);
11511
11572
  function TypeConstraint(ctx, state) {
11512
11573
  return $EVENT(ctx, state, "TypeConstraint", TypeConstraint$0);
11513
11574
  }
@@ -11516,7 +11577,7 @@ var require_parser = __commonJS({
11516
11577
  return $EVENT(ctx, state, "TypeInitializer", TypeInitializer$0);
11517
11578
  }
11518
11579
  var TypeParameterDelimiter$0 = $S($Q(_), Comma);
11519
- var TypeParameterDelimiter$1 = $Y($S(__, $EXPECT($L32, 'TypeParameterDelimiter ">"')));
11580
+ var TypeParameterDelimiter$1 = $Y($S(__, $EXPECT($L33, 'TypeParameterDelimiter ">"')));
11520
11581
  var TypeParameterDelimiter$2 = $T($S($Y(EOS), InsertComma), function(value) {
11521
11582
  return value[1];
11522
11583
  });
@@ -11534,11 +11595,11 @@ var require_parser = __commonJS({
11534
11595
  function Shebang(ctx, state) {
11535
11596
  return $EVENT(ctx, state, "Shebang", Shebang$0);
11536
11597
  }
11537
- var CivetPrologue$0 = $T($S($EXPECT($R62, "CivetPrologue /[\\t ]*/"), DoubleQuote, CivetPrologueContent, DoubleQuote, $TEXT(SimpleStatementDelimiter), $E(EOS)), function(value) {
11598
+ var CivetPrologue$0 = $T($S($EXPECT($R62, "CivetPrologue /[\\t ]*/"), DoubleQuote, CivetPrologueContent, DoubleQuote, SimpleStatementDelimiter, $E(EOS)), function(value) {
11538
11599
  var content = value[2];
11539
11600
  return content;
11540
11601
  });
11541
- var CivetPrologue$1 = $T($S($EXPECT($R62, "CivetPrologue /[\\t ]*/"), SingleQuote, CivetPrologueContent, SingleQuote, $TEXT(SimpleStatementDelimiter), $E(EOS)), function(value) {
11602
+ var CivetPrologue$1 = $T($S($EXPECT($R62, "CivetPrologue /[\\t ]*/"), SingleQuote, CivetPrologueContent, SingleQuote, SimpleStatementDelimiter, $E(EOS)), function(value) {
11542
11603
  var content = value[2];
11543
11604
  return content;
11544
11605
  });
@@ -11546,7 +11607,7 @@ var require_parser = __commonJS({
11546
11607
  function CivetPrologue(ctx, state) {
11547
11608
  return $EVENT_C(ctx, state, "CivetPrologue", CivetPrologue$$);
11548
11609
  }
11549
- var CivetPrologueContent$0 = $TS($S($EXPECT($L208, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($R63, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
11610
+ var CivetPrologueContent$0 = $TS($S($EXPECT($L209, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($R63, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
11550
11611
  var options = $3;
11551
11612
  return {
11552
11613
  type: "CivetPrologue",
@@ -11578,17 +11639,25 @@ var require_parser = __commonJS({
11578
11639
  function UnknownPrologue(ctx, state) {
11579
11640
  return $EVENT(ctx, state, "UnknownPrologue", UnknownPrologue$0);
11580
11641
  }
11581
- var DirectivePrologue$0 = CivetPrologue;
11582
- var DirectivePrologue$1 = UnknownPrologue;
11583
- var DirectivePrologue$$ = [DirectivePrologue$0, DirectivePrologue$1];
11642
+ var TripleSlashDirective$0 = $S($R$0($EXPECT($R65, "TripleSlashDirective /\\/\\/\\/[^\\r\\n]*/")), $E(EOS));
11643
+ function TripleSlashDirective(ctx, state) {
11644
+ return $EVENT(ctx, state, "TripleSlashDirective", TripleSlashDirective$0);
11645
+ }
11646
+ var DirectivePrologue$0 = PrologueString;
11584
11647
  function DirectivePrologue(ctx, state) {
11585
- return $EVENT_C(ctx, state, "DirectivePrologue", DirectivePrologue$$);
11648
+ return $EVENT(ctx, state, "DirectivePrologue", DirectivePrologue$0);
11649
+ }
11650
+ var PrologueString$0 = CivetPrologue;
11651
+ var PrologueString$1 = UnknownPrologue;
11652
+ var PrologueString$$ = [PrologueString$0, PrologueString$1];
11653
+ function PrologueString(ctx, state) {
11654
+ return $EVENT_C(ctx, state, "PrologueString", PrologueString$$);
11586
11655
  }
11587
11656
  var EOS$0 = $P(RestOfLine);
11588
11657
  function EOS(ctx, state) {
11589
11658
  return $EVENT(ctx, state, "EOS", EOS$0);
11590
11659
  }
11591
- var EOL$0 = $TR($EXPECT($R65, "EOL /\\r\\n|\\n|\\r|$/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11660
+ var EOL$0 = $TR($EXPECT($R66, "EOL /\\r\\n|\\n|\\r|$/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11592
11661
  return { $loc, token: $0 };
11593
11662
  });
11594
11663
  function EOL(ctx, state) {
@@ -12063,8 +12132,8 @@ var require_parser = __commonJS({
12063
12132
  function Reset(ctx, state) {
12064
12133
  return $EVENT(ctx, state, "Reset", Reset$0);
12065
12134
  }
12066
- var Init$0 = $TS($S($E(Shebang), $Q(DirectivePrologue), $EXPECT($L0, 'Init ""')), function($skip, $loc, $0, $1, $2, $3) {
12067
- var directives = $2;
12135
+ var Init$0 = $TS($S($E(Shebang), $Q(TripleSlashDirective), $Q(DirectivePrologue)), function($skip, $loc, $0, $1, $2, $3) {
12136
+ var directives = $3;
12068
12137
  directives.forEach((directive) => {
12069
12138
  if (directive.type === "CivetPrologue") {
12070
12139
  Object.assign(module.config, directive.config);
@@ -12075,7 +12144,7 @@ var require_parser = __commonJS({
12075
12144
  function Init(ctx, state) {
12076
12145
  return $EVENT(ctx, state, "Init", Init$0);
12077
12146
  }
12078
- var Indent$0 = $TR($EXPECT($R66, "Indent /[ \\t]*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
12147
+ var Indent$0 = $TR($EXPECT($R67, "Indent /[ \\t]*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
12079
12148
  let level;
12080
12149
  if (module.config.tab) {
12081
12150
  const tabs = $0.match(/\t/g);
@@ -12287,8 +12356,10 @@ var require_parser = __commonJS({
12287
12356
  exports.NonNullAssertion = NonNullAssertion;
12288
12357
  exports.MemberExpression = MemberExpression;
12289
12358
  exports.MemberExpressionRest = MemberExpressionRest;
12359
+ exports.MemberExpressionRestBody = MemberExpressionRestBody;
12290
12360
  exports.MemberBracketContent = MemberBracketContent;
12291
12361
  exports.SliceParameters = SliceParameters;
12362
+ exports.AccessStart = AccessStart;
12292
12363
  exports.PropertyAccess = PropertyAccess;
12293
12364
  exports.PropertyGlob = PropertyGlob;
12294
12365
  exports.PropertyBind = PropertyBind;
@@ -12401,6 +12472,7 @@ var require_parser = __commonJS({
12401
12472
  exports.AssignmentOpSymbol = AssignmentOpSymbol;
12402
12473
  exports.CoffeeWordAssignmentOp = CoffeeWordAssignmentOp;
12403
12474
  exports.NotDedentedBinaryOp = NotDedentedBinaryOp;
12475
+ exports.IdentifierBinaryOp = IdentifierBinaryOp;
12404
12476
  exports.BinaryOp = BinaryOp;
12405
12477
  exports.BinaryOpSymbol = BinaryOpSymbol;
12406
12478
  exports.Xor = Xor;
@@ -12803,7 +12875,9 @@ var require_parser = __commonJS({
12803
12875
  exports.CivetPrologueContent = CivetPrologueContent;
12804
12876
  exports.CivetOption = CivetOption;
12805
12877
  exports.UnknownPrologue = UnknownPrologue;
12878
+ exports.TripleSlashDirective = TripleSlashDirective;
12806
12879
  exports.DirectivePrologue = DirectivePrologue;
12880
+ exports.PrologueString = PrologueString;
12807
12881
  exports.EOS = EOS;
12808
12882
  exports.EOL = EOL;
12809
12883
  exports.DebugHere = DebugHere;
@@ -12897,9 +12971,7 @@ var require_parser = __commonJS({
12897
12971
  var import_parser = __toESM(require_parser());
12898
12972
 
12899
12973
  // source/generate.civet
12900
- var gen;
12901
- var generate_default = gen = function(node, options) {
12902
- var token, $loc;
12974
+ function gen(node, options) {
12903
12975
  if (node === null || node === void 0) {
12904
12976
  return "";
12905
12977
  }
@@ -12925,7 +12997,7 @@ var generate_default = gen = function(node, options) {
12925
12997
  return "";
12926
12998
  }
12927
12999
  if (node.$loc != null) {
12928
- ({ token, $loc } = node);
13000
+ const { token, $loc } = node;
12929
13001
  options?.updateSourceMap?.(token, $loc.pos);
12930
13002
  return token;
12931
13003
  }
@@ -12943,9 +13015,9 @@ var generate_default = gen = function(node, options) {
12943
13015
  }
12944
13016
  debugger;
12945
13017
  throw new Error(`Unknown node ${JSON.stringify(node)}`);
12946
- };
12947
- var prune = function(node) {
12948
- var a;
13018
+ }
13019
+ var generate_default = gen;
13020
+ function prune(node) {
12949
13021
  if (node === null || node === void 0) {
12950
13022
  return;
12951
13023
  }
@@ -12956,11 +13028,9 @@ var prune = function(node) {
12956
13028
  delete node.parent;
12957
13029
  }
12958
13030
  if (Array.isArray(node)) {
12959
- a = node.map(function(n) {
13031
+ const a = node.map(function(n) {
12960
13032
  return prune(n);
12961
- }).filter(function(n) {
12962
- return !!n;
12963
- });
13033
+ }).filter(($) => !!$);
12964
13034
  if (a.length > 1) {
12965
13035
  return a;
12966
13036
  }
@@ -12974,7 +13044,7 @@ var prune = function(node) {
12974
13044
  return node;
12975
13045
  }
12976
13046
  return node;
12977
- };
13047
+ }
12978
13048
 
12979
13049
  // source/util.civet
12980
13050
  var util_exports = {};
@@ -13351,13 +13421,9 @@ var StateCache = class {
13351
13421
  };
13352
13422
 
13353
13423
  // source/main.civet
13354
- var parse;
13355
- var SourceMap2;
13356
- var uncacheable;
13357
- var makeCache;
13358
- ({ parse } = import_parser.default);
13359
- ({ SourceMap: SourceMap2 } = util_exports);
13360
- uncacheable = /* @__PURE__ */ new Set([
13424
+ var { parse } = import_parser.default;
13425
+ var { SourceMap: SourceMap2 } = util_exports;
13426
+ var uncacheable = /* @__PURE__ */ new Set([
13361
13427
  "DebugHere",
13362
13428
  "Init",
13363
13429
  "Program",
@@ -13389,23 +13455,23 @@ uncacheable = /* @__PURE__ */ new Set([
13389
13455
  "RestoreTrailingMemberProperty",
13390
13456
  "RestoreNewlineBinaryOp"
13391
13457
  ]);
13392
- var compile = function(src, options) {
13393
- var filename, ast, result, events, sm, code;
13458
+ function compile(src, options) {
13394
13459
  if (!options) {
13395
13460
  options = {};
13396
13461
  } else {
13397
13462
  options = { ...options };
13398
13463
  }
13399
13464
  options.parseOptions ?? (options.parseOptions = {});
13400
- filename = options.filename || "unknown";
13465
+ const filename = options.filename || "unknown";
13401
13466
  if (filename.endsWith(".coffee") && !/^(#![^\r\n]*(\r\n|\n|\r))?\s*['"]civet/.test(src)) {
13402
13467
  options.parseOptions.coffeeCompat = true;
13403
13468
  }
13469
+ let events;
13404
13470
  if (!options.noCache) {
13405
13471
  events = makeCache();
13406
13472
  }
13407
13473
  parse.config = options.parseOptions || {};
13408
- ast = prune(parse(src, {
13474
+ const ast = prune(parse(src, {
13409
13475
  filename,
13410
13476
  events
13411
13477
  }));
@@ -13413,9 +13479,9 @@ var compile = function(src, options) {
13413
13479
  return ast;
13414
13480
  }
13415
13481
  if (options.sourceMap || options.inlineMap) {
13416
- sm = SourceMap2(src);
13482
+ const sm = SourceMap2(src);
13417
13483
  options.updateSourceMap = sm.updateSourceMap;
13418
- code = generate_default(ast, options);
13484
+ const code = generate_default(ast, options);
13419
13485
  if (options.inlineMap) {
13420
13486
  return SourceMap2.remap(code, sm, filename, filename + ".tsx");
13421
13487
  } else {
@@ -13425,27 +13491,24 @@ var compile = function(src, options) {
13425
13491
  };
13426
13492
  }
13427
13493
  }
13428
- result = generate_default(ast, options);
13494
+ const result = generate_default(ast, options);
13429
13495
  if (options.errors?.length) {
13430
- throw new Error(`Parse errors: ${options.errors.map(function(e) {
13431
- return e.message;
13432
- }).join("\n")} `);
13496
+ throw new Error(`Parse errors: ${options.errors.map(($) => $.message).join("\n")} `);
13433
13497
  }
13434
13498
  return result;
13435
- };
13436
- makeCache = function() {
13437
- var stateCache, getStateKey, events;
13438
- stateCache = new StateCache();
13439
- getStateKey = null;
13440
- events = {
13499
+ }
13500
+ function makeCache() {
13501
+ const stateCache = new StateCache();
13502
+ let getStateKey = null;
13503
+ const events = {
13441
13504
  enter: function(ruleName, state) {
13442
- var key, result;
13443
13505
  if (uncacheable.has(ruleName)) {
13444
13506
  return;
13445
13507
  }
13446
- key = [ruleName, state.pos, ...getStateKey()];
13508
+ ;
13509
+ const key = [ruleName, state.pos, ...getStateKey()];
13447
13510
  if (stateCache.has(key)) {
13448
- result = stateCache.get(key);
13511
+ const result = stateCache.get(key);
13449
13512
  return {
13450
13513
  cache: result ? { ...result } : void 0
13451
13514
  };
@@ -13453,12 +13516,11 @@ makeCache = function() {
13453
13516
  return;
13454
13517
  },
13455
13518
  exit: function(ruleName, state, result) {
13456
- var key;
13457
13519
  if (ruleName === "Reset") {
13458
13520
  ({ getStateKey } = result.value);
13459
13521
  }
13460
13522
  if (!uncacheable.has(ruleName)) {
13461
- key = [ruleName, state.pos, ...getStateKey()];
13523
+ const key = [ruleName, state.pos, ...getStateKey()];
13462
13524
  if (result) {
13463
13525
  stateCache.set(key, { ...result });
13464
13526
  } else {
@@ -13472,11 +13534,9 @@ makeCache = function() {
13472
13534
  }
13473
13535
  };
13474
13536
  return events;
13475
- };
13537
+ }
13476
13538
  var isCompileError = function(err) {
13477
- return err instanceof Error && [err.message, err.name, err.filename, err.line, err.column, err.offset].every(function(value) {
13478
- return value !== void 0;
13479
- });
13539
+ return err instanceof Error && [err.message, err.name, err.filename, err.line, err.column, err.offset].every(($1) => $1 !== void 0);
13480
13540
  };
13481
13541
  var main_default = { parse, generate: generate_default, util: util_exports, compile, isCompileError };
13482
13542
  export {