@env-spec/parser 0.3.2 → 0.3.3

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/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
- import { __name, ParsedEnvSpecCommentBlock, ParsedEnvSpecDivider, ParsedEnvSpecComment, ParsedEnvSpecBlankLine, ParsedEnvSpecDecoratorComment, ParsedEnvSpecConfigItem, ParsedEnvSpecFile, ParsedEnvSpecDecorator, ParsedEnvSpecFunctionCall, ParsedEnvSpecKeyValuePair, ParsedEnvSpecFunctionArgs, ParsedEnvSpecStaticValue } from './chunk-N4D6RSUR.mjs';
2
- export { ParsedEnvSpecBlankLine, ParsedEnvSpecComment, ParsedEnvSpecCommentBlock, ParsedEnvSpecConfigItem, ParsedEnvSpecDecorator, ParsedEnvSpecDecoratorComment, ParsedEnvSpecDivider, ParsedEnvSpecFile, ParsedEnvSpecFunctionArgs, ParsedEnvSpecFunctionCall, ParsedEnvSpecKeyValuePair, ParsedEnvSpecStaticValue, expand } from './chunk-N4D6RSUR.mjs';
1
+ import { __name, ParsedEnvSpecCommentBlock, ParsedEnvSpecDivider, ParsedEnvSpecComment, ParsedEnvSpecBlankLine, ParsedEnvSpecDecoratorComment, ParsedEnvSpecConfigItem, ParsedEnvSpecFile, ParsedEnvSpecDecorator, ParsedEnvSpecFunctionCall, ParsedEnvSpecKeyValuePair, ParsedEnvSpecFunctionArgs, ParsedEnvSpecStaticValue } from './chunk-5ODZC3GU.mjs';
2
+ export { ParsedEnvSpecBlankLine, ParsedEnvSpecComment, ParsedEnvSpecCommentBlock, ParsedEnvSpecConfigItem, ParsedEnvSpecDecorator, ParsedEnvSpecDecoratorComment, ParsedEnvSpecDivider, ParsedEnvSpecFile, ParsedEnvSpecFunctionArgs, ParsedEnvSpecFunctionCall, ParsedEnvSpecKeyValuePair, ParsedEnvSpecStaticValue, expand } from './chunk-5ODZC3GU.mjs';
3
3
 
4
4
  // src/updater.ts
