emblem-source 0.2.4 → 0.2.5

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.
Files changed (3) hide show
  1. data/dist/emblem.js +289 -216
  2. data/dist/emblem.min.js +2 -2
  3. metadata +2 -2
data/dist/emblem.js CHANGED
@@ -178,7 +178,7 @@ this.Emblem = {};
178
178
 
179
179
  Emblem = this.Emblem;
180
180
 
181
- Emblem.VERSION = "0.2.4";
181
+ Emblem.VERSION = "0.2.5";
182
182
 
183
183
 
184
184
 
@@ -551,38 +551,46 @@ Emblem.Parser = (function() {
551
551
  return textNodesResult(first, tail);
552
552
  },
553
553
  peg$c92 = function(first, tail) { return textNodesResult(first, tail); },
554
- peg$c93 = function(m) { m.escaped = true; return m; },
555
- peg$c94 = function(m) { m.escaped = false; return m; },
556
- peg$c95 = function(a) { return new AST.ContentNode(a); },
557
- peg$c96 = "any character",
558
- peg$c97 = "SingleMustacheOpen",
559
- peg$c98 = "{",
560
- peg$c99 = "\"{\"",
561
- peg$c100 = "DoubleMustacheOpen",
562
- peg$c101 = "{{",
563
- peg$c102 = "\"{{\"",
564
- peg$c103 = "TripleMustacheOpen",
565
- peg$c104 = "{{{",
566
- peg$c105 = "\"{{{\"",
567
- peg$c106 = "SingleMustacheClose",
568
- peg$c107 = "}",
569
- peg$c108 = "\"}\"",
570
- peg$c109 = "DoubleMustacheClose",
571
- peg$c110 = "}}",
572
- peg$c111 = "\"}}\"",
573
- peg$c112 = "TripleMustacheClose",
574
- peg$c113 = "}}}",
575
- peg$c114 = "\"}}}\"",
576
- peg$c115 = "InterpolationOpen",
577
- peg$c116 = "#{",
578
- peg$c117 = "\"#{\"",
579
- peg$c118 = "InterpolationClose",
580
- peg$c119 = "==",
581
- peg$c120 = "\"==\"",
582
- peg$c121 = function() { return false; },
583
- peg$c122 = function() { return true; },
584
- peg$c123 = function(h, s) { return h || s; },
585
- peg$c124 = function(h, inTagMustaches, fullAttributes) {
554
+ peg$c93 = "{",
555
+ peg$c94 = "\"{\"",
556
+ peg$c95 = /^[^}]/,
557
+ peg$c96 = "[^}]",
558
+ peg$c97 = function(text) {
559
+ // Force interpretation as mustache.
560
+ // TODO: change to just parse with a specific rule?
561
+ text = "=" + text;
562
+ return Emblem.parse(text).statements[0];
563
+ },
564
+ peg$c98 = function(m) { m.escaped = true; return m; },
565
+ peg$c99 = function(m) { m.escaped = false; return m; },
566
+ peg$c100 = function(a) { return new AST.ContentNode(a); },
567
+ peg$c101 = "any character",
568
+ peg$c102 = "SingleMustacheOpen",
569
+ peg$c103 = "DoubleMustacheOpen",
570
+ peg$c104 = "{{",
571
+ peg$c105 = "\"{{\"",
572
+ peg$c106 = "TripleMustacheOpen",
573
+ peg$c107 = "{{{",
574
+ peg$c108 = "\"{{{\"",
575
+ peg$c109 = "SingleMustacheClose",
576
+ peg$c110 = "}",
577
+ peg$c111 = "\"}\"",
578
+ peg$c112 = "DoubleMustacheClose",
579
+ peg$c113 = "}}",
580
+ peg$c114 = "\"}}\"",
581
+ peg$c115 = "TripleMustacheClose",
582
+ peg$c116 = "}}}",
583
+ peg$c117 = "\"}}}\"",
584
+ peg$c118 = "InterpolationOpen",
585
+ peg$c119 = "#{",
586
+ peg$c120 = "\"#{\"",
587
+ peg$c121 = "InterpolationClose",
588
+ peg$c122 = "==",
589
+ peg$c123 = "\"==\"",
590
+ peg$c124 = function() { return false; },
591
+ peg$c125 = function() { return true; },
592
+ peg$c126 = function(h, s) { return h || s; },
593
+ peg$c127 = function(h, inTagMustaches, fullAttributes) {
586
594
  var tagName = h[0] || 'div',
587
595
  shorthandAttributes = h[1] || [],
588
596
  id = shorthandAttributes[0],
@@ -617,9 +625,9 @@ Emblem.Parser = (function() {
617
625
  return [tagOpenContent, new AST.ContentNode('</' + tagName + '>')];
618
626
  }
619
627
  },
620
- peg$c125 = function(s) { return { shorthand: s, id: true}; },
621
- peg$c126 = function(s) { return { shorthand: s }; },
622
- peg$c127 = function(shorthands) {
628
+ peg$c128 = function(s) { return { shorthand: s, id: true}; },
629
+ peg$c129 = function(s) { return { shorthand: s }; },
630
+ peg$c130 = function(shorthands) {
623
631
  var id, classes = [];
624
632
  for(var i = 0, len = shorthands.length; i < len; ++i) {
625
633
  var shorthand = shorthands[i];
@@ -632,28 +640,28 @@ Emblem.Parser = (function() {
632
640
 
633
641
  return [id, classes];
634
642
  },
635
- peg$c128 = function(a) {
643
+ peg$c131 = function(a) {
636
644
  return [new AST.ContentNode(' ')].concat(a);
637
645
  },
638
- peg$c129 = /^[A-Za-z.0-9_\-]/,
639
- peg$c130 = "[A-Za-z.0-9_\\-]",
640
- peg$c131 = function(id) { return new AST.MustacheNode([id]); },
641
- peg$c132 = function(event, mustacheNode) {
646
+ peg$c132 = /^[A-Za-z.0-9_\-]/,
647
+ peg$c133 = "[A-Za-z.0-9_\\-]",
648
+ peg$c134 = function(id) { return new AST.MustacheNode([id]); },
649
+ peg$c135 = function(event, mustacheNode) {
642
650
  // Unshift the action helper and augment the hash
643
651
  return [unshiftParam(mustacheNode, 'action', [['on', new AST.StringNode(event)]])];
644
652
  },
645
- peg$c133 = function(value) { return value.replace(/ *$/, ''); },
646
- peg$c134 = "!",
647
- peg$c135 = "\"!\"",
648
- peg$c136 = function(key, value) { return IS_EMBER; },
649
- peg$c137 = function(key, value) {
653
+ peg$c136 = function(value) { return value.replace(/ *$/, ''); },
654
+ peg$c137 = "!",
655
+ peg$c138 = "\"!\"",
656
+ peg$c139 = function(key, value) { return IS_EMBER; },
657
+ peg$c140 = function(key, value) {
650
658
  var hashNode = new AST.HashNode([[key, new AST.StringNode(value)]]);
651
659
  var params = [new AST.IdNode(['bindAttr'])];
652
660
  var mustacheNode = new AST.MustacheNode(params, hashNode);
653
661
 
654
662
  return [mustacheNode];
655
663
  },
656
- peg$c138 = function(key, id) {
664
+ peg$c141 = function(key, id) {
657
665
  var mustacheNode = new AST.MustacheNode([id]);
658
666
 
659
667
  if(IS_EMBER && id._emblemSuffixModifier === '!') {
@@ -666,54 +674,54 @@ Emblem.Parser = (function() {
666
674
  new AST.ContentNode('"'),
667
675
  ];
668
676
  },
669
- peg$c139 = function(key, nodes) {
677
+ peg$c142 = function(key, nodes) {
670
678
  var result = [ new AST.ContentNode(key + '=' + '"') ].concat(nodes);
671
679
  return result.concat([new AST.ContentNode('"')]);
672
680
  },
673
- peg$c140 = "_",
674
- peg$c141 = "\"_\"",
675
- peg$c142 = "-",
676
- peg$c143 = "\"-\"",
677
- peg$c144 = "%",
678
- peg$c145 = "\"%\"",
679
- peg$c146 = "#",
680
- peg$c147 = "\"#\"",
681
- peg$c148 = function(c) { return c;},
682
- peg$c149 = "CSSIdentifier",
683
- peg$c150 = /^[_a-zA-Z0-9\-]/,
684
- peg$c151 = "[_a-zA-Z0-9\\-]",
685
- peg$c152 = /^[_a-zA-Z]/,
686
- peg$c153 = "[_a-zA-Z]",
687
- peg$c154 = /^[\x80-\xFF]/,
688
- peg$c155 = "[\\x80-\\xFF]",
689
- peg$c156 = "KnownHTMLTagName",
690
- peg$c157 = function(t) { return !!KNOWN_TAGS[t]; },
691
- peg$c158 = function(t) { return t; },
692
- peg$c159 = ":",
693
- peg$c160 = "\":\"",
694
- peg$c161 = "a JS event",
695
- peg$c162 = function(t) { return !!KNOWN_EVENTS[t]; },
696
- peg$c163 = "INDENT",
697
- peg$c164 = "\uEFEF",
698
- peg$c165 = "\"\\uEFEF\"",
699
- peg$c166 = function() { return ''; },
700
- peg$c167 = "DEDENT",
701
- peg$c168 = "\uEFFE",
702
- peg$c169 = "\"\\uEFFE\"",
703
- peg$c170 = "Unmatched DEDENT",
704
- peg$c171 = "\uEFEE",
705
- peg$c172 = "\"\\uEFEE\"",
706
- peg$c173 = "LineEnd",
707
- peg$c174 = "\uEFFF",
708
- peg$c175 = "\"\\uEFFF\"",
709
- peg$c176 = "\n",
710
- peg$c177 = "\"\\n\"",
711
- peg$c178 = "ANYDEDENT",
712
- peg$c179 = "RequiredWhitespace",
713
- peg$c180 = "OptionalWhitespace",
714
- peg$c181 = "InlineWhitespace",
715
- peg$c182 = /^[ \t]/,
716
- peg$c183 = "[ \\t]",
681
+ peg$c143 = "_",
682
+ peg$c144 = "\"_\"",
683
+ peg$c145 = "-",
684
+ peg$c146 = "\"-\"",
685
+ peg$c147 = "%",
686
+ peg$c148 = "\"%\"",
687
+ peg$c149 = "#",
688
+ peg$c150 = "\"#\"",
689
+ peg$c151 = function(c) { return c;},
690
+ peg$c152 = "CSSIdentifier",
691
+ peg$c153 = /^[_a-zA-Z0-9\-]/,
692
+ peg$c154 = "[_a-zA-Z0-9\\-]",
693
+ peg$c155 = /^[_a-zA-Z]/,
694
+ peg$c156 = "[_a-zA-Z]",
695
+ peg$c157 = /^[\x80-\xFF]/,
696
+ peg$c158 = "[\\x80-\\xFF]",
697
+ peg$c159 = "KnownHTMLTagName",
698
+ peg$c160 = function(t) { return !!KNOWN_TAGS[t]; },
699
+ peg$c161 = function(t) { return t; },
700
+ peg$c162 = ":",
701
+ peg$c163 = "\":\"",
702
+ peg$c164 = "a JS event",
703
+ peg$c165 = function(t) { return !!KNOWN_EVENTS[t]; },
704
+ peg$c166 = "INDENT",
705
+ peg$c167 = "\uEFEF",
706
+ peg$c168 = "\"\\uEFEF\"",
707
+ peg$c169 = function() { return ''; },
708
+ peg$c170 = "DEDENT",
709
+ peg$c171 = "\uEFFE",
710
+ peg$c172 = "\"\\uEFFE\"",
711
+ peg$c173 = "Unmatched DEDENT",
712
+ peg$c174 = "\uEFEE",
713
+ peg$c175 = "\"\\uEFEE\"",
714
+ peg$c176 = "LineEnd",
715
+ peg$c177 = "\uEFFF",
716
+ peg$c178 = "\"\\uEFFF\"",
717
+ peg$c179 = "\n",
718
+ peg$c180 = "\"\\n\"",
719
+ peg$c181 = "ANYDEDENT",
720
+ peg$c182 = "RequiredWhitespace",
721
+ peg$c183 = "OptionalWhitespace",
722
+ peg$c184 = "InlineWhitespace",
723
+ peg$c185 = /^[ \t]/,
724
+ peg$c186 = "[ \\t]",
717
725
 
718
726
  peg$currPos = 0,
719
727
  peg$reportedPos = 0,
@@ -3373,6 +3381,71 @@ Emblem.Parser = (function() {
3373
3381
  return s0;
3374
3382
  }
3375
3383
 
3384
+ function peg$parserecursivelyParsedMustacheContent() {
3385
+ var s0, s1, s2, s3, s4;
3386
+
3387
+ s0 = peg$currPos;
3388
+ s1 = peg$currPos;
3389
+ peg$silentFails++;
3390
+ if (input.charCodeAt(peg$currPos) === 123) {
3391
+ s2 = peg$c93;
3392
+ peg$currPos++;
3393
+ } else {
3394
+ s2 = null;
3395
+ if (peg$silentFails === 0) { peg$fail(peg$c94); }
3396
+ }
3397
+ peg$silentFails--;
3398
+ if (s2 === null) {
3399
+ s1 = peg$c1;
3400
+ } else {
3401
+ peg$currPos = s1;
3402
+ s1 = peg$c0;
3403
+ }
3404
+ if (s1 !== null) {
3405
+ s2 = peg$currPos;
3406
+ s3 = [];
3407
+ if (peg$c95.test(input.charAt(peg$currPos))) {
3408
+ s4 = input.charAt(peg$currPos);
3409
+ peg$currPos++;
3410
+ } else {
3411
+ s4 = null;
3412
+ if (peg$silentFails === 0) { peg$fail(peg$c96); }
3413
+ }
3414
+ while (s4 !== null) {
3415
+ s3.push(s4);
3416
+ if (peg$c95.test(input.charAt(peg$currPos))) {
3417
+ s4 = input.charAt(peg$currPos);
3418
+ peg$currPos++;
3419
+ } else {
3420
+ s4 = null;
3421
+ if (peg$silentFails === 0) { peg$fail(peg$c96); }
3422
+ }
3423
+ }
3424
+ if (s3 !== null) {
3425
+ s3 = input.substring(s2, peg$currPos);
3426
+ }
3427
+ s2 = s3;
3428
+ if (s2 !== null) {
3429
+ peg$reportedPos = s0;
3430
+ s1 = peg$c97(s2);
3431
+ if (s1 === null) {
3432
+ peg$currPos = s0;
3433
+ s0 = s1;
3434
+ } else {
3435
+ s0 = s1;
3436
+ }
3437
+ } else {
3438
+ peg$currPos = s0;
3439
+ s0 = peg$c0;
3440
+ }
3441
+ } else {
3442
+ peg$currPos = s0;
3443
+ s0 = peg$c0;
3444
+ }
3445
+
3446
+ return s0;
3447
+ }
3448
+
3376
3449
  function peg$parserawMustacheEscaped() {
3377
3450
  var s0, s1, s2, s3, s4, s5;
3378
3451
 
@@ -3381,14 +3454,14 @@ Emblem.Parser = (function() {
3381
3454
  if (s1 !== null) {
3382
3455
  s2 = peg$parse_();
3383
3456
  if (s2 !== null) {
3384
- s3 = peg$parseinMustache();
3457
+ s3 = peg$parserecursivelyParsedMustacheContent();
3385
3458
  if (s3 !== null) {
3386
3459
  s4 = peg$parse_();
3387
3460
  if (s4 !== null) {
3388
3461
  s5 = peg$parsedoubleClose();
3389
3462
  if (s5 !== null) {
3390
3463
  peg$reportedPos = s0;
3391
- s1 = peg$c93(s3);
3464
+ s1 = peg$c98(s3);
3392
3465
  if (s1 === null) {
3393
3466
  peg$currPos = s0;
3394
3467
  s0 = s1;
@@ -3421,14 +3494,14 @@ Emblem.Parser = (function() {
3421
3494
  if (s1 !== null) {
3422
3495
  s2 = peg$parse_();
3423
3496
  if (s2 !== null) {
3424
- s3 = peg$parseinMustache();
3497
+ s3 = peg$parserecursivelyParsedMustacheContent();
3425
3498
  if (s3 !== null) {
3426
3499
  s4 = peg$parse_();
3427
3500
  if (s4 !== null) {
3428
3501
  s5 = peg$parsehashStacheClose();
3429
3502
  if (s5 !== null) {
3430
3503
  peg$reportedPos = s0;
3431
- s1 = peg$c93(s3);
3504
+ s1 = peg$c98(s3);
3432
3505
  if (s1 === null) {
3433
3506
  peg$currPos = s0;
3434
3507
  s0 = s1;
@@ -3468,14 +3541,14 @@ Emblem.Parser = (function() {
3468
3541
  if (s1 !== null) {
3469
3542
  s2 = peg$parse_();
3470
3543
  if (s2 !== null) {
3471
- s3 = peg$parseinMustache();
3544
+ s3 = peg$parserecursivelyParsedMustacheContent();
3472
3545
  if (s3 !== null) {
3473
3546
  s4 = peg$parse_();
3474
3547
  if (s4 !== null) {
3475
3548
  s5 = peg$parsetripleClose();
3476
3549
  if (s5 !== null) {
3477
3550
  peg$reportedPos = s0;
3478
- s1 = peg$c94(s3);
3551
+ s1 = peg$c99(s3);
3479
3552
  if (s1 === null) {
3480
3553
  peg$currPos = s0;
3481
3554
  s0 = s1;
@@ -3527,7 +3600,7 @@ Emblem.Parser = (function() {
3527
3600
  s1 = s2;
3528
3601
  if (s1 !== null) {
3529
3602
  peg$reportedPos = s0;
3530
- s1 = peg$c95(s1);
3603
+ s1 = peg$c100(s1);
3531
3604
  }
3532
3605
  if (s1 === null) {
3533
3606
  peg$currPos = s0;
@@ -3560,7 +3633,7 @@ Emblem.Parser = (function() {
3560
3633
  s1 = s2;
3561
3634
  if (s1 !== null) {
3562
3635
  peg$reportedPos = s0;
3563
- s1 = peg$c95(s1);
3636
+ s1 = peg$c100(s1);
3564
3637
  }
3565
3638
  if (s1 === null) {
3566
3639
  peg$currPos = s0;
@@ -3601,7 +3674,7 @@ Emblem.Parser = (function() {
3601
3674
  peg$currPos++;
3602
3675
  } else {
3603
3676
  s2 = null;
3604
- if (peg$silentFails === 0) { peg$fail(peg$c96); }
3677
+ if (peg$silentFails === 0) { peg$fail(peg$c101); }
3605
3678
  }
3606
3679
  if (s2 !== null) {
3607
3680
  peg$reportedPos = s0;
@@ -3653,7 +3726,7 @@ Emblem.Parser = (function() {
3653
3726
  peg$currPos++;
3654
3727
  } else {
3655
3728
  s2 = null;
3656
- if (peg$silentFails === 0) { peg$fail(peg$c96); }
3729
+ if (peg$silentFails === 0) { peg$fail(peg$c101); }
3657
3730
  }
3658
3731
  if (s2 !== null) {
3659
3732
  peg$reportedPos = s0;
@@ -3697,7 +3770,7 @@ Emblem.Parser = (function() {
3697
3770
  s1 = s2;
3698
3771
  if (s1 !== null) {
3699
3772
  peg$reportedPos = s0;
3700
- s1 = peg$c95(s1);
3773
+ s1 = peg$c100(s1);
3701
3774
  }
3702
3775
  if (s1 === null) {
3703
3776
  peg$currPos = s0;
@@ -3729,7 +3802,7 @@ Emblem.Parser = (function() {
3729
3802
  peg$currPos++;
3730
3803
  } else {
3731
3804
  s2 = null;
3732
- if (peg$silentFails === 0) { peg$fail(peg$c96); }
3805
+ if (peg$silentFails === 0) { peg$fail(peg$c101); }
3733
3806
  }
3734
3807
  if (s2 !== null) {
3735
3808
  peg$reportedPos = s0;
@@ -3780,14 +3853,14 @@ Emblem.Parser = (function() {
3780
3853
  if (s1 !== null) {
3781
3854
  s2 = peg$parse_();
3782
3855
  if (s2 !== null) {
3783
- s3 = peg$parseinMustache();
3856
+ s3 = peg$parserecursivelyParsedMustacheContent();
3784
3857
  if (s3 !== null) {
3785
3858
  s4 = peg$parse_();
3786
3859
  if (s4 !== null) {
3787
3860
  s5 = peg$parsesingleClose();
3788
3861
  if (s5 !== null) {
3789
3862
  peg$reportedPos = s0;
3790
- s1 = peg$c93(s3);
3863
+ s1 = peg$c98(s3);
3791
3864
  if (s1 === null) {
3792
3865
  peg$currPos = s0;
3793
3866
  s0 = s1;
@@ -3837,16 +3910,16 @@ Emblem.Parser = (function() {
3837
3910
 
3838
3911
  peg$silentFails++;
3839
3912
  if (input.charCodeAt(peg$currPos) === 123) {
3840
- s0 = peg$c98;
3913
+ s0 = peg$c93;
3841
3914
  peg$currPos++;
3842
3915
  } else {
3843
3916
  s0 = null;
3844
- if (peg$silentFails === 0) { peg$fail(peg$c99); }
3917
+ if (peg$silentFails === 0) { peg$fail(peg$c94); }
3845
3918
  }
3846
3919
  peg$silentFails--;
3847
3920
  if (s0 === null) {
3848
3921
  s1 = null;
3849
- if (peg$silentFails === 0) { peg$fail(peg$c97); }
3922
+ if (peg$silentFails === 0) { peg$fail(peg$c102); }
3850
3923
  }
3851
3924
 
3852
3925
  return s0;
@@ -3856,17 +3929,17 @@ Emblem.Parser = (function() {
3856
3929
  var s0, s1;
3857
3930
 
3858
3931
  peg$silentFails++;
3859
- if (input.substr(peg$currPos, 2) === peg$c101) {
3860
- s0 = peg$c101;
3932
+ if (input.substr(peg$currPos, 2) === peg$c104) {
3933
+ s0 = peg$c104;
3861
3934
  peg$currPos += 2;
3862
3935
  } else {
3863
3936
  s0 = null;
3864
- if (peg$silentFails === 0) { peg$fail(peg$c102); }
3937
+ if (peg$silentFails === 0) { peg$fail(peg$c105); }
3865
3938
  }
3866
3939
  peg$silentFails--;
3867
3940
  if (s0 === null) {
3868
3941
  s1 = null;
3869
- if (peg$silentFails === 0) { peg$fail(peg$c100); }
3942
+ if (peg$silentFails === 0) { peg$fail(peg$c103); }
3870
3943
  }
3871
3944
 
3872
3945
  return s0;
@@ -3876,17 +3949,17 @@ Emblem.Parser = (function() {
3876
3949
  var s0, s1;
3877
3950
 
3878
3951
  peg$silentFails++;
3879
- if (input.substr(peg$currPos, 3) === peg$c104) {
3880
- s0 = peg$c104;
3952
+ if (input.substr(peg$currPos, 3) === peg$c107) {
3953
+ s0 = peg$c107;
3881
3954
  peg$currPos += 3;
3882
3955
  } else {
3883
3956
  s0 = null;
3884
- if (peg$silentFails === 0) { peg$fail(peg$c105); }
3957
+ if (peg$silentFails === 0) { peg$fail(peg$c108); }
3885
3958
  }
3886
3959
  peg$silentFails--;
3887
3960
  if (s0 === null) {
3888
3961
  s1 = null;
3889
- if (peg$silentFails === 0) { peg$fail(peg$c103); }
3962
+ if (peg$silentFails === 0) { peg$fail(peg$c106); }
3890
3963
  }
3891
3964
 
3892
3965
  return s0;
@@ -3897,16 +3970,16 @@ Emblem.Parser = (function() {
3897
3970
 
3898
3971
  peg$silentFails++;
3899
3972
  if (input.charCodeAt(peg$currPos) === 125) {
3900
- s0 = peg$c107;
3973
+ s0 = peg$c110;
3901
3974
  peg$currPos++;
3902
3975
  } else {
3903
3976
  s0 = null;
3904
- if (peg$silentFails === 0) { peg$fail(peg$c108); }
3977
+ if (peg$silentFails === 0) { peg$fail(peg$c111); }
3905
3978
  }
3906
3979
  peg$silentFails--;
3907
3980
  if (s0 === null) {
3908
3981
  s1 = null;
3909
- if (peg$silentFails === 0) { peg$fail(peg$c106); }
3982
+ if (peg$silentFails === 0) { peg$fail(peg$c109); }
3910
3983
  }
3911
3984
 
3912
3985
  return s0;
@@ -3916,17 +3989,17 @@ Emblem.Parser = (function() {
3916
3989
  var s0, s1;
3917
3990
 
3918
3991
  peg$silentFails++;
3919
- if (input.substr(peg$currPos, 2) === peg$c110) {
3920
- s0 = peg$c110;
3992
+ if (input.substr(peg$currPos, 2) === peg$c113) {
3993
+ s0 = peg$c113;
3921
3994
  peg$currPos += 2;
3922
3995
  } else {
3923
3996
  s0 = null;
3924
- if (peg$silentFails === 0) { peg$fail(peg$c111); }
3997
+ if (peg$silentFails === 0) { peg$fail(peg$c114); }
3925
3998
  }
3926
3999
  peg$silentFails--;
3927
4000
  if (s0 === null) {
3928
4001
  s1 = null;
3929
- if (peg$silentFails === 0) { peg$fail(peg$c109); }
4002
+ if (peg$silentFails === 0) { peg$fail(peg$c112); }
3930
4003
  }
3931
4004
 
3932
4005
  return s0;
@@ -3936,17 +4009,17 @@ Emblem.Parser = (function() {
3936
4009
  var s0, s1;
3937
4010
 
3938
4011
  peg$silentFails++;
3939
- if (input.substr(peg$currPos, 3) === peg$c113) {
3940
- s0 = peg$c113;
4012
+ if (input.substr(peg$currPos, 3) === peg$c116) {
4013
+ s0 = peg$c116;
3941
4014
  peg$currPos += 3;
3942
4015
  } else {
3943
4016
  s0 = null;
3944
- if (peg$silentFails === 0) { peg$fail(peg$c114); }
4017
+ if (peg$silentFails === 0) { peg$fail(peg$c117); }
3945
4018
  }
3946
4019
  peg$silentFails--;
3947
4020
  if (s0 === null) {
3948
4021
  s1 = null;
3949
- if (peg$silentFails === 0) { peg$fail(peg$c112); }
4022
+ if (peg$silentFails === 0) { peg$fail(peg$c115); }
3950
4023
  }
3951
4024
 
3952
4025
  return s0;
@@ -3956,17 +4029,17 @@ Emblem.Parser = (function() {
3956
4029
  var s0, s1;
3957
4030
 
3958
4031
  peg$silentFails++;
3959
- if (input.substr(peg$currPos, 2) === peg$c116) {
3960
- s0 = peg$c116;
4032
+ if (input.substr(peg$currPos, 2) === peg$c119) {
4033
+ s0 = peg$c119;
3961
4034
  peg$currPos += 2;
3962
4035
  } else {
3963
4036
  s0 = null;
3964
- if (peg$silentFails === 0) { peg$fail(peg$c117); }
4037
+ if (peg$silentFails === 0) { peg$fail(peg$c120); }
3965
4038
  }
3966
4039
  peg$silentFails--;
3967
4040
  if (s0 === null) {
3968
4041
  s1 = null;
3969
- if (peg$silentFails === 0) { peg$fail(peg$c115); }
4042
+ if (peg$silentFails === 0) { peg$fail(peg$c118); }
3970
4043
  }
3971
4044
 
3972
4045
  return s0;
@@ -3977,16 +4050,16 @@ Emblem.Parser = (function() {
3977
4050
 
3978
4051
  peg$silentFails++;
3979
4052
  if (input.charCodeAt(peg$currPos) === 125) {
3980
- s0 = peg$c107;
4053
+ s0 = peg$c110;
3981
4054
  peg$currPos++;
3982
4055
  } else {
3983
4056
  s0 = null;
3984
- if (peg$silentFails === 0) { peg$fail(peg$c108); }
4057
+ if (peg$silentFails === 0) { peg$fail(peg$c111); }
3985
4058
  }
3986
4059
  peg$silentFails--;
3987
4060
  if (s0 === null) {
3988
4061
  s1 = null;
3989
- if (peg$silentFails === 0) { peg$fail(peg$c118); }
4062
+ if (peg$silentFails === 0) { peg$fail(peg$c121); }
3990
4063
  }
3991
4064
 
3992
4065
  return s0;
@@ -3996,12 +4069,12 @@ Emblem.Parser = (function() {
3996
4069
  var s0, s1, s2;
3997
4070
 
3998
4071
  s0 = peg$currPos;
3999
- if (input.substr(peg$currPos, 2) === peg$c119) {
4000
- s1 = peg$c119;
4072
+ if (input.substr(peg$currPos, 2) === peg$c122) {
4073
+ s1 = peg$c122;
4001
4074
  peg$currPos += 2;
4002
4075
  } else {
4003
4076
  s1 = null;
4004
- if (peg$silentFails === 0) { peg$fail(peg$c120); }
4077
+ if (peg$silentFails === 0) { peg$fail(peg$c123); }
4005
4078
  }
4006
4079
  if (s1 !== null) {
4007
4080
  if (input.charCodeAt(peg$currPos) === 32) {
@@ -4016,7 +4089,7 @@ Emblem.Parser = (function() {
4016
4089
  }
4017
4090
  if (s2 !== null) {
4018
4091
  peg$reportedPos = s0;
4019
- s1 = peg$c121();
4092
+ s1 = peg$c124();
4020
4093
  if (s1 === null) {
4021
4094
  peg$currPos = s0;
4022
4095
  s0 = s1;
@@ -4053,7 +4126,7 @@ Emblem.Parser = (function() {
4053
4126
  }
4054
4127
  if (s2 !== null) {
4055
4128
  peg$reportedPos = s0;
4056
- s1 = peg$c122();
4129
+ s1 = peg$c125();
4057
4130
  if (s1 === null) {
4058
4131
  peg$currPos = s0;
4059
4132
  s0 = s1;
@@ -4088,7 +4161,7 @@ Emblem.Parser = (function() {
4088
4161
  }
4089
4162
  if (s2 !== null) {
4090
4163
  peg$reportedPos = peg$currPos;
4091
- s3 = peg$c123(s1,s2);
4164
+ s3 = peg$c126(s1,s2);
4092
4165
  if (s3) {
4093
4166
  s3 = peg$c1;
4094
4167
  } else {
@@ -4134,7 +4207,7 @@ Emblem.Parser = (function() {
4134
4207
  }
4135
4208
  if (s3 !== null) {
4136
4209
  peg$reportedPos = s0;
4137
- s1 = peg$c124(s1,s2,s3);
4210
+ s1 = peg$c127(s1,s2,s3);
4138
4211
  if (s1 === null) {
4139
4212
  peg$currPos = s0;
4140
4213
  s0 = s1;
@@ -4166,7 +4239,7 @@ Emblem.Parser = (function() {
4166
4239
  s3 = peg$parseidShorthand();
4167
4240
  if (s3 !== null) {
4168
4241
  peg$reportedPos = s2;
4169
- s3 = peg$c125(s3);
4242
+ s3 = peg$c128(s3);
4170
4243
  }
4171
4244
  if (s3 === null) {
4172
4245
  peg$currPos = s2;
@@ -4179,7 +4252,7 @@ Emblem.Parser = (function() {
4179
4252
  s3 = peg$parseclassShorthand();
4180
4253
  if (s3 !== null) {
4181
4254
  peg$reportedPos = s2;
4182
- s3 = peg$c126(s3);
4255
+ s3 = peg$c129(s3);
4183
4256
  }
4184
4257
  if (s3 === null) {
4185
4258
  peg$currPos = s2;
@@ -4195,7 +4268,7 @@ Emblem.Parser = (function() {
4195
4268
  s3 = peg$parseidShorthand();
4196
4269
  if (s3 !== null) {
4197
4270
  peg$reportedPos = s2;
4198
- s3 = peg$c125(s3);
4271
+ s3 = peg$c128(s3);
4199
4272
  }
4200
4273
  if (s3 === null) {
4201
4274
  peg$currPos = s2;
@@ -4208,7 +4281,7 @@ Emblem.Parser = (function() {
4208
4281
  s3 = peg$parseclassShorthand();
4209
4282
  if (s3 !== null) {
4210
4283
  peg$reportedPos = s2;
4211
- s3 = peg$c126(s3);
4284
+ s3 = peg$c129(s3);
4212
4285
  }
4213
4286
  if (s3 === null) {
4214
4287
  peg$currPos = s2;
@@ -4223,7 +4296,7 @@ Emblem.Parser = (function() {
4223
4296
  }
4224
4297
  if (s1 !== null) {
4225
4298
  peg$reportedPos = s0;
4226
- s1 = peg$c127(s1);
4299
+ s1 = peg$c130(s1);
4227
4300
  }
4228
4301
  if (s1 === null) {
4229
4302
  peg$currPos = s0;
@@ -4274,7 +4347,7 @@ Emblem.Parser = (function() {
4274
4347
  }
4275
4348
  if (s2 !== null) {
4276
4349
  peg$reportedPos = s0;
4277
- s1 = peg$c128(s2);
4350
+ s1 = peg$c131(s2);
4278
4351
  if (s1 === null) {
4279
4352
  peg$currPos = s0;
4280
4353
  s0 = s1;
@@ -4296,12 +4369,12 @@ Emblem.Parser = (function() {
4296
4369
  function peg$parseboundAttributeValueChar() {
4297
4370
  var s0;
4298
4371
 
4299
- if (peg$c129.test(input.charAt(peg$currPos))) {
4372
+ if (peg$c132.test(input.charAt(peg$currPos))) {
4300
4373
  s0 = input.charAt(peg$currPos);
4301
4374
  peg$currPos++;
4302
4375
  } else {
4303
4376
  s0 = null;
4304
- if (peg$silentFails === 0) { peg$fail(peg$c130); }
4377
+ if (peg$silentFails === 0) { peg$fail(peg$c133); }
4305
4378
  }
4306
4379
  if (s0 === null) {
4307
4380
  s0 = peg$parsenonSeparatorColon();
@@ -4319,7 +4392,7 @@ Emblem.Parser = (function() {
4319
4392
  s1 = peg$parsepathIdNode();
4320
4393
  if (s1 !== null) {
4321
4394
  peg$reportedPos = s0;
4322
- s1 = peg$c131(s1);
4395
+ s1 = peg$c134(s1);
4323
4396
  }
4324
4397
  if (s1 === null) {
4325
4398
  peg$currPos = s0;
@@ -4435,7 +4508,7 @@ Emblem.Parser = (function() {
4435
4508
  s3 = peg$parseactionValue();
4436
4509
  if (s3 !== null) {
4437
4510
  peg$reportedPos = s0;
4438
- s1 = peg$c132(s1,s3);
4511
+ s1 = peg$c135(s1,s3);
4439
4512
  if (s1 === null) {
4440
4513
  peg$currPos = s0;
4441
4514
  s0 = s1;
@@ -4463,11 +4536,11 @@ Emblem.Parser = (function() {
4463
4536
 
4464
4537
  s0 = peg$currPos;
4465
4538
  if (input.charCodeAt(peg$currPos) === 123) {
4466
- s1 = peg$c98;
4539
+ s1 = peg$c93;
4467
4540
  peg$currPos++;
4468
4541
  } else {
4469
4542
  s1 = null;
4470
- if (peg$silentFails === 0) { peg$fail(peg$c99); }
4543
+ if (peg$silentFails === 0) { peg$fail(peg$c94); }
4471
4544
  }
4472
4545
  if (s1 !== null) {
4473
4546
  s2 = peg$parse_();
@@ -4509,15 +4582,15 @@ Emblem.Parser = (function() {
4509
4582
  s4 = peg$parse_();
4510
4583
  if (s4 !== null) {
4511
4584
  if (input.charCodeAt(peg$currPos) === 125) {
4512
- s5 = peg$c107;
4585
+ s5 = peg$c110;
4513
4586
  peg$currPos++;
4514
4587
  } else {
4515
4588
  s5 = null;
4516
- if (peg$silentFails === 0) { peg$fail(peg$c108); }
4589
+ if (peg$silentFails === 0) { peg$fail(peg$c111); }
4517
4590
  }
4518
4591
  if (s5 !== null) {
4519
4592
  peg$reportedPos = s0;
4520
- s1 = peg$c133(s3);
4593
+ s1 = peg$c136(s3);
4521
4594
  if (s1 === null) {
4522
4595
  peg$currPos = s0;
4523
4596
  s0 = s1;
@@ -4584,11 +4657,11 @@ Emblem.Parser = (function() {
4584
4657
  s4 = peg$currPos;
4585
4658
  peg$silentFails++;
4586
4659
  if (input.charCodeAt(peg$currPos) === 33) {
4587
- s5 = peg$c134;
4660
+ s5 = peg$c137;
4588
4661
  peg$currPos++;
4589
4662
  } else {
4590
4663
  s5 = null;
4591
- if (peg$silentFails === 0) { peg$fail(peg$c135); }
4664
+ if (peg$silentFails === 0) { peg$fail(peg$c138); }
4592
4665
  }
4593
4666
  peg$silentFails--;
4594
4667
  if (s5 === null) {
@@ -4599,7 +4672,7 @@ Emblem.Parser = (function() {
4599
4672
  }
4600
4673
  if (s4 !== null) {
4601
4674
  peg$reportedPos = peg$currPos;
4602
- s5 = peg$c136(s1,s3);
4675
+ s5 = peg$c139(s1,s3);
4603
4676
  if (s5) {
4604
4677
  s5 = peg$c1;
4605
4678
  } else {
@@ -4607,7 +4680,7 @@ Emblem.Parser = (function() {
4607
4680
  }
4608
4681
  if (s5 !== null) {
4609
4682
  peg$reportedPos = s0;
4610
- s1 = peg$c137(s1,s3);
4683
+ s1 = peg$c140(s1,s3);
4611
4684
  if (s1 === null) {
4612
4685
  peg$currPos = s0;
4613
4686
  s0 = s1;
@@ -4655,7 +4728,7 @@ Emblem.Parser = (function() {
4655
4728
  s3 = peg$parsepathIdNode();
4656
4729
  if (s3 !== null) {
4657
4730
  peg$reportedPos = s0;
4658
- s1 = peg$c138(s1,s3);
4731
+ s1 = peg$c141(s1,s3);
4659
4732
  if (s1 === null) {
4660
4733
  peg$currPos = s0;
4661
4734
  s0 = s1;
@@ -4695,7 +4768,7 @@ Emblem.Parser = (function() {
4695
4768
  s3 = peg$parseattributeTextNodes();
4696
4769
  if (s3 !== null) {
4697
4770
  peg$reportedPos = s0;
4698
- s1 = peg$c139(s1,s3);
4771
+ s1 = peg$c142(s1,s3);
4699
4772
  if (s1 === null) {
4700
4773
  peg$currPos = s0;
4701
4774
  s0 = s1;
@@ -4761,19 +4834,19 @@ Emblem.Parser = (function() {
4761
4834
  }
4762
4835
  if (s0 === null) {
4763
4836
  if (input.charCodeAt(peg$currPos) === 95) {
4764
- s0 = peg$c140;
4837
+ s0 = peg$c143;
4765
4838
  peg$currPos++;
4766
4839
  } else {
4767
4840
  s0 = null;
4768
- if (peg$silentFails === 0) { peg$fail(peg$c141); }
4841
+ if (peg$silentFails === 0) { peg$fail(peg$c144); }
4769
4842
  }
4770
4843
  if (s0 === null) {
4771
4844
  if (input.charCodeAt(peg$currPos) === 45) {
4772
- s0 = peg$c142;
4845
+ s0 = peg$c145;
4773
4846
  peg$currPos++;
4774
4847
  } else {
4775
4848
  s0 = null;
4776
- if (peg$silentFails === 0) { peg$fail(peg$c143); }
4849
+ if (peg$silentFails === 0) { peg$fail(peg$c146); }
4777
4850
  }
4778
4851
  }
4779
4852
  }
@@ -4787,11 +4860,11 @@ Emblem.Parser = (function() {
4787
4860
 
4788
4861
  s0 = peg$currPos;
4789
4862
  if (input.charCodeAt(peg$currPos) === 37) {
4790
- s1 = peg$c144;
4863
+ s1 = peg$c147;
4791
4864
  peg$currPos++;
4792
4865
  } else {
4793
4866
  s1 = null;
4794
- if (peg$silentFails === 0) { peg$fail(peg$c145); }
4867
+ if (peg$silentFails === 0) { peg$fail(peg$c148); }
4795
4868
  }
4796
4869
  if (s1 !== null) {
4797
4870
  s2 = peg$parsecssIdentifier();
@@ -4821,17 +4894,17 @@ Emblem.Parser = (function() {
4821
4894
 
4822
4895
  s0 = peg$currPos;
4823
4896
  if (input.charCodeAt(peg$currPos) === 35) {
4824
- s1 = peg$c146;
4897
+ s1 = peg$c149;
4825
4898
  peg$currPos++;
4826
4899
  } else {
4827
4900
  s1 = null;
4828
- if (peg$silentFails === 0) { peg$fail(peg$c147); }
4901
+ if (peg$silentFails === 0) { peg$fail(peg$c150); }
4829
4902
  }
4830
4903
  if (s1 !== null) {
4831
4904
  s2 = peg$parsecssIdentifier();
4832
4905
  if (s2 !== null) {
4833
4906
  peg$reportedPos = s0;
4834
- s1 = peg$c148(s2);
4907
+ s1 = peg$c151(s2);
4835
4908
  if (s1 === null) {
4836
4909
  peg$currPos = s0;
4837
4910
  s0 = s1;
@@ -4892,7 +4965,7 @@ Emblem.Parser = (function() {
4892
4965
  peg$silentFails--;
4893
4966
  if (s0 === null) {
4894
4967
  s1 = null;
4895
- if (peg$silentFails === 0) { peg$fail(peg$c149); }
4968
+ if (peg$silentFails === 0) { peg$fail(peg$c152); }
4896
4969
  }
4897
4970
 
4898
4971
  return s0;
@@ -4919,12 +4992,12 @@ Emblem.Parser = (function() {
4919
4992
  function peg$parsenmchar() {
4920
4993
  var s0;
4921
4994
 
4922
- if (peg$c150.test(input.charAt(peg$currPos))) {
4995
+ if (peg$c153.test(input.charAt(peg$currPos))) {
4923
4996
  s0 = input.charAt(peg$currPos);
4924
4997
  peg$currPos++;
4925
4998
  } else {
4926
4999
  s0 = null;
4927
- if (peg$silentFails === 0) { peg$fail(peg$c151); }
5000
+ if (peg$silentFails === 0) { peg$fail(peg$c154); }
4928
5001
  }
4929
5002
  if (s0 === null) {
4930
5003
  s0 = peg$parsenonascii();
@@ -4936,12 +5009,12 @@ Emblem.Parser = (function() {
4936
5009
  function peg$parsenmstart() {
4937
5010
  var s0;
4938
5011
 
4939
- if (peg$c152.test(input.charAt(peg$currPos))) {
5012
+ if (peg$c155.test(input.charAt(peg$currPos))) {
4940
5013
  s0 = input.charAt(peg$currPos);
4941
5014
  peg$currPos++;
4942
5015
  } else {
4943
5016
  s0 = null;
4944
- if (peg$silentFails === 0) { peg$fail(peg$c153); }
5017
+ if (peg$silentFails === 0) { peg$fail(peg$c156); }
4945
5018
  }
4946
5019
  if (s0 === null) {
4947
5020
  s0 = peg$parsenonascii();
@@ -4953,12 +5026,12 @@ Emblem.Parser = (function() {
4953
5026
  function peg$parsenonascii() {
4954
5027
  var s0;
4955
5028
 
4956
- if (peg$c154.test(input.charAt(peg$currPos))) {
5029
+ if (peg$c157.test(input.charAt(peg$currPos))) {
4957
5030
  s0 = input.charAt(peg$currPos);
4958
5031
  peg$currPos++;
4959
5032
  } else {
4960
5033
  s0 = null;
4961
- if (peg$silentFails === 0) { peg$fail(peg$c155); }
5034
+ if (peg$silentFails === 0) { peg$fail(peg$c158); }
4962
5035
  }
4963
5036
 
4964
5037
  return s0;
@@ -4992,11 +5065,11 @@ Emblem.Parser = (function() {
4992
5065
  peg$silentFails++;
4993
5066
  s0 = peg$currPos;
4994
5067
  if (input.charCodeAt(peg$currPos) === 37) {
4995
- s1 = peg$c144;
5068
+ s1 = peg$c147;
4996
5069
  peg$currPos++;
4997
5070
  } else {
4998
5071
  s1 = null;
4999
- if (peg$silentFails === 0) { peg$fail(peg$c145); }
5072
+ if (peg$silentFails === 0) { peg$fail(peg$c148); }
5000
5073
  }
5001
5074
  if (s1 !== null) {
5002
5075
  s2 = peg$parse_();
@@ -5029,7 +5102,7 @@ Emblem.Parser = (function() {
5029
5102
  peg$silentFails--;
5030
5103
  if (s0 === null) {
5031
5104
  s1 = null;
5032
- if (peg$silentFails === 0) { peg$fail(peg$c156); }
5105
+ if (peg$silentFails === 0) { peg$fail(peg$c159); }
5033
5106
  }
5034
5107
 
5035
5108
  return s0;
@@ -5042,7 +5115,7 @@ Emblem.Parser = (function() {
5042
5115
  s1 = peg$parsetagString();
5043
5116
  if (s1 !== null) {
5044
5117
  peg$reportedPos = peg$currPos;
5045
- s2 = peg$c157(s1);
5118
+ s2 = peg$c160(s1);
5046
5119
  if (s2) {
5047
5120
  s2 = peg$c1;
5048
5121
  } else {
@@ -5050,7 +5123,7 @@ Emblem.Parser = (function() {
5050
5123
  }
5051
5124
  if (s2 !== null) {
5052
5125
  peg$reportedPos = s0;
5053
- s1 = peg$c158(s1);
5126
+ s1 = peg$c161(s1);
5054
5127
  if (s1 === null) {
5055
5128
  peg$currPos = s0;
5056
5129
  s0 = s1;
@@ -5072,12 +5145,12 @@ Emblem.Parser = (function() {
5072
5145
  function peg$parsetagChar() {
5073
5146
  var s0;
5074
5147
 
5075
- if (peg$c150.test(input.charAt(peg$currPos))) {
5148
+ if (peg$c153.test(input.charAt(peg$currPos))) {
5076
5149
  s0 = input.charAt(peg$currPos);
5077
5150
  peg$currPos++;
5078
5151
  } else {
5079
5152
  s0 = null;
5080
- if (peg$silentFails === 0) { peg$fail(peg$c151); }
5153
+ if (peg$silentFails === 0) { peg$fail(peg$c154); }
5081
5154
  }
5082
5155
  if (s0 === null) {
5083
5156
  s0 = peg$parsenonSeparatorColon();
@@ -5091,11 +5164,11 @@ Emblem.Parser = (function() {
5091
5164
 
5092
5165
  s0 = peg$currPos;
5093
5166
  if (input.charCodeAt(peg$currPos) === 58) {
5094
- s1 = peg$c159;
5167
+ s1 = peg$c162;
5095
5168
  peg$currPos++;
5096
5169
  } else {
5097
5170
  s1 = null;
5098
- if (peg$silentFails === 0) { peg$fail(peg$c160); }
5171
+ if (peg$silentFails === 0) { peg$fail(peg$c163); }
5099
5172
  }
5100
5173
  if (s1 !== null) {
5101
5174
  s2 = peg$currPos;
@@ -5143,7 +5216,7 @@ Emblem.Parser = (function() {
5143
5216
  s1 = peg$parsetagString();
5144
5217
  if (s1 !== null) {
5145
5218
  peg$reportedPos = peg$currPos;
5146
- s2 = peg$c162(s1);
5219
+ s2 = peg$c165(s1);
5147
5220
  if (s2) {
5148
5221
  s2 = peg$c1;
5149
5222
  } else {
@@ -5151,7 +5224,7 @@ Emblem.Parser = (function() {
5151
5224
  }
5152
5225
  if (s2 !== null) {
5153
5226
  peg$reportedPos = s0;
5154
- s1 = peg$c158(s1);
5227
+ s1 = peg$c161(s1);
5155
5228
  if (s1 === null) {
5156
5229
  peg$currPos = s0;
5157
5230
  s0 = s1;
@@ -5169,7 +5242,7 @@ Emblem.Parser = (function() {
5169
5242
  peg$silentFails--;
5170
5243
  if (s0 === null) {
5171
5244
  s1 = null;
5172
- if (peg$silentFails === 0) { peg$fail(peg$c161); }
5245
+ if (peg$silentFails === 0) { peg$fail(peg$c164); }
5173
5246
  }
5174
5247
 
5175
5248
  return s0;
@@ -5209,15 +5282,15 @@ Emblem.Parser = (function() {
5209
5282
  peg$silentFails++;
5210
5283
  s0 = peg$currPos;
5211
5284
  if (input.charCodeAt(peg$currPos) === 61423) {
5212
- s1 = peg$c164;
5285
+ s1 = peg$c167;
5213
5286
  peg$currPos++;
5214
5287
  } else {
5215
5288
  s1 = null;
5216
- if (peg$silentFails === 0) { peg$fail(peg$c165); }
5289
+ if (peg$silentFails === 0) { peg$fail(peg$c168); }
5217
5290
  }
5218
5291
  if (s1 !== null) {
5219
5292
  peg$reportedPos = s0;
5220
- s1 = peg$c166();
5293
+ s1 = peg$c169();
5221
5294
  }
5222
5295
  if (s1 === null) {
5223
5296
  peg$currPos = s0;
@@ -5228,7 +5301,7 @@ Emblem.Parser = (function() {
5228
5301
  peg$silentFails--;
5229
5302
  if (s0 === null) {
5230
5303
  s1 = null;
5231
- if (peg$silentFails === 0) { peg$fail(peg$c163); }
5304
+ if (peg$silentFails === 0) { peg$fail(peg$c166); }
5232
5305
  }
5233
5306
 
5234
5307
  return s0;
@@ -5240,15 +5313,15 @@ Emblem.Parser = (function() {
5240
5313
  peg$silentFails++;
5241
5314
  s0 = peg$currPos;
5242
5315
  if (input.charCodeAt(peg$currPos) === 61438) {
5243
- s1 = peg$c168;
5316
+ s1 = peg$c171;
5244
5317
  peg$currPos++;
5245
5318
  } else {
5246
5319
  s1 = null;
5247
- if (peg$silentFails === 0) { peg$fail(peg$c169); }
5320
+ if (peg$silentFails === 0) { peg$fail(peg$c172); }
5248
5321
  }
5249
5322
  if (s1 !== null) {
5250
5323
  peg$reportedPos = s0;
5251
- s1 = peg$c166();
5324
+ s1 = peg$c169();
5252
5325
  }
5253
5326
  if (s1 === null) {
5254
5327
  peg$currPos = s0;
@@ -5259,7 +5332,7 @@ Emblem.Parser = (function() {
5259
5332
  peg$silentFails--;
5260
5333
  if (s0 === null) {
5261
5334
  s1 = null;
5262
- if (peg$silentFails === 0) { peg$fail(peg$c167); }
5335
+ if (peg$silentFails === 0) { peg$fail(peg$c170); }
5263
5336
  }
5264
5337
 
5265
5338
  return s0;
@@ -5271,15 +5344,15 @@ Emblem.Parser = (function() {
5271
5344
  peg$silentFails++;
5272
5345
  s0 = peg$currPos;
5273
5346
  if (input.charCodeAt(peg$currPos) === 61422) {
5274
- s1 = peg$c171;
5347
+ s1 = peg$c174;
5275
5348
  peg$currPos++;
5276
5349
  } else {
5277
5350
  s1 = null;
5278
- if (peg$silentFails === 0) { peg$fail(peg$c172); }
5351
+ if (peg$silentFails === 0) { peg$fail(peg$c175); }
5279
5352
  }
5280
5353
  if (s1 !== null) {
5281
5354
  peg$reportedPos = s0;
5282
- s1 = peg$c166();
5355
+ s1 = peg$c169();
5283
5356
  }
5284
5357
  if (s1 === null) {
5285
5358
  peg$currPos = s0;
@@ -5290,7 +5363,7 @@ Emblem.Parser = (function() {
5290
5363
  peg$silentFails--;
5291
5364
  if (s0 === null) {
5292
5365
  s1 = null;
5293
- if (peg$silentFails === 0) { peg$fail(peg$c170); }
5366
+ if (peg$silentFails === 0) { peg$fail(peg$c173); }
5294
5367
  }
5295
5368
 
5296
5369
  return s0;
@@ -5302,23 +5375,23 @@ Emblem.Parser = (function() {
5302
5375
  peg$silentFails++;
5303
5376
  s0 = peg$currPos;
5304
5377
  if (input.charCodeAt(peg$currPos) === 61439) {
5305
- s1 = peg$c174;
5378
+ s1 = peg$c177;
5306
5379
  peg$currPos++;
5307
5380
  } else {
5308
5381
  s1 = null;
5309
- if (peg$silentFails === 0) { peg$fail(peg$c175); }
5382
+ if (peg$silentFails === 0) { peg$fail(peg$c178); }
5310
5383
  }
5311
5384
  if (s1 !== null) {
5312
5385
  if (input.charCodeAt(peg$currPos) === 10) {
5313
- s2 = peg$c176;
5386
+ s2 = peg$c179;
5314
5387
  peg$currPos++;
5315
5388
  } else {
5316
5389
  s2 = null;
5317
- if (peg$silentFails === 0) { peg$fail(peg$c177); }
5390
+ if (peg$silentFails === 0) { peg$fail(peg$c180); }
5318
5391
  }
5319
5392
  if (s2 !== null) {
5320
5393
  peg$reportedPos = s0;
5321
- s1 = peg$c121();
5394
+ s1 = peg$c124();
5322
5395
  if (s1 === null) {
5323
5396
  peg$currPos = s0;
5324
5397
  s0 = s1;
@@ -5336,7 +5409,7 @@ Emblem.Parser = (function() {
5336
5409
  peg$silentFails--;
5337
5410
  if (s0 === null) {
5338
5411
  s1 = null;
5339
- if (peg$silentFails === 0) { peg$fail(peg$c173); }
5412
+ if (peg$silentFails === 0) { peg$fail(peg$c176); }
5340
5413
  }
5341
5414
 
5342
5415
  return s0;
@@ -5353,7 +5426,7 @@ Emblem.Parser = (function() {
5353
5426
  peg$silentFails--;
5354
5427
  if (s0 === null) {
5355
5428
  s1 = null;
5356
- if (peg$silentFails === 0) { peg$fail(peg$c178); }
5429
+ if (peg$silentFails === 0) { peg$fail(peg$c181); }
5357
5430
  }
5358
5431
 
5359
5432
  return s0;
@@ -5381,7 +5454,7 @@ Emblem.Parser = (function() {
5381
5454
  peg$silentFails--;
5382
5455
  if (s0 === null) {
5383
5456
  s1 = null;
5384
- if (peg$silentFails === 0) { peg$fail(peg$c179); }
5457
+ if (peg$silentFails === 0) { peg$fail(peg$c182); }
5385
5458
  }
5386
5459
 
5387
5460
  return s0;
@@ -5400,7 +5473,7 @@ Emblem.Parser = (function() {
5400
5473
  peg$silentFails--;
5401
5474
  if (s0 === null) {
5402
5475
  s1 = null;
5403
- if (peg$silentFails === 0) { peg$fail(peg$c180); }
5476
+ if (peg$silentFails === 0) { peg$fail(peg$c183); }
5404
5477
  }
5405
5478
 
5406
5479
  return s0;
@@ -5410,17 +5483,17 @@ Emblem.Parser = (function() {
5410
5483
  var s0, s1;
5411
5484
 
5412
5485
  peg$silentFails++;
5413
- if (peg$c182.test(input.charAt(peg$currPos))) {
5486
+ if (peg$c185.test(input.charAt(peg$currPos))) {
5414
5487
  s0 = input.charAt(peg$currPos);
5415
5488
  peg$currPos++;
5416
5489
  } else {
5417
5490
  s0 = null;
5418
- if (peg$silentFails === 0) { peg$fail(peg$c183); }
5491
+ if (peg$silentFails === 0) { peg$fail(peg$c186); }
5419
5492
  }
5420
5493
  peg$silentFails--;
5421
5494
  if (s0 === null) {
5422
5495
  s1 = null;
5423
- if (peg$silentFails === 0) { peg$fail(peg$c181); }
5496
+ if (peg$silentFails === 0) { peg$fail(peg$c184); }
5424
5497
  }
5425
5498
 
5426
5499
  return s0;
@@ -5452,7 +5525,7 @@ Emblem.Parser = (function() {
5452
5525
  peg$currPos++;
5453
5526
  } else {
5454
5527
  s2 = null;
5455
- if (peg$silentFails === 0) { peg$fail(peg$c96); }
5528
+ if (peg$silentFails === 0) { peg$fail(peg$c101); }
5456
5529
  }
5457
5530
  if (s2 !== null) {
5458
5531
  peg$reportedPos = s0;