@weborigami/language 0.5.2 → 0.5.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.
@@ -323,16 +323,17 @@ function peg$parse(input, options) {
323
323
  templateSubstitution: peg$parsetemplateSubstitution,
324
324
  textChar: peg$parsetextChar,
325
325
  unaryExpression: peg$parseunaryExpression,
326
+ unaryOperator: peg$parseunaryOperator,
326
327
  uri: peg$parseuri,
327
328
  uriExpression: peg$parseuriExpression,
328
329
  uriKey: peg$parseuriKey,
329
330
  uriKeyChar: peg$parseuriKeyChar,
330
331
  uriPath: peg$parseuriPath,
331
332
  uriScheme: peg$parseuriScheme,
332
- unaryOperator: peg$parseunaryOperator,
333
333
  whitespace: peg$parsewhitespace,
334
334
  whitespaceChar: peg$parsewhitespaceChar,
335
335
  whitespaceOptionalForProgram: peg$parsewhitespaceOptionalForProgram,
336
+ whitespaceOrParenthesis: peg$parsewhitespaceOrParenthesis,
336
337
  whitespaceWithNewLine: peg$parsewhitespaceWithNewLine,
337
338
  };
338
339
  let peg$startRuleFunction = peg$parse__;
@@ -345,80 +346,84 @@ function peg$parse(input, options) {
345
346
  const peg$c5 = "/";
346
347
  const peg$c6 = "[";
347
348
  const peg$c7 = "]";
348
- const peg$c8 = "(";
349
- const peg$c9 = ")";
350
- const peg$c10 = "&";
351
- const peg$c11 = "|";
352
- const peg$c12 = "^";
353
- const peg$c13 = ",";
354
- const peg$c14 = "?";
355
- const peg$c15 = ":";
356
- const peg$c16 = "\u21D2";
357
- const peg$c17 = "=>";
358
- const peg$c18 = "\"";
359
- const peg$c19 = "...";
360
- const peg$c20 = "\u2026";
361
- const peg$c21 = "===";
362
- const peg$c22 = "!==";
363
- const peg$c23 = "==";
364
- const peg$c24 = "!=";
365
- const peg$c25 = "\\0";
366
- const peg$c26 = "\\b";
367
- const peg$c27 = "\\f";
368
- const peg$c28 = "\\n";
369
- const peg$c29 = "\\r";
370
- const peg$c30 = "\\t";
371
- const peg$c31 = "\\v";
372
- const peg$c32 = "\\";
373
- const peg$c33 = "`";
374
- const peg$c34 = "}";
375
- const peg$c35 = "\xBB";
376
- const peg$c36 = "'";
377
- const peg$c37 = "**";
378
- const peg$c38 = ".";
379
- const peg$c39 = "---\n";
380
- const peg$c40 = "\xAB";
381
- const peg$c41 = "&&";
382
- const peg$c42 = "||";
383
- const peg$c43 = "-";
384
- const peg$c44 = "-\n";
385
- const peg$c45 = "/*";
386
- const peg$c46 = "*/";
387
- const peg$c47 = "new";
388
- const peg$c48 = "new:";
389
- const peg$c49 = "\n";
390
- const peg$c50 = "\r\n";
391
- const peg$c51 = "\r";
392
- const peg$c52 = "??";
393
- const peg$c53 = "{";
394
- const peg$c54 = "=";
395
- const peg$c55 = "?.";
396
- const peg$c56 = "<=";
397
- const peg$c57 = ">=";
398
- const peg$c58 = "#!";
399
- const peg$c59 = "<<";
400
- const peg$c60 = ">>>";
401
- const peg$c61 = ">>";
402
- const peg$c62 = "\u2192";
403
- const peg$c63 = "->";
404
- const peg$c64 = "${";
405
- const peg$c65 = "~";
349
+ const peg$c8 = "async";
350
+ const peg$c9 = "(";
351
+ const peg$c10 = ")";
352
+ const peg$c11 = "&";
353
+ const peg$c12 = "|";
354
+ const peg$c13 = "^";
355
+ const peg$c14 = ",";
356
+ const peg$c15 = "?";
357
+ const peg$c16 = ":";
358
+ const peg$c17 = "\u21D2";
359
+ const peg$c18 = "=>";
360
+ const peg$c19 = "\"";
361
+ const peg$c20 = "...";
362
+ const peg$c21 = "\u2026";
363
+ const peg$c22 = "===";
364
+ const peg$c23 = "!==";
365
+ const peg$c24 = "==";
366
+ const peg$c25 = "!=";
367
+ const peg$c26 = "\\0";
368
+ const peg$c27 = "\\b";
369
+ const peg$c28 = "\\f";
370
+ const peg$c29 = "\\n";
371
+ const peg$c30 = "\\r";
372
+ const peg$c31 = "\\t";
373
+ const peg$c32 = "\\v";
374
+ const peg$c33 = "\\";
375
+ const peg$c34 = "`";
376
+ const peg$c35 = "}";
377
+ const peg$c36 = "\xBB";
378
+ const peg$c37 = "'";
379
+ const peg$c38 = "**";
380
+ const peg$c39 = ".";
381
+ const peg$c40 = "---\n";
382
+ const peg$c41 = "\xAB";
383
+ const peg$c42 = "&&";
384
+ const peg$c43 = "||";
385
+ const peg$c44 = "-";
386
+ const peg$c45 = "-\n";
387
+ const peg$c46 = "/*";
388
+ const peg$c47 = "*/";
389
+ const peg$c48 = "new";
390
+ const peg$c49 = "new:";
391
+ const peg$c50 = "\n";
392
+ const peg$c51 = "\r\n";
393
+ const peg$c52 = "\r";
394
+ const peg$c53 = "??";
395
+ const peg$c54 = "{";
396
+ const peg$c55 = "=";
397
+ const peg$c56 = "?.";
398
+ const peg$c57 = "<=";
399
+ const peg$c58 = ">=";
400
+ const peg$c59 = "#!";
401
+ const peg$c60 = "<<";
402
+ const peg$c61 = ">>>";
403
+ const peg$c62 = ">>";
404
+ const peg$c63 = "\u2192";
405
+ const peg$c64 = "->";
406
+ const peg$c65 = "${";
407
+ const peg$c66 = "~";
408
+ const peg$c67 = "await";
409
+ const peg$c68 = "typeof";
410
+ const peg$c69 = "void";
406
411
 
407
412
  const peg$r0 = /^[^\/>\t\n\r]/;
408
413
  const peg$r1 = /^[0-9]/;
409
414
  const peg$r2 = /^[ \t]/;
410
- const peg$r3 = /^[!+]/;
411
- const peg$r4 = /^[%-&*\^|]/;
412
- const peg$r5 = /^[.@~]/;
413
- const peg$r6 = /^[%*\/]/;
414
- const peg$r7 = /^[gimuy]/;
415
- const peg$r8 = /^[^\/\n\r]/;
416
- const peg$r9 = /^[^\n\r]/;
417
- const peg$r10 = /^[^\/,)\]}]/;
418
- const peg$r11 = /^[a-z]/;
419
- const peg$r12 = /^[a-z0-9+-.]/;
420
- const peg$r13 = /^[:]/;
421
- const peg$r14 = /^[\/)\]}]/;
415
+ const peg$r3 = /^[!%-&*-+\^|]/;
416
+ const peg$r4 = /^[.@~]/;
417
+ const peg$r5 = /^[%*\/]/;
418
+ const peg$r6 = /^[gimuy]/;
419
+ const peg$r7 = /^[^\/\n\r]/;
420
+ const peg$r8 = /^[^\n\r]/;
421
+ const peg$r9 = /^[!+]/;
422
+ const peg$r10 = /^[\/)\]}]/;
423
+ const peg$r11 = /^[^\/,)\]}]/;
424
+ const peg$r12 = /^[a-z]/;
425
+ const peg$r13 = /^[a-z0-9+-.]/;
426
+ const peg$r14 = /^[:]/;
422
427
 
423
428
  const peg$e0 = peg$literalExpectation("+", false);
424
429
  const peg$e1 = peg$literalExpectation("<", false);
