natural 5.2.3 → 6.0.0

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.
@@ -138,10 +138,19 @@ function peg$parse(input, options) {
138
138
 
139
139
  var peg$FAILED = {},
140
140
 
141
- peg$startRuleFunctions = { Sentences: peg$parseSentences },
142
- peg$startRuleFunction = peg$parseSentences,
141
+ peg$startRuleFunctions = { s: peg$parses },
142
+ peg$startRuleFunction = peg$parses,
143
143
 
144
144
  peg$c0 = function(sentences) {
145
+ let result = []
146
+ sentences.forEach(sent0 => {
147
+ sent0[0].forEach(sent1 => {
148
+ result.push(sent1)
149
+ })
150
+ })
151
+ return result
152
+ },
153
+ peg$c1 = function(sentences) {
145
154
  //return sentences
146
155
  return(
147
156
  sentences.map(sent => {
@@ -152,69 +161,83 @@ function peg$parse(input, options) {
152
161
  })
153
162
  )
154
163
  },
155
- peg$c1 = function(seqs, end) {
164
+ peg$c2 = function(open, sentences, close) {
165
+ //return sentences
166
+ let result = sentences.map(sent => {
167
+ //if (sent[1]) {
168
+ sent[0].push(sent[1])
169
+ //}
170
+ return sent[0].reduce((accu, str) => accu + str).trim()
171
+ })
172
+ result.unshift(open)
173
+ if (close) {
174
+ result.push(close)
175
+ }
176
+ return result
177
+ },
178
+ peg$c3 = function(seqs, end) {
156
179
  let res = seqs.reduce((accu, seq) => accu.concat(seq))
157
180
  res.push(end)
158
181
  return res
159
182
  },
160
- peg$c2 = function(tokens) {
183
+ peg$c4 = function(tokens) {
161
184
  let result = tokens.map(pair => pair[0] + pair[1])
162
185
  return result
163
186
  },
164
- peg$c3 = function(open, tokens, end, close) {
187
+ peg$c5 = function(open, tokens, end, close) {
165
188
  let result = tokens.map(pair => pair[0] + pair[1])
166
189
  result.unshift(open)
167
190
  result.push(end)
168
191
  result.push(close)
169
192
  return result
170
193
  },
171
- peg$c4 = /^[ \t\n\r.?!]/,
172
- peg$c5 = peg$classExpectation([" ", "\t", "\n", "\r", ".", "?", "!"], false, false),
173
- peg$c6 = function() {
194
+ peg$c6 = /^[ \t\n\r.?!]/,
195
+ peg$c7 = peg$classExpectation([" ", "\t", "\n", "\r", ".", "?", "!"], false, false),
196
+ peg$c8 = function() {
174
197
  return text()
175
198
  },
176
- peg$c7 = /^[ \t\n\r]/,
177
- peg$c8 = peg$classExpectation([" ", "\t", "\n", "\r"], false, false),
178
- peg$c9 = function(t) {
199
+ peg$c9 = /^[ \t\n\r]/,
200
+ peg$c10 = peg$classExpectation([" ", "\t", "\n", "\r"], false, false),
201
+ peg$c11 = function(t) {
179
202
  return t
180
203
  },
181
- peg$c10 = /^[^ \t\n\r!?([}"`)\]}"`0-9@]/,
182
- peg$c11 = peg$classExpectation([" ", "\t", "\n", "\r", "!", "?", "(", "[", "}", "\"", "`", ")", "]", "}", "\"", "`", ["0", "9"], "@"], true, false),
183
- peg$c12 = function(word) {
204
+ peg$c12 = /^[^ \t\n\r!?([}"`)\]}"`0-9@]/,
205
+ peg$c13 = peg$classExpectation([" ", "\t", "\n", "\r", "!", "?", "(", "[", "}", "\"", "`", ")", "]", "}", "\"", "`", ["0", "9"], "@"], true, false),
206
+ peg$c14 = function(word) {
184
207
  const tmp = word.reduce((accu, elt) => accu + elt)
185
208
  return knownAbbreviations.indexOf(tmp) > -1},
186
- peg$c13 = function(word) {
209
+ peg$c15 = function(word) {
187
210
  return text()
188
211
  },
189
- peg$c14 = /^[^ \t\n\r!?.([}"`)\]}"`0-9@]/,
190
- peg$c15 = peg$classExpectation([" ", "\t", "\n", "\r", "!", "?", ".", "(", "[", "}", "\"", "`", ")", "]", "}", "\"", "`", ["0", "9"], "@"], true, false),
191
- peg$c16 = function() {
212
+ peg$c16 = /^[^ \t\n\r!?.([})\]}`"0-9@]/,
213
+ peg$c17 = peg$classExpectation([" ", "\t", "\n", "\r", "!", "?", ".", "(", "[", "}", ")", "]", "}", "`", "\"", ["0", "9"], "@"], true, false),
214
+ peg$c18 = function() {
192
215
  return text()
193
216
  },
