@wireweave/core 2.4.0 → 2.5.0-beta.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.
package/dist/parser.js CHANGED
@@ -159,30 +159,32 @@ function peg$parse(input, options) {
159
159
  const peg$c49 = "tabs";
160
160
  const peg$c50 = "tab";
161
161
  const peg$c51 = "breadcrumb";
162
- const peg$c52 = "=";
163
- const peg$c53 = "//";
164
- const peg$c54 = "/*";
165
- const peg$c55 = '"';
166
- const peg$c56 = "'";
167
- const peg$c57 = "\\";
168
- const peg$c58 = "n";
169
- const peg$c59 = "r";
170
- const peg$c60 = "t";
171
- const peg$c61 = "-";
172
- const peg$c62 = ".";
173
- const peg$c63 = "px";
174
- const peg$c64 = "%";
175
- const peg$c65 = "em";
176
- const peg$c66 = "rem";
177
- const peg$c67 = "vh";
178
- const peg$c68 = "vw";
179
- const peg$c69 = "true";
180
- const peg$c70 = "false";
181
- const peg$c71 = "\n";
182
- const peg$c72 = "*/";
183
- const peg$r0 = /^[=[{}]/;
184
- const peg$r1 = /^[a-zA-Z0-9_\-]/;
185
- const peg$r2 = /^[0-9]/;
162
+ const peg$c52 = "marker";
163
+ const peg$c53 = "annotations";
164
+ const peg$c54 = "=";
165
+ const peg$c55 = "//";
166
+ const peg$c56 = "/*";
167
+ const peg$c57 = '"';
168
+ const peg$c58 = "'";
169
+ const peg$c59 = "\\";
170
+ const peg$c60 = "n";
171
+ const peg$c61 = "r";
172
+ const peg$c62 = "t";
173
+ const peg$c63 = "-";
174
+ const peg$c64 = ".";
175
+ const peg$c65 = "px";
176
+ const peg$c66 = "%";
177
+ const peg$c67 = "em";
178
+ const peg$c68 = "rem";
179
+ const peg$c69 = "vh";
180
+ const peg$c70 = "vw";
181
+ const peg$c71 = "true";
182
+ const peg$c72 = "false";
183
+ const peg$c73 = "\n";
184
+ const peg$c74 = "*/";
185
+ const peg$r0 = /^[0-9]/;
186
+ const peg$r1 = /^[=[{}]/;
187
+ const peg$r2 = /^[a-zA-Z0-9_\-]/;
186
188
  const peg$r3 = /^[a-zA-Z_]/;
187
189
  const peg$r4 = /^[ \t\n\r]/;
188
190
  const peg$r5 = /^[^\n]/;
@@ -238,40 +240,43 @@ function peg$parse(input, options) {
238
240
  const peg$e49 = peg$literalExpectation("tabs", false);
239
241
  const peg$e50 = peg$literalExpectation("tab", false);
240
242
  const peg$e51 = peg$literalExpectation("breadcrumb", false);
241
- const peg$e52 = peg$literalExpectation("=", false);
242
- const peg$e53 = peg$classExpectation(["=", "[", "{", "}"], false, false, false);
243
- const peg$e54 = peg$literalExpectation("//", false);
244
- const peg$e55 = peg$literalExpectation("/*", false);
245
- const peg$e56 = peg$anyExpectation();
246
- const peg$e57 = peg$classExpectation([["a", "z"], ["A", "Z"], ["0", "9"], "_", "-"], false, false, false);
247
- const peg$e58 = peg$otherExpectation("string");
248
- const peg$e59 = peg$literalExpectation('"', false);
249
- const peg$e60 = peg$literalExpectation("'", false);
250
- const peg$e61 = peg$literalExpectation("\\", false);
251
- const peg$e62 = peg$literalExpectation("n", false);
252
- const peg$e63 = peg$literalExpectation("r", false);
253
- const peg$e64 = peg$literalExpectation("t", false);
254
- const peg$e65 = peg$otherExpectation("number");
255
- const peg$e66 = peg$literalExpectation("-", false);
256
- const peg$e67 = peg$classExpectation([["0", "9"]], false, false, false);
257
- const peg$e68 = peg$literalExpectation(".", false);
258
- const peg$e69 = peg$otherExpectation("value with unit");
259
- const peg$e70 = peg$literalExpectation("px", false);
260
- const peg$e71 = peg$literalExpectation("%", false);
261
- const peg$e72 = peg$literalExpectation("em", false);
262
- const peg$e73 = peg$literalExpectation("rem", false);
263
- const peg$e74 = peg$literalExpectation("vh", false);
264
- const peg$e75 = peg$literalExpectation("vw", false);
265
- const peg$e76 = peg$otherExpectation("boolean");
266
- const peg$e77 = peg$literalExpectation("true", false);
267
- const peg$e78 = peg$literalExpectation("false", false);
268
- const peg$e79 = peg$otherExpectation("identifier");
269
- const peg$e80 = peg$classExpectation([["a", "z"], ["A", "Z"], "_"], false, false, false);
270
- const peg$e81 = peg$classExpectation([" ", " ", "\n", "\r"], false, false, false);
271
- const peg$e82 = peg$otherExpectation("comment");
272
- const peg$e83 = peg$classExpectation(["\n"], true, false, false);
273
- const peg$e84 = peg$literalExpectation("\n", false);
274
- const peg$e85 = peg$literalExpectation("*/", false);
243
+ const peg$e52 = peg$literalExpectation("marker", false);
244
+ const peg$e53 = peg$literalExpectation("annotations", false);
245
+ const peg$e54 = peg$otherExpectation("integer");
246
+ const peg$e55 = peg$classExpectation([["0", "9"]], false, false, false);
247
+ const peg$e56 = peg$literalExpectation("=", false);
248
+ const peg$e57 = peg$classExpectation(["=", "[", "{", "}"], false, false, false);
249
+ const peg$e58 = peg$literalExpectation("//", false);
250
+ const peg$e59 = peg$literalExpectation("/*", false);
251
+ const peg$e60 = peg$anyExpectation();
252
+ const peg$e61 = peg$classExpectation([["a", "z"], ["A", "Z"], ["0", "9"], "_", "-"], false, false, false);
253
+ const peg$e62 = peg$otherExpectation("string");
254
+ const peg$e63 = peg$literalExpectation('"', false);
255
+ const peg$e64 = peg$literalExpectation("'", false);
256
+ const peg$e65 = peg$literalExpectation("\\", false);
257
+ const peg$e66 = peg$literalExpectation("n", false);
258
+ const peg$e67 = peg$literalExpectation("r", false);
259
+ const peg$e68 = peg$literalExpectation("t", false);
260
+ const peg$e69 = peg$otherExpectation("number");
261
+ const peg$e70 = peg$literalExpectation("-", false);
262
+ const peg$e71 = peg$literalExpectation(".", false);
263
+ const peg$e72 = peg$otherExpectation("value with unit");
264
+ const peg$e73 = peg$literalExpectation("px", false);
265
+ const peg$e74 = peg$literalExpectation("%", false);
266
+ const peg$e75 = peg$literalExpectation("em", false);
267
+ const peg$e76 = peg$literalExpectation("rem", false);
268
+ const peg$e77 = peg$literalExpectation("vh", false);
269
+ const peg$e78 = peg$literalExpectation("vw", false);
270
+ const peg$e79 = peg$otherExpectation("boolean");
271
+ const peg$e80 = peg$literalExpectation("true", false);
272
+ const peg$e81 = peg$literalExpectation("false", false);
273
+ const peg$e82 = peg$otherExpectation("identifier");
274
+ const peg$e83 = peg$classExpectation([["a", "z"], ["A", "Z"], "_"], false, false, false);
275
+ const peg$e84 = peg$classExpectation([" ", " ", "\n", "\r"], false, false, false);
276
+ const peg$e85 = peg$otherExpectation("comment");
277
+ const peg$e86 = peg$classExpectation(["\n"], true, false, false);
278
+ const peg$e87 = peg$literalExpectation("\n", false);
279
+ const peg$e88 = peg$literalExpectation("*/", false);
275
280
  function peg$f0(children) {
276
281
  return createNode("Document", { children: children.filter((c) => c !== null) });
277
282
  }
@@ -669,78 +674,115 @@ function peg$parse(input, options) {
669
674
  ...attrsToObject(attrs)
670
675
  });
671
676
  }
672
- function peg$f71(attrs) {
677
+ function peg$f71(num, attrs) {
678
+ return createNode("Marker", {
679
+ number: num,
680
+ ...attrsToObject(attrs)
681
+ });
682
+ }
683
+ function peg$f72(attrs, items) {
684
+ return createNode("Annotations", {
685
+ ...attrsToObject(attrs),
686
+ children: items
687
+ });
688
+ }
689
+ function peg$f73(items) {
690
+ return items.map((i) => i[0]).filter((i) => i !== null);
691
+ }
692
+ function peg$f74(num, title, attrs, children) {
693
+ return createNode("AnnotationItem", {
694
+ number: num,
695
+ title,
696
+ ...attrsToObject(attrs),
697
+ children
698
+ });
699
+ }
700
+ function peg$f75(num, title, attrs) {
701
+ return createNode("AnnotationItem", {
702
+ number: num,
703
+ title,
704
+ ...attrsToObject(attrs),
705
+ children: []
706
+ });
707
+ }
708
+ function peg$f76() {
709
+ return null;
710
+ }
711
+ function peg$f77(digits) {
712
+ return parseInt(digits.join(""), 10);
713
+ }
714
+ function peg$f78(attrs) {
673
715
  return attrs;
674
716
  }
675
- function peg$f72(name, value) {
717
+ function peg$f79(name, value) {
676
718
  return { name, value };
677
719
  }
678
- function peg$f73(flag) {
720
+ function peg$f80(flag) {
679
721
  return { name: flag, value: true };
680
722
  }
681
- function peg$f74(name) {
723
+ function peg$f81(name) {
682
724
  return name;
683
725
  }
684
- function peg$f75(chars) {
726
+ function peg$f82(chars) {
685
727
  return chars.join("");
686
728
  }
687
- function peg$f76(chars) {
729
+ function peg$f83(chars) {
688
730
  return chars.join("");
689
731
  }
690
- function peg$f77(char) {
732
+ function peg$f84(char) {
691
733
  return char;
692
734
  }
693
- function peg$f78(seq) {
735
+ function peg$f85(seq) {
694
736
  return seq;
695
737
  }
696
- function peg$f79(char) {
738
+ function peg$f86(char) {
697
739
  return char;
698
740
  }
699
- function peg$f80(seq) {
741
+ function peg$f87(seq) {
700
742
  return seq;
701
743
  }
702
- function peg$f81() {
744
+ function peg$f88() {
703
745
  return "\n";
704
746
  }
705
- function peg$f82() {
747
+ function peg$f89() {
706
748
  return "\r";
707
749
  }
708
- function peg$f83() {
750
+ function peg$f90() {
709
751
  return " ";
710
752
  }
711
- function peg$f84() {
753
+ function peg$f91() {
712
754
  return "\\";
713
755
  }
714
- function peg$f85() {
756
+ function peg$f92() {
715
757
  return '"';
716
758
  }
717
- function peg$f86() {
759
+ function peg$f93() {
718
760
  return "'";
719
761
  }
720
- function peg$f87(sign, digits, decimal) {
762
+ function peg$f94(sign, digits, decimal) {
721
763
  const num = (sign || "") + digits.join("") + (decimal ? "." + decimal[1].join("") : "");
722
764
  return parseFloat(num);
723
765
  }
724
- function peg$f88(sign, digits, decimal, unit) {
766
+ function peg$f95(sign, digits, decimal, unit) {
725
767
  const num = (sign || "") + digits.join("") + (decimal ? "." + decimal[1].join("") : "");
726
768
  return { value: parseFloat(num), unit };
727
769
  }
728
- function peg$f89() {
770
+ function peg$f96() {
729
771
  return true;
730
772
  }
731
- function peg$f90() {
773
+ function peg$f97() {
732
774
  return false;
733
775
  }
734
- function peg$f91(head, tail) {
776
+ function peg$f98(head, tail) {
735
777
  return head + tail.join("");
736
778
  }
737
- function peg$f92(items) {
779
+ function peg$f99(items) {
738
780
  return items || [];
739
781
  }
740
- function peg$f93(head, tail) {
782
+ function peg$f100(head, tail) {
741
783
  return [head, ...tail.map((t) => t[3])];
742
784
  }
743
- function peg$f94(props) {
785
+ function peg$f101(props) {
744
786
  const result = {};
745
787
  if (props) {
746
788
  for (const p of props) {
@@ -749,13 +791,13 @@ function peg$parse(input, options) {
749
791
  }
750
792
  return result;
751
793
  }
752
- function peg$f95(head, tail) {
794
+ function peg$f102(head, tail) {
753
795
  return [head, ...tail.map((t) => t[3])];
754
796
  }
755
- function peg$f96(name, value) {
797
+ function peg$f103(name, value) {
756
798
  return { name, value };
757
799
  }
758
- function peg$f97(name) {
800
+ function peg$f104(name) {
759
801
  return { name, value: true };
760
802
  }
761
803
  let peg$currPos = options.peg$currPos | 0;
@@ -1985,6 +2027,12 @@ function peg$parse(input, options) {
1985
2027
  s0 = peg$parseBreadcrumb();
1986
2028
  if (s0 === peg$FAILED) {
1987
2029
  s0 = peg$parseDivider();
2030
+ if (s0 === peg$FAILED) {
2031
+ s0 = peg$parseMarker();
2032
+ if (s0 === peg$FAILED) {
2033
+ s0 = peg$parseAnnotations();
2034
+ }
2035
+ }
1988
2036
  }
1989
2037
  }
1990
2038
  }
@@ -3933,6 +3981,297 @@ function peg$parse(input, options) {
3933
3981
  }
3934
3982
  return s0;
3935
3983
  }
3984
+ function peg$parseMarker() {
3985
+ let s0, s1, s2, s3, s4, s5;
3986
+ s0 = peg$currPos;
3987
+ if (input.substr(peg$currPos, 6) === peg$c52) {
3988
+ s1 = peg$c52;
3989
+ peg$currPos += 6;
3990
+ } else {
3991
+ s1 = peg$FAILED;
3992
+ if (peg$silentFails === 0) {
3993
+ peg$fail(peg$e52);
3994
+ }
3995
+ }
3996
+ if (s1 !== peg$FAILED) {
3997
+ s2 = peg$parse_();
3998
+ s3 = peg$parseInteger();
3999
+ if (s3 !== peg$FAILED) {
4000
+ s4 = peg$parse_();
4001
+ s5 = peg$parseAttributes();
4002
+ if (s5 === peg$FAILED) {
4003
+ s5 = null;
4004
+ }
4005
+ peg$savedPos = s0;
4006
+ s0 = peg$f71(s3, s5);
4007
+ } else {
4008
+ peg$currPos = s0;
4009
+ s0 = peg$FAILED;
4010
+ }
4011
+ } else {
4012
+ peg$currPos = s0;
4013
+ s0 = peg$FAILED;
4014
+ }
4015
+ return s0;
4016
+ }
4017
+ function peg$parseAnnotations() {
4018
+ let s0, s1, s2, s3, s4, s5, s6, s7, s8, s9;
4019
+ s0 = peg$currPos;
4020
+ if (input.substr(peg$currPos, 11) === peg$c53) {
4021
+ s1 = peg$c53;
4022
+ peg$currPos += 11;
4023
+ } else {
4024
+ s1 = peg$FAILED;
4025
+ if (peg$silentFails === 0) {
4026
+ peg$fail(peg$e53);
4027
+ }
4028
+ }
4029
+ if (s1 !== peg$FAILED) {
4030
+ s2 = peg$parse_();
4031
+ s3 = peg$parseAttributes();
4032
+ if (s3 === peg$FAILED) {
4033
+ s3 = null;
4034
+ }
4035
+ s4 = peg$parse_();
4036
+ if (input.charCodeAt(peg$currPos) === 123) {
4037
+ s5 = peg$c1;
4038
+ peg$currPos++;
4039
+ } else {
4040
+ s5 = peg$FAILED;
4041
+ if (peg$silentFails === 0) {
4042
+ peg$fail(peg$e1);
4043
+ }
4044
+ }
4045
+ if (s5 !== peg$FAILED) {
4046
+ s6 = peg$parse_();
4047
+ s7 = peg$parseAnnotationContent();
4048
+ s8 = peg$parse_();
4049
+ if (input.charCodeAt(peg$currPos) === 125) {
4050
+ s9 = peg$c2;
4051
+ peg$currPos++;
4052
+ } else {
4053
+ s9 = peg$FAILED;
4054
+ if (peg$silentFails === 0) {
4055
+ peg$fail(peg$e2);
4056
+ }
4057
+ }
4058
+ if (s9 !== peg$FAILED) {
4059
+ peg$savedPos = s0;
4060
+ s0 = peg$f72(s3, s7);
4061
+ } else {
4062
+ peg$currPos = s0;
4063
+ s0 = peg$FAILED;
4064
+ }
4065
+ } else {
4066
+ peg$currPos = s0;
4067
+ s0 = peg$FAILED;
4068
+ }
4069
+ } else {
4070
+ peg$currPos = s0;
4071
+ s0 = peg$FAILED;
4072
+ }
4073
+ return s0;
4074
+ }
4075
+ function peg$parseAnnotationContent() {
4076
+ let s0, s1, s2, s3, s4;
4077
+ s0 = peg$currPos;
4078
+ s1 = [];
4079
+ s2 = peg$currPos;
4080
+ s3 = peg$parseAnnotationItem();
4081
+ if (s3 !== peg$FAILED) {
4082
+ s4 = peg$parse_();
4083
+ s3 = [s3, s4];
4084
+ s2 = s3;
4085
+ } else {
4086
+ peg$currPos = s2;
4087
+ s2 = peg$FAILED;
4088
+ }
4089
+ while (s2 !== peg$FAILED) {
4090
+ s1.push(s2);
4091
+ s2 = peg$currPos;
4092
+ s3 = peg$parseAnnotationItem();
4093
+ if (s3 !== peg$FAILED) {
4094
+ s4 = peg$parse_();
4095
+ s3 = [s3, s4];
4096
+ s2 = s3;
4097
+ } else {
4098
+ peg$currPos = s2;
4099
+ s2 = peg$FAILED;
4100
+ }
4101
+ }
4102
+ peg$savedPos = s0;
4103
+ s1 = peg$f73(s1);
4104
+ s0 = s1;
4105
+ return s0;
4106
+ }
4107
+ function peg$parseAnnotationItem() {
4108
+ let s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13;
4109
+ s0 = peg$currPos;
4110
+ if (input.substr(peg$currPos, 4) === peg$c38) {
4111
+ s1 = peg$c38;
4112
+ peg$currPos += 4;
4113
+ } else {
4114
+ s1 = peg$FAILED;
4115
+ if (peg$silentFails === 0) {
4116
+ peg$fail(peg$e38);
4117
+ }
4118
+ }
4119
+ if (s1 !== peg$FAILED) {
4120
+ s2 = peg$parse_();
4121
+ s3 = peg$parseInteger();
4122
+ if (s3 !== peg$FAILED) {
4123
+ s4 = peg$parse_();
4124
+ s5 = peg$parseStringLiteral();
4125
+ if (s5 !== peg$FAILED) {
4126
+ s6 = peg$parse_();
4127
+ s7 = peg$parseAttributes();
4128
+ if (s7 === peg$FAILED) {
4129
+ s7 = null;
4130
+ }
4131
+ s8 = peg$parse_();
4132
+ if (input.charCodeAt(peg$currPos) === 123) {
4133
+ s9 = peg$c1;
4134
+ peg$currPos++;
4135
+ } else {
4136
+ s9 = peg$FAILED;
4137
+ if (peg$silentFails === 0) {
4138
+ peg$fail(peg$e1);
4139
+ }
4140
+ }
4141
+ if (s9 !== peg$FAILED) {
4142
+ s10 = peg$parse_();
4143
+ s11 = peg$parseChildren();
4144
+ if (s11 !== peg$FAILED) {
4145
+ s12 = peg$parse_();
4146
+ if (input.charCodeAt(peg$currPos) === 125) {
4147
+ s13 = peg$c2;
4148
+ peg$currPos++;
4149
+ } else {
4150
+ s13 = peg$FAILED;
4151
+ if (peg$silentFails === 0) {
4152
+ peg$fail(peg$e2);
4153
+ }
4154
+ }
4155
+ if (s13 !== peg$FAILED) {
4156
+ peg$savedPos = s0;
4157
+ s0 = peg$f74(s3, s5, s7, s11);
4158
+ } else {
4159
+ peg$currPos = s0;
4160
+ s0 = peg$FAILED;
4161
+ }
4162
+ } else {
4163
+ peg$currPos = s0;
4164
+ s0 = peg$FAILED;
4165
+ }
4166
+ } else {
4167
+ peg$currPos = s0;
4168
+ s0 = peg$FAILED;
4169
+ }
4170
+ } else {
4171
+ peg$currPos = s0;
4172
+ s0 = peg$FAILED;
4173
+ }
4174
+ } else {
4175
+ peg$currPos = s0;
4176
+ s0 = peg$FAILED;
4177
+ }
4178
+ } else {
4179
+ peg$currPos = s0;
4180
+ s0 = peg$FAILED;
4181
+ }
4182
+ if (s0 === peg$FAILED) {
4183
+ s0 = peg$currPos;
4184
+ if (input.substr(peg$currPos, 4) === peg$c38) {
4185
+ s1 = peg$c38;
4186
+ peg$currPos += 4;
4187
+ } else {
4188
+ s1 = peg$FAILED;
4189
+ if (peg$silentFails === 0) {
4190
+ peg$fail(peg$e38);
4191
+ }
4192
+ }
4193
+ if (s1 !== peg$FAILED) {
4194
+ s2 = peg$parse_();
4195
+ s3 = peg$parseInteger();
4196
+ if (s3 !== peg$FAILED) {
4197
+ s4 = peg$parse_();
4198
+ s5 = peg$parseStringLiteral();
4199
+ if (s5 !== peg$FAILED) {
4200
+ s6 = peg$parse_();
4201
+ s7 = peg$parseAttributes();
4202
+ if (s7 === peg$FAILED) {
4203
+ s7 = null;
4204
+ }
4205
+ peg$savedPos = s0;
4206
+ s0 = peg$f75(s3, s5, s7);
4207
+ } else {
4208
+ peg$currPos = s0;
4209
+ s0 = peg$FAILED;
4210
+ }
4211
+ } else {
4212
+ peg$currPos = s0;
4213
+ s0 = peg$FAILED;
4214
+ }
4215
+ } else {
4216
+ peg$currPos = s0;
4217
+ s0 = peg$FAILED;
4218
+ }
4219
+ if (s0 === peg$FAILED) {
4220
+ s0 = peg$currPos;
4221
+ s1 = peg$parseComment();
4222
+ if (s1 !== peg$FAILED) {
4223
+ peg$savedPos = s0;
4224
+ s1 = peg$f76();
4225
+ }
4226
+ s0 = s1;
4227
+ }
4228
+ }
4229
+ return s0;
4230
+ }
4231
+ function peg$parseInteger() {
4232
+ let s0, s1, s2;
4233
+ peg$silentFails++;
4234
+ s0 = peg$currPos;
4235
+ s1 = [];
4236
+ s2 = input.charAt(peg$currPos);
4237
+ if (peg$r0.test(s2)) {
4238
+ peg$currPos++;
4239
+ } else {
4240
+ s2 = peg$FAILED;
4241
+ if (peg$silentFails === 0) {
4242
+ peg$fail(peg$e55);
4243
+ }
4244
+ }
4245
+ if (s2 !== peg$FAILED) {
4246
+ while (s2 !== peg$FAILED) {
4247
+ s1.push(s2);
4248
+ s2 = input.charAt(peg$currPos);
4249
+ if (peg$r0.test(s2)) {
4250
+ peg$currPos++;
4251
+ } else {
4252
+ s2 = peg$FAILED;
4253
+ if (peg$silentFails === 0) {
4254
+ peg$fail(peg$e55);
4255
+ }
4256
+ }
4257
+ }
4258
+ } else {
4259
+ s1 = peg$FAILED;
4260
+ }
4261
+ if (s1 !== peg$FAILED) {
4262
+ peg$savedPos = s0;
4263
+ s1 = peg$f77(s1);
4264
+ }
4265
+ s0 = s1;
4266
+ peg$silentFails--;
4267
+ if (s0 === peg$FAILED) {
4268
+ s1 = peg$FAILED;
4269
+ if (peg$silentFails === 0) {
4270
+ peg$fail(peg$e54);
4271
+ }
4272
+ }
4273
+ return s0;
4274
+ }
3936
4275
  function peg$parseAttributes() {
3937
4276
  let s0, s1, s2;
3938
4277
  s0 = peg$currPos;
@@ -3948,7 +4287,7 @@ function peg$parse(input, options) {
3948
4287
  }
3949
4288
  if (s1 !== peg$FAILED) {
3950
4289
  peg$savedPos = s0;
3951
- s1 = peg$f71(s1);
4290
+ s1 = peg$f78(s1);
3952
4291
  }
3953
4292
  s0 = s1;
3954
4293
  return s0;
@@ -3961,12 +4300,12 @@ function peg$parse(input, options) {
3961
4300
  if (s2 !== peg$FAILED) {
3962
4301
  s3 = peg$parse_();
3963
4302
  if (input.charCodeAt(peg$currPos) === 61) {
3964
- s4 = peg$c52;
4303
+ s4 = peg$c54;
3965
4304
  peg$currPos++;
3966
4305
  } else {
3967
4306
  s4 = peg$FAILED;
3968
4307
  if (peg$silentFails === 0) {
3969
- peg$fail(peg$e52);
4308
+ peg$fail(peg$e56);
3970
4309
  }
3971
4310
  }
3972
4311
  if (s4 !== peg$FAILED) {
@@ -3974,7 +4313,7 @@ function peg$parse(input, options) {
3974
4313
  s6 = peg$parseAttributeValue();
3975
4314
  if (s6 !== peg$FAILED) {
3976
4315
  peg$savedPos = s0;
3977
- s0 = peg$f72(s2, s6);
4316
+ s0 = peg$f79(s2, s6);
3978
4317
  } else {
3979
4318
  peg$currPos = s0;
3980
4319
  s0 = peg$FAILED;
@@ -4001,32 +4340,32 @@ function peg$parse(input, options) {
4001
4340
  s6 = peg$parseAttributeName();
4002
4341
  if (s6 === peg$FAILED) {
4003
4342
  s6 = input.charAt(peg$currPos);
4004
- if (peg$r0.test(s6)) {
4343
+ if (peg$r1.test(s6)) {
4005
4344
  peg$currPos++;
4006
4345
  } else {
4007
4346
  s6 = peg$FAILED;
4008
4347
  if (peg$silentFails === 0) {
4009
- peg$fail(peg$e53);
4348
+ peg$fail(peg$e57);
4010
4349
  }
4011
4350
  }
4012
4351
  if (s6 === peg$FAILED) {
4013
- if (input.substr(peg$currPos, 2) === peg$c53) {
4014
- s6 = peg$c53;
4352
+ if (input.substr(peg$currPos, 2) === peg$c55) {
4353
+ s6 = peg$c55;
4015
4354
  peg$currPos += 2;
4016
4355
  } else {
4017
4356
  s6 = peg$FAILED;
4018
4357
  if (peg$silentFails === 0) {
4019
- peg$fail(peg$e54);
4358
+ peg$fail(peg$e58);
4020
4359
  }
4021
4360
  }
4022
4361
  if (s6 === peg$FAILED) {
4023
- if (input.substr(peg$currPos, 2) === peg$c54) {
4024
- s6 = peg$c54;
4362
+ if (input.substr(peg$currPos, 2) === peg$c56) {
4363
+ s6 = peg$c56;
4025
4364
  peg$currPos += 2;
4026
4365
  } else {
4027
4366
  s6 = peg$FAILED;
4028
4367
  if (peg$silentFails === 0) {
4029
- peg$fail(peg$e55);
4368
+ peg$fail(peg$e59);
4030
4369
  }
4031
4370
  }
4032
4371
  if (s6 === peg$FAILED) {
@@ -4038,7 +4377,7 @@ function peg$parse(input, options) {
4038
4377
  } else {
4039
4378
  s7 = peg$FAILED;
4040
4379
  if (peg$silentFails === 0) {
4041
- peg$fail(peg$e56);
4380
+ peg$fail(peg$e60);
4042
4381
  }
4043
4382
  }
4044
4383
  peg$silentFails--;
@@ -4069,7 +4408,7 @@ function peg$parse(input, options) {
4069
4408
  }
4070
4409
  if (s3 !== peg$FAILED) {
4071
4410
  peg$savedPos = s0;
4072
- s0 = peg$f73(s2);
4411
+ s0 = peg$f80(s2);
4073
4412
  } else {
4074
4413
  peg$currPos = s0;
4075
4414
  s0 = peg$FAILED;
@@ -4098,7 +4437,7 @@ function peg$parse(input, options) {
4098
4437
  s2 = peg$parseIdentifier();
4099
4438
  if (s2 !== peg$FAILED) {
4100
4439
  peg$savedPos = s0;
4101
- s0 = peg$f74(s2);
4440
+ s0 = peg$f81(s2);
4102
4441
  } else {
4103
4442
  peg$currPos = s0;
4104
4443
  s0 = peg$FAILED;
@@ -4551,6 +4890,28 @@ function peg$parse(input, options) {
4551
4890
  peg$fail(peg$e48);
4552
4891
  }
4553
4892
  }
4893
+ if (s1 === peg$FAILED) {
4894
+ if (input.substr(peg$currPos, 6) === peg$c52) {
4895
+ s1 = peg$c52;
4896
+ peg$currPos += 6;
4897
+ } else {
4898
+ s1 = peg$FAILED;
4899
+ if (peg$silentFails === 0) {
4900
+ peg$fail(peg$e52);
4901
+ }
4902
+ }
4903
+ if (s1 === peg$FAILED) {
4904
+ if (input.substr(peg$currPos, 11) === peg$c53) {
4905
+ s1 = peg$c53;
4906
+ peg$currPos += 11;
4907
+ } else {
4908
+ s1 = peg$FAILED;
4909
+ if (peg$silentFails === 0) {
4910
+ peg$fail(peg$e53);
4911
+ }
4912
+ }
4913
+ }
4914
+ }
4554
4915
  }
4555
4916
  }
4556
4917
  }
@@ -4621,12 +4982,12 @@ function peg$parse(input, options) {
4621
4982
  function peg$parseIdentifierChar() {
4622
4983
  let s0;
4623
4984
  s0 = input.charAt(peg$currPos);
4624
- if (peg$r1.test(s0)) {
4985
+ if (peg$r2.test(s0)) {
4625
4986
  peg$currPos++;
4626
4987
  } else {
4627
4988
  s0 = peg$FAILED;
4628
4989
  if (peg$silentFails === 0) {
4629
- peg$fail(peg$e57);
4990
+ peg$fail(peg$e61);
4630
4991
  }
4631
4992
  }
4632
4993
  return s0;
@@ -4659,12 +5020,12 @@ function peg$parse(input, options) {
4659
5020
  peg$silentFails++;
4660
5021
  s0 = peg$currPos;
4661
5022
  if (input.charCodeAt(peg$currPos) === 34) {
4662
- s1 = peg$c55;
5023
+ s1 = peg$c57;
4663
5024
  peg$currPos++;
4664
5025
  } else {
4665
5026
  s1 = peg$FAILED;
4666
5027
  if (peg$silentFails === 0) {
4667
- peg$fail(peg$e59);
5028
+ peg$fail(peg$e63);
4668
5029
  }
4669
5030
  }
4670
5031
  if (s1 !== peg$FAILED) {
@@ -4675,17 +5036,17 @@ function peg$parse(input, options) {
4675
5036
  s3 = peg$parseDoubleStringChar();
4676
5037
  }
4677
5038
  if (input.charCodeAt(peg$currPos) === 34) {
4678
- s3 = peg$c55;
5039
+ s3 = peg$c57;
4679
5040
  peg$currPos++;
4680
5041
  } else {
4681
5042
  s3 = peg$FAILED;
4682
5043
  if (peg$silentFails === 0) {
4683
- peg$fail(peg$e59);
5044
+ peg$fail(peg$e63);
4684
5045
  }
4685
5046
  }
4686
5047
  if (s3 !== peg$FAILED) {
4687
5048
  peg$savedPos = s0;
4688
- s0 = peg$f75(s2);
5049
+ s0 = peg$f82(s2);
4689
5050
  } else {
4690
5051
  peg$currPos = s0;
4691
5052
  s0 = peg$FAILED;
@@ -4697,12 +5058,12 @@ function peg$parse(input, options) {
4697
5058
  if (s0 === peg$FAILED) {
4698
5059
  s0 = peg$currPos;
4699
5060
  if (input.charCodeAt(peg$currPos) === 39) {
4700
- s1 = peg$c56;
5061
+ s1 = peg$c58;
4701
5062
  peg$currPos++;
4702
5063
  } else {
4703
5064
  s1 = peg$FAILED;
4704
5065
  if (peg$silentFails === 0) {
4705
- peg$fail(peg$e60);
5066
+ peg$fail(peg$e64);
4706
5067
  }
4707
5068
  }
4708
5069
  if (s1 !== peg$FAILED) {
@@ -4713,17 +5074,17 @@ function peg$parse(input, options) {
4713
5074
  s3 = peg$parseSingleStringChar();
4714
5075
  }
4715
5076
  if (input.charCodeAt(peg$currPos) === 39) {
4716
- s3 = peg$c56;
5077
+ s3 = peg$c58;
4717
5078
  peg$currPos++;
4718
5079
  } else {
4719
5080
  s3 = peg$FAILED;
4720
5081
  if (peg$silentFails === 0) {
4721
- peg$fail(peg$e60);
5082
+ peg$fail(peg$e64);
4722
5083
  }
4723
5084
  }
4724
5085
  if (s3 !== peg$FAILED) {
4725
5086
  peg$savedPos = s0;
4726
- s0 = peg$f76(s2);
5087
+ s0 = peg$f83(s2);
4727
5088
  } else {
4728
5089
  peg$currPos = s0;
4729
5090
  s0 = peg$FAILED;
@@ -4737,7 +5098,7 @@ function peg$parse(input, options) {
4737
5098
  if (s0 === peg$FAILED) {
4738
5099
  s1 = peg$FAILED;
4739
5100
  if (peg$silentFails === 0) {
4740
- peg$fail(peg$e58);
5101
+ peg$fail(peg$e62);
4741
5102
  }
4742
5103
  }
4743
5104
  return s0;
@@ -4748,12 +5109,12 @@ function peg$parse(input, options) {
4748
5109
  s1 = peg$currPos;
4749
5110
  peg$silentFails++;
4750
5111
  if (input.charCodeAt(peg$currPos) === 34) {
4751
- s2 = peg$c55;
5112
+ s2 = peg$c57;
4752
5113
  peg$currPos++;
4753
5114
  } else {
4754
5115
  s2 = peg$FAILED;
4755
5116
  if (peg$silentFails === 0) {
4756
- peg$fail(peg$e59);
5117
+ peg$fail(peg$e63);
4757
5118
  }
4758
5119
  }
4759
5120
  peg$silentFails--;
@@ -4767,12 +5128,12 @@ function peg$parse(input, options) {
4767
5128
  s2 = peg$currPos;
4768
5129
  peg$silentFails++;
4769
5130
  if (input.charCodeAt(peg$currPos) === 92) {
4770
- s3 = peg$c57;
5131
+ s3 = peg$c59;
4771
5132
  peg$currPos++;
4772
5133
  } else {
4773
5134
  s3 = peg$FAILED;
4774
5135
  if (peg$silentFails === 0) {
4775
- peg$fail(peg$e61);
5136
+ peg$fail(peg$e65);
4776
5137
  }
4777
5138
  }
4778
5139
  peg$silentFails--;
@@ -4789,12 +5150,12 @@ function peg$parse(input, options) {
4789
5150
  } else {
4790
5151
  s3 = peg$FAILED;
4791
5152
  if (peg$silentFails === 0) {
4792
- peg$fail(peg$e56);
5153
+ peg$fail(peg$e60);
4793
5154
  }
4794
5155
  }
4795
5156
  if (s3 !== peg$FAILED) {
4796
5157
  peg$savedPos = s0;
4797
- s0 = peg$f77(s3);
5158
+ s0 = peg$f84(s3);
4798
5159
  } else {
4799
5160
  peg$currPos = s0;
4800
5161
  s0 = peg$FAILED;
@@ -4810,19 +5171,19 @@ function peg$parse(input, options) {
4810
5171
  if (s0 === peg$FAILED) {
4811
5172
  s0 = peg$currPos;
4812
5173
  if (input.charCodeAt(peg$currPos) === 92) {
4813
- s1 = peg$c57;
5174
+ s1 = peg$c59;
4814
5175
  peg$currPos++;
4815
5176
  } else {
4816
5177
  s1 = peg$FAILED;
4817
5178
  if (peg$silentFails === 0) {
4818
- peg$fail(peg$e61);
5179
+ peg$fail(peg$e65);
4819
5180
  }
4820
5181
  }
4821
5182
  if (s1 !== peg$FAILED) {
4822
5183
  s2 = peg$parseEscapeSequence();
4823
5184
  if (s2 !== peg$FAILED) {
4824
5185
  peg$savedPos = s0;
4825
- s0 = peg$f78(s2);
5186
+ s0 = peg$f85(s2);
4826
5187
  } else {
4827
5188
  peg$currPos = s0;
4828
5189
  s0 = peg$FAILED;
@@ -4840,12 +5201,12 @@ function peg$parse(input, options) {
4840
5201
  s1 = peg$currPos;
4841
5202
  peg$silentFails++;
4842
5203
  if (input.charCodeAt(peg$currPos) === 39) {
4843
- s2 = peg$c56;
5204
+ s2 = peg$c58;
4844
5205
  peg$currPos++;
4845
5206
  } else {
4846
5207
  s2 = peg$FAILED;
4847
5208
  if (peg$silentFails === 0) {
4848
- peg$fail(peg$e60);
5209
+ peg$fail(peg$e64);
4849
5210
  }
4850
5211
  }
4851
5212
  peg$silentFails--;
@@ -4859,12 +5220,12 @@ function peg$parse(input, options) {
4859
5220
  s2 = peg$currPos;
4860
5221
  peg$silentFails++;
4861
5222
  if (input.charCodeAt(peg$currPos) === 92) {
4862
- s3 = peg$c57;
5223
+ s3 = peg$c59;
4863
5224
  peg$currPos++;
4864
5225
  } else {
4865
5226
  s3 = peg$FAILED;
4866
5227
  if (peg$silentFails === 0) {
4867
- peg$fail(peg$e61);
5228
+ peg$fail(peg$e65);
4868
5229
  }
4869
5230
  }
4870
5231
  peg$silentFails--;
@@ -4881,12 +5242,12 @@ function peg$parse(input, options) {
4881
5242
  } else {
4882
5243
  s3 = peg$FAILED;
4883
5244
  if (peg$silentFails === 0) {
4884
- peg$fail(peg$e56);
5245
+ peg$fail(peg$e60);
4885
5246
  }
4886
5247
  }
4887
5248
  if (s3 !== peg$FAILED) {
4888
5249
  peg$savedPos = s0;
4889
- s0 = peg$f79(s3);
5250
+ s0 = peg$f86(s3);
4890
5251
  } else {
4891
5252
  peg$currPos = s0;
4892
5253
  s0 = peg$FAILED;
@@ -4902,19 +5263,19 @@ function peg$parse(input, options) {
4902
5263
  if (s0 === peg$FAILED) {
4903
5264
  s0 = peg$currPos;
4904
5265
  if (input.charCodeAt(peg$currPos) === 92) {
4905
- s1 = peg$c57;
5266
+ s1 = peg$c59;
4906
5267
  peg$currPos++;
4907
5268
  } else {
4908
5269
  s1 = peg$FAILED;
4909
5270
  if (peg$silentFails === 0) {
4910
- peg$fail(peg$e61);
5271
+ peg$fail(peg$e65);
4911
5272
  }
4912
5273
  }
4913
5274
  if (s1 !== peg$FAILED) {
4914
5275
  s2 = peg$parseEscapeSequence();
4915
5276
  if (s2 !== peg$FAILED) {
4916
5277
  peg$savedPos = s0;
4917
- s0 = peg$f80(s2);
5278
+ s0 = peg$f87(s2);
4918
5279
  } else {
4919
5280
  peg$currPos = s0;
4920
5281
  s0 = peg$FAILED;
@@ -4930,97 +5291,97 @@ function peg$parse(input, options) {
4930
5291
  let s0, s1;
4931
5292
  s0 = peg$currPos;
4932
5293
  if (input.charCodeAt(peg$currPos) === 110) {
4933
- s1 = peg$c58;
5294
+ s1 = peg$c60;
4934
5295
  peg$currPos++;
4935
5296
  } else {
4936
5297
  s1 = peg$FAILED;
4937
5298
  if (peg$silentFails === 0) {
4938
- peg$fail(peg$e62);
5299
+ peg$fail(peg$e66);
4939
5300
  }
4940
5301
  }
4941
5302
  if (s1 !== peg$FAILED) {
4942
5303
  peg$savedPos = s0;
4943
- s1 = peg$f81();
5304
+ s1 = peg$f88();
4944
5305
  }
4945
5306
  s0 = s1;
4946
5307
  if (s0 === peg$FAILED) {
4947
5308
  s0 = peg$currPos;
4948
5309
  if (input.charCodeAt(peg$currPos) === 114) {
4949
- s1 = peg$c59;
5310
+ s1 = peg$c61;
4950
5311
  peg$currPos++;
4951
5312
  } else {
4952
5313
  s1 = peg$FAILED;
4953
5314
  if (peg$silentFails === 0) {
4954
- peg$fail(peg$e63);
5315
+ peg$fail(peg$e67);
4955
5316
  }
4956
5317
  }
4957
5318
  if (s1 !== peg$FAILED) {
4958
5319
  peg$savedPos = s0;
4959
- s1 = peg$f82();
5320
+ s1 = peg$f89();
4960
5321
  }
4961
5322
  s0 = s1;
4962
5323
  if (s0 === peg$FAILED) {
4963
5324
  s0 = peg$currPos;
4964
5325
  if (input.charCodeAt(peg$currPos) === 116) {
4965
- s1 = peg$c60;
5326
+ s1 = peg$c62;
4966
5327
  peg$currPos++;
4967
5328
  } else {
4968
5329
  s1 = peg$FAILED;
4969
5330
  if (peg$silentFails === 0) {
4970
- peg$fail(peg$e64);
5331
+ peg$fail(peg$e68);
4971
5332
  }
4972
5333
  }
4973
5334
  if (s1 !== peg$FAILED) {
4974
5335
  peg$savedPos = s0;
4975
- s1 = peg$f83();
5336
+ s1 = peg$f90();
4976
5337
  }
4977
5338
  s0 = s1;
4978
5339
  if (s0 === peg$FAILED) {
4979
5340
  s0 = peg$currPos;
4980
5341
  if (input.charCodeAt(peg$currPos) === 92) {
4981
- s1 = peg$c57;
5342
+ s1 = peg$c59;
4982
5343
  peg$currPos++;
4983
5344
  } else {
4984
5345
  s1 = peg$FAILED;
4985
5346
  if (peg$silentFails === 0) {
4986
- peg$fail(peg$e61);
5347
+ peg$fail(peg$e65);
4987
5348
  }
4988
5349
  }
4989
5350
  if (s1 !== peg$FAILED) {
4990
5351
  peg$savedPos = s0;
4991
- s1 = peg$f84();
5352
+ s1 = peg$f91();
4992
5353
  }
4993
5354
  s0 = s1;
4994
5355
  if (s0 === peg$FAILED) {
4995
5356
  s0 = peg$currPos;
4996
5357
  if (input.charCodeAt(peg$currPos) === 34) {
4997
- s1 = peg$c55;
5358
+ s1 = peg$c57;
4998
5359
  peg$currPos++;
4999
5360
  } else {
5000
5361
  s1 = peg$FAILED;
5001
5362
  if (peg$silentFails === 0) {
5002
- peg$fail(peg$e59);
5363
+ peg$fail(peg$e63);
5003
5364
  }
5004
5365
  }
5005
5366
  if (s1 !== peg$FAILED) {
5006
5367
  peg$savedPos = s0;
5007
- s1 = peg$f85();
5368
+ s1 = peg$f92();
5008
5369
  }
5009
5370
  s0 = s1;
5010
5371
  if (s0 === peg$FAILED) {
5011
5372
  s0 = peg$currPos;
5012
5373
  if (input.charCodeAt(peg$currPos) === 39) {
5013
- s1 = peg$c56;
5374
+ s1 = peg$c58;
5014
5375
  peg$currPos++;
5015
5376
  } else {
5016
5377
  s1 = peg$FAILED;
5017
5378
  if (peg$silentFails === 0) {
5018
- peg$fail(peg$e60);
5379
+ peg$fail(peg$e64);
5019
5380
  }
5020
5381
  }
5021
5382
  if (s1 !== peg$FAILED) {
5022
5383
  peg$savedPos = s0;
5023
- s1 = peg$f86();
5384
+ s1 = peg$f93();
5024
5385
  }
5025
5386
  s0 = s1;
5026
5387
  }
@@ -5035,12 +5396,12 @@ function peg$parse(input, options) {
5035
5396
  peg$silentFails++;
5036
5397
  s0 = peg$currPos;
5037
5398
  if (input.charCodeAt(peg$currPos) === 45) {
5038
- s1 = peg$c61;
5399
+ s1 = peg$c63;
5039
5400
  peg$currPos++;
5040
5401
  } else {
5041
5402
  s1 = peg$FAILED;
5042
5403
  if (peg$silentFails === 0) {
5043
- peg$fail(peg$e66);
5404
+ peg$fail(peg$e70);
5044
5405
  }
5045
5406
  }
5046
5407
  if (s1 === peg$FAILED) {
@@ -5048,24 +5409,24 @@ function peg$parse(input, options) {
5048
5409
  }
5049
5410
  s2 = [];
5050
5411
  s3 = input.charAt(peg$currPos);
5051
- if (peg$r2.test(s3)) {
5412
+ if (peg$r0.test(s3)) {
5052
5413
  peg$currPos++;
5053
5414
  } else {
5054
5415
  s3 = peg$FAILED;
5055
5416
  if (peg$silentFails === 0) {
5056
- peg$fail(peg$e67);
5417
+ peg$fail(peg$e55);
5057
5418
  }
5058
5419
  }
5059
5420
  if (s3 !== peg$FAILED) {
5060
5421
  while (s3 !== peg$FAILED) {
5061
5422
  s2.push(s3);
5062
5423
  s3 = input.charAt(peg$currPos);
5063
- if (peg$r2.test(s3)) {
5424
+ if (peg$r0.test(s3)) {
5064
5425
  peg$currPos++;
5065
5426
  } else {
5066
5427
  s3 = peg$FAILED;
5067
5428
  if (peg$silentFails === 0) {
5068
- peg$fail(peg$e67);
5429
+ peg$fail(peg$e55);
5069
5430
  }
5070
5431
  }
5071
5432
  }
@@ -5075,35 +5436,35 @@ function peg$parse(input, options) {
5075
5436
  if (s2 !== peg$FAILED) {
5076
5437
  s3 = peg$currPos;
5077
5438
  if (input.charCodeAt(peg$currPos) === 46) {
5078
- s4 = peg$c62;
5439
+ s4 = peg$c64;
5079
5440
  peg$currPos++;
5080
5441
  } else {
5081
5442
  s4 = peg$FAILED;
5082
5443
  if (peg$silentFails === 0) {
5083
- peg$fail(peg$e68);
5444
+ peg$fail(peg$e71);
5084
5445
  }
5085
5446
  }
5086
5447
  if (s4 !== peg$FAILED) {
5087
5448
  s5 = [];
5088
5449
  s6 = input.charAt(peg$currPos);
5089
- if (peg$r2.test(s6)) {
5450
+ if (peg$r0.test(s6)) {
5090
5451
  peg$currPos++;
5091
5452
  } else {
5092
5453
  s6 = peg$FAILED;
5093
5454
  if (peg$silentFails === 0) {
5094
- peg$fail(peg$e67);
5455
+ peg$fail(peg$e55);
5095
5456
  }
5096
5457
  }
5097
5458
  if (s6 !== peg$FAILED) {
5098
5459
  while (s6 !== peg$FAILED) {
5099
5460
  s5.push(s6);
5100
5461
  s6 = input.charAt(peg$currPos);
5101
- if (peg$r2.test(s6)) {
5462
+ if (peg$r0.test(s6)) {
5102
5463
  peg$currPos++;
5103
5464
  } else {
5104
5465
  s6 = peg$FAILED;
5105
5466
  if (peg$silentFails === 0) {
5106
- peg$fail(peg$e67);
5467
+ peg$fail(peg$e55);
5107
5468
  }
5108
5469
  }
5109
5470
  }
@@ -5125,7 +5486,7 @@ function peg$parse(input, options) {
5125
5486
  s3 = null;
5126
5487
  }
5127
5488
  peg$savedPos = s0;
5128
- s0 = peg$f87(s1, s2, s3);
5489
+ s0 = peg$f94(s1, s2, s3);
5129
5490
  } else {
5130
5491
  peg$currPos = s0;
5131
5492
  s0 = peg$FAILED;
@@ -5134,7 +5495,7 @@ function peg$parse(input, options) {
5134
5495
  if (s0 === peg$FAILED) {
5135
5496
  s1 = peg$FAILED;
5136
5497
  if (peg$silentFails === 0) {
5137
- peg$fail(peg$e65);
5498
+ peg$fail(peg$e69);
5138
5499
  }
5139
5500
  }
5140
5501
  return s0;
@@ -5144,12 +5505,12 @@ function peg$parse(input, options) {
5144
5505
  peg$silentFails++;
5145
5506
  s0 = peg$currPos;
5146
5507
  if (input.charCodeAt(peg$currPos) === 45) {
5147
- s1 = peg$c61;
5508
+ s1 = peg$c63;
5148
5509
  peg$currPos++;
5149
5510
  } else {
5150
5511
  s1 = peg$FAILED;
5151
5512
  if (peg$silentFails === 0) {
5152
- peg$fail(peg$e66);
5513
+ peg$fail(peg$e70);
5153
5514
  }
5154
5515
  }
5155
5516
  if (s1 === peg$FAILED) {
@@ -5157,24 +5518,24 @@ function peg$parse(input, options) {
5157
5518
  }
5158
5519
  s2 = [];
5159
5520
  s3 = input.charAt(peg$currPos);
5160
- if (peg$r2.test(s3)) {
5521
+ if (peg$r0.test(s3)) {
5161
5522
  peg$currPos++;
5162
5523
  } else {
5163
5524
  s3 = peg$FAILED;
5164
5525
  if (peg$silentFails === 0) {
5165
- peg$fail(peg$e67);
5526
+ peg$fail(peg$e55);
5166
5527
  }
5167
5528
  }
5168
5529
  if (s3 !== peg$FAILED) {
5169
5530
  while (s3 !== peg$FAILED) {
5170
5531
  s2.push(s3);
5171
5532
  s3 = input.charAt(peg$currPos);
5172
- if (peg$r2.test(s3)) {
5533
+ if (peg$r0.test(s3)) {
5173
5534
  peg$currPos++;
5174
5535
  } else {
5175
5536
  s3 = peg$FAILED;
5176
5537
  if (peg$silentFails === 0) {
5177
- peg$fail(peg$e67);
5538
+ peg$fail(peg$e55);
5178
5539
  }
5179
5540
  }
5180
5541
  }
@@ -5184,35 +5545,35 @@ function peg$parse(input, options) {
5184
5545
  if (s2 !== peg$FAILED) {
5185
5546
  s3 = peg$currPos;
5186
5547
  if (input.charCodeAt(peg$currPos) === 46) {
5187
- s4 = peg$c62;
5548
+ s4 = peg$c64;
5188
5549
  peg$currPos++;
5189
5550
  } else {
5190
5551
  s4 = peg$FAILED;
5191
5552
  if (peg$silentFails === 0) {
5192
- peg$fail(peg$e68);
5553
+ peg$fail(peg$e71);
5193
5554
  }
5194
5555
  }
5195
5556
  if (s4 !== peg$FAILED) {
5196
5557
  s5 = [];
5197
5558
  s6 = input.charAt(peg$currPos);
5198
- if (peg$r2.test(s6)) {
5559
+ if (peg$r0.test(s6)) {
5199
5560
  peg$currPos++;
5200
5561
  } else {
5201
5562
  s6 = peg$FAILED;
5202
5563
  if (peg$silentFails === 0) {
5203
- peg$fail(peg$e67);
5564
+ peg$fail(peg$e55);
5204
5565
  }
5205
5566
  }
5206
5567
  if (s6 !== peg$FAILED) {
5207
5568
  while (s6 !== peg$FAILED) {
5208
5569
  s5.push(s6);
5209
5570
  s6 = input.charAt(peg$currPos);
5210
- if (peg$r2.test(s6)) {
5571
+ if (peg$r0.test(s6)) {
5211
5572
  peg$currPos++;
5212
5573
  } else {
5213
5574
  s6 = peg$FAILED;
5214
5575
  if (peg$silentFails === 0) {
5215
- peg$fail(peg$e67);
5576
+ peg$fail(peg$e55);
5216
5577
  }
5217
5578
  }
5218
5579
  }
@@ -5233,63 +5594,63 @@ function peg$parse(input, options) {
5233
5594
  if (s3 === peg$FAILED) {
5234
5595
  s3 = null;
5235
5596
  }
5236
- if (input.substr(peg$currPos, 2) === peg$c63) {
5237
- s4 = peg$c63;
5597
+ if (input.substr(peg$currPos, 2) === peg$c65) {
5598
+ s4 = peg$c65;
5238
5599
  peg$currPos += 2;
5239
5600
  } else {
5240
5601
  s4 = peg$FAILED;
5241
5602
  if (peg$silentFails === 0) {
5242
- peg$fail(peg$e70);
5603
+ peg$fail(peg$e73);
5243
5604
  }
5244
5605
  }
5245
5606
  if (s4 === peg$FAILED) {
5246
5607
  if (input.charCodeAt(peg$currPos) === 37) {
5247
- s4 = peg$c64;
5608
+ s4 = peg$c66;
5248
5609
  peg$currPos++;
5249
5610
  } else {
5250
5611
  s4 = peg$FAILED;
5251
5612
  if (peg$silentFails === 0) {
5252
- peg$fail(peg$e71);
5613
+ peg$fail(peg$e74);
5253
5614
  }
5254
5615
  }
5255
5616
  if (s4 === peg$FAILED) {
5256
- if (input.substr(peg$currPos, 2) === peg$c65) {
5257
- s4 = peg$c65;
5617
+ if (input.substr(peg$currPos, 2) === peg$c67) {
5618
+ s4 = peg$c67;
5258
5619
  peg$currPos += 2;
5259
5620
  } else {
5260
5621
  s4 = peg$FAILED;
5261
5622
  if (peg$silentFails === 0) {
5262
- peg$fail(peg$e72);
5623
+ peg$fail(peg$e75);
5263
5624
  }
5264
5625
  }
5265
5626
  if (s4 === peg$FAILED) {
5266
- if (input.substr(peg$currPos, 3) === peg$c66) {
5267
- s4 = peg$c66;
5627
+ if (input.substr(peg$currPos, 3) === peg$c68) {
5628
+ s4 = peg$c68;
5268
5629
  peg$currPos += 3;
5269
5630
  } else {
5270
5631
  s4 = peg$FAILED;
5271
5632
  if (peg$silentFails === 0) {
5272
- peg$fail(peg$e73);
5633
+ peg$fail(peg$e76);
5273
5634
  }
5274
5635
  }
5275
5636
  if (s4 === peg$FAILED) {
5276
- if (input.substr(peg$currPos, 2) === peg$c67) {
5277
- s4 = peg$c67;
5637
+ if (input.substr(peg$currPos, 2) === peg$c69) {
5638
+ s4 = peg$c69;
5278
5639
  peg$currPos += 2;
5279
5640
  } else {
5280
5641
  s4 = peg$FAILED;
5281
5642
  if (peg$silentFails === 0) {
5282
- peg$fail(peg$e74);
5643
+ peg$fail(peg$e77);
5283
5644
  }
5284
5645
  }
5285
5646
  if (s4 === peg$FAILED) {
5286
- if (input.substr(peg$currPos, 2) === peg$c68) {
5287
- s4 = peg$c68;
5647
+ if (input.substr(peg$currPos, 2) === peg$c70) {
5648
+ s4 = peg$c70;
5288
5649
  peg$currPos += 2;
5289
5650
  } else {
5290
5651
  s4 = peg$FAILED;
5291
5652
  if (peg$silentFails === 0) {
5292
- peg$fail(peg$e75);
5653
+ peg$fail(peg$e78);
5293
5654
  }
5294
5655
  }
5295
5656
  }
@@ -5299,7 +5660,7 @@ function peg$parse(input, options) {
5299
5660
  }
5300
5661
  if (s4 !== peg$FAILED) {
5301
5662
  peg$savedPos = s0;
5302
- s0 = peg$f88(s1, s2, s3, s4);
5663
+ s0 = peg$f95(s1, s2, s3, s4);
5303
5664
  } else {
5304
5665
  peg$currPos = s0;
5305
5666
  s0 = peg$FAILED;
@@ -5312,7 +5673,7 @@ function peg$parse(input, options) {
5312
5673
  if (s0 === peg$FAILED) {
5313
5674
  s1 = peg$FAILED;
5314
5675
  if (peg$silentFails === 0) {
5315
- peg$fail(peg$e69);
5676
+ peg$fail(peg$e72);
5316
5677
  }
5317
5678
  }
5318
5679
  return s0;
@@ -5321,34 +5682,34 @@ function peg$parse(input, options) {
5321
5682
  let s0, s1;
5322
5683
  peg$silentFails++;
5323
5684
  s0 = peg$currPos;
5324
- if (input.substr(peg$currPos, 4) === peg$c69) {
5325
- s1 = peg$c69;
5685
+ if (input.substr(peg$currPos, 4) === peg$c71) {
5686
+ s1 = peg$c71;
5326
5687
  peg$currPos += 4;
5327
5688
  } else {
5328
5689
  s1 = peg$FAILED;
5329
5690
  if (peg$silentFails === 0) {
5330
- peg$fail(peg$e77);
5691
+ peg$fail(peg$e80);
5331
5692
  }
5332
5693
  }
5333
5694
  if (s1 !== peg$FAILED) {
5334
5695
  peg$savedPos = s0;
5335
- s1 = peg$f89();
5696
+ s1 = peg$f96();
5336
5697
  }
5337
5698
  s0 = s1;
5338
5699
  if (s0 === peg$FAILED) {
5339
5700
  s0 = peg$currPos;
5340
- if (input.substr(peg$currPos, 5) === peg$c70) {
5341
- s1 = peg$c70;
5701
+ if (input.substr(peg$currPos, 5) === peg$c72) {
5702
+ s1 = peg$c72;
5342
5703
  peg$currPos += 5;
5343
5704
  } else {
5344
5705
  s1 = peg$FAILED;
5345
5706
  if (peg$silentFails === 0) {
5346
- peg$fail(peg$e78);
5707
+ peg$fail(peg$e81);
5347
5708
  }
5348
5709
  }
5349
5710
  if (s1 !== peg$FAILED) {
5350
5711
  peg$savedPos = s0;
5351
- s1 = peg$f90();
5712
+ s1 = peg$f97();
5352
5713
  }
5353
5714
  s0 = s1;
5354
5715
  }
@@ -5356,7 +5717,7 @@ function peg$parse(input, options) {
5356
5717
  if (s0 === peg$FAILED) {
5357
5718
  s1 = peg$FAILED;
5358
5719
  if (peg$silentFails === 0) {
5359
- peg$fail(peg$e76);
5720
+ peg$fail(peg$e79);
5360
5721
  }
5361
5722
  }
5362
5723
  return s0;
@@ -5371,34 +5732,34 @@ function peg$parse(input, options) {
5371
5732
  } else {
5372
5733
  s1 = peg$FAILED;
5373
5734
  if (peg$silentFails === 0) {
5374
- peg$fail(peg$e80);
5735
+ peg$fail(peg$e83);
5375
5736
  }
5376
5737
  }
5377
5738
  if (s1 !== peg$FAILED) {
5378
5739
  s2 = [];
5379
5740
  s3 = input.charAt(peg$currPos);
5380
- if (peg$r1.test(s3)) {
5741
+ if (peg$r2.test(s3)) {
5381
5742
  peg$currPos++;
5382
5743
  } else {
5383
5744
  s3 = peg$FAILED;
5384
5745
  if (peg$silentFails === 0) {
5385
- peg$fail(peg$e57);
5746
+ peg$fail(peg$e61);
5386
5747
  }
5387
5748
  }
5388
5749
  while (s3 !== peg$FAILED) {
5389
5750
  s2.push(s3);
5390
5751
  s3 = input.charAt(peg$currPos);
5391
- if (peg$r1.test(s3)) {
5752
+ if (peg$r2.test(s3)) {
5392
5753
  peg$currPos++;
5393
5754
  } else {
5394
5755
  s3 = peg$FAILED;
5395
5756
  if (peg$silentFails === 0) {
5396
- peg$fail(peg$e57);
5757
+ peg$fail(peg$e61);
5397
5758
  }
5398
5759
  }
5399
5760
  }
5400
5761
  peg$savedPos = s0;
5401
- s0 = peg$f91(s1, s2);
5762
+ s0 = peg$f98(s1, s2);
5402
5763
  } else {
5403
5764
  peg$currPos = s0;
5404
5765
  s0 = peg$FAILED;
@@ -5407,7 +5768,7 @@ function peg$parse(input, options) {
5407
5768
  if (s0 === peg$FAILED) {
5408
5769
  s1 = peg$FAILED;
5409
5770
  if (peg$silentFails === 0) {
5410
- peg$fail(peg$e79);
5771
+ peg$fail(peg$e82);
5411
5772
  }
5412
5773
  }
5413
5774
  return s0;
@@ -5442,7 +5803,7 @@ function peg$parse(input, options) {
5442
5803
  }
5443
5804
  if (s5 !== peg$FAILED) {
5444
5805
  peg$savedPos = s0;
5445
- s0 = peg$f92(s3);
5806
+ s0 = peg$f99(s3);
5446
5807
  } else {
5447
5808
  peg$currPos = s0;
5448
5809
  s0 = peg$FAILED;
@@ -5530,7 +5891,7 @@ function peg$parse(input, options) {
5530
5891
  s3 = null;
5531
5892
  }
5532
5893
  peg$savedPos = s0;
5533
- s0 = peg$f93(s1, s2);
5894
+ s0 = peg$f100(s1, s2);
5534
5895
  } else {
5535
5896
  peg$currPos = s0;
5536
5897
  s0 = peg$FAILED;
@@ -5584,7 +5945,7 @@ function peg$parse(input, options) {
5584
5945
  }
5585
5946
  if (s5 !== peg$FAILED) {
5586
5947
  peg$savedPos = s0;
5587
- s0 = peg$f94(s3);
5948
+ s0 = peg$f101(s3);
5588
5949
  } else {
5589
5950
  peg$currPos = s0;
5590
5951
  s0 = peg$FAILED;
@@ -5651,7 +6012,7 @@ function peg$parse(input, options) {
5651
6012
  }
5652
6013
  }
5653
6014
  peg$savedPos = s0;
5654
- s0 = peg$f95(s1, s2);
6015
+ s0 = peg$f102(s1, s2);
5655
6016
  } else {
5656
6017
  peg$currPos = s0;
5657
6018
  s0 = peg$FAILED;
@@ -5665,12 +6026,12 @@ function peg$parse(input, options) {
5665
6026
  if (s1 !== peg$FAILED) {
5666
6027
  s2 = peg$parse_();
5667
6028
  if (input.charCodeAt(peg$currPos) === 61) {
5668
- s3 = peg$c52;
6029
+ s3 = peg$c54;
5669
6030
  peg$currPos++;
5670
6031
  } else {
5671
6032
  s3 = peg$FAILED;
5672
6033
  if (peg$silentFails === 0) {
5673
- peg$fail(peg$e52);
6034
+ peg$fail(peg$e56);
5674
6035
  }
5675
6036
  }
5676
6037
  if (s3 !== peg$FAILED) {
@@ -5678,7 +6039,7 @@ function peg$parse(input, options) {
5678
6039
  s5 = peg$parseAttributeValue();
5679
6040
  if (s5 !== peg$FAILED) {
5680
6041
  peg$savedPos = s0;
5681
- s0 = peg$f96(s1, s5);
6042
+ s0 = peg$f103(s1, s5);
5682
6043
  } else {
5683
6044
  peg$currPos = s0;
5684
6045
  s0 = peg$FAILED;
@@ -5696,7 +6057,7 @@ function peg$parse(input, options) {
5696
6057
  s1 = peg$parseIdentifier();
5697
6058
  if (s1 !== peg$FAILED) {
5698
6059
  peg$savedPos = s0;
5699
- s1 = peg$f97(s1);
6060
+ s1 = peg$f104(s1);
5700
6061
  }
5701
6062
  s0 = s1;
5702
6063
  }
@@ -5729,7 +6090,7 @@ function peg$parse(input, options) {
5729
6090
  } else {
5730
6091
  s1 = peg$FAILED;
5731
6092
  if (peg$silentFails === 0) {
5732
- peg$fail(peg$e81);
6093
+ peg$fail(peg$e84);
5733
6094
  }
5734
6095
  }
5735
6096
  if (s1 !== peg$FAILED) {
@@ -5741,7 +6102,7 @@ function peg$parse(input, options) {
5741
6102
  } else {
5742
6103
  s1 = peg$FAILED;
5743
6104
  if (peg$silentFails === 0) {
5744
- peg$fail(peg$e81);
6105
+ peg$fail(peg$e84);
5745
6106
  }
5746
6107
  }
5747
6108
  }
@@ -5761,7 +6122,7 @@ function peg$parse(input, options) {
5761
6122
  if (s0 === peg$FAILED) {
5762
6123
  s1 = peg$FAILED;
5763
6124
  if (peg$silentFails === 0) {
5764
- peg$fail(peg$e82);
6125
+ peg$fail(peg$e85);
5765
6126
  }
5766
6127
  }
5767
6128
  return s0;
@@ -5769,13 +6130,13 @@ function peg$parse(input, options) {
5769
6130
  function peg$parseLineComment() {
5770
6131
  let s0, s1, s2, s3, s4;
5771
6132
  s0 = peg$currPos;
5772
- if (input.substr(peg$currPos, 2) === peg$c53) {
5773
- s1 = peg$c53;
6133
+ if (input.substr(peg$currPos, 2) === peg$c55) {
6134
+ s1 = peg$c55;
5774
6135
  peg$currPos += 2;
5775
6136
  } else {
5776
6137
  s1 = peg$FAILED;
5777
6138
  if (peg$silentFails === 0) {
5778
- peg$fail(peg$e54);
6139
+ peg$fail(peg$e58);
5779
6140
  }
5780
6141
  }
5781
6142
  if (s1 !== peg$FAILED) {
@@ -5786,7 +6147,7 @@ function peg$parse(input, options) {
5786
6147
  } else {
5787
6148
  s3 = peg$FAILED;
5788
6149
  if (peg$silentFails === 0) {
5789
- peg$fail(peg$e83);
6150
+ peg$fail(peg$e86);
5790
6151
  }
5791
6152
  }
5792
6153
  while (s3 !== peg$FAILED) {
@@ -5797,17 +6158,17 @@ function peg$parse(input, options) {
5797
6158
  } else {
5798
6159
  s3 = peg$FAILED;
5799
6160
  if (peg$silentFails === 0) {
5800
- peg$fail(peg$e83);
6161
+ peg$fail(peg$e86);
5801
6162
  }
5802
6163
  }
5803
6164
  }
5804
6165
  if (input.charCodeAt(peg$currPos) === 10) {
5805
- s3 = peg$c71;
6166
+ s3 = peg$c73;
5806
6167
  peg$currPos++;
5807
6168
  } else {
5808
6169
  s3 = peg$FAILED;
5809
6170
  if (peg$silentFails === 0) {
5810
- peg$fail(peg$e84);
6171
+ peg$fail(peg$e87);
5811
6172
  }
5812
6173
  }
5813
6174
  if (s3 === peg$FAILED) {
@@ -5819,7 +6180,7 @@ function peg$parse(input, options) {
5819
6180
  } else {
5820
6181
  s4 = peg$FAILED;
5821
6182
  if (peg$silentFails === 0) {
5822
- peg$fail(peg$e56);
6183
+ peg$fail(peg$e60);
5823
6184
  }
5824
6185
  }
5825
6186
  peg$silentFails--;
@@ -5846,13 +6207,13 @@ function peg$parse(input, options) {
5846
6207
  function peg$parseBlockComment() {
5847
6208
  let s0, s1, s2, s3, s4, s5;
5848
6209
  s0 = peg$currPos;
5849
- if (input.substr(peg$currPos, 2) === peg$c54) {
5850
- s1 = peg$c54;
6210
+ if (input.substr(peg$currPos, 2) === peg$c56) {
6211
+ s1 = peg$c56;
5851
6212
  peg$currPos += 2;
5852
6213
  } else {
5853
6214
  s1 = peg$FAILED;
5854
6215
  if (peg$silentFails === 0) {
5855
- peg$fail(peg$e55);
6216
+ peg$fail(peg$e59);
5856
6217
  }
5857
6218
  }
5858
6219
  if (s1 !== peg$FAILED) {
@@ -5860,13 +6221,13 @@ function peg$parse(input, options) {
5860
6221
  s3 = peg$currPos;
5861
6222
  s4 = peg$currPos;
5862
6223
  peg$silentFails++;
5863
- if (input.substr(peg$currPos, 2) === peg$c72) {
5864
- s5 = peg$c72;
6224
+ if (input.substr(peg$currPos, 2) === peg$c74) {
6225
+ s5 = peg$c74;
5865
6226
  peg$currPos += 2;
5866
6227
  } else {
5867
6228
  s5 = peg$FAILED;
5868
6229
  if (peg$silentFails === 0) {
5869
- peg$fail(peg$e85);
6230
+ peg$fail(peg$e88);
5870
6231
  }
5871
6232
  }
5872
6233
  peg$silentFails--;
@@ -5883,7 +6244,7 @@ function peg$parse(input, options) {
5883
6244
  } else {
5884
6245
  s5 = peg$FAILED;
5885
6246
  if (peg$silentFails === 0) {
5886
- peg$fail(peg$e56);
6247
+ peg$fail(peg$e60);
5887
6248
  }
5888
6249
  }
5889
6250
  if (s5 !== peg$FAILED) {
@@ -5902,13 +6263,13 @@ function peg$parse(input, options) {
5902
6263
  s3 = peg$currPos;
5903
6264
  s4 = peg$currPos;
5904
6265
  peg$silentFails++;
5905
- if (input.substr(peg$currPos, 2) === peg$c72) {
5906
- s5 = peg$c72;
6266
+ if (input.substr(peg$currPos, 2) === peg$c74) {
6267
+ s5 = peg$c74;
5907
6268
  peg$currPos += 2;
5908
6269
  } else {
5909
6270
  s5 = peg$FAILED;
5910
6271
  if (peg$silentFails === 0) {
5911
- peg$fail(peg$e85);
6272
+ peg$fail(peg$e88);
5912
6273
  }
5913
6274
  }
5914
6275
  peg$silentFails--;
@@ -5925,7 +6286,7 @@ function peg$parse(input, options) {
5925
6286
  } else {
5926
6287
  s5 = peg$FAILED;
5927
6288
  if (peg$silentFails === 0) {
5928
- peg$fail(peg$e56);
6289
+ peg$fail(peg$e60);
5929
6290
  }
5930
6291
  }
5931
6292
  if (s5 !== peg$FAILED) {
@@ -5940,13 +6301,13 @@ function peg$parse(input, options) {
5940
6301
  s3 = peg$FAILED;
5941
6302
  }
5942
6303
  }
5943
- if (input.substr(peg$currPos, 2) === peg$c72) {
5944
- s3 = peg$c72;
6304
+ if (input.substr(peg$currPos, 2) === peg$c74) {
6305
+ s3 = peg$c74;
5945
6306
  peg$currPos += 2;
5946
6307
  } else {
5947
6308
  s3 = peg$FAILED;
5948
6309
  if (peg$silentFails === 0) {
5949
- peg$fail(peg$e85);
6310
+ peg$fail(peg$e88);
5950
6311
  }
5951
6312
  }
5952
6313
  if (s3 !== peg$FAILED) {