@wireweave/core 2.4.0 → 2.5.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.cjs CHANGED
@@ -188,30 +188,32 @@ function peg$parse(input, options) {
188
188
  const peg$c49 = "tabs";
189
189
  const peg$c50 = "tab";
190
190
  const peg$c51 = "breadcrumb";
191
- const peg$c52 = "=";
192
- const peg$c53 = "//";
193
- const peg$c54 = "/*";
194
- const peg$c55 = '"';
195
- const peg$c56 = "'";
196
- const peg$c57 = "\\";
197
- const peg$c58 = "n";
198
- const peg$c59 = "r";
199
- const peg$c60 = "t";
200
- const peg$c61 = "-";
201
- const peg$c62 = ".";
202
- const peg$c63 = "px";
203
- const peg$c64 = "%";
204
- const peg$c65 = "em";
205
- const peg$c66 = "rem";
206
- const peg$c67 = "vh";
207
- const peg$c68 = "vw";
208
- const peg$c69 = "true";
209
- const peg$c70 = "false";
210
- const peg$c71 = "\n";
211
- const peg$c72 = "*/";
212
- const peg$r0 = /^[=[{}]/;
213
- const peg$r1 = /^[a-zA-Z0-9_\-]/;
214
- const peg$r2 = /^[0-9]/;
191
+ const peg$c52 = "marker";
192
+ const peg$c53 = "annotations";
193
+ const peg$c54 = "=";
194
+ const peg$c55 = "//";
195
+ const peg$c56 = "/*";
196
+ const peg$c57 = '"';
197
+ const peg$c58 = "'";
198
+ const peg$c59 = "\\";
199
+ const peg$c60 = "n";
200
+ const peg$c61 = "r";
201
+ const peg$c62 = "t";
202
+ const peg$c63 = "-";
203
+ const peg$c64 = ".";
204
+ const peg$c65 = "px";
205
+ const peg$c66 = "%";
206
+ const peg$c67 = "em";
207
+ const peg$c68 = "rem";
208
+ const peg$c69 = "vh";
209
+ const peg$c70 = "vw";
210
+ const peg$c71 = "true";
211
+ const peg$c72 = "false";
212
+ const peg$c73 = "\n";
213
+ const peg$c74 = "*/";
214
+ const peg$r0 = /^[0-9]/;
215
+ const peg$r1 = /^[=[{}]/;
216
+ const peg$r2 = /^[a-zA-Z0-9_\-]/;
215
217
  const peg$r3 = /^[a-zA-Z_]/;
216
218
  const peg$r4 = /^[ \t\n\r]/;
217
219
  const peg$r5 = /^[^\n]/;
@@ -267,40 +269,43 @@ function peg$parse(input, options) {
267
269
  const peg$e49 = peg$literalExpectation("tabs", false);
268
270
  const peg$e50 = peg$literalExpectation("tab", false);
269
271
  const peg$e51 = peg$literalExpectation("breadcrumb", false);
270
- const peg$e52 = peg$literalExpectation("=", false);
271
- const peg$e53 = peg$classExpectation(["=", "[", "{", "}"], false, false, false);
272
- const peg$e54 = peg$literalExpectation("//", false);
273
- const peg$e55 = peg$literalExpectation("/*", false);
274
- const peg$e56 = peg$anyExpectation();
275
- const peg$e57 = peg$classExpectation([["a", "z"], ["A", "Z"], ["0", "9"], "_", "-"], false, false, false);
276
- const peg$e58 = peg$otherExpectation("string");
277
- const peg$e59 = peg$literalExpectation('"', false);
278
- const peg$e60 = peg$literalExpectation("'", false);
279
- const peg$e61 = peg$literalExpectation("\\", false);
280
- const peg$e62 = peg$literalExpectation("n", false);
281
- const peg$e63 = peg$literalExpectation("r", false);
282
- const peg$e64 = peg$literalExpectation("t", false);
283
- const peg$e65 = peg$otherExpectation("number");
284
- const peg$e66 = peg$literalExpectation("-", false);
285
- const peg$e67 = peg$classExpectation([["0", "9"]], false, false, false);
286
- const peg$e68 = peg$literalExpectation(".", false);
287
- const peg$e69 = peg$otherExpectation("value with unit");
288
- const peg$e70 = peg$literalExpectation("px", false);
289
- const peg$e71 = peg$literalExpectation("%", false);
290
- const peg$e72 = peg$literalExpectation("em", false);
291
- const peg$e73 = peg$literalExpectation("rem", false);
292
- const peg$e74 = peg$literalExpectation("vh", false);
293
- const peg$e75 = peg$literalExpectation("vw", false);
294
- const peg$e76 = peg$otherExpectation("boolean");
295
- const peg$e77 = peg$literalExpectation("true", false);
296
- const peg$e78 = peg$literalExpectation("false", false);
297
- const peg$e79 = peg$otherExpectation("identifier");
298
- const peg$e80 = peg$classExpectation([["a", "z"], ["A", "Z"], "_"], false, false, false);
299
- const peg$e81 = peg$classExpectation([" ", " ", "\n", "\r"], false, false, false);
300
- const peg$e82 = peg$otherExpectation("comment");
301
- const peg$e83 = peg$classExpectation(["\n"], true, false, false);
302
- const peg$e84 = peg$literalExpectation("\n", false);
303
- const peg$e85 = peg$literalExpectation("*/", false);
272
+ const peg$e52 = peg$literalExpectation("marker", false);
273
+ const peg$e53 = peg$literalExpectation("annotations", false);
274
+ const peg$e54 = peg$otherExpectation("integer");
275
+ const peg$e55 = peg$classExpectation([["0", "9"]], false, false, false);
276
+ const peg$e56 = peg$literalExpectation("=", false);
277
+ const peg$e57 = peg$classExpectation(["=", "[", "{", "}"], false, false, false);
278
+ const peg$e58 = peg$literalExpectation("//", false);
279
+ const peg$e59 = peg$literalExpectation("/*", false);
280
+ const peg$e60 = peg$anyExpectation();
281
+ const peg$e61 = peg$classExpectation([["a", "z"], ["A", "Z"], ["0", "9"], "_", "-"], false, false, false);
282
+ const peg$e62 = peg$otherExpectation("string");
283
+ const peg$e63 = peg$literalExpectation('"', false);
284
+ const peg$e64 = peg$literalExpectation("'", false);
285
+ const peg$e65 = peg$literalExpectation("\\", false);
286
+ const peg$e66 = peg$literalExpectation("n", false);
287
+ const peg$e67 = peg$literalExpectation("r", false);
288
+ const peg$e68 = peg$literalExpectation("t", false);
289
+ const peg$e69 = peg$otherExpectation("number");
290
+ const peg$e70 = peg$literalExpectation("-", false);
291
+ const peg$e71 = peg$literalExpectation(".", false);
292
+ const peg$e72 = peg$otherExpectation("value with unit");
293
+ const peg$e73 = peg$literalExpectation("px", false);
294
+ const peg$e74 = peg$literalExpectation("%", false);
295
+ const peg$e75 = peg$literalExpectation("em", false);
296
+ const peg$e76 = peg$literalExpectation("rem", false);
297
+ const peg$e77 = peg$literalExpectation("vh", false);
298
+ const peg$e78 = peg$literalExpectation("vw", false);
299
+ const peg$e79 = peg$otherExpectation("boolean");
300
+ const peg$e80 = peg$literalExpectation("true", false);
301
+ const peg$e81 = peg$literalExpectation("false", false);
302
+ const peg$e82 = peg$otherExpectation("identifier");
303
+ const peg$e83 = peg$classExpectation([["a", "z"], ["A", "Z"], "_"], false, false, false);
304
+ const peg$e84 = peg$classExpectation([" ", " ", "\n", "\r"], false, false, false);
305
+ const peg$e85 = peg$otherExpectation("comment");
306
+ const peg$e86 = peg$classExpectation(["\n"], true, false, false);
307
+ const peg$e87 = peg$literalExpectation("\n", false);
308
+ const peg$e88 = peg$literalExpectation("*/", false);
304
309
  function peg$f0(children) {
305
310
  return createNode("Document", { children: children.filter((c) => c !== null) });
306
311
  }
@@ -698,78 +703,115 @@ function peg$parse(input, options) {
698
703
  ...attrsToObject(attrs)
699
704
  });
700
705
  }
701
- function peg$f71(attrs) {
706
+ function peg$f71(num, attrs) {
707
+ return createNode("Marker", {
708
+ number: num,
709
+ ...attrsToObject(attrs)
710
+ });
711
+ }
712
+ function peg$f72(attrs, items) {
713
+ return createNode("Annotations", {
714
+ ...attrsToObject(attrs),
715
+ children: items
716
+ });
717
+ }
718
+ function peg$f73(items) {
719
+ return items.map((i) => i[0]).filter((i) => i !== null);
720
+ }
721
+ function peg$f74(num, title, attrs, children) {
722
+ return createNode("AnnotationItem", {
723
+ number: num,
724
+ title,
725
+ ...attrsToObject(attrs),
726
+ children
727
+ });
728
+ }
729
+ function peg$f75(num, title, attrs) {
730
+ return createNode("AnnotationItem", {
731
+ number: num,
732
+ title,
733
+ ...attrsToObject(attrs),
734
+ children: []
735
+ });
736
+ }
737
+ function peg$f76() {
738
+ return null;
739
+ }
740
+ function peg$f77(digits) {
741
+ return parseInt(digits.join(""), 10);
742
+ }
743
+ function peg$f78(attrs) {
702
744
  return attrs;
703
745
  }
704
- function peg$f72(name, value) {
746
+ function peg$f79(name, value) {
705
747
  return { name, value };
706
748
  }
707
- function peg$f73(flag) {
749
+ function peg$f80(flag) {
708
750
  return { name: flag, value: true };
709
751
  }
710
- function peg$f74(name) {
752
+ function peg$f81(name) {
711
753
  return name;
712
754
  }
713
- function peg$f75(chars) {
755
+ function peg$f82(chars) {
714
756
  return chars.join("");
715
757
  }
716
- function peg$f76(chars) {
758
+ function peg$f83(chars) {
717
759
  return chars.join("");
718
760
  }
719
- function peg$f77(char) {
761
+ function peg$f84(char) {
720
762
  return char;
721
763
  }
722
- function peg$f78(seq) {
764
+ function peg$f85(seq) {
723
765
  return seq;
724
766
  }
725
- function peg$f79(char) {
767
+ function peg$f86(char) {
726
768
  return char;
727
769
  }
728
- function peg$f80(seq) {
770
+ function peg$f87(seq) {
729
771
  return seq;
730
772
  }
731
- function peg$f81() {
773
+ function peg$f88() {
732
774
  return "\n";
733
775
  }
734
- function peg$f82() {
776
+ function peg$f89() {
735
777
  return "\r";
736
778
  }
737
- function peg$f83() {
779
+ function peg$f90() {
738
780
  return " ";
739
781
  }
740
- function peg$f84() {
782
+ function peg$f91() {
741
783
  return "\\";
742
784
  }
743
- function peg$f85() {
785
+ function peg$f92() {
744
786
  return '"';
745
787
  }
746
- function peg$f86() {
788
+ function peg$f93() {
747
789
  return "'";
748
790
  }
749
- function peg$f87(sign, digits, decimal) {
791
+ function peg$f94(sign, digits, decimal) {
750
792
  const num = (sign || "") + digits.join("") + (decimal ? "." + decimal[1].join("") : "");
751
793
  return parseFloat(num);
752
794
  }
753
- function peg$f88(sign, digits, decimal, unit) {
795
+ function peg$f95(sign, digits, decimal, unit) {
754
796
  const num = (sign || "") + digits.join("") + (decimal ? "." + decimal[1].join("") : "");
755
797
  return { value: parseFloat(num), unit };
756
798
  }
757
- function peg$f89() {
799
+ function peg$f96() {
758
800
  return true;
759
801
  }
760
- function peg$f90() {
802
+ function peg$f97() {
761
803
  return false;
762
804
  }
763
- function peg$f91(head, tail) {
805
+ function peg$f98(head, tail) {
764
806
  return head + tail.join("");
765
807
  }
766
- function peg$f92(items) {
808
+ function peg$f99(items) {
767
809
  return items || [];
768
810
  }
769
- function peg$f93(head, tail) {
811
+ function peg$f100(head, tail) {
770
812
  return [head, ...tail.map((t) => t[3])];
771
813
  }
772
- function peg$f94(props) {
814
+ function peg$f101(props) {
773
815
  const result = {};
774
816
  if (props) {
775
817
  for (const p of props) {
@@ -778,13 +820,13 @@ function peg$parse(input, options) {
778
820
  }
779
821
  return result;
780
822
  }
781
- function peg$f95(head, tail) {
823
+ function peg$f102(head, tail) {
782
824
  return [head, ...tail.map((t) => t[3])];
783
825
  }
784
- function peg$f96(name, value) {
826
+ function peg$f103(name, value) {
785
827
  return { name, value };
786
828
  }
787
- function peg$f97(name) {
829
+ function peg$f104(name) {
788
830
  return { name, value: true };
789
831
  }
790
832
  let peg$currPos = options.peg$currPos | 0;
@@ -2014,6 +2056,12 @@ function peg$parse(input, options) {
2014
2056
  s0 = peg$parseBreadcrumb();
2015
2057
  if (s0 === peg$FAILED) {
2016
2058
  s0 = peg$parseDivider();
2059
+ if (s0 === peg$FAILED) {
2060
+ s0 = peg$parseMarker();
2061
+ if (s0 === peg$FAILED) {
2062
+ s0 = peg$parseAnnotations();
2063
+ }
2064
+ }
2017
2065
  }
2018
2066
  }
2019
2067
  }
@@ -3962,6 +4010,297 @@ function peg$parse(input, options) {
3962
4010
  }
3963
4011
  return s0;
3964
4012
  }
4013
+ function peg$parseMarker() {
4014
+ let s0, s1, s2, s3, s4, s5;
4015
+ s0 = peg$currPos;
4016
+ if (input.substr(peg$currPos, 6) === peg$c52) {
4017
+ s1 = peg$c52;
4018
+ peg$currPos += 6;
4019
+ } else {
4020
+ s1 = peg$FAILED;
4021
+ if (peg$silentFails === 0) {
4022
+ peg$fail(peg$e52);
4023
+ }
4024
+ }
4025
+ if (s1 !== peg$FAILED) {
4026
+ s2 = peg$parse_();
4027
+ s3 = peg$parseInteger();
4028
+ if (s3 !== peg$FAILED) {
4029
+ s4 = peg$parse_();
4030
+ s5 = peg$parseAttributes();
4031
+ if (s5 === peg$FAILED) {
4032
+ s5 = null;
4033
+ }
4034
+ peg$savedPos = s0;
4035
+ s0 = peg$f71(s3, s5);
4036
+ } else {
4037
+ peg$currPos = s0;
4038
+ s0 = peg$FAILED;
4039
+ }
4040
+ } else {
4041
+ peg$currPos = s0;
4042
+ s0 = peg$FAILED;
4043
+ }
4044
+ return s0;
4045
+ }
4046
+ function peg$parseAnnotations() {
4047
+ let s0, s1, s2, s3, s4, s5, s6, s7, s8, s9;
4048
+ s0 = peg$currPos;
4049
+ if (input.substr(peg$currPos, 11) === peg$c53) {
4050
+ s1 = peg$c53;
4051
+ peg$currPos += 11;
4052
+ } else {
4053
+ s1 = peg$FAILED;
4054
+ if (peg$silentFails === 0) {
4055
+ peg$fail(peg$e53);
4056
+ }
4057
+ }
4058
+ if (s1 !== peg$FAILED) {
4059
+ s2 = peg$parse_();
4060
+ s3 = peg$parseAttributes();
4061
+ if (s3 === peg$FAILED) {
4062
+ s3 = null;
4063
+ }
4064
+ s4 = peg$parse_();
4065
+ if (input.charCodeAt(peg$currPos) === 123) {
4066
+ s5 = peg$c1;
4067
+ peg$currPos++;
4068
+ } else {
4069
+ s5 = peg$FAILED;
4070
+ if (peg$silentFails === 0) {
4071
+ peg$fail(peg$e1);
4072
+ }
4073
+ }
4074
+ if (s5 !== peg$FAILED) {
4075
+ s6 = peg$parse_();
4076
+ s7 = peg$parseAnnotationContent();
4077
+ s8 = peg$parse_();
4078
+ if (input.charCodeAt(peg$currPos) === 125) {
4079
+ s9 = peg$c2;
4080
+ peg$currPos++;
4081
+ } else {
4082
+ s9 = peg$FAILED;
4083
+ if (peg$silentFails === 0) {
4084
+ peg$fail(peg$e2);
4085
+ }
4086
+ }
4087
+ if (s9 !== peg$FAILED) {
4088
+ peg$savedPos = s0;
4089
+ s0 = peg$f72(s3, s7);
4090
+ } else {
4091
+ peg$currPos = s0;
4092
+ s0 = peg$FAILED;
4093
+ }
4094
+ } else {
4095
+ peg$currPos = s0;
4096
+ s0 = peg$FAILED;
4097
+ }
4098
+ } else {
4099
+ peg$currPos = s0;
4100
+ s0 = peg$FAILED;
4101
+ }
4102
+ return s0;
4103
+ }
4104
+ function peg$parseAnnotationContent() {
4105
+ let s0, s1, s2, s3, s4;
4106
+ s0 = peg$currPos;
4107
+ s1 = [];
4108
+ s2 = peg$currPos;
4109
+ s3 = peg$parseAnnotationItem();
4110
+ if (s3 !== peg$FAILED) {
4111
+ s4 = peg$parse_();
4112
+ s3 = [s3, s4];
4113
+ s2 = s3;
4114
+ } else {
4115
+ peg$currPos = s2;
4116
+ s2 = peg$FAILED;
4117
+ }
4118
+ while (s2 !== peg$FAILED) {
4119
+ s1.push(s2);
4120
+ s2 = peg$currPos;
4121
+ s3 = peg$parseAnnotationItem();
4122
+ if (s3 !== peg$FAILED) {
4123
+ s4 = peg$parse_();
4124
+ s3 = [s3, s4];
4125
+ s2 = s3;
4126
+ } else {
4127
+ peg$currPos = s2;
4128
+ s2 = peg$FAILED;
4129
+ }
4130
+ }
4131
+ peg$savedPos = s0;
4132
+ s1 = peg$f73(s1);
4133
+ s0 = s1;
4134
+ return s0;
4135
+ }
4136
+ function peg$parseAnnotationItem() {
4137
+ let s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13;
4138
+ s0 = peg$currPos;
4139
+ if (input.substr(peg$currPos, 4) === peg$c38) {
4140
+ s1 = peg$c38;
4141
+ peg$currPos += 4;
4142
+ } else {
4143
+ s1 = peg$FAILED;
4144
+ if (peg$silentFails === 0) {
4145
+ peg$fail(peg$e38);
4146
+ }
4147
+ }
4148
+ if (s1 !== peg$FAILED) {
4149
+ s2 = peg$parse_();
4150
+ s3 = peg$parseInteger();
4151
+ if (s3 !== peg$FAILED) {
4152
+ s4 = peg$parse_();
4153
+ s5 = peg$parseStringLiteral();
4154
+ if (s5 !== peg$FAILED) {
4155
+ s6 = peg$parse_();
4156
+ s7 = peg$parseAttributes();
4157
+ if (s7 === peg$FAILED) {
4158
+ s7 = null;
4159
+ }
4160
+ s8 = peg$parse_();
4161
+ if (input.charCodeAt(peg$currPos) === 123) {
4162
+ s9 = peg$c1;
4163
+ peg$currPos++;
4164
+ } else {
4165
+ s9 = peg$FAILED;
4166
+ if (peg$silentFails === 0) {
4167
+ peg$fail(peg$e1);
4168
+ }
4169
+ }
4170
+ if (s9 !== peg$FAILED) {
4171
+ s10 = peg$parse_();
4172
+ s11 = peg$parseChildren();
4173
+ if (s11 !== peg$FAILED) {
4174
+ s12 = peg$parse_();
4175
+ if (input.charCodeAt(peg$currPos) === 125) {
4176
+ s13 = peg$c2;
4177
+ peg$currPos++;
4178
+ } else {
4179
+ s13 = peg$FAILED;
4180
+ if (peg$silentFails === 0) {
4181
+ peg$fail(peg$e2);
4182
+ }
4183
+ }
4184
+ if (s13 !== peg$FAILED) {
4185
+ peg$savedPos = s0;
4186
+ s0 = peg$f74(s3, s5, s7, s11);
4187
+ } else {
4188
+ peg$currPos = s0;
4189
+ s0 = peg$FAILED;
4190
+ }
4191
+ } else {
4192
+ peg$currPos = s0;
4193
+ s0 = peg$FAILED;
4194
+ }
4195
+ } else {
4196
+ peg$currPos = s0;
4197
+ s0 = peg$FAILED;
4198
+ }
4199
+ } else {
4200
+ peg$currPos = s0;
4201
+ s0 = peg$FAILED;
4202
+ }
4203
+ } else {
4204
+ peg$currPos = s0;
4205
+ s0 = peg$FAILED;
4206
+ }
4207
+ } else {
4208
+ peg$currPos = s0;
4209
+ s0 = peg$FAILED;
4210
+ }
4211
+ if (s0 === peg$FAILED) {
4212
+ s0 = peg$currPos;
4213
+ if (input.substr(peg$currPos, 4) === peg$c38) {
4214
+ s1 = peg$c38;
4215
+ peg$currPos += 4;
4216
+ } else {
4217
+ s1 = peg$FAILED;
4218
+ if (peg$silentFails === 0) {
4219
+ peg$fail(peg$e38);
4220
+ }
4221
+ }
4222
+ if (s1 !== peg$FAILED) {
4223
+ s2 = peg$parse_();
4224
+ s3 = peg$parseInteger();
4225
+ if (s3 !== peg$FAILED) {
4226
+ s4 = peg$parse_();
4227
+ s5 = peg$parseStringLiteral();
4228
+ if (s5 !== peg$FAILED) {
4229
+ s6 = peg$parse_();
4230
+ s7 = peg$parseAttributes();
4231
+ if (s7 === peg$FAILED) {
4232
+ s7 = null;
4233
+ }
4234
+ peg$savedPos = s0;
4235
+ s0 = peg$f75(s3, s5, s7);
4236
+ } else {
4237
+ peg$currPos = s0;
4238
+ s0 = peg$FAILED;
4239
+ }
4240
+ } else {
4241
+ peg$currPos = s0;
4242
+ s0 = peg$FAILED;
4243
+ }
4244
+ } else {
4245
+ peg$currPos = s0;
4246
+ s0 = peg$FAILED;
4247
+ }
4248
+ if (s0 === peg$FAILED) {
4249
+ s0 = peg$currPos;
4250
+ s1 = peg$parseComment();
4251
+ if (s1 !== peg$FAILED) {
4252
+ peg$savedPos = s0;
4253
+ s1 = peg$f76();
4254
+ }
4255
+ s0 = s1;
4256
+ }
4257
+ }
4258
+ return s0;
4259
+ }
4260
+ function peg$parseInteger() {
4261
+ let s0, s1, s2;
4262
+ peg$silentFails++;
4263
+ s0 = peg$currPos;
4264
+ s1 = [];
4265
+ s2 = input.charAt(peg$currPos);
4266
+ if (peg$r0.test(s2)) {
4267
+ peg$currPos++;
4268
+ } else {
4269
+ s2 = peg$FAILED;
4270
+ if (peg$silentFails === 0) {
4271
+ peg$fail(peg$e55);
4272
+ }
4273
+ }
4274
+ if (s2 !== peg$FAILED) {
4275
+ while (s2 !== peg$FAILED) {
4276
+ s1.push(s2);
4277
+ s2 = input.charAt(peg$currPos);
4278
+ if (peg$r0.test(s2)) {
4279
+ peg$currPos++;
4280
+ } else {
4281
+ s2 = peg$FAILED;
4282
+ if (peg$silentFails === 0) {
4283
+ peg$fail(peg$e55);
4284
+ }
4285
+ }
4286
+ }
4287
+ } else {
4288
+ s1 = peg$FAILED;
4289
+ }
4290
+ if (s1 !== peg$FAILED) {
4291
+ peg$savedPos = s0;
4292
+ s1 = peg$f77(s1);
4293
+ }
4294
+ s0 = s1;
4295
+ peg$silentFails--;
4296
+ if (s0 === peg$FAILED) {
4297
+ s1 = peg$FAILED;
4298
+ if (peg$silentFails === 0) {
4299
+ peg$fail(peg$e54);
4300
+ }
4301
+ }
4302
+ return s0;
4303
+ }
3965
4304
  function peg$parseAttributes() {
3966
4305
  let s0, s1, s2;
3967
4306
  s0 = peg$currPos;
@@ -3977,7 +4316,7 @@ function peg$parse(input, options) {
3977
4316
  }
3978
4317
  if (s1 !== peg$FAILED) {
3979
4318
  peg$savedPos = s0;
3980
- s1 = peg$f71(s1);
4319
+ s1 = peg$f78(s1);
3981
4320
  }
3982
4321
  s0 = s1;
3983
4322
  return s0;
@@ -3990,12 +4329,12 @@ function peg$parse(input, options) {
3990
4329
  if (s2 !== peg$FAILED) {
3991
4330
  s3 = peg$parse_();
3992
4331
  if (input.charCodeAt(peg$currPos) === 61) {
3993
- s4 = peg$c52;
4332
+ s4 = peg$c54;
3994
4333
  peg$currPos++;
3995
4334
  } else {
3996
4335
  s4 = peg$FAILED;
3997
4336
  if (peg$silentFails === 0) {
3998
- peg$fail(peg$e52);
4337
+ peg$fail(peg$e56);
3999
4338
  }
4000
4339
  }
4001
4340
  if (s4 !== peg$FAILED) {
@@ -4003,7 +4342,7 @@ function peg$parse(input, options) {
4003
4342
  s6 = peg$parseAttributeValue();
4004
4343
  if (s6 !== peg$FAILED) {
4005
4344
  peg$savedPos = s0;
4006
- s0 = peg$f72(s2, s6);
4345
+ s0 = peg$f79(s2, s6);
4007
4346
  } else {
4008
4347
  peg$currPos = s0;
4009
4348
  s0 = peg$FAILED;
@@ -4030,32 +4369,32 @@ function peg$parse(input, options) {
4030
4369
  s6 = peg$parseAttributeName();
4031
4370
  if (s6 === peg$FAILED) {
4032
4371
  s6 = input.charAt(peg$currPos);
4033
- if (peg$r0.test(s6)) {
4372
+ if (peg$r1.test(s6)) {
4034
4373
  peg$currPos++;
4035
4374
  } else {
4036
4375
  s6 = peg$FAILED;
4037
4376
  if (peg$silentFails === 0) {
4038
- peg$fail(peg$e53);
4377
+ peg$fail(peg$e57);
4039
4378
  }
4040
4379
  }
4041
4380
  if (s6 === peg$FAILED) {
4042
- if (input.substr(peg$currPos, 2) === peg$c53) {
4043
- s6 = peg$c53;
4381
+ if (input.substr(peg$currPos, 2) === peg$c55) {
4382
+ s6 = peg$c55;
4044
4383
  peg$currPos += 2;
4045
4384
  } else {
4046
4385
  s6 = peg$FAILED;
4047
4386
  if (peg$silentFails === 0) {
4048
- peg$fail(peg$e54);
4387
+ peg$fail(peg$e58);
4049
4388
  }
4050
4389
  }
4051
4390
  if (s6 === peg$FAILED) {
4052
- if (input.substr(peg$currPos, 2) === peg$c54) {
4053
- s6 = peg$c54;
4391
+ if (input.substr(peg$currPos, 2) === peg$c56) {
4392
+ s6 = peg$c56;
4054
4393
  peg$currPos += 2;
4055
4394
  } else {
4056
4395
  s6 = peg$FAILED;
4057
4396
  if (peg$silentFails === 0) {
4058
- peg$fail(peg$e55);
4397
+ peg$fail(peg$e59);
4059
4398
  }
4060
4399
  }
4061
4400
  if (s6 === peg$FAILED) {
@@ -4067,7 +4406,7 @@ function peg$parse(input, options) {
4067
4406
  } else {
4068
4407
  s7 = peg$FAILED;
4069
4408
  if (peg$silentFails === 0) {
4070
- peg$fail(peg$e56);
4409
+ peg$fail(peg$e60);
4071
4410
  }
4072
4411
  }
4073
4412
  peg$silentFails--;
@@ -4098,7 +4437,7 @@ function peg$parse(input, options) {
4098
4437
  }
4099
4438
  if (s3 !== peg$FAILED) {
4100
4439
  peg$savedPos = s0;
4101
- s0 = peg$f73(s2);
4440
+ s0 = peg$f80(s2);
4102
4441
  } else {
4103
4442
  peg$currPos = s0;
4104
4443
  s0 = peg$FAILED;
@@ -4127,7 +4466,7 @@ function peg$parse(input, options) {
4127
4466
  s2 = peg$parseIdentifier();
4128
4467
  if (s2 !== peg$FAILED) {
4129
4468
  peg$savedPos = s0;
4130
- s0 = peg$f74(s2);
4469
+ s0 = peg$f81(s2);
4131
4470
  } else {
4132
4471
  peg$currPos = s0;
4133
4472
  s0 = peg$FAILED;
@@ -4580,6 +4919,28 @@ function peg$parse(input, options) {
4580
4919
  peg$fail(peg$e48);
4581
4920
  }
4582
4921
  }
4922
+ if (s1 === peg$FAILED) {
4923
+ if (input.substr(peg$currPos, 6) === peg$c52) {
4924
+ s1 = peg$c52;
4925
+ peg$currPos += 6;
4926
+ } else {
4927
+ s1 = peg$FAILED;
4928
+ if (peg$silentFails === 0) {
4929
+ peg$fail(peg$e52);
4930
+ }
4931
+ }
4932
+ if (s1 === peg$FAILED) {
4933
+ if (input.substr(peg$currPos, 11) === peg$c53) {
4934
+ s1 = peg$c53;
4935
+ peg$currPos += 11;
4936
+ } else {
4937
+ s1 = peg$FAILED;
4938
+ if (peg$silentFails === 0) {
4939
+ peg$fail(peg$e53);
4940
+ }
4941
+ }
4942
+ }
4943
+ }
4583
4944
  }
4584
4945
  }
4585
4946
  }
@@ -4650,12 +5011,12 @@ function peg$parse(input, options) {
4650
5011
  function peg$parseIdentifierChar() {
4651
5012
  let s0;
4652
5013
  s0 = input.charAt(peg$currPos);
4653
- if (peg$r1.test(s0)) {
5014
+ if (peg$r2.test(s0)) {
4654
5015
  peg$currPos++;
4655
5016
  } else {
4656
5017
  s0 = peg$FAILED;
4657
5018
  if (peg$silentFails === 0) {
4658
- peg$fail(peg$e57);
5019
+ peg$fail(peg$e61);
4659
5020
  }
4660
5021
  }
4661
5022
  return s0;
@@ -4688,12 +5049,12 @@ function peg$parse(input, options) {
4688
5049
  peg$silentFails++;
4689
5050
  s0 = peg$currPos;
4690
5051
  if (input.charCodeAt(peg$currPos) === 34) {
4691
- s1 = peg$c55;
5052
+ s1 = peg$c57;
4692
5053
  peg$currPos++;
4693
5054
  } else {
4694
5055
  s1 = peg$FAILED;
4695
5056
  if (peg$silentFails === 0) {
4696
- peg$fail(peg$e59);
5057
+ peg$fail(peg$e63);
4697
5058
  }
4698
5059
  }
4699
5060
  if (s1 !== peg$FAILED) {
@@ -4704,17 +5065,17 @@ function peg$parse(input, options) {
4704
5065
  s3 = peg$parseDoubleStringChar();
4705
5066
  }
4706
5067
  if (input.charCodeAt(peg$currPos) === 34) {
4707
- s3 = peg$c55;
5068
+ s3 = peg$c57;
4708
5069
  peg$currPos++;
4709
5070
  } else {
4710
5071
  s3 = peg$FAILED;
4711
5072
  if (peg$silentFails === 0) {
4712
- peg$fail(peg$e59);
5073
+ peg$fail(peg$e63);
4713
5074
  }
4714
5075
  }
4715
5076
  if (s3 !== peg$FAILED) {
4716
5077
  peg$savedPos = s0;
4717
- s0 = peg$f75(s2);
5078
+ s0 = peg$f82(s2);
4718
5079
  } else {
4719
5080
  peg$currPos = s0;
4720
5081
  s0 = peg$FAILED;
@@ -4726,12 +5087,12 @@ function peg$parse(input, options) {
4726
5087
  if (s0 === peg$FAILED) {
4727
5088
  s0 = peg$currPos;
4728
5089
  if (input.charCodeAt(peg$currPos) === 39) {
4729
- s1 = peg$c56;
5090
+ s1 = peg$c58;
4730
5091
  peg$currPos++;
4731
5092
  } else {
4732
5093
  s1 = peg$FAILED;
4733
5094
  if (peg$silentFails === 0) {
4734
- peg$fail(peg$e60);
5095
+ peg$fail(peg$e64);
4735
5096
  }
4736
5097
  }
4737
5098
  if (s1 !== peg$FAILED) {
@@ -4742,17 +5103,17 @@ function peg$parse(input, options) {
4742
5103
  s3 = peg$parseSingleStringChar();
4743
5104
  }
4744
5105
  if (input.charCodeAt(peg$currPos) === 39) {
4745
- s3 = peg$c56;
5106
+ s3 = peg$c58;
4746
5107
  peg$currPos++;
4747
5108
  } else {
4748
5109
  s3 = peg$FAILED;
4749
5110
  if (peg$silentFails === 0) {
4750
- peg$fail(peg$e60);
5111
+ peg$fail(peg$e64);
4751
5112
  }
4752
5113
  }
4753
5114
  if (s3 !== peg$FAILED) {
4754
5115
  peg$savedPos = s0;
4755
- s0 = peg$f76(s2);
5116
+ s0 = peg$f83(s2);
4756
5117
  } else {
4757
5118
  peg$currPos = s0;
4758
5119
  s0 = peg$FAILED;
@@ -4766,7 +5127,7 @@ function peg$parse(input, options) {
4766
5127
  if (s0 === peg$FAILED) {
4767
5128
  s1 = peg$FAILED;
4768
5129
  if (peg$silentFails === 0) {
4769
- peg$fail(peg$e58);
5130
+ peg$fail(peg$e62);
4770
5131
  }
4771
5132
  }
4772
5133
  return s0;
@@ -4777,12 +5138,12 @@ function peg$parse(input, options) {
4777
5138
  s1 = peg$currPos;
4778
5139
  peg$silentFails++;
4779
5140
  if (input.charCodeAt(peg$currPos) === 34) {
4780
- s2 = peg$c55;
5141
+ s2 = peg$c57;
4781
5142
  peg$currPos++;
4782
5143
  } else {
4783
5144
  s2 = peg$FAILED;
4784
5145
  if (peg$silentFails === 0) {
4785
- peg$fail(peg$e59);
5146
+ peg$fail(peg$e63);
4786
5147
  }
4787
5148
  }
4788
5149
  peg$silentFails--;
@@ -4796,12 +5157,12 @@ function peg$parse(input, options) {
4796
5157
  s2 = peg$currPos;
4797
5158
  peg$silentFails++;
4798
5159
  if (input.charCodeAt(peg$currPos) === 92) {
4799
- s3 = peg$c57;
5160
+ s3 = peg$c59;
4800
5161
  peg$currPos++;
4801
5162
  } else {
4802
5163
  s3 = peg$FAILED;
4803
5164
  if (peg$silentFails === 0) {
4804
- peg$fail(peg$e61);
5165
+ peg$fail(peg$e65);
4805
5166
  }
4806
5167
  }
4807
5168
  peg$silentFails--;
@@ -4818,12 +5179,12 @@ function peg$parse(input, options) {
4818
5179
  } else {
4819
5180
  s3 = peg$FAILED;
4820
5181
  if (peg$silentFails === 0) {
4821
- peg$fail(peg$e56);
5182
+ peg$fail(peg$e60);
4822
5183
  }
4823
5184
  }
4824
5185
  if (s3 !== peg$FAILED) {
4825
5186
  peg$savedPos = s0;
4826
- s0 = peg$f77(s3);
5187
+ s0 = peg$f84(s3);
4827
5188
  } else {
4828
5189
  peg$currPos = s0;
4829
5190
  s0 = peg$FAILED;
@@ -4839,19 +5200,19 @@ function peg$parse(input, options) {
4839
5200
  if (s0 === peg$FAILED) {
4840
5201
  s0 = peg$currPos;
4841
5202
  if (input.charCodeAt(peg$currPos) === 92) {
4842
- s1 = peg$c57;
5203
+ s1 = peg$c59;
4843
5204
  peg$currPos++;
4844
5205
  } else {
4845
5206
  s1 = peg$FAILED;
4846
5207
  if (peg$silentFails === 0) {
4847
- peg$fail(peg$e61);
5208
+ peg$fail(peg$e65);
4848
5209
  }
4849
5210
  }
4850
5211
  if (s1 !== peg$FAILED) {
4851
5212
  s2 = peg$parseEscapeSequence();
4852
5213
  if (s2 !== peg$FAILED) {
4853
5214
  peg$savedPos = s0;
4854
- s0 = peg$f78(s2);
5215
+ s0 = peg$f85(s2);
4855
5216
  } else {
4856
5217
  peg$currPos = s0;
4857
5218
  s0 = peg$FAILED;
@@ -4869,12 +5230,12 @@ function peg$parse(input, options) {
4869
5230
  s1 = peg$currPos;
4870
5231
  peg$silentFails++;
4871
5232
  if (input.charCodeAt(peg$currPos) === 39) {
4872
- s2 = peg$c56;
5233
+ s2 = peg$c58;
4873
5234
  peg$currPos++;
4874
5235
  } else {
4875
5236
  s2 = peg$FAILED;
4876
5237
  if (peg$silentFails === 0) {
4877
- peg$fail(peg$e60);
5238
+ peg$fail(peg$e64);
4878
5239
  }
4879
5240
  }
4880
5241
  peg$silentFails--;
@@ -4888,12 +5249,12 @@ function peg$parse(input, options) {
4888
5249
  s2 = peg$currPos;
4889
5250
  peg$silentFails++;
4890
5251
  if (input.charCodeAt(peg$currPos) === 92) {
4891
- s3 = peg$c57;
5252
+ s3 = peg$c59;
4892
5253
  peg$currPos++;
4893
5254
  } else {
4894
5255
  s3 = peg$FAILED;
4895
5256
  if (peg$silentFails === 0) {
4896
- peg$fail(peg$e61);
5257
+ peg$fail(peg$e65);
4897
5258
  }
4898
5259
  }
4899
5260
  peg$silentFails--;
@@ -4910,12 +5271,12 @@ function peg$parse(input, options) {
4910
5271
  } else {
4911
5272
  s3 = peg$FAILED;
4912
5273
  if (peg$silentFails === 0) {
4913
- peg$fail(peg$e56);
5274
+ peg$fail(peg$e60);
4914
5275
  }
4915
5276
  }
4916
5277
  if (s3 !== peg$FAILED) {
4917
5278
  peg$savedPos = s0;
4918
- s0 = peg$f79(s3);
5279
+ s0 = peg$f86(s3);
4919
5280
  } else {
4920
5281
  peg$currPos = s0;
4921
5282
  s0 = peg$FAILED;
@@ -4931,19 +5292,19 @@ function peg$parse(input, options) {
4931
5292
  if (s0 === peg$FAILED) {
4932
5293
  s0 = peg$currPos;
4933
5294
  if (input.charCodeAt(peg$currPos) === 92) {
4934
- s1 = peg$c57;
5295
+ s1 = peg$c59;
4935
5296
  peg$currPos++;
4936
5297
  } else {
4937
5298
  s1 = peg$FAILED;
4938
5299
  if (peg$silentFails === 0) {
4939
- peg$fail(peg$e61);
5300
+ peg$fail(peg$e65);
4940
5301
  }
4941
5302
  }
4942
5303
  if (s1 !== peg$FAILED) {
4943
5304
  s2 = peg$parseEscapeSequence();
4944
5305
  if (s2 !== peg$FAILED) {
4945
5306
  peg$savedPos = s0;
4946
- s0 = peg$f80(s2);
5307
+ s0 = peg$f87(s2);
4947
5308
  } else {
4948
5309
  peg$currPos = s0;
4949
5310
  s0 = peg$FAILED;
@@ -4959,97 +5320,97 @@ function peg$parse(input, options) {
4959
5320
  let s0, s1;
4960
5321
  s0 = peg$currPos;
4961
5322
  if (input.charCodeAt(peg$currPos) === 110) {
4962
- s1 = peg$c58;
5323
+ s1 = peg$c60;
4963
5324
  peg$currPos++;
4964
5325
  } else {
4965
5326
  s1 = peg$FAILED;
4966
5327
  if (peg$silentFails === 0) {
4967
- peg$fail(peg$e62);
5328
+ peg$fail(peg$e66);
4968
5329
  }
4969
5330
  }
4970
5331
  if (s1 !== peg$FAILED) {
4971
5332
  peg$savedPos = s0;
4972
- s1 = peg$f81();
5333
+ s1 = peg$f88();
4973
5334
  }
4974
5335
  s0 = s1;
4975
5336
  if (s0 === peg$FAILED) {
4976
5337
  s0 = peg$currPos;
4977
5338
  if (input.charCodeAt(peg$currPos) === 114) {
4978
- s1 = peg$c59;
5339
+ s1 = peg$c61;
4979
5340
  peg$currPos++;
4980
5341
  } else {
4981
5342
  s1 = peg$FAILED;
4982
5343
  if (peg$silentFails === 0) {
4983
- peg$fail(peg$e63);
5344
+ peg$fail(peg$e67);
4984
5345
  }
4985
5346
  }
4986
5347
  if (s1 !== peg$FAILED) {
4987
5348
  peg$savedPos = s0;
4988
- s1 = peg$f82();
5349
+ s1 = peg$f89();
4989
5350
  }
4990
5351
  s0 = s1;
4991
5352
  if (s0 === peg$FAILED) {
4992
5353
  s0 = peg$currPos;
4993
5354
  if (input.charCodeAt(peg$currPos) === 116) {
4994
- s1 = peg$c60;
5355
+ s1 = peg$c62;
4995
5356
  peg$currPos++;
4996
5357
  } else {
4997
5358
  s1 = peg$FAILED;
4998
5359
  if (peg$silentFails === 0) {
4999
- peg$fail(peg$e64);
5360
+ peg$fail(peg$e68);
5000
5361
  }
5001
5362
  }
5002
5363
  if (s1 !== peg$FAILED) {
5003
5364
  peg$savedPos = s0;
5004
- s1 = peg$f83();
5365
+ s1 = peg$f90();
5005
5366
  }
5006
5367
  s0 = s1;
5007
5368
  if (s0 === peg$FAILED) {
5008
5369
  s0 = peg$currPos;
5009
5370
  if (input.charCodeAt(peg$currPos) === 92) {
5010
- s1 = peg$c57;
5371
+ s1 = peg$c59;
5011
5372
  peg$currPos++;
5012
5373
  } else {
5013
5374
  s1 = peg$FAILED;
5014
5375
  if (peg$silentFails === 0) {
5015
- peg$fail(peg$e61);
5376
+ peg$fail(peg$e65);
5016
5377
  }
5017
5378
  }
5018
5379
  if (s1 !== peg$FAILED) {
5019
5380
  peg$savedPos = s0;
5020
- s1 = peg$f84();
5381
+ s1 = peg$f91();
5021
5382
  }
5022
5383
  s0 = s1;
5023
5384
  if (s0 === peg$FAILED) {
5024
5385
  s0 = peg$currPos;
5025
5386
  if (input.charCodeAt(peg$currPos) === 34) {
5026
- s1 = peg$c55;
5387
+ s1 = peg$c57;
5027
5388
  peg$currPos++;
5028
5389
  } else {
5029
5390
  s1 = peg$FAILED;
5030
5391
  if (peg$silentFails === 0) {
5031
- peg$fail(peg$e59);
5392
+ peg$fail(peg$e63);
5032
5393
  }
5033
5394
  }
5034
5395
  if (s1 !== peg$FAILED) {
5035
5396
  peg$savedPos = s0;
5036
- s1 = peg$f85();
5397
+ s1 = peg$f92();
5037
5398
  }
5038
5399
  s0 = s1;
5039
5400
  if (s0 === peg$FAILED) {
5040
5401
  s0 = peg$currPos;
5041
5402
  if (input.charCodeAt(peg$currPos) === 39) {
5042
- s1 = peg$c56;
5403
+ s1 = peg$c58;
5043
5404
  peg$currPos++;
5044
5405
  } else {
5045
5406
  s1 = peg$FAILED;
5046
5407
  if (peg$silentFails === 0) {
5047
- peg$fail(peg$e60);
5408
+ peg$fail(peg$e64);
5048
5409
  }
5049
5410
  }
5050
5411
  if (s1 !== peg$FAILED) {
5051
5412
  peg$savedPos = s0;
5052
- s1 = peg$f86();
5413
+ s1 = peg$f93();
5053
5414
  }
5054
5415
  s0 = s1;
5055
5416
  }
@@ -5064,12 +5425,12 @@ function peg$parse(input, options) {
5064
5425
  peg$silentFails++;
5065
5426
  s0 = peg$currPos;
5066
5427
  if (input.charCodeAt(peg$currPos) === 45) {
5067
- s1 = peg$c61;
5428
+ s1 = peg$c63;
5068
5429
  peg$currPos++;
5069
5430
  } else {
5070
5431
  s1 = peg$FAILED;
5071
5432
  if (peg$silentFails === 0) {
5072
- peg$fail(peg$e66);
5433
+ peg$fail(peg$e70);
5073
5434
  }
5074
5435
  }
5075
5436
  if (s1 === peg$FAILED) {
@@ -5077,24 +5438,24 @@ function peg$parse(input, options) {
5077
5438
  }
5078
5439
  s2 = [];
5079
5440
  s3 = input.charAt(peg$currPos);
5080
- if (peg$r2.test(s3)) {
5441
+ if (peg$r0.test(s3)) {
5081
5442
  peg$currPos++;
5082
5443
  } else {
5083
5444
  s3 = peg$FAILED;
5084
5445
  if (peg$silentFails === 0) {
5085
- peg$fail(peg$e67);
5446
+ peg$fail(peg$e55);
5086
5447
  }
5087
5448
  }
5088
5449
  if (s3 !== peg$FAILED) {
5089
5450
  while (s3 !== peg$FAILED) {
5090
5451
  s2.push(s3);
5091
5452
  s3 = input.charAt(peg$currPos);
5092
- if (peg$r2.test(s3)) {
5453
+ if (peg$r0.test(s3)) {
5093
5454
  peg$currPos++;
5094
5455
  } else {
5095
5456
  s3 = peg$FAILED;
5096
5457
  if (peg$silentFails === 0) {
5097
- peg$fail(peg$e67);
5458
+ peg$fail(peg$e55);
5098
5459
  }
5099
5460
  }
5100
5461
  }
@@ -5104,35 +5465,35 @@ function peg$parse(input, options) {
5104
5465
  if (s2 !== peg$FAILED) {
5105
5466
  s3 = peg$currPos;
5106
5467
  if (input.charCodeAt(peg$currPos) === 46) {
5107
- s4 = peg$c62;
5468
+ s4 = peg$c64;
5108
5469
  peg$currPos++;
5109
5470
  } else {
5110
5471
  s4 = peg$FAILED;
5111
5472
  if (peg$silentFails === 0) {
5112
- peg$fail(peg$e68);
5473
+ peg$fail(peg$e71);
5113
5474
  }
5114
5475
  }
5115
5476
  if (s4 !== peg$FAILED) {
5116
5477
  s5 = [];
5117
5478
  s6 = input.charAt(peg$currPos);
5118
- if (peg$r2.test(s6)) {
5479
+ if (peg$r0.test(s6)) {
5119
5480
  peg$currPos++;
5120
5481
  } else {
5121
5482
  s6 = peg$FAILED;
5122
5483
  if (peg$silentFails === 0) {
5123
- peg$fail(peg$e67);
5484
+ peg$fail(peg$e55);
5124
5485
  }
5125
5486
  }
5126
5487
  if (s6 !== peg$FAILED) {
5127
5488
  while (s6 !== peg$FAILED) {
5128
5489
  s5.push(s6);
5129
5490
  s6 = input.charAt(peg$currPos);
5130
- if (peg$r2.test(s6)) {
5491
+ if (peg$r0.test(s6)) {
5131
5492
  peg$currPos++;
5132
5493
  } else {
5133
5494
  s6 = peg$FAILED;
5134
5495
  if (peg$silentFails === 0) {
5135
- peg$fail(peg$e67);
5496
+ peg$fail(peg$e55);
5136
5497
  }
5137
5498
  }
5138
5499
  }
@@ -5154,7 +5515,7 @@ function peg$parse(input, options) {
5154
5515
  s3 = null;
5155
5516
  }
5156
5517
  peg$savedPos = s0;
5157
- s0 = peg$f87(s1, s2, s3);
5518
+ s0 = peg$f94(s1, s2, s3);
5158
5519
  } else {
5159
5520
  peg$currPos = s0;
5160
5521
  s0 = peg$FAILED;
@@ -5163,7 +5524,7 @@ function peg$parse(input, options) {
5163
5524
  if (s0 === peg$FAILED) {
5164
5525
  s1 = peg$FAILED;
5165
5526
  if (peg$silentFails === 0) {
5166
- peg$fail(peg$e65);
5527
+ peg$fail(peg$e69);
5167
5528
  }
5168
5529
  }
5169
5530
  return s0;
@@ -5173,12 +5534,12 @@ function peg$parse(input, options) {
5173
5534
  peg$silentFails++;
5174
5535
  s0 = peg$currPos;
5175
5536
  if (input.charCodeAt(peg$currPos) === 45) {
5176
- s1 = peg$c61;
5537
+ s1 = peg$c63;
5177
5538
  peg$currPos++;
5178
5539
  } else {
5179
5540
  s1 = peg$FAILED;
5180
5541
  if (peg$silentFails === 0) {
5181
- peg$fail(peg$e66);
5542
+ peg$fail(peg$e70);
5182
5543
  }
5183
5544
  }
5184
5545
  if (s1 === peg$FAILED) {
@@ -5186,24 +5547,24 @@ function peg$parse(input, options) {
5186
5547
  }
5187
5548
  s2 = [];
5188
5549
  s3 = input.charAt(peg$currPos);
5189
- if (peg$r2.test(s3)) {
5550
+ if (peg$r0.test(s3)) {
5190
5551
  peg$currPos++;
5191
5552
  } else {
5192
5553
  s3 = peg$FAILED;
5193
5554
  if (peg$silentFails === 0) {
5194
- peg$fail(peg$e67);
5555
+ peg$fail(peg$e55);
5195
5556
  }
5196
5557
  }
5197
5558
  if (s3 !== peg$FAILED) {
5198
5559
  while (s3 !== peg$FAILED) {
5199
5560
  s2.push(s3);
5200
5561
  s3 = input.charAt(peg$currPos);
5201
- if (peg$r2.test(s3)) {
5562
+ if (peg$r0.test(s3)) {
5202
5563
  peg$currPos++;
5203
5564
  } else {
5204
5565
  s3 = peg$FAILED;
5205
5566
  if (peg$silentFails === 0) {
5206
- peg$fail(peg$e67);
5567
+ peg$fail(peg$e55);
5207
5568
  }
5208
5569
  }
5209
5570
  }
@@ -5213,35 +5574,35 @@ function peg$parse(input, options) {
5213
5574
  if (s2 !== peg$FAILED) {
5214
5575
  s3 = peg$currPos;
5215
5576
  if (input.charCodeAt(peg$currPos) === 46) {
5216
- s4 = peg$c62;
5577
+ s4 = peg$c64;
5217
5578
  peg$currPos++;
5218
5579
  } else {
5219
5580
  s4 = peg$FAILED;
5220
5581
  if (peg$silentFails === 0) {
5221
- peg$fail(peg$e68);
5582
+ peg$fail(peg$e71);
5222
5583
  }
5223
5584
  }
5224
5585
  if (s4 !== peg$FAILED) {
5225
5586
  s5 = [];
5226
5587
  s6 = input.charAt(peg$currPos);
5227
- if (peg$r2.test(s6)) {
5588
+ if (peg$r0.test(s6)) {
5228
5589
  peg$currPos++;
5229
5590
  } else {
5230
5591
  s6 = peg$FAILED;
5231
5592
  if (peg$silentFails === 0) {
5232
- peg$fail(peg$e67);
5593
+ peg$fail(peg$e55);
5233
5594
  }
5234
5595
  }
5235
5596
  if (s6 !== peg$FAILED) {
5236
5597
  while (s6 !== peg$FAILED) {
5237
5598
  s5.push(s6);
5238
5599
  s6 = input.charAt(peg$currPos);
5239
- if (peg$r2.test(s6)) {
5600
+ if (peg$r0.test(s6)) {
5240
5601
  peg$currPos++;
5241
5602
  } else {
5242
5603
  s6 = peg$FAILED;
5243
5604
  if (peg$silentFails === 0) {
5244
- peg$fail(peg$e67);
5605
+ peg$fail(peg$e55);
5245
5606
  }
5246
5607
  }
5247
5608
  }
@@ -5262,63 +5623,63 @@ function peg$parse(input, options) {
5262
5623
  if (s3 === peg$FAILED) {
5263
5624
  s3 = null;
5264
5625
  }
5265
- if (input.substr(peg$currPos, 2) === peg$c63) {
5266
- s4 = peg$c63;
5626
+ if (input.substr(peg$currPos, 2) === peg$c65) {
5627
+ s4 = peg$c65;
5267
5628
  peg$currPos += 2;
5268
5629
  } else {
5269
5630
  s4 = peg$FAILED;
5270
5631
  if (peg$silentFails === 0) {
5271
- peg$fail(peg$e70);
5632
+ peg$fail(peg$e73);
5272
5633
  }
5273
5634
  }
5274
5635
  if (s4 === peg$FAILED) {
5275
5636
  if (input.charCodeAt(peg$currPos) === 37) {
5276
- s4 = peg$c64;
5637
+ s4 = peg$c66;
5277
5638
  peg$currPos++;
5278
5639
  } else {
5279
5640
  s4 = peg$FAILED;
5280
5641
  if (peg$silentFails === 0) {
5281
- peg$fail(peg$e71);
5642
+ peg$fail(peg$e74);
5282
5643
  }
5283
5644
  }
5284
5645
  if (s4 === peg$FAILED) {
5285
- if (input.substr(peg$currPos, 2) === peg$c65) {
5286
- s4 = peg$c65;
5646
+ if (input.substr(peg$currPos, 2) === peg$c67) {
5647
+ s4 = peg$c67;
5287
5648
  peg$currPos += 2;
5288
5649
  } else {
5289
5650
  s4 = peg$FAILED;
5290
5651
  if (peg$silentFails === 0) {
5291
- peg$fail(peg$e72);
5652
+ peg$fail(peg$e75);
5292
5653
  }
5293
5654
  }
5294
5655
  if (s4 === peg$FAILED) {
5295
- if (input.substr(peg$currPos, 3) === peg$c66) {
5296
- s4 = peg$c66;
5656
+ if (input.substr(peg$currPos, 3) === peg$c68) {
5657
+ s4 = peg$c68;
5297
5658
  peg$currPos += 3;
5298
5659
  } else {
5299
5660
  s4 = peg$FAILED;
5300
5661
  if (peg$silentFails === 0) {
5301
- peg$fail(peg$e73);
5662
+ peg$fail(peg$e76);
5302
5663
  }
5303
5664
  }
5304
5665
  if (s4 === peg$FAILED) {
5305
- if (input.substr(peg$currPos, 2) === peg$c67) {
5306
- s4 = peg$c67;
5666
+ if (input.substr(peg$currPos, 2) === peg$c69) {
5667
+ s4 = peg$c69;
5307
5668
  peg$currPos += 2;
5308
5669
  } else {
5309
5670
  s4 = peg$FAILED;
5310
5671
  if (peg$silentFails === 0) {
5311
- peg$fail(peg$e74);
5672
+ peg$fail(peg$e77);
5312
5673
  }
5313
5674
  }
5314
5675
  if (s4 === peg$FAILED) {
5315
- if (input.substr(peg$currPos, 2) === peg$c68) {
5316
- s4 = peg$c68;
5676
+ if (input.substr(peg$currPos, 2) === peg$c70) {
5677
+ s4 = peg$c70;
5317
5678
  peg$currPos += 2;
5318
5679
  } else {
5319
5680
  s4 = peg$FAILED;
5320
5681
  if (peg$silentFails === 0) {
5321
- peg$fail(peg$e75);
5682
+ peg$fail(peg$e78);
5322
5683
  }
5323
5684
  }
5324
5685
  }
@@ -5328,7 +5689,7 @@ function peg$parse(input, options) {
5328
5689
  }
5329
5690
  if (s4 !== peg$FAILED) {
5330
5691
  peg$savedPos = s0;
5331
- s0 = peg$f88(s1, s2, s3, s4);
5692
+ s0 = peg$f95(s1, s2, s3, s4);
5332
5693
  } else {
5333
5694
  peg$currPos = s0;
5334
5695
  s0 = peg$FAILED;
@@ -5341,7 +5702,7 @@ function peg$parse(input, options) {
5341
5702
  if (s0 === peg$FAILED) {
5342
5703
  s1 = peg$FAILED;
5343
5704
  if (peg$silentFails === 0) {
5344
- peg$fail(peg$e69);
5705
+ peg$fail(peg$e72);
5345
5706
  }
5346
5707
  }
5347
5708
  return s0;
@@ -5350,34 +5711,34 @@ function peg$parse(input, options) {
5350
5711
  let s0, s1;
5351
5712
  peg$silentFails++;
5352
5713
  s0 = peg$currPos;
5353
- if (input.substr(peg$currPos, 4) === peg$c69) {
5354
- s1 = peg$c69;
5714
+ if (input.substr(peg$currPos, 4) === peg$c71) {
5715
+ s1 = peg$c71;
5355
5716
  peg$currPos += 4;
5356
5717
  } else {
5357
5718
  s1 = peg$FAILED;
5358
5719
  if (peg$silentFails === 0) {
5359
- peg$fail(peg$e77);
5720
+ peg$fail(peg$e80);
5360
5721
  }
5361
5722
  }
5362
5723
  if (s1 !== peg$FAILED) {
5363
5724
  peg$savedPos = s0;
5364
- s1 = peg$f89();
5725
+ s1 = peg$f96();
5365
5726
  }
5366
5727
  s0 = s1;
5367
5728
  if (s0 === peg$FAILED) {
5368
5729
  s0 = peg$currPos;
5369
- if (input.substr(peg$currPos, 5) === peg$c70) {
5370
- s1 = peg$c70;
5730
+ if (input.substr(peg$currPos, 5) === peg$c72) {
5731
+ s1 = peg$c72;
5371
5732
  peg$currPos += 5;
5372
5733
  } else {
5373
5734
  s1 = peg$FAILED;
5374
5735
  if (peg$silentFails === 0) {
5375
- peg$fail(peg$e78);
5736
+ peg$fail(peg$e81);
5376
5737
  }
5377
5738
  }
5378
5739
  if (s1 !== peg$FAILED) {
5379
5740
  peg$savedPos = s0;
5380
- s1 = peg$f90();
5741
+ s1 = peg$f97();
5381
5742
  }
5382
5743
  s0 = s1;
5383
5744
  }
@@ -5385,7 +5746,7 @@ function peg$parse(input, options) {
5385
5746
  if (s0 === peg$FAILED) {
5386
5747
  s1 = peg$FAILED;
5387
5748
  if (peg$silentFails === 0) {
5388
- peg$fail(peg$e76);
5749
+ peg$fail(peg$e79);
5389
5750
  }
5390
5751
  }
5391
5752
  return s0;
@@ -5400,34 +5761,34 @@ function peg$parse(input, options) {
5400
5761
  } else {
5401
5762
  s1 = peg$FAILED;
5402
5763
  if (peg$silentFails === 0) {
5403
- peg$fail(peg$e80);
5764
+ peg$fail(peg$e83);
5404
5765
  }
5405
5766
  }
5406
5767
  if (s1 !== peg$FAILED) {
5407
5768
  s2 = [];
5408
5769
  s3 = input.charAt(peg$currPos);
5409
- if (peg$r1.test(s3)) {
5770
+ if (peg$r2.test(s3)) {
5410
5771
  peg$currPos++;
5411
5772
  } else {
5412
5773
  s3 = peg$FAILED;
5413
5774
  if (peg$silentFails === 0) {
5414
- peg$fail(peg$e57);
5775
+ peg$fail(peg$e61);
5415
5776
  }
5416
5777
  }
5417
5778
  while (s3 !== peg$FAILED) {
5418
5779
  s2.push(s3);
5419
5780
  s3 = input.charAt(peg$currPos);
5420
- if (peg$r1.test(s3)) {
5781
+ if (peg$r2.test(s3)) {
5421
5782
  peg$currPos++;
5422
5783
  } else {
5423
5784
  s3 = peg$FAILED;
5424
5785
  if (peg$silentFails === 0) {
5425
- peg$fail(peg$e57);
5786
+ peg$fail(peg$e61);
5426
5787
  }
5427
5788
  }
5428
5789
  }
5429
5790
  peg$savedPos = s0;
5430
- s0 = peg$f91(s1, s2);
5791
+ s0 = peg$f98(s1, s2);
5431
5792
  } else {
5432
5793
  peg$currPos = s0;
5433
5794
  s0 = peg$FAILED;
@@ -5436,7 +5797,7 @@ function peg$parse(input, options) {
5436
5797
  if (s0 === peg$FAILED) {
5437
5798
  s1 = peg$FAILED;
5438
5799
  if (peg$silentFails === 0) {
5439
- peg$fail(peg$e79);
5800
+ peg$fail(peg$e82);
5440
5801
  }
5441
5802
  }
5442
5803
  return s0;
@@ -5471,7 +5832,7 @@ function peg$parse(input, options) {
5471
5832
  }
5472
5833
  if (s5 !== peg$FAILED) {
5473
5834
  peg$savedPos = s0;
5474
- s0 = peg$f92(s3);
5835
+ s0 = peg$f99(s3);
5475
5836
  } else {
5476
5837
  peg$currPos = s0;
5477
5838
  s0 = peg$FAILED;
@@ -5559,7 +5920,7 @@ function peg$parse(input, options) {
5559
5920
  s3 = null;
5560
5921
  }
5561
5922
  peg$savedPos = s0;
5562
- s0 = peg$f93(s1, s2);
5923
+ s0 = peg$f100(s1, s2);
5563
5924
  } else {
5564
5925
  peg$currPos = s0;
5565
5926
  s0 = peg$FAILED;
@@ -5613,7 +5974,7 @@ function peg$parse(input, options) {
5613
5974
  }
5614
5975
  if (s5 !== peg$FAILED) {
5615
5976
  peg$savedPos = s0;
5616
- s0 = peg$f94(s3);
5977
+ s0 = peg$f101(s3);
5617
5978
  } else {
5618
5979
  peg$currPos = s0;
5619
5980
  s0 = peg$FAILED;
@@ -5680,7 +6041,7 @@ function peg$parse(input, options) {
5680
6041
  }
5681
6042
  }
5682
6043
  peg$savedPos = s0;
5683
- s0 = peg$f95(s1, s2);
6044
+ s0 = peg$f102(s1, s2);
5684
6045
  } else {
5685
6046
  peg$currPos = s0;
5686
6047
  s0 = peg$FAILED;
@@ -5694,12 +6055,12 @@ function peg$parse(input, options) {
5694
6055
  if (s1 !== peg$FAILED) {
5695
6056
  s2 = peg$parse_();
5696
6057
  if (input.charCodeAt(peg$currPos) === 61) {
5697
- s3 = peg$c52;
6058
+ s3 = peg$c54;
5698
6059
  peg$currPos++;
5699
6060
  } else {
5700
6061
  s3 = peg$FAILED;
5701
6062
  if (peg$silentFails === 0) {
5702
- peg$fail(peg$e52);
6063
+ peg$fail(peg$e56);
5703
6064
  }
5704
6065
  }
5705
6066
  if (s3 !== peg$FAILED) {
@@ -5707,7 +6068,7 @@ function peg$parse(input, options) {
5707
6068
  s5 = peg$parseAttributeValue();
5708
6069
  if (s5 !== peg$FAILED) {
5709
6070
  peg$savedPos = s0;
5710
- s0 = peg$f96(s1, s5);
6071
+ s0 = peg$f103(s1, s5);
5711
6072
  } else {
5712
6073
  peg$currPos = s0;
5713
6074
  s0 = peg$FAILED;
@@ -5725,7 +6086,7 @@ function peg$parse(input, options) {
5725
6086
  s1 = peg$parseIdentifier();
5726
6087
  if (s1 !== peg$FAILED) {
5727
6088
  peg$savedPos = s0;
5728
- s1 = peg$f97(s1);
6089
+ s1 = peg$f104(s1);
5729
6090
  }
5730
6091
  s0 = s1;
5731
6092
  }
@@ -5758,7 +6119,7 @@ function peg$parse(input, options) {
5758
6119
  } else {
5759
6120
  s1 = peg$FAILED;
5760
6121
  if (peg$silentFails === 0) {
5761
- peg$fail(peg$e81);
6122
+ peg$fail(peg$e84);
5762
6123
  }
5763
6124
  }
5764
6125
  if (s1 !== peg$FAILED) {
@@ -5770,7 +6131,7 @@ function peg$parse(input, options) {
5770
6131
  } else {
5771
6132
  s1 = peg$FAILED;
5772
6133
  if (peg$silentFails === 0) {
5773
- peg$fail(peg$e81);
6134
+ peg$fail(peg$e84);
5774
6135
  }
5775
6136
  }
5776
6137
  }
@@ -5790,7 +6151,7 @@ function peg$parse(input, options) {
5790
6151
  if (s0 === peg$FAILED) {
5791
6152
  s1 = peg$FAILED;
5792
6153
  if (peg$silentFails === 0) {
5793
- peg$fail(peg$e82);
6154
+ peg$fail(peg$e85);
5794
6155
  }
5795
6156
  }
5796
6157
  return s0;
@@ -5798,13 +6159,13 @@ function peg$parse(input, options) {
5798
6159
  function peg$parseLineComment() {
5799
6160
  let s0, s1, s2, s3, s4;
5800
6161
  s0 = peg$currPos;
5801
- if (input.substr(peg$currPos, 2) === peg$c53) {
5802
- s1 = peg$c53;
6162
+ if (input.substr(peg$currPos, 2) === peg$c55) {
6163
+ s1 = peg$c55;
5803
6164
  peg$currPos += 2;
5804
6165
  } else {
5805
6166
  s1 = peg$FAILED;
5806
6167
  if (peg$silentFails === 0) {
5807
- peg$fail(peg$e54);
6168
+ peg$fail(peg$e58);
5808
6169
  }
5809
6170
  }
5810
6171
  if (s1 !== peg$FAILED) {
@@ -5815,7 +6176,7 @@ function peg$parse(input, options) {
5815
6176
  } else {
5816
6177
  s3 = peg$FAILED;
5817
6178
  if (peg$silentFails === 0) {
5818
- peg$fail(peg$e83);
6179
+ peg$fail(peg$e86);
5819
6180
  }
5820
6181
  }
5821
6182
  while (s3 !== peg$FAILED) {
@@ -5826,17 +6187,17 @@ function peg$parse(input, options) {
5826
6187
  } else {
5827
6188
  s3 = peg$FAILED;
5828
6189
  if (peg$silentFails === 0) {
5829
- peg$fail(peg$e83);
6190
+ peg$fail(peg$e86);
5830
6191
  }
5831
6192
  }
5832
6193
  }
5833
6194
  if (input.charCodeAt(peg$currPos) === 10) {
5834
- s3 = peg$c71;
6195
+ s3 = peg$c73;
5835
6196
  peg$currPos++;
5836
6197
  } else {
5837
6198
  s3 = peg$FAILED;
5838
6199
  if (peg$silentFails === 0) {
5839
- peg$fail(peg$e84);
6200
+ peg$fail(peg$e87);
5840
6201
  }
5841
6202
  }
5842
6203
  if (s3 === peg$FAILED) {
@@ -5848,7 +6209,7 @@ function peg$parse(input, options) {
5848
6209
  } else {
5849
6210
  s4 = peg$FAILED;
5850
6211
  if (peg$silentFails === 0) {
5851
- peg$fail(peg$e56);
6212
+ peg$fail(peg$e60);
5852
6213
  }
5853
6214
  }
5854
6215
  peg$silentFails--;
@@ -5875,13 +6236,13 @@ function peg$parse(input, options) {
5875
6236
  function peg$parseBlockComment() {
5876
6237
  let s0, s1, s2, s3, s4, s5;
5877
6238
  s0 = peg$currPos;
5878
- if (input.substr(peg$currPos, 2) === peg$c54) {
5879
- s1 = peg$c54;
6239
+ if (input.substr(peg$currPos, 2) === peg$c56) {
6240
+ s1 = peg$c56;
5880
6241
  peg$currPos += 2;
5881
6242
  } else {
5882
6243
  s1 = peg$FAILED;
5883
6244
  if (peg$silentFails === 0) {
5884
- peg$fail(peg$e55);
6245
+ peg$fail(peg$e59);
5885
6246
  }
5886
6247
  }
5887
6248
  if (s1 !== peg$FAILED) {
@@ -5889,13 +6250,13 @@ function peg$parse(input, options) {
5889
6250
  s3 = peg$currPos;
5890
6251
  s4 = peg$currPos;
5891
6252
  peg$silentFails++;
5892
- if (input.substr(peg$currPos, 2) === peg$c72) {
5893
- s5 = peg$c72;
6253
+ if (input.substr(peg$currPos, 2) === peg$c74) {
6254
+ s5 = peg$c74;
5894
6255
  peg$currPos += 2;
5895
6256
  } else {
5896
6257
  s5 = peg$FAILED;
5897
6258
  if (peg$silentFails === 0) {
5898
- peg$fail(peg$e85);
6259
+ peg$fail(peg$e88);
5899
6260
  }
5900
6261
  }
5901
6262
  peg$silentFails--;
@@ -5912,7 +6273,7 @@ function peg$parse(input, options) {
5912
6273
  } else {
5913
6274
  s5 = peg$FAILED;
5914
6275
  if (peg$silentFails === 0) {
5915
- peg$fail(peg$e56);
6276
+ peg$fail(peg$e60);
5916
6277
  }
5917
6278
  }
5918
6279
  if (s5 !== peg$FAILED) {
@@ -5931,13 +6292,13 @@ function peg$parse(input, options) {
5931
6292
  s3 = peg$currPos;
5932
6293
  s4 = peg$currPos;
5933
6294
  peg$silentFails++;
5934
- if (input.substr(peg$currPos, 2) === peg$c72) {
5935
- s5 = peg$c72;
6295
+ if (input.substr(peg$currPos, 2) === peg$c74) {
6296
+ s5 = peg$c74;
5936
6297
  peg$currPos += 2;
5937
6298
  } else {
5938
6299
  s5 = peg$FAILED;
5939
6300
  if (peg$silentFails === 0) {
5940
- peg$fail(peg$e85);
6301
+ peg$fail(peg$e88);
5941
6302
  }
5942
6303
  }
5943
6304
  peg$silentFails--;
@@ -5954,7 +6315,7 @@ function peg$parse(input, options) {
5954
6315
  } else {
5955
6316
  s5 = peg$FAILED;
5956
6317
  if (peg$silentFails === 0) {
5957
- peg$fail(peg$e56);
6318
+ peg$fail(peg$e60);
5958
6319
  }
5959
6320
  }
5960
6321
  if (s5 !== peg$FAILED) {
@@ -5969,13 +6330,13 @@ function peg$parse(input, options) {
5969
6330
  s3 = peg$FAILED;
5970
6331
  }
5971
6332
  }
5972
- if (input.substr(peg$currPos, 2) === peg$c72) {
5973
- s3 = peg$c72;
6333
+ if (input.substr(peg$currPos, 2) === peg$c74) {
6334
+ s3 = peg$c74;
5974
6335
  peg$currPos += 2;
5975
6336
  } else {
5976
6337
  s3 = peg$FAILED;
5977
6338
  if (peg$silentFails === 0) {
5978
- peg$fail(peg$e85);
6339
+ peg$fail(peg$e88);
5979
6340
  }
5980
6341
  }
5981
6342
  if (s3 !== peg$FAILED) {