@@ -431,57 +436,57 @@ function peg$parse(input, options) {
431
436
  const peg$e8 = peg$otherExpectation("array");
432
437
  const peg$e9 = peg$literalExpectation("[", false);
433
438
  const peg$e10 = peg$literalExpectation("]", false);
434
- const peg$e11 = peg$literalExpectation("(", false);
435
- const peg$e12 = peg$literalExpectation(")", false);
436
- const peg$e13 = peg$literalExpectation("&", false);
437
- const peg$e14 = peg$literalExpectation("|", false);
438
- const peg$e15 = peg$literalExpectation("^", false);
439
- const peg$e16 = peg$otherExpectation("function call");
440
- const peg$e17 = peg$literalExpectation(",", false);
441
- const peg$e18 = peg$otherExpectation("comment");
442
- const peg$e19 = peg$literalExpectation("?", false);
443
- const peg$e20 = peg$literalExpectation(":", false);
444
- const peg$e21 = peg$classExpectation([["0", "9"]], false, false, false);
445
- const peg$e22 = peg$literalExpectation("\u21D2", false);
446
- const peg$e23 = peg$literalExpectation("=>", false);
447
- const peg$e24 = peg$otherExpectation("double quote string");
448
- const peg$e25 = peg$literalExpectation("\"", false);
449
- const peg$e26 = peg$literalExpectation("...", false);
450
- const peg$e27 = peg$literalExpectation("\u2026", false);
451
- const peg$e28 = peg$literalExpectation("===", false);
452
- const peg$e29 = peg$literalExpectation("!==", false);
453
- const peg$e30 = peg$literalExpectation("==", false);
454
- const peg$e31 = peg$literalExpectation("!=", false);
455
- const peg$e32 = peg$otherExpectation("backslash-escaped character");
456
- const peg$e33 = peg$literalExpectation("\\0", false);
457
- const peg$e34 = peg$literalExpectation("\\b", false);
458
- const peg$e35 = peg$literalExpectation("\\f", false);
459
- const peg$e36 = peg$literalExpectation("\\n", false);
460
- const peg$e37 = peg$literalExpectation("\\r", false);
461
- const peg$e38 = peg$literalExpectation("\\t", false);
462
- const peg$e39 = peg$literalExpectation("\\v", false);
463
- const peg$e40 = peg$literalExpectation("\\", false);
464
- const peg$e41 = peg$anyExpectation();
465
- const peg$e42 = peg$literalExpectation("`", false);
466
- const peg$e43 = peg$literalExpectation("}", false);
467
- const peg$e44 = peg$literalExpectation("\xBB", false);
468
- const peg$e45 = peg$literalExpectation("'", false);
469
- const peg$e46 = peg$literalExpectation("**", false);
470
- const peg$e47 = peg$otherExpectation("floating-point number");
471
- const peg$e48 = peg$literalExpectation(".", false);
472
- const peg$e49 = peg$literalExpectation("---\n", false);
473
- const peg$e50 = peg$otherExpectation("YAML front matter");
474
- const peg$e51 = peg$otherExpectation("parenthetical group");
475
- const peg$e52 = peg$otherExpectation("guillemet string");
476
- const peg$e53 = peg$literalExpectation("\xAB", false);
477
- const peg$e54 = peg$otherExpectation("HTTP/HTTPS host");
478
- const peg$e55 = peg$otherExpectation("JavaScript identifier continuation");
479
- const peg$e56 = peg$otherExpectation("JavaScript identifier start");
480
- const peg$e57 = peg$otherExpectation("function call with implicit parentheses");
481
- const peg$e58 = peg$classExpectation([" ", "\t"], false, false, false);
482
- const peg$e59 = peg$otherExpectation("integer");
483
- const peg$e60 = peg$classExpectation(["!", "+"], false, false, false);
484
- const peg$e61 = peg$classExpectation([["%", "&"], "*", "^", "|"], false, false, false);
439
+ const peg$e11 = peg$literalExpectation("async", false);
440
+ const peg$e12 = peg$literalExpectation("(", false);
441
+ const peg$e13 = peg$literalExpectation(")", false);
442
+ const peg$e14 = peg$literalExpectation("&", false);
443
+ const peg$e15 = peg$literalExpectation("|", false);
444
+ const peg$e16 = peg$literalExpectation("^", false);
445
+ const peg$e17 = peg$otherExpectation("function call");
446
+ const peg$e18 = peg$literalExpectation(",", false);
447
+ const peg$e19 = peg$otherExpectation("comment");
448
+ const peg$e20 = peg$literalExpectation("?", false);
449
+ const peg$e21 = peg$literalExpectation(":", false);
450
+ const peg$e22 = peg$classExpectation([["0", "9"]], false, false, false);
451
+ const peg$e23 = peg$literalExpectation("\u21D2", false);
452
+ const peg$e24 = peg$literalExpectation("=>", false);
453
+ const peg$e25 = peg$otherExpectation("double quote string");
454
+ const peg$e26 = peg$literalExpectation("\"", false);
455
+ const peg$e27 = peg$literalExpectation("...", false);
456
+ const peg$e28 = peg$literalExpectation("\u2026", false);
457
+ const peg$e29 = peg$literalExpectation("===", false);
458
+ const peg$e30 = peg$literalExpectation("!==", false);
459
+ const peg$e31 = peg$literalExpectation("==", false);
460
+ const peg$e32 = peg$literalExpectation("!=", false);
461
+ const peg$e33 = peg$otherExpectation("backslash-escaped character");
462
+ const peg$e34 = peg$literalExpectation("\\0", false);
463
+ const peg$e35 = peg$literalExpectation("\\b", false);
464
+ const peg$e36 = peg$literalExpectation("\\f", false);
465
+ const peg$e37 = peg$literalExpectation("\\n", false);
466
+ const peg$e38 = peg$literalExpectation("\\r", false);
467
+ const peg$e39 = peg$literalExpectation("\\t", false);
468
+ const peg$e40 = peg$literalExpectation("\\v", false);
469
+ const peg$e41 = peg$literalExpectation("\\", false);
470
+ const peg$e42 = peg$anyExpectation();
471
+ const peg$e43 = peg$literalExpectation("`", false);
472
+ const peg$e44 = peg$literalExpectation("}", false);
473
+ const peg$e45 = peg$literalExpectation("\xBB", false);
474
+ const peg$e46 = peg$literalExpectation("'", false);
475
+ const peg$e47 = peg$literalExpectation("**", false);
476
+ const peg$e48 = peg$otherExpectation("floating-point number");
477
+ const peg$e49 = peg$literalExpectation(".", false);
478
+ const peg$e50 = peg$literalExpectation("---\n", false);
479
+ const peg$e51 = peg$otherExpectation("YAML front matter");
480
+ const peg$e52 = peg$otherExpectation("parenthetical group");
481
+ const peg$e53 = peg$otherExpectation("guillemet string");
482
+ const peg$e54 = peg$literalExpectation("\xAB", false);
483
+ const peg$e55 = peg$otherExpectation("HTTP/HTTPS host");
484
+ const peg$e56 = peg$otherExpectation("JavaScript identifier continuation");
485
+ const peg$e57 = peg$otherExpectation("JavaScript identifier start");
486
+ const peg$e58 = peg$otherExpectation("function call with implicit parentheses");
487
+ const peg$e59 = peg$classExpectation([" ", "\t"], false, false, false);
488
+ const peg$e60 = peg$otherExpectation("integer");
489
+ const peg$e61 = peg$classExpectation(["!", ["%", "&"], ["*", "+"], "^", "|"], false, false, false);
485
490
  const peg$e62 = peg$classExpectation([".", "@", "~"], false, false, false);
486
491
  const peg$e63 = peg$otherExpectation("list");
487
492
  const peg$e64 = peg$literalExpectation("&&", false);
@@ -526,13 +531,17 @@ function peg$parse(input, options) {
526
531
  const peg$e103 = peg$otherExpectation("template document");
527
532
  const peg$e104 = peg$otherExpectation("template literal");
528
533
  const peg$e105 = peg$otherExpectation("template substitution");
529
- const peg$e106 = peg$classExpectation(["/", ",", ")", "]", "}"], true, false, false);
530
- const peg$e107 = peg$otherExpectation("slash-separated path");
531
- const peg$e108 = peg$classExpectation([["a", "z"]], false, false, false);
532
- const peg$e109 = peg$classExpectation([["a", "z"], ["0", "9"], ["+", "."]], false, false, false);
533
- const peg$e110 = peg$classExpectation([":"], false, false, false);
534
- const peg$e111 = peg$literalExpectation("~", false);
535
- const peg$e112 = peg$classExpectation(["/", ")", "]", "}"], false, false, false);
534
+ const peg$e106 = peg$classExpectation(["!", "+"], false, false, false);
535
+ const peg$e107 = peg$literalExpectation("~", false);
536
+ const peg$e108 = peg$classExpectation(["/", ")", "]", "}"], false, false, false);
537
+ const peg$e109 = peg$literalExpectation("await", false);
538
+ const peg$e110 = peg$literalExpectation("typeof", false);
539
+ const peg$e111 = peg$literalExpectation("void", false);
540
+ const peg$e112 = peg$classExpectation(["/", ",", ")", "]", "}"], true, false, false);
541
+ const peg$e113 = peg$otherExpectation("slash-separated path");
542
+ const peg$e114 = peg$classExpectation([["a", "z"]], false, false, false);
543
+ const peg$e115 = peg$classExpectation([["a", "z"], ["0", "9"], ["+", "."]], false, false, false);
544
+ const peg$e116 = peg$classExpectation([":"], false, false, false);
536
545
 
537
546
  function peg$f0() {
538
547
  return null;
@@ -1544,39 +1553,58 @@ function peg$parse(input, options) {
1544
1553
  }
1545
1554
 
1546
1555
  function peg$parsearrowFunction() {
1547
- let s0, s1, s2, s3, s4, s5, s6, s7, s8, s9;
1556
+ let s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10;
1548
1557
 
1549
1558
  s0 = peg$currPos;
1559
+ s1 = peg$currPos;
1560
+ if (input.substr(peg$currPos, 5) === peg$c8) {
1561
+ s2 = peg$c8;
1562
+ peg$currPos += 5;
1563
+ } else {
1564
+ s2 = peg$FAILED;
1565
+ if (peg$silentFails === 0) { peg$fail(peg$e11); }
1566
+ }
1567
+ if (s2 !== peg$FAILED) {
1568
+ s3 = peg$parse__();
1569
+ s2 = [s2, s3];
1570
+ s1 = s2;
1571
+ } else {
1572
+ peg$currPos = s1;
1573
+ s1 = peg$FAILED;
1574
+ }
1575
+ if (s1 === peg$FAILED) {
1576
+ s1 = null;
1577
+ }
1550
1578
  if (input.charCodeAt(peg$currPos) === 40) {
1551
- s1 = peg$c8;
1579
+ s2 = peg$c9;
1552
1580
  peg$currPos++;
1553
1581
  } else {
1554
- s1 = peg$FAILED;
1555
- if (peg$silentFails === 0) { peg$fail(peg$e11); }
1582
+ s2 = peg$FAILED;
1583
+ if (peg$silentFails === 0) { peg$fail(peg$e12); }
1556
1584
  }
1557
- if (s1 !== peg$FAILED) {
1558
- s2 = peg$parse__();
1559
- s3 = peg$parseparameterList();
1560
- if (s3 === peg$FAILED) {
1561
- s3 = null;
1585
+ if (s2 !== peg$FAILED) {
1586
+ s3 = peg$parse__();
1587
+ s4 = peg$parseparameterList();
1588
+ if (s4 === peg$FAILED) {
1589
+ s4 = null;
1562
1590
  }
1563
- s4 = peg$parse__();
1591
+ s5 = peg$parse__();
1564
1592
  if (input.charCodeAt(peg$currPos) === 41) {
1565
- s5 = peg$c9;
1593
+ s6 = peg$c10;
1566
1594
  peg$currPos++;
1567
1595
  } else {
1568
- s5 = peg$FAILED;
1569
- if (peg$silentFails === 0) { peg$fail(peg$e12); }
1596
+ s6 = peg$FAILED;
1597
+ if (peg$silentFails === 0) { peg$fail(peg$e13); }
1570
1598
  }
1571
- if (s5 !== peg$FAILED) {
1572
- s6 = peg$parse__();
1573
- s7 = peg$parsedoubleArrow();
1574
- if (s7 !== peg$FAILED) {
1575
- s8 = peg$parse__();
1576
- s9 = peg$parseexpectPipelineExpression();
1577
- if (s9 !== peg$FAILED) {
1599
+ if (s6 !== peg$FAILED) {
1600
+ s7 = peg$parse__();
1601
+ s8 = peg$parsedoubleArrow();
1602
+ if (s8 !== peg$FAILED) {
1603
+ s9 = peg$parse__();
1604
+ s10 = peg$parseexpectPipelineExpression();
1605
+ if (s10 !== peg$FAILED) {
1578
1606
  peg$savedPos = s0;
1579
- s0 = peg$f9(s3, s9);
1607
+ s0 = peg$f9(s4, s10);
1580
1608
  } else {
1581
1609
  peg$currPos = s0;
1582
1610
  s0 = peg$FAILED;
@@ -1702,21 +1730,21 @@ function peg$parse(input, options) {
1702
1730
 
1703
1731
  s0 = peg$currPos;
1704
1732
  if (input.charCodeAt(peg$currPos) === 38) {
1705
- s1 = peg$c10;
1733
+ s1 = peg$c11;
1706
1734
  peg$currPos++;
1707
1735
  } else {
1708
1736
  s1 = peg$FAILED;
1709
- if (peg$silentFails === 0) { peg$fail(peg$e13); }
1737
+ if (peg$silentFails === 0) { peg$fail(peg$e14); }
1710
1738
  }
1711
1739
  if (s1 !== peg$FAILED) {
1712
1740
  s2 = peg$currPos;
1713
1741
  peg$silentFails++;
1714
1742
  if (input.charCodeAt(peg$currPos) === 38) {
1715
- s3 = peg$c10;
1743
+ s3 = peg$c11;
1716
1744
  peg$currPos++;
1717
1745
  } else {
1718
1746
  s3 = peg$FAILED;
1719
- if (peg$silentFails === 0) { peg$fail(peg$e13); }
1747
+ if (peg$silentFails === 0) { peg$fail(peg$e14); }
1720
1748
  }
1721
1749
  peg$silentFails--;
1722
1750
  if (s3 === peg$FAILED) {
@@ -1816,21 +1844,21 @@ function peg$parse(input, options) {
1816
1844
 
1817
1845
  s0 = peg$currPos;
1818
1846
  if (input.charCodeAt(peg$currPos) === 124) {
1819
- s1 = peg$c11;
1847
+ s1 = peg$c12;
1820
1848
  peg$currPos++;
1821
1849
  } else {
1822
1850
  s1 = peg$FAILED;
1823
- if (peg$silentFails === 0) { peg$fail(peg$e14); }
1851
+ if (peg$silentFails === 0) { peg$fail(peg$e15); }
1824
1852
  }
1825
1853
  if (s1 !== peg$FAILED) {
1826
1854
  s2 = peg$currPos;
1827
1855
  peg$silentFails++;
1828
1856
  if (input.charCodeAt(peg$currPos) === 124) {
1829
- s3 = peg$c11;
1857
+ s3 = peg$c12;
1830
1858
  peg$currPos++;
1831
1859
  } else {
1832
1860
  s3 = peg$FAILED;
1833
- if (peg$silentFails === 0) { peg$fail(peg$e14); }
1861
+ if (peg$silentFails === 0) { peg$fail(peg$e15); }
1834
1862
  }
1835
1863
  peg$silentFails--;
1836
1864
  if (s3 === peg$FAILED) {
@@ -1929,11 +1957,11 @@ function peg$parse(input, options) {
1929
1957
  let s0;
1930
1958
 
1931
1959
  if (input.charCodeAt(peg$currPos) === 94) {
1932
- s0 = peg$c12;
1960
+ s0 = peg$c13;
1933
1961
  peg$currPos++;
1934
1962
  } else {
1935
1963
  s0 = peg$FAILED;
1936
- if (peg$silentFails === 0) { peg$fail(peg$e15); }
1964
+ if (peg$silentFails === 0) { peg$fail(peg$e16); }
1937
1965
  }
1938
1966
 
1939
1967
  return s0;
@@ -1961,7 +1989,7 @@ function peg$parse(input, options) {
1961
1989
  peg$silentFails--;
1962
1990
  if (s0 === peg$FAILED) {
1963
1991
  s1 = peg$FAILED;
1964
- if (peg$silentFails === 0) { peg$fail(peg$e16); }
1992
+ if (peg$silentFails === 0) { peg$fail(peg$e17); }
1965
1993
  }
1966
1994
 
1967
1995
  return s0;
@@ -1980,11 +2008,11 @@ function peg$parse(input, options) {
1980
2008
  s4 = peg$currPos;
1981
2009
  s5 = peg$parse__();
1982
2010
  if (input.charCodeAt(peg$currPos) === 44) {
1983
- s6 = peg$c13;
2011
+ s6 = peg$c14;
1984
2012
  peg$currPos++;
1985
2013
  } else {
1986
2014
  s6 = peg$FAILED;
1987
- if (peg$silentFails === 0) { peg$fail(peg$e17); }
2015
+ if (peg$silentFails === 0) { peg$fail(peg$e18); }
1988
2016
  }
1989
2017
  if (s6 !== peg$FAILED) {
1990
2018
  s7 = peg$parse__();
@@ -2032,7 +2060,7 @@ function peg$parse(input, options) {
2032
2060
  peg$silentFails--;
2033
2061
  if (s0 === peg$FAILED) {
2034
2062
  s1 = peg$FAILED;
2035
- if (peg$silentFails === 0) { peg$fail(peg$e18); }
2063
+ if (peg$silentFails === 0) { peg$fail(peg$e19); }
2036
2064
  }
2037
2065
 
2038
2066
  return s0;
@@ -2116,11 +2144,11 @@ function peg$parse(input, options) {
2116
2144
  s2 = peg$currPos;
2117
2145
  s3 = peg$parse__();
2118
2146
  if (input.charCodeAt(peg$currPos) === 63) {
2119
- s4 = peg$c14;
2147
+ s4 = peg$c15;
2120
2148
  peg$currPos++;
2121
2149
  } else {
2122
2150
  s4 = peg$FAILED;
2123
- if (peg$silentFails === 0) { peg$fail(peg$e19); }
2151
+ if (peg$silentFails === 0) { peg$fail(peg$e20); }
2124
2152
  }
2125
2153
  if (s4 !== peg$FAILED) {
2126
2154
  s5 = peg$parse__();
@@ -2128,11 +2156,11 @@ function peg$parse(input, options) {
2128
2156
  if (s6 !== peg$FAILED) {
2129
2157
  s7 = peg$parse__();
2130
2158
  if (input.charCodeAt(peg$currPos) === 58) {
2131
- s8 = peg$c15;
2159
+ s8 = peg$c16;
2132
2160
  peg$currPos++;
2133
2161
  } else {
2134
2162
  s8 = peg$FAILED;
2135
- if (peg$silentFails === 0) { peg$fail(peg$e20); }
2163
+ if (peg$silentFails === 0) { peg$fail(peg$e21); }
2136
2164
  }
2137
2165
  if (s8 !== peg$FAILED) {
2138
2166
  s9 = peg$parse__();
@@ -2178,7 +2206,7 @@ function peg$parse(input, options) {
2178
2206
  peg$currPos++;
2179
2207
  } else {
2180
2208
  s2 = peg$FAILED;
2181
- if (peg$silentFails === 0) { peg$fail(peg$e21); }
2209
+ if (peg$silentFails === 0) { peg$fail(peg$e22); }
2182
2210
  }
2183
2211
  if (s2 !== peg$FAILED) {
2184
2212
  while (s2 !== peg$FAILED) {
@@ -2188,7 +2216,7 @@ function peg$parse(input, options) {
2188
2216
  peg$currPos++;
2189
2217
  } else {
2190
2218
  s2 = peg$FAILED;
2191
- if (peg$silentFails === 0) { peg$fail(peg$e21); }
2219
+ if (peg$silentFails === 0) { peg$fail(peg$e22); }
2192
2220
  }
2193
2221
  }
2194
2222
  } else {
@@ -2208,19 +2236,19 @@ function peg$parse(input, options) {
2208
2236
  let s0;
2209
2237
 
2210
2238
  if (input.charCodeAt(peg$currPos) === 8658) {
2211
- s0 = peg$c16;
2239
+ s0 = peg$c17;
2212
2240
  peg$currPos++;
2213
2241
  } else {
2214
2242
  s0 = peg$FAILED;
2215
- if (peg$silentFails === 0) { peg$fail(peg$e22); }
2243
+ if (peg$silentFails === 0) { peg$fail(peg$e23); }
2216
2244
  }
2217
2245
  if (s0 === peg$FAILED) {
2218
- if (input.substr(peg$currPos, 2) === peg$c17) {
2219
- s0 = peg$c17;
2246
+ if (input.substr(peg$currPos, 2) === peg$c18) {
2247
+ s0 = peg$c18;
2220
2248
  peg$currPos += 2;
2221
2249
  } else {
2222
2250
  s0 = peg$FAILED;
2223
- if (peg$silentFails === 0) { peg$fail(peg$e23); }
2251
+ if (peg$silentFails === 0) { peg$fail(peg$e24); }
2224
2252
  }
2225
2253
  }
2226
2254
 
@@ -2233,11 +2261,11 @@ function peg$parse(input, options) {
2233
2261
  peg$silentFails++;
2234
2262
  s0 = peg$currPos;
2235
2263
  if (input.charCodeAt(peg$currPos) === 34) {
2236
- s1 = peg$c18;
2264
+ s1 = peg$c19;
2237
2265
  peg$currPos++;
2238
2266
  } else {
2239
2267
  s1 = peg$FAILED;
2240
- if (peg$silentFails === 0) { peg$fail(peg$e25); }
2268
+ if (peg$silentFails === 0) { peg$fail(peg$e26); }
2241
2269
  }
2242
2270
  if (s1 !== peg$FAILED) {
2243
2271
  s2 = [];
@@ -2261,7 +2289,7 @@ function peg$parse(input, options) {
2261
2289
  peg$silentFails--;
2262
2290
  if (s0 === peg$FAILED) {
2263
2291
  s1 = peg$FAILED;
2264
- if (peg$silentFails === 0) { peg$fail(peg$e24); }
2292
+ if (peg$silentFails === 0) { peg$fail(peg$e25); }
2265
2293
  }
2266
2294
 
2267
2295
  return s0;
@@ -2274,11 +2302,11 @@ function peg$parse(input, options) {
2274
2302
  s1 = peg$currPos;
2275
2303
  peg$silentFails++;
2276
2304
  if (input.charCodeAt(peg$currPos) === 34) {
2277
- s2 = peg$c18;
2305
+ s2 = peg$c19;
2278
2306
  peg$currPos++;
2279
2307
  } else {
2280
2308
  s2 = peg$FAILED;
2281
- if (peg$silentFails === 0) { peg$fail(peg$e25); }
2309
+ if (peg$silentFails === 0) { peg$fail(peg$e26); }
2282
2310
  }
2283
2311
  if (s2 === peg$FAILED) {
2284
2312
  s2 = peg$parsenewLine();
@@ -2309,21 +2337,21 @@ function peg$parse(input, options) {
2309
2337
  function peg$parseellipsis() {
2310
2338
  let s0, s1;
2311
2339
 
2312
- if (input.substr(peg$currPos, 3) === peg$c19) {
2313
- s0 = peg$c19;
2340
+ if (input.substr(peg$currPos, 3) === peg$c20) {
2341
+ s0 = peg$c20;
2314
2342
  peg$currPos += 3;
2315
2343
  } else {
2316
2344
  s0 = peg$FAILED;
2317
- if (peg$silentFails === 0) { peg$fail(peg$e26); }
2345
+ if (peg$silentFails === 0) { peg$fail(peg$e27); }
2318
2346
  }
2319
2347
  if (s0 === peg$FAILED) {
2320
2348
  s0 = peg$currPos;
2321
2349
  if (input.charCodeAt(peg$currPos) === 8230) {
2322
- s1 = peg$c20;
2350
+ s1 = peg$c21;
2323
2351
  peg$currPos++;
2324
2352
  } else {
2325
2353
  s1 = peg$FAILED;
2326
- if (peg$silentFails === 0) { peg$fail(peg$e27); }
2354
+ if (peg$silentFails === 0) { peg$fail(peg$e28); }
2327
2355
  }
2328
2356
  if (s1 !== peg$FAILED) {
2329
2357
  peg$savedPos = s0;
@@ -2390,36 +2418,36 @@ function peg$parse(input, options) {
2390
2418
  function peg$parseequalityOperator() {
2391
2419
  let s0;
2392
2420
 
2393
- if (input.substr(peg$currPos, 3) === peg$c21) {
2394
- s0 = peg$c21;
2421
+ if (input.substr(peg$currPos, 3) === peg$c22) {
2422
+ s0 = peg$c22;
2395
2423
  peg$currPos += 3;
2396
2424
  } else {
2397
2425
  s0 = peg$FAILED;
2398
- if (peg$silentFails === 0) { peg$fail(peg$e28); }
2426
+ if (peg$silentFails === 0) { peg$fail(peg$e29); }
2399
2427
  }
2400
2428
  if (s0 === peg$FAILED) {
2401
- if (input.substr(peg$currPos, 3) === peg$c22) {
2402
- s0 = peg$c22;
2429
+ if (input.substr(peg$currPos, 3) === peg$c23) {
2430
+ s0 = peg$c23;
2403
2431
  peg$currPos += 3;
2404
2432
  } else {
2405
2433
  s0 = peg$FAILED;
2406
- if (peg$silentFails === 0) { peg$fail(peg$e29); }
2434
+ if (peg$silentFails === 0) { peg$fail(peg$e30); }
2407
2435
  }
2408
2436
  if (s0 === peg$FAILED) {
2409
- if (input.substr(peg$currPos, 2) === peg$c23) {
2410
- s0 = peg$c23;
2437
+ if (input.substr(peg$currPos, 2) === peg$c24) {
2438
+ s0 = peg$c24;
2411
2439
  peg$currPos += 2;
2412
2440
  } else {
2413
2441
  s0 = peg$FAILED;
2414
- if (peg$silentFails === 0) { peg$fail(peg$e30); }
2442
+ if (peg$silentFails === 0) { peg$fail(peg$e31); }
2415
2443
  }
2416
2444
  if (s0 === peg$FAILED) {
2417
- if (input.substr(peg$currPos, 2) === peg$c24) {
2418
- s0 = peg$c24;
2445
+ if (input.substr(peg$currPos, 2) === peg$c25) {
2446
+ s0 = peg$c25;
2419
2447
  peg$currPos += 2;
2420
2448
  } else {
2421
2449
  s0 = peg$FAILED;
2422
- if (peg$silentFails === 0) { peg$fail(peg$e31); }
2450
+ if (peg$silentFails === 0) { peg$fail(peg$e32); }
2423
2451
  }
2424
2452
  }
2425
2453
  }
@@ -2433,12 +2461,12 @@ function peg$parse(input, options) {
2433
2461
 
2434
2462
  peg$silentFails++;
2435
2463
  s0 = peg$currPos;
2436
- if (input.substr(peg$currPos, 2) === peg$c25) {
2437
- s1 = peg$c25;
2464
+ if (input.substr(peg$currPos, 2) === peg$c26) {
2465
+ s1 = peg$c26;
2438
2466
  peg$currPos += 2;
2439
2467
  } else {
2440
2468
  s1 = peg$FAILED;
2441
- if (peg$silentFails === 0) { peg$fail(peg$e33); }
2469
+ if (peg$silentFails === 0) { peg$fail(peg$e34); }
2442
2470
  }
2443
2471
  if (s1 !== peg$FAILED) {
2444
2472
  peg$savedPos = s0;
@@ -2447,12 +2475,12 @@ function peg$parse(input, options) {
2447
2475
  s0 = s1;
2448
2476
  if (s0 === peg$FAILED) {
2449
2477
  s0 = peg$currPos;
2450
- if (input.substr(peg$currPos, 2) === peg$c26) {
2451
- s1 = peg$c26;
2478
+ if (input.substr(peg$currPos, 2) === peg$c27) {
2479
+ s1 = peg$c27;
2452
2480
  peg$currPos += 2;
2453
2481
  } else {
2454
2482
  s1 = peg$FAILED;
2455
- if (peg$silentFails === 0) { peg$fail(peg$e34); }
2483
+ if (peg$silentFails === 0) { peg$fail(peg$e35); }
2456
2484
  }
2457
2485
  if (s1 !== peg$FAILED) {
2458
2486
  peg$savedPos = s0;
@@ -2461,12 +2489,12 @@ function peg$parse(input, options) {
2461
2489
  s0 = s1;
2462
2490
  if (s0 === peg$FAILED) {
2463
2491
  s0 = peg$currPos;
2464
- if (input.substr(peg$currPos, 2) === peg$c27) {
2465
- s1 = peg$c27;
2492
+ if (input.substr(peg$currPos, 2) === peg$c28) {
2493
+ s1 = peg$c28;
2466
2494
  peg$currPos += 2;
2467
2495
  } else {
2468
2496
  s1 = peg$FAILED;
2469
- if (peg$silentFails === 0) { peg$fail(peg$e35); }
2497
+ if (peg$silentFails === 0) { peg$fail(peg$e36); }
2470
2498
  }
2471
2499
  if (s1 !== peg$FAILED) {
2472
2500
  peg$savedPos = s0;
@@ -2475,12 +2503,12 @@ function peg$parse(input, options) {
2475
2503
  s0 = s1;
2476
2504
  if (s0 === peg$FAILED) {
2477
2505
  s0 = peg$currPos;
2478
- if (input.substr(peg$currPos, 2) === peg$c28) {
2479
- s1 = peg$c28;
2506
+ if (input.substr(peg$currPos, 2) === peg$c29) {
2507
+ s1 = peg$c29;
2480
2508
  peg$currPos += 2;
2481
2509
  } else {
2482
2510
  s1 = peg$FAILED;
2483
- if (peg$silentFails === 0) { peg$fail(peg$e36); }
2511
+ if (peg$silentFails === 0) { peg$fail(peg$e37); }
2484
2512
  }
2485
2513
  if (s1 !== peg$FAILED) {
2486
2514
  peg$savedPos = s0;
@@ -2489,12 +2517,12 @@ function peg$parse(input, options) {
2489
2517
  s0 = s1;
2490
2518
  if (s0 === peg$FAILED) {
2491
2519
  s0 = peg$currPos;
2492
- if (input.substr(peg$currPos, 2) === peg$c29) {
2493
- s1 = peg$c29;
2520
+ if (input.substr(peg$currPos, 2) === peg$c30) {
2521
+ s1 = peg$c30;
2494
2522
  peg$currPos += 2;
2495
2523
  } else {
2496
2524
  s1 = peg$FAILED;
2497
- if (peg$silentFails === 0) { peg$fail(peg$e37); }
2525
+ if (peg$silentFails === 0) { peg$fail(peg$e38); }
2498
2526
  }
2499
2527
  if (s1 !== peg$FAILED) {
2500
2528
  peg$savedPos = s0;
@@ -2503,12 +2531,12 @@ function peg$parse(input, options) {
2503
2531
  s0 = s1;
2504
2532
  if (s0 === peg$FAILED) {
2505
2533
  s0 = peg$currPos;
2506
- if (input.substr(peg$currPos, 2) === peg$c30) {
2507
- s1 = peg$c30;
2534
+ if (input.substr(peg$currPos, 2) === peg$c31) {
2535
+ s1 = peg$c31;
2508
2536
  peg$currPos += 2;
2509
2537
  } else {
2510
2538
  s1 = peg$FAILED;
2511
- if (peg$silentFails === 0) { peg$fail(peg$e38); }
2539
+ if (peg$silentFails === 0) { peg$fail(peg$e39); }
2512
2540
  }
2513
2541
  if (s1 !== peg$FAILED) {
2514
2542
  peg$savedPos = s0;
@@ -2517,12 +2545,12 @@ function peg$parse(input, options) {
2517
2545
  s0 = s1;
2518
2546
  if (s0 === peg$FAILED) {
2519
2547
  s0 = peg$currPos;
2520
- if (input.substr(peg$currPos, 2) === peg$c31) {
2521
- s1 = peg$c31;
2548
+ if (input.substr(peg$currPos, 2) === peg$c32) {
2549
+ s1 = peg$c32;
2522
2550
  peg$currPos += 2;
2523
2551
  } else {
2524
2552
  s1 = peg$FAILED;
2525
- if (peg$silentFails === 0) { peg$fail(peg$e39); }
2553
+ if (peg$silentFails === 0) { peg$fail(peg$e40); }
2526
2554
  }
2527
2555
  if (s1 !== peg$FAILED) {
2528
2556
  peg$savedPos = s0;
@@ -2532,11 +2560,11 @@ function peg$parse(input, options) {
2532
2560
  if (s0 === peg$FAILED) {
2533
2561
  s0 = peg$currPos;
2534
2562
  if (input.charCodeAt(peg$currPos) === 92) {
2535
- s1 = peg$c32;
2563
+ s1 = peg$c33;
2536
2564
  peg$currPos++;
2537
2565
  } else {
2538
2566
  s1 = peg$FAILED;
2539
- if (peg$silentFails === 0) { peg$fail(peg$e40); }
2567
+ if (peg$silentFails === 0) { peg$fail(peg$e41); }
2540
2568
  }
2541
2569
  if (s1 !== peg$FAILED) {
2542
2570
  if (input.length > peg$currPos) {
@@ -2544,7 +2572,7 @@ function peg$parse(input, options) {
2544
2572
  peg$currPos++;
2545
2573
  } else {
2546
2574
  s2 = peg$FAILED;
2547
- if (peg$silentFails === 0) { peg$fail(peg$e41); }
2575
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
2548
2576
  }
2549
2577
  if (s2 !== peg$FAILED) {
2550
2578
  s0 = s2;
@@ -2566,7 +2594,7 @@ function peg$parse(input, options) {
2566
2594
  peg$silentFails--;
2567
2595
  if (s0 === peg$FAILED) {
2568
2596
  s1 = peg$FAILED;
2569
- if (peg$silentFails === 0) { peg$fail(peg$e32); }
2597
+ if (peg$silentFails === 0) { peg$fail(peg$e33); }
2570
2598
  }
2571
2599
 
2572
2600
  return s0;
@@ -2576,11 +2604,11 @@ function peg$parse(input, options) {
2576
2604
  let s0, s1;
2577
2605
 
2578
2606
  if (input.charCodeAt(peg$currPos) === 96) {
2579
- s0 = peg$c33;
2607
+ s0 = peg$c34;
2580
2608
  peg$currPos++;
2581
2609
  } else {
2582
2610
  s0 = peg$FAILED;
2583
- if (peg$silentFails === 0) { peg$fail(peg$e42); }
2611
+ if (peg$silentFails === 0) { peg$fail(peg$e43); }
2584
2612
  }
2585
2613
  if (s0 === peg$FAILED) {
2586
2614
  s0 = peg$currPos;
@@ -2589,7 +2617,7 @@ function peg$parse(input, options) {
2589
2617
  peg$currPos++;
2590
2618
  } else {
2591
2619
  s1 = peg$FAILED;
2592
- if (peg$silentFails === 0) { peg$fail(peg$e41); }
2620
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
2593
2621
  }
2594
2622
  if (s1 === peg$FAILED) {
2595
2623
  s1 = null;
@@ -2606,11 +2634,11 @@ function peg$parse(input, options) {
2606
2634
  let s0, s1;
2607
2635
 
2608
2636
  if (input.charCodeAt(peg$currPos) === 125) {
2609
- s0 = peg$c34;
2637
+ s0 = peg$c35;
2610
2638
  peg$currPos++;
2611
2639
  } else {
2612
2640
  s0 = peg$FAILED;
2613
- if (peg$silentFails === 0) { peg$fail(peg$e43); }
2641
+ if (peg$silentFails === 0) { peg$fail(peg$e44); }
2614
2642
  }
2615
2643
  if (s0 === peg$FAILED) {
2616
2644
  s0 = peg$currPos;
@@ -2619,7 +2647,7 @@ function peg$parse(input, options) {
2619
2647
  peg$currPos++;
2620
2648
  } else {
2621
2649
  s1 = peg$FAILED;
2622
- if (peg$silentFails === 0) { peg$fail(peg$e41); }
2650
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
2623
2651
  }
2624
2652
  if (s1 === peg$FAILED) {
2625
2653
  s1 = null;
@@ -2649,7 +2677,7 @@ function peg$parse(input, options) {
2649
2677
  peg$currPos++;
2650
2678
  } else {
2651
2679
  s1 = peg$FAILED;
2652
- if (peg$silentFails === 0) { peg$fail(peg$e41); }
2680
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
2653
2681
  }
2654
2682
  if (s1 === peg$FAILED) {
2655
2683
  s1 = null;
@@ -2666,11 +2694,11 @@ function peg$parse(input, options) {
2666
2694
  let s0, s1;
2667
2695
 
2668
2696
  if (input.charCodeAt(peg$currPos) === 41) {
2669
- s0 = peg$c9;
2697
+ s0 = peg$c10;
2670
2698
  peg$currPos++;
2671
2699
  } else {
2672
2700
  s0 = peg$FAILED;
2673
- if (peg$silentFails === 0) { peg$fail(peg$e12); }
2701
+ if (peg$silentFails === 0) { peg$fail(peg$e13); }
2674
2702
  }
2675
2703
  if (s0 === peg$FAILED) {
2676
2704
  s0 = peg$currPos;
@@ -2679,7 +2707,7 @@ function peg$parse(input, options) {
2679
2707
  peg$currPos++;
2680
2708
  } else {
2681
2709
  s1 = peg$FAILED;
2682
- if (peg$silentFails === 0) { peg$fail(peg$e41); }
2710
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
2683
2711
  }
2684
2712
  if (s1 === peg$FAILED) {
2685
2713
  s1 = null;
@@ -2696,11 +2724,11 @@ function peg$parse(input, options) {
2696
2724
  let s0, s1;
2697
2725
 
2698
2726
  if (input.charCodeAt(peg$currPos) === 34) {
2699
- s0 = peg$c18;
2727
+ s0 = peg$c19;
2700
2728
  peg$currPos++;
2701
2729
  } else {
2702
2730
  s0 = peg$FAILED;
2703
- if (peg$silentFails === 0) { peg$fail(peg$e25); }
2731
+ if (peg$silentFails === 0) { peg$fail(peg$e26); }
2704
2732
  }
2705
2733
  if (s0 === peg$FAILED) {
2706
2734
  s0 = peg$currPos;
@@ -2709,7 +2737,7 @@ function peg$parse(input, options) {
2709
2737
  peg$currPos++;
2710
2738
  } else {
2711
2739
  s1 = peg$FAILED;
2712
- if (peg$silentFails === 0) { peg$fail(peg$e41); }
2740
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
2713
2741
  }
2714
2742
  if (s1 === peg$FAILED) {
2715
2743
  s1 = null;
@@ -2733,7 +2761,7 @@ function peg$parse(input, options) {
2733
2761
  peg$currPos++;
2734
2762
  } else {
2735
2763
  s1 = peg$FAILED;
2736
- if (peg$silentFails === 0) { peg$fail(peg$e41); }
2764
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
2737
2765
  }
2738
2766
  if (s1 === peg$FAILED) {
2739
2767
  s1 = null;
@@ -2757,7 +2785,7 @@ function peg$parse(input, options) {
2757
2785
  peg$currPos++;
2758
2786
  } else {
2759
2787
  s1 = peg$FAILED;
2760
- if (peg$silentFails === 0) { peg$fail(peg$e41); }
2788
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
2761
2789
  }
2762
2790
  if (s1 === peg$FAILED) {
2763
2791
  s1 = null;
@@ -2774,11 +2802,11 @@ function peg$parse(input, options) {
2774
2802
  let s0, s1;
2775
2803
 
2776
2804
  if (input.charCodeAt(peg$currPos) === 187) {
2777
- s0 = peg$c35;
2805
+ s0 = peg$c36;
2778
2806
  peg$currPos++;
2779
2807
  } else {
2780
2808
  s0 = peg$FAILED;
2781
- if (peg$silentFails === 0) { peg$fail(peg$e44); }
2809
+ if (peg$silentFails === 0) { peg$fail(peg$e45); }
2782
2810
  }
2783
2811
  if (s0 === peg$FAILED) {
2784
2812
  s0 = peg$currPos;
@@ -2787,7 +2815,7 @@ function peg$parse(input, options) {
2787
2815
  peg$currPos++;
2788
2816
  } else {
2789
2817
  s1 = peg$FAILED;
2790
- if (peg$silentFails === 0) { peg$fail(peg$e41); }
2818
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
2791
2819
  }
2792
2820
  if (s1 === peg$FAILED) {
2793
2821
  s1 = null;
@@ -2804,11 +2832,11 @@ function peg$parse(input, options) {
2804
2832
  let s0, s1;
2805
2833
 
2806
2834
  if (input.charCodeAt(peg$currPos) === 39) {
2807
- s0 = peg$c36;
2835
+ s0 = peg$c37;
2808
2836
  peg$currPos++;
2809
2837
  } else {
2810
2838
  s0 = peg$FAILED;
2811
- if (peg$silentFails === 0) { peg$fail(peg$e45); }
2839
+ if (peg$silentFails === 0) { peg$fail(peg$e46); }
2812
2840
  }
2813
2841
  if (s0 === peg$FAILED) {
2814
2842
  s0 = peg$currPos;
@@ -2817,7 +2845,7 @@ function peg$parse(input, options) {
2817
2845
  peg$currPos++;
2818
2846
  } else {
2819
2847
  s1 = peg$FAILED;
2820
- if (peg$silentFails === 0) { peg$fail(peg$e41); }
2848
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
2821
2849
  }
2822
2850
  if (s1 === peg$FAILED) {
2823
2851
  s1 = null;
@@ -2841,7 +2869,7 @@ function peg$parse(input, options) {
2841
2869
  peg$currPos++;
2842
2870
  } else {
2843
2871
  s1 = peg$FAILED;
2844
- if (peg$silentFails === 0) { peg$fail(peg$e41); }
2872
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
2845
2873
  }
2846
2874
  if (s1 === peg$FAILED) {
2847
2875
  s1 = null;
@@ -2865,7 +2893,7 @@ function peg$parse(input, options) {
2865
2893
  peg$currPos++;
2866
2894
  } else {
2867
2895
  s1 = peg$FAILED;
2868
- if (peg$silentFails === 0) { peg$fail(peg$e41); }
2896
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
2869
2897
  }
2870
2898
  if (s1 === peg$FAILED) {
2871
2899
  s1 = null;
@@ -2887,12 +2915,12 @@ function peg$parse(input, options) {
2887
2915
  s2 = peg$currPos;
2888
2916
  s3 = peg$parsewhitespace();
2889
2917
  if (s3 !== peg$FAILED) {
2890
- if (input.substr(peg$currPos, 2) === peg$c37) {
2891
- s4 = peg$c37;
2918
+ if (input.substr(peg$currPos, 2) === peg$c38) {
2919
+ s4 = peg$c38;
2892
2920
  peg$currPos += 2;
2893
2921
  } else {
2894
2922
  s4 = peg$FAILED;
2895
- if (peg$silentFails === 0) { peg$fail(peg$e46); }
2923
+ if (peg$silentFails === 0) { peg$fail(peg$e47); }
2896
2924
  }
2897
2925
  if (s4 !== peg$FAILED) {
2898
2926
  s5 = peg$parsewhitespace();
@@ -2956,11 +2984,11 @@ function peg$parse(input, options) {
2956
2984
  s1 = null;
2957
2985
  }
2958
2986
  if (input.charCodeAt(peg$currPos) === 46) {
2959
- s2 = peg$c38;
2987
+ s2 = peg$c39;
2960
2988
  peg$currPos++;
2961
2989
  } else {
2962
2990
  s2 = peg$FAILED;
2963
- if (peg$silentFails === 0) { peg$fail(peg$e48); }
2991
+ if (peg$silentFails === 0) { peg$fail(peg$e49); }
2964
2992
  }
2965
2993
  if (s2 !== peg$FAILED) {
2966
2994
  s3 = peg$parsedigits();
@@ -2978,7 +3006,7 @@ function peg$parse(input, options) {
2978
3006
  peg$silentFails--;
2979
3007
  if (s0 === peg$FAILED) {
2980
3008
  s1 = peg$FAILED;
2981
- if (peg$silentFails === 0) { peg$fail(peg$e47); }
3009
+ if (peg$silentFails === 0) { peg$fail(peg$e48); }
2982
3010
  }
2983
3011
 
2984
3012
  return s0;
@@ -2987,12 +3015,12 @@ function peg$parse(input, options) {
2987
3015
  function peg$parsefrontDelimiter() {
2988
3016
  let s0;
2989
3017
 
2990
- if (input.substr(peg$currPos, 4) === peg$c39) {
2991
- s0 = peg$c39;
3018
+ if (input.substr(peg$currPos, 4) === peg$c40) {
3019
+ s0 = peg$c40;
2992
3020
  peg$currPos += 4;
2993
3021
  } else {
2994
3022
  s0 = peg$FAILED;
2995
- if (peg$silentFails === 0) { peg$fail(peg$e49); }
3023
+ if (peg$silentFails === 0) { peg$fail(peg$e50); }
2996
3024
  }
2997
3025
 
2998
3026
  return s0;
@@ -3059,7 +3087,7 @@ function peg$parse(input, options) {
3059
3087
  peg$currPos++;
3060
3088
  } else {
3061
3089
  s4 = peg$FAILED;
3062
- if (peg$silentFails === 0) { peg$fail(peg$e41); }
3090
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
3063
3091
  }
3064
3092
  if (s4 !== peg$FAILED) {
3065
3093
  s2 = s4;
@@ -3090,7 +3118,7 @@ function peg$parse(input, options) {
3090
3118
  peg$currPos++;
3091
3119
  } else {
3092
3120
  s4 = peg$FAILED;
3093
- if (peg$silentFails === 0) { peg$fail(peg$e41); }
3121
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
3094
3122
  }
3095
3123
  if (s4 !== peg$FAILED) {
3096
3124
  s2 = s4;
@@ -3133,7 +3161,7 @@ function peg$parse(input, options) {
3133
3161
  peg$silentFails--;
3134
3162
  if (s0 === peg$FAILED) {
3135
3163
  s1 = peg$FAILED;
3136
- if (peg$silentFails === 0) { peg$fail(peg$e50); }
3164
+ if (peg$silentFails === 0) { peg$fail(peg$e51); }
3137
3165
  }
3138
3166
 
3139
3167
  return s0;
@@ -3145,11 +3173,11 @@ function peg$parse(input, options) {
3145
3173
  peg$silentFails++;
3146
3174
  s0 = peg$currPos;
3147
3175
  if (input.charCodeAt(peg$currPos) === 40) {
3148
- s1 = peg$c8;
3176
+ s1 = peg$c9;
3149
3177
  peg$currPos++;
3150
3178
  } else {
3151
3179
  s1 = peg$FAILED;
3152
- if (peg$silentFails === 0) { peg$fail(peg$e11); }
3180
+ if (peg$silentFails === 0) { peg$fail(peg$e12); }
3153
3181
  }
3154
3182
  if (s1 !== peg$FAILED) {
3155
3183
  s2 = peg$parseexpectExpression();
@@ -3173,7 +3201,7 @@ function peg$parse(input, options) {
3173
3201
  peg$silentFails--;
3174
3202
  if (s0 === peg$FAILED) {
3175
3203
  s1 = peg$FAILED;
3176
- if (peg$silentFails === 0) { peg$fail(peg$e51); }
3204
+ if (peg$silentFails === 0) { peg$fail(peg$e52); }
3177
3205
  }
3178
3206
 
3179
3207
  return s0;
@@ -3185,11 +3213,11 @@ function peg$parse(input, options) {
3185
3213
  peg$silentFails++;
3186
3214
  s0 = peg$currPos;
3187
3215
  if (input.charCodeAt(peg$currPos) === 171) {
3188
- s1 = peg$c40;
3216
+ s1 = peg$c41;
3189
3217
  peg$currPos++;
3190
3218
  } else {
3191
3219
  s1 = peg$FAILED;
3192
- if (peg$silentFails === 0) { peg$fail(peg$e53); }
3220
+ if (peg$silentFails === 0) { peg$fail(peg$e54); }
3193
3221
  }
3194
3222
  if (s1 !== peg$FAILED) {
3195
3223
  s2 = [];
@@ -3213,7 +3241,7 @@ function peg$parse(input, options) {
3213
3241
  peg$silentFails--;
3214
3242
  if (s0 === peg$FAILED) {
3215
3243
  s1 = peg$FAILED;
3216
- if (peg$silentFails === 0) { peg$fail(peg$e52); }
3244
+ if (peg$silentFails === 0) { peg$fail(peg$e53); }
3217
3245
  }
3218
3246
 
3219
3247
  return s0;
@@ -3226,11 +3254,11 @@ function peg$parse(input, options) {
3226
3254
  s1 = peg$currPos;
3227
3255
  peg$silentFails++;
3228
3256
  if (input.charCodeAt(peg$currPos) === 187) {
3229
- s2 = peg$c35;
3257
+ s2 = peg$c36;
3230
3258
  peg$currPos++;
3231
3259
  } else {
3232
3260
  s2 = peg$FAILED;
3233
- if (peg$silentFails === 0) { peg$fail(peg$e44); }
3261
+ if (peg$silentFails === 0) { peg$fail(peg$e45); }
3234
3262
  }
3235
3263
  if (s2 === peg$FAILED) {
3236
3264
  s2 = peg$parsenewLine();
@@ -3267,11 +3295,11 @@ function peg$parse(input, options) {
3267
3295
  if (s1 !== peg$FAILED) {
3268
3296
  s2 = peg$currPos;
3269
3297
  if (input.charCodeAt(peg$currPos) === 58) {
3270
- s3 = peg$c15;
3298
+ s3 = peg$c16;
3271
3299
  peg$currPos++;
3272
3300
  } else {
3273
3301
  s3 = peg$FAILED;
3274
- if (peg$silentFails === 0) { peg$fail(peg$e20); }
3302
+ if (peg$silentFails === 0) { peg$fail(peg$e21); }
3275
3303
  }
3276
3304
  if (s3 !== peg$FAILED) {
3277
3305
  s4 = peg$parseintegerLiteral();
@@ -3301,7 +3329,7 @@ function peg$parse(input, options) {
3301
3329
  peg$silentFails--;
3302
3330
  if (s0 === peg$FAILED) {
3303
3331
  s1 = peg$FAILED;
3304
- if (peg$silentFails === 0) { peg$fail(peg$e54); }
3332
+ if (peg$silentFails === 0) { peg$fail(peg$e55); }
3305
3333
  }
3306
3334
 
3307
3335
  return s0;
@@ -3379,7 +3407,7 @@ function peg$parse(input, options) {
3379
3407
  peg$currPos++;
3380
3408
  } else {
3381
3409
  s1 = peg$FAILED;
3382
- if (peg$silentFails === 0) { peg$fail(peg$e41); }
3410
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
3383
3411
  }
3384
3412
  if (s1 !== peg$FAILED) {
3385
3413
  peg$savedPos = peg$currPos;
@@ -3403,7 +3431,7 @@ function peg$parse(input, options) {
3403
3431
  peg$silentFails--;
3404
3432
  if (s0 === peg$FAILED) {
3405
3433
  s1 = peg$FAILED;
3406
- if (peg$silentFails === 0) { peg$fail(peg$e55); }
3434
+ if (peg$silentFails === 0) { peg$fail(peg$e56); }
3407
3435
  }
3408
3436
 
3409
3437
  return s0;
@@ -3419,7 +3447,7 @@ function peg$parse(input, options) {
3419
3447
  peg$currPos++;
3420
3448
  } else {
3421
3449
  s1 = peg$FAILED;
3422
- if (peg$silentFails === 0) { peg$fail(peg$e41); }
3450
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
3423
3451
  }
3424
3452
  if (s1 !== peg$FAILED) {
3425
3453
  peg$savedPos = peg$currPos;
@@ -3443,7 +3471,7 @@ function peg$parse(input, options) {
3443
3471
  peg$silentFails--;
3444
3472
  if (s0 === peg$FAILED) {
3445
3473
  s1 = peg$FAILED;
3446
- if (peg$silentFails === 0) { peg$fail(peg$e56); }
3474
+ if (peg$silentFails === 0) { peg$fail(peg$e57); }
3447
3475
  }
3448
3476
 
3449
3477
  return s0;
@@ -3491,7 +3519,7 @@ function peg$parse(input, options) {
3491
3519
  peg$silentFails--;
3492
3520
  if (s0 === peg$FAILED) {
3493
3521
  s1 = peg$FAILED;
3494
- if (peg$silentFails === 0) { peg$fail(peg$e57); }
3522
+ if (peg$silentFails === 0) { peg$fail(peg$e58); }
3495
3523
  }
3496
3524
 
3497
3525
  return s0;
@@ -3555,7 +3583,7 @@ function peg$parse(input, options) {
3555
3583
  peg$currPos++;
3556
3584
  } else {
3557
3585
  s0 = peg$FAILED;
3558
- if (peg$silentFails === 0) { peg$fail(peg$e58); }
3586
+ if (peg$silentFails === 0) { peg$fail(peg$e59); }
3559
3587
  }
3560
3588
 
3561
3589
  return s0;
@@ -3575,7 +3603,7 @@ function peg$parse(input, options) {
3575
3603
  peg$silentFails--;
3576
3604
  if (s0 === peg$FAILED) {
3577
3605
  s1 = peg$FAILED;
3578
- if (peg$silentFails === 0) { peg$fail(peg$e59); }
3606
+ if (peg$silentFails === 0) { peg$fail(peg$e60); }
3579
3607
  }
3580
3608
 
3581
3609
  return s0;
@@ -3613,19 +3641,10 @@ function peg$parse(input, options) {
3613
3641
  peg$currPos++;
3614
3642
  } else {
3615
3643
  s0 = peg$FAILED;
3616
- if (peg$silentFails === 0) { peg$fail(peg$e60); }
3644
+ if (peg$silentFails === 0) { peg$fail(peg$e61); }
3617
3645
  }
3618
3646
  if (s0 === peg$FAILED) {
3619
3647
  s0 = peg$parseminus();
3620
- if (s0 === peg$FAILED) {
3621
- s0 = input.charAt(peg$currPos);
3622
- if (peg$r4.test(s0)) {
3623
- peg$currPos++;
3624
- } else {
3625
- s0 = peg$FAILED;
3626
- if (peg$silentFails === 0) { peg$fail(peg$e61); }
3627
- }
3628
- }
3629
3648
  }
3630
3649
  }
3631
3650
 
@@ -3641,7 +3660,7 @@ function peg$parse(input, options) {
3641
3660
  peg$currPos++;
3642
3661
  } else {
3643
3662
  s1 = peg$FAILED;
3644
- if (peg$silentFails === 0) { peg$fail(peg$e41); }
3663
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
3645
3664
  }
3646
3665
  if (s1 !== peg$FAILED) {
3647
3666
  peg$savedPos = peg$currPos;
@@ -3664,7 +3683,7 @@ function peg$parse(input, options) {
3664
3683
  }
3665
3684
  if (s0 === peg$FAILED) {
3666
3685
  s0 = input.charAt(peg$currPos);
3667
- if (peg$r5.test(s0)) {
3686
+ if (peg$r4.test(s0)) {
3668
3687
  peg$currPos++;
3669
3688
  } else {
3670
3689
  s0 = peg$FAILED;
@@ -3734,8 +3753,8 @@ function peg$parse(input, options) {
3734
3753
  s2 = [];
3735
3754
  s3 = peg$currPos;
3736
3755
  s4 = peg$parse__();
3737
- if (input.substr(peg$currPos, 2) === peg$c41) {
3738
- s5 = peg$c41;
3756
+ if (input.substr(peg$currPos, 2) === peg$c42) {
3757
+ s5 = peg$c42;
3739
3758
  peg$currPos += 2;
3740
3759
  } else {
3741
3760
  s5 = peg$FAILED;
@@ -3758,8 +3777,8 @@ function peg$parse(input, options) {
3758
3777
  s2.push(s3);
3759
3778
  s3 = peg$currPos;
3760
3779
  s4 = peg$parse__();
3761
- if (input.substr(peg$currPos, 2) === peg$c41) {
3762
- s5 = peg$c41;
3780
+ if (input.substr(peg$currPos, 2) === peg$c42) {
3781
+ s5 = peg$c42;
3763
3782
  peg$currPos += 2;
3764
3783
  } else {
3765
3784
  s5 = peg$FAILED;
@@ -3798,8 +3817,8 @@ function peg$parse(input, options) {
3798
3817
  s2 = [];
3799
3818
  s3 = peg$currPos;
3800
3819
  s4 = peg$parse__();
3801
- if (input.substr(peg$currPos, 2) === peg$c42) {
3802
- s5 = peg$c42;
3820
+ if (input.substr(peg$currPos, 2) === peg$c43) {
3821
+ s5 = peg$c43;
3803
3822
  peg$currPos += 2;
3804
3823
  } else {
3805
3824
  s5 = peg$FAILED;
@@ -3822,8 +3841,8 @@ function peg$parse(input, options) {
3822
3841
  s2.push(s3);
3823
3842
  s3 = peg$currPos;
3824
3843
  s4 = peg$parse__();
3825
- if (input.substr(peg$currPos, 2) === peg$c42) {
3826
- s5 = peg$c42;
3844
+ if (input.substr(peg$currPos, 2) === peg$c43) {
3845
+ s5 = peg$c43;
3827
3846
  peg$currPos += 2;
3828
3847
  } else {
3829
3848
  s5 = peg$FAILED;
@@ -3858,7 +3877,7 @@ function peg$parse(input, options) {
3858
3877
 
3859
3878
  s0 = peg$currPos;
3860
3879
  if (input.charCodeAt(peg$currPos) === 45) {
3861
- s1 = peg$c43;
3880
+ s1 = peg$c44;
3862
3881
  peg$currPos++;
3863
3882
  } else {
3864
3883
  s1 = peg$FAILED;
@@ -3867,8 +3886,8 @@ function peg$parse(input, options) {
3867
3886
  if (s1 !== peg$FAILED) {
3868
3887
  s2 = peg$currPos;
3869
3888
  peg$silentFails++;
3870
- if (input.substr(peg$currPos, 2) === peg$c44) {
3871
- s3 = peg$c44;
3889
+ if (input.substr(peg$currPos, 2) === peg$c45) {
3890
+ s3 = peg$c45;
3872
3891
  peg$currPos += 2;
3873
3892
  } else {
3874
3893
  s3 = peg$FAILED;
@@ -3920,8 +3939,8 @@ function peg$parse(input, options) {
3920
3939
  let s0, s1, s2, s3, s4, s5;
3921
3940
 
3922
3941
  s0 = peg$currPos;
3923
- if (input.substr(peg$currPos, 2) === peg$c45) {
3924
- s1 = peg$c45;
3942
+ if (input.substr(peg$currPos, 2) === peg$c46) {
3943
+ s1 = peg$c46;
3925
3944
  peg$currPos += 2;
3926
3945
  } else {
3927
3946
  s1 = peg$FAILED;
@@ -3932,8 +3951,8 @@ function peg$parse(input, options) {
3932
3951
  s3 = peg$currPos;
3933
3952
  s4 = peg$currPos;
3934
3953
  peg$silentFails++;
3935
- if (input.substr(peg$currPos, 2) === peg$c46) {
3936
- s5 = peg$c46;
3954
+ if (input.substr(peg$currPos, 2) === peg$c47) {
3955
+ s5 = peg$c47;
3937
3956
  peg$currPos += 2;
3938
3957
  } else {
3939
3958
  s5 = peg$FAILED;
@@ -3952,7 +3971,7 @@ function peg$parse(input, options) {
3952
3971
  peg$currPos++;
3953
3972
  } else {
3954
3973
  s5 = peg$FAILED;
3955
- if (peg$silentFails === 0) { peg$fail(peg$e41); }
3974
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
3956
3975
  }
3957
3976
  if (s5 !== peg$FAILED) {
3958
3977
  s4 = [s4, s5];
@@ -3970,8 +3989,8 @@ function peg$parse(input, options) {
3970
3989
  s3 = peg$currPos;
3971
3990
  s4 = peg$currPos;
3972
3991
  peg$silentFails++;
3973
- if (input.substr(peg$currPos, 2) === peg$c46) {
3974
- s5 = peg$c46;
3992
+ if (input.substr(peg$currPos, 2) === peg$c47) {
3993
+ s5 = peg$c47;
3975
3994
  peg$currPos += 2;
3976
3995
  } else {
3977
3996
  s5 = peg$FAILED;
@@ -3990,7 +4009,7 @@ function peg$parse(input, options) {
3990
4009
  peg$currPos++;
3991
4010
  } else {
3992
4011
  s5 = peg$FAILED;
3993
- if (peg$silentFails === 0) { peg$fail(peg$e41); }
4012
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
3994
4013
  }
3995
4014
  if (s5 !== peg$FAILED) {
3996
4015
  s4 = [s4, s5];
@@ -4004,8 +4023,8 @@ function peg$parse(input, options) {
4004
4023
  s3 = peg$FAILED;
4005
4024
  }
4006
4025
  }
4007
- if (input.substr(peg$currPos, 2) === peg$c46) {
4008
- s3 = peg$c46;
4026
+ if (input.substr(peg$currPos, 2) === peg$c47) {
4027
+ s3 = peg$c47;
4009
4028
  peg$currPos += 2;
4010
4029
  } else {
4011
4030
  s3 = peg$FAILED;
@@ -4102,7 +4121,7 @@ function peg$parse(input, options) {
4102
4121
  let s0;
4103
4122
 
4104
4123
  s0 = input.charAt(peg$currPos);
4105
- if (peg$r6.test(s0)) {
4124
+ if (peg$r5.test(s0)) {
4106
4125
  peg$currPos++;
4107
4126
  } else {
4108
4127
  s0 = peg$FAILED;
@@ -4116,8 +4135,8 @@ function peg$parse(input, options) {
4116
4135
  let s0, s1, s2, s3, s4;
4117
4136
 
4118
4137
  s0 = peg$currPos;
4119
- if (input.substr(peg$currPos, 3) === peg$c47) {
4120
- s1 = peg$c47;
4138
+ if (input.substr(peg$currPos, 3) === peg$c48) {
4139
+ s1 = peg$c48;
4121
4140
  peg$currPos += 3;
4122
4141
  } else {
4123
4142
  s1 = peg$FAILED;
@@ -4143,8 +4162,8 @@ function peg$parse(input, options) {
4143
4162
  }
4144
4163
  if (s0 === peg$FAILED) {
4145
4164
  s0 = peg$currPos;
4146
- if (input.substr(peg$currPos, 4) === peg$c48) {
4147
- s1 = peg$c48;
4165
+ if (input.substr(peg$currPos, 4) === peg$c49) {
4166
+ s1 = peg$c49;
4148
4167
  peg$currPos += 4;
4149
4168
  } else {
4150
4169
  s1 = peg$FAILED;
@@ -4178,15 +4197,15 @@ function peg$parse(input, options) {
4178
4197
  let s0;
4179
4198
 
4180
4199
  if (input.charCodeAt(peg$currPos) === 10) {
4181
- s0 = peg$c49;
4200
+ s0 = peg$c50;
4182
4201
  peg$currPos++;
4183
4202
  } else {
4184
4203
  s0 = peg$FAILED;
4185
4204
  if (peg$silentFails === 0) { peg$fail(peg$e73); }
4186
4205
  }
4187
4206
  if (s0 === peg$FAILED) {
4188
- if (input.substr(peg$currPos, 2) === peg$c50) {
4189
- s0 = peg$c50;
4207
+ if (input.substr(peg$currPos, 2) === peg$c51) {
4208
+ s0 = peg$c51;
4190
4209
  peg$currPos += 2;
4191
4210
  } else {
4192
4211
  s0 = peg$FAILED;
@@ -4194,7 +4213,7 @@ function peg$parse(input, options) {
4194
4213
  }
4195
4214
  if (s0 === peg$FAILED) {
4196
4215
  if (input.charCodeAt(peg$currPos) === 13) {
4197
- s0 = peg$c51;
4216
+ s0 = peg$c52;
4198
4217
  peg$currPos++;
4199
4218
  } else {
4200
4219
  s0 = peg$FAILED;
@@ -4232,8 +4251,8 @@ function peg$parse(input, options) {
4232
4251
  s2 = [];
4233
4252
  s3 = peg$currPos;
4234
4253
  s4 = peg$parse__();
4235
- if (input.substr(peg$currPos, 2) === peg$c52) {
4236
- s5 = peg$c52;
4254
+ if (input.substr(peg$currPos, 2) === peg$c53) {
4255
+ s5 = peg$c53;
4237
4256
  peg$currPos += 2;
4238
4257
  } else {
4239
4258
  s5 = peg$FAILED;
@@ -4256,8 +4275,8 @@ function peg$parse(input, options) {
4256
4275
  s2.push(s3);
4257
4276
  s3 = peg$currPos;
4258
4277
  s4 = peg$parse__();
4259
- if (input.substr(peg$currPos, 2) === peg$c52) {
4260
- s5 = peg$c52;
4278
+ if (input.substr(peg$currPos, 2) === peg$c53) {
4279
+ s5 = peg$c53;
4261
4280
  peg$currPos += 2;
4262
4281
  } else {
4263
4282
  s5 = peg$FAILED;
@@ -4293,7 +4312,7 @@ function peg$parse(input, options) {
4293
4312
  peg$silentFails++;
4294
4313
  s0 = peg$currPos;
4295
4314
  if (input.charCodeAt(peg$currPos) === 123) {
4296
- s1 = peg$c53;
4315
+ s1 = peg$c54;
4297
4316
  peg$currPos++;
4298
4317
  } else {
4299
4318
  s1 = peg$FAILED;
@@ -4397,7 +4416,7 @@ function peg$parse(input, options) {
4397
4416
  if (s1 !== peg$FAILED) {
4398
4417
  s2 = peg$parse__();
4399
4418
  if (input.charCodeAt(peg$currPos) === 61) {
4400
- s3 = peg$c54;
4419
+ s3 = peg$c55;
4401
4420
  peg$currPos++;
4402
4421
  } else {
4403
4422
  s3 = peg$FAILED;
@@ -4436,21 +4455,21 @@ function peg$parse(input, options) {
4436
4455
  s0 = peg$currPos;
4437
4456
  s1 = peg$currPos;
4438
4457
  if (input.charCodeAt(peg$currPos) === 40) {
4439
- s2 = peg$c8;
4458
+ s2 = peg$c9;
4440
4459
  peg$currPos++;
4441
4460
  } else {
4442
4461
  s2 = peg$FAILED;
4443
- if (peg$silentFails === 0) { peg$fail(peg$e11); }
4462
+ if (peg$silentFails === 0) { peg$fail(peg$e12); }
4444
4463
  }
4445
4464
  if (s2 !== peg$FAILED) {
4446
4465
  s3 = peg$parseobjectPublicKey();
4447
4466
  if (s3 !== peg$FAILED) {
4448
4467
  if (input.charCodeAt(peg$currPos) === 41) {
4449
- s4 = peg$c9;
4468
+ s4 = peg$c10;
4450
4469
  peg$currPos++;
4451
4470
  } else {
4452
4471
  s4 = peg$FAILED;
4453
- if (peg$silentFails === 0) { peg$fail(peg$e12); }
4472
+ if (peg$silentFails === 0) { peg$fail(peg$e13); }
4454
4473
  }
4455
4474
  if (s4 !== peg$FAILED) {
4456
4475
  s2 = [s2, s3, s4];
@@ -4502,11 +4521,11 @@ function peg$parse(input, options) {
4502
4521
  if (s1 !== peg$FAILED) {
4503
4522
  s2 = peg$parse__();
4504
4523
  if (input.charCodeAt(peg$currPos) === 58) {
4505
- s3 = peg$c15;
4524
+ s3 = peg$c16;
4506
4525
  peg$currPos++;
4507
4526
  } else {
4508
4527
  s3 = peg$FAILED;
4509
- if (peg$silentFails === 0) { peg$fail(peg$e20); }
4528
+ if (peg$silentFails === 0) { peg$fail(peg$e21); }
4510
4529
  }
4511
4530
  if (s3 !== peg$FAILED) {
4512
4531
  s4 = peg$parse__();
@@ -4604,8 +4623,8 @@ function peg$parse(input, options) {
4604
4623
 
4605
4624
  s0 = peg$currPos;
4606
4625
  s1 = peg$parse__();
4607
- if (input.substr(peg$currPos, 2) === peg$c55) {
4608
- s2 = peg$c55;
4626
+ if (input.substr(peg$currPos, 2) === peg$c56) {
4627
+ s2 = peg$c56;
4609
4628
  peg$currPos += 2;
4610
4629
  } else {
4611
4630
  s2 = peg$FAILED;
@@ -4707,11 +4726,11 @@ function peg$parse(input, options) {
4707
4726
  peg$silentFails++;
4708
4727
  s0 = peg$currPos;
4709
4728
  if (input.charCodeAt(peg$currPos) === 40) {
4710
- s1 = peg$c8;
4729
+ s1 = peg$c9;
4711
4730
  peg$currPos++;
4712
4731
  } else {
4713
4732
  s1 = peg$FAILED;
4714
- if (peg$silentFails === 0) { peg$fail(peg$e11); }
4733
+ if (peg$silentFails === 0) { peg$fail(peg$e12); }
4715
4734
  }
4716
4735
  if (s1 !== peg$FAILED) {
4717
4736
  s2 = peg$parse__();
@@ -4994,11 +5013,11 @@ function peg$parse(input, options) {
4994
5013
  s1 = peg$parsewhitespaceOptionalForProgram();
4995
5014
  if (s1 !== peg$FAILED) {
4996
5015
  if (input.charCodeAt(peg$currPos) === 46) {
4997
- s2 = peg$c38;
5016
+ s2 = peg$c39;
4998
5017
  peg$currPos++;
4999
5018
  } else {
5000
5019
  s2 = peg$FAILED;
5001
- if (peg$silentFails === 0) { peg$fail(peg$e48); }
5020
+ if (peg$silentFails === 0) { peg$fail(peg$e49); }
5002
5021
  }
5003
5022
  if (s2 !== peg$FAILED) {
5004
5023
  s3 = peg$parsewhitespaceOptionalForProgram();
@@ -5033,7 +5052,7 @@ function peg$parse(input, options) {
5033
5052
  s0 = peg$currPos;
5034
5053
  s1 = [];
5035
5054
  s2 = input.charAt(peg$currPos);
5036
- if (peg$r7.test(s2)) {
5055
+ if (peg$r6.test(s2)) {
5037
5056
  peg$currPos++;
5038
5057
  } else {
5039
5058
  s2 = peg$FAILED;
@@ -5042,7 +5061,7 @@ function peg$parse(input, options) {
5042
5061
  while (s2 !== peg$FAILED) {
5043
5062
  s1.push(s2);
5044
5063
  s2 = input.charAt(peg$currPos);
5045
- if (peg$r7.test(s2)) {
5064
+ if (peg$r6.test(s2)) {
5046
5065
  peg$currPos++;
5047
5066
  } else {
5048
5067
  s2 = peg$FAILED;
@@ -5101,7 +5120,7 @@ function peg$parse(input, options) {
5101
5120
  let s0;
5102
5121
 
5103
5122
  s0 = input.charAt(peg$currPos);
5104
- if (peg$r8.test(s0)) {
5123
+ if (peg$r7.test(s0)) {
5105
5124
  peg$currPos++;
5106
5125
  } else {
5107
5126
  s0 = peg$FAILED;
@@ -5179,8 +5198,8 @@ function peg$parse(input, options) {
5179
5198
  function peg$parserelationalOperator() {
5180
5199
  let s0;
5181
5200
 
5182
- if (input.substr(peg$currPos, 2) === peg$c56) {
5183
- s0 = peg$c56;
5201
+ if (input.substr(peg$currPos, 2) === peg$c57) {
5202
+ s0 = peg$c57;
5184
5203
  peg$currPos += 2;
5185
5204
  } else {
5186
5205
  s0 = peg$FAILED;
@@ -5195,8 +5214,8 @@ function peg$parse(input, options) {
5195
5214
  if (peg$silentFails === 0) { peg$fail(peg$e1); }
5196
5215
  }
5197
5216
  if (s0 === peg$FAILED) {
5198
- if (input.substr(peg$currPos, 2) === peg$c57) {
5199
- s0 = peg$c57;
5217
+ if (input.substr(peg$currPos, 2) === peg$c58) {
5218
+ s0 = peg$c58;
5200
5219
  peg$currPos += 2;
5201
5220
  } else {
5202
5221
  s0 = peg$FAILED;
@@ -5223,11 +5242,11 @@ function peg$parse(input, options) {
5223
5242
  s0 = peg$currPos;
5224
5243
  s1 = peg$parse__();
5225
5244
  if (input.charCodeAt(peg$currPos) === 44) {
5226
- s2 = peg$c13;
5245
+ s2 = peg$c14;
5227
5246
  peg$currPos++;
5228
5247
  } else {
5229
5248
  s2 = peg$FAILED;
5230
- if (peg$silentFails === 0) { peg$fail(peg$e17); }
5249
+ if (peg$silentFails === 0) { peg$fail(peg$e18); }
5231
5250
  }
5232
5251
  if (s2 !== peg$FAILED) {
5233
5252
  s3 = peg$parse__();
@@ -5255,8 +5274,8 @@ function peg$parse(input, options) {
5255
5274
  let s0, s1, s2, s3;
5256
5275
 
5257
5276
  s0 = peg$currPos;
5258
- if (input.substr(peg$currPos, 2) === peg$c58) {
5259
- s1 = peg$c58;
5277
+ if (input.substr(peg$currPos, 2) === peg$c59) {
5278
+ s1 = peg$c59;
5260
5279
  peg$currPos += 2;
5261
5280
  } else {
5262
5281
  s1 = peg$FAILED;
@@ -5265,7 +5284,7 @@ function peg$parse(input, options) {
5265
5284
  if (s1 !== peg$FAILED) {
5266
5285
  s2 = [];
5267
5286
  s3 = input.charAt(peg$currPos);
5268
- if (peg$r9.test(s3)) {
5287
+ if (peg$r8.test(s3)) {
5269
5288
  peg$currPos++;
5270
5289
  } else {
5271
5290
  s3 = peg$FAILED;
@@ -5274,7 +5293,7 @@ function peg$parse(input, options) {
5274
5293
  while (s3 !== peg$FAILED) {
5275
5294
  s2.push(s3);
5276
5295
  s3 = input.charAt(peg$currPos);
5277
- if (peg$r9.test(s3)) {
5296
+ if (peg$r8.test(s3)) {
5278
5297
  peg$currPos++;
5279
5298
  } else {
5280
5299
  s3 = peg$FAILED;
@@ -5360,24 +5379,24 @@ function peg$parse(input, options) {
5360
5379
  function peg$parseshiftOperator() {
5361
5380
  let s0;
5362
5381
 
5363
- if (input.substr(peg$currPos, 2) === peg$c59) {
5364
- s0 = peg$c59;
5382
+ if (input.substr(peg$currPos, 2) === peg$c60) {
5383
+ s0 = peg$c60;
5365
5384
  peg$currPos += 2;
5366
5385
  } else {
5367
5386
  s0 = peg$FAILED;
5368
5387
  if (peg$silentFails === 0) { peg$fail(peg$e94); }
5369
5388
  }
5370
5389
  if (s0 === peg$FAILED) {
5371
- if (input.substr(peg$currPos, 3) === peg$c60) {
5372
- s0 = peg$c60;
5390
+ if (input.substr(peg$currPos, 3) === peg$c61) {
5391
+ s0 = peg$c61;
5373
5392
  peg$currPos += 3;
5374
5393
  } else {
5375
5394
  s0 = peg$FAILED;
5376
5395
  if (peg$silentFails === 0) { peg$fail(peg$e95); }
5377
5396
  }
5378
5397
  if (s0 === peg$FAILED) {
5379
- if (input.substr(peg$currPos, 2) === peg$c61) {
5380
- s0 = peg$c61;
5398
+ if (input.substr(peg$currPos, 2) === peg$c62) {
5399
+ s0 = peg$c62;
5381
5400
  peg$currPos += 2;
5382
5401
  } else {
5383
5402
  s0 = peg$FAILED;
@@ -5400,7 +5419,7 @@ function peg$parse(input, options) {
5400
5419
  }
5401
5420
  if (s1 !== peg$FAILED) {
5402
5421
  if (input.charCodeAt(peg$currPos) === 61) {
5403
- s2 = peg$c54;
5422
+ s2 = peg$c55;
5404
5423
  peg$currPos++;
5405
5424
  } else {
5406
5425
  s2 = peg$FAILED;
@@ -5410,7 +5429,7 @@ function peg$parse(input, options) {
5410
5429
  s3 = peg$currPos;
5411
5430
  peg$silentFails++;
5412
5431
  if (input.charCodeAt(peg$currPos) === 61) {
5413
- s4 = peg$c54;
5432
+ s4 = peg$c55;
5414
5433
  peg$currPos++;
5415
5434
  } else {
5416
5435
  s4 = peg$FAILED;
@@ -5461,15 +5480,15 @@ function peg$parse(input, options) {
5461
5480
  let s0;
5462
5481
 
5463
5482
  if (input.charCodeAt(peg$currPos) === 8594) {
5464
- s0 = peg$c62;
5483
+ s0 = peg$c63;
5465
5484
  peg$currPos++;
5466
5485
  } else {
5467
5486
  s0 = peg$FAILED;
5468
5487
  if (peg$silentFails === 0) { peg$fail(peg$e98); }
5469
5488
  }
5470
5489
  if (s0 === peg$FAILED) {
5471
- if (input.substr(peg$currPos, 2) === peg$c63) {
5472
- s0 = peg$c63;
5490
+ if (input.substr(peg$currPos, 2) === peg$c64) {
5491
+ s0 = peg$c64;
5473
5492
  peg$currPos += 2;
5474
5493
  } else {
5475
5494
  s0 = peg$FAILED;
@@ -5494,7 +5513,7 @@ function peg$parse(input, options) {
5494
5513
  if (s1 !== peg$FAILED) {
5495
5514
  s2 = [];
5496
5515
  s3 = input.charAt(peg$currPos);
5497
- if (peg$r9.test(s3)) {
5516
+ if (peg$r8.test(s3)) {
5498
5517
  peg$currPos++;
5499
5518
  } else {
5500
5519
  s3 = peg$FAILED;
@@ -5503,7 +5522,7 @@ function peg$parse(input, options) {
5503
5522
  while (s3 !== peg$FAILED) {
5504
5523
  s2.push(s3);
5505
5524
  s3 = input.charAt(peg$currPos);
5506
- if (peg$r9.test(s3)) {
5525
+ if (peg$r8.test(s3)) {
5507
5526
  peg$currPos++;
5508
5527
  } else {
5509
5528
  s3 = peg$FAILED;
@@ -5526,11 +5545,11 @@ function peg$parse(input, options) {
5526
5545
  peg$silentFails++;
5527
5546
  s0 = peg$currPos;
5528
5547
  if (input.charCodeAt(peg$currPos) === 39) {
5529
- s1 = peg$c36;
5548
+ s1 = peg$c37;
5530
5549
  peg$currPos++;
5531
5550
  } else {
5532
5551
  s1 = peg$FAILED;
5533
- if (peg$silentFails === 0) { peg$fail(peg$e45); }
5552
+ if (peg$silentFails === 0) { peg$fail(peg$e46); }
5534
5553
  }
5535
5554
  if (s1 !== peg$FAILED) {
5536
5555
  s2 = [];
@@ -5567,11 +5586,11 @@ function peg$parse(input, options) {
5567
5586
  s1 = peg$currPos;
5568
5587
  peg$silentFails++;
5569
5588
  if (input.charCodeAt(peg$currPos) === 39) {
5570
- s2 = peg$c36;
5589
+ s2 = peg$c37;
5571
5590
  peg$currPos++;
5572
5591
  } else {
5573
5592
  s2 = peg$FAILED;
5574
- if (peg$silentFails === 0) { peg$fail(peg$e45); }
5593
+ if (peg$silentFails === 0) { peg$fail(peg$e46); }
5575
5594
  }
5576
5595
  if (s2 === peg$FAILED) {
5577
5596
  s2 = peg$parsenewLine();
@@ -5776,8 +5795,8 @@ function peg$parse(input, options) {
5776
5795
  s0 = peg$currPos;
5777
5796
  s1 = peg$currPos;
5778
5797
  peg$silentFails++;
5779
- if (input.substr(peg$currPos, 2) === peg$c64) {
5780
- s2 = peg$c64;
5798
+ if (input.substr(peg$currPos, 2) === peg$c65) {
5799
+ s2 = peg$c65;
5781
5800
  peg$currPos += 2;
5782
5801
  } else {
5783
5802
  s2 = peg$FAILED;
@@ -5874,11 +5893,11 @@ function peg$parse(input, options) {
5874
5893
  peg$silentFails++;
5875
5894
  s0 = peg$currPos;
5876
5895
  if (input.charCodeAt(peg$currPos) === 96) {
5877
- s1 = peg$c33;
5896
+ s1 = peg$c34;
5878
5897
  peg$currPos++;
5879
5898
  } else {
5880
5899
  s1 = peg$FAILED;
5881
- if (peg$silentFails === 0) { peg$fail(peg$e42); }
5900
+ if (peg$silentFails === 0) { peg$fail(peg$e43); }
5882
5901
  }
5883
5902
  if (s1 !== peg$FAILED) {
5884
5903
  s2 = peg$parsetemplateLiteralText();
@@ -5934,15 +5953,15 @@ function peg$parse(input, options) {
5934
5953
  s1 = peg$currPos;
5935
5954
  peg$silentFails++;
5936
5955
  if (input.charCodeAt(peg$currPos) === 96) {
5937
- s2 = peg$c33;
5956
+ s2 = peg$c34;
5938
5957
  peg$currPos++;
5939
5958
  } else {
5940
5959
  s2 = peg$FAILED;
5941
- if (peg$silentFails === 0) { peg$fail(peg$e42); }
5960
+ if (peg$silentFails === 0) { peg$fail(peg$e43); }
5942
5961
  }
5943
5962
  if (s2 === peg$FAILED) {
5944
- if (input.substr(peg$currPos, 2) === peg$c64) {
5945
- s2 = peg$c64;
5963
+ if (input.substr(peg$currPos, 2) === peg$c65) {
5964
+ s2 = peg$c65;
5946
5965
  peg$currPos += 2;
5947
5966
  } else {
5948
5967
  s2 = peg$FAILED;
@@ -5994,8 +6013,8 @@ function peg$parse(input, options) {
5994
6013
 
5995
6014
  peg$silentFails++;
5996
6015
  s0 = peg$currPos;
5997
- if (input.substr(peg$currPos, 2) === peg$c64) {
5998
- s1 = peg$c64;
6016
+ if (input.substr(peg$currPos, 2) === peg$c65) {
6017
+ s1 = peg$c65;
5999
6018
  peg$currPos += 2;
6000
6019
  } else {
6001
6020
  s1 = peg$FAILED;
@@ -6005,11 +6024,11 @@ function peg$parse(input, options) {
6005
6024
  s2 = peg$parseexpectExpression();
6006
6025
  if (s2 !== peg$FAILED) {
6007
6026
  if (input.charCodeAt(peg$currPos) === 125) {
6008
- s3 = peg$c34;
6027
+ s3 = peg$c35;
6009
6028
  peg$currPos++;
6010
6029
  } else {
6011
6030
  s3 = peg$FAILED;
6012
- if (peg$silentFails === 0) { peg$fail(peg$e43); }
6031
+ if (peg$silentFails === 0) { peg$fail(peg$e44); }
6013
6032
  }
6014
6033
  if (s3 !== peg$FAILED) {
6015
6034
  peg$savedPos = s0;
@@ -6045,7 +6064,7 @@ function peg$parse(input, options) {
6045
6064
  peg$currPos++;
6046
6065
  } else {
6047
6066
  s0 = peg$FAILED;
6048
- if (peg$silentFails === 0) { peg$fail(peg$e41); }
6067
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
6049
6068
  }
6050
6069
  }
6051
6070
 
@@ -6078,6 +6097,153 @@ function peg$parse(input, options) {
6078
6097
  return s0;
6079
6098
  }
6080
6099
 
6100
+ function peg$parseunaryOperator() {
6101
+ let s0, s1, s2, s3;
6102
+
6103
+ s0 = input.charAt(peg$currPos);
6104
+ if (peg$r9.test(s0)) {
6105
+ peg$currPos++;
6106
+ } else {
6107
+ s0 = peg$FAILED;
6108
+ if (peg$silentFails === 0) { peg$fail(peg$e106); }
6109
+ }
6110
+ if (s0 === peg$FAILED) {
6111
+ s0 = peg$currPos;
6112
+ if (input.charCodeAt(peg$currPos) === 126) {
6113
+ s1 = peg$c66;
6114
+ peg$currPos++;
6115
+ } else {
6116
+ s1 = peg$FAILED;
6117
+ if (peg$silentFails === 0) { peg$fail(peg$e107); }
6118
+ }
6119
+ if (s1 !== peg$FAILED) {
6120
+ s2 = peg$currPos;
6121
+ peg$silentFails++;
6122
+ s3 = input.charAt(peg$currPos);
6123
+ if (peg$r10.test(s3)) {
6124
+ peg$currPos++;
6125
+ } else {
6126
+ s3 = peg$FAILED;
6127
+ if (peg$silentFails === 0) { peg$fail(peg$e108); }
6128
+ }
6129
+ peg$silentFails--;
6130
+ if (s3 === peg$FAILED) {
6131
+ s2 = undefined;
6132
+ } else {
6133
+ peg$currPos = s2;
6134
+ s2 = peg$FAILED;
6135
+ }
6136
+ if (s2 !== peg$FAILED) {
6137
+ s0 = s1;
6138
+ } else {
6139
+ peg$currPos = s0;
6140
+ s0 = peg$FAILED;
6141
+ }
6142
+ } else {
6143
+ peg$currPos = s0;
6144
+ s0 = peg$FAILED;
6145
+ }
6146
+ if (s0 === peg$FAILED) {
6147
+ s0 = peg$parseminus();
6148
+ if (s0 === peg$FAILED) {
6149
+ s0 = peg$currPos;
6150
+ if (input.substr(peg$currPos, 5) === peg$c67) {
6151
+ s1 = peg$c67;
6152
+ peg$currPos += 5;
6153
+ } else {
6154
+ s1 = peg$FAILED;
6155
+ if (peg$silentFails === 0) { peg$fail(peg$e109); }
6156
+ }
6157
+ if (s1 !== peg$FAILED) {
6158
+ s2 = peg$currPos;
6159
+ peg$silentFails++;
6160
+ s3 = peg$parsewhitespaceOrParenthesis();
6161
+ peg$silentFails--;
6162
+ if (s3 !== peg$FAILED) {
6163
+ peg$currPos = s2;
6164
+ s2 = undefined;
6165
+ } else {
6166
+ s2 = peg$FAILED;
6167
+ }
6168
+ if (s2 !== peg$FAILED) {
6169
+ s0 = s1;
6170
+ } else {
6171
+ peg$currPos = s0;
6172
+ s0 = peg$FAILED;
6173
+ }
6174
+ } else {
6175
+ peg$currPos = s0;
6176
+ s0 = peg$FAILED;
6177
+ }
6178
+ if (s0 === peg$FAILED) {
6179
+ s0 = peg$currPos;
6180
+ if (input.substr(peg$currPos, 6) === peg$c68) {
6181
+ s1 = peg$c68;
6182
+ peg$currPos += 6;
6183
+ } else {
6184
+ s1 = peg$FAILED;
6185
+ if (peg$silentFails === 0) { peg$fail(peg$e110); }
6186
+ }
6187
+ if (s1 !== peg$FAILED) {
6188
+ s2 = peg$currPos;
6189
+ peg$silentFails++;
6190
+ s3 = peg$parsewhitespaceOrParenthesis();
6191
+ peg$silentFails--;
6192
+ if (s3 !== peg$FAILED) {
6193
+ peg$currPos = s2;
6194
+ s2 = undefined;
6195
+ } else {
6196
+ s2 = peg$FAILED;
6197
+ }
6198
+ if (s2 !== peg$FAILED) {
6199
+ s0 = s1;
6200
+ } else {
6201
+ peg$currPos = s0;
6202
+ s0 = peg$FAILED;
6203
+ }
6204
+ } else {
6205
+ peg$currPos = s0;
6206
+ s0 = peg$FAILED;
6207
+ }
6208
+ if (s0 === peg$FAILED) {
6209
+ s0 = peg$currPos;
6210
+ if (input.substr(peg$currPos, 4) === peg$c69) {
6211
+ s1 = peg$c69;
6212
+ peg$currPos += 4;
6213
+ } else {
6214
+ s1 = peg$FAILED;
6215
+ if (peg$silentFails === 0) { peg$fail(peg$e111); }
6216
+ }
6217
+ if (s1 !== peg$FAILED) {
6218
+ s2 = peg$currPos;
6219
+ peg$silentFails++;
6220
+ s3 = peg$parsewhitespaceOrParenthesis();
6221
+ peg$silentFails--;
6222
+ if (s3 !== peg$FAILED) {
6223
+ peg$currPos = s2;
6224
+ s2 = undefined;
6225
+ } else {
6226
+ s2 = peg$FAILED;
6227
+ }
6228
+ if (s2 !== peg$FAILED) {
6229
+ s0 = s1;
6230
+ } else {
6231
+ peg$currPos = s0;
6232
+ s0 = peg$FAILED;
6233
+ }
6234
+ } else {
6235
+ peg$currPos = s0;
6236
+ s0 = peg$FAILED;
6237
+ }
6238
+ }
6239
+ }
6240
+ }
6241
+ }
6242
+ }
6243
+
6244
+ return s0;
6245
+ }
6246
+
6081
6247
  function peg$parseuri() {
6082
6248
  let s0, s1, s2, s3, s4, s5, s6;
6083
6249
 
@@ -6222,11 +6388,11 @@ function peg$parse(input, options) {
6222
6388
 
6223
6389
  s0 = peg$currPos;
6224
6390
  s1 = input.charAt(peg$currPos);
6225
- if (peg$r10.test(s1)) {
6391
+ if (peg$r11.test(s1)) {
6226
6392
  peg$currPos++;
6227
6393
  } else {
6228
6394
  s1 = peg$FAILED;
6229
- if (peg$silentFails === 0) { peg$fail(peg$e106); }
6395
+ if (peg$silentFails === 0) { peg$fail(peg$e112); }
6230
6396
  }
6231
6397
  if (s1 !== peg$FAILED) {
6232
6398
  s2 = peg$currPos;
@@ -6289,7 +6455,7 @@ function peg$parse(input, options) {
6289
6455
  peg$silentFails--;
6290
6456
  if (s0 === peg$FAILED) {
6291
6457
  s1 = peg$FAILED;
6292
- if (peg$silentFails === 0) { peg$fail(peg$e107); }
6458
+ if (peg$silentFails === 0) { peg$fail(peg$e113); }
6293
6459
  }
6294
6460
 
6295
6461
  return s0;
@@ -6300,37 +6466,37 @@ function peg$parse(input, options) {
6300
6466
 
6301
6467
  s0 = peg$currPos;
6302
6468
  s1 = input.charAt(peg$currPos);
6303
- if (peg$r11.test(s1)) {
6469
+ if (peg$r12.test(s1)) {
6304
6470
  peg$currPos++;
6305
6471
  } else {
6306
6472
  s1 = peg$FAILED;
6307
- if (peg$silentFails === 0) { peg$fail(peg$e108); }
6473
+ if (peg$silentFails === 0) { peg$fail(peg$e114); }
6308
6474
  }
6309
6475
  if (s1 !== peg$FAILED) {
6310
6476
  s2 = [];
6311
6477
  s3 = input.charAt(peg$currPos);
6312
- if (peg$r12.test(s3)) {
6478
+ if (peg$r13.test(s3)) {
6313
6479
  peg$currPos++;
6314
6480
  } else {
6315
6481
  s3 = peg$FAILED;
6316
- if (peg$silentFails === 0) { peg$fail(peg$e109); }
6482
+ if (peg$silentFails === 0) { peg$fail(peg$e115); }
6317
6483
  }
6318
6484
  while (s3 !== peg$FAILED) {
6319
6485
  s2.push(s3);
6320
6486
  s3 = input.charAt(peg$currPos);
6321
- if (peg$r12.test(s3)) {
6487
+ if (peg$r13.test(s3)) {
6322
6488
  peg$currPos++;
6323
6489
  } else {
6324
6490
  s3 = peg$FAILED;
6325
- if (peg$silentFails === 0) { peg$fail(peg$e109); }
6491
+ if (peg$silentFails === 0) { peg$fail(peg$e115); }
6326
6492
  }
6327
6493
  }
6328
6494
  s3 = input.charAt(peg$currPos);
6329
- if (peg$r13.test(s3)) {
6495
+ if (peg$r14.test(s3)) {
6330
6496
  peg$currPos++;
6331
6497
  } else {
6332
6498
  s3 = peg$FAILED;
6333
- if (peg$silentFails === 0) { peg$fail(peg$e110); }
6499
+ if (peg$silentFails === 0) { peg$fail(peg$e116); }
6334
6500
  }
6335
6501
  if (s3 !== peg$FAILED) {
6336
6502
  peg$savedPos = s0;
@@ -6347,60 +6513,6 @@ function peg$parse(input, options) {
6347
6513
  return s0;
6348
6514
  }
6349
6515
 
6350
- function peg$parseunaryOperator() {
6351
- let s0, s1, s2, s3;
6352
-
6353
- s0 = input.charAt(peg$currPos);
6354
- if (peg$r3.test(s0)) {
6355
- peg$currPos++;
6356
- } else {
6357
- s0 = peg$FAILED;
6358
- if (peg$silentFails === 0) { peg$fail(peg$e60); }
6359
- }
6360
- if (s0 === peg$FAILED) {
6361
- s0 = peg$currPos;
6362
- if (input.charCodeAt(peg$currPos) === 126) {
6363
- s1 = peg$c65;
6364
- peg$currPos++;
6365
- } else {
6366
- s1 = peg$FAILED;
6367
- if (peg$silentFails === 0) { peg$fail(peg$e111); }
6368
- }
6369
- if (s1 !== peg$FAILED) {
6370
- s2 = peg$currPos;
6371
- peg$silentFails++;
6372
- s3 = input.charAt(peg$currPos);
6373
- if (peg$r14.test(s3)) {
6374
- peg$currPos++;
6375
- } else {
6376
- s3 = peg$FAILED;
6377
- if (peg$silentFails === 0) { peg$fail(peg$e112); }
6378
- }
6379
- peg$silentFails--;
6380
- if (s3 === peg$FAILED) {
6381
- s2 = undefined;
6382
- } else {
6383
- peg$currPos = s2;
6384
- s2 = peg$FAILED;
6385
- }
6386
- if (s2 !== peg$FAILED) {
6387
- s0 = s1;
6388
- } else {
6389
- peg$currPos = s0;
6390
- s0 = peg$FAILED;
6391
- }
6392
- } else {
6393
- peg$currPos = s0;
6394
- s0 = peg$FAILED;
6395
- }
6396
- if (s0 === peg$FAILED) {
6397
- s0 = peg$parseminus();
6398
- }
6399
- }
6400
-
6401
- return s0;
6402
- }
6403
-
6404
6516
  function peg$parsewhitespace() {
6405
6517
  let s0, s1;
6406
6518
 
@@ -6433,7 +6545,7 @@ function peg$parse(input, options) {
6433
6545
  peg$currPos++;
6434
6546
  } else {
6435
6547
  s1 = peg$FAILED;
6436
- if (peg$silentFails === 0) { peg$fail(peg$e41); }
6548
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
6437
6549
  }
6438
6550
  if (s1 !== peg$FAILED) {
6439
6551
  peg$savedPos = peg$currPos;
@@ -6478,6 +6590,23 @@ function peg$parse(input, options) {
6478
6590
  return s0;
6479
6591
  }
6480
6592
 
6593
+ function peg$parsewhitespaceOrParenthesis() {
6594
+ let s0;
6595
+
6596
+ s0 = peg$parsewhitespace();
6597
+ if (s0 === peg$FAILED) {
6598
+ if (input.charCodeAt(peg$currPos) === 40) {
6599
+ s0 = peg$c9;
6600
+ peg$currPos++;
6601
+ } else {
6602
+ s0 = peg$FAILED;
6603
+ if (peg$silentFails === 0) { peg$fail(peg$e12); }
6604
+ }
6605
+ }
6606
+
6607
+ return s0;
6608
+ }
6609
+
6481
6610
  function peg$parsewhitespaceWithNewLine() {
6482
6611
  let s0, s1, s2, s3, s4;
6483
6612
 
@@ -6670,16 +6799,17 @@ const peg$allowedStartRules = [
6670
6799
  "templateSubstitution",
6671
6800
  "textChar",
6672
6801
  "unaryExpression",
6802
+ "unaryOperator",
6673
6803
  "uri",
6674
6804
  "uriExpression",
6675
6805
  "uriKey",
6676
6806
  "uriKeyChar",
6677
6807
  "uriPath",
6678
6808
  "uriScheme",
6679
- "unaryOperator",
6680
6809
  "whitespace",
6681
6810
  "whitespaceChar",
6682
6811
  "whitespaceOptionalForProgram",
6812
+ "whitespaceOrParenthesis",
6683
6813
  "whitespaceWithNewLine"
6684
6814
  ];
6685
6815