5
5
  function ensureHeader(file, newHeaderContents) {
@@ -259,22 +259,24 @@ function peg$parse(input, options) {
259
259
  const peg$r0 = /^[a-zA-Z_]/;
260
260
  const peg$r1 = /^[a-zA-Z0-9_.\-]/;
261
261
  const peg$r2 = /^[^\n]/;
262
- const peg$r3 = /^[a-zA-Z]/;
263
- const peg$r4 = /^[^ \t\n=()#@]/;
264
- const peg$r5 = /^[^ \n,)]/;
265
- const peg$r6 = /^[ \t]/;
266
- const peg$r7 = /^[a-zA-Z0-9_]/;
267
- const peg$r8 = /^[ \t\n]/;
268
- const peg$r9 = /^[\-=*#]/;
269
- const peg$r10 = /^['"`]/;
270
- const peg$r11 = /^[^#\n]/;
271
- const peg$r12 = /^[^# \n]/;
272
- const peg$r13 = /^["]/;
273
- const peg$r14 = /^[^"\n]/;
274
- const peg$r15 = /^[']/;
275
- const peg$r16 = /^[^'\n]/;
276
- const peg$r17 = /^[`]/;
277
- const peg$r18 = /^[^`\n]/;
262
+ const peg$r3 = /^[^ \t@#\n]/;
263
+ const peg$r4 = /^[^ \t@\n]/;
264
+ const peg$r5 = /^[a-zA-Z]/;
265
+ const peg$r6 = /^[^ \t\n=()#@]/;
266
+ const peg$r7 = /^[^ \n,)]/;
267
+ const peg$r8 = /^[ \t]/;
268
+ const peg$r9 = /^[a-zA-Z0-9_]/;
269
+ const peg$r10 = /^[ \t\n]/;
270
+ const peg$r11 = /^[\-=*#]/;
271
+ const peg$r12 = /^['"`]/;
272
+ const peg$r13 = /^[^#\n]/;
273
+ const peg$r14 = /^[^# \n]/;
274
+ const peg$r15 = /^["]/;
275
+ const peg$r16 = /^[^"\n]/;
276
+ const peg$r17 = /^[']/;
277
+ const peg$r18 = /^[^'\n]/;
278
+ const peg$r19 = /^[`]/;
279
+ const peg$r20 = /^[^`\n]/;
278
280
  const peg$e0 = peg$literalExpectation("\n", false);
279
281
  const peg$e1 = peg$literalExpectation("export ", false);
280
282
  const peg$e2 = peg$literalExpectation("=", false);
@@ -283,33 +285,35 @@ function peg$parse(input, options) {
283
285
  const peg$e5 = peg$literalExpectation("#", false);
284
286
  const peg$e6 = peg$literalExpectation("@", false);
285
287
  const peg$e7 = peg$classExpectation(["\n"], true, false, false);
286
- const peg$e8 = peg$classExpectation([["a", "z"], ["A", "Z"]], false, false, false);
287
- const peg$e9 = peg$classExpectation([" ", " ", "\n", "=", "(", ")", "#", "@"], true, false, false);
288
- const peg$e10 = peg$literalExpectation("(", false);
289
- const peg$e11 = peg$literalExpectation(",", false);
290
- const peg$e12 = peg$literalExpectation(")", false);
291
- const peg$e13 = peg$classExpectation([" ", "\n", ",", ")"], true, false, false);
292
- const peg$e14 = peg$classExpectation([" ", " "], false, false, false);
293
- const peg$e15 = peg$classExpectation([["a", "z"], ["A", "Z"], ["0", "9"], "_"], false, false, false);
294
- const peg$e16 = peg$classExpectation([" ", " ", "\n"], false, false, false);
295
- const peg$e17 = peg$classExpectation(["-", "=", "*", "#"], false, false, false);
296
- const peg$e18 = peg$classExpectation(["'", '"', "`"], false, false, false);
297
- const peg$e19 = peg$classExpectation(["#", "\n"], true, false, false);
298
- const peg$e20 = peg$classExpectation(["#", " ", "\n"], true, false, false);
299
- const peg$e21 = peg$classExpectation(['"'], false, false, false);
300
- const peg$e22 = peg$literalExpectation('\\"', false);
301
- const peg$e23 = peg$classExpectation(['"', "\n"], true, false, false);
302
- const peg$e24 = peg$classExpectation(["'"], false, false, false);
303
- const peg$e25 = peg$literalExpectation("\\'", false);
304
- const peg$e26 = peg$classExpectation(["'", "\n"], true, false, false);
305
- const peg$e27 = peg$classExpectation(["`"], false, false, false);
306
- const peg$e28 = peg$literalExpectation("\\`", false);
307
- const peg$e29 = peg$classExpectation(["`", "\n"], true, false, false);
308
- const peg$e30 = peg$literalExpectation('"""', false);
309
- const peg$e31 = peg$literalExpectation('\\"""', false);
310
- const peg$e32 = peg$literalExpectation("```", false);
311
- const peg$e33 = peg$literalExpectation("\\```", false);
312
- const peg$e34 = peg$anyExpectation();
288
+ const peg$e8 = peg$classExpectation([" ", " ", "@", "#", "\n"], true, false, false);
289
+ const peg$e9 = peg$classExpectation([" ", " ", "@", "\n"], true, false, false);
290
+ const peg$e10 = peg$classExpectation([["a", "z"], ["A", "Z"]], false, false, false);
291
+ const peg$e11 = peg$classExpectation([" ", " ", "\n", "=", "(", ")", "#", "@"], true, false, false);
292
+ const peg$e12 = peg$literalExpectation("(", false);
293
+ const peg$e13 = peg$literalExpectation(",", false);
294
+ const peg$e14 = peg$literalExpectation(")", false);
295
+ const peg$e15 = peg$classExpectation([" ", "\n", ",", ")"], true, false, false);
296
+ const peg$e16 = peg$classExpectation([" ", " "], false, false, false);
297
+ const peg$e17 = peg$classExpectation([["a", "z"], ["A", "Z"], ["0", "9"], "_"], false, false, false);
298
+ const peg$e18 = peg$classExpectation([" ", " ", "\n"], false, false, false);
299
+ const peg$e19 = peg$classExpectation(["-", "=", "*", "#"], false, false, false);
300
+ const peg$e20 = peg$classExpectation(["'", '"', "`"], false, false, false);
301
+ const peg$e21 = peg$classExpectation(["#", "\n"], true, false, false);
302
+ const peg$e22 = peg$classExpectation(["#", " ", "\n"], true, false, false);
303
+ const peg$e23 = peg$classExpectation(['"'], false, false, false);
304
+ const peg$e24 = peg$literalExpectation('\\"', false);
305
+ const peg$e25 = peg$classExpectation(['"', "\n"], true, false, false);
306
+ const peg$e26 = peg$classExpectation(["'"], false, false, false);
307
+ const peg$e27 = peg$literalExpectation("\\'", false);
308
+ const peg$e28 = peg$classExpectation(["'", "\n"], true, false, false);
309
+ const peg$e29 = peg$classExpectation(["`"], false, false, false);
310
+ const peg$e30 = peg$literalExpectation("\\`", false);
311
+ const peg$e31 = peg$classExpectation(["`", "\n"], true, false, false);
312
+ const peg$e32 = peg$literalExpectation('"""', false);
313
+ const peg$e33 = peg$literalExpectation('\\"""', false);
314
+ const peg$e34 = peg$literalExpectation("```", false);
315
+ const peg$e35 = peg$literalExpectation("\\```", false);
316
+ const peg$e36 = peg$anyExpectation();
313
317
  function peg$f0() {
314
318
  return new ParsedEnvSpecBlankLine({ _location: location() });
315
319
  }
@@ -344,16 +348,15 @@ function peg$parse(input, options) {
344
348
  });
345
349
  }
346
350
  __name(peg$f4, "peg$f4");
347
- function peg$f5(leadingSpace, first, rest, trailingText) {
348
- const allDecorators = [first, ...rest];
349
- let postComment;
350
- if (trailingText) {
351
- if (trailingText.startsWith("#")) {
352
- postComment = trailingText;
351
+ function peg$f5(leadingSpace, first, rest, postComment) {
352
+ const allDecorators = [first];
353
+ let lastDecorator = first;
354
+ for (const item of rest) {
355
+ if (item instanceof ParsedEnvSpecDecorator) {
356
+ allDecorators.push(item);
357
+ lastDecorator = item;
353
358
  } else {
354
- const lastDec = allDecorators[allDecorators.length - 1];
355
- lastDec.data.warning = `Unexpected trailing text after @${lastDec.name}`;
356
- postComment = trailingText;
359
+ lastDecorator.data.strayText = item;
357
360
  }
358
361
  }
359
362
  return new ParsedEnvSpecDecoratorComment({
@@ -364,7 +367,11 @@ function peg$parse(input, options) {
364
367
  });
365
368
  }
366
369
  __name(peg$f5, "peg$f5");
367
- function peg$f6(name, val) {
370
+ function peg$f6(first, rest) {
371
+ return [first, ...rest].join(" ");
372
+ }
373
+ __name(peg$f6, "peg$f6");
374
+ function peg$f7(name, val) {
368
375
  return new ParsedEnvSpecDecorator({
369
376
  name,
370
377
  value: Array.isArray(val) ? val[1] : val,
@@ -372,71 +379,67 @@ function peg$parse(input, options) {
372
379
  _location: location()
373
380
  });
374
381
  }
375
- __name(peg$f6, "peg$f6");
376
- function peg$f7(name, args) {
382
+ __name(peg$f7, "peg$f7");
383
+ function peg$f8(name, args) {
377
384
  return new ParsedEnvSpecFunctionCall({
378
385
  name,
379
386
  args,
380
387
  _location: location()
381
388
  });
382
389
  }
383
- __name(peg$f7, "peg$f7");
384
- function peg$f8(key, val) {
390
+ __name(peg$f8, "peg$f8");
391
+ function peg$f9(key, val) {
385
392
  return new ParsedEnvSpecKeyValuePair({ key, val });
386
393
  }
387
- __name(peg$f8, "peg$f8");
388
- function peg$f9(values) {
394
+ __name(peg$f9, "peg$f9");
395
+ function peg$f10(values) {
389
396
  return new ParsedEnvSpecFunctionArgs({
390
397
  values: values || [],
391
398
  _location: location()
392
399
  });
393
400
  }
394
- __name(peg$f9, "peg$f9");
395
- function peg$f10() {
401
+ __name(peg$f10, "peg$f10");
402
+ function peg$f11() {
396
403
  return new ParsedEnvSpecStaticValue({ rawValue: text(), _location: location() });
397
404
  }
398
- __name(peg$f10, "peg$f10");
399
- function peg$f11(name, args) {
405
+ __name(peg$f11, "peg$f11");
406
+ function peg$f12(name, args) {
400
407
  return new ParsedEnvSpecFunctionCall({
401
408
  name,
402
409
  args,
403
410
  _location: location()
404
411
  });
405
412
  }
406
- __name(peg$f11, "peg$f11");
407
- function peg$f12(key, val) {
413
+ __name(peg$f12, "peg$f12");
414
+ function peg$f13(key, val) {
408
415
  return new ParsedEnvSpecKeyValuePair({ key, val });
409
416
  }
410
- __name(peg$f12, "peg$f12");
411
- function peg$f13(values) {
417
+ __name(peg$f13, "peg$f13");
418
+ function peg$f14(values) {
412
419
  return new ParsedEnvSpecFunctionArgs({
413
420
  values: values || [],
414
421
  _location: location()
415
422
  });
416
423
  }
417
- __name(peg$f13, "peg$f13");
418
- function peg$f14() {
424
+ __name(peg$f14, "peg$f14");
425
+ function peg$f15() {
419
426
  return new ParsedEnvSpecStaticValue({ rawValue: text(), _location: location() });
420
427
  }
421
- __name(peg$f14, "peg$f14");
422
- function peg$f15(leadingSpace, contents) {
428
+ __name(peg$f15, "peg$f15");
429
+ function peg$f16(leadingSpace, contents) {
423
430
  return new ParsedEnvSpecDivider({
424
431
  contents,
425
432
  leadingSpace,
426
433
  _location: location()
427
434
  });
428
435
  }
429
- __name(peg$f15, "peg$f15");
430
- function peg$f16() {
431
- return new ParsedEnvSpecStaticValue({ rawValue: text(), _location: location() });
432
- }
433
436
  __name(peg$f16, "peg$f16");
434
437
  function peg$f17() {
435
438
  return new ParsedEnvSpecStaticValue({ rawValue: text(), _location: location() });
436
439
  }
437
440
  __name(peg$f17, "peg$f17");
438
- function peg$f18(quote) {
439
- return new ParsedEnvSpecStaticValue({ quote, rawValue: text(), _location: location() });
441
+ function peg$f18() {
442
+ return new ParsedEnvSpecStaticValue({ rawValue: text(), _location: location() });
440
443
  }
441
444
  __name(peg$f18, "peg$f18");
442
445
  function peg$f19(quote) {
@@ -448,7 +451,7 @@ function peg$parse(input, options) {
448
451
  }
449
452
  __name(peg$f20, "peg$f20");
450
453
  function peg$f21(quote) {
451
- return new ParsedEnvSpecStaticValue({ quote, isMultiLine: true, rawValue: text(), _location: location() });
454
+ return new ParsedEnvSpecStaticValue({ quote, rawValue: text(), _location: location() });
452
455
  }
453
456
  __name(peg$f21, "peg$f21");
454
457
  function peg$f22(quote) {
@@ -463,6 +466,10 @@ function peg$parse(input, options) {
463
466
  return new ParsedEnvSpecStaticValue({ quote, isMultiLine: true, rawValue: text(), _location: location() });
464
467
  }
465
468
  __name(peg$f24, "peg$f24");
469
+ function peg$f25(quote) {
470
+ return new ParsedEnvSpecStaticValue({ quote, isMultiLine: true, rawValue: text(), _location: location() });
471
+ }
472
+ __name(peg$f25, "peg$f25");
466
473
  let peg$currPos = options.peg$currPos | 0;
467
474
  let peg$savedPos = peg$currPos;
468
475
  const peg$posDetailsCache = [{ line: 1, column: 1 }];
@@ -1034,7 +1041,7 @@ function peg$parse(input, options) {
1034
1041
  }
1035
1042
  __name(peg$parseComment, "peg$parseComment");
1036
1043
  function peg$parseDecoratorComment() {
1037
- let s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10;
1044
+ let s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11;
1038
1045
  s0 = peg$currPos;
1039
1046
  if (input.charCodeAt(peg$currPos) === 35) {
1040
1047
  s1 = peg$c3;
@@ -1055,7 +1062,7 @@ function peg$parse(input, options) {
1055
1062
  s5 = peg$currPos;
1056
1063
  s6 = peg$parse__();
1057
1064
  if (s6 !== peg$FAILED) {
1058
- s7 = peg$parseDecorator();
1065
+ s7 = peg$parseDecoratorOrText();
1059
1066
  if (s7 !== peg$FAILED) {
1060
1067
  s5 = s7;
1061
1068
  } else {
@@ -1071,7 +1078,7 @@ function peg$parse(input, options) {
1071
1078
  s5 = peg$currPos;
1072
1079
  s6 = peg$parse__();
1073
1080
  if (s6 !== peg$FAILED) {
1074
- s7 = peg$parseDecorator();
1081
+ s7 = peg$parseDecoratorOrText();
1075
1082
  if (s7 !== peg$FAILED) {
1076
1083
  s5 = s7;
1077
1084
  } else {
@@ -1084,121 +1091,256 @@ function peg$parse(input, options) {
1084
1091
  }
1085
1092
  }
1086
1093
  s5 = peg$currPos;
1087
- s6 = peg$parse__();
1088
- if (s6 !== peg$FAILED) {
1089
- s7 = peg$currPos;
1090
- s8 = [];
1091
- s9 = input.charAt(peg$currPos);
1092
- if (peg$r2.test(s9)) {
1094
+ s6 = peg$parse_();
1095
+ s7 = peg$currPos;
1096
+ s8 = peg$currPos;
1097
+ if (input.charCodeAt(peg$currPos) === 35) {
1098
+ s9 = peg$c3;
1099
+ peg$currPos++;
1100
+ } else {
1101
+ s9 = peg$FAILED;
1102
+ if (peg$silentFails === 0) {
1103
+ peg$fail(peg$e5);
1104
+ }
1105
+ }
1106
+ if (s9 !== peg$FAILED) {
1107
+ s10 = [];
1108
+ s11 = input.charAt(peg$currPos);
1109
+ if (peg$r2.test(s11)) {
1093
1110
  peg$currPos++;
1094
1111
  } else {
1095
- s9 = peg$FAILED;
1112
+ s11 = peg$FAILED;
1096
1113
  if (peg$silentFails === 0) {
1097
1114
  peg$fail(peg$e7);
1098
1115
  }
1099
1116
  }
1100
- if (s9 !== peg$FAILED) {
1101
- while (s9 !== peg$FAILED) {
1102
- s8.push(s9);
1103
- s9 = input.charAt(peg$currPos);
1104
- if (peg$r2.test(s9)) {
1105
- peg$currPos++;
1106
- } else {
1107
- s9 = peg$FAILED;
1108
- if (peg$silentFails === 0) {
1109
- peg$fail(peg$e7);
1110
- }
1117
+ while (s11 !== peg$FAILED) {
1118
+ s10.push(s11);
1119
+ s11 = input.charAt(peg$currPos);
1120
+ if (peg$r2.test(s11)) {
1121
+ peg$currPos++;
1122
+ } else {
1123
+ s11 = peg$FAILED;
1124
+ if (peg$silentFails === 0) {
1125
+ peg$fail(peg$e7);
1111
1126
  }
1112
1127
  }
1113
- } else {
1114
- s8 = peg$FAILED;
1115
- }
1116
- if (s8 !== peg$FAILED) {
1117
- s7 = input.substring(s7, peg$currPos);
1118
- } else {
1119
- s7 = s8;
1120
- }
1121
- if (s7 !== peg$FAILED) {
1122
- s5 = s7;
1123
- } else {
1124
- peg$currPos = s5;
1125
- s5 = peg$FAILED;
1126
1128
  }
1129
+ s9 = [s9, s10];
1130
+ s8 = s9;
1131
+ } else {
1132
+ peg$currPos = s8;
1133
+ s8 = peg$FAILED;
1134
+ }
1135
+ if (s8 !== peg$FAILED) {
1136
+ s7 = input.substring(s7, peg$currPos);
1137
+ } else {
1138
+ s7 = s8;
1139
+ }
1140
+ if (s7 !== peg$FAILED) {
1141
+ s5 = s7;
1127
1142
  } else {
1128
1143
  peg$currPos = s5;
1129
1144
  s5 = peg$FAILED;
1130
1145
  }
1131
1146
  if (s5 === peg$FAILED) {
1147
+ s5 = null;
1148
+ }
1149
+ s6 = peg$parse_();
1150
+ peg$savedPos = s0;
1151
+ s0 = peg$f5(s2, s3, s4, s5);
1152
+ } else {
1153
+ peg$currPos = s0;
1154
+ s0 = peg$FAILED;
1155
+ }
1156
+ } else {
1157
+ peg$currPos = s0;
1158
+ s0 = peg$FAILED;
1159
+ }
1160
+ return s0;
1161
+ }
1162
+ __name(peg$parseDecoratorComment, "peg$parseDecoratorComment");
1163
+ function peg$parseDecoratorOrText() {
1164
+ let s0, s1, s2, s3, s4, s5, s6, s7, s8, s9;
1165
+ s0 = peg$parseDecorator();
1166
+ if (s0 === peg$FAILED) {
1167
+ s0 = peg$currPos;
1168
+ s1 = peg$currPos;
1169
+ s2 = peg$currPos;
1170
+ s3 = input.charAt(peg$currPos);
1171
+ if (peg$r3.test(s3)) {
1172
+ peg$currPos++;
1173
+ } else {
1174
+ s3 = peg$FAILED;
1175
+ if (peg$silentFails === 0) {
1176
+ peg$fail(peg$e8);
1177
+ }
1178
+ }
1179
+ if (s3 !== peg$FAILED) {
1180
+ s4 = [];
1181
+ s5 = input.charAt(peg$currPos);
1182
+ if (peg$r4.test(s5)) {
1183
+ peg$currPos++;
1184
+ } else {
1185
+ s5 = peg$FAILED;
1186
+ if (peg$silentFails === 0) {
1187
+ peg$fail(peg$e9);
1188
+ }
1189
+ }
1190
+ while (s5 !== peg$FAILED) {
1191
+ s4.push(s5);
1192
+ s5 = input.charAt(peg$currPos);
1193
+ if (peg$r4.test(s5)) {
1194
+ peg$currPos++;
1195
+ } else {
1196
+ s5 = peg$FAILED;
1197
+ if (peg$silentFails === 0) {
1198
+ peg$fail(peg$e9);
1199
+ }
1200
+ }
1201
+ }
1202
+ s3 = [s3, s4];
1203
+ s2 = s3;
1204
+ } else {
1205
+ peg$currPos = s2;
1206
+ s2 = peg$FAILED;
1207
+ }
1208
+ if (s2 !== peg$FAILED) {
1209
+ s1 = input.substring(s1, peg$currPos);
1210
+ } else {
1211
+ s1 = s2;
1212
+ }
1213
+ if (s1 !== peg$FAILED) {
1214
+ s2 = [];
1215
+ s3 = peg$currPos;
1216
+ s4 = peg$parse__();
1217
+ if (s4 !== peg$FAILED) {
1132
1218
  s5 = peg$currPos;
1133
1219
  s6 = peg$currPos;
1134
- s7 = peg$currPos;
1135
- if (input.charCodeAt(peg$currPos) === 35) {
1136
- s8 = peg$c3;
1220
+ s7 = input.charAt(peg$currPos);
1221
+ if (peg$r3.test(s7)) {
1137
1222
  peg$currPos++;
1138
1223
  } else {
1139
- s8 = peg$FAILED;
1224
+ s7 = peg$FAILED;
1140
1225
  if (peg$silentFails === 0) {
1141
- peg$fail(peg$e5);
1226
+ peg$fail(peg$e8);
1142
1227
  }
1143
1228
  }
1144
- if (s8 !== peg$FAILED) {
1145
- s9 = [];
1146
- s10 = input.charAt(peg$currPos);
1147
- if (peg$r2.test(s10)) {
1229
+ if (s7 !== peg$FAILED) {
1230
+ s8 = [];
1231
+ s9 = input.charAt(peg$currPos);
1232
+ if (peg$r4.test(s9)) {
1148
1233
  peg$currPos++;
1149
1234
  } else {
1150
- s10 = peg$FAILED;
1235
+ s9 = peg$FAILED;
1151
1236
  if (peg$silentFails === 0) {
1152
- peg$fail(peg$e7);
1237
+ peg$fail(peg$e9);
1153
1238
  }
1154
1239
  }
1155
- while (s10 !== peg$FAILED) {
1156
- s9.push(s10);
1157
- s10 = input.charAt(peg$currPos);
1158
- if (peg$r2.test(s10)) {
1240
+ while (s9 !== peg$FAILED) {
1241
+ s8.push(s9);
1242
+ s9 = input.charAt(peg$currPos);
1243
+ if (peg$r4.test(s9)) {
1159
1244
  peg$currPos++;
1160
1245
  } else {
1161
- s10 = peg$FAILED;
1246
+ s9 = peg$FAILED;
1162
1247
  if (peg$silentFails === 0) {
1163
- peg$fail(peg$e7);
1248
+ peg$fail(peg$e9);
1164
1249
  }
1165
1250
  }
1166
1251
  }
1167
- s8 = [s8, s9];
1168
- s7 = s8;
1169
- } else {
1170
- peg$currPos = s7;
1171
- s7 = peg$FAILED;
1172
- }
1173
- if (s7 !== peg$FAILED) {
1174
- s6 = input.substring(s6, peg$currPos);
1175
- } else {
1252
+ s7 = [s7, s8];
1176
1253
  s6 = s7;
1254
+ } else {
1255
+ peg$currPos = s6;
1256
+ s6 = peg$FAILED;
1177
1257
  }
1178
1258
  if (s6 !== peg$FAILED) {
1259
+ s5 = input.substring(s5, peg$currPos);
1260
+ } else {
1179
1261
  s5 = s6;
1262
+ }
1263
+ if (s5 !== peg$FAILED) {
1264
+ s3 = s5;
1180
1265
  } else {
1181
- peg$currPos = s5;
1182
- s5 = peg$FAILED;
1266
+ peg$currPos = s3;
1267
+ s3 = peg$FAILED;
1183
1268
  }
1269
+ } else {
1270
+ peg$currPos = s3;
1271
+ s3 = peg$FAILED;
1184
1272
  }
1185
- if (s5 === peg$FAILED) {
1186
- s5 = null;
1273
+ while (s3 !== peg$FAILED) {
1274
+ s2.push(s3);
1275
+ s3 = peg$currPos;
1276
+ s4 = peg$parse__();
1277
+ if (s4 !== peg$FAILED) {
1278
+ s5 = peg$currPos;
1279
+ s6 = peg$currPos;
1280
+ s7 = input.charAt(peg$currPos);
1281
+ if (peg$r3.test(s7)) {
1282
+ peg$currPos++;
1283
+ } else {
1284
+ s7 = peg$FAILED;
1285
+ if (peg$silentFails === 0) {
1286
+ peg$fail(peg$e8);
1287
+ }
1288
+ }
1289
+ if (s7 !== peg$FAILED) {
1290
+ s8 = [];
1291
+ s9 = input.charAt(peg$currPos);
1292
+ if (peg$r4.test(s9)) {
1293
+ peg$currPos++;
1294
+ } else {
1295
+ s9 = peg$FAILED;
1296
+ if (peg$silentFails === 0) {
1297
+ peg$fail(peg$e9);
1298
+ }
1299
+ }
1300
+ while (s9 !== peg$FAILED) {
1301
+ s8.push(s9);
1302
+ s9 = input.charAt(peg$currPos);
1303
+ if (peg$r4.test(s9)) {
1304
+ peg$currPos++;
1305
+ } else {
1306
+ s9 = peg$FAILED;
1307
+ if (peg$silentFails === 0) {
1308
+ peg$fail(peg$e9);
1309
+ }
1310
+ }
1311
+ }
1312
+ s7 = [s7, s8];
1313
+ s6 = s7;
1314
+ } else {
1315
+ peg$currPos = s6;
1316
+ s6 = peg$FAILED;
1317
+ }
1318
+ if (s6 !== peg$FAILED) {
1319
+ s5 = input.substring(s5, peg$currPos);
1320
+ } else {
1321
+ s5 = s6;
1322
+ }
1323
+ if (s5 !== peg$FAILED) {
1324
+ s3 = s5;
1325
+ } else {
1326
+ peg$currPos = s3;
1327
+ s3 = peg$FAILED;
1328
+ }
1329
+ } else {
1330
+ peg$currPos = s3;
1331
+ s3 = peg$FAILED;
1332
+ }
1187
1333
  }
1188
- s6 = peg$parse_();
1189
1334
  peg$savedPos = s0;
1190
- s0 = peg$f5(s2, s3, s4, s5);
1335
+ s0 = peg$f6(s1, s2);
1191
1336
  } else {
1192
1337
  peg$currPos = s0;
1193
1338
  s0 = peg$FAILED;
1194
1339
  }
1195
- } else {
1196
- peg$currPos = s0;
1197
- s0 = peg$FAILED;
1198
1340
  }
1199
1341
  return s0;
1200
1342
  }
1201
- __name(peg$parseDecoratorComment, "peg$parseDecoratorComment");
1343
+ __name(peg$parseDecoratorOrText, "peg$parseDecoratorOrText");
1202
1344
  function peg$parseDecorator() {
1203
1345
  let s0, s1, s2, s3, s4, s5;
1204
1346
  s0 = peg$currPos;
@@ -1244,7 +1386,7 @@ function peg$parse(input, options) {
1244
1386
  s3 = null;
1245
1387
  }
1246
1388
  peg$savedPos = s0;
1247
- s0 = peg$f6(s2, s3);
1389
+ s0 = peg$f7(s2, s3);
1248
1390
  } else {
1249
1391
  peg$currPos = s0;
1250
1392
  s0 = peg$FAILED;
@@ -1261,34 +1403,34 @@ function peg$parse(input, options) {
1261
1403
  s0 = peg$currPos;
1262
1404
  s1 = peg$currPos;
1263
1405
  s2 = input.charAt(peg$currPos);
1264
- if (peg$r3.test(s2)) {
1406
+ if (peg$r5.test(s2)) {
1265
1407
  peg$currPos++;
1266
1408
  } else {
1267
1409
  s2 = peg$FAILED;
1268
1410
  if (peg$silentFails === 0) {
1269
- peg$fail(peg$e8);
1411
+ peg$fail(peg$e10);
1270
1412
  }
1271
1413
  }
1272
1414
  if (s2 !== peg$FAILED) {
1273
1415
  s3 = [];
1274
1416
  s4 = input.charAt(peg$currPos);
1275
- if (peg$r4.test(s4)) {
1417
+ if (peg$r6.test(s4)) {
1276
1418
  peg$currPos++;
1277
1419
  } else {
1278
1420
  s4 = peg$FAILED;
1279
1421
  if (peg$silentFails === 0) {
1280
- peg$fail(peg$e9);
1422
+ peg$fail(peg$e11);
1281
1423
  }
1282
1424
  }
1283
1425
  while (s4 !== peg$FAILED) {
1284
1426
  s3.push(s4);
1285
1427
  s4 = input.charAt(peg$currPos);
1286
- if (peg$r4.test(s4)) {
1428
+ if (peg$r6.test(s4)) {
1287
1429
  peg$currPos++;
1288
1430
  } else {
1289
1431
  s4 = peg$FAILED;
1290
1432
  if (peg$silentFails === 0) {
1291
- peg$fail(peg$e9);
1433
+ peg$fail(peg$e11);
1292
1434
  }
1293
1435
  }
1294
1436
  }
@@ -1326,7 +1468,7 @@ function peg$parse(input, options) {
1326
1468
  s2 = peg$parseDecoratorFunctionArgs();
1327
1469
  if (s2 !== peg$FAILED) {
1328
1470
  peg$savedPos = s0;
1329
- s0 = peg$f7(s1, s2);
1471
+ s0 = peg$f8(s1, s2);
1330
1472
  } else {
1331
1473
  peg$currPos = s0;
1332
1474
  s0 = peg$FAILED;
@@ -1347,7 +1489,7 @@ function peg$parse(input, options) {
1347
1489
  } else {
1348
1490
  s1 = peg$FAILED;
1349
1491
  if (peg$silentFails === 0) {
1350
- peg$fail(peg$e10);
1492
+ peg$fail(peg$e12);
1351
1493
  }
1352
1494
  }
1353
1495
  if (s1 !== peg$FAILED) {
@@ -1370,7 +1512,7 @@ function peg$parse(input, options) {
1370
1512
  s8 = peg$parseDecoratorFunctionArgValue();
1371
1513
  if (s8 !== peg$FAILED) {
1372
1514
  peg$savedPos = s5;
1373
- s5 = peg$f8(s6, s8);
1515
+ s5 = peg$f9(s6, s8);
1374
1516
  } else {
1375
1517
  peg$currPos = s5;
1376
1518
  s5 = peg$FAILED;
@@ -1397,7 +1539,7 @@ function peg$parse(input, options) {
1397
1539
  } else {
1398
1540
  s8 = peg$FAILED;
1399
1541
  if (peg$silentFails === 0) {
1400
- peg$fail(peg$e11);
1542
+ peg$fail(peg$e13);
1401
1543
  }
1402
1544
  }
1403
1545
  if (s8 !== peg$FAILED) {
@@ -1425,7 +1567,7 @@ function peg$parse(input, options) {
1425
1567
  s9 = peg$parseDecoratorFunctionArgValue();
1426
1568
  if (s9 !== peg$FAILED) {
1427
1569
  peg$savedPos = s6;
1428
- s6 = peg$f8(s7, s9);
1570
+ s6 = peg$f9(s7, s9);
1429
1571
  } else {
1430
1572
  peg$currPos = s6;
1431
1573
  s6 = peg$FAILED;
@@ -1468,7 +1610,7 @@ function peg$parse(input, options) {
1468
1610
  } else {
1469
1611
  s6 = peg$FAILED;
1470
1612
  if (peg$silentFails === 0) {
1471
- peg$fail(peg$e11);
1613
+ peg$fail(peg$e13);
1472
1614
  }
1473
1615
  }
1474
1616
  if (s6 !== peg$FAILED) {
@@ -1488,12 +1630,12 @@ function peg$parse(input, options) {
1488
1630
  } else {
1489
1631
  s6 = peg$FAILED;
1490
1632
  if (peg$silentFails === 0) {
1491
- peg$fail(peg$e12);
1633
+ peg$fail(peg$e14);
1492
1634
  }
1493
1635
  }
1494
1636
  if (s6 !== peg$FAILED) {
1495
1637
  peg$savedPos = s0;
1496
- s0 = peg$f9(s3);
1638
+ s0 = peg$f10(s3);
1497
1639
  } else {
1498
1640
  peg$currPos = s0;
1499
1641
  s0 = peg$FAILED;
@@ -1515,24 +1657,24 @@ function peg$parse(input, options) {
1515
1657
  s1 = peg$currPos;
1516
1658
  s2 = [];
1517
1659
  s3 = input.charAt(peg$currPos);
1518
- if (peg$r5.test(s3)) {
1660
+ if (peg$r7.test(s3)) {
1519
1661
  peg$currPos++;
1520
1662
  } else {
1521
1663
  s3 = peg$FAILED;
1522
1664
  if (peg$silentFails === 0) {
1523
- peg$fail(peg$e13);
1665
+ peg$fail(peg$e15);
1524
1666
  }
1525
1667
  }
1526
1668
  if (s3 !== peg$FAILED) {
1527
1669
  while (s3 !== peg$FAILED) {
1528
1670
  s2.push(s3);
1529
1671
  s3 = input.charAt(peg$currPos);
1530
- if (peg$r5.test(s3)) {
1672
+ if (peg$r7.test(s3)) {
1531
1673
  peg$currPos++;
1532
1674
  } else {
1533
1675
  s3 = peg$FAILED;
1534
1676
  if (peg$silentFails === 0) {
1535
- peg$fail(peg$e13);
1677
+ peg$fail(peg$e15);
1536
1678
  }
1537
1679
  }
1538
1680
  }
@@ -1546,7 +1688,7 @@ function peg$parse(input, options) {
1546
1688
  }
1547
1689
  if (s1 !== peg$FAILED) {
1548
1690
  peg$savedPos = s0;
1549
- s1 = peg$f10();
1691
+ s1 = peg$f11();
1550
1692
  }
1551
1693
  s0 = s1;
1552
1694
  }
@@ -1558,12 +1700,12 @@ function peg$parse(input, options) {
1558
1700
  let s0, s1, s2, s3, s4, s5, s6;
1559
1701
  s0 = [];
1560
1702
  s1 = input.charAt(peg$currPos);
1561
- if (peg$r6.test(s1)) {
1703
+ if (peg$r8.test(s1)) {
1562
1704
  peg$currPos++;
1563
1705
  } else {
1564
1706
  s1 = peg$FAILED;
1565
1707
  if (peg$silentFails === 0) {
1566
- peg$fail(peg$e14);
1708
+ peg$fail(peg$e16);
1567
1709
  }
1568
1710
  }
1569
1711
  if (s1 === peg$FAILED) {
@@ -1580,23 +1722,23 @@ function peg$parse(input, options) {
1580
1722
  if (s2 !== peg$FAILED) {
1581
1723
  s3 = [];
1582
1724
  s4 = input.charAt(peg$currPos);
1583
- if (peg$r6.test(s4)) {
1725
+ if (peg$r8.test(s4)) {
1584
1726
  peg$currPos++;
1585
1727
  } else {
1586
1728
  s4 = peg$FAILED;
1587
1729
  if (peg$silentFails === 0) {
1588
- peg$fail(peg$e14);
1730
+ peg$fail(peg$e16);
1589
1731
  }
1590
1732
  }
1591
1733
  while (s4 !== peg$FAILED) {
1592
1734
  s3.push(s4);
1593
1735
  s4 = input.charAt(peg$currPos);
1594
- if (peg$r6.test(s4)) {
1736
+ if (peg$r8.test(s4)) {
1595
1737
  peg$currPos++;
1596
1738
  } else {
1597
1739
  s4 = peg$FAILED;
1598
1740
  if (peg$silentFails === 0) {
1599
- peg$fail(peg$e14);
1741
+ peg$fail(peg$e16);
1600
1742
  }
1601
1743
  }
1602
1744
  }
@@ -1612,23 +1754,23 @@ function peg$parse(input, options) {
1612
1754
  if (s4 !== peg$FAILED) {
1613
1755
  s5 = [];
1614
1756
  s6 = input.charAt(peg$currPos);
1615
- if (peg$r6.test(s6)) {
1757
+ if (peg$r8.test(s6)) {
1616
1758
  peg$currPos++;
1617
1759
  } else {
1618
1760
  s6 = peg$FAILED;
1619
1761
  if (peg$silentFails === 0) {
1620
- peg$fail(peg$e14);
1762
+ peg$fail(peg$e16);
1621
1763
  }
1622
1764
  }
1623
1765
  while (s6 !== peg$FAILED) {
1624
1766
  s5.push(s6);
1625
1767
  s6 = input.charAt(peg$currPos);
1626
- if (peg$r6.test(s6)) {
1768
+ if (peg$r8.test(s6)) {
1627
1769
  peg$currPos++;
1628
1770
  } else {
1629
1771
  s6 = peg$FAILED;
1630
1772
  if (peg$silentFails === 0) {
1631
- peg$fail(peg$e14);
1773
+ peg$fail(peg$e16);
1632
1774
  }
1633
1775
  }
1634
1776
  }
@@ -1646,12 +1788,12 @@ function peg$parse(input, options) {
1646
1788
  while (s1 !== peg$FAILED) {
1647
1789
  s0.push(s1);
1648
1790
  s1 = input.charAt(peg$currPos);
1649
- if (peg$r6.test(s1)) {
1791
+ if (peg$r8.test(s1)) {
1650
1792
  peg$currPos++;
1651
1793
  } else {
1652
1794
  s1 = peg$FAILED;
1653
1795
  if (peg$silentFails === 0) {
1654
- peg$fail(peg$e14);
1796
+ peg$fail(peg$e16);
1655
1797
  }
1656
1798
  }
1657
1799
  if (s1 === peg$FAILED) {
@@ -1668,23 +1810,23 @@ function peg$parse(input, options) {
1668
1810
  if (s2 !== peg$FAILED) {
1669
1811
  s3 = [];
1670
1812
  s4 = input.charAt(peg$currPos);
1671
- if (peg$r6.test(s4)) {
1813
+ if (peg$r8.test(s4)) {
1672
1814
  peg$currPos++;
1673
1815
  } else {
1674
1816
  s4 = peg$FAILED;
1675
1817
  if (peg$silentFails === 0) {
1676
- peg$fail(peg$e14);
1818
+ peg$fail(peg$e16);
1677
1819
  }
1678
1820
  }
1679
1821
  while (s4 !== peg$FAILED) {
1680
1822
  s3.push(s4);
1681
1823
  s4 = input.charAt(peg$currPos);
1682
- if (peg$r6.test(s4)) {
1824
+ if (peg$r8.test(s4)) {
1683
1825
  peg$currPos++;
1684
1826
  } else {
1685
1827
  s4 = peg$FAILED;
1686
1828
  if (peg$silentFails === 0) {
1687
- peg$fail(peg$e14);
1829
+ peg$fail(peg$e16);
1688
1830
  }
1689
1831
  }
1690
1832
  }
@@ -1700,23 +1842,23 @@ function peg$parse(input, options) {
1700
1842
  if (s4 !== peg$FAILED) {
1701
1843
  s5 = [];
1702
1844
  s6 = input.charAt(peg$currPos);
1703
- if (peg$r6.test(s6)) {
1845
+ if (peg$r8.test(s6)) {
1704
1846
  peg$currPos++;
1705
1847
  } else {
1706
1848
  s6 = peg$FAILED;
1707
1849
  if (peg$silentFails === 0) {
1708
- peg$fail(peg$e14);
1850
+ peg$fail(peg$e16);
1709
1851
  }
1710
1852
  }
1711
1853
  while (s6 !== peg$FAILED) {
1712
1854
  s5.push(s6);
1713
1855
  s6 = input.charAt(peg$currPos);
1714
- if (peg$r6.test(s6)) {
1856
+ if (peg$r8.test(s6)) {
1715
1857
  peg$currPos++;
1716
1858
  } else {
1717
1859
  s6 = peg$FAILED;
1718
1860
  if (peg$silentFails === 0) {
1719
- peg$fail(peg$e14);
1861
+ peg$fail(peg$e16);
1720
1862
  }
1721
1863
  }
1722
1864
  }
@@ -1743,7 +1885,7 @@ function peg$parse(input, options) {
1743
1885
  s2 = peg$parseFunctionArgs();
1744
1886
  if (s2 !== peg$FAILED) {
1745
1887
  peg$savedPos = s0;
1746
- s0 = peg$f11(s1, s2);
1888
+ s0 = peg$f12(s1, s2);
1747
1889
  } else {
1748
1890
  peg$currPos = s0;
1749
1891
  s0 = peg$FAILED;
@@ -1760,34 +1902,34 @@ function peg$parse(input, options) {
1760
1902
  s0 = peg$currPos;
1761
1903
  s1 = peg$currPos;
1762
1904
  s2 = input.charAt(peg$currPos);
1763
- if (peg$r3.test(s2)) {
1905
+ if (peg$r5.test(s2)) {
1764
1906
  peg$currPos++;
1765
1907
  } else {
1766
1908
  s2 = peg$FAILED;
1767
1909
  if (peg$silentFails === 0) {
1768
- peg$fail(peg$e8);
1910
+ peg$fail(peg$e10);
1769
1911
  }
1770
1912
  }
1771
1913
  if (s2 !== peg$FAILED) {
1772
1914
  s3 = [];
1773
1915
  s4 = input.charAt(peg$currPos);
1774
- if (peg$r7.test(s4)) {
1916
+ if (peg$r9.test(s4)) {
1775
1917
  peg$currPos++;
1776
1918
  } else {
1777
1919
  s4 = peg$FAILED;
1778
1920
  if (peg$silentFails === 0) {
1779
- peg$fail(peg$e15);
1921
+ peg$fail(peg$e17);
1780
1922
  }
1781
1923
  }
1782
1924
  while (s4 !== peg$FAILED) {
1783
1925
  s3.push(s4);
1784
1926
  s4 = input.charAt(peg$currPos);
1785
- if (peg$r7.test(s4)) {
1927
+ if (peg$r9.test(s4)) {
1786
1928
  peg$currPos++;
1787
1929
  } else {
1788
1930
  s4 = peg$FAILED;
1789
1931
  if (peg$silentFails === 0) {
1790
- peg$fail(peg$e15);
1932
+ peg$fail(peg$e17);
1791
1933
  }
1792
1934
  }
1793
1935
  }
@@ -1814,7 +1956,7 @@ function peg$parse(input, options) {
1814
1956
  } else {
1815
1957
  s1 = peg$FAILED;
1816
1958
  if (peg$silentFails === 0) {
1817
- peg$fail(peg$e10);
1959
+ peg$fail(peg$e12);
1818
1960
  }
1819
1961
  }
1820
1962
  if (s1 !== peg$FAILED) {
@@ -1837,7 +1979,7 @@ function peg$parse(input, options) {
1837
1979
  s8 = peg$parseFunctionArgValue();
1838
1980
  if (s8 !== peg$FAILED) {
1839
1981
  peg$savedPos = s5;
1840
- s5 = peg$f12(s6, s8);
1982
+ s5 = peg$f13(s6, s8);
1841
1983
  } else {
1842
1984
  peg$currPos = s5;
1843
1985
  s5 = peg$FAILED;
@@ -1864,7 +2006,7 @@ function peg$parse(input, options) {
1864
2006
  } else {
1865
2007
  s8 = peg$FAILED;
1866
2008
  if (peg$silentFails === 0) {
1867
- peg$fail(peg$e11);
2009
+ peg$fail(peg$e13);
1868
2010
  }
1869
2011
  }
1870
2012
  if (s8 !== peg$FAILED) {
@@ -1892,7 +2034,7 @@ function peg$parse(input, options) {
1892
2034
  s9 = peg$parseFunctionArgValue();
1893
2035
  if (s9 !== peg$FAILED) {
1894
2036
  peg$savedPos = s6;
1895
- s6 = peg$f12(s7, s9);
2037
+ s6 = peg$f13(s7, s9);
1896
2038
  } else {
1897
2039
  peg$currPos = s6;
1898
2040
  s6 = peg$FAILED;
@@ -1935,7 +2077,7 @@ function peg$parse(input, options) {
1935
2077
  } else {
1936
2078
  s6 = peg$FAILED;
1937
2079
  if (peg$silentFails === 0) {
1938
- peg$fail(peg$e11);
2080
+ peg$fail(peg$e13);
1939
2081
  }
1940
2082
  }
1941
2083
  if (s6 !== peg$FAILED) {
@@ -1955,12 +2097,12 @@ function peg$parse(input, options) {
1955
2097
  } else {
1956
2098
  s6 = peg$FAILED;
1957
2099
  if (peg$silentFails === 0) {
1958
- peg$fail(peg$e12);
2100
+ peg$fail(peg$e14);
1959
2101
  }
1960
2102
  }
1961
2103
  if (s6 !== peg$FAILED) {
1962
2104
  peg$savedPos = s0;
1963
- s0 = peg$f13(s3);
2105
+ s0 = peg$f14(s3);
1964
2106
  } else {
1965
2107
  peg$currPos = s0;
1966
2108
  s0 = peg$FAILED;
@@ -1977,34 +2119,34 @@ function peg$parse(input, options) {
1977
2119
  s0 = peg$currPos;
1978
2120
  s1 = peg$currPos;
1979
2121
  s2 = input.charAt(peg$currPos);
1980
- if (peg$r3.test(s2)) {
2122
+ if (peg$r5.test(s2)) {
1981
2123
  peg$currPos++;
1982
2124
  } else {
1983
2125
  s2 = peg$FAILED;
1984
2126
  if (peg$silentFails === 0) {
1985
- peg$fail(peg$e8);
2127
+ peg$fail(peg$e10);
1986
2128
  }
1987
2129
  }
1988
2130
  if (s2 !== peg$FAILED) {
1989
2131
  s3 = [];
1990
2132
  s4 = input.charAt(peg$currPos);
1991
- if (peg$r7.test(s4)) {
2133
+ if (peg$r9.test(s4)) {
1992
2134
  peg$currPos++;
1993
2135
  } else {
1994
2136
  s4 = peg$FAILED;
1995
2137
  if (peg$silentFails === 0) {
1996
- peg$fail(peg$e15);
2138
+ peg$fail(peg$e17);
1997
2139
  }
1998
2140
  }
1999
2141
  while (s4 !== peg$FAILED) {
2000
2142
  s3.push(s4);
2001
2143
  s4 = input.charAt(peg$currPos);
2002
- if (peg$r7.test(s4)) {
2144
+ if (peg$r9.test(s4)) {
2003
2145
  peg$currPos++;
2004
2146
  } else {
2005
2147
  s4 = peg$FAILED;
2006
2148
  if (peg$silentFails === 0) {
2007
- peg$fail(peg$e15);
2149
+ peg$fail(peg$e17);
2008
2150
  }
2009
2151
  }
2010
2152
  }
@@ -2032,24 +2174,24 @@ function peg$parse(input, options) {
2032
2174
  s1 = peg$currPos;
2033
2175
  s2 = [];
2034
2176
  s3 = input.charAt(peg$currPos);
2035
- if (peg$r5.test(s3)) {
2177
+ if (peg$r7.test(s3)) {
2036
2178
  peg$currPos++;
2037
2179
  } else {
2038
2180
  s3 = peg$FAILED;
2039
2181
  if (peg$silentFails === 0) {
2040
- peg$fail(peg$e13);
2182
+ peg$fail(peg$e15);
2041
2183
  }
2042
2184
  }
2043
2185
  if (s3 !== peg$FAILED) {
2044
2186
  while (s3 !== peg$FAILED) {
2045
2187
  s2.push(s3);
2046
2188
  s3 = input.charAt(peg$currPos);
2047
- if (peg$r5.test(s3)) {
2189
+ if (peg$r7.test(s3)) {
2048
2190
  peg$currPos++;
2049
2191
  } else {
2050
2192
  s3 = peg$FAILED;
2051
2193
  if (peg$silentFails === 0) {
2052
- peg$fail(peg$e13);
2194
+ peg$fail(peg$e15);
2053
2195
  }
2054
2196
  }
2055
2197
  }
@@ -2063,7 +2205,7 @@ function peg$parse(input, options) {
2063
2205
  }
2064
2206
  if (s1 !== peg$FAILED) {
2065
2207
  peg$savedPos = s0;
2066
- s1 = peg$f14();
2208
+ s1 = peg$f15();
2067
2209
  }
2068
2210
  s0 = s1;
2069
2211
  }
@@ -2075,23 +2217,23 @@ function peg$parse(input, options) {
2075
2217
  let s0, s1;
2076
2218
  s0 = [];
2077
2219
  s1 = input.charAt(peg$currPos);
2078
- if (peg$r8.test(s1)) {
2220
+ if (peg$r10.test(s1)) {
2079
2221
  peg$currPos++;
2080
2222
  } else {
2081
2223
  s1 = peg$FAILED;
2082
2224
  if (peg$silentFails === 0) {
2083
- peg$fail(peg$e16);
2225
+ peg$fail(peg$e18);
2084
2226
  }
2085
2227
  }
2086
2228
  while (s1 !== peg$FAILED) {
2087
2229
  s0.push(s1);
2088
2230
  s1 = input.charAt(peg$currPos);
2089
- if (peg$r8.test(s1)) {
2231
+ if (peg$r10.test(s1)) {
2090
2232
  peg$currPos++;
2091
2233
  } else {
2092
2234
  s1 = peg$FAILED;
2093
2235
  if (peg$silentFails === 0) {
2094
- peg$fail(peg$e16);
2236
+ peg$fail(peg$e18);
2095
2237
  }
2096
2238
  }
2097
2239
  }
@@ -2119,23 +2261,23 @@ function peg$parse(input, options) {
2119
2261
  s5 = peg$currPos;
2120
2262
  s6 = [];
2121
2263
  s7 = input.charAt(peg$currPos);
2122
- if (peg$r9.test(s7)) {
2264
+ if (peg$r11.test(s7)) {
2123
2265
  peg$currPos++;
2124
2266
  } else {
2125
2267
  s7 = peg$FAILED;
2126
2268
  if (peg$silentFails === 0) {
2127
- peg$fail(peg$e17);
2269
+ peg$fail(peg$e19);
2128
2270
  }
2129
2271
  }
2130
2272
  while (s7 !== peg$FAILED) {
2131
2273
  s6.push(s7);
2132
2274
  s7 = input.charAt(peg$currPos);
2133
- if (peg$r9.test(s7)) {
2275
+ if (peg$r11.test(s7)) {
2134
2276
  peg$currPos++;
2135
2277
  } else {
2136
2278
  s7 = peg$FAILED;
2137
2279
  if (peg$silentFails === 0) {
2138
- peg$fail(peg$e17);
2280
+ peg$fail(peg$e19);
2139
2281
  }
2140
2282
  }
2141
2283
  }
@@ -2183,7 +2325,7 @@ function peg$parse(input, options) {
2183
2325
  s4 = peg$parse_n();
2184
2326
  if (s4 !== peg$FAILED) {
2185
2327
  peg$savedPos = s0;
2186
- s0 = peg$f15(s2, s3);
2328
+ s0 = peg$f16(s2, s3);
2187
2329
  } else {
2188
2330
  peg$currPos = s0;
2189
2331
  s0 = peg$FAILED;
@@ -2208,12 +2350,12 @@ function peg$parse(input, options) {
2208
2350
  s4 = peg$currPos;
2209
2351
  peg$silentFails++;
2210
2352
  s5 = input.charAt(peg$currPos);
2211
- if (peg$r10.test(s5)) {
2353
+ if (peg$r12.test(s5)) {
2212
2354
  peg$currPos++;
2213
2355
  } else {
2214
2356
  s5 = peg$FAILED;
2215
2357
  if (peg$silentFails === 0) {
2216
- peg$fail(peg$e18);
2358
+ peg$fail(peg$e20);
2217
2359
  }
2218
2360
  }
2219
2361
  peg$silentFails--;
@@ -2226,24 +2368,24 @@ function peg$parse(input, options) {
2226
2368
  if (s4 !== peg$FAILED) {
2227
2369
  s5 = [];
2228
2370
  s6 = input.charAt(peg$currPos);
2229
- if (peg$r11.test(s6)) {
2371
+ if (peg$r13.test(s6)) {
2230
2372
  peg$currPos++;
2231
2373
  } else {
2232
2374
  s6 = peg$FAILED;
2233
2375
  if (peg$silentFails === 0) {
2234
- peg$fail(peg$e19);
2376
+ peg$fail(peg$e21);
2235
2377
  }
2236
2378
  }
2237
2379
  if (s6 !== peg$FAILED) {
2238
2380
  while (s6 !== peg$FAILED) {
2239
2381
  s5.push(s6);
2240
2382
  s6 = input.charAt(peg$currPos);
2241
- if (peg$r11.test(s6)) {
2383
+ if (peg$r13.test(s6)) {
2242
2384
  peg$currPos++;
2243
2385
  } else {
2244
2386
  s6 = peg$FAILED;
2245
2387
  if (peg$silentFails === 0) {
2246
- peg$fail(peg$e19);
2388
+ peg$fail(peg$e21);
2247
2389
  }
2248
2390
  }
2249
2391
  }
@@ -2268,7 +2410,7 @@ function peg$parse(input, options) {
2268
2410
  }
2269
2411
  if (s1 !== peg$FAILED) {
2270
2412
  peg$savedPos = s0;
2271
- s1 = peg$f16();
2413
+ s1 = peg$f17();
2272
2414
  }
2273
2415
  s0 = s1;
2274
2416
  return s0;
@@ -2282,12 +2424,12 @@ function peg$parse(input, options) {
2282
2424
  s3 = peg$currPos;
2283
2425
  peg$silentFails++;
2284
2426
  s4 = input.charAt(peg$currPos);
2285
- if (peg$r10.test(s4)) {
2427
+ if (peg$r12.test(s4)) {
2286
2428
  peg$currPos++;
2287
2429
  } else {
2288
2430
  s4 = peg$FAILED;
2289
2431
  if (peg$silentFails === 0) {
2290
- peg$fail(peg$e18);
2432
+ peg$fail(peg$e20);
2291
2433
  }
2292
2434
  }
2293
2435
  peg$silentFails--;
@@ -2300,24 +2442,24 @@ function peg$parse(input, options) {
2300
2442
  if (s3 !== peg$FAILED) {
2301
2443
  s4 = [];
2302
2444
  s5 = input.charAt(peg$currPos);
2303
- if (peg$r12.test(s5)) {
2445
+ if (peg$r14.test(s5)) {
2304
2446
  peg$currPos++;
2305
2447
  } else {
2306
2448
  s5 = peg$FAILED;
2307
2449
  if (peg$silentFails === 0) {
2308
- peg$fail(peg$e20);
2450
+ peg$fail(peg$e22);
2309
2451
  }
2310
2452
  }
2311
2453
  if (s5 !== peg$FAILED) {
2312
2454
  while (s5 !== peg$FAILED) {
2313
2455
  s4.push(s5);
2314
2456
  s5 = input.charAt(peg$currPos);
2315
- if (peg$r12.test(s5)) {
2457
+ if (peg$r14.test(s5)) {
2316
2458
  peg$currPos++;
2317
2459
  } else {
2318
2460
  s5 = peg$FAILED;
2319
2461
  if (peg$silentFails === 0) {
2320
- peg$fail(peg$e20);
2462
+ peg$fail(peg$e22);
2321
2463
  }
2322
2464
  }
2323
2465
  }
@@ -2342,7 +2484,7 @@ function peg$parse(input, options) {
2342
2484
  }
2343
2485
  if (s1 !== peg$FAILED) {
2344
2486
  peg$savedPos = s0;
2345
- s1 = peg$f17();
2487
+ s1 = peg$f18();
2346
2488
  }
2347
2489
  s0 = s1;
2348
2490
  return s0;
@@ -2364,12 +2506,12 @@ function peg$parse(input, options) {
2364
2506
  let s0, s1, s2, s3;
2365
2507
  s0 = peg$currPos;
2366
2508
  s1 = input.charAt(peg$currPos);
2367
- if (peg$r13.test(s1)) {
2509
+ if (peg$r15.test(s1)) {
2368
2510
  peg$currPos++;
2369
2511
  } else {
2370
2512
  s1 = peg$FAILED;
2371
2513
  if (peg$silentFails === 0) {
2372
- peg$fail(peg$e21);
2514
+ peg$fail(peg$e23);
2373
2515
  }
2374
2516
  }
2375
2517
  if (s1 !== peg$FAILED) {
@@ -2380,17 +2522,17 @@ function peg$parse(input, options) {
2380
2522
  } else {
2381
2523
  s3 = peg$FAILED;
2382
2524
  if (peg$silentFails === 0) {
2383
- peg$fail(peg$e22);
2525
+ peg$fail(peg$e24);
2384
2526
  }
2385
2527
  }
2386
2528
  if (s3 === peg$FAILED) {
2387
2529
  s3 = input.charAt(peg$currPos);
2388
- if (peg$r14.test(s3)) {
2530
+ if (peg$r16.test(s3)) {
2389
2531
  peg$currPos++;
2390
2532
  } else {
2391
2533
  s3 = peg$FAILED;
2392
2534
  if (peg$silentFails === 0) {
2393
- peg$fail(peg$e23);
2535
+ peg$fail(peg$e25);
2394
2536
  }
2395
2537
  }
2396
2538
  }
@@ -2402,33 +2544,33 @@ function peg$parse(input, options) {
2402
2544
  } else {
2403
2545
  s3 = peg$FAILED;
2404
2546
  if (peg$silentFails === 0) {
2405
- peg$fail(peg$e22);
2547
+ peg$fail(peg$e24);
2406
2548
  }
2407
2549
  }
2408
2550
  if (s3 === peg$FAILED) {
2409
2551
  s3 = input.charAt(peg$currPos);
2410
- if (peg$r14.test(s3)) {
2552
+ if (peg$r16.test(s3)) {
2411
2553
  peg$currPos++;
2412
2554
  } else {
2413
2555
  s3 = peg$FAILED;
2414
2556
  if (peg$silentFails === 0) {
2415
- peg$fail(peg$e23);
2557
+ peg$fail(peg$e25);
2416
2558
  }
2417
2559
  }
2418
2560
  }
2419
2561
  }
2420
2562
  s3 = input.charAt(peg$currPos);
2421
- if (peg$r13.test(s3)) {
2563
+ if (peg$r15.test(s3)) {
2422
2564
  peg$currPos++;
2423
2565
  } else {
2424
2566
  s3 = peg$FAILED;
2425
2567
  if (peg$silentFails === 0) {
2426
- peg$fail(peg$e21);
2568
+ peg$fail(peg$e23);
2427
2569
  }
2428
2570
  }
2429
2571
  if (s3 !== peg$FAILED) {
2430
2572
  peg$savedPos = s0;
2431
- s0 = peg$f18(s1);
2573
+ s0 = peg$f19(s1);
2432
2574
  } else {
2433
2575
  peg$currPos = s0;
2434
2576
  s0 = peg$FAILED;
@@ -2444,12 +2586,12 @@ function peg$parse(input, options) {
2444
2586
  let s0, s1, s2, s3;
2445
2587
  s0 = peg$currPos;
2446
2588
  s1 = input.charAt(peg$currPos);
2447
- if (peg$r15.test(s1)) {
2589
+ if (peg$r17.test(s1)) {
2448
2590
  peg$currPos++;
2449
2591
  } else {
2450
2592
  s1 = peg$FAILED;
2451
2593
  if (peg$silentFails === 0) {
2452
- peg$fail(peg$e24);
2594
+ peg$fail(peg$e26);
2453
2595
  }
2454
2596
  }
2455
2597
  if (s1 !== peg$FAILED) {
@@ -2460,17 +2602,17 @@ function peg$parse(input, options) {
2460
2602
  } else {
2461
2603
  s3 = peg$FAILED;
2462
2604
  if (peg$silentFails === 0) {
2463
- peg$fail(peg$e25);
2605
+ peg$fail(peg$e27);
2464
2606
  }
2465
2607
  }
2466
2608
  if (s3 === peg$FAILED) {
2467
2609
  s3 = input.charAt(peg$currPos);
2468
- if (peg$r16.test(s3)) {
2610
+ if (peg$r18.test(s3)) {
2469
2611
  peg$currPos++;
2470
2612
  } else {
2471
2613
  s3 = peg$FAILED;
2472
2614
  if (peg$silentFails === 0) {
2473
- peg$fail(peg$e26);
2615
+ peg$fail(peg$e28);
2474
2616
  }
2475
2617
  }
2476
2618
  }
@@ -2482,33 +2624,33 @@ function peg$parse(input, options) {
2482
2624
  } else {
2483
2625
  s3 = peg$FAILED;
2484
2626
  if (peg$silentFails === 0) {
2485
- peg$fail(peg$e25);
2627
+ peg$fail(peg$e27);
2486
2628
  }
2487
2629
  }
2488
2630
  if (s3 === peg$FAILED) {
2489
2631
  s3 = input.charAt(peg$currPos);
2490
- if (peg$r16.test(s3)) {
2632
+ if (peg$r18.test(s3)) {
2491
2633
  peg$currPos++;
2492
2634
  } else {
2493
2635
  s3 = peg$FAILED;
2494
2636
  if (peg$silentFails === 0) {
2495
- peg$fail(peg$e26);
2637
+ peg$fail(peg$e28);
2496
2638
  }
2497
2639
  }
2498
2640
  }
2499
2641
  }
2500
2642
  s3 = input.charAt(peg$currPos);
2501
- if (peg$r15.test(s3)) {
2643
+ if (peg$r17.test(s3)) {
2502
2644
  peg$currPos++;
2503
2645
  } else {
2504
2646
  s3 = peg$FAILED;
2505
2647
  if (peg$silentFails === 0) {
2506
- peg$fail(peg$e24);
2648
+ peg$fail(peg$e26);
2507
2649
  }
2508
2650
  }
2509
2651
  if (s3 !== peg$FAILED) {
2510
2652
  peg$savedPos = s0;
2511
- s0 = peg$f19(s1);
2653
+ s0 = peg$f20(s1);
2512
2654
  } else {
2513
2655
  peg$currPos = s0;
2514
2656
  s0 = peg$FAILED;
@@ -2524,12 +2666,12 @@ function peg$parse(input, options) {
2524
2666
  let s0, s1, s2, s3;
2525
2667
  s0 = peg$currPos;
2526
2668
  s1 = input.charAt(peg$currPos);
2527
- if (peg$r17.test(s1)) {
2669
+ if (peg$r19.test(s1)) {
2528
2670
  peg$currPos++;
2529
2671
  } else {
2530
2672
  s1 = peg$FAILED;
2531
2673
  if (peg$silentFails === 0) {
2532
- peg$fail(peg$e27);
2674
+ peg$fail(peg$e29);
2533
2675
  }
2534
2676
  }
2535
2677
  if (s1 !== peg$FAILED) {
@@ -2540,17 +2682,17 @@ function peg$parse(input, options) {
2540
2682
  } else {
2541
2683
  s3 = peg$FAILED;
2542
2684
  if (peg$silentFails === 0) {
2543
- peg$fail(peg$e28);
2685
+ peg$fail(peg$e30);
2544
2686
  }
2545
2687
  }
2546
2688
  if (s3 === peg$FAILED) {
2547
2689
  s3 = input.charAt(peg$currPos);
2548
- if (peg$r18.test(s3)) {
2690
+ if (peg$r20.test(s3)) {
2549
2691
  peg$currPos++;
2550
2692
  } else {
2551
2693
  s3 = peg$FAILED;
2552
2694
  if (peg$silentFails === 0) {
2553
- peg$fail(peg$e29);
2695
+ peg$fail(peg$e31);
2554
2696
  }
2555
2697
  }
2556
2698
  }
@@ -2562,33 +2704,33 @@ function peg$parse(input, options) {
2562
2704
  } else {
2563
2705
  s3 = peg$FAILED;
2564
2706
  if (peg$silentFails === 0) {
2565
- peg$fail(peg$e28);
2707
+ peg$fail(peg$e30);
2566
2708
  }
2567
2709
  }
2568
2710
  if (s3 === peg$FAILED) {
2569
2711
  s3 = input.charAt(peg$currPos);
2570
- if (peg$r18.test(s3)) {
2712
+ if (peg$r20.test(s3)) {
2571
2713
  peg$currPos++;
2572
2714
  } else {
2573
2715
  s3 = peg$FAILED;
2574
2716
  if (peg$silentFails === 0) {
2575
- peg$fail(peg$e29);
2717
+ peg$fail(peg$e31);
2576
2718
  }
2577
2719
  }
2578
2720
  }
2579
2721
  }
2580
2722
  s3 = input.charAt(peg$currPos);
2581
- if (peg$r17.test(s3)) {
2723
+ if (peg$r19.test(s3)) {
2582
2724
  peg$currPos++;
2583
2725
  } else {
2584
2726
  s3 = peg$FAILED;
2585
2727
  if (peg$silentFails === 0) {
2586
- peg$fail(peg$e27);
2728
+ peg$fail(peg$e29);
2587
2729
  }
2588
2730
  }
2589
2731
  if (s3 !== peg$FAILED) {
2590
2732
  peg$savedPos = s0;
2591
- s0 = peg$f20(s1);
2733
+ s0 = peg$f21(s1);
2592
2734
  } else {
2593
2735
  peg$currPos = s0;
2594
2736
  s0 = peg$FAILED;
@@ -2619,12 +2761,12 @@ function peg$parse(input, options) {
2619
2761
  let s0, s1, s2, s3, s4, s5;
2620
2762
  s0 = peg$currPos;
2621
2763
  s1 = input.charAt(peg$currPos);
2622
- if (peg$r15.test(s1)) {
2764
+ if (peg$r17.test(s1)) {
2623
2765
  peg$currPos++;
2624
2766
  } else {
2625
2767
  s1 = peg$FAILED;
2626
2768
  if (peg$silentFails === 0) {
2627
- peg$fail(peg$e24);
2769
+ peg$fail(peg$e26);
2628
2770
  }
2629
2771
  }
2630
2772
  if (s1 !== peg$FAILED) {
@@ -2637,17 +2779,17 @@ function peg$parse(input, options) {
2637
2779
  } else {
2638
2780
  s5 = peg$FAILED;
2639
2781
  if (peg$silentFails === 0) {
2640
- peg$fail(peg$e25);
2782
+ peg$fail(peg$e27);
2641
2783
  }
2642
2784
  }
2643
2785
  if (s5 === peg$FAILED) {
2644
2786
  s5 = input.charAt(peg$currPos);
2645
- if (peg$r16.test(s5)) {
2787
+ if (peg$r18.test(s5)) {
2646
2788
  peg$currPos++;
2647
2789
  } else {
2648
2790
  s5 = peg$FAILED;
2649
2791
  if (peg$silentFails === 0) {
2650
- peg$fail(peg$e26);
2792
+ peg$fail(peg$e28);
2651
2793
  }
2652
2794
  }
2653
2795
  }
@@ -2659,17 +2801,17 @@ function peg$parse(input, options) {
2659
2801
  } else {
2660
2802
  s5 = peg$FAILED;
2661
2803
  if (peg$silentFails === 0) {
2662
- peg$fail(peg$e25);
2804
+ peg$fail(peg$e27);
2663
2805
  }
2664
2806
  }
2665
2807
  if (s5 === peg$FAILED) {
2666
2808
  s5 = input.charAt(peg$currPos);
2667
- if (peg$r16.test(s5)) {
2809
+ if (peg$r18.test(s5)) {
2668
2810
  peg$currPos++;
2669
2811
  } else {
2670
2812
  s5 = peg$FAILED;
2671
2813
  if (peg$silentFails === 0) {
2672
- peg$fail(peg$e26);
2814
+ peg$fail(peg$e28);
2673
2815
  }
2674
2816
  }
2675
2817
  }
@@ -2701,17 +2843,17 @@ function peg$parse(input, options) {
2701
2843
  } else {
2702
2844
  s5 = peg$FAILED;
2703
2845
  if (peg$silentFails === 0) {
2704
- peg$fail(peg$e25);
2846
+ peg$fail(peg$e27);
2705
2847
  }
2706
2848
  }
2707
2849
  if (s5 === peg$FAILED) {
2708
2850
  s5 = input.charAt(peg$currPos);
2709
- if (peg$r16.test(s5)) {
2851
+ if (peg$r18.test(s5)) {
2710
2852
  peg$currPos++;
2711
2853
  } else {
2712
2854
  s5 = peg$FAILED;
2713
2855
  if (peg$silentFails === 0) {
2714
- peg$fail(peg$e26);
2856
+ peg$fail(peg$e28);
2715
2857
  }
2716
2858
  }
2717
2859
  }
@@ -2723,17 +2865,17 @@ function peg$parse(input, options) {
2723
2865
  } else {
2724
2866
  s5 = peg$FAILED;
2725
2867
  if (peg$silentFails === 0) {
2726
- peg$fail(peg$e25);
2868
+ peg$fail(peg$e27);
2727
2869
  }
2728
2870
  }
2729
2871
  if (s5 === peg$FAILED) {
2730
2872
  s5 = input.charAt(peg$currPos);
2731
- if (peg$r16.test(s5)) {
2873
+ if (peg$r18.test(s5)) {
2732
2874
  peg$currPos++;
2733
2875
  } else {
2734
2876
  s5 = peg$FAILED;
2735
2877
  if (peg$silentFails === 0) {
2736
- peg$fail(peg$e26);
2878
+ peg$fail(peg$e28);
2737
2879
  }
2738
2880
  }
2739
2881
  }
@@ -2766,17 +2908,17 @@ function peg$parse(input, options) {
2766
2908
  } else {
2767
2909
  s4 = peg$FAILED;
2768
2910
  if (peg$silentFails === 0) {
2769
- peg$fail(peg$e25);
2911
+ peg$fail(peg$e27);
2770
2912
  }
2771
2913
  }
2772
2914
  if (s4 === peg$FAILED) {
2773
2915
  s4 = input.charAt(peg$currPos);
2774
- if (peg$r16.test(s4)) {
2916
+ if (peg$r18.test(s4)) {
2775
2917
  peg$currPos++;
2776
2918
  } else {
2777
2919
  s4 = peg$FAILED;
2778
2920
  if (peg$silentFails === 0) {
2779
- peg$fail(peg$e26);
2921
+ peg$fail(peg$e28);
2780
2922
  }
2781
2923
  }
2782
2924
  }
@@ -2788,33 +2930,33 @@ function peg$parse(input, options) {
2788
2930
  } else {
2789
2931
  s4 = peg$FAILED;
2790
2932
  if (peg$silentFails === 0) {
2791
- peg$fail(peg$e25);
2933
+ peg$fail(peg$e27);
2792
2934
  }
2793
2935
  }
2794
2936
  if (s4 === peg$FAILED) {
2795
2937
  s4 = input.charAt(peg$currPos);
2796
- if (peg$r16.test(s4)) {
2938
+ if (peg$r18.test(s4)) {
2797
2939
  peg$currPos++;
2798
2940
  } else {
2799
2941
  s4 = peg$FAILED;
2800
2942
  if (peg$silentFails === 0) {
2801
- peg$fail(peg$e26);
2943
+ peg$fail(peg$e28);
2802
2944
  }
2803
2945
  }
2804
2946
  }
2805
2947
  }
2806
2948
  s4 = input.charAt(peg$currPos);
2807
- if (peg$r15.test(s4)) {
2949
+ if (peg$r17.test(s4)) {
2808
2950
  peg$currPos++;
2809
2951
  } else {
2810
2952
  s4 = peg$FAILED;
2811
2953
  if (peg$silentFails === 0) {
2812
- peg$fail(peg$e24);
2954
+ peg$fail(peg$e26);
2813
2955
  }
2814
2956
  }
2815
2957
  if (s4 !== peg$FAILED) {
2816
2958
  peg$savedPos = s0;
2817
- s0 = peg$f21(s1);
2959
+ s0 = peg$f22(s1);
2818
2960
  } else {
2819
2961
  peg$currPos = s0;
2820
2962
  s0 = peg$FAILED;
@@ -2834,12 +2976,12 @@ function peg$parse(input, options) {
2834
2976
  let s0, s1, s2, s3, s4, s5;
2835
2977
  s0 = peg$currPos;
2836
2978
  s1 = input.charAt(peg$currPos);
2837
- if (peg$r13.test(s1)) {
2979
+ if (peg$r15.test(s1)) {
2838
2980
  peg$currPos++;
2839
2981
  } else {
2840
2982
  s1 = peg$FAILED;
2841
2983
  if (peg$silentFails === 0) {
2842
- peg$fail(peg$e21);
2984
+ peg$fail(peg$e23);
2843
2985
  }
2844
2986
  }
2845
2987
  if (s1 !== peg$FAILED) {
@@ -2852,17 +2994,17 @@ function peg$parse(input, options) {
2852
2994
  } else {
2853
2995
  s5 = peg$FAILED;
2854
2996
  if (peg$silentFails === 0) {
2855
- peg$fail(peg$e22);
2997
+ peg$fail(peg$e24);
2856
2998
  }
2857
2999
  }
2858
3000
  if (s5 === peg$FAILED) {
2859
3001
  s5 = input.charAt(peg$currPos);
2860
- if (peg$r14.test(s5)) {
3002
+ if (peg$r16.test(s5)) {
2861
3003
  peg$currPos++;
2862
3004
  } else {
2863
3005
  s5 = peg$FAILED;
2864
3006
  if (peg$silentFails === 0) {
2865
- peg$fail(peg$e23);
3007
+ peg$fail(peg$e25);
2866
3008
  }
2867
3009
  }
2868
3010
  }
@@ -2874,17 +3016,17 @@ function peg$parse(input, options) {
2874
3016
  } else {
2875
3017
  s5 = peg$FAILED;
2876
3018
  if (peg$silentFails === 0) {
2877
- peg$fail(peg$e22);
3019
+ peg$fail(peg$e24);
2878
3020
  }
2879
3021
  }
2880
3022
  if (s5 === peg$FAILED) {
2881
3023
  s5 = input.charAt(peg$currPos);
2882
- if (peg$r14.test(s5)) {
3024
+ if (peg$r16.test(s5)) {
2883
3025
  peg$currPos++;
2884
3026
  } else {
2885
3027
  s5 = peg$FAILED;
2886
3028
  if (peg$silentFails === 0) {
2887
- peg$fail(peg$e23);
3029
+ peg$fail(peg$e25);
2888
3030
  }
2889
3031
  }
2890
3032
  }
@@ -2916,17 +3058,17 @@ function peg$parse(input, options) {
2916
3058
  } else {
2917
3059
  s5 = peg$FAILED;
2918
3060
  if (peg$silentFails === 0) {
2919
- peg$fail(peg$e22);
3061
+ peg$fail(peg$e24);
2920
3062
  }
2921
3063
  }
2922
3064
  if (s5 === peg$FAILED) {
2923
3065
  s5 = input.charAt(peg$currPos);
2924
- if (peg$r14.test(s5)) {
3066
+ if (peg$r16.test(s5)) {
2925
3067
  peg$currPos++;
2926
3068
  } else {
2927
3069
  s5 = peg$FAILED;
2928
3070
  if (peg$silentFails === 0) {
2929
- peg$fail(peg$e23);
3071
+ peg$fail(peg$e25);
2930
3072
  }
2931
3073
  }
2932
3074
  }
@@ -2938,17 +3080,17 @@ function peg$parse(input, options) {
2938
3080
  } else {
2939
3081
  s5 = peg$FAILED;
2940
3082
  if (peg$silentFails === 0) {
2941
- peg$fail(peg$e22);
3083
+ peg$fail(peg$e24);
2942
3084
  }
2943
3085
  }
2944
3086
  if (s5 === peg$FAILED) {
2945
3087
  s5 = input.charAt(peg$currPos);
2946
- if (peg$r14.test(s5)) {
3088
+ if (peg$r16.test(s5)) {
2947
3089
  peg$currPos++;
2948
3090
  } else {
2949
3091
  s5 = peg$FAILED;
2950
3092
  if (peg$silentFails === 0) {
2951
- peg$fail(peg$e23);
3093
+ peg$fail(peg$e25);
2952
3094
  }
2953
3095
  }
2954
3096
  }
@@ -2981,17 +3123,17 @@ function peg$parse(input, options) {
2981
3123
  } else {
2982
3124
  s4 = peg$FAILED;
2983
3125
  if (peg$silentFails === 0) {
2984
- peg$fail(peg$e22);
3126
+ peg$fail(peg$e24);
2985
3127
  }
2986
3128
  }
2987
3129
  if (s4 === peg$FAILED) {
2988
3130
  s4 = input.charAt(peg$currPos);
2989
- if (peg$r14.test(s4)) {
3131
+ if (peg$r16.test(s4)) {
2990
3132
  peg$currPos++;
2991
3133
  } else {
2992
3134
  s4 = peg$FAILED;
2993
3135
  if (peg$silentFails === 0) {
2994
- peg$fail(peg$e23);
3136
+ peg$fail(peg$e25);
2995
3137
  }
2996
3138
  }
2997
3139
  }
@@ -3003,33 +3145,33 @@ function peg$parse(input, options) {
3003
3145
  } else {
3004
3146
  s4 = peg$FAILED;
3005
3147
  if (peg$silentFails === 0) {
3006
- peg$fail(peg$e22);
3148
+ peg$fail(peg$e24);
3007
3149
  }
3008
3150
  }
3009
3151
  if (s4 === peg$FAILED) {
3010
3152
  s4 = input.charAt(peg$currPos);
3011
- if (peg$r14.test(s4)) {
3153
+ if (peg$r16.test(s4)) {
3012
3154
  peg$currPos++;
3013
3155
  } else {
3014
3156
  s4 = peg$FAILED;
3015
3157
  if (peg$silentFails === 0) {
3016
- peg$fail(peg$e23);
3158
+ peg$fail(peg$e25);
3017
3159
  }
3018
3160
  }
3019
3161
  }
3020
3162
  }
3021
3163
  s4 = input.charAt(peg$currPos);
3022
- if (peg$r13.test(s4)) {
3164
+ if (peg$r15.test(s4)) {
3023
3165
  peg$currPos++;
3024
3166
  } else {
3025
3167
  s4 = peg$FAILED;
3026
3168
  if (peg$silentFails === 0) {
3027
- peg$fail(peg$e21);
3169
+ peg$fail(peg$e23);
3028
3170
  }
3029
3171
  }
3030
3172
  if (s4 !== peg$FAILED) {
3031
3173
  peg$savedPos = s0;
3032
- s0 = peg$f22(s1);
3174
+ s0 = peg$f23(s1);
3033
3175
  } else {
3034
3176
  peg$currPos = s0;
3035
3177
  s0 = peg$FAILED;
@@ -3054,7 +3196,7 @@ function peg$parse(input, options) {
3054
3196
  } else {
3055
3197
  s1 = peg$FAILED;
3056
3198
  if (peg$silentFails === 0) {
3057
- peg$fail(peg$e30);
3199
+ peg$fail(peg$e32);
3058
3200
  }
3059
3201
  }
3060
3202
  if (s1 !== peg$FAILED) {
@@ -3067,7 +3209,7 @@ function peg$parse(input, options) {
3067
3209
  } else {
3068
3210
  s5 = peg$FAILED;
3069
3211
  if (peg$silentFails === 0) {
3070
- peg$fail(peg$e31);
3212
+ peg$fail(peg$e33);
3071
3213
  }
3072
3214
  }
3073
3215
  if (s5 === peg$FAILED) {
@@ -3080,7 +3222,7 @@ function peg$parse(input, options) {
3080
3222
  } else {
3081
3223
  s7 = peg$FAILED;
3082
3224
  if (peg$silentFails === 0) {
3083
- peg$fail(peg$e30);
3225
+ peg$fail(peg$e32);
3084
3226
  }
3085
3227
  }
3086
3228
  peg$silentFails--;
@@ -3120,7 +3262,7 @@ function peg$parse(input, options) {
3120
3262
  } else {
3121
3263
  s5 = peg$FAILED;
3122
3264
  if (peg$silentFails === 0) {
3123
- peg$fail(peg$e31);
3265
+ peg$fail(peg$e33);
3124
3266
  }
3125
3267
  }
3126
3268
  if (s5 === peg$FAILED) {
@@ -3133,7 +3275,7 @@ function peg$parse(input, options) {
3133
3275
  } else {
3134
3276
  s7 = peg$FAILED;
3135
3277
  if (peg$silentFails === 0) {
3136
- peg$fail(peg$e30);
3278
+ peg$fail(peg$e32);
3137
3279
  }
3138
3280
  }
3139
3281
  peg$silentFails--;
@@ -3193,7 +3335,7 @@ function peg$parse(input, options) {
3193
3335
  } else {
3194
3336
  s5 = peg$FAILED;
3195
3337
  if (peg$silentFails === 0) {
3196
- peg$fail(peg$e31);
3338
+ peg$fail(peg$e33);
3197
3339
  }
3198
3340
  }
3199
3341
  if (s5 === peg$FAILED) {
@@ -3206,7 +3348,7 @@ function peg$parse(input, options) {
3206
3348
  } else {
3207
3349
  s7 = peg$FAILED;
3208
3350
  if (peg$silentFails === 0) {
3209
- peg$fail(peg$e30);
3351
+ peg$fail(peg$e32);
3210
3352
  }
3211
3353
  }
3212
3354
  peg$silentFails--;
@@ -3246,7 +3388,7 @@ function peg$parse(input, options) {
3246
3388
  } else {
3247
3389
  s5 = peg$FAILED;
3248
3390
  if (peg$silentFails === 0) {
3249
- peg$fail(peg$e31);
3391
+ peg$fail(peg$e33);
3250
3392
  }
3251
3393
  }
3252
3394
  if (s5 === peg$FAILED) {
@@ -3259,7 +3401,7 @@ function peg$parse(input, options) {
3259
3401
  } else {
3260
3402
  s7 = peg$FAILED;
3261
3403
  if (peg$silentFails === 0) {
3262
- peg$fail(peg$e30);
3404
+ peg$fail(peg$e32);
3263
3405
  }
3264
3406
  }
3265
3407
  peg$silentFails--;
@@ -3320,7 +3462,7 @@ function peg$parse(input, options) {
3320
3462
  } else {
3321
3463
  s4 = peg$FAILED;
3322
3464
  if (peg$silentFails === 0) {
3323
- peg$fail(peg$e31);
3465
+ peg$fail(peg$e33);
3324
3466
  }
3325
3467
  }
3326
3468
  if (s4 === peg$FAILED) {
@@ -3333,7 +3475,7 @@ function peg$parse(input, options) {
3333
3475
  } else {
3334
3476
  s6 = peg$FAILED;
3335
3477
  if (peg$silentFails === 0) {
3336
- peg$fail(peg$e30);
3478
+ peg$fail(peg$e32);
3337
3479
  }
3338
3480
  }
3339
3481
  peg$silentFails--;
@@ -3373,7 +3515,7 @@ function peg$parse(input, options) {
3373
3515
  } else {
3374
3516
  s4 = peg$FAILED;
3375
3517
  if (peg$silentFails === 0) {
3376
- peg$fail(peg$e31);
3518
+ peg$fail(peg$e33);
3377
3519
  }
3378
3520
  }
3379
3521
  if (s4 === peg$FAILED) {
@@ -3386,7 +3528,7 @@ function peg$parse(input, options) {
3386
3528
  } else {
3387
3529
  s6 = peg$FAILED;
3388
3530
  if (peg$silentFails === 0) {
3389
- peg$fail(peg$e30);
3531
+ peg$fail(peg$e32);
3390
3532
  }
3391
3533
  }
3392
3534
  peg$silentFails--;
@@ -3425,12 +3567,12 @@ function peg$parse(input, options) {
3425
3567
  } else {
3426
3568
  s4 = peg$FAILED;
3427
3569
  if (peg$silentFails === 0) {
3428
- peg$fail(peg$e30);
3570
+ peg$fail(peg$e32);
3429
3571
  }
3430
3572
  }
3431
3573
  if (s4 !== peg$FAILED) {
3432
3574
  peg$savedPos = s0;
3433
- s0 = peg$f23(s1);
3575
+ s0 = peg$f24(s1);
3434
3576
  } else {
3435
3577
  peg$currPos = s0;
3436
3578
  s0 = peg$FAILED;
@@ -3455,7 +3597,7 @@ function peg$parse(input, options) {
3455
3597
  } else {
3456
3598
  s1 = peg$FAILED;
3457
3599
  if (peg$silentFails === 0) {
3458
- peg$fail(peg$e32);
3600
+ peg$fail(peg$e34);
3459
3601
  }
3460
3602
  }
3461
3603
  if (s1 !== peg$FAILED) {
@@ -3468,7 +3610,7 @@ function peg$parse(input, options) {
3468
3610
  } else {
3469
3611
  s5 = peg$FAILED;
3470
3612
  if (peg$silentFails === 0) {
3471
- peg$fail(peg$e33);
3613
+ peg$fail(peg$e35);
3472
3614
  }
3473
3615
  }
3474
3616
  if (s5 === peg$FAILED) {
@@ -3481,7 +3623,7 @@ function peg$parse(input, options) {
3481
3623
  } else {
3482
3624
  s7 = peg$FAILED;
3483
3625
  if (peg$silentFails === 0) {
3484
- peg$fail(peg$e32);
3626
+ peg$fail(peg$e34);
3485
3627
  }
3486
3628
  }
3487
3629
  peg$silentFails--;
@@ -3521,7 +3663,7 @@ function peg$parse(input, options) {
3521
3663
  } else {
3522
3664
  s5 = peg$FAILED;
3523
3665
  if (peg$silentFails === 0) {
3524
- peg$fail(peg$e33);
3666
+ peg$fail(peg$e35);
3525
3667
  }
3526
3668
  }
3527
3669
  if (s5 === peg$FAILED) {
@@ -3534,7 +3676,7 @@ function peg$parse(input, options) {
3534
3676
  } else {
3535
3677
  s7 = peg$FAILED;
3536
3678
  if (peg$silentFails === 0) {
3537
- peg$fail(peg$e32);
3679
+ peg$fail(peg$e34);
3538
3680
  }
3539
3681
  }
3540
3682
  peg$silentFails--;
@@ -3594,7 +3736,7 @@ function peg$parse(input, options) {
3594
3736
  } else {
3595
3737
  s5 = peg$FAILED;
3596
3738
  if (peg$silentFails === 0) {
3597
- peg$fail(peg$e33);
3739
+ peg$fail(peg$e35);
3598
3740
  }
3599
3741
  }
3600
3742
  if (s5 === peg$FAILED) {
@@ -3607,7 +3749,7 @@ function peg$parse(input, options) {
3607
3749
  } else {
3608
3750
  s7 = peg$FAILED;
3609
3751
  if (peg$silentFails === 0) {
3610
- peg$fail(peg$e32);
3752
+ peg$fail(peg$e34);
3611
3753
  }
3612
3754
  }
3613
3755
  peg$silentFails--;
@@ -3647,7 +3789,7 @@ function peg$parse(input, options) {
3647
3789
  } else {
3648
3790
  s5 = peg$FAILED;
3649
3791
  if (peg$silentFails === 0) {
3650
- peg$fail(peg$e33);
3792
+ peg$fail(peg$e35);
3651
3793
  }
3652
3794
  }
3653
3795
  if (s5 === peg$FAILED) {
@@ -3660,7 +3802,7 @@ function peg$parse(input, options) {
3660
3802
  } else {
3661
3803
  s7 = peg$FAILED;
3662
3804
  if (peg$silentFails === 0) {
3663
- peg$fail(peg$e32);
3805
+ peg$fail(peg$e34);
3664
3806
  }
3665
3807
  }
3666
3808
  peg$silentFails--;
@@ -3721,7 +3863,7 @@ function peg$parse(input, options) {
3721
3863
  } else {
3722
3864
  s4 = peg$FAILED;
3723
3865
  if (peg$silentFails === 0) {
3724
- peg$fail(peg$e33);
3866
+ peg$fail(peg$e35);
3725
3867
  }
3726
3868
  }
3727
3869
  if (s4 === peg$FAILED) {
@@ -3734,7 +3876,7 @@ function peg$parse(input, options) {
3734
3876
  } else {
3735
3877
  s6 = peg$FAILED;
3736
3878
  if (peg$silentFails === 0) {
3737
- peg$fail(peg$e32);
3879
+ peg$fail(peg$e34);
3738
3880
  }
3739
3881
  }
3740
3882
  peg$silentFails--;
@@ -3774,7 +3916,7 @@ function peg$parse(input, options) {
3774
3916
  } else {
3775
3917
  s4 = peg$FAILED;
3776
3918
  if (peg$silentFails === 0) {
3777
- peg$fail(peg$e33);
3919
+ peg$fail(peg$e35);
3778
3920
  }
3779
3921
  }
3780
3922
  if (s4 === peg$FAILED) {
@@ -3787,7 +3929,7 @@ function peg$parse(input, options) {
3787
3929
  } else {
3788
3930
  s6 = peg$FAILED;
3789
3931
  if (peg$silentFails === 0) {
3790
- peg$fail(peg$e32);
3932
+ peg$fail(peg$e34);
3791
3933
  }
3792
3934
  }
3793
3935
  peg$silentFails--;
@@ -3826,12 +3968,12 @@ function peg$parse(input, options) {
3826
3968
  } else {
3827
3969
  s4 = peg$FAILED;
3828
3970
  if (peg$silentFails === 0) {
3829
- peg$fail(peg$e32);
3971
+ peg$fail(peg$e34);
3830
3972
  }
3831
3973
  }
3832
3974
  if (s4 !== peg$FAILED) {
3833
3975
  peg$savedPos = s0;
3834
- s0 = peg$f24(s1);
3976
+ s0 = peg$f25(s1);
3835
3977
  } else {
3836
3978
  peg$currPos = s0;
3837
3979
  s0 = peg$FAILED;
@@ -3867,7 +4009,7 @@ function peg$parse(input, options) {
3867
4009
  } else {
3868
4010
  s1 = peg$FAILED;
3869
4011
  if (peg$silentFails === 0) {
3870
- peg$fail(peg$e34);
4012
+ peg$fail(peg$e36);
3871
4013
  }
3872
4014
  }
3873
4015
  peg$silentFails--;
@@ -3885,23 +4027,23 @@ function peg$parse(input, options) {
3885
4027
  let s0, s1;
3886
4028
  s0 = [];
3887
4029
  s1 = input.charAt(peg$currPos);
3888
- if (peg$r6.test(s1)) {
4030
+ if (peg$r8.test(s1)) {
3889
4031
  peg$currPos++;
3890
4032
  } else {
3891
4033
  s1 = peg$FAILED;
3892
4034
  if (peg$silentFails === 0) {
3893
- peg$fail(peg$e14);
4035
+ peg$fail(peg$e16);
3894
4036
  }
3895
4037
  }
3896
4038
  while (s1 !== peg$FAILED) {
3897
4039
  s0.push(s1);
3898
4040
  s1 = input.charAt(peg$currPos);
3899
- if (peg$r6.test(s1)) {
4041
+ if (peg$r8.test(s1)) {
3900
4042
  peg$currPos++;
3901
4043
  } else {
3902
4044
  s1 = peg$FAILED;
3903
4045
  if (peg$silentFails === 0) {
3904
- peg$fail(peg$e14);
4046
+ peg$fail(peg$e16);
3905
4047
  }
3906
4048
  }
3907
4049
  }
@@ -3912,24 +4054,24 @@ function peg$parse(input, options) {
3912
4054
  let s0, s1;
3913
4055
  s0 = [];
3914
4056
  s1 = input.charAt(peg$currPos);
3915
- if (peg$r6.test(s1)) {
4057
+ if (peg$r8.test(s1)) {
3916
4058
  peg$currPos++;
3917
4059
  } else {
3918
4060
  s1 = peg$FAILED;
3919
4061
  if (peg$silentFails === 0) {
3920
- peg$fail(peg$e14);
4062
+ peg$fail(peg$e16);
3921
4063
  }
3922
4064
  }
3923
4065
  if (s1 !== peg$FAILED) {
3924
4066
  while (s1 !== peg$FAILED) {
3925
4067
  s0.push(s1);
3926
4068
  s1 = input.charAt(peg$currPos);
3927
- if (peg$r6.test(s1)) {
4069
+ if (peg$r8.test(s1)) {
3928
4070
  peg$currPos++;
3929
4071
  } else {
3930
4072
  s1 = peg$FAILED;
3931
4073
  if (peg$silentFails === 0) {
3932
- peg$fail(peg$e14);
4074
+ peg$fail(peg$e16);
3933
4075
  }
3934
4076
  }
3935
4077
  }