194
- peg$c17 = /^[0-9]/,
195
- peg$c18 = peg$classExpectation([["0", "9"]], false, false),
196
- peg$c19 = peg$anyExpectation(),
197
- peg$c20 = /^[a-z]/,
198
- peg$c21 = peg$classExpectation([["a", "z"]], false, false),
199
- peg$c22 = /^[@]/,
200
- peg$c23 = peg$classExpectation(["@"], false, false),
201
- peg$c24 = /^[.]/,
202
- peg$c25 = peg$classExpectation(["."], false, false),
203
- peg$c26 = "http://",
204
- peg$c27 = peg$literalExpectation("http://", false),
205
- peg$c28 = "https://",
206
- peg$c29 = peg$literalExpectation("https://", false),
207
- peg$c30 = /^[a-z0-9]/,
208
- peg$c31 = peg$classExpectation([["a", "z"], ["0", "9"]], false, false),
209
- peg$c32 = /^[\/]/,
210
- peg$c33 = peg$classExpectation(["/"], false, false),
211
- peg$c34 = function() {
217
+ peg$c19 = /^[0-9]/,
218
+ peg$c20 = peg$classExpectation([["0", "9"]], false, false),
219
+ peg$c21 = peg$anyExpectation(),
220
+ peg$c22 = /^[a-z]/,
221
+ peg$c23 = peg$classExpectation([["a", "z"]], false, false),
222
+ peg$c24 = /^[@]/,
223
+ peg$c25 = peg$classExpectation(["@"], false, false),
224
+ peg$c26 = /^[.]/,
225
+ peg$c27 = peg$classExpectation(["."], false, false),
226
+ peg$c28 = "http://",
227
+ peg$c29 = peg$literalExpectation("http://", false),
228
+ peg$c30 = "https://",
229
+ peg$c31 = peg$literalExpectation("https://", false),
230
+ peg$c32 = /^[a-z0-9]/,
231
+ peg$c33 = peg$classExpectation([["a", "z"], ["0", "9"]], false, false),
232
+ peg$c34 = /^[\/]/,
233
+ peg$c35 = peg$classExpectation(["/"], false, false),
234
+ peg$c36 = function() {
212
235
  return text()
213
236
  },
214
- peg$c35 = /^[([}"'`\u2018]/,
215
- peg$c36 = peg$classExpectation(["(", "[", "}", "\"", "'", "`", "\u2018"], false, false),
216
- peg$c37 = /^[)\]}"'`\u2019]/,
217
- peg$c38 = peg$classExpectation([")", "]", "}", "\"", "'", "`", "\u2019"], false, false),
237
+ peg$c37 = /^[([{"'`\u2018]/,
238
+ peg$c38 = peg$classExpectation(["(", "[", "{", "\"", "'", "`", "\u2018"], false, false),
239
+ peg$c39 = /^[)\]}"'`\u2019]/,
240
+ peg$c40 = peg$classExpectation([")", "]", "}", "\"", "'", "`", "\u2019"], false, false),
218
241
 
219
242
  peg$currPos = 0,
220
243
  peg$savedPos = 0,
@@ -352,13 +375,13 @@ function peg$parse(input, options) {
352
375
  );
353
376
  }
354
377
 
355
- function peg$parseSentences() {
378
+ function peg$parses() {
356
379
  var s0, s1, s2, s3, s4;
357
380
 
358
381
  s0 = peg$currPos;
359
382
  s1 = [];
360
383
  s2 = peg$currPos;
361
- s3 = peg$parseSentence();
384
+ s3 = peg$parseSentences();
362
385
  if (s3 !== peg$FAILED) {
363
386
  s4 = peg$parseWhitespace();
364
387
  if (s4 !== peg$FAILED) {
@@ -372,10 +395,9 @@ function peg$parse(input, options) {
372
395
  peg$currPos = s2;
373
396
  s2 = peg$FAILED;
374
397
  }
375
- while (s2 !== peg$FAILED) {
376
- s1.push(s2);
398
+ if (s2 === peg$FAILED) {
377
399
  s2 = peg$currPos;
378
- s3 = peg$parseSentence();
400
+ s3 = peg$parseQuotedSentences();
379
401
  if (s3 !== peg$FAILED) {
380
402
  s4 = peg$parseWhitespace();
381
403
  if (s4 !== peg$FAILED) {
@@ -390,6 +412,45 @@ function peg$parse(input, options) {
390
412
  s2 = peg$FAILED;
391
413
  }
392
414
  }
415
+ if (s2 !== peg$FAILED) {
416
+ while (s2 !== peg$FAILED) {
417
+ s1.push(s2);
418
+ s2 = peg$currPos;
419
+ s3 = peg$parseSentences();
420
+ if (s3 !== peg$FAILED) {
421
+ s4 = peg$parseWhitespace();
422
+ if (s4 !== peg$FAILED) {
423
+ s3 = [s3, s4];
424
+ s2 = s3;
425
+ } else {
426
+ peg$currPos = s2;
427
+ s2 = peg$FAILED;
428
+ }
429
+ } else {
430
+ peg$currPos = s2;
431
+ s2 = peg$FAILED;
432
+ }
433
+ if (s2 === peg$FAILED) {
434
+ s2 = peg$currPos;
435
+ s3 = peg$parseQuotedSentences();
436
+ if (s3 !== peg$FAILED) {
437
+ s4 = peg$parseWhitespace();
438
+ if (s4 !== peg$FAILED) {
439
+ s3 = [s3, s4];
440
+ s2 = s3;
441
+ } else {
442
+ peg$currPos = s2;
443
+ s2 = peg$FAILED;
444
+ }
445
+ } else {
446
+ peg$currPos = s2;
447
+ s2 = peg$FAILED;
448
+ }
449
+ }
450
+ }
451
+ } else {
452
+ s1 = peg$FAILED;
453
+ }
393
454
  if (s1 !== peg$FAILED) {
394
455
  peg$savedPos = s0;
395
456
  s1 = peg$c0(s1);
@@ -399,6 +460,126 @@ function peg$parse(input, options) {
399
460
  return s0;
400
461
  }
401
462
 
463
+ function peg$parseSentences() {
464
+ var s0, s1, s2, s3, s4;
465
+
466
+ s0 = peg$currPos;
467
+ s1 = [];
468
+ s2 = peg$currPos;
469
+ s3 = peg$parseSentence();
470
+ if (s3 !== peg$FAILED) {
471
+ s4 = peg$parseWhitespace();
472
+ if (s4 !== peg$FAILED) {
473
+ s3 = [s3, s4];
474
+ s2 = s3;
475
+ } else {
476
+ peg$currPos = s2;
477
+ s2 = peg$FAILED;
478
+ }
479
+ } else {
480
+ peg$currPos = s2;
481
+ s2 = peg$FAILED;
482
+ }
483
+ if (s2 !== peg$FAILED) {
484
+ while (s2 !== peg$FAILED) {
485
+ s1.push(s2);
486
+ s2 = peg$currPos;
487
+ s3 = peg$parseSentence();
488
+ if (s3 !== peg$FAILED) {
489
+ s4 = peg$parseWhitespace();
490
+ if (s4 !== peg$FAILED) {
491
+ s3 = [s3, s4];
492
+ s2 = s3;
493
+ } else {
494
+ peg$currPos = s2;
495
+ s2 = peg$FAILED;
496
+ }
497
+ } else {
498
+ peg$currPos = s2;
499
+ s2 = peg$FAILED;
500
+ }
501
+ }
502
+ } else {
503
+ s1 = peg$FAILED;
504
+ }
505
+ if (s1 !== peg$FAILED) {
506
+ peg$savedPos = s0;
507
+ s1 = peg$c1(s1);
508
+ }
509
+ s0 = s1;
510
+
511
+ return s0;
512
+ }
513
+
514
+ function peg$parseQuotedSentences() {
515
+ var s0, s1, s2, s3, s4, s5;
516
+
517
+ s0 = peg$currPos;
518
+ s1 = peg$parseOpenSymbol();
519
+ if (s1 !== peg$FAILED) {
520
+ s2 = [];
521
+ s3 = peg$currPos;
522
+ s4 = peg$parseSentence();
523
+ if (s4 !== peg$FAILED) {
524
+ s5 = peg$parseWhitespace();
525
+ if (s5 !== peg$FAILED) {
526
+ s4 = [s4, s5];
527
+ s3 = s4;
528
+ } else {
529
+ peg$currPos = s3;
530
+ s3 = peg$FAILED;
531
+ }
532
+ } else {
533
+ peg$currPos = s3;
534
+ s3 = peg$FAILED;
535
+ }
536
+ if (s3 !== peg$FAILED) {
537
+ while (s3 !== peg$FAILED) {
538
+ s2.push(s3);
539
+ s3 = peg$currPos;
540
+ s4 = peg$parseSentence();
541
+ if (s4 !== peg$FAILED) {
542
+ s5 = peg$parseWhitespace();
543
+ if (s5 !== peg$FAILED) {
544
+ s4 = [s4, s5];
545
+ s3 = s4;
546
+ } else {
547
+ peg$currPos = s3;
548
+ s3 = peg$FAILED;
549
+ }
550
+ } else {
551
+ peg$currPos = s3;
552
+ s3 = peg$FAILED;
553
+ }
554
+ }
555
+ } else {
556
+ s2 = peg$FAILED;
557
+ }
558
+ if (s2 !== peg$FAILED) {
559
+ s3 = peg$parseCloseSymbol();
560
+ if (s3 === peg$FAILED) {
561
+ s3 = null;
562
+ }
563
+ if (s3 !== peg$FAILED) {
564
+ peg$savedPos = s0;
565
+ s1 = peg$c2(s1, s2, s3);
566
+ s0 = s1;
567
+ } else {
568
+ peg$currPos = s0;
569
+ s0 = peg$FAILED;
570
+ }
571
+ } else {
572
+ peg$currPos = s0;
573
+ s0 = peg$FAILED;
574
+ }
575
+ } else {
576
+ peg$currPos = s0;
577
+ s0 = peg$FAILED;
578
+ }
579
+
580
+ return s0;
581
+ }
582
+
402
583
  function peg$parseSentence() {
403
584
  var s0, s1, s2;
404
585
 
@@ -423,7 +604,7 @@ function peg$parse(input, options) {
423
604
  s2 = peg$parseEndOfSentence();
424
605
  if (s2 !== peg$FAILED) {
425
606
  peg$savedPos = s0;
426
- s1 = peg$c1(s1, s2);
607
+ s1 = peg$c3(s1, s2);
427
608
  s0 = s1;
428
609
  } else {
429
610
  peg$currPos = s0;
@@ -481,7 +662,7 @@ function peg$parse(input, options) {
481
662
  }
482
663
  if (s1 !== peg$FAILED) {
483
664
  peg$savedPos = s0;
484
- s1 = peg$c2(s1);
665
+ s1 = peg$c4(s1);
485
666
  }
486
667
  s0 = s1;
487
668
 
@@ -538,7 +719,7 @@ function peg$parse(input, options) {
538
719
  s4 = peg$parseCloseSymbol();
539
720
  if (s4 !== peg$FAILED) {
540
721
  peg$savedPos = s0;
541
- s1 = peg$c3(s1, s2, s3, s4);
722
+ s1 = peg$c5(s1, s2, s3, s4);
542
723
  s0 = s1;
543
724
  } else {
544
725
  peg$currPos = s0;
@@ -565,26 +746,26 @@ function peg$parse(input, options) {
565
746
 
566
747
  s0 = peg$currPos;
567
748
  s1 = [];
568
- if (peg$c4.test(input.charAt(peg$currPos))) {
749
+ if (peg$c6.test(input.charAt(peg$currPos))) {
569
750
  s2 = input.charAt(peg$currPos);
570
751
  peg$currPos++;
571
752
  } else {
572
753
  s2 = peg$FAILED;
573
- if (peg$silentFails === 0) { peg$fail(peg$c5); }
754
+ if (peg$silentFails === 0) { peg$fail(peg$c7); }
574
755
  }
575
756
  while (s2 !== peg$FAILED) {
576
757
  s1.push(s2);
577
- if (peg$c4.test(input.charAt(peg$currPos))) {
758
+ if (peg$c6.test(input.charAt(peg$currPos))) {
578
759
  s2 = input.charAt(peg$currPos);
579
760
  peg$currPos++;
580
761
  } else {
581
762
  s2 = peg$FAILED;
582
- if (peg$silentFails === 0) { peg$fail(peg$c5); }
763
+ if (peg$silentFails === 0) { peg$fail(peg$c7); }
583
764
  }
584
765
  }
585
766
  if (s1 !== peg$FAILED) {
586
767
  peg$savedPos = s0;
587
- s1 = peg$c6();
768
+ s1 = peg$c8();
588
769
  }
589
770
  s0 = s1;
590
771
 
@@ -596,26 +777,26 @@ function peg$parse(input, options) {
596
777
 
597
778
  s0 = peg$currPos;
598
779
  s1 = [];
599
- if (peg$c7.test(input.charAt(peg$currPos))) {
780
+ if (peg$c9.test(input.charAt(peg$currPos))) {
600
781
  s2 = input.charAt(peg$currPos);
601
782
  peg$currPos++;
602
783
  } else {
603
784
  s2 = peg$FAILED;
604
- if (peg$silentFails === 0) { peg$fail(peg$c8); }
785
+ if (peg$silentFails === 0) { peg$fail(peg$c10); }
605
786
  }
606
787
  while (s2 !== peg$FAILED) {
607
788
  s1.push(s2);
608
- if (peg$c7.test(input.charAt(peg$currPos))) {
789
+ if (peg$c9.test(input.charAt(peg$currPos))) {
609
790
  s2 = input.charAt(peg$currPos);
610
791
  peg$currPos++;
611
792
  } else {
612
793
  s2 = peg$FAILED;
613
- if (peg$silentFails === 0) { peg$fail(peg$c8); }
794
+ if (peg$silentFails === 0) { peg$fail(peg$c10); }
614
795
  }
615
796
  }
616
797
  if (s1 !== peg$FAILED) {
617
798
  peg$savedPos = s0;
618
- s1 = peg$c6();
799
+ s1 = peg$c8();
619
800
  }
620
801
  s0 = s1;
621
802
 
@@ -641,7 +822,7 @@ function peg$parse(input, options) {
641
822
  }
642
823
  if (s1 !== peg$FAILED) {
643
824
  peg$savedPos = s0;
644
- s1 = peg$c9(s1);
825
+ s1 = peg$c11(s1);
645
826
  }
646
827
  s0 = s1;
647
828
 
@@ -653,22 +834,22 @@ function peg$parse(input, options) {
653
834
 
654
835
  s0 = peg$currPos;
655
836
  s1 = [];
656
- if (peg$c10.test(input.charAt(peg$currPos))) {
837
+ if (peg$c12.test(input.charAt(peg$currPos))) {
657
838
  s2 = input.charAt(peg$currPos);
658
839
  peg$currPos++;
659
840
  } else {
660
841
  s2 = peg$FAILED;
661
- if (peg$silentFails === 0) { peg$fail(peg$c11); }
842
+ if (peg$silentFails === 0) { peg$fail(peg$c13); }
662
843
  }
663
844
  if (s2 !== peg$FAILED) {
664
845
  while (s2 !== peg$FAILED) {
665
846
  s1.push(s2);
666
- if (peg$c10.test(input.charAt(peg$currPos))) {
847
+ if (peg$c12.test(input.charAt(peg$currPos))) {
667
848
  s2 = input.charAt(peg$currPos);
668
849
  peg$currPos++;
669
850
  } else {
670
851
  s2 = peg$FAILED;
671
- if (peg$silentFails === 0) { peg$fail(peg$c11); }
852
+ if (peg$silentFails === 0) { peg$fail(peg$c13); }
672
853
  }
673
854
  }
674
855
  } else {
@@ -676,7 +857,7 @@ function peg$parse(input, options) {
676
857
  }
677
858
  if (s1 !== peg$FAILED) {
678
859
  peg$savedPos = peg$currPos;
679
- s2 = peg$c12(s1);
860
+ s2 = peg$c14(s1);
680
861
  if (s2) {
681
862
  s2 = void 0;
682
863
  } else {
@@ -684,7 +865,7 @@ function peg$parse(input, options) {
684
865
  }
685
866
  if (s2 !== peg$FAILED) {
686
867
  peg$savedPos = s0;
687
- s1 = peg$c13(s1);
868
+ s1 = peg$c15(s1);
688
869
  s0 = s1;
689
870
  } else {
690
871
  peg$currPos = s0;
@@ -703,22 +884,22 @@ function peg$parse(input, options) {
703
884
 
704
885
  s0 = peg$currPos;
705
886
  s1 = [];
706
- if (peg$c14.test(input.charAt(peg$currPos))) {
887
+ if (peg$c16.test(input.charAt(peg$currPos))) {
707
888
  s2 = input.charAt(peg$currPos);
708
889
  peg$currPos++;
709
890
  } else {
710
891
  s2 = peg$FAILED;
711
- if (peg$silentFails === 0) { peg$fail(peg$c15); }
892
+ if (peg$silentFails === 0) { peg$fail(peg$c17); }
712
893
  }
713
894
  if (s2 !== peg$FAILED) {
714
895
  while (s2 !== peg$FAILED) {
715
896
  s1.push(s2);
716
- if (peg$c14.test(input.charAt(peg$currPos))) {
897
+ if (peg$c16.test(input.charAt(peg$currPos))) {
717
898
  s2 = input.charAt(peg$currPos);
718
899
  peg$currPos++;
719
900
  } else {
720
901
  s2 = peg$FAILED;
721
- if (peg$silentFails === 0) { peg$fail(peg$c15); }
902
+ if (peg$silentFails === 0) { peg$fail(peg$c17); }
722
903
  }
723
904
  }
724
905
  } else {
@@ -726,7 +907,7 @@ function peg$parse(input, options) {
726
907
  }
727
908
  if (s1 !== peg$FAILED) {
728
909
  peg$savedPos = s0;
729
- s1 = peg$c16();
910
+ s1 = peg$c18();
730
911
  }
731
912
  s0 = s1;
732
913
 
@@ -738,22 +919,22 @@ function peg$parse(input, options) {
738
919
 
739
920
  s0 = peg$currPos;
740
921
  s1 = [];
741
- if (peg$c17.test(input.charAt(peg$currPos))) {
922
+ if (peg$c19.test(input.charAt(peg$currPos))) {
742
923
  s2 = input.charAt(peg$currPos);
743
924
  peg$currPos++;
744
925
  } else {
745
926
  s2 = peg$FAILED;
746
- if (peg$silentFails === 0) { peg$fail(peg$c18); }
927
+ if (peg$silentFails === 0) { peg$fail(peg$c20); }
747
928
  }
748
929
  if (s2 !== peg$FAILED) {
749
930
  while (s2 !== peg$FAILED) {
750
931
  s1.push(s2);
751
- if (peg$c17.test(input.charAt(peg$currPos))) {
932
+ if (peg$c19.test(input.charAt(peg$currPos))) {
752
933
  s2 = input.charAt(peg$currPos);
753
934
  peg$currPos++;
754
935
  } else {
755
936
  s2 = peg$FAILED;
756
- if (peg$silentFails === 0) { peg$fail(peg$c18); }
937
+ if (peg$silentFails === 0) { peg$fail(peg$c20); }
757
938
  }
758
939
  }
759
940
  } else {
@@ -766,26 +947,26 @@ function peg$parse(input, options) {
766
947
  peg$currPos++;
767
948
  } else {
768
949
  s3 = peg$FAILED;
769
- if (peg$silentFails === 0) { peg$fail(peg$c19); }
950
+ if (peg$silentFails === 0) { peg$fail(peg$c21); }
770
951
  }
771
952
  if (s3 !== peg$FAILED) {
772
953
  s4 = [];
773
- if (peg$c17.test(input.charAt(peg$currPos))) {
954
+ if (peg$c19.test(input.charAt(peg$currPos))) {
774
955
  s5 = input.charAt(peg$currPos);
775
956
  peg$currPos++;
776
957
  } else {
777
958
  s5 = peg$FAILED;
778
- if (peg$silentFails === 0) { peg$fail(peg$c18); }
959
+ if (peg$silentFails === 0) { peg$fail(peg$c20); }
779
960
  }
780
961
  if (s5 !== peg$FAILED) {
781
962
  while (s5 !== peg$FAILED) {
782
963
  s4.push(s5);
783
- if (peg$c17.test(input.charAt(peg$currPos))) {
964
+ if (peg$c19.test(input.charAt(peg$currPos))) {
784
965
  s5 = input.charAt(peg$currPos);
785
966
  peg$currPos++;
786
967
  } else {
787
968
  s5 = peg$FAILED;
788
- if (peg$silentFails === 0) { peg$fail(peg$c18); }
969
+ if (peg$silentFails === 0) { peg$fail(peg$c20); }
789
970
  }
790
971
  }
791
972
  } else {
@@ -812,7 +993,7 @@ function peg$parse(input, options) {
812
993
  }
813
994
  if (s3 !== peg$FAILED) {
814
995
  peg$savedPos = s0;
815
- s1 = peg$c6();
996
+ s1 = peg$c8();
816
997
  s0 = s1;
817
998
  } else {
818
999
  peg$currPos = s0;
@@ -835,84 +1016,84 @@ function peg$parse(input, options) {
835
1016
 
836
1017
  s0 = peg$currPos;
837
1018
  s1 = [];
838
- if (peg$c20.test(input.charAt(peg$currPos))) {
1019
+ if (peg$c22.test(input.charAt(peg$currPos))) {
839
1020
  s2 = input.charAt(peg$currPos);
840
1021
  peg$currPos++;
841
1022
  } else {
842
1023
  s2 = peg$FAILED;
843
- if (peg$silentFails === 0) { peg$fail(peg$c21); }
1024
+ if (peg$silentFails === 0) { peg$fail(peg$c23); }
844
1025
  }
845
1026
  if (s2 !== peg$FAILED) {
846
1027
  while (s2 !== peg$FAILED) {
847
1028
  s1.push(s2);
848
- if (peg$c20.test(input.charAt(peg$currPos))) {
1029
+ if (peg$c22.test(input.charAt(peg$currPos))) {
849
1030
  s2 = input.charAt(peg$currPos);
850
1031
  peg$currPos++;
851
1032
  } else {
852
1033
  s2 = peg$FAILED;
853
- if (peg$silentFails === 0) { peg$fail(peg$c21); }
1034
+ if (peg$silentFails === 0) { peg$fail(peg$c23); }
854
1035
  }
855
1036
  }
856
1037
  } else {
857
1038
  s1 = peg$FAILED;
858
1039
  }
859
1040
  if (s1 !== peg$FAILED) {
860
- if (peg$c22.test(input.charAt(peg$currPos))) {
1041
+ if (peg$c24.test(input.charAt(peg$currPos))) {
861
1042
  s2 = input.charAt(peg$currPos);
862
1043
  peg$currPos++;
863
1044
  } else {
864
1045
  s2 = peg$FAILED;
865
- if (peg$silentFails === 0) { peg$fail(peg$c23); }
1046
+ if (peg$silentFails === 0) { peg$fail(peg$c25); }
866
1047
  }
867
1048
  if (s2 !== peg$FAILED) {
868
1049
  s3 = [];
869
- if (peg$c20.test(input.charAt(peg$currPos))) {
1050
+ if (peg$c22.test(input.charAt(peg$currPos))) {
870
1051
  s4 = input.charAt(peg$currPos);
871
1052
  peg$currPos++;
872
1053
  } else {
873
1054
  s4 = peg$FAILED;
874
- if (peg$silentFails === 0) { peg$fail(peg$c21); }
1055
+ if (peg$silentFails === 0) { peg$fail(peg$c23); }
875
1056
  }
876
1057
  if (s4 !== peg$FAILED) {
877
1058
  while (s4 !== peg$FAILED) {
878
1059
  s3.push(s4);
879
- if (peg$c20.test(input.charAt(peg$currPos))) {
1060
+ if (peg$c22.test(input.charAt(peg$currPos))) {
880
1061
  s4 = input.charAt(peg$currPos);
881
1062
  peg$currPos++;
882
1063
  } else {
883
1064
  s4 = peg$FAILED;
884
- if (peg$silentFails === 0) { peg$fail(peg$c21); }
1065
+ if (peg$silentFails === 0) { peg$fail(peg$c23); }
885
1066
  }
886
1067
  }
887
1068
  } else {
888
1069
  s3 = peg$FAILED;
889
1070
  }
890
1071
  if (s3 !== peg$FAILED) {
891
- if (peg$c24.test(input.charAt(peg$currPos))) {
1072
+ if (peg$c26.test(input.charAt(peg$currPos))) {
892
1073
  s4 = input.charAt(peg$currPos);
893
1074
  peg$currPos++;
894
1075
  } else {
895
1076
  s4 = peg$FAILED;
896
- if (peg$silentFails === 0) { peg$fail(peg$c25); }
1077
+ if (peg$silentFails === 0) { peg$fail(peg$c27); }
897
1078
  }
898
1079
  if (s4 !== peg$FAILED) {
899
1080
  s5 = [];
900
- if (peg$c20.test(input.charAt(peg$currPos))) {
1081
+ if (peg$c22.test(input.charAt(peg$currPos))) {
901
1082
  s6 = input.charAt(peg$currPos);
902
1083
  peg$currPos++;
903
1084
  } else {
904
1085
  s6 = peg$FAILED;
905
- if (peg$silentFails === 0) { peg$fail(peg$c21); }
1086
+ if (peg$silentFails === 0) { peg$fail(peg$c23); }
906
1087
  }
907
1088
  if (s6 !== peg$FAILED) {
908
1089
  while (s6 !== peg$FAILED) {
909
1090
  s5.push(s6);
910
- if (peg$c20.test(input.charAt(peg$currPos))) {
1091
+ if (peg$c22.test(input.charAt(peg$currPos))) {
911
1092
  s6 = input.charAt(peg$currPos);
912
1093
  peg$currPos++;
913
1094
  } else {
914
1095
  s6 = peg$FAILED;
915
- if (peg$silentFails === 0) { peg$fail(peg$c21); }
1096
+ if (peg$silentFails === 0) { peg$fail(peg$c23); }
916
1097
  }
917
1098
  }
918
1099
  } else {
@@ -920,7 +1101,7 @@ function peg$parse(input, options) {
920
1101
  }
921
1102
  if (s5 !== peg$FAILED) {
922
1103
  peg$savedPos = s0;
923
- s1 = peg$c6();
1104
+ s1 = peg$c8();
924
1105
  s0 = s1;
925
1106
  } else {
926
1107
  peg$currPos = s0;
@@ -950,20 +1131,20 @@ function peg$parse(input, options) {
950
1131
  var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9;
951
1132
 
952
1133
  s0 = peg$currPos;
953
- if (input.substr(peg$currPos, 7) === peg$c26) {
954
- s1 = peg$c26;
1134
+ if (input.substr(peg$currPos, 7) === peg$c28) {
1135
+ s1 = peg$c28;
955
1136
  peg$currPos += 7;
956
1137
  } else {
957
1138
  s1 = peg$FAILED;
958
- if (peg$silentFails === 0) { peg$fail(peg$c27); }
1139
+ if (peg$silentFails === 0) { peg$fail(peg$c29); }
959
1140
  }
960
1141
  if (s1 === peg$FAILED) {
961
- if (input.substr(peg$currPos, 8) === peg$c28) {
962
- s1 = peg$c28;
1142
+ if (input.substr(peg$currPos, 8) === peg$c30) {
1143
+ s1 = peg$c30;
963
1144
  peg$currPos += 8;
964
1145
  } else {
965
1146
  s1 = peg$FAILED;
966
- if (peg$silentFails === 0) { peg$fail(peg$c29); }
1147
+ if (peg$silentFails === 0) { peg$fail(peg$c31); }
967
1148
  }
968
1149
  }
969
1150
  if (s1 === peg$FAILED) {
@@ -971,66 +1152,66 @@ function peg$parse(input, options) {
971
1152
  }
972
1153
  if (s1 !== peg$FAILED) {
973
1154
  s2 = [];
974
- if (peg$c30.test(input.charAt(peg$currPos))) {
1155
+ if (peg$c32.test(input.charAt(peg$currPos))) {
975
1156
  s3 = input.charAt(peg$currPos);
976
1157
  peg$currPos++;
977
1158
  } else {
978
1159
  s3 = peg$FAILED;
979
- if (peg$silentFails === 0) { peg$fail(peg$c31); }
1160
+ if (peg$silentFails === 0) { peg$fail(peg$c33); }
980
1161
  }
981
1162
  if (s3 !== peg$FAILED) {
982
1163
  while (s3 !== peg$FAILED) {
983
1164
  s2.push(s3);
984
- if (peg$c30.test(input.charAt(peg$currPos))) {
1165
+ if (peg$c32.test(input.charAt(peg$currPos))) {
985
1166
  s3 = input.charAt(peg$currPos);
986
1167
  peg$currPos++;
987
1168
  } else {
988
1169
  s3 = peg$FAILED;
989
- if (peg$silentFails === 0) { peg$fail(peg$c31); }
1170
+ if (peg$silentFails === 0) { peg$fail(peg$c33); }
990
1171
  }
991
1172
  }
992
1173
  } else {
993
1174
  s2 = peg$FAILED;
994
1175
  }
995
1176
  if (s2 !== peg$FAILED) {
996
- if (peg$c24.test(input.charAt(peg$currPos))) {
1177
+ if (peg$c26.test(input.charAt(peg$currPos))) {
997
1178
  s3 = input.charAt(peg$currPos);
998
1179
  peg$currPos++;
999
1180
  } else {
1000
1181
  s3 = peg$FAILED;
1001
- if (peg$silentFails === 0) { peg$fail(peg$c25); }
1182
+ if (peg$silentFails === 0) { peg$fail(peg$c27); }
1002
1183
  }
1003
1184
  if (s3 !== peg$FAILED) {
1004
1185
  s4 = peg$currPos;
1005
1186
  s5 = [];
1006
- if (peg$c30.test(input.charAt(peg$currPos))) {
1187
+ if (peg$c32.test(input.charAt(peg$currPos))) {
1007
1188
  s6 = input.charAt(peg$currPos);
1008
1189
  peg$currPos++;
1009
1190
  } else {
1010
1191
  s6 = peg$FAILED;
1011
- if (peg$silentFails === 0) { peg$fail(peg$c31); }
1192
+ if (peg$silentFails === 0) { peg$fail(peg$c33); }
1012
1193
  }
1013
1194
  if (s6 !== peg$FAILED) {
1014
1195
  while (s6 !== peg$FAILED) {
1015
1196
  s5.push(s6);
1016
- if (peg$c30.test(input.charAt(peg$currPos))) {
1197
+ if (peg$c32.test(input.charAt(peg$currPos))) {
1017
1198
  s6 = input.charAt(peg$currPos);
1018
1199
  peg$currPos++;
1019
1200
  } else {
1020
1201
  s6 = peg$FAILED;
1021
- if (peg$silentFails === 0) { peg$fail(peg$c31); }
1202
+ if (peg$silentFails === 0) { peg$fail(peg$c33); }
1022
1203
  }
1023
1204
  }
1024
1205
  } else {
1025
1206
  s5 = peg$FAILED;
1026
1207
  }
1027
1208
  if (s5 !== peg$FAILED) {
1028
- if (peg$c24.test(input.charAt(peg$currPos))) {
1209
+ if (peg$c26.test(input.charAt(peg$currPos))) {
1029
1210
  s6 = input.charAt(peg$currPos);
1030
1211
  peg$currPos++;
1031
1212
  } else {
1032
1213
  s6 = peg$FAILED;
1033
- if (peg$silentFails === 0) { peg$fail(peg$c25); }
1214
+ if (peg$silentFails === 0) { peg$fail(peg$c27); }
1034
1215
  }
1035
1216
  if (s6 !== peg$FAILED) {
1036
1217
  s5 = [s5, s6];
@@ -1048,22 +1229,22 @@ function peg$parse(input, options) {
1048
1229
  }
1049
1230
  if (s4 !== peg$FAILED) {
1050
1231
  s5 = [];
1051
- if (peg$c30.test(input.charAt(peg$currPos))) {
1232
+ if (peg$c32.test(input.charAt(peg$currPos))) {
1052
1233
  s6 = input.charAt(peg$currPos);
1053
1234
  peg$currPos++;
1054
1235
  } else {
1055
1236
  s6 = peg$FAILED;
1056
- if (peg$silentFails === 0) { peg$fail(peg$c31); }
1237
+ if (peg$silentFails === 0) { peg$fail(peg$c33); }
1057
1238
  }
1058
1239
  if (s6 !== peg$FAILED) {
1059
1240
  while (s6 !== peg$FAILED) {
1060
1241
  s5.push(s6);
1061
- if (peg$c30.test(input.charAt(peg$currPos))) {
1242
+ if (peg$c32.test(input.charAt(peg$currPos))) {
1062
1243
  s6 = input.charAt(peg$currPos);
1063
1244
  peg$currPos++;
1064
1245
  } else {
1065
1246
  s6 = peg$FAILED;
1066
- if (peg$silentFails === 0) { peg$fail(peg$c31); }
1247
+ if (peg$silentFails === 0) { peg$fail(peg$c33); }
1067
1248
  }
1068
1249
  }
1069
1250
  } else {
@@ -1073,34 +1254,34 @@ function peg$parse(input, options) {
1073
1254
  s6 = [];
1074
1255
  s7 = peg$currPos;
1075
1256
  s8 = [];
1076
- if (peg$c30.test(input.charAt(peg$currPos))) {
1257
+ if (peg$c32.test(input.charAt(peg$currPos))) {
1077
1258
  s9 = input.charAt(peg$currPos);
1078
1259
  peg$currPos++;
1079
1260
  } else {
1080
1261
  s9 = peg$FAILED;
1081
- if (peg$silentFails === 0) { peg$fail(peg$c31); }
1262
+ if (peg$silentFails === 0) { peg$fail(peg$c33); }
1082
1263
  }
1083
1264
  if (s9 !== peg$FAILED) {
1084
1265
  while (s9 !== peg$FAILED) {
1085
1266
  s8.push(s9);
1086
- if (peg$c30.test(input.charAt(peg$currPos))) {
1267
+ if (peg$c32.test(input.charAt(peg$currPos))) {
1087
1268
  s9 = input.charAt(peg$currPos);
1088
1269
  peg$currPos++;
1089
1270
  } else {
1090
1271
  s9 = peg$FAILED;
1091
- if (peg$silentFails === 0) { peg$fail(peg$c31); }
1272
+ if (peg$silentFails === 0) { peg$fail(peg$c33); }
1092
1273
  }
1093
1274
  }
1094
1275
  } else {
1095
1276
  s8 = peg$FAILED;
1096
1277
  }
1097
1278
  if (s8 !== peg$FAILED) {
1098
- if (peg$c32.test(input.charAt(peg$currPos))) {
1279
+ if (peg$c34.test(input.charAt(peg$currPos))) {
1099
1280
  s9 = input.charAt(peg$currPos);
1100
1281
  peg$currPos++;
1101
1282
  } else {
1102
1283
  s9 = peg$FAILED;
1103
- if (peg$silentFails === 0) { peg$fail(peg$c33); }
1284
+ if (peg$silentFails === 0) { peg$fail(peg$c35); }
1104
1285
  }
1105
1286
  if (s9 !== peg$FAILED) {
1106
1287
  s8 = [s8, s9];
@@ -1117,34 +1298,34 @@ function peg$parse(input, options) {
1117
1298
  s6.push(s7);
1118
1299
  s7 = peg$currPos;
1119
1300
  s8 = [];
1120
- if (peg$c30.test(input.charAt(peg$currPos))) {
1301
+ if (peg$c32.test(input.charAt(peg$currPos))) {
1121
1302
  s9 = input.charAt(peg$currPos);
1122
1303
  peg$currPos++;
1123
1304
  } else {
1124
1305
  s9 = peg$FAILED;
1125
- if (peg$silentFails === 0) { peg$fail(peg$c31); }
1306
+ if (peg$silentFails === 0) { peg$fail(peg$c33); }
1126
1307
  }
1127
1308
  if (s9 !== peg$FAILED) {
1128
1309
  while (s9 !== peg$FAILED) {
1129
1310
  s8.push(s9);
1130
- if (peg$c30.test(input.charAt(peg$currPos))) {
1311
+ if (peg$c32.test(input.charAt(peg$currPos))) {
1131
1312
  s9 = input.charAt(peg$currPos);
1132
1313
  peg$currPos++;
1133
1314
  } else {
1134
1315
  s9 = peg$FAILED;
1135
- if (peg$silentFails === 0) { peg$fail(peg$c31); }
1316
+ if (peg$silentFails === 0) { peg$fail(peg$c33); }
1136
1317
  }
1137
1318
  }
1138
1319
  } else {
1139
1320
  s8 = peg$FAILED;
1140
1321
  }
1141
1322
  if (s8 !== peg$FAILED) {
1142
- if (peg$c32.test(input.charAt(peg$currPos))) {
1323
+ if (peg$c34.test(input.charAt(peg$currPos))) {
1143
1324
  s9 = input.charAt(peg$currPos);
1144
1325
  peg$currPos++;
1145
1326
  } else {
1146
1327
  s9 = peg$FAILED;
1147
- if (peg$silentFails === 0) { peg$fail(peg$c33); }
1328
+ if (peg$silentFails === 0) { peg$fail(peg$c35); }
1148
1329
  }
1149
1330
  if (s9 !== peg$FAILED) {
1150
1331
  s8 = [s8, s9];
@@ -1160,7 +1341,7 @@ function peg$parse(input, options) {
1160
1341
  }
1161
1342
  if (s6 !== peg$FAILED) {
1162
1343
  peg$savedPos = s0;
1163
- s1 = peg$c34();
1344
+ s1 = peg$c36();
1164
1345
  s0 = s1;
1165
1346
  } else {
1166
1347
  peg$currPos = s0;
@@ -1194,16 +1375,16 @@ function peg$parse(input, options) {
1194
1375
  var s0, s1;
1195
1376
 
1196
1377
  s0 = peg$currPos;
1197
- if (peg$c35.test(input.charAt(peg$currPos))) {
1378
+ if (peg$c37.test(input.charAt(peg$currPos))) {
1198
1379
  s1 = input.charAt(peg$currPos);
1199
1380
  peg$currPos++;
1200
1381
  } else {
1201
1382
  s1 = peg$FAILED;
1202
- if (peg$silentFails === 0) { peg$fail(peg$c36); }
1383
+ if (peg$silentFails === 0) { peg$fail(peg$c38); }
1203
1384
  }
1204
1385
  if (s1 !== peg$FAILED) {
1205
1386
  peg$savedPos = s0;
1206
- s1 = peg$c6();
1387
+ s1 = peg$c8();
1207
1388
  }
1208
1389
  s0 = s1;
1209
1390
 
@@ -1214,16 +1395,16 @@ function peg$parse(input, options) {
1214
1395
  var s0, s1;
1215
1396
 
1216
1397
  s0 = peg$currPos;
1217
- if (peg$c37.test(input.charAt(peg$currPos))) {
1398
+ if (peg$c39.test(input.charAt(peg$currPos))) {
1218
1399
  s1 = input.charAt(peg$currPos);
1219
1400
  peg$currPos++;
1220
1401
  } else {
1221
1402
  s1 = peg$FAILED;
1222
- if (peg$silentFails === 0) { peg$fail(peg$c38); }
1403
+ if (peg$silentFails === 0) { peg$fail(peg$c40); }
1223
1404
  }
1224
1405
  if (s1 !== peg$FAILED) {
1225
1406
  peg$savedPos = s0;
1226
- s1 = peg$c6();
1407
+ s1 = peg$c8();
1227
1408
  }
1228
1409
  s0 = s1;
1229
1410