@danielx/civet 0.6.68 → 0.6.70

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/browser.js CHANGED
@@ -658,6 +658,37 @@ var Civet = (() => {
658
658
  }
659
659
  function processCallMemberExpression(node) {
660
660
  const { children } = node;
661
+ if (children[0]?.parenthesizedOp?.token && children[1]?.type === "Call") {
662
+ const op = children[0].parenthesizedOp;
663
+ let call = children[1];
664
+ const args = [...call.args];
665
+ call = { ...call, args };
666
+ let ref2;
667
+ if (ref2 = isComma(args.at(-1))) {
668
+ const comma = ref2;
669
+ comma.token = "";
670
+ }
671
+ let commaCount = 0;
672
+ for (let i4 = 0, len4 = args.length; i4 < len4; i4++) {
673
+ const arg = args[i4];
674
+ let ref3;
675
+ if (ref3 = isComma(arg)) {
676
+ const comma = ref3;
677
+ comma.token = `)${op.token}(`;
678
+ commaCount++;
679
+ }
680
+ }
681
+ if (args.length) {
682
+ children.splice(
683
+ 0,
684
+ 2,
685
+ commaCount ? {
686
+ type: "ParenthesizedExpression",
687
+ children: ["(", call, ")"]
688
+ } : { ...call, type: "ParenthesizedExpression" }
689
+ );
690
+ }
691
+ }
661
692
  for (let i = 0; i < children.length; i++) {
662
693
  const glob = children[i];
663
694
  if (glob?.type === "PropertyGlob") {
@@ -1050,18 +1081,18 @@ var Civet = (() => {
1050
1081
  }
1051
1082
  function findChildIndex(parent, child) {
1052
1083
  const children = Array.isArray(parent) ? parent : parent.children;
1053
- for (let i4 = 0, len4 = children.length; i4 < len4; i4++) {
1054
- const i = i4;
1055
- const c = children[i4];
1084
+ for (let i5 = 0, len5 = children.length; i5 < len5; i5++) {
1085
+ const i = i5;
1086
+ const c = children[i5];
1056
1087
  if (c === child || Array.isArray(c) && arrayRecurse(c)) {
1057
1088
  return i;
1058
1089
  }
1059
1090
  }
1060
1091
  function arrayRecurse(array) {
1061
1092
  const results2 = [];
1062
- for (let i5 = 0, len5 = array.length; i5 < len5; i5++) {
1063
- const i = i5;
1064
- const c = array[i5];
1093
+ for (let i6 = 0, len6 = array.length; i6 < len6; i6++) {
1094
+ const i = i6;
1095
+ const c = array[i6];
1065
1096
  if (c === child || Array.isArray(c) && arrayRecurse(c)) {
1066
1097
  return true;
1067
1098
  } else {
@@ -1078,9 +1109,9 @@ var Civet = (() => {
1078
1109
  throw new Error("replaceNode failed: node has no parent");
1079
1110
  }
1080
1111
  function recurse(children) {
1081
- for (let i6 = 0, len6 = children.length; i6 < len6; i6++) {
1082
- const i = i6;
1083
- const child = children[i6];
1112
+ for (let i7 = 0, len7 = children.length; i7 < len7; i7++) {
1113
+ const i = i7;
1114
+ const child = children[i7];
1084
1115
  if (child === node) {
1085
1116
  children[i] = newNode;
1086
1117
  return true;
@@ -1394,6 +1425,15 @@ var Civet = (() => {
1394
1425
  "ContinueStatement"
1395
1426
  ].includes(node?.type);
1396
1427
  }
1428
+ function isComma(node) {
1429
+ if (node?.token === ",") {
1430
+ return node;
1431
+ } else if (Array.isArray(node) && node.at(-1)?.token === ",") {
1432
+ return node.at(-1);
1433
+ }
1434
+ ;
1435
+ return;
1436
+ }
1397
1437
  function gatherRecursiveWithinFunction(node, predicate) {
1398
1438
  return gatherRecursive(node, predicate, isFunction);
1399
1439
  }
@@ -1751,6 +1791,9 @@ var Civet = (() => {
1751
1791
  return;
1752
1792
  }
1753
1793
  function makeLeftHandSideExpression(expression) {
1794
+ if (expression.parenthesized) {
1795
+ return expression;
1796
+ }
1754
1797
  switch (expression.type) {
1755
1798
  case "Ref":
1756
1799
  case "AmpersandRef":
@@ -1915,7 +1958,7 @@ var Civet = (() => {
1915
1958
  children
1916
1959
  };
1917
1960
  }
1918
- function makeGetterMethod(name, ws, value, block, kind = { token: "get" }, autoReturn = true) {
1961
+ function makeGetterMethod(name, ws, value, returnType, block, kind = { token: "get" }, autoReturn = true) {
1919
1962
  const { token } = kind;
1920
1963
  ws = insertTrimmingSpace(ws, "");
1921
1964
  let setVal;
@@ -1946,7 +1989,7 @@ var Civet = (() => {
1946
1989
  const finalStatement = token === "get" ? [[expressions[0]?.[0] || "", ws], wrapWithReturn(value)] : [[expressions[0]?.[0] || "", ws], [value, " = ", setVal]];
1947
1990
  expressions.push(finalStatement);
1948
1991
  }
1949
- const children = [kind, " ", name, parameters, block];
1992
+ const children = [kind, " ", name, parameters, returnType, block];
1950
1993
  return {
1951
1994
  type: "MethodDefinition",
1952
1995
  children,
@@ -1959,7 +2002,7 @@ var Civet = (() => {
1959
2002
  async: false
1960
2003
  },
1961
2004
  name,
1962
- returnType: void 0
2005
+ returnType
1963
2006
  },
1964
2007
  block,
1965
2008
  parameters
@@ -2350,9 +2393,9 @@ var Civet = (() => {
2350
2393
  }
2351
2394
  function insertSemicolon(statements) {
2352
2395
  const l = statements.length;
2353
- for (let i7 = 0, len7 = statements.length; i7 < len7; i7++) {
2354
- const i = i7;
2355
- const s = statements[i7];
2396
+ for (let i8 = 0, len8 = statements.length; i8 < len8; i8++) {
2397
+ const i = i8;
2398
+ const s = statements[i8];
2356
2399
  if (i < l - 1) {
2357
2400
  if (needsPrecedingSemicolon(statements[i + 1])) {
2358
2401
  const delim = s[2];
@@ -3357,9 +3400,9 @@ var Civet = (() => {
3357
3400
  return root;
3358
3401
  }
3359
3402
  }
3360
- for (let i8 = 0, len8 = array.length; i8 < len8; i8++) {
3361
- const i = i8;
3362
- const node = array[i8];
3403
+ for (let i9 = 0, len9 = array.length; i9 < len9; i9++) {
3404
+ const i = i9;
3405
+ const node = array[i9];
3363
3406
  if (!(node != null)) {
3364
3407
  return;
3365
3408
  }
@@ -4746,209 +4789,210 @@ ${input.slice(result.pos)}
4746
4789
  var $L8 = $L("++");
4747
4790
  var $L9 = $L("--");
4748
4791
  var $L10 = $L("\u29FA");
4749
- var $L11 = $L("=>");
4750
- var $L12 = $L("\u21D2");
4751
- var $L13 = $L(":");
4752
- var $L14 = $L(" ");
4753
- var $L15 = $L("<");
4754
- var $L16 = $L("implements");
4755
- var $L17 = $L("<:");
4756
- var $L18 = $L("import");
4757
- var $L19 = $L("!");
4758
- var $L20 = $L("^");
4759
- var $L21 = $L("-");
4760
- var $L22 = $L("import.meta");
4761
- var $L23 = $L("return.value");
4762
- var $L24 = $L(",");
4763
- var $L25 = $L("(&)");
4764
- var $L26 = $L("->");
4765
- var $L27 = $L("\u2192");
4766
- var $L28 = $L("}");
4767
- var $L29 = $L("null");
4768
- var $L30 = $L("true");
4769
- var $L31 = $L("false");
4770
- var $L32 = $L("yes");
4771
- var $L33 = $L("on");
4772
- var $L34 = $L("no");
4773
- var $L35 = $L("off");
4774
- var $L36 = $L(">");
4775
- var $L37 = $L("]");
4776
- var $L38 = $L("**=");
4777
- var $L39 = $L("*=");
4778
- var $L40 = $L("/=");
4779
- var $L41 = $L("%=");
4780
- var $L42 = $L("+=");
4781
- var $L43 = $L("-=");
4782
- var $L44 = $L("<<=");
4783
- var $L45 = $L(">>>=");
4784
- var $L46 = $L(">>=");
4785
- var $L47 = $L("&&=");
4786
- var $L48 = $L("&=");
4787
- var $L49 = $L("^=");
4788
- var $L50 = $L("||=");
4789
- var $L51 = $L("|=");
4790
- var $L52 = $L("??=");
4791
- var $L53 = $L("?=");
4792
- var $L54 = $L("and=");
4793
- var $L55 = $L("or=");
4794
- var $L56 = $L("**");
4795
- var $L57 = $L("*");
4796
- var $L58 = $L("/");
4797
- var $L59 = $L("%%");
4798
- var $L60 = $L("%");
4799
- var $L61 = $L("+");
4800
- var $L62 = $L("<=");
4801
- var $L63 = $L("\u2264");
4802
- var $L64 = $L(">=");
4803
- var $L65 = $L("\u2265");
4804
- var $L66 = $L("<?");
4805
- var $L67 = $L("!<?");
4806
- var $L68 = $L("<<");
4807
- var $L69 = $L("\xAB");
4808
- var $L70 = $L(">>>");
4809
- var $L71 = $L("\u22D9");
4810
- var $L72 = $L(">>");
4811
- var $L73 = $L("\xBB");
4812
- var $L74 = $L("!==");
4813
- var $L75 = $L("\u2262");
4814
- var $L76 = $L("!=");
4815
- var $L77 = $L("\u2260");
4816
- var $L78 = $L("isnt");
4817
- var $L79 = $L("===");
4818
- var $L80 = $L("\u2263");
4819
- var $L81 = $L("\u2A76");
4820
- var $L82 = $L("==");
4821
- var $L83 = $L("\u2261");
4822
- var $L84 = $L("\u2A75");
4823
- var $L85 = $L("and");
4824
- var $L86 = $L("&&");
4825
- var $L87 = $L("or");
4826
- var $L88 = $L("||");
4827
- var $L89 = $L("\u2016");
4828
- var $L90 = $L("^^");
4829
- var $L91 = $L("xor");
4830
- var $L92 = $L("xnor");
4831
- var $L93 = $L("??");
4832
- var $L94 = $L("\u2047");
4833
- var $L95 = $L("instanceof");
4834
- var $L96 = $L("\u2208");
4835
- var $L97 = $L("\u220B");
4836
- var $L98 = $L("\u220C");
4837
- var $L99 = $L("\u2209");
4838
- var $L100 = $L("&");
4839
- var $L101 = $L("|");
4840
- var $L102 = $L(";");
4841
- var $L103 = $L("$:");
4842
- var $L104 = $L("break");
4843
- var $L105 = $L("continue");
4844
- var $L106 = $L("debugger");
4845
- var $L107 = $L("with");
4846
- var $L108 = $L("assert");
4847
- var $L109 = $L(":=");
4848
- var $L110 = $L("\u2254");
4849
- var $L111 = $L(".=");
4850
- var $L112 = $L("/*");
4851
- var $L113 = $L("*/");
4852
- var $L114 = $L("\\");
4853
- var $L115 = $L(")");
4854
- var $L116 = $L("abstract");
4855
- var $L117 = $L("as");
4856
- var $L118 = $L("@");
4857
- var $L119 = $L("@@");
4858
- var $L120 = $L("async");
4859
- var $L121 = $L("await");
4860
- var $L122 = $L("`");
4861
- var $L123 = $L("by");
4862
- var $L124 = $L("case");
4863
- var $L125 = $L("catch");
4864
- var $L126 = $L("class");
4865
- var $L127 = $L("#{");
4866
- var $L128 = $L("declare");
4867
- var $L129 = $L("default");
4868
- var $L130 = $L("delete");
4869
- var $L131 = $L("do");
4870
- var $L132 = $L("..");
4871
- var $L133 = $L("\u2025");
4872
- var $L134 = $L("...");
4873
- var $L135 = $L("\u2026");
4874
- var $L136 = $L("::");
4875
- var $L137 = $L('"');
4876
- var $L138 = $L("each");
4877
- var $L139 = $L("else");
4878
- var $L140 = $L("export");
4879
- var $L141 = $L("extends");
4880
- var $L142 = $L("finally");
4881
- var $L143 = $L("for");
4882
- var $L144 = $L("from");
4883
- var $L145 = $L("function");
4884
- var $L146 = $L("get");
4885
- var $L147 = $L("set");
4886
- var $L148 = $L("#");
4887
- var $L149 = $L("if");
4888
- var $L150 = $L("in");
4889
- var $L151 = $L("let");
4890
- var $L152 = $L("const");
4891
- var $L153 = $L("is");
4892
- var $L154 = $L("loop");
4893
- var $L155 = $L("new");
4894
- var $L156 = $L("not");
4895
- var $L157 = $L("of");
4896
- var $L158 = $L("[");
4897
- var $L159 = $L("operator");
4898
- var $L160 = $L("own");
4899
- var $L161 = $L("public");
4900
- var $L162 = $L("private");
4901
- var $L163 = $L("protected");
4902
- var $L164 = $L("||>");
4903
- var $L165 = $L("|\u25B7");
4904
- var $L166 = $L("|>=");
4905
- var $L167 = $L("\u25B7=");
4906
- var $L168 = $L("|>");
4907
- var $L169 = $L("\u25B7");
4908
- var $L170 = $L("readonly");
4909
- var $L171 = $L("return");
4910
- var $L172 = $L("satisfies");
4911
- var $L173 = $L("'");
4912
- var $L174 = $L("static");
4913
- var $L175 = $L("${");
4914
- var $L176 = $L("super");
4915
- var $L177 = $L("switch");
4916
- var $L178 = $L("target");
4917
- var $L179 = $L("then");
4918
- var $L180 = $L("this");
4919
- var $L181 = $L("throw");
4920
- var $L182 = $L('"""');
4921
- var $L183 = $L("'''");
4922
- var $L184 = $L("///");
4923
- var $L185 = $L("```");
4924
- var $L186 = $L("try");
4925
- var $L187 = $L("typeof");
4926
- var $L188 = $L("unless");
4927
- var $L189 = $L("until");
4928
- var $L190 = $L("using");
4929
- var $L191 = $L("var");
4930
- var $L192 = $L("void");
4931
- var $L193 = $L("when");
4932
- var $L194 = $L("while");
4933
- var $L195 = $L("yield");
4934
- var $L196 = $L("/>");
4935
- var $L197 = $L("</");
4936
- var $L198 = $L("<>");
4937
- var $L199 = $L("</>");
4938
- var $L200 = $L("<!--");
4939
- var $L201 = $L("-->");
4940
- var $L202 = $L("type");
4941
- var $L203 = $L("enum");
4942
- var $L204 = $L("interface");
4943
- var $L205 = $L("global");
4944
- var $L206 = $L("module");
4945
- var $L207 = $L("namespace");
4946
- var $L208 = $L("asserts");
4947
- var $L209 = $L("keyof");
4948
- var $L210 = $L("infer");
4949
- var $L211 = $L("???");
4950
- var $L212 = $L("[]");
4951
- var $L213 = $L("civet");
4792
+ var $L11 = $L("\u2014");
4793
+ var $L12 = $L("=>");
4794
+ var $L13 = $L("\u21D2");
4795
+ var $L14 = $L(":");
4796
+ var $L15 = $L(" ");
4797
+ var $L16 = $L("<");
4798
+ var $L17 = $L("implements");
4799
+ var $L18 = $L("<:");
4800
+ var $L19 = $L("import");
4801
+ var $L20 = $L("!");
4802
+ var $L21 = $L("^");
4803
+ var $L22 = $L("-");
4804
+ var $L23 = $L("import.meta");
4805
+ var $L24 = $L("return.value");
4806
+ var $L25 = $L(",");
4807
+ var $L26 = $L("(&)");
4808
+ var $L27 = $L("->");
4809
+ var $L28 = $L("\u2192");
4810
+ var $L29 = $L("}");
4811
+ var $L30 = $L("null");
4812
+ var $L31 = $L("true");
4813
+ var $L32 = $L("false");
4814
+ var $L33 = $L("yes");
4815
+ var $L34 = $L("on");
4816
+ var $L35 = $L("no");
4817
+ var $L36 = $L("off");
4818
+ var $L37 = $L(">");
4819
+ var $L38 = $L("]");
4820
+ var $L39 = $L("**=");
4821
+ var $L40 = $L("*=");
4822
+ var $L41 = $L("/=");
4823
+ var $L42 = $L("%=");
4824
+ var $L43 = $L("+=");
4825
+ var $L44 = $L("-=");
4826
+ var $L45 = $L("<<=");
4827
+ var $L46 = $L(">>>=");
4828
+ var $L47 = $L(">>=");
4829
+ var $L48 = $L("&&=");
4830
+ var $L49 = $L("&=");
4831
+ var $L50 = $L("^=");
4832
+ var $L51 = $L("||=");
4833
+ var $L52 = $L("|=");
4834
+ var $L53 = $L("??=");
4835
+ var $L54 = $L("?=");
4836
+ var $L55 = $L("and=");
4837
+ var $L56 = $L("or=");
4838
+ var $L57 = $L("**");
4839
+ var $L58 = $L("*");
4840
+ var $L59 = $L("/");
4841
+ var $L60 = $L("%%");
4842
+ var $L61 = $L("%");
4843
+ var $L62 = $L("+");
4844
+ var $L63 = $L("<=");
4845
+ var $L64 = $L("\u2264");
4846
+ var $L65 = $L(">=");
4847
+ var $L66 = $L("\u2265");
4848
+ var $L67 = $L("<?");
4849
+ var $L68 = $L("!<?");
4850
+ var $L69 = $L("<<");
4851
+ var $L70 = $L("\xAB");
4852
+ var $L71 = $L(">>>");
4853
+ var $L72 = $L("\u22D9");
4854
+ var $L73 = $L(">>");
4855
+ var $L74 = $L("\xBB");
4856
+ var $L75 = $L("!==");
4857
+ var $L76 = $L("\u2262");
4858
+ var $L77 = $L("!=");
4859
+ var $L78 = $L("\u2260");
4860
+ var $L79 = $L("isnt");
4861
+ var $L80 = $L("===");
4862
+ var $L81 = $L("\u2263");
4863
+ var $L82 = $L("\u2A76");
4864
+ var $L83 = $L("==");
4865
+ var $L84 = $L("\u2261");
4866
+ var $L85 = $L("\u2A75");
4867
+ var $L86 = $L("and");
4868
+ var $L87 = $L("&&");
4869
+ var $L88 = $L("or");
4870
+ var $L89 = $L("||");
4871
+ var $L90 = $L("\u2016");
4872
+ var $L91 = $L("^^");
4873
+ var $L92 = $L("xor");
4874
+ var $L93 = $L("xnor");
4875
+ var $L94 = $L("??");
4876
+ var $L95 = $L("\u2047");
4877
+ var $L96 = $L("instanceof");
4878
+ var $L97 = $L("\u2208");
4879
+ var $L98 = $L("\u220B");
4880
+ var $L99 = $L("\u220C");
4881
+ var $L100 = $L("\u2209");
4882
+ var $L101 = $L("&");
4883
+ var $L102 = $L("|");
4884
+ var $L103 = $L(";");
4885
+ var $L104 = $L("$:");
4886
+ var $L105 = $L("break");
4887
+ var $L106 = $L("continue");
4888
+ var $L107 = $L("debugger");
4889
+ var $L108 = $L("with");
4890
+ var $L109 = $L("assert");
4891
+ var $L110 = $L(":=");
4892
+ var $L111 = $L("\u2254");
4893
+ var $L112 = $L(".=");
4894
+ var $L113 = $L("/*");
4895
+ var $L114 = $L("*/");
4896
+ var $L115 = $L("\\");
4897
+ var $L116 = $L(")");
4898
+ var $L117 = $L("abstract");
4899
+ var $L118 = $L("as");
4900
+ var $L119 = $L("@");
4901
+ var $L120 = $L("@@");
4902
+ var $L121 = $L("async");
4903
+ var $L122 = $L("await");
4904
+ var $L123 = $L("`");
4905
+ var $L124 = $L("by");
4906
+ var $L125 = $L("case");
4907
+ var $L126 = $L("catch");
4908
+ var $L127 = $L("class");
4909
+ var $L128 = $L("#{");
4910
+ var $L129 = $L("declare");
4911
+ var $L130 = $L("default");
4912
+ var $L131 = $L("delete");
4913
+ var $L132 = $L("do");
4914
+ var $L133 = $L("..");
4915
+ var $L134 = $L("\u2025");
4916
+ var $L135 = $L("...");
4917
+ var $L136 = $L("\u2026");
4918
+ var $L137 = $L("::");
4919
+ var $L138 = $L('"');
4920
+ var $L139 = $L("each");
4921
+ var $L140 = $L("else");
4922
+ var $L141 = $L("export");
4923
+ var $L142 = $L("extends");
4924
+ var $L143 = $L("finally");
4925
+ var $L144 = $L("for");
4926
+ var $L145 = $L("from");
4927
+ var $L146 = $L("function");
4928
+ var $L147 = $L("get");
4929
+ var $L148 = $L("set");
4930
+ var $L149 = $L("#");
4931
+ var $L150 = $L("if");
4932
+ var $L151 = $L("in");
4933
+ var $L152 = $L("let");
4934
+ var $L153 = $L("const");
4935
+ var $L154 = $L("is");
4936
+ var $L155 = $L("loop");
4937
+ var $L156 = $L("new");
4938
+ var $L157 = $L("not");
4939
+ var $L158 = $L("of");
4940
+ var $L159 = $L("[");
4941
+ var $L160 = $L("operator");
4942
+ var $L161 = $L("own");
4943
+ var $L162 = $L("public");
4944
+ var $L163 = $L("private");
4945
+ var $L164 = $L("protected");
4946
+ var $L165 = $L("||>");
4947
+ var $L166 = $L("|\u25B7");
4948
+ var $L167 = $L("|>=");
4949
+ var $L168 = $L("\u25B7=");
4950
+ var $L169 = $L("|>");
4951
+ var $L170 = $L("\u25B7");
4952
+ var $L171 = $L("readonly");
4953
+ var $L172 = $L("return");
4954
+ var $L173 = $L("satisfies");
4955
+ var $L174 = $L("'");
4956
+ var $L175 = $L("static");
4957
+ var $L176 = $L("${");
4958
+ var $L177 = $L("super");
4959
+ var $L178 = $L("switch");
4960
+ var $L179 = $L("target");
4961
+ var $L180 = $L("then");
4962
+ var $L181 = $L("this");
4963
+ var $L182 = $L("throw");
4964
+ var $L183 = $L('"""');
4965
+ var $L184 = $L("'''");
4966
+ var $L185 = $L("///");
4967
+ var $L186 = $L("```");
4968
+ var $L187 = $L("try");
4969
+ var $L188 = $L("typeof");
4970
+ var $L189 = $L("unless");
4971
+ var $L190 = $L("until");
4972
+ var $L191 = $L("using");
4973
+ var $L192 = $L("var");
4974
+ var $L193 = $L("void");
4975
+ var $L194 = $L("when");
4976
+ var $L195 = $L("while");
4977
+ var $L196 = $L("yield");
4978
+ var $L197 = $L("/>");
4979
+ var $L198 = $L("</");
4980
+ var $L199 = $L("<>");
4981
+ var $L200 = $L("</>");
4982
+ var $L201 = $L("<!--");
4983
+ var $L202 = $L("-->");
4984
+ var $L203 = $L("type");
4985
+ var $L204 = $L("enum");
4986
+ var $L205 = $L("interface");
4987
+ var $L206 = $L("global");
4988
+ var $L207 = $L("module");
4989
+ var $L208 = $L("namespace");
4990
+ var $L209 = $L("asserts");
4991
+ var $L210 = $L("keyof");
4992
+ var $L211 = $L("infer");
4993
+ var $L212 = $L("???");
4994
+ var $L213 = $L("[]");
4995
+ var $L214 = $L("civet");
4952
4996
  var $R0 = $R(new RegExp("(?=debugger|if|unless|do|for|loop|until|while|switch|throw|try)", "suy"));
4953
4997
  var $R1 = $R(new RegExp("(as|of|satisfies|then|when|implements|xor|xnor)(?!\\p{ID_Continue}|[\\u200C\\u200D$])", "suy"));
4954
4998
  var $R2 = $R(new RegExp("[0-9]", "suy"));
@@ -4958,86 +5002,87 @@ ${input.slice(result.pos)}
4958
5002
  var $R6 = $R(new RegExp("(?=[\\/?])", "suy"));
4959
5003
  var $R7 = $R(new RegExp("(?=[\\/\\[{?.!@'\u2019:])", "suy"));
4960
5004
  var $R8 = $R(new RegExp("[)}]", "suy"));
4961
- var $R9 = $R(new RegExp("[&]", "suy"));
4962
- var $R10 = $R(new RegExp(`(?=[0-9.'"tfyno])`, "suy"));
4963
- var $R11 = $R(new RegExp("(?=true|false|yes|no|on|off)", "suy"));
4964
- var $R12 = $R(new RegExp("(?=\\p{ID_Start}|[_$])", "suy"));
4965
- var $R13 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
4966
- var $R14 = $R(new RegExp("(?=\\[)", "suy"));
4967
- var $R15 = $R(new RegExp("[!+-]", "suy"));
4968
- var $R16 = $R(new RegExp("(?=\\p{ID_Start}|[_$^\xAB\xBB\u22D9\u2264\u2265\u2208\u220B\u2209\u220C\u2263\u2261\u2262\u2260=\u2016\u2047&|*\\/!?%<>\u29FA+-])", "suy"));
4969
- var $R17 = $R(new RegExp("!\\^\\^?", "suy"));
4970
- var $R18 = $R(new RegExp("(?!\\+\\+|--)[!~+-](?!\\s)", "suy"));
4971
- var $R19 = $R(new RegExp("[:.]", "suy"));
4972
- var $R20 = $R(new RegExp("(?=for|if|loop|unless|until|while)", "suy"));
4973
- var $R21 = $R(new RegExp("(?=loop|do|for|until|while)", "suy"));
4974
- var $R22 = $R(new RegExp("(?=[\\s\\),])", "suy"));
4975
- var $R23 = $R(new RegExp('[^;"\\s]+', "suy"));
4976
- var $R24 = $R(new RegExp("(?=[0-9.])", "suy"));
4977
- var $R25 = $R(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)n", "suy"));
4978
- var $R26 = $R(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)(?=\\.(?:\\p{ID_Start}|[_$]))", "suy"));
4979
- var $R27 = $R(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)(?:\\.(?:[0-9](?:_[0-9]|[0-9])*))?", "suy"));
4980
- var $R28 = $R(new RegExp("(?:\\.[0-9](?:_[0-9]|[0-9])*)", "suy"));
4981
- var $R29 = $R(new RegExp("(?:[eE][+-]?[0-9]+(?:_[0-9]|[0-9])*)", "suy"));
4982
- var $R30 = $R(new RegExp("0[bB][01](?:[01]|_[01])*n?", "suy"));
4983
- var $R31 = $R(new RegExp("0[oO][0-7](?:[0-7]|_[0-7])*n?", "suy"));
4984
- var $R32 = $R(new RegExp("0[xX][0-9a-fA-F](?:[0-9a-fA-F]|_[0-9a-fA-F])*n?", "suy"));
4985
- var $R33 = $R(new RegExp("(?=[0-9])", "suy"));
4986
- var $R34 = $R(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)", "suy"));
4987
- var $R35 = $R(new RegExp('(?:\\\\.|[^"])*', "suy"));
4988
- var $R36 = $R(new RegExp("(?:\\\\.|[^'])*", "suy"));
4989
- var $R37 = $R(new RegExp('(?:"(?!"")|#(?!\\{)|\\\\.|[^#"])+', "suy"));
4990
- var $R38 = $R(new RegExp("(?:'(?!'')|\\\\.|[^'])*", "suy"));
4991
- var $R39 = $R(new RegExp('(?:\\\\.|#(?!\\{)|[^"#])+', "suy"));
4992
- var $R40 = $R(new RegExp("(?:\\\\.|[^\\]])*", "suy"));
4993
- var $R41 = $R(new RegExp("(?:\\\\.)", "suy"));
4994
- var $R42 = $R(new RegExp("[\\s]+", "suy"));
4995
- var $R43 = $R(new RegExp("\\/(?!\\/\\/)", "suy"));
4996
- var $R44 = $R(new RegExp("[^[\\/\\s#\\\\]+", "suy"));
4997
- var $R45 = $R(new RegExp("[*\\/\\r\\n]", "suy"));
4998
- var $R46 = $R(new RegExp("(?:\\\\.|[^[\\/\\r\\n])+", "suy"));
4999
- var $R47 = $R(new RegExp("(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
5000
- var $R48 = $R(new RegExp("(?=[`'\"])", "suy"));
5001
- var $R49 = $R(new RegExp("(?:\\$(?!\\{)|\\\\.|[^$`])+", "suy"));
5002
- var $R50 = $R(new RegExp("(?:\\$(?!\\{)|`(?!``)|\\\\.|[^$`])+", "suy"));
5003
- var $R51 = $R(new RegExp("(?:on|off|yes|no)(?!\\p{ID_Continue})", "suy"));
5004
- var $R52 = $R(new RegExp("(?:isnt)(?!\\p{ID_Continue})", "suy"));
5005
- var $R53 = $R(new RegExp("(?:by)(?!\\p{ID_Continue})", "suy"));
5006
- var $R54 = $R(new RegExp("(?:of)(?!\\p{ID_Continue})", "suy"));
5007
- var $R55 = $R(new RegExp("(?:and|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|false|finally|for|function|if|import|in|instanceof|interface|is|let|loop|new|not|null|or|private|protected|public|return|static|super|switch|this|throw|true|try|typeof|unless|until|var|void|while|with|yield)(?!\\p{ID_Continue})", "suy"));
5008
- var $R56 = $R(new RegExp("(?=\\/|#)", "suy"));
5009
- var $R57 = $R(new RegExp("\\/\\/(?!\\/)[^\\r\\n]*", "suy"));
5010
- var $R58 = $R(new RegExp(".", "suy"));
5011
- var $R59 = $R(new RegExp("#(?!##(?!#))([^\\r\\n]*)", "suy"));
5012
- var $R60 = $R(new RegExp("[^]*?###", "suy"));
5013
- var $R61 = $R(new RegExp("###(?!#)", "suy"));
5014
- var $R62 = $R(new RegExp("\\/\\*(?:(?!\\*\\/)[^\\r\\n])*\\*\\/", "suy"));
5015
- var $R63 = $R(new RegExp("(?=[ \\t\\/\\\\])", "suy"));
5016
- var $R64 = $R(new RegExp("[ \\t]+", "suy"));
5017
- var $R65 = $R(new RegExp("(?=\\s|\\/|#)", "suy"));
5018
- var $R66 = $R(new RegExp("(?!\\p{ID_Continue})", "suy"));
5019
- var $R67 = $R(new RegExp("['\u2019]s", "suy"));
5020
- var $R68 = $R(new RegExp("\\s", "suy"));
5021
- var $R69 = $R(new RegExp("(?=[<])", "suy"));
5022
- var $R70 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*", "suy"));
5023
- var $R71 = $R(new RegExp("[\\s>]|\\/>", "suy"));
5024
- var $R72 = $R(new RegExp("(?:[\\w\\-:]+|\\([^()]*\\)|\\[[^\\[\\]]*\\])+", "suy"));
5025
- var $R73 = $R(new RegExp(`"[^"]*"|'[^']*'`, "suy"));
5026
- var $R74 = $R(new RegExp("[<>]", "suy"));
5027
- var $R75 = $R(new RegExp("[!~+-](?!\\s|[!~+-]*&)", "suy"));
5028
- var $R76 = $R(new RegExp("(?:-[^-]|[^-]*)*", "suy"));
5029
- var $R77 = $R(new RegExp("[^{}<>\\r\\n]+", "suy"));
5030
- var $R78 = $R(new RegExp("[+-]?", "suy"));
5031
- var $R79 = $R(new RegExp("[+-]", "suy"));
5032
- var $R80 = $R(new RegExp("(?=if|unless)", "suy"));
5033
- var $R81 = $R(new RegExp("#![^\\r\\n]*", "suy"));
5034
- var $R82 = $R(new RegExp("[\\t ]*", "suy"));
5035
- var $R83 = $R(new RegExp("[ \\t]*", "suy"));
5036
- var $R84 = $R(new RegExp("[\\s]*", "suy"));
5037
- var $R85 = $R(new RegExp("\\s+([+-]?)([a-zA-Z0-9-]+)(\\s*=\\s*([a-zA-Z0-9.+-]*))?", "suy"));
5038
- var $R86 = $R(new RegExp("\\/\\/\\/[^\\r\\n]*", "suy"));
5039
- var $R87 = $R(new RegExp("(?=[ \\t\\r\\n\\/#]|$)", "suy"));
5040
- var $R88 = $R(new RegExp("\\r\\n|\\n|\\r|$", "suy"));
5005
+ var $R9 = $R(new RegExp("\\+\\+|--|[\\+-]\\S", "suy"));
5006
+ var $R10 = $R(new RegExp("[&]", "suy"));
5007
+ var $R11 = $R(new RegExp(`(?=[0-9.'"tfyno])`, "suy"));
5008
+ var $R12 = $R(new RegExp("(?=true|false|yes|no|on|off)", "suy"));
5009
+ var $R13 = $R(new RegExp("(?=\\p{ID_Start}|[_$])", "suy"));
5010
+ var $R14 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
5011
+ var $R15 = $R(new RegExp("(?=\\[)", "suy"));
5012
+ var $R16 = $R(new RegExp("[!+-]", "suy"));
5013
+ var $R17 = $R(new RegExp("(?=\\p{ID_Start}|[_$^\xAB\xBB\u22D9\u2264\u2265\u2208\u220B\u2209\u220C\u2263\u2261\u2262\u2260=\u2016\u2047&|*\\/!?%<>\u29FA+-])", "suy"));
5014
+ var $R18 = $R(new RegExp("!\\^\\^?", "suy"));
5015
+ var $R19 = $R(new RegExp("(?!\\+\\+|--)[!~+-](?!\\s)", "suy"));
5016
+ var $R20 = $R(new RegExp("[:.]", "suy"));
5017
+ var $R21 = $R(new RegExp("(?=for|if|loop|unless|until|while)", "suy"));
5018
+ var $R22 = $R(new RegExp("(?=loop|do|for|until|while)", "suy"));
5019
+ var $R23 = $R(new RegExp("(?=[\\s\\),])", "suy"));
5020
+ var $R24 = $R(new RegExp('[^;"\\s]+', "suy"));
5021
+ var $R25 = $R(new RegExp("(?=[0-9.])", "suy"));
5022
+ var $R26 = $R(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)n", "suy"));
5023
+ var $R27 = $R(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)(?=\\.(?:\\p{ID_Start}|[_$]))", "suy"));
5024
+ var $R28 = $R(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)(?:\\.(?:[0-9](?:_[0-9]|[0-9])*))?", "suy"));
5025
+ var $R29 = $R(new RegExp("(?:\\.[0-9](?:_[0-9]|[0-9])*)", "suy"));
5026
+ var $R30 = $R(new RegExp("(?:[eE][+-]?[0-9]+(?:_[0-9]|[0-9])*)", "suy"));
5027
+ var $R31 = $R(new RegExp("0[bB][01](?:[01]|_[01])*n?", "suy"));
5028
+ var $R32 = $R(new RegExp("0[oO][0-7](?:[0-7]|_[0-7])*n?", "suy"));
5029
+ var $R33 = $R(new RegExp("0[xX][0-9a-fA-F](?:[0-9a-fA-F]|_[0-9a-fA-F])*n?", "suy"));
5030
+ var $R34 = $R(new RegExp("(?=[0-9])", "suy"));
5031
+ var $R35 = $R(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)", "suy"));
5032
+ var $R36 = $R(new RegExp('(?:\\\\.|[^"])*', "suy"));
5033
+ var $R37 = $R(new RegExp("(?:\\\\.|[^'])*", "suy"));
5034
+ var $R38 = $R(new RegExp('(?:"(?!"")|#(?!\\{)|\\\\.|[^#"])+', "suy"));
5035
+ var $R39 = $R(new RegExp("(?:'(?!'')|\\\\.|[^'])*", "suy"));
5036
+ var $R40 = $R(new RegExp('(?:\\\\.|#(?!\\{)|[^"#])+', "suy"));
5037
+ var $R41 = $R(new RegExp("(?:\\\\.|[^\\]])*", "suy"));
5038
+ var $R42 = $R(new RegExp("(?:\\\\.)", "suy"));
5039
+ var $R43 = $R(new RegExp("[\\s]+", "suy"));
5040
+ var $R44 = $R(new RegExp("\\/(?!\\/\\/)", "suy"));
5041
+ var $R45 = $R(new RegExp("[^[\\/\\s#\\\\]+", "suy"));
5042
+ var $R46 = $R(new RegExp("[*\\/\\r\\n]", "suy"));
5043
+ var $R47 = $R(new RegExp("(?:\\\\.|[^[\\/\\r\\n])+", "suy"));
5044
+ var $R48 = $R(new RegExp("(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
5045
+ var $R49 = $R(new RegExp("(?=[`'\"])", "suy"));
5046
+ var $R50 = $R(new RegExp("(?:\\$(?!\\{)|\\\\.|[^$`])+", "suy"));
5047
+ var $R51 = $R(new RegExp("(?:\\$(?!\\{)|`(?!``)|\\\\.|[^$`])+", "suy"));
5048
+ var $R52 = $R(new RegExp("(?:on|off|yes|no)(?!\\p{ID_Continue})", "suy"));
5049
+ var $R53 = $R(new RegExp("(?:isnt)(?!\\p{ID_Continue})", "suy"));
5050
+ var $R54 = $R(new RegExp("(?:by)(?!\\p{ID_Continue})", "suy"));
5051
+ var $R55 = $R(new RegExp("(?:of)(?!\\p{ID_Continue})", "suy"));
5052
+ var $R56 = $R(new RegExp("(?:and|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|false|finally|for|function|if|import|in|instanceof|interface|is|let|loop|new|not|null|or|private|protected|public|return|static|super|switch|this|throw|true|try|typeof|unless|until|var|void|while|with|yield)(?!\\p{ID_Continue})", "suy"));
5053
+ var $R57 = $R(new RegExp("(?=\\/|#)", "suy"));
5054
+ var $R58 = $R(new RegExp("\\/\\/(?!\\/)[^\\r\\n]*", "suy"));
5055
+ var $R59 = $R(new RegExp(".", "suy"));
5056
+ var $R60 = $R(new RegExp("#(?!##(?!#))([^\\r\\n]*)", "suy"));
5057
+ var $R61 = $R(new RegExp("[^]*?###", "suy"));
5058
+ var $R62 = $R(new RegExp("###(?!#)", "suy"));
5059
+ var $R63 = $R(new RegExp("\\/\\*(?:(?!\\*\\/)[^\\r\\n])*\\*\\/", "suy"));
5060
+ var $R64 = $R(new RegExp("(?=[ \\t\\/\\\\])", "suy"));
5061
+ var $R65 = $R(new RegExp("[ \\t]+", "suy"));
5062
+ var $R66 = $R(new RegExp("(?=\\s|\\/|#)", "suy"));
5063
+ var $R67 = $R(new RegExp("(?!\\p{ID_Continue})", "suy"));
5064
+ var $R68 = $R(new RegExp("['\u2019]s", "suy"));
5065
+ var $R69 = $R(new RegExp("\\s", "suy"));
5066
+ var $R70 = $R(new RegExp("(?=[<])", "suy"));
5067
+ var $R71 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*", "suy"));
5068
+ var $R72 = $R(new RegExp("[\\s>]|\\/>", "suy"));
5069
+ var $R73 = $R(new RegExp("(?:[\\w\\-:]+|\\([^()]*\\)|\\[[^\\[\\]]*\\])+", "suy"));
5070
+ var $R74 = $R(new RegExp(`"[^"]*"|'[^']*'`, "suy"));
5071
+ var $R75 = $R(new RegExp("[<>]", "suy"));
5072
+ var $R76 = $R(new RegExp("[!~+-](?!\\s|[!~+-]*&)", "suy"));
5073
+ var $R77 = $R(new RegExp("(?:-[^-]|[^-]*)*", "suy"));
5074
+ var $R78 = $R(new RegExp("[^{}<>\\r\\n]+", "suy"));
5075
+ var $R79 = $R(new RegExp("[+-]?", "suy"));
5076
+ var $R80 = $R(new RegExp("[+-]", "suy"));
5077
+ var $R81 = $R(new RegExp("(?=if|unless)", "suy"));
5078
+ var $R82 = $R(new RegExp("#![^\\r\\n]*", "suy"));
5079
+ var $R83 = $R(new RegExp("[\\t ]*", "suy"));
5080
+ var $R84 = $R(new RegExp("[ \\t]*", "suy"));
5081
+ var $R85 = $R(new RegExp("[\\s]*", "suy"));
5082
+ var $R86 = $R(new RegExp("\\s+([+-]?)([a-zA-Z0-9-]+)(\\s*=\\s*([a-zA-Z0-9.+-]*))?", "suy"));
5083
+ var $R87 = $R(new RegExp("\\/\\/\\/[^\\r\\n]*", "suy"));
5084
+ var $R88 = $R(new RegExp("(?=[ \\t\\r\\n\\/#]|$)", "suy"));
5085
+ var $R89 = $R(new RegExp("\\r\\n|\\n|\\r|$", "suy"));
5041
5086
  var Program$0 = $TS($S(Reset, Init, $E(EOS), TopLevelStatements, __), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
5042
5087
  var statements = $4;
5043
5088
  processProgram({
@@ -5215,15 +5260,43 @@ ${input.slice(result.pos)}
5215
5260
  var ws = $3;
5216
5261
  var args = $4;
5217
5262
  var close = $5;
5218
- if (args.length === 1 && args[0].type === "IterationExpression" && args[0].subtype !== "DoStatement" && !args[0].async && isEmptyBareBlock(args[0].block)) {
5219
- return $skip;
5263
+ if (args.length === 1) {
5264
+ let arg0 = args[0];
5265
+ if (Array.isArray(arg0))
5266
+ arg0 = arg0[1];
5267
+ if (arg0.type === "IterationExpression" && arg0.subtype !== "DoStatement" && !arg0.async && isEmptyBareBlock(arg0.block)) {
5268
+ return $skip;
5269
+ }
5220
5270
  }
5221
- return [open, insertTrimmingSpace(ws, ""), args, close];
5271
+ return {
5272
+ type: "Call",
5273
+ args,
5274
+ children: [open, insertTrimmingSpace(ws, ""), args, close]
5275
+ };
5222
5276
  });
5223
5277
  function ImplicitArguments(ctx, state) {
5224
5278
  return $EVENT(ctx, state, "ImplicitArguments", ImplicitArguments$0);
5225
5279
  }
5226
- var ExplicitArguments$0 = $S(OpenParen, $E(ArgumentList), $E($S(__, Comma)), __, CloseParen);
5280
+ var ExplicitArguments$0 = $TS($S(OpenParen, $E($S(ArgumentList, $E($S(__, Comma)))), __, CloseParen), function($skip, $loc, $0, $1, $2, $3, $4) {
5281
+ var open = $1;
5282
+ var args = $2;
5283
+ var ws = $3;
5284
+ var close = $4;
5285
+ if (args) {
5286
+ if (args[1]) {
5287
+ args = [...args[0], args[1]];
5288
+ } else {
5289
+ args = args[0];
5290
+ }
5291
+ } else {
5292
+ args = [];
5293
+ }
5294
+ return {
5295
+ type: "Call",
5296
+ args,
5297
+ children: [open, args, ws, close]
5298
+ };
5299
+ });
5227
5300
  function ExplicitArguments(ctx, state) {
5228
5301
  return $EVENT(ctx, state, "ExplicitArguments", ExplicitArguments$0);
5229
5302
  }
@@ -5257,11 +5330,7 @@ ${input.slice(result.pos)}
5257
5330
  var ArgumentsWithTrailingMemberExpressions$0 = $TS($S(Arguments, AllowedTrailingMemberExpressions), function($skip, $loc, $0, $1, $2) {
5258
5331
  var args = $1;
5259
5332
  var trailing = $2;
5260
- const call = {
5261
- type: "Call",
5262
- children: args
5263
- };
5264
- return [call, ...trailing];
5333
+ return [args, ...trailing];
5265
5334
  });
5266
5335
  function ArgumentsWithTrailingMemberExpressions(ctx, state) {
5267
5336
  return $EVENT(ctx, state, "ArgumentsWithTrailingMemberExpressions", ArgumentsWithTrailingMemberExpressions$0);
@@ -5294,25 +5363,41 @@ ${input.slice(result.pos)}
5294
5363
  function CommaDelimiter(ctx, state) {
5295
5364
  return $EVENT(ctx, state, "CommaDelimiter", CommaDelimiter$0);
5296
5365
  }
5297
- var ArgumentList$0 = $S(ArgumentPart, $Q($S(CommaDelimiter, $N(EOS), ArgumentPart)), $P($S(CommaDelimiter, $C(NestedImplicitObjectLiteral, NestedArgumentList))));
5366
+ var ArgumentList$0 = $TS($S(ArgumentPart, $Q($S(CommaDelimiter, $N(EOS), ArgumentPart)), $P($S(CommaDelimiter, $C(NestedImplicitObjectLiteral, NestedArgumentList)))), function($skip, $loc, $0, $1, $2, $3) {
5367
+ return [
5368
+ $1,
5369
+ ...$2.flatMap(([comma, eos, arg]) => [comma, arg]),
5370
+ ...$3.flatMap(
5371
+ ([comma, args]) => Array.isArray(args) ? [comma, ...args] : [comma, args]
5372
+ )
5373
+ ];
5374
+ });
5298
5375
  var ArgumentList$1 = $TS($S(NestedImplicitObjectLiteral), function($skip, $loc, $0, $1) {
5299
- return insertTrimmingSpace($1, "");
5376
+ return [insertTrimmingSpace($1, "")];
5300
5377
  });
5301
5378
  var ArgumentList$2 = NestedArgumentList;
5302
- var ArgumentList$3 = $TS($S($E(_), ArgumentPart, $Q($S(CommaDelimiter, $E(_), ArgumentPart))), function($skip, $loc, $0, $1, $2, $3) {
5303
- return [...$1 || [], $2, ...$3];
5379
+ var ArgumentList$3 = $TS($S($S($E(_), ArgumentPart), $Q($S(CommaDelimiter, $S($E(_), ArgumentPart)))), function($skip, $loc, $0, $1, $2) {
5380
+ return [$1, ...$2.flat()];
5304
5381
  });
5305
5382
  var ArgumentList$$ = [ArgumentList$0, ArgumentList$1, ArgumentList$2, ArgumentList$3];
5306
5383
  function ArgumentList(ctx, state) {
5307
5384
  return $EVENT_C(ctx, state, "ArgumentList", ArgumentList$$);
5308
5385
  }
5309
- var NonPipelineArgumentList$0 = $S(NonPipelineArgumentPart, $Q($S(CommaDelimiter, $N(EOS), NonPipelineArgumentPart)), $P($S(CommaDelimiter, $C(NestedImplicitObjectLiteral, NestedArgumentList))));
5386
+ var NonPipelineArgumentList$0 = $TS($S(NonPipelineArgumentPart, $Q($S(CommaDelimiter, $N(EOS), NonPipelineArgumentPart)), $P($S(CommaDelimiter, $C(NestedImplicitObjectLiteral, NestedArgumentList)))), function($skip, $loc, $0, $1, $2, $3) {
5387
+ return [
5388
+ $1,
5389
+ ...$2.flatMap(([comma, eos, arg]) => [comma, arg]),
5390
+ ...$3.flatMap(
5391
+ ([comma, args]) => Array.isArray(args) ? [comma, ...args] : [comma, args]
5392
+ )
5393
+ ];
5394
+ });
5310
5395
  var NonPipelineArgumentList$1 = $TS($S(NestedImplicitObjectLiteral), function($skip, $loc, $0, $1) {
5311
- return insertTrimmingSpace($1, "");
5396
+ return [insertTrimmingSpace($1, "")];
5312
5397
  });
5313
5398
  var NonPipelineArgumentList$2 = NestedArgumentList;
5314
- var NonPipelineArgumentList$3 = $TS($S($E(_), NonPipelineArgumentPart, $Q($S(CommaDelimiter, $E(_), NonPipelineArgumentPart))), function($skip, $loc, $0, $1, $2, $3) {
5315
- return [...$1 || [], $2, ...$3];
5399
+ var NonPipelineArgumentList$3 = $TS($S($S($E(_), NonPipelineArgumentPart), $Q($S(CommaDelimiter, $S($E(_), NonPipelineArgumentPart)))), function($skip, $loc, $0, $1, $2) {
5400
+ return [$1, ...$2.flat()];
5316
5401
  });
5317
5402
  var NonPipelineArgumentList$$ = [NonPipelineArgumentList$0, NonPipelineArgumentList$1, NonPipelineArgumentList$2, NonPipelineArgumentList$3];
5318
5403
  function NonPipelineArgumentList(ctx, state) {
@@ -5320,18 +5405,27 @@ ${input.slice(result.pos)}
5320
5405
  }
5321
5406
  var NestedArgumentList$0 = $TS($S(PushIndent, $Q(NestedArgument), PopIndent), function($skip, $loc, $0, $1, $2, $3) {
5322
5407
  var args = $2;
5323
- if (args.length)
5324
- return args;
5325
- return $skip;
5408
+ if (!args.length)
5409
+ return $skip;
5410
+ return args.flat();
5326
5411
  });
5327
5412
  function NestedArgumentList(ctx, state) {
5328
5413
  return $EVENT(ctx, state, "NestedArgumentList", NestedArgumentList$0);
5329
5414
  }
5330
- var NestedArgument$0 = $S(Nested, SingleLineArgumentExpressions, ParameterElementDelimiter);
5415
+ var NestedArgument$0 = $TS($S(Nested, SingleLineArgumentExpressions, ParameterElementDelimiter), function($skip, $loc, $0, $1, $2, $3) {
5416
+ var indent = $1;
5417
+ var args = $2;
5418
+ var comma = $3;
5419
+ let [arg0, ...rest] = args;
5420
+ arg0 = [indent, ...arg0];
5421
+ return [arg0, ...rest, comma];
5422
+ });
5331
5423
  function NestedArgument(ctx, state) {
5332
5424
  return $EVENT(ctx, state, "NestedArgument", NestedArgument$0);
5333
5425
  }
5334
- var SingleLineArgumentExpressions$0 = $S($E(_), ArgumentPart, $Q($S($E(_), Comma, $E(_), ArgumentPart)));
5426
+ var SingleLineArgumentExpressions$0 = $TS($S($S($E(_), ArgumentPart), $Q($S($S($E(_), Comma), $S($E(_), ArgumentPart)))), function($skip, $loc, $0, $1, $2) {
5427
+ return [$1, ...$2.flat()];
5428
+ });
5335
5429
  function SingleLineArgumentExpressions(ctx, state) {
5336
5430
  return $EVENT(ctx, state, "SingleLineArgumentExpressions", SingleLineArgumentExpressions$0);
5337
5431
  }
@@ -5504,7 +5598,10 @@ ${input.slice(result.pos)}
5504
5598
  var UpdateExpressionSymbol$1 = $TV($EXPECT($L10, 'UpdateExpressionSymbol "\u29FA"'), function($skip, $loc, $0, $1) {
5505
5599
  return { $loc, token: "++" };
5506
5600
  });
5507
- var UpdateExpressionSymbol$$ = [UpdateExpressionSymbol$0, UpdateExpressionSymbol$1];
5601
+ var UpdateExpressionSymbol$2 = $TV($EXPECT($L11, 'UpdateExpressionSymbol "\u2014"'), function($skip, $loc, $0, $1) {
5602
+ return { $loc, token: "--" };
5603
+ });
5604
+ var UpdateExpressionSymbol$$ = [UpdateExpressionSymbol$0, UpdateExpressionSymbol$1, UpdateExpressionSymbol$2];
5508
5605
  function UpdateExpressionSymbol(ctx, state) {
5509
5606
  return $EVENT_C(ctx, state, "UpdateExpressionSymbol", UpdateExpressionSymbol$$);
5510
5607
  }
@@ -5609,7 +5706,7 @@ ${input.slice(result.pos)}
5609
5706
  function ArrowFunction(ctx, state) {
5610
5707
  return $EVENT_C(ctx, state, "ArrowFunction", ArrowFunction$$);
5611
5708
  }
5612
- var FatArrow$0 = $TS($S($E(_), $C($EXPECT($L11, 'FatArrow "=>"'), $EXPECT($L12, 'FatArrow "\u21D2"'))), function($skip, $loc, $0, $1, $2) {
5709
+ var FatArrow$0 = $TS($S($E(_), $C($EXPECT($L12, 'FatArrow "=>"'), $EXPECT($L13, 'FatArrow "\u21D2"'))), function($skip, $loc, $0, $1, $2) {
5613
5710
  var ws = $1;
5614
5711
  if (!ws)
5615
5712
  return " =>";
@@ -5717,7 +5814,9 @@ ${input.slice(result.pos)}
5717
5814
  }
5718
5815
  var PipelineTailItem$0 = Await;
5719
5816
  var PipelineTailItem$1 = Yield;
5720
- var PipelineTailItem$2 = Return;
5817
+ var PipelineTailItem$2 = $T($S(Return, $N(AccessStart)), function(value) {
5818
+ return value[0];
5819
+ });
5721
5820
  var PipelineTailItem$3 = AmpersandFunctionExpression;
5722
5821
  var PipelineTailItem$4 = $T($S($N(Ampersand), PipelineHeadItem), function(value) {
5723
5822
  return value[1];
@@ -5776,7 +5875,7 @@ ${input.slice(result.pos)}
5776
5875
  function ClassDeclaration(ctx, state) {
5777
5876
  return $EVENT(ctx, state, "ClassDeclaration", ClassDeclaration$0);
5778
5877
  }
5779
- var ClassExpression$0 = $TS($S($E(Decorators), $E($S(Abstract, __)), Class, $N($EXPECT($L13, 'ClassExpression ":"')), $E(ClassBinding), $E(ClassHeritage), ClassBody), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7) {
5878
+ var ClassExpression$0 = $TS($S($E(Decorators), $E($S(Abstract, __)), Class, $N($EXPECT($L14, 'ClassExpression ":"')), $E(ClassBinding), $E(ClassHeritage), ClassBody), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7) {
5780
5879
  var decorators = $1;
5781
5880
  var abstract = $2;
5782
5881
  var binding = $5;
@@ -5810,7 +5909,7 @@ ${input.slice(result.pos)}
5810
5909
  function ExtendsClause(ctx, state) {
5811
5910
  return $EVENT(ctx, state, "ExtendsClause", ExtendsClause$0);
5812
5911
  }
5813
- var ExtendsToken$0 = $TS($S(Loc, $E(_), ExtendsShorthand, $E($EXPECT($L14, 'ExtendsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
5912
+ var ExtendsToken$0 = $TS($S(Loc, $E(_), ExtendsShorthand, $E($EXPECT($L15, 'ExtendsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
5814
5913
  var l = $1;
5815
5914
  var ws = $2;
5816
5915
  var t = $3;
@@ -5832,13 +5931,13 @@ ${input.slice(result.pos)}
5832
5931
  function ExtendsToken(ctx, state) {
5833
5932
  return $EVENT_C(ctx, state, "ExtendsToken", ExtendsToken$$);
5834
5933
  }
5835
- var ExtendsShorthand$0 = $TV($EXPECT($L15, 'ExtendsShorthand "<"'), function($skip, $loc, $0, $1) {
5934
+ var ExtendsShorthand$0 = $TV($EXPECT($L16, 'ExtendsShorthand "<"'), function($skip, $loc, $0, $1) {
5836
5935
  return { $loc, token: "extends " };
5837
5936
  });
5838
5937
  function ExtendsShorthand(ctx, state) {
5839
5938
  return $EVENT(ctx, state, "ExtendsShorthand", ExtendsShorthand$0);
5840
5939
  }
5841
- var NotExtendsToken$0 = $TS($S(Loc, $E(_), OmittedNegation, ExtendsShorthand, $E($EXPECT($L14, 'NotExtendsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
5940
+ var NotExtendsToken$0 = $TS($S(Loc, $E(_), OmittedNegation, ExtendsShorthand, $E($EXPECT($L15, 'NotExtendsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
5842
5941
  var l = $1;
5843
5942
  var ws1 = $2;
5844
5943
  var ws2 = $3;
@@ -5864,7 +5963,7 @@ ${input.slice(result.pos)}
5864
5963
  var OmittedNegation$0 = $T($S(ExclamationPoint), function(value) {
5865
5964
  return "";
5866
5965
  });
5867
- var OmittedNegation$1 = $T($S(Not, $E($EXPECT($L14, 'OmittedNegation " "')), $E(_)), function(value) {
5966
+ var OmittedNegation$1 = $T($S(Not, $E($EXPECT($L15, 'OmittedNegation " "')), $E(_)), function(value) {
5868
5967
  return value[2];
5869
5968
  });
5870
5969
  var OmittedNegation$$ = [OmittedNegation$0, OmittedNegation$1];
@@ -5887,7 +5986,7 @@ ${input.slice(result.pos)}
5887
5986
  function ImplementsClause(ctx, state) {
5888
5987
  return $EVENT(ctx, state, "ImplementsClause", ImplementsClause$0);
5889
5988
  }
5890
- var ImplementsToken$0 = $TS($S(Loc, __, ImplementsShorthand, $E($EXPECT($L14, 'ImplementsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
5989
+ var ImplementsToken$0 = $TS($S(Loc, __, ImplementsShorthand, $E($EXPECT($L15, 'ImplementsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
5891
5990
  var l = $1;
5892
5991
  var ws = $2;
5893
5992
  var token = $3;
@@ -5897,7 +5996,7 @@ ${input.slice(result.pos)}
5897
5996
  }
5898
5997
  return { children };
5899
5998
  });
5900
- var ImplementsToken$1 = $TS($S(__, $EXPECT($L16, 'ImplementsToken "implements"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
5999
+ var ImplementsToken$1 = $TS($S(__, $EXPECT($L17, 'ImplementsToken "implements"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
5901
6000
  $2 = { $loc, token: $2 };
5902
6001
  return [$1, $2];
5903
6002
  });
@@ -5905,7 +6004,7 @@ ${input.slice(result.pos)}
5905
6004
  function ImplementsToken(ctx, state) {
5906
6005
  return $EVENT_C(ctx, state, "ImplementsToken", ImplementsToken$$);
5907
6006
  }
5908
- var ImplementsShorthand$0 = $TV($EXPECT($L17, 'ImplementsShorthand "<:"'), function($skip, $loc, $0, $1) {
6007
+ var ImplementsShorthand$0 = $TV($EXPECT($L18, 'ImplementsShorthand "<:"'), function($skip, $loc, $0, $1) {
5909
6008
  return { $loc, token: "implements " };
5910
6009
  });
5911
6010
  function ImplementsShorthand(ctx, state) {
@@ -5951,7 +6050,7 @@ ${input.slice(result.pos)}
5951
6050
  var ClassElement$0 = $TS($S($E(Decorators), $E(AccessModifier), $E($S(Static, $E(_))), ClassElementDefinition), function($skip, $loc, $0, $1, $2, $3, $4) {
5952
6051
  var decorators = $1;
5953
6052
  var definition = $4;
5954
- if (definition.type === "ShorthandMethodDefinition") {
6053
+ if (definition.type === "MultiMethodDefinition") {
5955
6054
  return {
5956
6055
  ...definition,
5957
6056
  children: definition.children.map((c) => {
@@ -6117,7 +6216,7 @@ ${input.slice(result.pos)}
6117
6216
  function AtThis(ctx, state) {
6118
6217
  return $EVENT(ctx, state, "AtThis", AtThis$0);
6119
6218
  }
6120
- var LeftHandSideExpression$0 = $S($P($S(New, $N($C($EXPECT($L7, 'LeftHandSideExpression "."'), $EXPECT($L13, 'LeftHandSideExpression ":"'))), __)), CallExpression);
6219
+ var LeftHandSideExpression$0 = $S($P($S(New, $N($C($EXPECT($L7, 'LeftHandSideExpression "."'), $EXPECT($L14, 'LeftHandSideExpression ":"'))), __)), CallExpression);
6121
6220
  var LeftHandSideExpression$1 = CallExpression;
6122
6221
  var LeftHandSideExpression$$ = [LeftHandSideExpression$0, LeftHandSideExpression$1];
6123
6222
  function LeftHandSideExpression(ctx, state) {
@@ -6130,7 +6229,7 @@ ${input.slice(result.pos)}
6130
6229
  children: [$1, ...$2, ...rest.flat()]
6131
6230
  });
6132
6231
  });
6133
- var CallExpression$1 = $TS($S($EXPECT($L18, 'CallExpression "import"'), ArgumentsWithTrailingMemberExpressions, $Q(CallExpressionRest)), function($skip, $loc, $0, $1, $2, $3) {
6232
+ var CallExpression$1 = $TS($S($EXPECT($L19, 'CallExpression "import"'), ArgumentsWithTrailingMemberExpressions, $Q(CallExpressionRest)), function($skip, $loc, $0, $1, $2, $3) {
6134
6233
  var rest = $3;
6135
6234
  return processCallMemberExpression({
6136
6235
  type: "CallExpression",
@@ -6191,7 +6290,7 @@ ${input.slice(result.pos)}
6191
6290
  function OptionalDot(ctx, state) {
6192
6291
  return $EVENT_C(ctx, state, "OptionalDot", OptionalDot$$);
6193
6292
  }
6194
- var NonNullAssertion$0 = $T($S($EXPECT($L19, 'NonNullAssertion "!"'), $N($EXPECT($L20, 'NonNullAssertion "^"'))), function(value) {
6293
+ var NonNullAssertion$0 = $T($S($EXPECT($L20, 'NonNullAssertion "!"'), $N($EXPECT($L21, 'NonNullAssertion "^"'))), function(value) {
6195
6294
  return { "type": "NonNullAssertion", "ts": true, "children": value[0] };
6196
6295
  });
6197
6296
  function NonNullAssertion(ctx, state) {
@@ -6386,7 +6485,7 @@ ${input.slice(result.pos)}
6386
6485
  ]
6387
6486
  };
6388
6487
  });
6389
- var PropertyAccess$1 = $TS($S(AccessStart, $EXPECT($L21, 'PropertyAccess "-"'), IntegerLiteral), function($skip, $loc, $0, $1, $2, $3) {
6488
+ var PropertyAccess$1 = $TS($S(AccessStart, $EXPECT($L22, 'PropertyAccess "-"'), IntegerLiteral), function($skip, $loc, $0, $1, $2, $3) {
6390
6489
  var dot = $1;
6391
6490
  var neg = $2;
6392
6491
  var num = $3;
@@ -6462,7 +6561,7 @@ ${input.slice(result.pos)}
6462
6561
  return $EVENT_C(ctx, state, "SuperProperty", SuperProperty$$);
6463
6562
  }
6464
6563
  var MetaProperty$0 = $S(New, Dot, Target);
6465
- var MetaProperty$1 = $TS($S($EXPECT($L22, 'MetaProperty "import.meta"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6564
+ var MetaProperty$1 = $TS($S($EXPECT($L23, 'MetaProperty "import.meta"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6466
6565
  return { $loc, token: $1 };
6467
6566
  });
6468
6567
  var MetaProperty$2 = ReturnValue;
@@ -6470,7 +6569,7 @@ ${input.slice(result.pos)}
6470
6569
  function MetaProperty(ctx, state) {
6471
6570
  return $EVENT_C(ctx, state, "MetaProperty", MetaProperty$$);
6472
6571
  }
6473
- var ReturnValue$0 = $TV($C($S($EXPECT($L23, 'ReturnValue "return.value"'), NonIdContinue), $S(Return, $Y(AfterReturnShorthand))), function($skip, $loc, $0, $1) {
6572
+ var ReturnValue$0 = $TV($C($S($EXPECT($L24, 'ReturnValue "return.value"'), NonIdContinue), $S(Return, $Y(AfterReturnShorthand))), function($skip, $loc, $0, $1) {
6474
6573
  return { type: "ReturnValue", children: [$1[0]] };
6475
6574
  });
6476
6575
  function ReturnValue(ctx, state) {
@@ -6983,7 +7082,7 @@ ${input.slice(result.pos)}
6983
7082
  children: [ws, binding]
6984
7083
  };
6985
7084
  });
6986
- var BindingElement$2 = $TV($Y($S($E(_), $EXPECT($L24, 'BindingElement ","'))), function($skip, $loc, $0, $1) {
7085
+ var BindingElement$2 = $TV($Y($S($E(_), $EXPECT($L25, 'BindingElement ","'))), function($skip, $loc, $0, $1) {
6987
7086
  return {
6988
7087
  children: [{
6989
7088
  type: "ElisionElement",
@@ -7039,6 +7138,8 @@ ${input.slice(result.pos)}
7039
7138
  return $EVENT(ctx, state, "EmptyBindingPattern", EmptyBindingPattern$0);
7040
7139
  }
7041
7140
  var FunctionDeclaration$0 = $TS($S(FunctionExpression), function($skip, $loc, $0, $1) {
7141
+ if ($1.type !== "FunctionExpression")
7142
+ return $skip;
7042
7143
  if ($1.id)
7043
7144
  return $1;
7044
7145
  return makeLeftHandSideExpression($1);
@@ -7107,7 +7208,7 @@ ${input.slice(result.pos)}
7107
7208
  block
7108
7209
  };
7109
7210
  });
7110
- var FunctionExpression$1 = $TV($EXPECT($L25, 'FunctionExpression "(&)"'), function($skip, $loc, $0, $1) {
7211
+ var FunctionExpression$1 = $TV($EXPECT($L26, 'FunctionExpression "(&)"'), function($skip, $loc, $0, $1) {
7111
7212
  const ref = makeRef("$"), body = [ref];
7112
7213
  const parameters = {
7113
7214
  type: "Parameters",
@@ -7155,13 +7256,80 @@ ${input.slice(result.pos)}
7155
7256
  },
7156
7257
  children: [open, parameters, " => ", body, close],
7157
7258
  body,
7259
+ parenthesized: true,
7260
+ parenthesizedOp: op,
7261
+ block,
7262
+ parameters
7263
+ };
7264
+ });
7265
+ var FunctionExpression$3 = $TS($S(OpenParen, NonPipelineAssignmentExpression, __, BinaryOp, __, CloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
7266
+ var open = $1;
7267
+ var lhs = $2;
7268
+ var ws1 = $3;
7269
+ var op = $4;
7270
+ var ws2 = $5;
7271
+ var close = $6;
7272
+ const refB = makeRef("b"), body = processBinaryOpExpression([lhs, [
7273
+ [ws1, op, ws2, refB]
7274
+ // BinaryOpRHS
7275
+ ]]);
7276
+ const parameters = {
7277
+ type: "Parameters",
7278
+ children: ["(", refB, ")"],
7279
+ names: []
7280
+ };
7281
+ const block = {
7282
+ expressions: [body]
7283
+ };
7284
+ return {
7285
+ type: "ArrowFunction",
7286
+ signature: {
7287
+ modifier: {}
7288
+ },
7289
+ children: [open, parameters, " => ", body, close],
7290
+ body,
7291
+ parenthesized: true,
7292
+ ampersandBlock: true,
7293
+ ref: refB,
7294
+ block,
7295
+ parameters
7296
+ };
7297
+ });
7298
+ var FunctionExpression$4 = $TS($S(OpenParen, __, $N($EXPECT($R9, "FunctionExpression /\\+\\+|--|[\\+-]\\S/")), BinaryOp, __, NonPipelineAssignmentExpression, CloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7) {
7299
+ var open = $1;
7300
+ var ws1 = $2;
7301
+ var op = $4;
7302
+ var ws2 = $5;
7303
+ var rhs = $6;
7304
+ var close = $7;
7305
+ const refA = makeRef("a"), body = processBinaryOpExpression([refA, [
7306
+ [ws1, op, ws2, rhs]
7307
+ // BinaryOpRHS
7308
+ ]]);
7309
+ const parameters = {
7310
+ type: "Parameters",
7311
+ children: ["(", refA, ")"],
7312
+ names: []
7313
+ };
7314
+ const block = {
7315
+ expressions: [body]
7316
+ };
7317
+ return {
7318
+ type: "ArrowFunction",
7319
+ signature: {
7320
+ modifier: {}
7321
+ },
7322
+ children: [open, parameters, " => ", body, close],
7323
+ body,
7324
+ parenthesized: true,
7158
7325
  ampersandBlock: true,
7326
+ ref: refA,
7159
7327
  block,
7160
7328
  parameters
7161
7329
  };
7162
7330
  });
7163
- var FunctionExpression$3 = AmpersandFunctionExpression;
7164
- var FunctionExpression$4 = $TS($S(Identifier, __, ConstAssignment, $Q(_), ThinArrowFunction), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
7331
+ var FunctionExpression$5 = AmpersandFunctionExpression;
7332
+ var FunctionExpression$6 = $TS($S(Identifier, __, ConstAssignment, $Q(_), ThinArrowFunction), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
7165
7333
  var id = $1;
7166
7334
  var ws = $4;
7167
7335
  var fn = $5;
@@ -7176,7 +7344,7 @@ ${input.slice(result.pos)}
7176
7344
  ]
7177
7345
  };
7178
7346
  });
7179
- var FunctionExpression$$ = [FunctionExpression$0, FunctionExpression$1, FunctionExpression$2, FunctionExpression$3, FunctionExpression$4];
7347
+ var FunctionExpression$$ = [FunctionExpression$0, FunctionExpression$1, FunctionExpression$2, FunctionExpression$3, FunctionExpression$4, FunctionExpression$5, FunctionExpression$6];
7180
7348
  function FunctionExpression(ctx, state) {
7181
7349
  return $EVENT_C(ctx, state, "FunctionExpression", FunctionExpression$$);
7182
7350
  }
@@ -7307,7 +7475,7 @@ ${input.slice(result.pos)}
7307
7475
  function AmpersandBlockRHS(ctx, state) {
7308
7476
  return $EVENT(ctx, state, "AmpersandBlockRHS", AmpersandBlockRHS$0);
7309
7477
  }
7310
- var AmpersandBlockRHSBody$0 = $TS($S($E($S($N(_), $P(CallExpressionRest))), $E(QuestionMark), $E($S(WAssignmentOp, $Q($S(NotDedented, UpdateExpression, WAssignmentOp)), NonPipelineExtendedExpression)), $E($S($N($EXPECT($R9, "AmpersandBlockRHSBody /[&]/")), $P(BinaryOpRHS)))), function($skip, $loc, $0, $1, $2, $3, $4) {
7478
+ var AmpersandBlockRHSBody$0 = $TS($S($E($S($N(_), $P(CallExpressionRest))), $E(QuestionMark), $E($S(WAssignmentOp, $Q($S(NotDedented, UpdateExpression, WAssignmentOp)), NonPipelineExtendedExpression)), $E($S($N($EXPECT($R10, "AmpersandBlockRHSBody /[&]/")), $P(BinaryOpRHS)))), function($skip, $loc, $0, $1, $2, $3, $4) {
7311
7479
  var callExpRest = $1;
7312
7480
  var unaryPostfix = $2;
7313
7481
  var assign = $3;
@@ -7397,7 +7565,7 @@ ${input.slice(result.pos)}
7397
7565
  function ThinArrowFunction(ctx, state) {
7398
7566
  return $EVENT(ctx, state, "ThinArrowFunction", ThinArrowFunction$0);
7399
7567
  }
7400
- var Arrow$0 = $TV($C($EXPECT($L26, 'Arrow "->"'), $EXPECT($L27, 'Arrow "\u2192"')), function($skip, $loc, $0, $1) {
7568
+ var Arrow$0 = $TV($C($EXPECT($L27, 'Arrow "->"'), $EXPECT($L28, 'Arrow "\u2192"')), function($skip, $loc, $0, $1) {
7401
7569
  return { $loc, token: "->" };
7402
7570
  });
7403
7571
  function Arrow(ctx, state) {
@@ -7698,7 +7866,7 @@ ${input.slice(result.pos)}
7698
7866
  }
7699
7867
  var BracedContent$0 = NestedBlockStatements;
7700
7868
  var BracedContent$1 = SingleLineStatements;
7701
- var BracedContent$2 = $TV($Y($S(__, $EXPECT($L28, 'BracedContent "}"'))), function($skip, $loc, $0, $1) {
7869
+ var BracedContent$2 = $TV($Y($S(__, $EXPECT($L29, 'BracedContent "}"'))), function($skip, $loc, $0, $1) {
7702
7870
  const expressions = [];
7703
7871
  return {
7704
7872
  type: "BlockStatement",
@@ -7748,7 +7916,7 @@ ${input.slice(result.pos)}
7748
7916
  function BlockStatementPart(ctx, state) {
7749
7917
  return $EVENT(ctx, state, "BlockStatementPart", BlockStatementPart$0);
7750
7918
  }
7751
- var Literal$0 = $TS($S($EXPECT($R10, `Literal /(?=[0-9.'"tfyno])/`), LiteralContent), function($skip, $loc, $0, $1, $2) {
7919
+ var Literal$0 = $TS($S($EXPECT($R11, `Literal /(?=[0-9.'"tfyno])/`), LiteralContent), function($skip, $loc, $0, $1, $2) {
7752
7920
  var literal = $2;
7753
7921
  return {
7754
7922
  type: "Literal",
@@ -7768,13 +7936,13 @@ ${input.slice(result.pos)}
7768
7936
  function LiteralContent(ctx, state) {
7769
7937
  return $EVENT_C(ctx, state, "LiteralContent", LiteralContent$$);
7770
7938
  }
7771
- var NullLiteral$0 = $TS($S($EXPECT($L29, 'NullLiteral "null"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7939
+ var NullLiteral$0 = $TS($S($EXPECT($L30, 'NullLiteral "null"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7772
7940
  return { $loc, token: $1 };
7773
7941
  });
7774
7942
  function NullLiteral(ctx, state) {
7775
7943
  return $EVENT(ctx, state, "NullLiteral", NullLiteral$0);
7776
7944
  }
7777
- var BooleanLiteral$0 = $T($S($EXPECT($R11, "BooleanLiteral /(?=true|false|yes|no|on|off)/"), _BooleanLiteral), function(value) {
7945
+ var BooleanLiteral$0 = $T($S($EXPECT($R12, "BooleanLiteral /(?=true|false|yes|no|on|off)/"), _BooleanLiteral), function(value) {
7778
7946
  return value[1];
7779
7947
  });
7780
7948
  function BooleanLiteral(ctx, state) {
@@ -7783,31 +7951,31 @@ ${input.slice(result.pos)}
7783
7951
  var _BooleanLiteral$0 = $T($S(CoffeeBooleansEnabled, CoffeeScriptBooleanLiteral), function(value) {
7784
7952
  return value[1];
7785
7953
  });
7786
- var _BooleanLiteral$1 = $TS($S($C($EXPECT($L30, '_BooleanLiteral "true"'), $EXPECT($L31, '_BooleanLiteral "false"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7954
+ var _BooleanLiteral$1 = $TS($S($C($EXPECT($L31, '_BooleanLiteral "true"'), $EXPECT($L32, '_BooleanLiteral "false"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7787
7955
  return { $loc, token: $1 };
7788
7956
  });
7789
7957
  var _BooleanLiteral$$ = [_BooleanLiteral$0, _BooleanLiteral$1];
7790
7958
  function _BooleanLiteral(ctx, state) {
7791
7959
  return $EVENT_C(ctx, state, "_BooleanLiteral", _BooleanLiteral$$);
7792
7960
  }
7793
- var CoffeeScriptBooleanLiteral$0 = $TS($S($C($EXPECT($L32, 'CoffeeScriptBooleanLiteral "yes"'), $EXPECT($L33, 'CoffeeScriptBooleanLiteral "on"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7961
+ var CoffeeScriptBooleanLiteral$0 = $TS($S($C($EXPECT($L33, 'CoffeeScriptBooleanLiteral "yes"'), $EXPECT($L34, 'CoffeeScriptBooleanLiteral "on"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7794
7962
  return { $loc, token: "true" };
7795
7963
  });
7796
- var CoffeeScriptBooleanLiteral$1 = $TS($S($C($EXPECT($L34, 'CoffeeScriptBooleanLiteral "no"'), $EXPECT($L35, 'CoffeeScriptBooleanLiteral "off"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7964
+ var CoffeeScriptBooleanLiteral$1 = $TS($S($C($EXPECT($L35, 'CoffeeScriptBooleanLiteral "no"'), $EXPECT($L36, 'CoffeeScriptBooleanLiteral "off"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7797
7965
  return { $loc, token: "false" };
7798
7966
  });
7799
7967
  var CoffeeScriptBooleanLiteral$$ = [CoffeeScriptBooleanLiteral$0, CoffeeScriptBooleanLiteral$1];
7800
7968
  function CoffeeScriptBooleanLiteral(ctx, state) {
7801
7969
  return $EVENT_C(ctx, state, "CoffeeScriptBooleanLiteral", CoffeeScriptBooleanLiteral$$);
7802
7970
  }
7803
- var Identifier$0 = $T($S($EXPECT($R12, "Identifier /(?=\\p{ID_Start}|[_$])/"), $N(ReservedWord), IdentifierName), function(value) {
7971
+ var Identifier$0 = $T($S($EXPECT($R13, "Identifier /(?=\\p{ID_Start}|[_$])/"), $N(ReservedWord), IdentifierName), function(value) {
7804
7972
  var id = value[2];
7805
7973
  return id;
7806
7974
  });
7807
7975
  function Identifier(ctx, state) {
7808
7976
  return $EVENT(ctx, state, "Identifier", Identifier$0);
7809
7977
  }
7810
- var IdentifierName$0 = $TR($EXPECT($R13, "IdentifierName /(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
7978
+ var IdentifierName$0 = $TR($EXPECT($R14, "IdentifierName /(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
7811
7979
  return {
7812
7980
  type: "Identifier",
7813
7981
  name: $0,
@@ -7825,11 +7993,11 @@ ${input.slice(result.pos)}
7825
7993
  function IdentifierReference(ctx, state) {
7826
7994
  return $EVENT(ctx, state, "IdentifierReference", IdentifierReference$0);
7827
7995
  }
7828
- var UpcomingAssignment$0 = $Y($S(__, $EXPECT($L3, 'UpcomingAssignment "="'), $N($C($EXPECT($L3, 'UpcomingAssignment "="'), $EXPECT($L36, 'UpcomingAssignment ">"')))));
7996
+ var UpcomingAssignment$0 = $Y($S(__, $EXPECT($L3, 'UpcomingAssignment "="'), $N($C($EXPECT($L3, 'UpcomingAssignment "="'), $EXPECT($L37, 'UpcomingAssignment ">"')))));
7829
7997
  function UpcomingAssignment(ctx, state) {
7830
7998
  return $EVENT(ctx, state, "UpcomingAssignment", UpcomingAssignment$0);
7831
7999
  }
7832
- var ArrayLiteral$0 = $T($S($EXPECT($R14, "ArrayLiteral /(?=\\[)/"), _ArrayLiteral), function(value) {
8000
+ var ArrayLiteral$0 = $T($S($EXPECT($R15, "ArrayLiteral /(?=\\[)/"), _ArrayLiteral), function(value) {
7833
8001
  return value[1];
7834
8002
  });
7835
8003
  function ArrayLiteral(ctx, state) {
@@ -7983,7 +8151,7 @@ ${input.slice(result.pos)}
7983
8151
  return $EVENT(ctx, state, "NestedElement", NestedElement$0);
7984
8152
  }
7985
8153
  var ArrayElementDelimiter$0 = $S(__, Comma);
7986
- var ArrayElementDelimiter$1 = $Y($S(__, $EXPECT($L37, 'ArrayElementDelimiter "]"')));
8154
+ var ArrayElementDelimiter$1 = $Y($S(__, $EXPECT($L38, 'ArrayElementDelimiter "]"')));
7987
8155
  var ArrayElementDelimiter$2 = $T($S($Y(EOS), InsertComma), function(value) {
7988
8156
  return value[1];
7989
8157
  });
@@ -8213,7 +8381,7 @@ ${input.slice(result.pos)}
8213
8381
  return $EVENT_C(ctx, state, "ImplicitInlineObjectPropertyDelimiter", ImplicitInlineObjectPropertyDelimiter$$);
8214
8382
  }
8215
8383
  var ObjectPropertyDelimiter$0 = $S($E(_), Comma);
8216
- var ObjectPropertyDelimiter$1 = $Y($S(__, $EXPECT($L28, 'ObjectPropertyDelimiter "}"')));
8384
+ var ObjectPropertyDelimiter$1 = $Y($S(__, $EXPECT($L29, 'ObjectPropertyDelimiter "}"')));
8217
8385
  var ObjectPropertyDelimiter$2 = $T($S($Y(EOS), InsertComma), function(value) {
8218
8386
  return value[1];
8219
8387
  });
@@ -8229,7 +8397,7 @@ ${input.slice(result.pos)}
8229
8397
  children: [ws, ...prop.children]
8230
8398
  };
8231
8399
  });
8232
- var PropertyDefinition$1 = $TS($S($E(_), $TEXT($EXPECT($R15, "PropertyDefinition /[!+-]/")), PropertyName), function($skip, $loc, $0, $1, $2, $3) {
8400
+ var PropertyDefinition$1 = $TS($S($E(_), $TEXT($EXPECT($R16, "PropertyDefinition /[!+-]/")), PropertyName), function($skip, $loc, $0, $1, $2, $3) {
8233
8401
  var ws = $1;
8234
8402
  var toggle = $2;
8235
8403
  var id = $3;
@@ -8245,6 +8413,11 @@ ${input.slice(result.pos)}
8245
8413
  var PropertyDefinition$2 = $TS($S($E(_), MethodDefinition), function($skip, $loc, $0, $1, $2) {
8246
8414
  var ws = $1;
8247
8415
  var def = $2;
8416
+ if (def.type === "MultiMethodDefinition") {
8417
+ return {
8418
+ children: def.children.flatMap((c, i) => i ? [",", c] : [c])
8419
+ };
8420
+ }
8248
8421
  if (!def.block || def.block.empty)
8249
8422
  return $skip;
8250
8423
  return {
@@ -8396,7 +8569,7 @@ ${input.slice(result.pos)}
8396
8569
  implicit: true
8397
8570
  };
8398
8571
  });
8399
- var ComputedPropertyName$2 = $TS($S(InsertOpenBracket, $EXPECT($L21, 'ComputedPropertyName "-"'), NumericLiteral, InsertCloseBracket), function($skip, $loc, $0, $1, $2, $3, $4) {
8572
+ var ComputedPropertyName$2 = $TS($S(InsertOpenBracket, $EXPECT($L22, 'ComputedPropertyName "-"'), NumericLiteral, InsertCloseBracket), function($skip, $loc, $0, $1, $2, $3, $4) {
8400
8573
  const expression = [$2, $3];
8401
8574
  return {
8402
8575
  type: "ComputedPropertyName",
@@ -8479,16 +8652,16 @@ ${input.slice(result.pos)}
8479
8652
  parameters: signature.parameters
8480
8653
  };
8481
8654
  });
8482
- var MethodDefinition$2 = $TS($S(GetOrSet, $E(_), ForbidIndentedApplication, $E($S(MemberBase, $Q(CallExpressionRest))), RestoreIndentedApplication, $E(BracedBlock)), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
8655
+ var MethodDefinition$2 = $TS($S(GetOrSet, $E(_), ForbidIndentedApplication, $E($S(MemberBase, $Q(CallExpressionRest), $E(ReturnTypeSuffix))), RestoreIndentedApplication, $E(BracedBlock)), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
8483
8656
  var kind = $1;
8484
8657
  var ws = $2;
8485
- var value = $4;
8658
+ var content = $4;
8486
8659
  var block = $6;
8487
- if (!value)
8660
+ if (!content)
8488
8661
  return $skip;
8489
- const rest = value[1];
8662
+ const [base, rest, returnType] = content;
8663
+ const value = [base, rest];
8490
8664
  if (!rest.length) {
8491
- const base = value[0];
8492
8665
  let name2;
8493
8666
  if (base.type === "MemberExpression") {
8494
8667
  const lastAccess2 = lastAccessInCallExpression(base);
@@ -8503,7 +8676,7 @@ ${input.slice(result.pos)}
8503
8676
  if (name2[0] === "#")
8504
8677
  name2 = name2.slice(1);
8505
8678
  const autoReturn = !block || base.type !== "Identifier";
8506
- return makeGetterMethod(name2, ws, base, block, kind, autoReturn);
8679
+ return makeGetterMethod(name2, ws, base, returnType, block, kind, autoReturn);
8507
8680
  }
8508
8681
  let last = rest[rest.length - 1];
8509
8682
  while (Array.isArray(last)) {
@@ -8514,10 +8687,10 @@ ${input.slice(result.pos)}
8514
8687
  return $skip;
8515
8688
  case "PropertyAccess":
8516
8689
  const { name: name2 } = last;
8517
- return makeGetterMethod(name2, ws, value, block, kind);
8690
+ return makeGetterMethod(name2, ws, value, returnType, block, kind);
8518
8691
  case "PropertyGlob":
8519
8692
  return {
8520
- type: "ShorthandMethodDefinition",
8693
+ type: "MultiMethodDefinition",
8521
8694
  children: last.object.properties.map((p) => {
8522
8695
  const { name: name3, type } = p;
8523
8696
  let v;
@@ -8531,7 +8704,7 @@ ${input.slice(result.pos)}
8531
8704
  }
8532
8705
  const exp = processCallMemberExpression({
8533
8706
  type: "CallExpression",
8534
- children: [value[0], ...value[1].slice(0, -1), {
8707
+ children: [base, ...rest.slice(0, -1), {
8535
8708
  type: "PropertyAccess",
8536
8709
  children: [last.dot, {
8537
8710
  ...v,
@@ -8540,13 +8713,13 @@ ${input.slice(result.pos)}
8540
8713
  }]
8541
8714
  }]
8542
8715
  });
8543
- return makeGetterMethod(name3, ws, exp, block, kind);
8716
+ return makeGetterMethod(name3, ws, exp, returnType, block, kind);
8544
8717
  })
8545
8718
  };
8546
8719
  }
8547
8720
  const lastAccess = lastAccessInCallExpression({ children: rest });
8548
8721
  const { name } = lastAccess;
8549
- return makeGetterMethod(name, ws, value, block, kind);
8722
+ return makeGetterMethod(name, ws, value, returnType, block, kind);
8550
8723
  });
8551
8724
  var MethodDefinition$$ = [MethodDefinition$0, MethodDefinition$1, MethodDefinition$2];
8552
8725
  function MethodDefinition(ctx, state) {
@@ -8696,10 +8869,10 @@ ${input.slice(result.pos)}
8696
8869
  function OperatorAssignmentOp(ctx, state) {
8697
8870
  return $EVENT_C(ctx, state, "OperatorAssignmentOp", OperatorAssignmentOp$$);
8698
8871
  }
8699
- var AssignmentOpSymbol$0 = $EXPECT($L38, 'AssignmentOpSymbol "**="');
8700
- var AssignmentOpSymbol$1 = $EXPECT($L39, 'AssignmentOpSymbol "*="');
8701
- var AssignmentOpSymbol$2 = $EXPECT($L40, 'AssignmentOpSymbol "/="');
8702
- var AssignmentOpSymbol$3 = $EXPECT($L41, 'AssignmentOpSymbol "%="');
8872
+ var AssignmentOpSymbol$0 = $EXPECT($L39, 'AssignmentOpSymbol "**="');
8873
+ var AssignmentOpSymbol$1 = $EXPECT($L40, 'AssignmentOpSymbol "*="');
8874
+ var AssignmentOpSymbol$2 = $EXPECT($L41, 'AssignmentOpSymbol "/="');
8875
+ var AssignmentOpSymbol$3 = $EXPECT($L42, 'AssignmentOpSymbol "%="');
8703
8876
  var AssignmentOpSymbol$4 = $TS($S($C($EXPECT($L8, 'AssignmentOpSymbol "++"'), $EXPECT($L10, 'AssignmentOpSymbol "\u29FA"')), Equals), function($skip, $loc, $0, $1, $2) {
8704
8877
  return {
8705
8878
  special: true,
@@ -8708,18 +8881,18 @@ ${input.slice(result.pos)}
8708
8881
  children: [$2]
8709
8882
  };
8710
8883
  });
8711
- var AssignmentOpSymbol$5 = $EXPECT($L42, 'AssignmentOpSymbol "+="');
8712
- var AssignmentOpSymbol$6 = $EXPECT($L43, 'AssignmentOpSymbol "-="');
8713
- var AssignmentOpSymbol$7 = $EXPECT($L44, 'AssignmentOpSymbol "<<="');
8714
- var AssignmentOpSymbol$8 = $EXPECT($L45, 'AssignmentOpSymbol ">>>="');
8715
- var AssignmentOpSymbol$9 = $EXPECT($L46, 'AssignmentOpSymbol ">>="');
8716
- var AssignmentOpSymbol$10 = $EXPECT($L47, 'AssignmentOpSymbol "&&="');
8717
- var AssignmentOpSymbol$11 = $EXPECT($L48, 'AssignmentOpSymbol "&="');
8718
- var AssignmentOpSymbol$12 = $EXPECT($L49, 'AssignmentOpSymbol "^="');
8719
- var AssignmentOpSymbol$13 = $EXPECT($L50, 'AssignmentOpSymbol "||="');
8720
- var AssignmentOpSymbol$14 = $EXPECT($L51, 'AssignmentOpSymbol "|="');
8721
- var AssignmentOpSymbol$15 = $EXPECT($L52, 'AssignmentOpSymbol "??="');
8722
- var AssignmentOpSymbol$16 = $T($EXPECT($L53, 'AssignmentOpSymbol "?="'), function(value) {
8884
+ var AssignmentOpSymbol$5 = $EXPECT($L43, 'AssignmentOpSymbol "+="');
8885
+ var AssignmentOpSymbol$6 = $EXPECT($L44, 'AssignmentOpSymbol "-="');
8886
+ var AssignmentOpSymbol$7 = $EXPECT($L45, 'AssignmentOpSymbol "<<="');
8887
+ var AssignmentOpSymbol$8 = $EXPECT($L46, 'AssignmentOpSymbol ">>>="');
8888
+ var AssignmentOpSymbol$9 = $EXPECT($L47, 'AssignmentOpSymbol ">>="');
8889
+ var AssignmentOpSymbol$10 = $EXPECT($L48, 'AssignmentOpSymbol "&&="');
8890
+ var AssignmentOpSymbol$11 = $EXPECT($L49, 'AssignmentOpSymbol "&="');
8891
+ var AssignmentOpSymbol$12 = $EXPECT($L50, 'AssignmentOpSymbol "^="');
8892
+ var AssignmentOpSymbol$13 = $EXPECT($L51, 'AssignmentOpSymbol "||="');
8893
+ var AssignmentOpSymbol$14 = $EXPECT($L52, 'AssignmentOpSymbol "|="');
8894
+ var AssignmentOpSymbol$15 = $EXPECT($L53, 'AssignmentOpSymbol "??="');
8895
+ var AssignmentOpSymbol$16 = $T($EXPECT($L54, 'AssignmentOpSymbol "?="'), function(value) {
8723
8896
  return "??=";
8724
8897
  });
8725
8898
  var AssignmentOpSymbol$17 = $T($S($EXPECT($L3, 'AssignmentOpSymbol "="'), $N($EXPECT($L3, 'AssignmentOpSymbol "="'))), function(value) {
@@ -8732,10 +8905,10 @@ ${input.slice(result.pos)}
8732
8905
  function AssignmentOpSymbol(ctx, state) {
8733
8906
  return $EVENT_C(ctx, state, "AssignmentOpSymbol", AssignmentOpSymbol$$);
8734
8907
  }
8735
- var CoffeeWordAssignmentOp$0 = $T($EXPECT($L54, 'CoffeeWordAssignmentOp "and="'), function(value) {
8908
+ var CoffeeWordAssignmentOp$0 = $T($EXPECT($L55, 'CoffeeWordAssignmentOp "and="'), function(value) {
8736
8909
  return "&&=";
8737
8910
  });
8738
- var CoffeeWordAssignmentOp$1 = $T($EXPECT($L55, 'CoffeeWordAssignmentOp "or="'), function(value) {
8911
+ var CoffeeWordAssignmentOp$1 = $T($EXPECT($L56, 'CoffeeWordAssignmentOp "or="'), function(value) {
8739
8912
  return "||=";
8740
8913
  });
8741
8914
  var CoffeeWordAssignmentOp$$ = [CoffeeWordAssignmentOp$0, CoffeeWordAssignmentOp$1];
@@ -8769,7 +8942,7 @@ ${input.slice(result.pos)}
8769
8942
  function IdentifierBinaryOp(ctx, state) {
8770
8943
  return $EVENT(ctx, state, "IdentifierBinaryOp", IdentifierBinaryOp$0);
8771
8944
  }
8772
- var BinaryOp$0 = $T($S($EXPECT($R16, "BinaryOp /(?=\\p{ID_Start}|[_$^\xAB\xBB\u22D9\u2264\u2265\u2208\u220B\u2209\u220C\u2263\u2261\u2262\u2260=\u2016\u2047&|*\\/!?%<>\u29FA+-])/"), _BinaryOp), function(value) {
8945
+ var BinaryOp$0 = $T($S($EXPECT($R17, "BinaryOp /(?=\\p{ID_Start}|[_$^\xAB\xBB\u22D9\u2264\u2265\u2208\u220B\u2209\u220C\u2263\u2261\u2262\u2260=\u2016\u2047&|*\\/!?%<>\u29FA+-])/"), _BinaryOp), function(value) {
8773
8946
  var op = value[1];
8774
8947
  return op;
8775
8948
  });
@@ -8804,33 +8977,33 @@ ${input.slice(result.pos)}
8804
8977
  function _BinaryOp(ctx, state) {
8805
8978
  return $EVENT_C(ctx, state, "_BinaryOp", _BinaryOp$$);
8806
8979
  }
8807
- var BinaryOpSymbol$0 = $EXPECT($L56, 'BinaryOpSymbol "**"');
8808
- var BinaryOpSymbol$1 = $EXPECT($L57, 'BinaryOpSymbol "*"');
8809
- var BinaryOpSymbol$2 = $EXPECT($L58, 'BinaryOpSymbol "/"');
8810
- var BinaryOpSymbol$3 = $TV($EXPECT($L59, 'BinaryOpSymbol "%%"'), function($skip, $loc, $0, $1) {
8980
+ var BinaryOpSymbol$0 = $EXPECT($L57, 'BinaryOpSymbol "**"');
8981
+ var BinaryOpSymbol$1 = $EXPECT($L58, 'BinaryOpSymbol "*"');
8982
+ var BinaryOpSymbol$2 = $EXPECT($L59, 'BinaryOpSymbol "/"');
8983
+ var BinaryOpSymbol$3 = $TV($EXPECT($L60, 'BinaryOpSymbol "%%"'), function($skip, $loc, $0, $1) {
8811
8984
  return {
8812
8985
  call: module.getRef("modulo"),
8813
8986
  special: true
8814
8987
  };
8815
8988
  });
8816
- var BinaryOpSymbol$4 = $EXPECT($L60, 'BinaryOpSymbol "%"');
8989
+ var BinaryOpSymbol$4 = $EXPECT($L61, 'BinaryOpSymbol "%"');
8817
8990
  var BinaryOpSymbol$5 = $TV($C($EXPECT($L8, 'BinaryOpSymbol "++"'), $EXPECT($L10, 'BinaryOpSymbol "\u29FA"')), function($skip, $loc, $0, $1) {
8818
8991
  return {
8819
8992
  method: "concat",
8820
8993
  special: true
8821
8994
  };
8822
8995
  });
8823
- var BinaryOpSymbol$6 = $EXPECT($L61, 'BinaryOpSymbol "+"');
8824
- var BinaryOpSymbol$7 = $EXPECT($L21, 'BinaryOpSymbol "-"');
8825
- var BinaryOpSymbol$8 = $EXPECT($L62, 'BinaryOpSymbol "<="');
8826
- var BinaryOpSymbol$9 = $T($EXPECT($L63, 'BinaryOpSymbol "\u2264"'), function(value) {
8996
+ var BinaryOpSymbol$6 = $EXPECT($L62, 'BinaryOpSymbol "+"');
8997
+ var BinaryOpSymbol$7 = $EXPECT($L22, 'BinaryOpSymbol "-"');
8998
+ var BinaryOpSymbol$8 = $EXPECT($L63, 'BinaryOpSymbol "<="');
8999
+ var BinaryOpSymbol$9 = $T($EXPECT($L64, 'BinaryOpSymbol "\u2264"'), function(value) {
8827
9000
  return "<=";
8828
9001
  });
8829
- var BinaryOpSymbol$10 = $EXPECT($L64, 'BinaryOpSymbol ">="');
8830
- var BinaryOpSymbol$11 = $T($EXPECT($L65, 'BinaryOpSymbol "\u2265"'), function(value) {
9002
+ var BinaryOpSymbol$10 = $EXPECT($L65, 'BinaryOpSymbol ">="');
9003
+ var BinaryOpSymbol$11 = $T($EXPECT($L66, 'BinaryOpSymbol "\u2265"'), function(value) {
8831
9004
  return ">=";
8832
9005
  });
8833
- var BinaryOpSymbol$12 = $TV($EXPECT($L66, 'BinaryOpSymbol "<?"'), function($skip, $loc, $0, $1) {
9006
+ var BinaryOpSymbol$12 = $TV($EXPECT($L67, 'BinaryOpSymbol "<?"'), function($skip, $loc, $0, $1) {
8834
9007
  return {
8835
9008
  $loc,
8836
9009
  token: "instanceof",
@@ -8838,7 +9011,7 @@ ${input.slice(result.pos)}
8838
9011
  special: true
8839
9012
  };
8840
9013
  });
8841
- var BinaryOpSymbol$13 = $TV($EXPECT($L67, 'BinaryOpSymbol "!<?"'), function($skip, $loc, $0, $1) {
9014
+ var BinaryOpSymbol$13 = $TV($EXPECT($L68, 'BinaryOpSymbol "!<?"'), function($skip, $loc, $0, $1) {
8842
9015
  return {
8843
9016
  $loc,
8844
9017
  token: "instanceof",
@@ -8847,74 +9020,74 @@ ${input.slice(result.pos)}
8847
9020
  negated: true
8848
9021
  };
8849
9022
  });
8850
- var BinaryOpSymbol$14 = $EXPECT($L68, 'BinaryOpSymbol "<<"');
8851
- var BinaryOpSymbol$15 = $T($EXPECT($L69, 'BinaryOpSymbol "\xAB"'), function(value) {
9023
+ var BinaryOpSymbol$14 = $EXPECT($L69, 'BinaryOpSymbol "<<"');
9024
+ var BinaryOpSymbol$15 = $T($EXPECT($L70, 'BinaryOpSymbol "\xAB"'), function(value) {
8852
9025
  return "<<";
8853
9026
  });
8854
- var BinaryOpSymbol$16 = $EXPECT($L15, 'BinaryOpSymbol "<"');
8855
- var BinaryOpSymbol$17 = $EXPECT($L70, 'BinaryOpSymbol ">>>"');
8856
- var BinaryOpSymbol$18 = $T($EXPECT($L71, 'BinaryOpSymbol "\u22D9"'), function(value) {
9027
+ var BinaryOpSymbol$16 = $EXPECT($L16, 'BinaryOpSymbol "<"');
9028
+ var BinaryOpSymbol$17 = $EXPECT($L71, 'BinaryOpSymbol ">>>"');
9029
+ var BinaryOpSymbol$18 = $T($EXPECT($L72, 'BinaryOpSymbol "\u22D9"'), function(value) {
8857
9030
  return ">>>";
8858
9031
  });
8859
- var BinaryOpSymbol$19 = $EXPECT($L72, 'BinaryOpSymbol ">>"');
8860
- var BinaryOpSymbol$20 = $T($EXPECT($L73, 'BinaryOpSymbol "\xBB"'), function(value) {
9032
+ var BinaryOpSymbol$19 = $EXPECT($L73, 'BinaryOpSymbol ">>"');
9033
+ var BinaryOpSymbol$20 = $T($EXPECT($L74, 'BinaryOpSymbol "\xBB"'), function(value) {
8861
9034
  return ">>";
8862
9035
  });
8863
- var BinaryOpSymbol$21 = $EXPECT($L36, 'BinaryOpSymbol ">"');
8864
- var BinaryOpSymbol$22 = $EXPECT($L74, 'BinaryOpSymbol "!=="');
8865
- var BinaryOpSymbol$23 = $T($EXPECT($L75, 'BinaryOpSymbol "\u2262"'), function(value) {
9036
+ var BinaryOpSymbol$21 = $EXPECT($L37, 'BinaryOpSymbol ">"');
9037
+ var BinaryOpSymbol$22 = $EXPECT($L75, 'BinaryOpSymbol "!=="');
9038
+ var BinaryOpSymbol$23 = $T($EXPECT($L76, 'BinaryOpSymbol "\u2262"'), function(value) {
8866
9039
  return "!==";
8867
9040
  });
8868
- var BinaryOpSymbol$24 = $TV($C($EXPECT($L76, 'BinaryOpSymbol "!="'), $EXPECT($L77, 'BinaryOpSymbol "\u2260"')), function($skip, $loc, $0, $1) {
9041
+ var BinaryOpSymbol$24 = $TV($C($EXPECT($L77, 'BinaryOpSymbol "!="'), $EXPECT($L78, 'BinaryOpSymbol "\u2260"')), function($skip, $loc, $0, $1) {
8869
9042
  if (module.config.coffeeEq)
8870
9043
  return "!==";
8871
9044
  return "!=";
8872
9045
  });
8873
- var BinaryOpSymbol$25 = $TS($S($EXPECT($L78, 'BinaryOpSymbol "isnt"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9046
+ var BinaryOpSymbol$25 = $TS($S($EXPECT($L79, 'BinaryOpSymbol "isnt"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8874
9047
  if (module.config.coffeeIsnt)
8875
9048
  return "!==";
8876
9049
  return $skip;
8877
9050
  });
8878
- var BinaryOpSymbol$26 = $EXPECT($L79, 'BinaryOpSymbol "==="');
8879
- var BinaryOpSymbol$27 = $T($C($EXPECT($L80, 'BinaryOpSymbol "\u2263"'), $EXPECT($L81, 'BinaryOpSymbol "\u2A76"')), function(value) {
9051
+ var BinaryOpSymbol$26 = $EXPECT($L80, 'BinaryOpSymbol "==="');
9052
+ var BinaryOpSymbol$27 = $T($C($EXPECT($L81, 'BinaryOpSymbol "\u2263"'), $EXPECT($L82, 'BinaryOpSymbol "\u2A76"')), function(value) {
8880
9053
  return "===";
8881
9054
  });
8882
- var BinaryOpSymbol$28 = $TV($C($EXPECT($L82, 'BinaryOpSymbol "=="'), $EXPECT($L83, 'BinaryOpSymbol "\u2261"'), $EXPECT($L84, 'BinaryOpSymbol "\u2A75"')), function($skip, $loc, $0, $1) {
9055
+ var BinaryOpSymbol$28 = $TV($C($EXPECT($L83, 'BinaryOpSymbol "=="'), $EXPECT($L84, 'BinaryOpSymbol "\u2261"'), $EXPECT($L85, 'BinaryOpSymbol "\u2A75"')), function($skip, $loc, $0, $1) {
8883
9056
  if (module.config.coffeeEq)
8884
9057
  return "===";
8885
9058
  return "==";
8886
9059
  });
8887
- var BinaryOpSymbol$29 = $T($S($EXPECT($L85, 'BinaryOpSymbol "and"'), NonIdContinue), function(value) {
9060
+ var BinaryOpSymbol$29 = $T($S($EXPECT($L86, 'BinaryOpSymbol "and"'), NonIdContinue), function(value) {
8888
9061
  return "&&";
8889
9062
  });
8890
- var BinaryOpSymbol$30 = $EXPECT($L86, 'BinaryOpSymbol "&&"');
8891
- var BinaryOpSymbol$31 = $T($S($EXPECT($L87, 'BinaryOpSymbol "or"'), NonIdContinue), function(value) {
9063
+ var BinaryOpSymbol$30 = $EXPECT($L87, 'BinaryOpSymbol "&&"');
9064
+ var BinaryOpSymbol$31 = $T($S($EXPECT($L88, 'BinaryOpSymbol "or"'), NonIdContinue), function(value) {
8892
9065
  return "||";
8893
9066
  });
8894
- var BinaryOpSymbol$32 = $EXPECT($L88, 'BinaryOpSymbol "||"');
8895
- var BinaryOpSymbol$33 = $T($EXPECT($L89, 'BinaryOpSymbol "\u2016"'), function(value) {
9067
+ var BinaryOpSymbol$32 = $EXPECT($L89, 'BinaryOpSymbol "||"');
9068
+ var BinaryOpSymbol$33 = $T($EXPECT($L90, 'BinaryOpSymbol "\u2016"'), function(value) {
8896
9069
  return "||";
8897
9070
  });
8898
- var BinaryOpSymbol$34 = $TV($C($EXPECT($L90, 'BinaryOpSymbol "^^"'), $S($EXPECT($L91, 'BinaryOpSymbol "xor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
9071
+ var BinaryOpSymbol$34 = $TV($C($EXPECT($L91, 'BinaryOpSymbol "^^"'), $S($EXPECT($L92, 'BinaryOpSymbol "xor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
8899
9072
  return {
8900
9073
  call: module.getRef("xor"),
8901
9074
  special: true
8902
9075
  };
8903
9076
  });
8904
- var BinaryOpSymbol$35 = $TV($C($EXPECT($R17, "BinaryOpSymbol /!\\^\\^?/"), $S($EXPECT($L92, 'BinaryOpSymbol "xnor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
9077
+ var BinaryOpSymbol$35 = $TV($C($EXPECT($R18, "BinaryOpSymbol /!\\^\\^?/"), $S($EXPECT($L93, 'BinaryOpSymbol "xnor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
8905
9078
  return {
8906
9079
  call: module.getRef("xnor"),
8907
9080
  special: true
8908
9081
  };
8909
9082
  });
8910
- var BinaryOpSymbol$36 = $EXPECT($L93, 'BinaryOpSymbol "??"');
8911
- var BinaryOpSymbol$37 = $T($EXPECT($L94, 'BinaryOpSymbol "\u2047"'), function(value) {
9083
+ var BinaryOpSymbol$36 = $EXPECT($L94, 'BinaryOpSymbol "??"');
9084
+ var BinaryOpSymbol$37 = $T($EXPECT($L95, 'BinaryOpSymbol "\u2047"'), function(value) {
8912
9085
  return "??";
8913
9086
  });
8914
9087
  var BinaryOpSymbol$38 = $T($S($EXPECT($L6, 'BinaryOpSymbol "?"'), CoffeeBinaryExistentialEnabled), function(value) {
8915
9088
  return "??";
8916
9089
  });
8917
- var BinaryOpSymbol$39 = $TS($S($EXPECT($L95, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9090
+ var BinaryOpSymbol$39 = $TS($S($EXPECT($L96, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8918
9091
  return {
8919
9092
  $loc,
8920
9093
  token: $1,
@@ -8931,7 +9104,7 @@ ${input.slice(result.pos)}
8931
9104
  var op = $3;
8932
9105
  return { ...op, $loc };
8933
9106
  });
8934
- var BinaryOpSymbol$42 = $TV($C($S(Is, __, In), $EXPECT($L96, 'BinaryOpSymbol "\u2208"')), function($skip, $loc, $0, $1) {
9107
+ var BinaryOpSymbol$42 = $TV($C($S(Is, __, In), $EXPECT($L97, 'BinaryOpSymbol "\u2208"')), function($skip, $loc, $0, $1) {
8935
9108
  return {
8936
9109
  method: "includes",
8937
9110
  relational: true,
@@ -8939,14 +9112,14 @@ ${input.slice(result.pos)}
8939
9112
  special: true
8940
9113
  };
8941
9114
  });
8942
- var BinaryOpSymbol$43 = $TV($EXPECT($L97, 'BinaryOpSymbol "\u220B"'), function($skip, $loc, $0, $1) {
9115
+ var BinaryOpSymbol$43 = $TV($EXPECT($L98, 'BinaryOpSymbol "\u220B"'), function($skip, $loc, $0, $1) {
8943
9116
  return {
8944
9117
  method: "includes",
8945
9118
  relational: true,
8946
9119
  special: true
8947
9120
  };
8948
9121
  });
8949
- var BinaryOpSymbol$44 = $TV($EXPECT($L98, 'BinaryOpSymbol "\u220C"'), function($skip, $loc, $0, $1) {
9122
+ var BinaryOpSymbol$44 = $TV($EXPECT($L99, 'BinaryOpSymbol "\u220C"'), function($skip, $loc, $0, $1) {
8950
9123
  return {
8951
9124
  method: "includes",
8952
9125
  relational: true,
@@ -8954,7 +9127,7 @@ ${input.slice(result.pos)}
8954
9127
  negated: true
8955
9128
  };
8956
9129
  });
8957
- var BinaryOpSymbol$45 = $TV($C($S(Is, __, OmittedNegation, __, In), $EXPECT($L99, 'BinaryOpSymbol "\u2209"')), function($skip, $loc, $0, $1) {
9130
+ var BinaryOpSymbol$45 = $TV($C($S(Is, __, OmittedNegation, __, In), $EXPECT($L100, 'BinaryOpSymbol "\u2209"')), function($skip, $loc, $0, $1) {
8958
9131
  return {
8959
9132
  method: "includes",
8960
9133
  relational: true,
@@ -8987,9 +9160,9 @@ ${input.slice(result.pos)}
8987
9160
  return "===";
8988
9161
  });
8989
9162
  var BinaryOpSymbol$48 = In;
8990
- var BinaryOpSymbol$49 = $EXPECT($L100, 'BinaryOpSymbol "&"');
8991
- var BinaryOpSymbol$50 = $EXPECT($L20, 'BinaryOpSymbol "^"');
8992
- var BinaryOpSymbol$51 = $EXPECT($L101, 'BinaryOpSymbol "|"');
9163
+ var BinaryOpSymbol$49 = $EXPECT($L101, 'BinaryOpSymbol "&"');
9164
+ var BinaryOpSymbol$50 = $EXPECT($L21, 'BinaryOpSymbol "^"');
9165
+ var BinaryOpSymbol$51 = $EXPECT($L102, 'BinaryOpSymbol "|"');
8993
9166
  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];
8994
9167
  function BinaryOpSymbol(ctx, state) {
8995
9168
  return $EVENT_C(ctx, state, "BinaryOpSymbol", BinaryOpSymbol$$);
@@ -9027,7 +9200,7 @@ ${input.slice(result.pos)}
9027
9200
  function CoffeeOfOp(ctx, state) {
9028
9201
  return $EVENT_C(ctx, state, "CoffeeOfOp", CoffeeOfOp$$);
9029
9202
  }
9030
- var NotOp$0 = $TS($S($EXPECT($L95, 'NotOp "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9203
+ var NotOp$0 = $TS($S($EXPECT($L96, 'NotOp "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9031
9204
  return {
9032
9205
  $loc,
9033
9206
  token: "instanceof",
@@ -9048,24 +9221,24 @@ ${input.slice(result.pos)}
9048
9221
  function NotOp(ctx, state) {
9049
9222
  return $EVENT_C(ctx, state, "NotOp", NotOp$$);
9050
9223
  }
9051
- var Xor$0 = $EXPECT($L90, 'Xor "^^"');
9052
- var Xor$1 = $S($EXPECT($L91, 'Xor "xor"'), NonIdContinue);
9224
+ var Xor$0 = $EXPECT($L91, 'Xor "^^"');
9225
+ var Xor$1 = $S($EXPECT($L92, 'Xor "xor"'), NonIdContinue);
9053
9226
  var Xor$$ = [Xor$0, Xor$1];
9054
9227
  function Xor(ctx, state) {
9055
9228
  return $EVENT_C(ctx, state, "Xor", Xor$$);
9056
9229
  }
9057
- var Xnor$0 = $R$0($EXPECT($R17, "Xnor /!\\^\\^?/"));
9058
- var Xnor$1 = $EXPECT($L92, 'Xnor "xnor"');
9230
+ var Xnor$0 = $R$0($EXPECT($R18, "Xnor /!\\^\\^?/"));
9231
+ var Xnor$1 = $EXPECT($L93, 'Xnor "xnor"');
9059
9232
  var Xnor$$ = [Xnor$0, Xnor$1];
9060
9233
  function Xnor(ctx, state) {
9061
9234
  return $EVENT_C(ctx, state, "Xnor", Xnor$$);
9062
9235
  }
9063
- var UnaryOp$0 = $TR($EXPECT($R18, "UnaryOp /(?!\\+\\+|--)[!~+-](?!\\s)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
9236
+ var UnaryOp$0 = $TR($EXPECT($R19, "UnaryOp /(?!\\+\\+|--)[!~+-](?!\\s)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
9064
9237
  return { $loc, token: $0 };
9065
9238
  });
9066
9239
  var UnaryOp$1 = AwaitOp;
9067
- var UnaryOp$2 = $S($C(Delete, Void, Typeof), $N($R$0($EXPECT($R19, "UnaryOp /[:.]/"))), $E(_));
9068
- var UnaryOp$3 = $T($S(Not, $N($EXPECT($R19, "UnaryOp /[:.]/")), $E($EXPECT($L14, 'UnaryOp " "')), $E(_)), function(value) {
9240
+ var UnaryOp$2 = $S($C(Delete, Void, Typeof), $N($R$0($EXPECT($R20, "UnaryOp /[:.]/"))), $E(_));
9241
+ var UnaryOp$3 = $T($S(Not, $N($EXPECT($R20, "UnaryOp /[:.]/")), $E($EXPECT($L15, 'UnaryOp " "')), $E(_)), function(value) {
9069
9242
  return [value[0], value[3]];
9070
9243
  });
9071
9244
  var UnaryOp$$ = [UnaryOp$0, UnaryOp$1, UnaryOp$2, UnaryOp$3];
@@ -9160,7 +9333,7 @@ ${input.slice(result.pos)}
9160
9333
  function NonPipelinePostfixedExpression(ctx, state) {
9161
9334
  return $EVENT(ctx, state, "NonPipelinePostfixedExpression", NonPipelinePostfixedExpression$0);
9162
9335
  }
9163
- var PostfixStatement$0 = $T($S($EXPECT($R20, "PostfixStatement /(?=for|if|loop|unless|until|while)/"), _PostfixStatement), function(value) {
9336
+ var PostfixStatement$0 = $T($S($EXPECT($R21, "PostfixStatement /(?=for|if|loop|unless|until|while)/"), _PostfixStatement), function(value) {
9164
9337
  return value[1];
9165
9338
  });
9166
9339
  function PostfixStatement(ctx, state) {
@@ -9203,7 +9376,7 @@ ${input.slice(result.pos)}
9203
9376
  function NoCommaStatement(ctx, state) {
9204
9377
  return $EVENT_C(ctx, state, "NoCommaStatement", NoCommaStatement$$);
9205
9378
  }
9206
- var EmptyStatement$0 = $TS($S($E(_), $Y($EXPECT($L102, 'EmptyStatement ";"'))), function($skip, $loc, $0, $1, $2) {
9379
+ var EmptyStatement$0 = $TS($S($E(_), $Y($EXPECT($L103, 'EmptyStatement ";"'))), function($skip, $loc, $0, $1, $2) {
9207
9380
  return { type: "EmptyStatement", children: $1 || [] };
9208
9381
  });
9209
9382
  function EmptyStatement(ctx, state) {
@@ -9234,7 +9407,7 @@ ${input.slice(result.pos)}
9234
9407
  var w = $3;
9235
9408
  return [id, colon, w];
9236
9409
  });
9237
- var Label$1 = $S($EXPECT($L103, 'Label "$:"'), Whitespace);
9410
+ var Label$1 = $S($EXPECT($L104, 'Label "$:"'), Whitespace);
9238
9411
  var Label$$ = [Label$0, Label$1];
9239
9412
  function Label(ctx, state) {
9240
9413
  return $EVENT_C(ctx, state, "Label", Label$$);
@@ -9407,7 +9580,7 @@ ${input.slice(result.pos)}
9407
9580
  function BlockExpressionPart(ctx, state) {
9408
9581
  return $EVENT(ctx, state, "BlockExpressionPart", BlockExpressionPart$0);
9409
9582
  }
9410
- var IterationStatement$0 = $T($S($EXPECT($R21, "IterationStatement /(?=loop|do|for|until|while)/"), _IterationStatement), function(value) {
9583
+ var IterationStatement$0 = $T($S($EXPECT($R22, "IterationStatement /(?=loop|do|for|until|while)/"), _IterationStatement), function(value) {
9411
9584
  return value[1];
9412
9585
  });
9413
9586
  function IterationStatement(ctx, state) {
@@ -9760,7 +9933,7 @@ ${input.slice(result.pos)}
9760
9933
  names: binding.names
9761
9934
  };
9762
9935
  });
9763
- var ForDeclaration$1 = $TS($S(InsertConst, ForBinding, $EXPECT($R22, "ForDeclaration /(?=[\\s\\),])/")), function($skip, $loc, $0, $1, $2, $3) {
9936
+ var ForDeclaration$1 = $TS($S(InsertConst, ForBinding, $EXPECT($R23, "ForDeclaration /(?=[\\s\\),])/")), function($skip, $loc, $0, $1, $2, $3) {
9764
9937
  var c = $1;
9765
9938
  var binding = $2;
9766
9939
  return {
@@ -9986,7 +10159,7 @@ ${input.slice(result.pos)}
9986
10159
  function IgnoreColon(ctx, state) {
9987
10160
  return $EVENT(ctx, state, "IgnoreColon", IgnoreColon$0);
9988
10161
  }
9989
- var TryStatement$0 = $TS($S(Try, $N($EXPECT($L13, 'TryStatement ":"')), NoPostfixBracedOrEmptyBlock, $E(CatchClause), $E(FinallyClause)), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
10162
+ var TryStatement$0 = $TS($S(Try, $N($EXPECT($L14, 'TryStatement ":"')), NoPostfixBracedOrEmptyBlock, $E(CatchClause), $E(FinallyClause)), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
9990
10163
  var t = $1;
9991
10164
  var b = $3;
9992
10165
  var c = $4;
@@ -10322,7 +10495,7 @@ ${input.slice(result.pos)}
10322
10495
  };
10323
10496
  });
10324
10497
  var KeywordStatement$2 = DebuggerStatement;
10325
- var KeywordStatement$3 = $T($S(Return, $N($C($EXPECT($L13, 'KeywordStatement ":"'), $EXPECT($L7, 'KeywordStatement "."'), AfterReturnShorthand)), $E(MaybeNestedExpression)), function(value) {
10498
+ var KeywordStatement$3 = $T($S(Return, $N($C($EXPECT($L14, 'KeywordStatement ":"'), $EXPECT($L7, 'KeywordStatement "."'), AfterReturnShorthand)), $E(MaybeNestedExpression)), function(value) {
10326
10499
  var expression = value[2];
10327
10500
  return { "type": "ReturnStatement", "expression": expression, "children": value };
10328
10501
  });
@@ -10343,19 +10516,19 @@ ${input.slice(result.pos)}
10343
10516
  function ThrowStatement(ctx, state) {
10344
10517
  return $EVENT(ctx, state, "ThrowStatement", ThrowStatement$0);
10345
10518
  }
10346
- var Break$0 = $TS($S($EXPECT($L104, 'Break "break"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10519
+ var Break$0 = $TS($S($EXPECT($L105, 'Break "break"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10347
10520
  return { $loc, token: $1 };
10348
10521
  });
10349
10522
  function Break(ctx, state) {
10350
10523
  return $EVENT(ctx, state, "Break", Break$0);
10351
10524
  }
10352
- var Continue$0 = $TS($S($EXPECT($L105, 'Continue "continue"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10525
+ var Continue$0 = $TS($S($EXPECT($L106, 'Continue "continue"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10353
10526
  return { $loc, token: $1 };
10354
10527
  });
10355
10528
  function Continue(ctx, state) {
10356
10529
  return $EVENT(ctx, state, "Continue", Continue$0);
10357
10530
  }
10358
- var Debugger$0 = $TS($S($EXPECT($L106, 'Debugger "debugger"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10531
+ var Debugger$0 = $TS($S($EXPECT($L107, 'Debugger "debugger"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10359
10532
  return { $loc, token: $1 };
10360
10533
  });
10361
10534
  function Debugger(ctx, state) {
@@ -10476,7 +10649,7 @@ ${input.slice(result.pos)}
10476
10649
  function FromClause(ctx, state) {
10477
10650
  return $EVENT(ctx, state, "FromClause", FromClause$0);
10478
10651
  }
10479
- var ImportAssertion$0 = $S($E(_), $C($EXPECT($L107, 'ImportAssertion "with"'), $EXPECT($L108, 'ImportAssertion "assert"')), NonIdContinue, $E(_), ObjectLiteral);
10652
+ var ImportAssertion$0 = $S($E(_), $C($EXPECT($L108, 'ImportAssertion "with"'), $EXPECT($L109, 'ImportAssertion "assert"')), NonIdContinue, $E(_), ObjectLiteral);
10480
10653
  function ImportAssertion(ctx, state) {
10481
10654
  return $EVENT(ctx, state, "ImportAssertion", ImportAssertion$0);
10482
10655
  }
@@ -10524,7 +10697,7 @@ ${input.slice(result.pos)}
10524
10697
  return $EVENT_C(ctx, state, "ImportSpecifier", ImportSpecifier$$);
10525
10698
  }
10526
10699
  var ImportAsToken$0 = $S(__, As);
10527
- var ImportAsToken$1 = $TS($S(Loc, __, Colon, $E($EXPECT($L14, 'ImportAsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
10700
+ var ImportAsToken$1 = $TS($S(Loc, __, Colon, $E($EXPECT($L15, 'ImportAsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
10528
10701
  var l = $1;
10529
10702
  var ws = $2;
10530
10703
  var c = $3;
@@ -10564,7 +10737,7 @@ ${input.slice(result.pos)}
10564
10737
  function UnprocessedModuleSpecifier(ctx, state) {
10565
10738
  return $EVENT_C(ctx, state, "UnprocessedModuleSpecifier", UnprocessedModuleSpecifier$$);
10566
10739
  }
10567
- var UnquotedSpecifier$0 = $TV($EXPECT($R23, 'UnquotedSpecifier /[^;"\\s]+/'), function($skip, $loc, $0, $1) {
10740
+ var UnquotedSpecifier$0 = $TV($EXPECT($R24, 'UnquotedSpecifier /[^;"\\s]+/'), function($skip, $loc, $0, $1) {
10568
10741
  var spec = $0;
10569
10742
  return { $loc, token: `"${spec}"` };
10570
10743
  });
@@ -10696,13 +10869,13 @@ ${input.slice(result.pos)}
10696
10869
  function LexicalDeclaration(ctx, state) {
10697
10870
  return $EVENT_C(ctx, state, "LexicalDeclaration", LexicalDeclaration$$);
10698
10871
  }
10699
- var ConstAssignment$0 = $TV($C($EXPECT($L109, 'ConstAssignment ":="'), $EXPECT($L110, 'ConstAssignment "\u2254"')), function($skip, $loc, $0, $1) {
10872
+ var ConstAssignment$0 = $TV($C($EXPECT($L110, 'ConstAssignment ":="'), $EXPECT($L111, 'ConstAssignment "\u2254"')), function($skip, $loc, $0, $1) {
10700
10873
  return { $loc, token: "=" };
10701
10874
  });
10702
10875
  function ConstAssignment(ctx, state) {
10703
10876
  return $EVENT(ctx, state, "ConstAssignment", ConstAssignment$0);
10704
10877
  }
10705
- var LetAssignment$0 = $TV($EXPECT($L111, 'LetAssignment ".="'), function($skip, $loc, $0, $1) {
10878
+ var LetAssignment$0 = $TV($EXPECT($L112, 'LetAssignment ".="'), function($skip, $loc, $0, $1) {
10706
10879
  return { $loc, token: "=" };
10707
10880
  });
10708
10881
  function LetAssignment(ctx, state) {
@@ -10770,7 +10943,7 @@ ${input.slice(result.pos)}
10770
10943
  function VariableDeclarationList(ctx, state) {
10771
10944
  return $EVENT(ctx, state, "VariableDeclarationList", VariableDeclarationList$0);
10772
10945
  }
10773
- var NumericLiteral$0 = $TS($S($EXPECT($R24, "NumericLiteral /(?=[0-9.])/"), NumericLiteralKind), function($skip, $loc, $0, $1, $2) {
10946
+ var NumericLiteral$0 = $TS($S($EXPECT($R25, "NumericLiteral /(?=[0-9.])/"), NumericLiteralKind), function($skip, $loc, $0, $1, $2) {
10774
10947
  var token = $2;
10775
10948
  return { type: "NumericLiteral", $loc, token };
10776
10949
  });
@@ -10786,36 +10959,36 @@ ${input.slice(result.pos)}
10786
10959
  function NumericLiteralKind(ctx, state) {
10787
10960
  return $EVENT_C(ctx, state, "NumericLiteralKind", NumericLiteralKind$$);
10788
10961
  }
10789
- var DecimalBigIntegerLiteral$0 = $R$0($EXPECT($R25, "DecimalBigIntegerLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)n/"));
10962
+ var DecimalBigIntegerLiteral$0 = $R$0($EXPECT($R26, "DecimalBigIntegerLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)n/"));
10790
10963
  function DecimalBigIntegerLiteral(ctx, state) {
10791
10964
  return $EVENT(ctx, state, "DecimalBigIntegerLiteral", DecimalBigIntegerLiteral$0);
10792
10965
  }
10793
- var DecimalLiteral$0 = $TV($TEXT($EXPECT($R26, "DecimalLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)(?=\\.(?:\\p{ID_Start}|[_$]))/")), function($skip, $loc, $0, $1) {
10966
+ var DecimalLiteral$0 = $TV($TEXT($EXPECT($R27, "DecimalLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)(?=\\.(?:\\p{ID_Start}|[_$]))/")), function($skip, $loc, $0, $1) {
10794
10967
  return $1 + ".";
10795
10968
  });
10796
- var DecimalLiteral$1 = $TEXT($S($EXPECT($R27, "DecimalLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)(?:\\.(?:[0-9](?:_[0-9]|[0-9])*))?/"), $E(ExponentPart)));
10797
- var DecimalLiteral$2 = $TEXT($S($EXPECT($R28, "DecimalLiteral /(?:\\.[0-9](?:_[0-9]|[0-9])*)/"), $E(ExponentPart)));
10969
+ var DecimalLiteral$1 = $TEXT($S($EXPECT($R28, "DecimalLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)(?:\\.(?:[0-9](?:_[0-9]|[0-9])*))?/"), $E(ExponentPart)));
10970
+ var DecimalLiteral$2 = $TEXT($S($EXPECT($R29, "DecimalLiteral /(?:\\.[0-9](?:_[0-9]|[0-9])*)/"), $E(ExponentPart)));
10798
10971
  var DecimalLiteral$$ = [DecimalLiteral$0, DecimalLiteral$1, DecimalLiteral$2];
10799
10972
  function DecimalLiteral(ctx, state) {
10800
10973
  return $EVENT_C(ctx, state, "DecimalLiteral", DecimalLiteral$$);
10801
10974
  }
10802
- var ExponentPart$0 = $R$0($EXPECT($R29, "ExponentPart /(?:[eE][+-]?[0-9]+(?:_[0-9]|[0-9])*)/"));
10975
+ var ExponentPart$0 = $R$0($EXPECT($R30, "ExponentPart /(?:[eE][+-]?[0-9]+(?:_[0-9]|[0-9])*)/"));
10803
10976
  function ExponentPart(ctx, state) {
10804
10977
  return $EVENT(ctx, state, "ExponentPart", ExponentPart$0);
10805
10978
  }
10806
- var BinaryIntegerLiteral$0 = $R$0($EXPECT($R30, "BinaryIntegerLiteral /0[bB][01](?:[01]|_[01])*n?/"));
10979
+ var BinaryIntegerLiteral$0 = $R$0($EXPECT($R31, "BinaryIntegerLiteral /0[bB][01](?:[01]|_[01])*n?/"));
10807
10980
  function BinaryIntegerLiteral(ctx, state) {
10808
10981
  return $EVENT(ctx, state, "BinaryIntegerLiteral", BinaryIntegerLiteral$0);
10809
10982
  }
10810
- var OctalIntegerLiteral$0 = $R$0($EXPECT($R31, "OctalIntegerLiteral /0[oO][0-7](?:[0-7]|_[0-7])*n?/"));
10983
+ var OctalIntegerLiteral$0 = $R$0($EXPECT($R32, "OctalIntegerLiteral /0[oO][0-7](?:[0-7]|_[0-7])*n?/"));
10811
10984
  function OctalIntegerLiteral(ctx, state) {
10812
10985
  return $EVENT(ctx, state, "OctalIntegerLiteral", OctalIntegerLiteral$0);
10813
10986
  }
10814
- var HexIntegerLiteral$0 = $R$0($EXPECT($R32, "HexIntegerLiteral /0[xX][0-9a-fA-F](?:[0-9a-fA-F]|_[0-9a-fA-F])*n?/"));
10987
+ var HexIntegerLiteral$0 = $R$0($EXPECT($R33, "HexIntegerLiteral /0[xX][0-9a-fA-F](?:[0-9a-fA-F]|_[0-9a-fA-F])*n?/"));
10815
10988
  function HexIntegerLiteral(ctx, state) {
10816
10989
  return $EVENT(ctx, state, "HexIntegerLiteral", HexIntegerLiteral$0);
10817
10990
  }
10818
- var IntegerLiteral$0 = $TS($S($EXPECT($R33, "IntegerLiteral /(?=[0-9])/"), IntegerLiteralKind), function($skip, $loc, $0, $1, $2) {
10991
+ var IntegerLiteral$0 = $TS($S($EXPECT($R34, "IntegerLiteral /(?=[0-9])/"), IntegerLiteralKind), function($skip, $loc, $0, $1, $2) {
10819
10992
  var token = $2;
10820
10993
  return { $loc, token };
10821
10994
  });
@@ -10831,7 +11004,7 @@ ${input.slice(result.pos)}
10831
11004
  function IntegerLiteralKind(ctx, state) {
10832
11005
  return $EVENT_C(ctx, state, "IntegerLiteralKind", IntegerLiteralKind$$);
10833
11006
  }
10834
- var DecimalIntegerLiteral$0 = $R$0($EXPECT($R34, "DecimalIntegerLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)/"));
11007
+ var DecimalIntegerLiteral$0 = $R$0($EXPECT($R35, "DecimalIntegerLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)/"));
10835
11008
  function DecimalIntegerLiteral(ctx, state) {
10836
11009
  return $EVENT(ctx, state, "DecimalIntegerLiteral", DecimalIntegerLiteral$0);
10837
11010
  }
@@ -10855,25 +11028,25 @@ ${input.slice(result.pos)}
10855
11028
  function StringLiteral(ctx, state) {
10856
11029
  return $EVENT_C(ctx, state, "StringLiteral", StringLiteral$$);
10857
11030
  }
10858
- var DoubleStringCharacters$0 = $TR($EXPECT($R35, 'DoubleStringCharacters /(?:\\\\.|[^"])*/'), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11031
+ var DoubleStringCharacters$0 = $TR($EXPECT($R36, 'DoubleStringCharacters /(?:\\\\.|[^"])*/'), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
10859
11032
  return { $loc, token: $0 };
10860
11033
  });
10861
11034
  function DoubleStringCharacters(ctx, state) {
10862
11035
  return $EVENT(ctx, state, "DoubleStringCharacters", DoubleStringCharacters$0);
10863
11036
  }
10864
- var SingleStringCharacters$0 = $TR($EXPECT($R36, "SingleStringCharacters /(?:\\\\.|[^'])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11037
+ var SingleStringCharacters$0 = $TR($EXPECT($R37, "SingleStringCharacters /(?:\\\\.|[^'])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
10865
11038
  return { $loc, token: $0 };
10866
11039
  });
10867
11040
  function SingleStringCharacters(ctx, state) {
10868
11041
  return $EVENT(ctx, state, "SingleStringCharacters", SingleStringCharacters$0);
10869
11042
  }
10870
- var TripleDoubleStringCharacters$0 = $TR($EXPECT($R37, 'TripleDoubleStringCharacters /(?:"(?!"")|#(?!\\{)|\\\\.|[^#"])+/'), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11043
+ var TripleDoubleStringCharacters$0 = $TR($EXPECT($R38, 'TripleDoubleStringCharacters /(?:"(?!"")|#(?!\\{)|\\\\.|[^#"])+/'), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
10871
11044
  return { $loc, token: $0 };
10872
11045
  });
10873
11046
  function TripleDoubleStringCharacters(ctx, state) {
10874
11047
  return $EVENT(ctx, state, "TripleDoubleStringCharacters", TripleDoubleStringCharacters$0);
10875
11048
  }
10876
- var TripleSingleStringCharacters$0 = $TR($EXPECT($R38, "TripleSingleStringCharacters /(?:'(?!'')|\\\\.|[^'])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11049
+ var TripleSingleStringCharacters$0 = $TR($EXPECT($R39, "TripleSingleStringCharacters /(?:'(?!'')|\\\\.|[^'])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
10877
11050
  return { $loc, token: $0 };
10878
11051
  });
10879
11052
  function TripleSingleStringCharacters(ctx, state) {
@@ -10892,14 +11065,14 @@ ${input.slice(result.pos)}
10892
11065
  function CoffeeInterpolatedDoubleQuotedString(ctx, state) {
10893
11066
  return $EVENT(ctx, state, "CoffeeInterpolatedDoubleQuotedString", CoffeeInterpolatedDoubleQuotedString$0);
10894
11067
  }
10895
- var CoffeeDoubleQuotedStringCharacters$0 = $TR($EXPECT($R39, 'CoffeeDoubleQuotedStringCharacters /(?:\\\\.|#(?!\\{)|[^"#])+/'), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11068
+ var CoffeeDoubleQuotedStringCharacters$0 = $TR($EXPECT($R40, 'CoffeeDoubleQuotedStringCharacters /(?:\\\\.|#(?!\\{)|[^"#])+/'), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
10896
11069
  return { $loc, token: $0 };
10897
11070
  });
10898
11071
  function CoffeeDoubleQuotedStringCharacters(ctx, state) {
10899
11072
  return $EVENT(ctx, state, "CoffeeDoubleQuotedStringCharacters", CoffeeDoubleQuotedStringCharacters$0);
10900
11073
  }
10901
11074
  var RegularExpressionLiteral$0 = HeregexLiteral;
10902
- var RegularExpressionLiteral$1 = $TV($TEXT($S($EXPECT($L58, 'RegularExpressionLiteral "/"'), RegularExpressionBody, $EXPECT($L58, 'RegularExpressionLiteral "/"'), RegularExpressionFlags)), function($skip, $loc, $0, $1) {
11075
+ var RegularExpressionLiteral$1 = $TV($TEXT($S($EXPECT($L59, 'RegularExpressionLiteral "/"'), RegularExpressionBody, $EXPECT($L59, 'RegularExpressionLiteral "/"'), RegularExpressionFlags)), function($skip, $loc, $0, $1) {
10903
11076
  return { type: "RegularExpressionLiteral", $loc, token: $1 };
10904
11077
  });
10905
11078
  var RegularExpressionLiteral$$ = [RegularExpressionLiteral$0, RegularExpressionLiteral$1];
@@ -10912,7 +11085,7 @@ ${input.slice(result.pos)}
10912
11085
  function RegularExpressionClass(ctx, state) {
10913
11086
  return $EVENT(ctx, state, "RegularExpressionClass", RegularExpressionClass$0);
10914
11087
  }
10915
- var RegularExpressionClassCharacters$0 = $TR($EXPECT($R40, "RegularExpressionClassCharacters /(?:\\\\.|[^\\]])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11088
+ var RegularExpressionClassCharacters$0 = $TR($EXPECT($R41, "RegularExpressionClassCharacters /(?:\\\\.|[^\\]])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
10916
11089
  return { $loc, token: $0 };
10917
11090
  });
10918
11091
  function RegularExpressionClassCharacters(ctx, state) {
@@ -10966,7 +11139,7 @@ ${input.slice(result.pos)}
10966
11139
  var HeregexPart$2 = $T($S(TemplateSubstitution), function(value) {
10967
11140
  return { "type": "Substitution", "children": value[0] };
10968
11141
  });
10969
- var HeregexPart$3 = $TR($EXPECT($R41, "HeregexPart /(?:\\\\.)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11142
+ var HeregexPart$3 = $TR($EXPECT($R42, "HeregexPart /(?:\\\\.)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
10970
11143
  let token = $0;
10971
11144
  switch ($0[1]) {
10972
11145
  case "\n":
@@ -10984,13 +11157,13 @@ ${input.slice(result.pos)}
10984
11157
  var HeregexPart$4 = $TS($S(HeregexComment), function($skip, $loc, $0, $1) {
10985
11158
  return { $loc, token: "" };
10986
11159
  });
10987
- var HeregexPart$5 = $TR($EXPECT($R42, "HeregexPart /[\\s]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11160
+ var HeregexPart$5 = $TR($EXPECT($R43, "HeregexPart /[\\s]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
10988
11161
  return { $loc, token: "" };
10989
11162
  });
10990
- var HeregexPart$6 = $TR($EXPECT($R43, "HeregexPart /\\/(?!\\/\\/)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11163
+ var HeregexPart$6 = $TR($EXPECT($R44, "HeregexPart /\\/(?!\\/\\/)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
10991
11164
  return { $loc, token: "\\/" };
10992
11165
  });
10993
- var HeregexPart$7 = $TR($EXPECT($R44, "HeregexPart /[^[\\/\\s#\\\\]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11166
+ var HeregexPart$7 = $TR($EXPECT($R45, "HeregexPart /[^[\\/\\s#\\\\]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
10994
11167
  return { $loc, token: $0 };
10995
11168
  });
10996
11169
  var HeregexPart$$ = [HeregexPart$0, HeregexPart$1, HeregexPart$2, HeregexPart$3, HeregexPart$4, HeregexPart$5, HeregexPart$6, HeregexPart$7];
@@ -11003,7 +11176,7 @@ ${input.slice(result.pos)}
11003
11176
  function HeregexComment(ctx, state) {
11004
11177
  return $EVENT_C(ctx, state, "HeregexComment", HeregexComment$$);
11005
11178
  }
11006
- var RegularExpressionBody$0 = $S($N($R$0($EXPECT($R45, "RegularExpressionBody /[*\\/\\r\\n]/"))), $Q(RegExpPart));
11179
+ var RegularExpressionBody$0 = $S($N($R$0($EXPECT($R46, "RegularExpressionBody /[*\\/\\r\\n]/"))), $Q(RegExpPart));
11007
11180
  function RegularExpressionBody(ctx, state) {
11008
11181
  return $EVENT(ctx, state, "RegularExpressionBody", RegularExpressionBody$0);
11009
11182
  }
@@ -11013,15 +11186,15 @@ ${input.slice(result.pos)}
11013
11186
  function RegExpPart(ctx, state) {
11014
11187
  return $EVENT_C(ctx, state, "RegExpPart", RegExpPart$$);
11015
11188
  }
11016
- var RegExpCharacter$0 = $R$0($EXPECT($R46, "RegExpCharacter /(?:\\\\.|[^[\\/\\r\\n])+/"));
11189
+ var RegExpCharacter$0 = $R$0($EXPECT($R47, "RegExpCharacter /(?:\\\\.|[^[\\/\\r\\n])+/"));
11017
11190
  function RegExpCharacter(ctx, state) {
11018
11191
  return $EVENT(ctx, state, "RegExpCharacter", RegExpCharacter$0);
11019
11192
  }
11020
- var RegularExpressionFlags$0 = $R$0($EXPECT($R47, "RegularExpressionFlags /(?:\\p{ID_Continue}|[\\u200C\\u200D$])*/"));
11193
+ var RegularExpressionFlags$0 = $R$0($EXPECT($R48, "RegularExpressionFlags /(?:\\p{ID_Continue}|[\\u200C\\u200D$])*/"));
11021
11194
  function RegularExpressionFlags(ctx, state) {
11022
11195
  return $EVENT(ctx, state, "RegularExpressionFlags", RegularExpressionFlags$0);
11023
11196
  }
11024
- var TemplateLiteral$0 = $T($S($EXPECT($R48, "TemplateLiteral /(?=[`'\"])/"), _TemplateLiteral), function(value) {
11197
+ var TemplateLiteral$0 = $T($S($EXPECT($R49, "TemplateLiteral /(?=[`'\"])/"), _TemplateLiteral), function(value) {
11025
11198
  return value[1];
11026
11199
  });
11027
11200
  function TemplateLiteral(ctx, state) {
@@ -11057,28 +11230,28 @@ ${input.slice(result.pos)}
11057
11230
  function TemplateSubstitution(ctx, state) {
11058
11231
  return $EVENT(ctx, state, "TemplateSubstitution", TemplateSubstitution$0);
11059
11232
  }
11060
- var TemplateCharacters$0 = $TR($EXPECT($R49, "TemplateCharacters /(?:\\$(?!\\{)|\\\\.|[^$`])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11233
+ var TemplateCharacters$0 = $TR($EXPECT($R50, "TemplateCharacters /(?:\\$(?!\\{)|\\\\.|[^$`])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11061
11234
  return { $loc, token: $0 };
11062
11235
  });
11063
11236
  function TemplateCharacters(ctx, state) {
11064
11237
  return $EVENT(ctx, state, "TemplateCharacters", TemplateCharacters$0);
11065
11238
  }
11066
- var TemplateBlockCharacters$0 = $TR($EXPECT($R50, "TemplateBlockCharacters /(?:\\$(?!\\{)|`(?!``)|\\\\.|[^$`])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11239
+ var TemplateBlockCharacters$0 = $TR($EXPECT($R51, "TemplateBlockCharacters /(?:\\$(?!\\{)|`(?!``)|\\\\.|[^$`])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11067
11240
  return { $loc, token: $0 };
11068
11241
  });
11069
11242
  function TemplateBlockCharacters(ctx, state) {
11070
11243
  return $EVENT(ctx, state, "TemplateBlockCharacters", TemplateBlockCharacters$0);
11071
11244
  }
11072
- var ReservedWord$0 = $S($R$0($EXPECT($R51, "ReservedWord /(?:on|off|yes|no)(?!\\p{ID_Continue})/")), CoffeeBooleansEnabled);
11073
- var ReservedWord$1 = $S($R$0($EXPECT($R52, "ReservedWord /(?:isnt)(?!\\p{ID_Continue})/")), CoffeeIsntEnabled);
11074
- var ReservedWord$2 = $S($R$0($EXPECT($R53, "ReservedWord /(?:by)(?!\\p{ID_Continue})/")), CoffeeForLoopsEnabled);
11075
- var ReservedWord$3 = $S($R$0($EXPECT($R54, "ReservedWord /(?:of)(?!\\p{ID_Continue})/")), CoffeeOfEnabled);
11076
- var ReservedWord$4 = $R$0($EXPECT($R55, "ReservedWord /(?:and|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|false|finally|for|function|if|import|in|instanceof|interface|is|let|loop|new|not|null|or|private|protected|public|return|static|super|switch|this|throw|true|try|typeof|unless|until|var|void|while|with|yield)(?!\\p{ID_Continue})/"));
11245
+ var ReservedWord$0 = $S($R$0($EXPECT($R52, "ReservedWord /(?:on|off|yes|no)(?!\\p{ID_Continue})/")), CoffeeBooleansEnabled);
11246
+ var ReservedWord$1 = $S($R$0($EXPECT($R53, "ReservedWord /(?:isnt)(?!\\p{ID_Continue})/")), CoffeeIsntEnabled);
11247
+ var ReservedWord$2 = $S($R$0($EXPECT($R54, "ReservedWord /(?:by)(?!\\p{ID_Continue})/")), CoffeeForLoopsEnabled);
11248
+ var ReservedWord$3 = $S($R$0($EXPECT($R55, "ReservedWord /(?:of)(?!\\p{ID_Continue})/")), CoffeeOfEnabled);
11249
+ var ReservedWord$4 = $R$0($EXPECT($R56, "ReservedWord /(?:and|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|false|finally|for|function|if|import|in|instanceof|interface|is|let|loop|new|not|null|or|private|protected|public|return|static|super|switch|this|throw|true|try|typeof|unless|until|var|void|while|with|yield)(?!\\p{ID_Continue})/"));
11077
11250
  var ReservedWord$$ = [ReservedWord$0, ReservedWord$1, ReservedWord$2, ReservedWord$3, ReservedWord$4];
11078
11251
  function ReservedWord(ctx, state) {
11079
11252
  return $EVENT_C(ctx, state, "ReservedWord", ReservedWord$$);
11080
11253
  }
11081
- var Comment$0 = $T($S($EXPECT($R56, "Comment /(?=\\/|#)/"), _Comment), function(value) {
11254
+ var Comment$0 = $T($S($EXPECT($R57, "Comment /(?=\\/|#)/"), _Comment), function(value) {
11082
11255
  return value[1];
11083
11256
  });
11084
11257
  function Comment(ctx, state) {
@@ -11096,7 +11269,7 @@ ${input.slice(result.pos)}
11096
11269
  function SingleLineComment(ctx, state) {
11097
11270
  return $EVENT_C(ctx, state, "SingleLineComment", SingleLineComment$$);
11098
11271
  }
11099
- var JSSingleLineComment$0 = $TR($EXPECT($R57, "JSSingleLineComment /\\/\\/(?!\\/)[^\\r\\n]*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11272
+ var JSSingleLineComment$0 = $TR($EXPECT($R58, "JSSingleLineComment /\\/\\/(?!\\/)[^\\r\\n]*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11100
11273
  return { type: "Comment", $loc, token: $0 };
11101
11274
  });
11102
11275
  function JSSingleLineComment(ctx, state) {
@@ -11108,30 +11281,30 @@ ${input.slice(result.pos)}
11108
11281
  function MultiLineComment(ctx, state) {
11109
11282
  return $EVENT_C(ctx, state, "MultiLineComment", MultiLineComment$$);
11110
11283
  }
11111
- var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L112, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L113, 'JSMultiLineComment "*/"')), $EXPECT($R58, "JSMultiLineComment /./"))), $EXPECT($L113, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
11284
+ var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L113, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L114, 'JSMultiLineComment "*/"')), $EXPECT($R59, "JSMultiLineComment /./"))), $EXPECT($L114, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
11112
11285
  return { type: "Comment", $loc, token: $1 };
11113
11286
  });
11114
11287
  function JSMultiLineComment(ctx, state) {
11115
11288
  return $EVENT(ctx, state, "JSMultiLineComment", JSMultiLineComment$0);
11116
11289
  }
11117
- var CoffeeSingleLineComment$0 = $TR($EXPECT($R59, "CoffeeSingleLineComment /#(?!##(?!#))([^\\r\\n]*)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11290
+ var CoffeeSingleLineComment$0 = $TR($EXPECT($R60, "CoffeeSingleLineComment /#(?!##(?!#))([^\\r\\n]*)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11118
11291
  return { type: "Comment", $loc, token: `//${$1}` };
11119
11292
  });
11120
11293
  function CoffeeSingleLineComment(ctx, state) {
11121
11294
  return $EVENT(ctx, state, "CoffeeSingleLineComment", CoffeeSingleLineComment$0);
11122
11295
  }
11123
- var CoffeeMultiLineComment$0 = $TS($S(CoffeeHereCommentStart, $TEXT($EXPECT($R60, "CoffeeMultiLineComment /[^]*?###/"))), function($skip, $loc, $0, $1, $2) {
11296
+ var CoffeeMultiLineComment$0 = $TS($S(CoffeeHereCommentStart, $TEXT($EXPECT($R61, "CoffeeMultiLineComment /[^]*?###/"))), function($skip, $loc, $0, $1, $2) {
11124
11297
  $2 = $2.slice(0, $2.length - 3).replace(/\*\//g, "* /");
11125
11298
  return { type: "Comment", $loc, token: `/*${$2}*/` };
11126
11299
  });
11127
11300
  function CoffeeMultiLineComment(ctx, state) {
11128
11301
  return $EVENT(ctx, state, "CoffeeMultiLineComment", CoffeeMultiLineComment$0);
11129
11302
  }
11130
- var CoffeeHereCommentStart$0 = $R$0($EXPECT($R61, "CoffeeHereCommentStart /###(?!#)/"));
11303
+ var CoffeeHereCommentStart$0 = $R$0($EXPECT($R62, "CoffeeHereCommentStart /###(?!#)/"));
11131
11304
  function CoffeeHereCommentStart(ctx, state) {
11132
11305
  return $EVENT(ctx, state, "CoffeeHereCommentStart", CoffeeHereCommentStart$0);
11133
11306
  }
11134
- var InlineComment$0 = $TR($EXPECT($R62, "InlineComment /\\/\\*(?:(?!\\*\\/)[^\\r\\n])*\\*\\//"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11307
+ var InlineComment$0 = $TR($EXPECT($R63, "InlineComment /\\/\\*(?:(?!\\*\\/)[^\\r\\n])*\\*\\//"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11135
11308
  return { $loc, token: $0 };
11136
11309
  });
11137
11310
  function InlineComment(ctx, state) {
@@ -11145,16 +11318,16 @@ ${input.slice(result.pos)}
11145
11318
  function TrailingComment(ctx, state) {
11146
11319
  return $EVENT(ctx, state, "TrailingComment", TrailingComment$0);
11147
11320
  }
11148
- var _$0 = $T($S($EXPECT($R63, "_ /(?=[ \\t\\/\\\\])/"), $P($C(NonNewlineWhitespace, InlineComment))), function(value) {
11321
+ var _$0 = $T($S($EXPECT($R64, "_ /(?=[ \\t\\/\\\\])/"), $P($C(NonNewlineWhitespace, InlineComment))), function(value) {
11149
11322
  return value[1];
11150
11323
  });
11151
11324
  function _(ctx, state) {
11152
11325
  return $EVENT(ctx, state, "_", _$0);
11153
11326
  }
11154
- var NonNewlineWhitespace$0 = $TR($EXPECT($R64, "NonNewlineWhitespace /[ \\t]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11327
+ var NonNewlineWhitespace$0 = $TR($EXPECT($R65, "NonNewlineWhitespace /[ \\t]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11155
11328
  return { $loc, token: $0 };
11156
11329
  });
11157
- var NonNewlineWhitespace$1 = $T($S($EXPECT($L114, 'NonNewlineWhitespace "\\\\\\\\"'), CoffeeLineContinuationEnabled, EOL), function(value) {
11330
+ var NonNewlineWhitespace$1 = $T($S($EXPECT($L115, 'NonNewlineWhitespace "\\\\\\\\"'), CoffeeLineContinuationEnabled, EOL), function(value) {
11158
11331
  return " ";
11159
11332
  });
11160
11333
  var NonNewlineWhitespace$$ = [NonNewlineWhitespace$0, NonNewlineWhitespace$1];
@@ -11168,7 +11341,7 @@ ${input.slice(result.pos)}
11168
11341
  function Trimmed_(ctx, state) {
11169
11342
  return $EVENT(ctx, state, "Trimmed_", Trimmed_$0);
11170
11343
  }
11171
- var __$0 = $T($S($EXPECT($R65, "__ /(?=\\s|\\/|#)/"), $Q($C(Whitespace, Comment))), function(value) {
11344
+ var __$0 = $T($S($EXPECT($R66, "__ /(?=\\s|\\/|#)/"), $Q($C(Whitespace, Comment))), function(value) {
11172
11345
  return value[1];
11173
11346
  });
11174
11347
  var __$1 = $EXPECT($L0, '__ ""');
@@ -11176,7 +11349,7 @@ ${input.slice(result.pos)}
11176
11349
  function __(ctx, state) {
11177
11350
  return $EVENT_C(ctx, state, "__", __$$);
11178
11351
  }
11179
- var Whitespace$0 = $TR($EXPECT($R42, "Whitespace /[\\s]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11352
+ var Whitespace$0 = $TR($EXPECT($R43, "Whitespace /[\\s]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
11180
11353
  return { $loc, token: $0 };
11181
11354
  });
11182
11355
  function Whitespace(ctx, state) {
@@ -11200,7 +11373,7 @@ ${input.slice(result.pos)}
11200
11373
  }
11201
11374
  var StatementDelimiter$0 = $Y(EOS);
11202
11375
  var StatementDelimiter$1 = SemicolonDelimiter;
11203
- var StatementDelimiter$2 = $Y($S($E(_), $C($EXPECT($L28, 'StatementDelimiter "}"'), $EXPECT($L115, 'StatementDelimiter ")"'), $EXPECT($L37, 'StatementDelimiter "]"'))));
11376
+ var StatementDelimiter$2 = $Y($S($E(_), $C($EXPECT($L29, 'StatementDelimiter "}"'), $EXPECT($L116, 'StatementDelimiter ")"'), $EXPECT($L38, 'StatementDelimiter "]"'))));
11204
11377
  var StatementDelimiter$$ = [StatementDelimiter$0, StatementDelimiter$1, StatementDelimiter$2];
11205
11378
  function StatementDelimiter(ctx, state) {
11206
11379
  return $EVENT_C(ctx, state, "StatementDelimiter", StatementDelimiter$$);
@@ -11214,7 +11387,7 @@ ${input.slice(result.pos)}
11214
11387
  function SemicolonDelimiter(ctx, state) {
11215
11388
  return $EVENT(ctx, state, "SemicolonDelimiter", SemicolonDelimiter$0);
11216
11389
  }
11217
- var NonIdContinue$0 = $R$0($EXPECT($R66, "NonIdContinue /(?!\\p{ID_Continue})/"));
11390
+ var NonIdContinue$0 = $R$0($EXPECT($R67, "NonIdContinue /(?!\\p{ID_Continue})/"));
11218
11391
  function NonIdContinue(ctx, state) {
11219
11392
  return $EVENT(ctx, state, "NonIdContinue", NonIdContinue$0);
11220
11393
  }
@@ -11224,151 +11397,151 @@ ${input.slice(result.pos)}
11224
11397
  function Loc(ctx, state) {
11225
11398
  return $EVENT(ctx, state, "Loc", Loc$0);
11226
11399
  }
11227
- var Abstract$0 = $TV($TEXT($S($EXPECT($L116, 'Abstract "abstract"'), NonIdContinue, $E($EXPECT($L14, 'Abstract " "')))), function($skip, $loc, $0, $1) {
11400
+ var Abstract$0 = $TV($TEXT($S($EXPECT($L117, 'Abstract "abstract"'), NonIdContinue, $E($EXPECT($L15, 'Abstract " "')))), function($skip, $loc, $0, $1) {
11228
11401
  return { $loc, token: $1, ts: true };
11229
11402
  });
11230
11403
  function Abstract(ctx, state) {
11231
11404
  return $EVENT(ctx, state, "Abstract", Abstract$0);
11232
11405
  }
11233
- var Ampersand$0 = $TV($EXPECT($L100, 'Ampersand "&"'), function($skip, $loc, $0, $1) {
11406
+ var Ampersand$0 = $TV($EXPECT($L101, 'Ampersand "&"'), function($skip, $loc, $0, $1) {
11234
11407
  return { $loc, token: $1 };
11235
11408
  });
11236
11409
  function Ampersand(ctx, state) {
11237
11410
  return $EVENT(ctx, state, "Ampersand", Ampersand$0);
11238
11411
  }
11239
- var As$0 = $TS($S($EXPECT($L117, 'As "as"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11412
+ var As$0 = $TS($S($EXPECT($L118, 'As "as"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11240
11413
  return { $loc, token: $1 };
11241
11414
  });
11242
11415
  function As(ctx, state) {
11243
11416
  return $EVENT(ctx, state, "As", As$0);
11244
11417
  }
11245
- var At$0 = $TV($EXPECT($L118, 'At "@"'), function($skip, $loc, $0, $1) {
11418
+ var At$0 = $TV($EXPECT($L119, 'At "@"'), function($skip, $loc, $0, $1) {
11246
11419
  return { $loc, token: $1 };
11247
11420
  });
11248
11421
  function At(ctx, state) {
11249
11422
  return $EVENT(ctx, state, "At", At$0);
11250
11423
  }
11251
- var AtAt$0 = $TV($EXPECT($L119, 'AtAt "@@"'), function($skip, $loc, $0, $1) {
11424
+ var AtAt$0 = $TV($EXPECT($L120, 'AtAt "@@"'), function($skip, $loc, $0, $1) {
11252
11425
  return { $loc, token: "@" };
11253
11426
  });
11254
11427
  function AtAt(ctx, state) {
11255
11428
  return $EVENT(ctx, state, "AtAt", AtAt$0);
11256
11429
  }
11257
- var Async$0 = $TS($S($EXPECT($L120, 'Async "async"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11430
+ var Async$0 = $TS($S($EXPECT($L121, 'Async "async"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11258
11431
  return { $loc, token: $1, type: "Async" };
11259
11432
  });
11260
11433
  function Async(ctx, state) {
11261
11434
  return $EVENT(ctx, state, "Async", Async$0);
11262
11435
  }
11263
- var Await$0 = $TS($S($EXPECT($L121, 'Await "await"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11436
+ var Await$0 = $TS($S($EXPECT($L122, 'Await "await"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11264
11437
  return { $loc, token: $1, type: "Await" };
11265
11438
  });
11266
11439
  function Await(ctx, state) {
11267
11440
  return $EVENT(ctx, state, "Await", Await$0);
11268
11441
  }
11269
- var Backtick$0 = $TV($EXPECT($L122, 'Backtick "`"'), function($skip, $loc, $0, $1) {
11442
+ var Backtick$0 = $TV($EXPECT($L123, 'Backtick "`"'), function($skip, $loc, $0, $1) {
11270
11443
  return { $loc, token: $1 };
11271
11444
  });
11272
11445
  function Backtick(ctx, state) {
11273
11446
  return $EVENT(ctx, state, "Backtick", Backtick$0);
11274
11447
  }
11275
- var By$0 = $TS($S($EXPECT($L123, 'By "by"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11448
+ var By$0 = $TS($S($EXPECT($L124, 'By "by"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11276
11449
  return { $loc, token: $1 };
11277
11450
  });
11278
11451
  function By(ctx, state) {
11279
11452
  return $EVENT(ctx, state, "By", By$0);
11280
11453
  }
11281
- var Caret$0 = $TV($EXPECT($L20, 'Caret "^"'), function($skip, $loc, $0, $1) {
11454
+ var Caret$0 = $TV($EXPECT($L21, 'Caret "^"'), function($skip, $loc, $0, $1) {
11282
11455
  return { $loc, token: $1 };
11283
11456
  });
11284
11457
  function Caret(ctx, state) {
11285
11458
  return $EVENT(ctx, state, "Caret", Caret$0);
11286
11459
  }
11287
- var Case$0 = $TS($S($EXPECT($L124, 'Case "case"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11460
+ var Case$0 = $TS($S($EXPECT($L125, 'Case "case"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11288
11461
  return { $loc, token: $1 };
11289
11462
  });
11290
11463
  function Case(ctx, state) {
11291
11464
  return $EVENT(ctx, state, "Case", Case$0);
11292
11465
  }
11293
- var Catch$0 = $TS($S($EXPECT($L125, 'Catch "catch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11466
+ var Catch$0 = $TS($S($EXPECT($L126, 'Catch "catch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11294
11467
  return { $loc, token: $1 };
11295
11468
  });
11296
11469
  function Catch(ctx, state) {
11297
11470
  return $EVENT(ctx, state, "Catch", Catch$0);
11298
11471
  }
11299
- var Class$0 = $TS($S($EXPECT($L126, 'Class "class"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11472
+ var Class$0 = $TS($S($EXPECT($L127, 'Class "class"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11300
11473
  return { $loc, token: $1 };
11301
11474
  });
11302
11475
  function Class(ctx, state) {
11303
11476
  return $EVENT(ctx, state, "Class", Class$0);
11304
11477
  }
11305
- var CloseAngleBracket$0 = $TV($EXPECT($L36, 'CloseAngleBracket ">"'), function($skip, $loc, $0, $1) {
11478
+ var CloseAngleBracket$0 = $TV($EXPECT($L37, 'CloseAngleBracket ">"'), function($skip, $loc, $0, $1) {
11306
11479
  return { $loc, token: $1 };
11307
11480
  });
11308
11481
  function CloseAngleBracket(ctx, state) {
11309
11482
  return $EVENT(ctx, state, "CloseAngleBracket", CloseAngleBracket$0);
11310
11483
  }
11311
- var CloseBrace$0 = $TV($EXPECT($L28, 'CloseBrace "}"'), function($skip, $loc, $0, $1) {
11484
+ var CloseBrace$0 = $TV($EXPECT($L29, 'CloseBrace "}"'), function($skip, $loc, $0, $1) {
11312
11485
  return { $loc, token: $1 };
11313
11486
  });
11314
11487
  function CloseBrace(ctx, state) {
11315
11488
  return $EVENT(ctx, state, "CloseBrace", CloseBrace$0);
11316
11489
  }
11317
- var CloseBracket$0 = $TV($EXPECT($L37, 'CloseBracket "]"'), function($skip, $loc, $0, $1) {
11490
+ var CloseBracket$0 = $TV($EXPECT($L38, 'CloseBracket "]"'), function($skip, $loc, $0, $1) {
11318
11491
  return { $loc, token: $1 };
11319
11492
  });
11320
11493
  function CloseBracket(ctx, state) {
11321
11494
  return $EVENT(ctx, state, "CloseBracket", CloseBracket$0);
11322
11495
  }
11323
- var CloseParen$0 = $TV($EXPECT($L115, 'CloseParen ")"'), function($skip, $loc, $0, $1) {
11496
+ var CloseParen$0 = $TV($EXPECT($L116, 'CloseParen ")"'), function($skip, $loc, $0, $1) {
11324
11497
  return { $loc, token: $1 };
11325
11498
  });
11326
11499
  function CloseParen(ctx, state) {
11327
11500
  return $EVENT(ctx, state, "CloseParen", CloseParen$0);
11328
11501
  }
11329
- var CoffeeSubstitutionStart$0 = $TV($EXPECT($L127, 'CoffeeSubstitutionStart "#{"'), function($skip, $loc, $0, $1) {
11502
+ var CoffeeSubstitutionStart$0 = $TV($EXPECT($L128, 'CoffeeSubstitutionStart "#{"'), function($skip, $loc, $0, $1) {
11330
11503
  return { $loc, token: "${" };
11331
11504
  });
11332
11505
  function CoffeeSubstitutionStart(ctx, state) {
11333
11506
  return $EVENT(ctx, state, "CoffeeSubstitutionStart", CoffeeSubstitutionStart$0);
11334
11507
  }
11335
- var Colon$0 = $TS($S($EXPECT($L13, 'Colon ":"'), $N($EXPECT($L3, 'Colon "="'))), function($skip, $loc, $0, $1, $2) {
11508
+ var Colon$0 = $TS($S($EXPECT($L14, 'Colon ":"'), $N($EXPECT($L3, 'Colon "="'))), function($skip, $loc, $0, $1, $2) {
11336
11509
  return { $loc, token: $1 };
11337
11510
  });
11338
11511
  function Colon(ctx, state) {
11339
11512
  return $EVENT(ctx, state, "Colon", Colon$0);
11340
11513
  }
11341
- var Comma$0 = $TV($EXPECT($L24, 'Comma ","'), function($skip, $loc, $0, $1) {
11514
+ var Comma$0 = $TV($EXPECT($L25, 'Comma ","'), function($skip, $loc, $0, $1) {
11342
11515
  return { $loc, token: $1 };
11343
11516
  });
11344
11517
  function Comma(ctx, state) {
11345
11518
  return $EVENT(ctx, state, "Comma", Comma$0);
11346
11519
  }
11347
- var ConstructorShorthand$0 = $TV($EXPECT($L118, 'ConstructorShorthand "@"'), function($skip, $loc, $0, $1) {
11520
+ var ConstructorShorthand$0 = $TV($EXPECT($L119, 'ConstructorShorthand "@"'), function($skip, $loc, $0, $1) {
11348
11521
  return { $loc, token: "constructor" };
11349
11522
  });
11350
11523
  function ConstructorShorthand(ctx, state) {
11351
11524
  return $EVENT(ctx, state, "ConstructorShorthand", ConstructorShorthand$0);
11352
11525
  }
11353
- var Declare$0 = $TS($S($EXPECT($L128, 'Declare "declare"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11526
+ var Declare$0 = $TS($S($EXPECT($L129, 'Declare "declare"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11354
11527
  return { $loc, token: $1 };
11355
11528
  });
11356
11529
  function Declare(ctx, state) {
11357
11530
  return $EVENT(ctx, state, "Declare", Declare$0);
11358
11531
  }
11359
- var Default$0 = $TS($S($EXPECT($L129, 'Default "default"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11532
+ var Default$0 = $TS($S($EXPECT($L130, 'Default "default"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11360
11533
  return { $loc, token: $1 };
11361
11534
  });
11362
11535
  function Default(ctx, state) {
11363
11536
  return $EVENT(ctx, state, "Default", Default$0);
11364
11537
  }
11365
- var Delete$0 = $TS($S($EXPECT($L130, 'Delete "delete"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11538
+ var Delete$0 = $TS($S($EXPECT($L131, 'Delete "delete"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11366
11539
  return { $loc, token: $1 };
11367
11540
  });
11368
11541
  function Delete(ctx, state) {
11369
11542
  return $EVENT(ctx, state, "Delete", Delete$0);
11370
11543
  }
11371
- var Do$0 = $TS($S($EXPECT($L131, 'Do "do"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11544
+ var Do$0 = $TS($S($EXPECT($L132, 'Do "do"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11372
11545
  return { $loc, token: $1 };
11373
11546
  });
11374
11547
  function Do(ctx, state) {
@@ -11377,7 +11550,7 @@ ${input.slice(result.pos)}
11377
11550
  var Dot$0 = $TV($EXPECT($L7, 'Dot "."'), function($skip, $loc, $0, $1) {
11378
11551
  return { $loc, token: $1 };
11379
11552
  });
11380
- var Dot$1 = $TS($S($EXPECT($R67, "Dot /['\u2019]s/"), _), function($skip, $loc, $0, $1, $2) {
11553
+ var Dot$1 = $TS($S($EXPECT($R68, "Dot /['\u2019]s/"), _), function($skip, $loc, $0, $1, $2) {
11381
11554
  var ws = $2;
11382
11555
  return [
11383
11556
  { $loc, token: "." },
@@ -11388,45 +11561,45 @@ ${input.slice(result.pos)}
11388
11561
  function Dot(ctx, state) {
11389
11562
  return $EVENT_C(ctx, state, "Dot", Dot$$);
11390
11563
  }
11391
- var DotDot$0 = $TS($S($EXPECT($L132, 'DotDot ".."'), $N($EXPECT($L7, 'DotDot "."'))), function($skip, $loc, $0, $1, $2) {
11564
+ var DotDot$0 = $TS($S($EXPECT($L133, 'DotDot ".."'), $N($EXPECT($L7, 'DotDot "."'))), function($skip, $loc, $0, $1, $2) {
11392
11565
  return { $loc, token: $1 };
11393
11566
  });
11394
- var DotDot$1 = $TV($EXPECT($L133, 'DotDot "\u2025"'), function($skip, $loc, $0, $1) {
11567
+ var DotDot$1 = $TV($EXPECT($L134, 'DotDot "\u2025"'), function($skip, $loc, $0, $1) {
11395
11568
  return { $loc, token: ".." };
11396
11569
  });
11397
11570
  var DotDot$$ = [DotDot$0, DotDot$1];
11398
11571
  function DotDot(ctx, state) {
11399
11572
  return $EVENT_C(ctx, state, "DotDot", DotDot$$);
11400
11573
  }
11401
- var DotDotDot$0 = $TV($EXPECT($L134, 'DotDotDot "..."'), function($skip, $loc, $0, $1) {
11574
+ var DotDotDot$0 = $TV($EXPECT($L135, 'DotDotDot "..."'), function($skip, $loc, $0, $1) {
11402
11575
  return { $loc, token: $1 };
11403
11576
  });
11404
- var DotDotDot$1 = $TV($EXPECT($L135, 'DotDotDot "\u2026"'), function($skip, $loc, $0, $1) {
11577
+ var DotDotDot$1 = $TV($EXPECT($L136, 'DotDotDot "\u2026"'), function($skip, $loc, $0, $1) {
11405
11578
  return { $loc, token: "..." };
11406
11579
  });
11407
11580
  var DotDotDot$$ = [DotDotDot$0, DotDotDot$1];
11408
11581
  function DotDotDot(ctx, state) {
11409
11582
  return $EVENT_C(ctx, state, "DotDotDot", DotDotDot$$);
11410
11583
  }
11411
- var DoubleColon$0 = $TV($EXPECT($L136, 'DoubleColon "::"'), function($skip, $loc, $0, $1) {
11584
+ var DoubleColon$0 = $TV($EXPECT($L137, 'DoubleColon "::"'), function($skip, $loc, $0, $1) {
11412
11585
  return { $loc, token: $1 };
11413
11586
  });
11414
11587
  function DoubleColon(ctx, state) {
11415
11588
  return $EVENT(ctx, state, "DoubleColon", DoubleColon$0);
11416
11589
  }
11417
- var DoubleQuote$0 = $TV($EXPECT($L137, 'DoubleQuote "\\\\\\""'), function($skip, $loc, $0, $1) {
11590
+ var DoubleQuote$0 = $TV($EXPECT($L138, 'DoubleQuote "\\\\\\""'), function($skip, $loc, $0, $1) {
11418
11591
  return { $loc, token: $1 };
11419
11592
  });
11420
11593
  function DoubleQuote(ctx, state) {
11421
11594
  return $EVENT(ctx, state, "DoubleQuote", DoubleQuote$0);
11422
11595
  }
11423
- var Each$0 = $TS($S($EXPECT($L138, 'Each "each"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11596
+ var Each$0 = $TS($S($EXPECT($L139, 'Each "each"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11424
11597
  return { $loc, token: $1 };
11425
11598
  });
11426
11599
  function Each(ctx, state) {
11427
11600
  return $EVENT(ctx, state, "Each", Each$0);
11428
11601
  }
11429
- var Else$0 = $TS($S($EXPECT($L139, 'Else "else"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11602
+ var Else$0 = $TS($S($EXPECT($L140, 'Else "else"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11430
11603
  return { $loc, token: $1 };
11431
11604
  });
11432
11605
  function Else(ctx, state) {
@@ -11438,91 +11611,91 @@ ${input.slice(result.pos)}
11438
11611
  function Equals(ctx, state) {
11439
11612
  return $EVENT(ctx, state, "Equals", Equals$0);
11440
11613
  }
11441
- var ExclamationPoint$0 = $TV($EXPECT($L19, 'ExclamationPoint "!"'), function($skip, $loc, $0, $1) {
11614
+ var ExclamationPoint$0 = $TV($EXPECT($L20, 'ExclamationPoint "!"'), function($skip, $loc, $0, $1) {
11442
11615
  return { $loc, token: $1 };
11443
11616
  });
11444
11617
  function ExclamationPoint(ctx, state) {
11445
11618
  return $EVENT(ctx, state, "ExclamationPoint", ExclamationPoint$0);
11446
11619
  }
11447
- var Export$0 = $TS($S($EXPECT($L140, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11620
+ var Export$0 = $TS($S($EXPECT($L141, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11448
11621
  return { $loc, token: $1 };
11449
11622
  });
11450
11623
  function Export(ctx, state) {
11451
11624
  return $EVENT(ctx, state, "Export", Export$0);
11452
11625
  }
11453
- var Extends$0 = $TS($S($EXPECT($L141, 'Extends "extends"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11626
+ var Extends$0 = $TS($S($EXPECT($L142, 'Extends "extends"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11454
11627
  return { $loc, token: $1 };
11455
11628
  });
11456
11629
  function Extends(ctx, state) {
11457
11630
  return $EVENT(ctx, state, "Extends", Extends$0);
11458
11631
  }
11459
- var Finally$0 = $TS($S($EXPECT($L142, 'Finally "finally"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11632
+ var Finally$0 = $TS($S($EXPECT($L143, 'Finally "finally"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11460
11633
  return { $loc, token: $1 };
11461
11634
  });
11462
11635
  function Finally(ctx, state) {
11463
11636
  return $EVENT(ctx, state, "Finally", Finally$0);
11464
11637
  }
11465
- var For$0 = $TS($S($EXPECT($L143, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11638
+ var For$0 = $TS($S($EXPECT($L144, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11466
11639
  return { $loc, token: $1 };
11467
11640
  });
11468
11641
  function For(ctx, state) {
11469
11642
  return $EVENT(ctx, state, "For", For$0);
11470
11643
  }
11471
- var From$0 = $TS($S($EXPECT($L144, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11644
+ var From$0 = $TS($S($EXPECT($L145, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11472
11645
  return { $loc, token: $1 };
11473
11646
  });
11474
11647
  function From(ctx, state) {
11475
11648
  return $EVENT(ctx, state, "From", From$0);
11476
11649
  }
11477
- var Function$0 = $TS($S($EXPECT($L145, 'Function "function"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11650
+ var Function$0 = $TS($S($EXPECT($L146, 'Function "function"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11478
11651
  return { $loc, token: $1 };
11479
11652
  });
11480
11653
  function Function(ctx, state) {
11481
11654
  return $EVENT(ctx, state, "Function", Function$0);
11482
11655
  }
11483
- var GetOrSet$0 = $TS($S($C($EXPECT($L146, 'GetOrSet "get"'), $EXPECT($L147, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11656
+ var GetOrSet$0 = $TS($S($C($EXPECT($L147, 'GetOrSet "get"'), $EXPECT($L148, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11484
11657
  return { $loc, token: $1, type: "GetOrSet" };
11485
11658
  });
11486
11659
  function GetOrSet(ctx, state) {
11487
11660
  return $EVENT(ctx, state, "GetOrSet", GetOrSet$0);
11488
11661
  }
11489
- var Hash$0 = $TV($EXPECT($L148, 'Hash "#"'), function($skip, $loc, $0, $1) {
11662
+ var Hash$0 = $TV($EXPECT($L149, 'Hash "#"'), function($skip, $loc, $0, $1) {
11490
11663
  return { $loc, token: $1 };
11491
11664
  });
11492
11665
  function Hash(ctx, state) {
11493
11666
  return $EVENT(ctx, state, "Hash", Hash$0);
11494
11667
  }
11495
- var If$0 = $TV($TEXT($S($EXPECT($L149, 'If "if"'), NonIdContinue, $E($EXPECT($L14, 'If " "')))), function($skip, $loc, $0, $1) {
11668
+ var If$0 = $TV($TEXT($S($EXPECT($L150, 'If "if"'), NonIdContinue, $E($EXPECT($L15, 'If " "')))), function($skip, $loc, $0, $1) {
11496
11669
  return { $loc, token: $1 };
11497
11670
  });
11498
11671
  function If(ctx, state) {
11499
11672
  return $EVENT(ctx, state, "If", If$0);
11500
11673
  }
11501
- var Import$0 = $TS($S($EXPECT($L18, 'Import "import"'), $Y($EXPECT($R68, "Import /\\s/"))), function($skip, $loc, $0, $1, $2) {
11674
+ var Import$0 = $TS($S($EXPECT($L19, 'Import "import"'), $Y($EXPECT($R69, "Import /\\s/"))), function($skip, $loc, $0, $1, $2) {
11502
11675
  return { $loc, token: $1 };
11503
11676
  });
11504
11677
  function Import(ctx, state) {
11505
11678
  return $EVENT(ctx, state, "Import", Import$0);
11506
11679
  }
11507
- var In$0 = $TS($S($EXPECT($L150, 'In "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11680
+ var In$0 = $TS($S($EXPECT($L151, 'In "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11508
11681
  return { $loc, token: $1 };
11509
11682
  });
11510
11683
  function In(ctx, state) {
11511
11684
  return $EVENT(ctx, state, "In", In$0);
11512
11685
  }
11513
- var LetOrConst$0 = $TS($S($C($EXPECT($L151, 'LetOrConst "let"'), $EXPECT($L152, 'LetOrConst "const"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11686
+ var LetOrConst$0 = $TS($S($C($EXPECT($L152, 'LetOrConst "let"'), $EXPECT($L153, 'LetOrConst "const"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11514
11687
  return { $loc, token: $1 };
11515
11688
  });
11516
11689
  function LetOrConst(ctx, state) {
11517
11690
  return $EVENT(ctx, state, "LetOrConst", LetOrConst$0);
11518
11691
  }
11519
- var Const$0 = $TS($S($EXPECT($L152, 'Const "const"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11692
+ var Const$0 = $TS($S($EXPECT($L153, 'Const "const"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11520
11693
  return { $loc, token: $1 };
11521
11694
  });
11522
11695
  function Const(ctx, state) {
11523
11696
  return $EVENT(ctx, state, "Const", Const$0);
11524
11697
  }
11525
- var Is$0 = $TS($S($EXPECT($L153, 'Is "is"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11698
+ var Is$0 = $TS($S($EXPECT($L154, 'Is "is"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11526
11699
  return { $loc, token: $1 };
11527
11700
  });
11528
11701
  function Is(ctx, state) {
@@ -11534,31 +11707,31 @@ ${input.slice(result.pos)}
11534
11707
  function LetOrConstOrVar(ctx, state) {
11535
11708
  return $EVENT_C(ctx, state, "LetOrConstOrVar", LetOrConstOrVar$$);
11536
11709
  }
11537
- var Loop$0 = $TS($S($EXPECT($L154, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11710
+ var Loop$0 = $TS($S($EXPECT($L155, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11538
11711
  return { $loc, token: "while(true)" };
11539
11712
  });
11540
11713
  function Loop(ctx, state) {
11541
11714
  return $EVENT(ctx, state, "Loop", Loop$0);
11542
11715
  }
11543
- var New$0 = $TS($S($EXPECT($L155, 'New "new"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11716
+ var New$0 = $TS($S($EXPECT($L156, 'New "new"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11544
11717
  return { $loc, token: $1 };
11545
11718
  });
11546
11719
  function New(ctx, state) {
11547
11720
  return $EVENT(ctx, state, "New", New$0);
11548
11721
  }
11549
- var Not$0 = $TS($S($EXPECT($L156, 'Not "not"'), NonIdContinue, $N($S($E(_), $EXPECT($L13, 'Not ":"')))), function($skip, $loc, $0, $1, $2, $3) {
11722
+ var Not$0 = $TS($S($EXPECT($L157, 'Not "not"'), NonIdContinue, $N($S($E(_), $EXPECT($L14, 'Not ":"')))), function($skip, $loc, $0, $1, $2, $3) {
11550
11723
  return { $loc, token: "!" };
11551
11724
  });
11552
11725
  function Not(ctx, state) {
11553
11726
  return $EVENT(ctx, state, "Not", Not$0);
11554
11727
  }
11555
- var Of$0 = $TS($S($EXPECT($L157, 'Of "of"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11728
+ var Of$0 = $TS($S($EXPECT($L158, 'Of "of"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11556
11729
  return { $loc, token: $1 };
11557
11730
  });
11558
11731
  function Of(ctx, state) {
11559
11732
  return $EVENT(ctx, state, "Of", Of$0);
11560
11733
  }
11561
- var OpenAngleBracket$0 = $TV($EXPECT($L15, 'OpenAngleBracket "<"'), function($skip, $loc, $0, $1) {
11734
+ var OpenAngleBracket$0 = $TV($EXPECT($L16, 'OpenAngleBracket "<"'), function($skip, $loc, $0, $1) {
11562
11735
  return { $loc, token: $1 };
11563
11736
  });
11564
11737
  function OpenAngleBracket(ctx, state) {
@@ -11570,7 +11743,7 @@ ${input.slice(result.pos)}
11570
11743
  function OpenBrace(ctx, state) {
11571
11744
  return $EVENT(ctx, state, "OpenBrace", OpenBrace$0);
11572
11745
  }
11573
- var OpenBracket$0 = $TV($EXPECT($L158, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
11746
+ var OpenBracket$0 = $TV($EXPECT($L159, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
11574
11747
  return { $loc, token: $1 };
11575
11748
  });
11576
11749
  function OpenBracket(ctx, state) {
@@ -11582,43 +11755,43 @@ ${input.slice(result.pos)}
11582
11755
  function OpenParen(ctx, state) {
11583
11756
  return $EVENT(ctx, state, "OpenParen", OpenParen$0);
11584
11757
  }
11585
- var Operator$0 = $TS($S($EXPECT($L159, 'Operator "operator"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11758
+ var Operator$0 = $TS($S($EXPECT($L160, 'Operator "operator"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11586
11759
  return { $loc, token: $1 };
11587
11760
  });
11588
11761
  function Operator(ctx, state) {
11589
11762
  return $EVENT(ctx, state, "Operator", Operator$0);
11590
11763
  }
11591
- var Own$0 = $TS($S($EXPECT($L160, 'Own "own"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11764
+ var Own$0 = $TS($S($EXPECT($L161, 'Own "own"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11592
11765
  return { $loc, token: $1 };
11593
11766
  });
11594
11767
  function Own(ctx, state) {
11595
11768
  return $EVENT(ctx, state, "Own", Own$0);
11596
11769
  }
11597
- var Public$0 = $TS($S($EXPECT($L161, 'Public "public"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11770
+ var Public$0 = $TS($S($EXPECT($L162, 'Public "public"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11598
11771
  return { $loc, token: $1 };
11599
11772
  });
11600
11773
  function Public(ctx, state) {
11601
11774
  return $EVENT(ctx, state, "Public", Public$0);
11602
11775
  }
11603
- var Private$0 = $TS($S($EXPECT($L162, 'Private "private"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11776
+ var Private$0 = $TS($S($EXPECT($L163, 'Private "private"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11604
11777
  return { $loc, token: $1 };
11605
11778
  });
11606
11779
  function Private(ctx, state) {
11607
11780
  return $EVENT(ctx, state, "Private", Private$0);
11608
11781
  }
11609
- var Protected$0 = $TS($S($EXPECT($L163, 'Protected "protected"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11782
+ var Protected$0 = $TS($S($EXPECT($L164, 'Protected "protected"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11610
11783
  return { $loc, token: $1 };
11611
11784
  });
11612
11785
  function Protected(ctx, state) {
11613
11786
  return $EVENT(ctx, state, "Protected", Protected$0);
11614
11787
  }
11615
- var Pipe$0 = $TV($C($EXPECT($L164, 'Pipe "||>"'), $EXPECT($L165, 'Pipe "|\u25B7"')), function($skip, $loc, $0, $1) {
11788
+ var Pipe$0 = $TV($C($EXPECT($L165, 'Pipe "||>"'), $EXPECT($L166, 'Pipe "|\u25B7"')), function($skip, $loc, $0, $1) {
11616
11789
  return { $loc, token: "||>" };
11617
11790
  });
11618
- var Pipe$1 = $TV($C($EXPECT($L166, 'Pipe "|>="'), $EXPECT($L167, 'Pipe "\u25B7="')), function($skip, $loc, $0, $1) {
11791
+ var Pipe$1 = $TV($C($EXPECT($L167, 'Pipe "|>="'), $EXPECT($L168, 'Pipe "\u25B7="')), function($skip, $loc, $0, $1) {
11619
11792
  return { $loc, token: "|>=" };
11620
11793
  });
11621
- var Pipe$2 = $TV($C($EXPECT($L168, 'Pipe "|>"'), $EXPECT($L169, 'Pipe "\u25B7"')), function($skip, $loc, $0, $1) {
11794
+ var Pipe$2 = $TV($C($EXPECT($L169, 'Pipe "|>"'), $EXPECT($L170, 'Pipe "\u25B7"')), function($skip, $loc, $0, $1) {
11622
11795
  return { $loc, token: "|>" };
11623
11796
  });
11624
11797
  var Pipe$$ = [Pipe$0, Pipe$1, Pipe$2];
@@ -11631,173 +11804,173 @@ ${input.slice(result.pos)}
11631
11804
  function QuestionMark(ctx, state) {
11632
11805
  return $EVENT(ctx, state, "QuestionMark", QuestionMark$0);
11633
11806
  }
11634
- var Readonly$0 = $TS($S($EXPECT($L170, 'Readonly "readonly"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11807
+ var Readonly$0 = $TS($S($EXPECT($L171, 'Readonly "readonly"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11635
11808
  return { $loc, token: $1, ts: true };
11636
11809
  });
11637
11810
  function Readonly(ctx, state) {
11638
11811
  return $EVENT(ctx, state, "Readonly", Readonly$0);
11639
11812
  }
11640
- var Return$0 = $TS($S($EXPECT($L171, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11813
+ var Return$0 = $TS($S($EXPECT($L172, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11641
11814
  return { $loc, token: $1 };
11642
11815
  });
11643
11816
  function Return(ctx, state) {
11644
11817
  return $EVENT(ctx, state, "Return", Return$0);
11645
11818
  }
11646
- var Satisfies$0 = $TS($S($EXPECT($L172, 'Satisfies "satisfies"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11819
+ var Satisfies$0 = $TS($S($EXPECT($L173, 'Satisfies "satisfies"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11647
11820
  return { $loc, token: $1 };
11648
11821
  });
11649
11822
  function Satisfies(ctx, state) {
11650
11823
  return $EVENT(ctx, state, "Satisfies", Satisfies$0);
11651
11824
  }
11652
- var Semicolon$0 = $TV($EXPECT($L102, 'Semicolon ";"'), function($skip, $loc, $0, $1) {
11825
+ var Semicolon$0 = $TV($EXPECT($L103, 'Semicolon ";"'), function($skip, $loc, $0, $1) {
11653
11826
  return { $loc, token: $1 };
11654
11827
  });
11655
11828
  function Semicolon(ctx, state) {
11656
11829
  return $EVENT(ctx, state, "Semicolon", Semicolon$0);
11657
11830
  }
11658
- var SingleQuote$0 = $TV($EXPECT($L173, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
11831
+ var SingleQuote$0 = $TV($EXPECT($L174, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
11659
11832
  return { $loc, token: $1 };
11660
11833
  });
11661
11834
  function SingleQuote(ctx, state) {
11662
11835
  return $EVENT(ctx, state, "SingleQuote", SingleQuote$0);
11663
11836
  }
11664
- var Star$0 = $TV($EXPECT($L57, 'Star "*"'), function($skip, $loc, $0, $1) {
11837
+ var Star$0 = $TV($EXPECT($L58, 'Star "*"'), function($skip, $loc, $0, $1) {
11665
11838
  return { $loc, token: $1 };
11666
11839
  });
11667
11840
  function Star(ctx, state) {
11668
11841
  return $EVENT(ctx, state, "Star", Star$0);
11669
11842
  }
11670
- var Static$0 = $TS($S($EXPECT($L174, 'Static "static"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11843
+ var Static$0 = $TS($S($EXPECT($L175, 'Static "static"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11671
11844
  return { $loc, token: $1 };
11672
11845
  });
11673
- var Static$1 = $TS($S($EXPECT($L118, 'Static "@"'), $N($C($EXPECT($L4, 'Static "("'), $EXPECT($L118, 'Static "@"')))), function($skip, $loc, $0, $1, $2) {
11846
+ var Static$1 = $TS($S($EXPECT($L119, 'Static "@"'), $N($C($EXPECT($L4, 'Static "("'), $EXPECT($L119, 'Static "@"')))), function($skip, $loc, $0, $1, $2) {
11674
11847
  return { $loc, token: "static " };
11675
11848
  });
11676
11849
  var Static$$ = [Static$0, Static$1];
11677
11850
  function Static(ctx, state) {
11678
11851
  return $EVENT_C(ctx, state, "Static", Static$$);
11679
11852
  }
11680
- var SubstitutionStart$0 = $TV($EXPECT($L175, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
11853
+ var SubstitutionStart$0 = $TV($EXPECT($L176, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
11681
11854
  return { $loc, token: $1 };
11682
11855
  });
11683
11856
  function SubstitutionStart(ctx, state) {
11684
11857
  return $EVENT(ctx, state, "SubstitutionStart", SubstitutionStart$0);
11685
11858
  }
11686
- var Super$0 = $TS($S($EXPECT($L176, 'Super "super"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11859
+ var Super$0 = $TS($S($EXPECT($L177, 'Super "super"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11687
11860
  return { $loc, token: $1 };
11688
11861
  });
11689
11862
  function Super(ctx, state) {
11690
11863
  return $EVENT(ctx, state, "Super", Super$0);
11691
11864
  }
11692
- var Switch$0 = $TS($S($EXPECT($L177, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11865
+ var Switch$0 = $TS($S($EXPECT($L178, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11693
11866
  return { $loc, token: $1 };
11694
11867
  });
11695
11868
  function Switch(ctx, state) {
11696
11869
  return $EVENT(ctx, state, "Switch", Switch$0);
11697
11870
  }
11698
- var Target$0 = $TS($S($EXPECT($L178, 'Target "target"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11871
+ var Target$0 = $TS($S($EXPECT($L179, 'Target "target"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11699
11872
  return { $loc, token: $1 };
11700
11873
  });
11701
11874
  function Target(ctx, state) {
11702
11875
  return $EVENT(ctx, state, "Target", Target$0);
11703
11876
  }
11704
- var Then$0 = $TS($S(__, $EXPECT($L179, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
11877
+ var Then$0 = $TS($S(__, $EXPECT($L180, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
11705
11878
  return { $loc, token: "" };
11706
11879
  });
11707
11880
  function Then(ctx, state) {
11708
11881
  return $EVENT(ctx, state, "Then", Then$0);
11709
11882
  }
11710
- var This$0 = $TS($S($EXPECT($L180, 'This "this"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11883
+ var This$0 = $TS($S($EXPECT($L181, 'This "this"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11711
11884
  return { $loc, token: $1 };
11712
11885
  });
11713
11886
  function This(ctx, state) {
11714
11887
  return $EVENT(ctx, state, "This", This$0);
11715
11888
  }
11716
- var Throw$0 = $TS($S($EXPECT($L181, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11889
+ var Throw$0 = $TS($S($EXPECT($L182, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11717
11890
  return { $loc, token: $1 };
11718
11891
  });
11719
11892
  function Throw(ctx, state) {
11720
11893
  return $EVENT(ctx, state, "Throw", Throw$0);
11721
11894
  }
11722
- var TripleDoubleQuote$0 = $TV($EXPECT($L182, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
11895
+ var TripleDoubleQuote$0 = $TV($EXPECT($L183, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
11723
11896
  return { $loc, token: "`" };
11724
11897
  });
11725
11898
  function TripleDoubleQuote(ctx, state) {
11726
11899
  return $EVENT(ctx, state, "TripleDoubleQuote", TripleDoubleQuote$0);
11727
11900
  }
11728
- var TripleSingleQuote$0 = $TV($EXPECT($L183, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
11901
+ var TripleSingleQuote$0 = $TV($EXPECT($L184, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
11729
11902
  return { $loc, token: "`" };
11730
11903
  });
11731
11904
  function TripleSingleQuote(ctx, state) {
11732
11905
  return $EVENT(ctx, state, "TripleSingleQuote", TripleSingleQuote$0);
11733
11906
  }
11734
- var TripleSlash$0 = $TV($EXPECT($L184, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
11907
+ var TripleSlash$0 = $TV($EXPECT($L185, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
11735
11908
  return { $loc, token: "/" };
11736
11909
  });
11737
11910
  function TripleSlash(ctx, state) {
11738
11911
  return $EVENT(ctx, state, "TripleSlash", TripleSlash$0);
11739
11912
  }
11740
- var TripleTick$0 = $TV($EXPECT($L185, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
11913
+ var TripleTick$0 = $TV($EXPECT($L186, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
11741
11914
  return { $loc, token: "`" };
11742
11915
  });
11743
11916
  function TripleTick(ctx, state) {
11744
11917
  return $EVENT(ctx, state, "TripleTick", TripleTick$0);
11745
11918
  }
11746
- var Try$0 = $TS($S($EXPECT($L186, 'Try "try"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11919
+ var Try$0 = $TS($S($EXPECT($L187, 'Try "try"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11747
11920
  return { $loc, token: $1 };
11748
11921
  });
11749
11922
  function Try(ctx, state) {
11750
11923
  return $EVENT(ctx, state, "Try", Try$0);
11751
11924
  }
11752
- var Typeof$0 = $TS($S($EXPECT($L187, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11925
+ var Typeof$0 = $TS($S($EXPECT($L188, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11753
11926
  return { $loc, token: $1 };
11754
11927
  });
11755
11928
  function Typeof(ctx, state) {
11756
11929
  return $EVENT(ctx, state, "Typeof", Typeof$0);
11757
11930
  }
11758
- var Unless$0 = $TS($S($EXPECT($L188, 'Unless "unless"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11931
+ var Unless$0 = $TS($S($EXPECT($L189, 'Unless "unless"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11759
11932
  return { $loc, token: $1, negated: true };
11760
11933
  });
11761
11934
  function Unless(ctx, state) {
11762
11935
  return $EVENT(ctx, state, "Unless", Unless$0);
11763
11936
  }
11764
- var Until$0 = $TS($S($EXPECT($L189, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11937
+ var Until$0 = $TS($S($EXPECT($L190, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11765
11938
  return { $loc, token: $1 };
11766
11939
  });
11767
11940
  function Until(ctx, state) {
11768
11941
  return $EVENT(ctx, state, "Until", Until$0);
11769
11942
  }
11770
- var Using$0 = $TS($S($EXPECT($L190, 'Using "using"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11943
+ var Using$0 = $TS($S($EXPECT($L191, 'Using "using"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11771
11944
  return { $loc, token: $1 };
11772
11945
  });
11773
11946
  function Using(ctx, state) {
11774
11947
  return $EVENT(ctx, state, "Using", Using$0);
11775
11948
  }
11776
- var Var$0 = $TS($S($EXPECT($L191, 'Var "var"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11949
+ var Var$0 = $TS($S($EXPECT($L192, 'Var "var"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11777
11950
  return { $loc, token: $1 };
11778
11951
  });
11779
11952
  function Var(ctx, state) {
11780
11953
  return $EVENT(ctx, state, "Var", Var$0);
11781
11954
  }
11782
- var Void$0 = $TS($S($EXPECT($L192, 'Void "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11955
+ var Void$0 = $TS($S($EXPECT($L193, 'Void "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11783
11956
  return { $loc, token: $1 };
11784
11957
  });
11785
11958
  function Void(ctx, state) {
11786
11959
  return $EVENT(ctx, state, "Void", Void$0);
11787
11960
  }
11788
- var When$0 = $TS($S($EXPECT($L193, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11961
+ var When$0 = $TS($S($EXPECT($L194, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11789
11962
  return { $loc, token: "case" };
11790
11963
  });
11791
11964
  function When(ctx, state) {
11792
11965
  return $EVENT(ctx, state, "When", When$0);
11793
11966
  }
11794
- var While$0 = $TS($S($EXPECT($L194, 'While "while"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11967
+ var While$0 = $TS($S($EXPECT($L195, 'While "while"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11795
11968
  return { $loc, token: $1 };
11796
11969
  });
11797
11970
  function While(ctx, state) {
11798
11971
  return $EVENT(ctx, state, "While", While$0);
11799
11972
  }
11800
- var Yield$0 = $TS($S($EXPECT($L195, 'Yield "yield"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11973
+ var Yield$0 = $TS($S($EXPECT($L196, 'Yield "yield"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11801
11974
  return { $loc, token: $1, type: "Yield" };
11802
11975
  });
11803
11976
  function Yield(ctx, state) {
@@ -11826,7 +11999,7 @@ ${input.slice(result.pos)}
11826
11999
  function JSXImplicitFragment(ctx, state) {
11827
12000
  return $EVENT(ctx, state, "JSXImplicitFragment", JSXImplicitFragment$0);
11828
12001
  }
11829
- var JSXTag$0 = $T($S($EXPECT($R69, "JSXTag /(?=[<])/"), _JSXTag), function(value) {
12002
+ var JSXTag$0 = $T($S($EXPECT($R70, "JSXTag /(?=[<])/"), _JSXTag), function(value) {
11830
12003
  return value[1];
11831
12004
  });
11832
12005
  function JSXTag(ctx, state) {
@@ -11876,7 +12049,7 @@ ${input.slice(result.pos)}
11876
12049
  function JSXElement(ctx, state) {
11877
12050
  return $EVENT_C(ctx, state, "JSXElement", JSXElement$$);
11878
12051
  }
11879
- var JSXSelfClosingElement$0 = $TS($S($EXPECT($L15, 'JSXSelfClosingElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L196, 'JSXSelfClosingElement "/>"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
12052
+ var JSXSelfClosingElement$0 = $TS($S($EXPECT($L16, 'JSXSelfClosingElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L197, 'JSXSelfClosingElement "/>"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
11880
12053
  return { type: "JSXElement", children: $0, tag: $2 };
11881
12054
  });
11882
12055
  function JSXSelfClosingElement(ctx, state) {
@@ -11895,7 +12068,7 @@ ${input.slice(result.pos)}
11895
12068
  function PopJSXStack(ctx, state) {
11896
12069
  return $EVENT(ctx, state, "PopJSXStack", PopJSXStack$0);
11897
12070
  }
11898
- var JSXOpeningElement$0 = $S($EXPECT($L15, 'JSXOpeningElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L36, 'JSXOpeningElement ">"'));
12071
+ var JSXOpeningElement$0 = $S($EXPECT($L16, 'JSXOpeningElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L37, 'JSXOpeningElement ">"'));
11899
12072
  function JSXOpeningElement(ctx, state) {
11900
12073
  return $EVENT(ctx, state, "JSXOpeningElement", JSXOpeningElement$0);
11901
12074
  }
@@ -11910,7 +12083,7 @@ ${input.slice(result.pos)}
11910
12083
  function JSXOptionalClosingElement(ctx, state) {
11911
12084
  return $EVENT_C(ctx, state, "JSXOptionalClosingElement", JSXOptionalClosingElement$$);
11912
12085
  }
11913
- var JSXClosingElement$0 = $S($EXPECT($L197, 'JSXClosingElement "</"'), $E(Whitespace), JSXElementName, $E(Whitespace), $EXPECT($L36, 'JSXClosingElement ">"'));
12086
+ var JSXClosingElement$0 = $S($EXPECT($L198, 'JSXClosingElement "</"'), $E(Whitespace), JSXElementName, $E(Whitespace), $EXPECT($L37, 'JSXClosingElement ">"'));
11914
12087
  function JSXClosingElement(ctx, state) {
11915
12088
  return $EVENT(ctx, state, "JSXClosingElement", JSXClosingElement$0);
11916
12089
  }
@@ -11931,7 +12104,7 @@ ${input.slice(result.pos)}
11931
12104
  ];
11932
12105
  return { type: "JSXFragment", children: parts, jsxChildren: children.jsxChildren };
11933
12106
  });
11934
- var JSXFragment$1 = $TS($S(CoffeeJSXEnabled, $EXPECT($L198, 'JSXFragment "<>"'), $E(JSXChildren), $E(Whitespace), JSXClosingFragment), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
12107
+ var JSXFragment$1 = $TS($S(CoffeeJSXEnabled, $EXPECT($L199, 'JSXFragment "<>"'), $E(JSXChildren), $E(Whitespace), JSXClosingFragment), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
11935
12108
  var children = $3;
11936
12109
  $0 = $0.slice(1);
11937
12110
  return {
@@ -11944,7 +12117,7 @@ ${input.slice(result.pos)}
11944
12117
  function JSXFragment(ctx, state) {
11945
12118
  return $EVENT_C(ctx, state, "JSXFragment", JSXFragment$$);
11946
12119
  }
11947
- var PushJSXOpeningFragment$0 = $TV($EXPECT($L198, 'PushJSXOpeningFragment "<>"'), function($skip, $loc, $0, $1) {
12120
+ var PushJSXOpeningFragment$0 = $TV($EXPECT($L199, 'PushJSXOpeningFragment "<>"'), function($skip, $loc, $0, $1) {
11948
12121
  module.JSXTagStack.push("");
11949
12122
  return $1;
11950
12123
  });
@@ -11961,11 +12134,11 @@ ${input.slice(result.pos)}
11961
12134
  function JSXOptionalClosingFragment(ctx, state) {
11962
12135
  return $EVENT_C(ctx, state, "JSXOptionalClosingFragment", JSXOptionalClosingFragment$$);
11963
12136
  }
11964
- var JSXClosingFragment$0 = $EXPECT($L199, 'JSXClosingFragment "</>"');
12137
+ var JSXClosingFragment$0 = $EXPECT($L200, 'JSXClosingFragment "</>"');
11965
12138
  function JSXClosingFragment(ctx, state) {
11966
12139
  return $EVENT(ctx, state, "JSXClosingFragment", JSXClosingFragment$0);
11967
12140
  }
11968
- var JSXElementName$0 = $TV($Y($S($C($EXPECT($L148, 'JSXElementName "#"'), Dot), JSXShorthandString)), function($skip, $loc, $0, $1) {
12141
+ var JSXElementName$0 = $TV($Y($S($C($EXPECT($L149, 'JSXElementName "#"'), Dot), JSXShorthandString)), function($skip, $loc, $0, $1) {
11969
12142
  return module.config.defaultElement;
11970
12143
  });
11971
12144
  var JSXElementName$1 = $TEXT($S(JSXIdentifierName, $C($S(Colon, JSXIdentifierName), $Q($S(Dot, JSXIdentifierName)))));
@@ -11973,7 +12146,7 @@ ${input.slice(result.pos)}
11973
12146
  function JSXElementName(ctx, state) {
11974
12147
  return $EVENT_C(ctx, state, "JSXElementName", JSXElementName$$);
11975
12148
  }
11976
- var JSXIdentifierName$0 = $R$0($EXPECT($R70, "JSXIdentifierName /(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*/"));
12149
+ var JSXIdentifierName$0 = $R$0($EXPECT($R71, "JSXIdentifierName /(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*/"));
11977
12150
  function JSXIdentifierName(ctx, state) {
11978
12151
  return $EVENT(ctx, state, "JSXIdentifierName", JSXIdentifierName$0);
11979
12152
  }
@@ -12143,7 +12316,7 @@ ${input.slice(result.pos)}
12143
12316
  }
12144
12317
  return $skip;
12145
12318
  });
12146
- var JSXAttribute$5 = $TS($S($EXPECT($L148, 'JSXAttribute "#"'), JSXShorthandString), function($skip, $loc, $0, $1, $2) {
12319
+ var JSXAttribute$5 = $TS($S($EXPECT($L149, 'JSXAttribute "#"'), JSXShorthandString), function($skip, $loc, $0, $1, $2) {
12147
12320
  return [" ", "id=", $2];
12148
12321
  });
12149
12322
  var JSXAttribute$6 = $TS($S(Dot, JSXShorthandString), function($skip, $loc, $0, $1, $2) {
@@ -12152,7 +12325,7 @@ ${input.slice(result.pos)}
12152
12325
  class: $2
12153
12326
  };
12154
12327
  });
12155
- var JSXAttribute$7 = $TS($S($TEXT($EXPECT($R15, "JSXAttribute /[!+-]/")), JSXAttributeName, $Y(JSXAttributeSpace)), function($skip, $loc, $0, $1, $2, $3) {
12328
+ var JSXAttribute$7 = $TS($S($TEXT($EXPECT($R16, "JSXAttribute /[!+-]/")), JSXAttributeName, $Y(JSXAttributeSpace)), function($skip, $loc, $0, $1, $2, $3) {
12156
12329
  var toggle = $1;
12157
12330
  var id = $2;
12158
12331
  const value = toggle === "+" ? "true" : "false";
@@ -12162,11 +12335,11 @@ ${input.slice(result.pos)}
12162
12335
  function JSXAttribute(ctx, state) {
12163
12336
  return $EVENT_C(ctx, state, "JSXAttribute", JSXAttribute$$);
12164
12337
  }
12165
- var JSXAttributeSpace$0 = $R$0($EXPECT($R71, "JSXAttributeSpace /[\\s>]|\\/>/"));
12338
+ var JSXAttributeSpace$0 = $R$0($EXPECT($R72, "JSXAttributeSpace /[\\s>]|\\/>/"));
12166
12339
  function JSXAttributeSpace(ctx, state) {
12167
12340
  return $EVENT(ctx, state, "JSXAttributeSpace", JSXAttributeSpace$0);
12168
12341
  }
12169
- var JSXShorthandString$0 = $TR($EXPECT($R72, "JSXShorthandString /(?:[\\w\\-:]+|\\([^()]*\\)|\\[[^\\[\\]]*\\])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
12342
+ var JSXShorthandString$0 = $TR($EXPECT($R73, "JSXShorthandString /(?:[\\w\\-:]+|\\([^()]*\\)|\\[[^\\[\\]]*\\])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
12170
12343
  return quoteString($0);
12171
12344
  });
12172
12345
  var JSXShorthandString$1 = $TS($S(TemplateLiteral), function($skip, $loc, $0, $1) {
@@ -12200,7 +12373,7 @@ ${input.slice(result.pos)}
12200
12373
  }
12201
12374
  return [open, value, close];
12202
12375
  });
12203
- var JSXAttributeValue$4 = $R$0($EXPECT($R73, `JSXAttributeValue /"[^"]*"|'[^']*'/`));
12376
+ var JSXAttributeValue$4 = $R$0($EXPECT($R74, `JSXAttributeValue /"[^"]*"|'[^']*'/`));
12204
12377
  var JSXAttributeValue$$ = [JSXAttributeValue$0, JSXAttributeValue$1, JSXAttributeValue$2, JSXAttributeValue$3, JSXAttributeValue$4];
12205
12378
  function JSXAttributeValue(ctx, state) {
12206
12379
  return $EVENT_C(ctx, state, "JSXAttributeValue", JSXAttributeValue$$);
@@ -12213,7 +12386,7 @@ ${input.slice(result.pos)}
12213
12386
  function InlineJSXAttributeValue(ctx, state) {
12214
12387
  return $EVENT(ctx, state, "InlineJSXAttributeValue", InlineJSXAttributeValue$0);
12215
12388
  }
12216
- var InlineJSXBinaryOpRHS$0 = $TS($S($N($EXPECT($R74, "InlineJSXBinaryOpRHS /[<>]/")), BinaryOp, InlineJSXUnaryExpression), function($skip, $loc, $0, $1, $2, $3) {
12389
+ var InlineJSXBinaryOpRHS$0 = $TS($S($N($EXPECT($R75, "InlineJSXBinaryOpRHS /[<>]/")), BinaryOp, InlineJSXUnaryExpression), function($skip, $loc, $0, $1, $2, $3) {
12217
12390
  var op = $2;
12218
12391
  var rhs = $3;
12219
12392
  return [[], op, [], rhs];
@@ -12230,7 +12403,7 @@ ${input.slice(result.pos)}
12230
12403
  function InlineJSXUnaryExpression(ctx, state) {
12231
12404
  return $EVENT(ctx, state, "InlineJSXUnaryExpression", InlineJSXUnaryExpression$0);
12232
12405
  }
12233
- var InlineJSXUnaryOp$0 = $TR($EXPECT($R75, "InlineJSXUnaryOp /[!~+-](?!\\s|[!~+-]*&)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
12406
+ var InlineJSXUnaryOp$0 = $TR($EXPECT($R76, "InlineJSXUnaryOp /[!~+-](?!\\s|[!~+-]*&)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
12234
12407
  return { $loc, token: $0 };
12235
12408
  });
12236
12409
  function InlineJSXUnaryOp(ctx, state) {
@@ -12257,19 +12430,19 @@ ${input.slice(result.pos)}
12257
12430
  type: "CallExpression",
12258
12431
  children: [
12259
12432
  $1,
12260
- { type: "Call", children: args },
12433
+ args,
12261
12434
  ...rest.flat()
12262
12435
  ]
12263
12436
  });
12264
12437
  });
12265
- var InlineJSXCallExpression$1 = $TS($S($EXPECT($L18, 'InlineJSXCallExpression "import"'), ExplicitArguments, $Q(InlineJSXCallExpressionRest)), function($skip, $loc, $0, $1, $2, $3) {
12438
+ var InlineJSXCallExpression$1 = $TS($S($EXPECT($L19, 'InlineJSXCallExpression "import"'), ExplicitArguments, $Q(InlineJSXCallExpressionRest)), function($skip, $loc, $0, $1, $2, $3) {
12266
12439
  var args = $2;
12267
12440
  var rest = $3;
12268
12441
  return processCallMemberExpression({
12269
12442
  type: "CallExpression",
12270
12443
  children: [
12271
12444
  $1,
12272
- { type: "Call", children: args },
12445
+ args,
12273
12446
  ...rest.flat()
12274
12447
  ]
12275
12448
  });
@@ -12299,7 +12472,6 @@ ${input.slice(result.pos)}
12299
12472
  });
12300
12473
  var InlineJSXCallExpressionRest$2 = $TS($S($E(OptionalShorthand), ExplicitArguments), function($skip, $loc, $0, $1, $2) {
12301
12474
  var args = $2;
12302
- args = { type: "Call", children: args };
12303
12475
  if (!$1)
12304
12476
  return args;
12305
12477
  return [$1, args];
@@ -12381,7 +12553,7 @@ ${input.slice(result.pos)}
12381
12553
  }
12382
12554
  return $skip;
12383
12555
  });
12384
- var JSXNestedChildren$1 = $TV($Y($C(JSXEOS, $EXPECT($L28, 'JSXNestedChildren "}"'), JSXClosingElement, JSXClosingFragment)), function($skip, $loc, $0, $1) {
12556
+ var JSXNestedChildren$1 = $TV($Y($C(JSXEOS, $EXPECT($L29, 'JSXNestedChildren "}"'), JSXClosingElement, JSXClosingFragment)), function($skip, $loc, $0, $1) {
12385
12557
  return { children: [], jsxChildren: [] };
12386
12558
  });
12387
12559
  var JSXNestedChildren$$ = [JSXNestedChildren$0, JSXNestedChildren$1];
@@ -12436,19 +12608,19 @@ ${input.slice(result.pos)}
12436
12608
  function JSXChild(ctx, state) {
12437
12609
  return $EVENT_C(ctx, state, "JSXChild", JSXChild$$);
12438
12610
  }
12439
- var JSXComment$0 = $TS($S($EXPECT($L200, 'JSXComment "<!--"'), JSXCommentContent, $EXPECT($L201, 'JSXComment "-->"')), function($skip, $loc, $0, $1, $2, $3) {
12611
+ var JSXComment$0 = $TS($S($EXPECT($L201, 'JSXComment "<!--"'), JSXCommentContent, $EXPECT($L202, 'JSXComment "-->"')), function($skip, $loc, $0, $1, $2, $3) {
12440
12612
  return ["{/*", $2, "*/}"];
12441
12613
  });
12442
12614
  function JSXComment(ctx, state) {
12443
12615
  return $EVENT(ctx, state, "JSXComment", JSXComment$0);
12444
12616
  }
12445
- var JSXCommentContent$0 = $TR($EXPECT($R76, "JSXCommentContent /(?:-[^-]|[^-]*)*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
12617
+ var JSXCommentContent$0 = $TR($EXPECT($R77, "JSXCommentContent /(?:-[^-]|[^-]*)*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
12446
12618
  return { $loc, token: $0.replace(/\*\//g, "* /") };
12447
12619
  });
12448
12620
  function JSXCommentContent(ctx, state) {
12449
12621
  return $EVENT(ctx, state, "JSXCommentContent", JSXCommentContent$0);
12450
12622
  }
12451
- var JSXText$0 = $TR($EXPECT($R77, "JSXText /[^{}<>\\r\\n]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
12623
+ var JSXText$0 = $TR($EXPECT($R78, "JSXText /[^{}<>\\r\\n]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
12452
12624
  return {
12453
12625
  type: "JSXText",
12454
12626
  token: $0,
@@ -12568,37 +12740,37 @@ ${input.slice(result.pos)}
12568
12740
  function InterfaceExtendsTarget(ctx, state) {
12569
12741
  return $EVENT(ctx, state, "InterfaceExtendsTarget", InterfaceExtendsTarget$0);
12570
12742
  }
12571
- var TypeKeyword$0 = $TS($S($EXPECT($L202, 'TypeKeyword "type"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12743
+ var TypeKeyword$0 = $TS($S($EXPECT($L203, 'TypeKeyword "type"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12572
12744
  return { $loc, token: $1 };
12573
12745
  });
12574
12746
  function TypeKeyword(ctx, state) {
12575
12747
  return $EVENT(ctx, state, "TypeKeyword", TypeKeyword$0);
12576
12748
  }
12577
- var Enum$0 = $TS($S($EXPECT($L203, 'Enum "enum"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12749
+ var Enum$0 = $TS($S($EXPECT($L204, 'Enum "enum"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12578
12750
  return { $loc, token: $1 };
12579
12751
  });
12580
12752
  function Enum(ctx, state) {
12581
12753
  return $EVENT(ctx, state, "Enum", Enum$0);
12582
12754
  }
12583
- var Interface$0 = $TS($S($EXPECT($L204, 'Interface "interface"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12755
+ var Interface$0 = $TS($S($EXPECT($L205, 'Interface "interface"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12584
12756
  return { $loc, token: $1 };
12585
12757
  });
12586
12758
  function Interface(ctx, state) {
12587
12759
  return $EVENT(ctx, state, "Interface", Interface$0);
12588
12760
  }
12589
- var Global$0 = $TS($S($EXPECT($L205, 'Global "global"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12761
+ var Global$0 = $TS($S($EXPECT($L206, 'Global "global"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12590
12762
  return { $loc, token: $1 };
12591
12763
  });
12592
12764
  function Global(ctx, state) {
12593
12765
  return $EVENT(ctx, state, "Global", Global$0);
12594
12766
  }
12595
- var Module$0 = $TS($S($EXPECT($L206, 'Module "module"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12767
+ var Module$0 = $TS($S($EXPECT($L207, 'Module "module"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12596
12768
  return { $loc, token: $1 };
12597
12769
  });
12598
12770
  function Module(ctx, state) {
12599
12771
  return $EVENT(ctx, state, "Module", Module$0);
12600
12772
  }
12601
- var Namespace$0 = $TS($S($EXPECT($L207, 'Namespace "namespace"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12773
+ var Namespace$0 = $TS($S($EXPECT($L208, 'Namespace "namespace"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12602
12774
  return { $loc, token: $1 };
12603
12775
  });
12604
12776
  function Namespace(ctx, state) {
@@ -12813,7 +12985,7 @@ ${input.slice(result.pos)}
12813
12985
  function TypeProperty(ctx, state) {
12814
12986
  return $EVENT(ctx, state, "TypeProperty", TypeProperty$0);
12815
12987
  }
12816
- var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($R78, "TypeIndexSignature /[+-]?/")), Readonly, NotDedented)), OpenBracket, TypeIndex, CloseBracket, $E($S(__, $R$0($EXPECT($R79, "TypeIndexSignature /[+-]/")), $Y($S($E(_), QuestionMark)))));
12988
+ var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($R79, "TypeIndexSignature /[+-]?/")), Readonly, NotDedented)), OpenBracket, TypeIndex, CloseBracket, $E($S(__, $R$0($EXPECT($R80, "TypeIndexSignature /[+-]/")), $Y($S($E(_), QuestionMark)))));
12817
12989
  function TypeIndexSignature(ctx, state) {
12818
12990
  return $EVENT(ctx, state, "TypeIndexSignature", TypeIndexSignature$0);
12819
12991
  }
@@ -12871,7 +13043,7 @@ ${input.slice(result.pos)}
12871
13043
  function ReturnTypeSuffix(ctx, state) {
12872
13044
  return $EVENT(ctx, state, "ReturnTypeSuffix", ReturnTypeSuffix$0);
12873
13045
  }
12874
- var ReturnType$0 = $TS($S($E($S(__, $EXPECT($L208, 'ReturnType "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2) {
13046
+ var ReturnType$0 = $TS($S($E($S(__, $EXPECT($L209, 'ReturnType "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2) {
12875
13047
  var asserts = $1;
12876
13048
  var t = $2;
12877
13049
  if (asserts) {
@@ -12892,7 +13064,7 @@ ${input.slice(result.pos)}
12892
13064
  function ReturnType(ctx, state) {
12893
13065
  return $EVENT(ctx, state, "ReturnType", ReturnType$0);
12894
13066
  }
12895
- var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L153, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
13067
+ var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L154, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
12896
13068
  var lhs = $1;
12897
13069
  var rhs = $2;
12898
13070
  if (!rhs)
@@ -12950,9 +13122,9 @@ ${input.slice(result.pos)}
12950
13122
  function TypeUnarySuffix(ctx, state) {
12951
13123
  return $EVENT_C(ctx, state, "TypeUnarySuffix", TypeUnarySuffix$$);
12952
13124
  }
12953
- var TypeUnaryOp$0 = $S($EXPECT($L209, 'TypeUnaryOp "keyof"'), NonIdContinue);
12954
- var TypeUnaryOp$1 = $S($EXPECT($L210, 'TypeUnaryOp "infer"'), NonIdContinue);
12955
- var TypeUnaryOp$2 = $S($EXPECT($L170, 'TypeUnaryOp "readonly"'), NonIdContinue);
13125
+ var TypeUnaryOp$0 = $S($EXPECT($L210, 'TypeUnaryOp "keyof"'), NonIdContinue);
13126
+ var TypeUnaryOp$1 = $S($EXPECT($L211, 'TypeUnaryOp "infer"'), NonIdContinue);
13127
+ var TypeUnaryOp$2 = $S($EXPECT($L171, 'TypeUnaryOp "readonly"'), NonIdContinue);
12956
13128
  var TypeUnaryOp$$ = [TypeUnaryOp$0, TypeUnaryOp$1, TypeUnaryOp$2];
12957
13129
  function TypeUnaryOp(ctx, state) {
12958
13130
  return $EVENT_C(ctx, state, "TypeUnaryOp", TypeUnaryOp$$);
@@ -12982,7 +13154,7 @@ ${input.slice(result.pos)}
12982
13154
  function TypeIndexedAccess(ctx, state) {
12983
13155
  return $EVENT_C(ctx, state, "TypeIndexedAccess", TypeIndexedAccess$$);
12984
13156
  }
12985
- var UnknownAlias$0 = $TV($EXPECT($L211, 'UnknownAlias "???"'), function($skip, $loc, $0, $1) {
13157
+ var UnknownAlias$0 = $TV($EXPECT($L212, 'UnknownAlias "???"'), function($skip, $loc, $0, $1) {
12986
13158
  return { $loc, token: "unknown" };
12987
13159
  });
12988
13160
  function UnknownAlias(ctx, state) {
@@ -13043,8 +13215,8 @@ ${input.slice(result.pos)}
13043
13215
  function TypePrimary(ctx, state) {
13044
13216
  return $EVENT_C(ctx, state, "TypePrimary", TypePrimary$$);
13045
13217
  }
13046
- var ImportType$0 = $S($EXPECT($L18, 'ImportType "import"'), OpenParen, __, StringLiteral, __, CloseParen, $E($S(Dot, IdentifierName)), $E(TypeArguments));
13047
- var ImportType$1 = $S($EXPECT($L18, 'ImportType "import"'), InsertOpenParen, Trimmed_, StringLiteral, InsertCloseParen);
13218
+ var ImportType$0 = $S($EXPECT($L19, 'ImportType "import"'), OpenParen, __, StringLiteral, __, CloseParen, $E($S(Dot, IdentifierName)), $E(TypeArguments));
13219
+ var ImportType$1 = $S($EXPECT($L19, 'ImportType "import"'), InsertOpenParen, Trimmed_, StringLiteral, InsertCloseParen);
13048
13220
  var ImportType$$ = [ImportType$0, ImportType$1];
13049
13221
  function ImportType(ctx, state) {
13050
13222
  return $EVENT_C(ctx, state, "ImportType", ImportType$$);
@@ -13107,7 +13279,7 @@ ${input.slice(result.pos)}
13107
13279
  function NestedType(ctx, state) {
13108
13280
  return $EVENT(ctx, state, "NestedType", NestedType$0);
13109
13281
  }
13110
- var TypeConditional$0 = $TS($S($E(_), $EXPECT($R80, "TypeConditional /(?=if|unless)/"), TypeIfThenElse), function($skip, $loc, $0, $1, $2, $3) {
13282
+ var TypeConditional$0 = $TS($S($E(_), $EXPECT($R81, "TypeConditional /(?=if|unless)/"), TypeIfThenElse), function($skip, $loc, $0, $1, $2, $3) {
13111
13283
  return [$1, expressionizeTypeIf($3)];
13112
13284
  });
13113
13285
  var TypeConditional$1 = $TS($S(TypeCondition, NotDedented, QuestionMark, Type, __, Colon, Type), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7) {
@@ -13191,10 +13363,10 @@ ${input.slice(result.pos)}
13191
13363
  }
13192
13364
  var TypeLiteral$0 = TypeTemplateLiteral;
13193
13365
  var TypeLiteral$1 = Literal;
13194
- var TypeLiteral$2 = $TS($S($EXPECT($L192, 'TypeLiteral "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13366
+ var TypeLiteral$2 = $TS($S($EXPECT($L193, 'TypeLiteral "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13195
13367
  return { type: "VoidType", $loc, token: $1 };
13196
13368
  });
13197
- var TypeLiteral$3 = $TV($EXPECT($L212, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
13369
+ var TypeLiteral$3 = $TV($EXPECT($L213, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
13198
13370
  return { $loc, token: "[]" };
13199
13371
  });
13200
13372
  var TypeLiteral$$ = [TypeLiteral$0, TypeLiteral$1, TypeLiteral$2, TypeLiteral$3];
@@ -13213,16 +13385,16 @@ ${input.slice(result.pos)}
13213
13385
  var InlineInterfacePropertyDelimiter$1 = $T($S($Y($S($C(IndentedFurther, $E(_)), InlineBasicInterfaceProperty)), InsertComma), function(value) {
13214
13386
  return value[1];
13215
13387
  });
13216
- var InlineInterfacePropertyDelimiter$2 = $Y($S(__, $C($EXPECT($L13, 'InlineInterfacePropertyDelimiter ":"'), $EXPECT($L115, 'InlineInterfacePropertyDelimiter ")"'), $EXPECT($L37, 'InlineInterfacePropertyDelimiter "]"'), $EXPECT($L28, 'InlineInterfacePropertyDelimiter "}"'))));
13388
+ var InlineInterfacePropertyDelimiter$2 = $Y($S(__, $C($EXPECT($L14, 'InlineInterfacePropertyDelimiter ":"'), $EXPECT($L116, 'InlineInterfacePropertyDelimiter ")"'), $EXPECT($L38, 'InlineInterfacePropertyDelimiter "]"'), $EXPECT($L29, 'InlineInterfacePropertyDelimiter "}"'))));
13217
13389
  var InlineInterfacePropertyDelimiter$3 = $Y(EOS);
13218
13390
  var InlineInterfacePropertyDelimiter$$ = [InlineInterfacePropertyDelimiter$0, InlineInterfacePropertyDelimiter$1, InlineInterfacePropertyDelimiter$2, InlineInterfacePropertyDelimiter$3];
13219
13391
  function InlineInterfacePropertyDelimiter(ctx, state) {
13220
13392
  return $EVENT_C(ctx, state, "InlineInterfacePropertyDelimiter", InlineInterfacePropertyDelimiter$$);
13221
13393
  }
13222
- var TypeBinaryOp$0 = $TV($EXPECT($L101, 'TypeBinaryOp "|"'), function($skip, $loc, $0, $1) {
13394
+ var TypeBinaryOp$0 = $TV($EXPECT($L102, 'TypeBinaryOp "|"'), function($skip, $loc, $0, $1) {
13223
13395
  return { $loc, token: "|" };
13224
13396
  });
13225
- var TypeBinaryOp$1 = $TV($EXPECT($L100, 'TypeBinaryOp "&"'), function($skip, $loc, $0, $1) {
13397
+ var TypeBinaryOp$1 = $TV($EXPECT($L101, 'TypeBinaryOp "&"'), function($skip, $loc, $0, $1) {
13226
13398
  return { $loc, token: "&" };
13227
13399
  });
13228
13400
  var TypeBinaryOp$$ = [TypeBinaryOp$0, TypeBinaryOp$1];
@@ -13239,7 +13411,7 @@ ${input.slice(result.pos)}
13239
13411
  function FunctionType(ctx, state) {
13240
13412
  return $EVENT(ctx, state, "FunctionType", FunctionType$0);
13241
13413
  }
13242
- var TypeArrowFunction$0 = $TV($C($EXPECT($L11, 'TypeArrowFunction "=>"'), $EXPECT($L12, 'TypeArrowFunction "\u21D2"'), $EXPECT($L26, 'TypeArrowFunction "->"'), $EXPECT($L27, 'TypeArrowFunction "\u2192"')), function($skip, $loc, $0, $1) {
13414
+ var TypeArrowFunction$0 = $TV($C($EXPECT($L12, 'TypeArrowFunction "=>"'), $EXPECT($L13, 'TypeArrowFunction "\u21D2"'), $EXPECT($L27, 'TypeArrowFunction "->"'), $EXPECT($L28, 'TypeArrowFunction "\u2192"')), function($skip, $loc, $0, $1) {
13243
13415
  return { $loc, token: "=>" };
13244
13416
  });
13245
13417
  function TypeArrowFunction(ctx, state) {
@@ -13277,11 +13449,11 @@ ${input.slice(result.pos)}
13277
13449
  function TypeParameters(ctx, state) {
13278
13450
  return $EVENT(ctx, state, "TypeParameters", TypeParameters$0);
13279
13451
  }
13280
- var TypeParameter$0 = $S(__, $E($S($EXPECT($L152, 'TypeParameter "const"'), $E(_))), Identifier, $E(TypeConstraint), $E(TypeInitializer), TypeParameterDelimiter);
13452
+ var TypeParameter$0 = $S(__, $E($S($EXPECT($L153, 'TypeParameter "const"'), $E(_))), Identifier, $E(TypeConstraint), $E(TypeInitializer), TypeParameterDelimiter);
13281
13453
  function TypeParameter(ctx, state) {
13282
13454
  return $EVENT(ctx, state, "TypeParameter", TypeParameter$0);
13283
13455
  }
13284
- var TypeConstraint$0 = $S(__, $EXPECT($L141, 'TypeConstraint "extends"'), NonIdContinue, Type);
13456
+ var TypeConstraint$0 = $S(__, $EXPECT($L142, 'TypeConstraint "extends"'), NonIdContinue, Type);
13285
13457
  function TypeConstraint(ctx, state) {
13286
13458
  return $EVENT(ctx, state, "TypeConstraint", TypeConstraint$0);
13287
13459
  }
@@ -13290,7 +13462,7 @@ ${input.slice(result.pos)}
13290
13462
  return $EVENT(ctx, state, "TypeInitializer", TypeInitializer$0);
13291
13463
  }
13292
13464
  var TypeParameterDelimiter$0 = $S($E(_), Comma);
13293
- var TypeParameterDelimiter$1 = $Y($S(__, $EXPECT($L36, 'TypeParameterDelimiter ">"')));
13465
+ var TypeParameterDelimiter$1 = $Y($S(__, $EXPECT($L37, 'TypeParameterDelimiter ">"')));
13294
13466
  var TypeParameterDelimiter$2 = $T($S($Y(EOS), InsertComma), function(value) {
13295
13467
  return value[1];
13296
13468
  });
@@ -13304,15 +13476,15 @@ ${input.slice(result.pos)}
13304
13476
  function ThisType(ctx, state) {
13305
13477
  return $EVENT(ctx, state, "ThisType", ThisType$0);
13306
13478
  }
13307
- var Shebang$0 = $S($R$0($EXPECT($R81, "Shebang /#![^\\r\\n]*/")), EOL);
13479
+ var Shebang$0 = $S($R$0($EXPECT($R82, "Shebang /#![^\\r\\n]*/")), EOL);
13308
13480
  function Shebang(ctx, state) {
13309
13481
  return $EVENT(ctx, state, "Shebang", Shebang$0);
13310
13482
  }
13311
- var CivetPrologue$0 = $T($S($EXPECT($R82, "CivetPrologue /[\\t ]*/"), DoubleQuote, CivetPrologueContent, DoubleQuote, SimpleStatementDelimiter, $EXPECT($R83, "CivetPrologue /[ \\t]*/"), $C(EOL, $Y(RestOfLine))), function(value) {
13483
+ var CivetPrologue$0 = $T($S($EXPECT($R83, "CivetPrologue /[\\t ]*/"), DoubleQuote, CivetPrologueContent, DoubleQuote, SimpleStatementDelimiter, $EXPECT($R84, "CivetPrologue /[ \\t]*/"), $C(EOL, $Y(RestOfLine))), function(value) {
13312
13484
  var content = value[2];
13313
13485
  return content;
13314
13486
  });
13315
- var CivetPrologue$1 = $T($S($EXPECT($R82, "CivetPrologue /[\\t ]*/"), SingleQuote, CivetPrologueContent, SingleQuote, SimpleStatementDelimiter, $EXPECT($R83, "CivetPrologue /[ \\t]*/"), $C(EOL, $Y(RestOfLine))), function(value) {
13487
+ var CivetPrologue$1 = $T($S($EXPECT($R83, "CivetPrologue /[\\t ]*/"), SingleQuote, CivetPrologueContent, SingleQuote, SimpleStatementDelimiter, $EXPECT($R84, "CivetPrologue /[ \\t]*/"), $C(EOL, $Y(RestOfLine))), function(value) {
13316
13488
  var content = value[2];
13317
13489
  return content;
13318
13490
  });
@@ -13320,7 +13492,7 @@ ${input.slice(result.pos)}
13320
13492
  function CivetPrologue(ctx, state) {
13321
13493
  return $EVENT_C(ctx, state, "CivetPrologue", CivetPrologue$$);
13322
13494
  }
13323
- var CivetPrologueContent$0 = $TS($S($EXPECT($L213, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($R84, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
13495
+ var CivetPrologueContent$0 = $TS($S($EXPECT($L214, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($R85, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
13324
13496
  var options = $3;
13325
13497
  return {
13326
13498
  type: "CivetPrologue",
@@ -13331,7 +13503,7 @@ ${input.slice(result.pos)}
13331
13503
  function CivetPrologueContent(ctx, state) {
13332
13504
  return $EVENT(ctx, state, "CivetPrologueContent", CivetPrologueContent$0);
13333
13505
  }
13334
- var CivetOption$0 = $TR($EXPECT($R85, "CivetOption /\\s+([+-]?)([a-zA-Z0-9-]+)(\\s*=\\s*([a-zA-Z0-9.+-]*))?/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
13506
+ var CivetOption$0 = $TR($EXPECT($R86, "CivetOption /\\s+([+-]?)([a-zA-Z0-9-]+)(\\s*=\\s*([a-zA-Z0-9.+-]*))?/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
13335
13507
  const optionName = $2.replace(/-+([a-z]?)/g, (_2, l) => {
13336
13508
  if (l)
13337
13509
  return l.toUpperCase();
@@ -13348,11 +13520,11 @@ ${input.slice(result.pos)}
13348
13520
  function CivetOption(ctx, state) {
13349
13521
  return $EVENT(ctx, state, "CivetOption", CivetOption$0);
13350
13522
  }
13351
- var UnknownPrologue$0 = $S($R$0($EXPECT($R82, "UnknownPrologue /[\\t ]*/")), StringLiteral, $TEXT(SimpleStatementDelimiter), EOS);
13523
+ var UnknownPrologue$0 = $S($R$0($EXPECT($R83, "UnknownPrologue /[\\t ]*/")), StringLiteral, $TEXT(SimpleStatementDelimiter), EOS);
13352
13524
  function UnknownPrologue(ctx, state) {
13353
13525
  return $EVENT(ctx, state, "UnknownPrologue", UnknownPrologue$0);
13354
13526
  }
13355
- var TripleSlashDirective$0 = $S($R$0($EXPECT($R86, "TripleSlashDirective /\\/\\/\\/[^\\r\\n]*/")), $E(EOS));
13527
+ var TripleSlashDirective$0 = $S($R$0($EXPECT($R87, "TripleSlashDirective /\\/\\/\\/[^\\r\\n]*/")), $E(EOS));
13356
13528
  function TripleSlashDirective(ctx, state) {
13357
13529
  return $EVENT(ctx, state, "TripleSlashDirective", TripleSlashDirective$0);
13358
13530
  }
@@ -13366,13 +13538,13 @@ ${input.slice(result.pos)}
13366
13538
  function PrologueString(ctx, state) {
13367
13539
  return $EVENT_C(ctx, state, "PrologueString", PrologueString$$);
13368
13540
  }
13369
- var EOS$0 = $T($S($EXPECT($R87, "EOS /(?=[ \\t\\r\\n\\/#]|$)/"), $P(RestOfLine)), function(value) {
13541
+ var EOS$0 = $T($S($EXPECT($R88, "EOS /(?=[ \\t\\r\\n\\/#]|$)/"), $P(RestOfLine)), function(value) {
13370
13542
  return value[1];
13371
13543
  });
13372
13544
  function EOS(ctx, state) {
13373
13545
  return $EVENT(ctx, state, "EOS", EOS$0);
13374
13546
  }
13375
- var EOL$0 = $TR($EXPECT($R88, "EOL /\\r\\n|\\n|\\r|$/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
13547
+ var EOL$0 = $TR($EXPECT($R89, "EOL /\\r\\n|\\n|\\r|$/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
13376
13548
  return { $loc, token: $0 };
13377
13549
  });
13378
13550
  function EOL(ctx, state) {
@@ -13921,7 +14093,7 @@ ${input.slice(result.pos)}
13921
14093
  function Init(ctx, state) {
13922
14094
  return $EVENT(ctx, state, "Init", Init$0);
13923
14095
  }
13924
- var Indent$0 = $TR($EXPECT($R83, "Indent /[ \\t]*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
14096
+ var Indent$0 = $TR($EXPECT($R84, "Indent /[ \\t]*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
13925
14097
  const level = getIndentLevel($0, module.config.tab);
13926
14098
  return {
13927
14099
  $loc,