@podlite/schema 0.0.13 → 0.0.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/esm/ast-helpers.d.ts +2 -0
  3. package/esm/ast-helpers.js +10 -0
  4. package/esm/ast-helpers.js.map +1 -0
  5. package/esm/ast-inerator.d.ts +6 -0
  6. package/esm/ast-inerator.js +57 -0
  7. package/esm/ast-inerator.js.map +1 -0
  8. package/esm/blocks-helpers.d.ts +32 -0
  9. package/esm/blocks-helpers.js +65 -0
  10. package/esm/blocks-helpers.js.map +1 -0
  11. package/esm/exportAny.d.ts +19 -0
  12. package/esm/exportAny.js +65 -0
  13. package/esm/exportAny.js.map +1 -0
  14. package/esm/exportHtml.d.ts +15 -0
  15. package/esm/exportHtml.js +279 -0
  16. package/esm/exportHtml.js.map +1 -0
  17. package/esm/grammar.d.ts +14 -0
  18. package/esm/grammar.js +6404 -0
  19. package/esm/grammar.js.map +1 -0
  20. package/esm/grammarfc.d.ts +14 -0
  21. package/esm/grammarfc.js +4218 -0
  22. package/esm/grammarfc.js.map +1 -0
  23. package/esm/helpers/config.d.ts +12 -0
  24. package/esm/helpers/config.js +52 -0
  25. package/esm/helpers/config.js.map +1 -0
  26. package/esm/helpers/corePlugins.d.ts +12 -0
  27. package/esm/helpers/corePlugins.js +23 -0
  28. package/esm/helpers/corePlugins.js.map +1 -0
  29. package/esm/helpers/handlers.d.ts +47 -0
  30. package/esm/helpers/handlers.js +107 -0
  31. package/esm/helpers/handlers.js.map +1 -0
  32. package/esm/helpers/ids.d.ts +18 -0
  33. package/esm/helpers/ids.js +69 -0
  34. package/esm/helpers/ids.js.map +1 -0
  35. package/esm/helpers/makeInterator.d.ts +5 -0
  36. package/esm/helpers/makeInterator.js +52 -0
  37. package/esm/helpers/makeInterator.js.map +1 -0
  38. package/esm/helpers/makeQuery.d.ts +47 -0
  39. package/esm/helpers/makeQuery.js +100 -0
  40. package/esm/helpers/makeQuery.js.map +1 -0
  41. package/esm/helpers/makeQuery.test.d.ts +1 -0
  42. package/esm/helpers/makeQuery.test.js +51 -0
  43. package/esm/helpers/makeQuery.test.js.map +1 -0
  44. package/esm/helpers/makeTransformer.d.ts +7 -0
  45. package/esm/helpers/makeTransformer.js +61 -0
  46. package/esm/helpers/makeTransformer.js.map +1 -0
  47. package/esm/helpers/plugins.d.ts +2 -0
  48. package/esm/helpers/plugins.js +23 -0
  49. package/esm/helpers/plugins.js.map +1 -0
  50. package/esm/index.d.ts +82 -0
  51. package/esm/index.js +123 -0
  52. package/esm/index.js.map +1 -0
  53. package/esm/pluggableParser.d.ts +27 -0
  54. package/esm/pluggableParser.js +71 -0
  55. package/esm/pluggableParser.js.map +1 -0
  56. package/esm/plugin-clean-location.d.ts +2 -0
  57. package/esm/plugin-clean-location.js +19 -0
  58. package/esm/plugin-clean-location.js.map +1 -0
  59. package/esm/plugin-defn-fill-term.d.ts +2 -0
  60. package/esm/plugin-defn-fill-term.js +50 -0
  61. package/esm/plugin-defn-fill-term.js.map +1 -0
  62. package/esm/plugin-formatting-codes.d.ts +3 -0
  63. package/esm/plugin-formatting-codes.js +53 -0
  64. package/esm/plugin-formatting-codes.js.map +1 -0
  65. package/esm/plugin-group-defn.d.ts +2 -0
  66. package/esm/plugin-group-defn.js +71 -0
  67. package/esm/plugin-group-defn.js.map +1 -0
  68. package/esm/plugin-group-items.d.ts +2 -0
  69. package/esm/plugin-group-items.js +79 -0
  70. package/esm/plugin-group-items.js.map +1 -0
  71. package/esm/plugin-heading.d.ts +2 -0
  72. package/esm/plugin-heading.js +33 -0
  73. package/esm/plugin-heading.js.map +1 -0
  74. package/esm/plugin-items.d.ts +2 -0
  75. package/esm/plugin-items.js +41 -0
  76. package/esm/plugin-items.js.map +1 -0
  77. package/esm/plugin-tables.d.ts +5 -0
  78. package/esm/plugin-tables.js +141 -0
  79. package/esm/plugin-tables.js.map +1 -0
  80. package/esm/plugin-vmargin.d.ts +3 -0
  81. package/esm/plugin-vmargin.js +29 -0
  82. package/esm/plugin-vmargin.js.map +1 -0
  83. package/esm/query-helpers.d.ts +28 -0
  84. package/esm/query-helpers.js +131 -0
  85. package/esm/query-helpers.js.map +1 -0
  86. package/esm/types.d.ts +342 -0
  87. package/esm/types.js +2 -0
  88. package/esm/types.js.map +1 -0
  89. package/esm/writer.d.ts +30 -0
  90. package/esm/writer.js +85 -0
  91. package/esm/writer.js.map +1 -0
  92. package/esm/writerHtml.d.ts +11 -0
  93. package/esm/writerHtml.js +29 -0
  94. package/esm/writerHtml.js.map +1 -0
  95. package/lib/grammar.js +29 -21
  96. package/lib/grammarfc.js +1098 -243
  97. package/lib/plugin-formatting-codes.js +2 -1
  98. package/lib/types.d.ts +9 -1
  99. package/package.json +11 -8
  100. package/schema/AstTree.json +116 -0
  101. package/schema/PodliteDocument.json +116 -0
@@ -0,0 +1,4218 @@
1
+ /*
2
+ * Generated by PEG.js 0.10.0.
3
+ *
4
+ * http://pegjs.org/
5
+ */
6
+ "use strict";
7
+ function peg$subclass(child, parent) {
8
+ function ctor() { this.constructor = child; }
9
+ ctor.prototype = parent.prototype;
10
+ child.prototype = new ctor();
11
+ }
12
+ function peg$SyntaxError(message, expected, found, location) {
13
+ this.message = message;
14
+ this.expected = expected;
15
+ this.found = found;
16
+ this.location = location;
17
+ this.name = "SyntaxError";
18
+ if (typeof Error.captureStackTrace === "function") {
19
+ Error.captureStackTrace(this, peg$SyntaxError);
20
+ }
21
+ }
22
+ peg$subclass(peg$SyntaxError, Error);
23
+ peg$SyntaxError.buildMessage = function (expected, found) {
24
+ var DESCRIBE_EXPECTATION_FNS = {
25
+ literal: function (expectation) {
26
+ return "\"" + literalEscape(expectation.text) + "\"";
27
+ },
28
+ "class": function (expectation) {
29
+ var escapedParts = "", i;
30
+ for (i = 0; i < expectation.parts.length; i++) {
31
+ escapedParts += expectation.parts[i] instanceof Array
32
+ ? classEscape(expectation.parts[i][0]) + "-" + classEscape(expectation.parts[i][1])
33
+ : classEscape(expectation.parts[i]);
34
+ }
35
+ return "[" + (expectation.inverted ? "^" : "") + escapedParts + "]";
36
+ },
37
+ any: function (expectation) {
38
+ return "any character";
39
+ },
40
+ end: function (expectation) {
41
+ return "end of input";
42
+ },
43
+ other: function (expectation) {
44
+ return expectation.description;
45
+ }
46
+ };
47
+ function hex(ch) {
48
+ return ch.charCodeAt(0).toString(16).toUpperCase();
49
+ }
50
+ function literalEscape(s) {
51
+ return s
52
+ .replace(/\\/g, '\\\\')
53
+ .replace(/"/g, '\\"')
54
+ .replace(/\0/g, '\\0')
55
+ .replace(/\t/g, '\\t')
56
+ .replace(/\n/g, '\\n')
57
+ .replace(/\r/g, '\\r')
58
+ .replace(/[\x00-\x0F]/g, function (ch) { return '\\x0' + hex(ch); })
59
+ .replace(/[\x10-\x1F\x7F-\x9F]/g, function (ch) { return '\\x' + hex(ch); });
60
+ }
61
+ function classEscape(s) {
62
+ return s
63
+ .replace(/\\/g, '\\\\')
64
+ .replace(/\]/g, '\\]')
65
+ .replace(/\^/g, '\\^')
66
+ .replace(/-/g, '\\-')
67
+ .replace(/\0/g, '\\0')
68
+ .replace(/\t/g, '\\t')
69
+ .replace(/\n/g, '\\n')
70
+ .replace(/\r/g, '\\r')
71
+ .replace(/[\x00-\x0F]/g, function (ch) { return '\\x0' + hex(ch); })
72
+ .replace(/[\x10-\x1F\x7F-\x9F]/g, function (ch) { return '\\x' + hex(ch); });
73
+ }
74
+ function describeExpectation(expectation) {
75
+ return DESCRIBE_EXPECTATION_FNS[expectation.type](expectation);
76
+ }
77
+ function describeExpected(expected) {
78
+ var descriptions = new Array(expected.length), i, j;
79
+ for (i = 0; i < expected.length; i++) {
80
+ descriptions[i] = describeExpectation(expected[i]);
81
+ }
82
+ descriptions.sort();
83
+ if (descriptions.length > 0) {
84
+ for (i = 1, j = 1; i < descriptions.length; i++) {
85
+ if (descriptions[i - 1] !== descriptions[i]) {
86
+ descriptions[j] = descriptions[i];
87
+ j++;
88
+ }
89
+ }
90
+ descriptions.length = j;
91
+ }
92
+ switch (descriptions.length) {
93
+ case 1:
94
+ return descriptions[0];
95
+ case 2:
96
+ return descriptions[0] + " or " + descriptions[1];
97
+ default:
98
+ return descriptions.slice(0, -1).join(", ")
99
+ + ", or "
100
+ + descriptions[descriptions.length - 1];
101
+ }
102
+ }
103
+ function describeFound(found) {
104
+ return found ? "\"" + literalEscape(found) + "\"" : "end of input";
105
+ }
106
+ return "Expected " + describeExpected(expected) + " but " + describeFound(found) + " found.";
107
+ };
108
+ function peg$parse(input, options) {
109
+ options = options !== void 0 ? options : {};
110
+ var peg$FAILED = {}, peg$startRuleFunctions = { Expression: peg$parseExpression }, peg$startRuleFunction = peg$parseExpression, peg$c0 = "A", peg$c1 = peg$literalExpectation("A", false), peg$c2 = "V", peg$c3 = peg$literalExpectation("V", false), peg$c4 = "R", peg$c5 = peg$literalExpectation("R", false), peg$c6 = "B", peg$c7 = peg$literalExpectation("B", false), peg$c8 = "I", peg$c9 = peg$literalExpectation("I", false), peg$c10 = "C", peg$c11 = peg$literalExpectation("C", false), peg$c12 = "D", peg$c13 = peg$literalExpectation("D", false), peg$c14 = "E", peg$c15 = peg$literalExpectation("E", false), peg$c16 = "K", peg$c17 = peg$literalExpectation("K", false), peg$c18 = "L", peg$c19 = peg$literalExpectation("L", false), peg$c20 = "S", peg$c21 = peg$literalExpectation("S", false), peg$c22 = "T", peg$c23 = peg$literalExpectation("T", false), peg$c24 = "U", peg$c25 = peg$literalExpectation("U", false), peg$c26 = "Z", peg$c27 = peg$literalExpectation("Z", false), peg$c28 = "N", peg$c29 = peg$literalExpectation("N", false), peg$c30 = "X", peg$c31 = peg$literalExpectation("X", false), peg$c32 = /^[a-zA-Z]/, peg$c33 = peg$classExpectation([["a", "z"], ["A", "Z"]], false, false), peg$c34 = /^[a-zA-Z0-9_\-]/, peg$c35 = peg$classExpectation([["a", "z"], ["A", "Z"], ["0", "9"], "_", "-"], false, false), peg$c36 = /^[ \t\f]/, peg$c37 = peg$classExpectation([" ", "\t", "\f"], false, false), peg$c38 = function (char) {
111
+ return !(options.allowed || []).length //allow all formatting codes by default
112
+ ||
113
+ (options.allowed || []).includes(char);
114
+ }, peg$c39 = peg$anyExpectation(), peg$c40 = function (id) { return id; }, peg$c41 = function (name) { return name === "A"; }, peg$c42 = function (name, content) {
115
+ return {
116
+ content,
117
+ 'type': "fcode",
118
+ name,
119
+ };
120
+ }, peg$c43 = function (name) { return name === "D"; }, peg$c44 = function (name, content, t) { return flattenDeep(t); }, peg$c45 = function (name, content, synonyms) {
121
+ return {
122
+ content,
123
+ 'type': "fcode",
124
+ name,
125
+ synonyms
126
+ };
127
+ }, peg$c46 = function (name) { return name === "V"; }, peg$c47 = function (name, content) {
128
+ return {
129
+ content,
130
+ 'type': "fcode",
131
+ name,
132
+ };
133
+ }, peg$c48 = "<", peg$c49 = peg$literalExpectation("<", false), peg$c50 = ">", peg$c51 = peg$literalExpectation(">", false), peg$c52 = function () { return text(); }, peg$c53 = "\xAB", peg$c54 = peg$literalExpectation("\xAB", false), peg$c55 = "\xBB", peg$c56 = peg$literalExpectation("\xBB", false), peg$c57 = function (text) { return text; }, peg$c58 = function (name) { return name.code === "C"; }, peg$c59 = function (name, content, end_tag) { return end_tag === name.end_tag; }, peg$c60 = function (name, content, end_tag) {
134
+ return {
135
+ content,
136
+ 'type': "fcode",
137
+ name: name.code,
138
+ };
139
+ }, peg$c61 = "|", peg$c62 = peg$literalExpectation("|", false), peg$c63 = function (text) { return text; }, peg$c64 = function (name) { return name.code === "L"; }, peg$c65 = function (name, content, t) { return t; }, peg$c66 = function (name, content, meta, end_tag) { return end_tag === name.end_tag; }, peg$c67 = function (name, content, meta, end_tag) {
140
+ return {
141
+ content,
142
+ 'type': "fcode",
143
+ name: name.code,
144
+ meta
145
+ };
146
+ }, peg$c68 = ";", peg$c69 = peg$literalExpectation(";", false), peg$c70 = /^[ \xA0\u2001\t\f\u2008]/, peg$c71 = peg$classExpectation([" ", "\xA0", "\u2001", "\t", "\f", "\u2008"], false, false), peg$c72 = function (code, codes) { return flattenDeep([code, codes]); }, peg$c73 = function (code) { return [code]; }, peg$c74 = function (name) { return name === "X"; }, peg$c75 = function (name, content, entry) {
147
+ return {
148
+ content,
149
+ 'type': "fcode",
150
+ name,
151
+ entry
152
+ };
153
+ }, peg$c76 = function (name) { return name === "S"; }, peg$c77 = function (name) { return name === "Z"; }, peg$c78 = /^[0-9]/, peg$c79 = peg$classExpectation([["0", "9"]], false, false), peg$c80 = "0d", peg$c81 = peg$literalExpectation("0d", false), peg$c82 = function (number) { return parseInt(number, 10); }, peg$c83 = "0o", peg$c84 = peg$literalExpectation("0o", false), peg$c85 = function (number) { return parseInt(number, 8); }, peg$c86 = "0b", peg$c87 = peg$literalExpectation("0b", false), peg$c88 = function (number) { return parseInt(number, 2); }, peg$c89 = "0x", peg$c90 = peg$literalExpectation("0x", false), peg$c91 = /^[0-9A-Fa-f]/, peg$c92 = peg$classExpectation([["0", "9"], ["A", "F"], ["a", "f"]], false, false), peg$c93 = function () { return parseInt(text()); }, peg$c94 = function (number) { return { type: 'number', value: parseInt(number, 10) }; }, peg$c95 = function (name) { return name === "E"; }, peg$c96 = function (name, t) { return flattenDeep(t); }, peg$c97 = function (name, content) {
154
+ return {
155
+ content: content ? content : [],
156
+ 'type': "fcode",
157
+ name
158
+ };
159
+ }, peg$c98 = function (name) { return name; }, peg$c99 = function (name, begin_tag) { return { code: name, begin_tag, end_tag: get_pair_tag(begin_tag) }; }, peg$c100 = function (name) { return name.code !== 'C'; }, peg$c101 = function (name, content, end_tag) { return end_tag === name.end_tag; }, peg$c102 = function (name, content, end_tag) { return { content, type: 'fcode', name: name.code }; }, peg$currPos = 0, peg$savedPos = 0, peg$posDetailsCache = [{ line: 1, column: 1 }], peg$maxFailPos = 0, peg$maxFailExpected = [], peg$silentFails = 0, peg$result;
160
+ if ("startRule" in options) {
161
+ if (!(options.startRule in peg$startRuleFunctions)) {
162
+ throw new Error("Can't start parsing from rule \"" + options.startRule + "\".");
163
+ }
164
+ peg$startRuleFunction = peg$startRuleFunctions[options.startRule];
165
+ }
166
+ function text() {
167
+ return input.substring(peg$savedPos, peg$currPos);
168
+ }
169
+ function location() {
170
+ return peg$computeLocation(peg$savedPos, peg$currPos);
171
+ }
172
+ function expected(description, location) {
173
+ location = location !== void 0 ? location : peg$computeLocation(peg$savedPos, peg$currPos);
174
+ throw peg$buildStructuredError([peg$otherExpectation(description)], input.substring(peg$savedPos, peg$currPos), location);
175
+ }
176
+ function error(message, location) {
177
+ location = location !== void 0 ? location : peg$computeLocation(peg$savedPos, peg$currPos);
178
+ throw peg$buildSimpleError(message, location);
179
+ }
180
+ function peg$literalExpectation(text, ignoreCase) {
181
+ return { type: "literal", text: text, ignoreCase: ignoreCase };
182
+ }
183
+ function peg$classExpectation(parts, inverted, ignoreCase) {
184
+ return { type: "class", parts: parts, inverted: inverted, ignoreCase: ignoreCase };
185
+ }
186
+ function peg$anyExpectation() {
187
+ return { type: "any" };
188
+ }
189
+ function peg$endExpectation() {
190
+ return { type: "end" };
191
+ }
192
+ function peg$otherExpectation(description) {
193
+ return { type: "other", description: description };
194
+ }
195
+ function peg$computePosDetails(pos) {
196
+ var details = peg$posDetailsCache[pos], p;
197
+ if (details) {
198
+ return details;
199
+ }
200
+ else {
201
+ p = pos - 1;
202
+ while (!peg$posDetailsCache[p]) {
203
+ p--;
204
+ }
205
+ details = peg$posDetailsCache[p];
206
+ details = {
207
+ line: details.line,
208
+ column: details.column
209
+ };
210
+ while (p < pos) {
211
+ if (input.charCodeAt(p) === 10) {
212
+ details.line++;
213
+ details.column = 1;
214
+ }
215
+ else {
216
+ details.column++;
217
+ }
218
+ p++;
219
+ }
220
+ peg$posDetailsCache[pos] = details;
221
+ return details;
222
+ }
223
+ }
224
+ function peg$computeLocation(startPos, endPos) {
225
+ var startPosDetails = peg$computePosDetails(startPos), endPosDetails = peg$computePosDetails(endPos);
226
+ return {
227
+ start: {
228
+ offset: startPos,
229
+ line: startPosDetails.line,
230
+ column: startPosDetails.column
231
+ },
232
+ end: {
233
+ offset: endPos,
234
+ line: endPosDetails.line,
235
+ column: endPosDetails.column
236
+ }
237
+ };
238
+ }
239
+ function peg$fail(expected) {
240
+ if (peg$currPos < peg$maxFailPos) {
241
+ return;
242
+ }
243
+ if (peg$currPos > peg$maxFailPos) {
244
+ peg$maxFailPos = peg$currPos;
245
+ peg$maxFailExpected = [];
246
+ }
247
+ peg$maxFailExpected.push(expected);
248
+ }
249
+ function peg$buildSimpleError(message, location) {
250
+ return new peg$SyntaxError(message, null, null, location);
251
+ }
252
+ function peg$buildStructuredError(expected, found, location) {
253
+ return new peg$SyntaxError(peg$SyntaxError.buildMessage(expected, found), expected, found, location);
254
+ }
255
+ function peg$parseExpression() {
256
+ var s0, s1;
257
+ s0 = [];
258
+ s1 = peg$parseallowed_rules();
259
+ if (s1 === peg$FAILED) {
260
+ s1 = peg$parsecode_2();
261
+ if (s1 === peg$FAILED) {
262
+ s1 = peg$parsetext();
263
+ if (s1 === peg$FAILED) {
264
+ s1 = peg$parseraw_text();
265
+ }
266
+ }
267
+ }
268
+ while (s1 !== peg$FAILED) {
269
+ s0.push(s1);
270
+ s1 = peg$parseallowed_rules();
271
+ if (s1 === peg$FAILED) {
272
+ s1 = peg$parsecode_2();
273
+ if (s1 === peg$FAILED) {
274
+ s1 = peg$parsetext();
275
+ if (s1 === peg$FAILED) {
276
+ s1 = peg$parseraw_text();
277
+ }
278
+ }
279
+ }
280
+ }
281
+ return s0;
282
+ }
283
+ function peg$parseallowed_rules() {
284
+ var s0;
285
+ s0 = peg$parsecode_A();
286
+ if (s0 === peg$FAILED) {
287
+ s0 = peg$parsecode_S();
288
+ if (s0 === peg$FAILED) {
289
+ s0 = peg$parsecode_C();
290
+ if (s0 === peg$FAILED) {
291
+ s0 = peg$parsecode_D();
292
+ if (s0 === peg$FAILED) {
293
+ s0 = peg$parsecode_E();
294
+ if (s0 === peg$FAILED) {
295
+ s0 = peg$parsecode_V();
296
+ if (s0 === peg$FAILED) {
297
+ s0 = peg$parsecode_L();
298
+ if (s0 === peg$FAILED) {
299
+ s0 = peg$parsecode_X();
300
+ if (s0 === peg$FAILED) {
301
+ s0 = peg$parsecode_Z();
302
+ }
303
+ }
304
+ }
305
+ }
306
+ }
307
+ }
308
+ }
309
+ }
310
+ return s0;
311
+ }
312
+ function peg$parseallpossible_codes() {
313
+ var s0;
314
+ if (input.charCodeAt(peg$currPos) === 65) {
315
+ s0 = peg$c0;
316
+ peg$currPos++;
317
+ }
318
+ else {
319
+ s0 = peg$FAILED;
320
+ if (peg$silentFails === 0) {
321
+ peg$fail(peg$c1);
322
+ }
323
+ }
324
+ if (s0 === peg$FAILED) {
325
+ if (input.charCodeAt(peg$currPos) === 86) {
326
+ s0 = peg$c2;
327
+ peg$currPos++;
328
+ }
329
+ else {
330
+ s0 = peg$FAILED;
331
+ if (peg$silentFails === 0) {
332
+ peg$fail(peg$c3);
333
+ }
334
+ }
335
+ if (s0 === peg$FAILED) {
336
+ if (input.charCodeAt(peg$currPos) === 82) {
337
+ s0 = peg$c4;
338
+ peg$currPos++;
339
+ }
340
+ else {
341
+ s0 = peg$FAILED;
342
+ if (peg$silentFails === 0) {
343
+ peg$fail(peg$c5);
344
+ }
345
+ }
346
+ if (s0 === peg$FAILED) {
347
+ if (input.charCodeAt(peg$currPos) === 66) {
348
+ s0 = peg$c6;
349
+ peg$currPos++;
350
+ }
351
+ else {
352
+ s0 = peg$FAILED;
353
+ if (peg$silentFails === 0) {
354
+ peg$fail(peg$c7);
355
+ }
356
+ }
357
+ if (s0 === peg$FAILED) {
358
+ if (input.charCodeAt(peg$currPos) === 73) {
359
+ s0 = peg$c8;
360
+ peg$currPos++;
361
+ }
362
+ else {
363
+ s0 = peg$FAILED;
364
+ if (peg$silentFails === 0) {
365
+ peg$fail(peg$c9);
366
+ }
367
+ }
368
+ if (s0 === peg$FAILED) {
369
+ if (input.charCodeAt(peg$currPos) === 67) {
370
+ s0 = peg$c10;
371
+ peg$currPos++;
372
+ }
373
+ else {
374
+ s0 = peg$FAILED;
375
+ if (peg$silentFails === 0) {
376
+ peg$fail(peg$c11);
377
+ }
378
+ }
379
+ if (s0 === peg$FAILED) {
380
+ if (input.charCodeAt(peg$currPos) === 68) {
381
+ s0 = peg$c12;
382
+ peg$currPos++;
383
+ }
384
+ else {
385
+ s0 = peg$FAILED;
386
+ if (peg$silentFails === 0) {
387
+ peg$fail(peg$c13);
388
+ }
389
+ }
390
+ if (s0 === peg$FAILED) {
391
+ if (input.charCodeAt(peg$currPos) === 69) {
392
+ s0 = peg$c14;
393
+ peg$currPos++;
394
+ }
395
+ else {
396
+ s0 = peg$FAILED;
397
+ if (peg$silentFails === 0) {
398
+ peg$fail(peg$c15);
399
+ }
400
+ }
401
+ if (s0 === peg$FAILED) {
402
+ if (input.charCodeAt(peg$currPos) === 75) {
403
+ s0 = peg$c16;
404
+ peg$currPos++;
405
+ }
406
+ else {
407
+ s0 = peg$FAILED;
408
+ if (peg$silentFails === 0) {
409
+ peg$fail(peg$c17);
410
+ }
411
+ }
412
+ if (s0 === peg$FAILED) {
413
+ if (input.charCodeAt(peg$currPos) === 76) {
414
+ s0 = peg$c18;
415
+ peg$currPos++;
416
+ }
417
+ else {
418
+ s0 = peg$FAILED;
419
+ if (peg$silentFails === 0) {
420
+ peg$fail(peg$c19);
421
+ }
422
+ }
423
+ if (s0 === peg$FAILED) {
424
+ if (input.charCodeAt(peg$currPos) === 83) {
425
+ s0 = peg$c20;
426
+ peg$currPos++;
427
+ }
428
+ else {
429
+ s0 = peg$FAILED;
430
+ if (peg$silentFails === 0) {
431
+ peg$fail(peg$c21);
432
+ }
433
+ }
434
+ if (s0 === peg$FAILED) {
435
+ if (input.charCodeAt(peg$currPos) === 84) {
436
+ s0 = peg$c22;
437
+ peg$currPos++;
438
+ }
439
+ else {
440
+ s0 = peg$FAILED;
441
+ if (peg$silentFails === 0) {
442
+ peg$fail(peg$c23);
443
+ }
444
+ }
445
+ if (s0 === peg$FAILED) {
446
+ if (input.charCodeAt(peg$currPos) === 85) {
447
+ s0 = peg$c24;
448
+ peg$currPos++;
449
+ }
450
+ else {
451
+ s0 = peg$FAILED;
452
+ if (peg$silentFails === 0) {
453
+ peg$fail(peg$c25);
454
+ }
455
+ }
456
+ if (s0 === peg$FAILED) {
457
+ if (input.charCodeAt(peg$currPos) === 90) {
458
+ s0 = peg$c26;
459
+ peg$currPos++;
460
+ }
461
+ else {
462
+ s0 = peg$FAILED;
463
+ if (peg$silentFails === 0) {
464
+ peg$fail(peg$c27);
465
+ }
466
+ }
467
+ if (s0 === peg$FAILED) {
468
+ if (input.charCodeAt(peg$currPos) === 78) {
469
+ s0 = peg$c28;
470
+ peg$currPos++;
471
+ }
472
+ else {
473
+ s0 = peg$FAILED;
474
+ if (peg$silentFails === 0) {
475
+ peg$fail(peg$c29);
476
+ }
477
+ }
478
+ if (s0 === peg$FAILED) {
479
+ if (input.charCodeAt(peg$currPos) === 88) {
480
+ s0 = peg$c30;
481
+ peg$currPos++;
482
+ }
483
+ else {
484
+ s0 = peg$FAILED;
485
+ if (peg$silentFails === 0) {
486
+ peg$fail(peg$c31);
487
+ }
488
+ }
489
+ }
490
+ }
491
+ }
492
+ }
493
+ }
494
+ }
495
+ }
496
+ }
497
+ }
498
+ }
499
+ }
500
+ }
501
+ }
502
+ }
503
+ }
504
+ return s0;
505
+ }
506
+ function peg$parseidentifier() {
507
+ var s0, s1, s2, s3, s4;
508
+ s0 = peg$currPos;
509
+ s1 = peg$currPos;
510
+ if (peg$c32.test(input.charAt(peg$currPos))) {
511
+ s2 = input.charAt(peg$currPos);
512
+ peg$currPos++;
513
+ }
514
+ else {
515
+ s2 = peg$FAILED;
516
+ if (peg$silentFails === 0) {
517
+ peg$fail(peg$c33);
518
+ }
519
+ }
520
+ if (s2 !== peg$FAILED) {
521
+ s3 = [];
522
+ if (peg$c34.test(input.charAt(peg$currPos))) {
523
+ s4 = input.charAt(peg$currPos);
524
+ peg$currPos++;
525
+ }
526
+ else {
527
+ s4 = peg$FAILED;
528
+ if (peg$silentFails === 0) {
529
+ peg$fail(peg$c35);
530
+ }
531
+ }
532
+ if (s4 !== peg$FAILED) {
533
+ while (s4 !== peg$FAILED) {
534
+ s3.push(s4);
535
+ if (peg$c34.test(input.charAt(peg$currPos))) {
536
+ s4 = input.charAt(peg$currPos);
537
+ peg$currPos++;
538
+ }
539
+ else {
540
+ s4 = peg$FAILED;
541
+ if (peg$silentFails === 0) {
542
+ peg$fail(peg$c35);
543
+ }
544
+ }
545
+ }
546
+ }
547
+ else {
548
+ s3 = peg$FAILED;
549
+ }
550
+ if (s3 !== peg$FAILED) {
551
+ s2 = [s2, s3];
552
+ s1 = s2;
553
+ }
554
+ else {
555
+ peg$currPos = s1;
556
+ s1 = peg$FAILED;
557
+ }
558
+ }
559
+ else {
560
+ peg$currPos = s1;
561
+ s1 = peg$FAILED;
562
+ }
563
+ if (s1 !== peg$FAILED) {
564
+ s0 = input.substring(s0, peg$currPos);
565
+ }
566
+ else {
567
+ s0 = s1;
568
+ }
569
+ return s0;
570
+ }
571
+ function peg$parse_() {
572
+ var s0, s1;
573
+ s0 = [];
574
+ if (peg$c36.test(input.charAt(peg$currPos))) {
575
+ s1 = input.charAt(peg$currPos);
576
+ peg$currPos++;
577
+ }
578
+ else {
579
+ s1 = peg$FAILED;
580
+ if (peg$silentFails === 0) {
581
+ peg$fail(peg$c37);
582
+ }
583
+ }
584
+ while (s1 !== peg$FAILED) {
585
+ s0.push(s1);
586
+ if (peg$c36.test(input.charAt(peg$currPos))) {
587
+ s1 = input.charAt(peg$currPos);
588
+ peg$currPos++;
589
+ }
590
+ else {
591
+ s1 = peg$FAILED;
592
+ if (peg$silentFails === 0) {
593
+ peg$fail(peg$c37);
594
+ }
595
+ }
596
+ }
597
+ return s0;
598
+ }
599
+ function peg$parseallowed_code() {
600
+ var s0, s1, s2;
601
+ s0 = peg$currPos;
602
+ s1 = peg$parseallpossible_codes();
603
+ if (s1 !== peg$FAILED) {
604
+ peg$savedPos = peg$currPos;
605
+ s2 = peg$c38(s1);
606
+ if (s2) {
607
+ s2 = void 0;
608
+ }
609
+ else {
610
+ s2 = peg$FAILED;
611
+ }
612
+ if (s2 !== peg$FAILED) {
613
+ s1 = [s1, s2];
614
+ s0 = s1;
615
+ }
616
+ else {
617
+ peg$currPos = s0;
618
+ s0 = peg$FAILED;
619
+ }
620
+ }
621
+ else {
622
+ peg$currPos = s0;
623
+ s0 = peg$FAILED;
624
+ }
625
+ return s0;
626
+ }
627
+ function peg$parseraw_text() {
628
+ var s0, s1;
629
+ s0 = peg$currPos;
630
+ if (input.length > peg$currPos) {
631
+ s1 = input.charAt(peg$currPos);
632
+ peg$currPos++;
633
+ }
634
+ else {
635
+ s1 = peg$FAILED;
636
+ if (peg$silentFails === 0) {
637
+ peg$fail(peg$c39);
638
+ }
639
+ }
640
+ if (s1 !== peg$FAILED) {
641
+ s0 = input.substring(s0, peg$currPos);
642
+ }
643
+ else {
644
+ s0 = s1;
645
+ }
646
+ return s0;
647
+ }
648
+ function peg$parsecontent_A() {
649
+ var s0, s1, s2, s3, s4;
650
+ s0 = peg$currPos;
651
+ s1 = peg$currPos;
652
+ peg$silentFails++;
653
+ s2 = peg$parseend_code();
654
+ peg$silentFails--;
655
+ if (s2 === peg$FAILED) {
656
+ s1 = void 0;
657
+ }
658
+ else {
659
+ peg$currPos = s1;
660
+ s1 = peg$FAILED;
661
+ }
662
+ if (s1 !== peg$FAILED) {
663
+ s2 = peg$parse_();
664
+ if (s2 !== peg$FAILED) {
665
+ s3 = peg$currPos;
666
+ s4 = peg$parseidentifier();
667
+ if (s4 === peg$FAILED) {
668
+ s4 = null;
669
+ }
670
+ if (s4 !== peg$FAILED) {
671
+ s3 = input.substring(s3, peg$currPos);
672
+ }
673
+ else {
674
+ s3 = s4;
675
+ }
676
+ if (s3 !== peg$FAILED) {
677
+ s4 = peg$parse_();
678
+ if (s4 !== peg$FAILED) {
679
+ peg$savedPos = s0;
680
+ s1 = peg$c40(s3);
681
+ s0 = s1;
682
+ }
683
+ else {
684
+ peg$currPos = s0;
685
+ s0 = peg$FAILED;
686
+ }
687
+ }
688
+ else {
689
+ peg$currPos = s0;
690
+ s0 = peg$FAILED;
691
+ }
692
+ }
693
+ else {
694
+ peg$currPos = s0;
695
+ s0 = peg$FAILED;
696
+ }
697
+ }
698
+ else {
699
+ peg$currPos = s0;
700
+ s0 = peg$FAILED;
701
+ }
702
+ if (s0 === peg$FAILED) {
703
+ s0 = null;
704
+ }
705
+ return s0;
706
+ }
707
+ function peg$parsecode_A() {
708
+ var s0, s1, s2, s3, s4;
709
+ s0 = peg$currPos;
710
+ s1 = peg$parsestart_code();
711
+ if (s1 !== peg$FAILED) {
712
+ peg$savedPos = peg$currPos;
713
+ s2 = peg$c41(s1);
714
+ if (s2) {
715
+ s2 = void 0;
716
+ }
717
+ else {
718
+ s2 = peg$FAILED;
719
+ }
720
+ if (s2 !== peg$FAILED) {
721
+ s3 = peg$parsecontent_A();
722
+ if (s3 !== peg$FAILED) {
723
+ s4 = peg$parseend_code();
724
+ if (s4 !== peg$FAILED) {
725
+ peg$savedPos = s0;
726
+ s1 = peg$c42(s1, s3);
727
+ s0 = s1;
728
+ }
729
+ else {
730
+ peg$currPos = s0;
731
+ s0 = peg$FAILED;
732
+ }
733
+ }
734
+ else {
735
+ peg$currPos = s0;
736
+ s0 = peg$FAILED;
737
+ }
738
+ }
739
+ else {
740
+ peg$currPos = s0;
741
+ s0 = peg$FAILED;
742
+ }
743
+ }
744
+ else {
745
+ peg$currPos = s0;
746
+ s0 = peg$FAILED;
747
+ }
748
+ return s0;
749
+ }
750
+ function peg$parsecode_D() {
751
+ var s0, s1, s2, s3, s4, s5, s6, s7;
752
+ s0 = peg$currPos;
753
+ s1 = peg$parsestart_code();
754
+ if (s1 !== peg$FAILED) {
755
+ peg$savedPos = peg$currPos;
756
+ s2 = peg$c43(s1);
757
+ if (s2) {
758
+ s2 = void 0;
759
+ }
760
+ else {
761
+ s2 = peg$FAILED;
762
+ }
763
+ if (s2 !== peg$FAILED) {
764
+ s3 = [];
765
+ s4 = peg$parsetext_L();
766
+ if (s4 !== peg$FAILED) {
767
+ while (s4 !== peg$FAILED) {
768
+ s3.push(s4);
769
+ s4 = peg$parsetext_L();
770
+ }
771
+ }
772
+ else {
773
+ s3 = peg$FAILED;
774
+ }
775
+ if (s3 !== peg$FAILED) {
776
+ s4 = peg$currPos;
777
+ s5 = peg$parseseparator();
778
+ if (s5 !== peg$FAILED) {
779
+ s6 = [];
780
+ s7 = peg$parsearray_items();
781
+ while (s7 !== peg$FAILED) {
782
+ s6.push(s7);
783
+ s7 = peg$parsearray_items();
784
+ }
785
+ if (s6 !== peg$FAILED) {
786
+ peg$savedPos = s4;
787
+ s5 = peg$c44(s1, s3, s6);
788
+ s4 = s5;
789
+ }
790
+ else {
791
+ peg$currPos = s4;
792
+ s4 = peg$FAILED;
793
+ }
794
+ }
795
+ else {
796
+ peg$currPos = s4;
797
+ s4 = peg$FAILED;
798
+ }
799
+ if (s4 === peg$FAILED) {
800
+ s4 = null;
801
+ }
802
+ if (s4 !== peg$FAILED) {
803
+ s5 = peg$parseend_code();
804
+ if (s5 !== peg$FAILED) {
805
+ peg$savedPos = s0;
806
+ s1 = peg$c45(s1, s3, s4);
807
+ s0 = s1;
808
+ }
809
+ else {
810
+ peg$currPos = s0;
811
+ s0 = peg$FAILED;
812
+ }
813
+ }
814
+ else {
815
+ peg$currPos = s0;
816
+ s0 = peg$FAILED;
817
+ }
818
+ }
819
+ else {
820
+ peg$currPos = s0;
821
+ s0 = peg$FAILED;
822
+ }
823
+ }
824
+ else {
825
+ peg$currPos = s0;
826
+ s0 = peg$FAILED;
827
+ }
828
+ }
829
+ else {
830
+ peg$currPos = s0;
831
+ s0 = peg$FAILED;
832
+ }
833
+ return s0;
834
+ }
835
+ function peg$parsecode_V() {
836
+ var s0, s1, s2, s3, s4, s5;
837
+ s0 = peg$currPos;
838
+ s1 = peg$parsestart_code();
839
+ if (s1 !== peg$FAILED) {
840
+ peg$savedPos = peg$currPos;
841
+ s2 = peg$c46(s1);
842
+ if (s2) {
843
+ s2 = void 0;
844
+ }
845
+ else {
846
+ s2 = peg$FAILED;
847
+ }
848
+ if (s2 !== peg$FAILED) {
849
+ s3 = peg$currPos;
850
+ s4 = [];
851
+ s5 = peg$parsetext_C();
852
+ if (s5 !== peg$FAILED) {
853
+ while (s5 !== peg$FAILED) {
854
+ s4.push(s5);
855
+ s5 = peg$parsetext_C();
856
+ }
857
+ }
858
+ else {
859
+ s4 = peg$FAILED;
860
+ }
861
+ if (s4 !== peg$FAILED) {
862
+ s3 = input.substring(s3, peg$currPos);
863
+ }
864
+ else {
865
+ s3 = s4;
866
+ }
867
+ if (s3 !== peg$FAILED) {
868
+ s4 = peg$parseend_code();
869
+ if (s4 !== peg$FAILED) {
870
+ peg$savedPos = s0;
871
+ s1 = peg$c47(s1, s3);
872
+ s0 = s1;
873
+ }
874
+ else {
875
+ peg$currPos = s0;
876
+ s0 = peg$FAILED;
877
+ }
878
+ }
879
+ else {
880
+ peg$currPos = s0;
881
+ s0 = peg$FAILED;
882
+ }
883
+ }
884
+ else {
885
+ peg$currPos = s0;
886
+ s0 = peg$FAILED;
887
+ }
888
+ }
889
+ else {
890
+ peg$currPos = s0;
891
+ s0 = peg$FAILED;
892
+ }
893
+ return s0;
894
+ }
895
+ function peg$parseallowed_code_C() {
896
+ var s0;
897
+ if (input.charCodeAt(peg$currPos) === 66) {
898
+ s0 = peg$c6;
899
+ peg$currPos++;
900
+ }
901
+ else {
902
+ s0 = peg$FAILED;
903
+ if (peg$silentFails === 0) {
904
+ peg$fail(peg$c7);
905
+ }
906
+ }
907
+ return s0;
908
+ }
909
+ function peg$parselooks_like_code_C() {
910
+ var s0, s1, s2, s3, s4;
911
+ s0 = peg$currPos;
912
+ s1 = peg$currPos;
913
+ s2 = peg$currPos;
914
+ peg$silentFails++;
915
+ s3 = peg$parseallowed_code_C();
916
+ peg$silentFails--;
917
+ if (s3 === peg$FAILED) {
918
+ s2 = void 0;
919
+ }
920
+ else {
921
+ peg$currPos = s2;
922
+ s2 = peg$FAILED;
923
+ }
924
+ if (s2 !== peg$FAILED) {
925
+ if (input.length > peg$currPos) {
926
+ s3 = input.charAt(peg$currPos);
927
+ peg$currPos++;
928
+ }
929
+ else {
930
+ s3 = peg$FAILED;
931
+ if (peg$silentFails === 0) {
932
+ peg$fail(peg$c39);
933
+ }
934
+ }
935
+ if (s3 !== peg$FAILED) {
936
+ s2 = [s2, s3];
937
+ s1 = s2;
938
+ }
939
+ else {
940
+ peg$currPos = s1;
941
+ s1 = peg$FAILED;
942
+ }
943
+ }
944
+ else {
945
+ peg$currPos = s1;
946
+ s1 = peg$FAILED;
947
+ }
948
+ if (s1 !== peg$FAILED) {
949
+ if (input.charCodeAt(peg$currPos) === 60) {
950
+ s2 = peg$c48;
951
+ peg$currPos++;
952
+ }
953
+ else {
954
+ s2 = peg$FAILED;
955
+ if (peg$silentFails === 0) {
956
+ peg$fail(peg$c49);
957
+ }
958
+ }
959
+ if (s2 !== peg$FAILED) {
960
+ s3 = peg$parsenot_code();
961
+ if (s3 !== peg$FAILED) {
962
+ if (input.charCodeAt(peg$currPos) === 62) {
963
+ s4 = peg$c50;
964
+ peg$currPos++;
965
+ }
966
+ else {
967
+ s4 = peg$FAILED;
968
+ if (peg$silentFails === 0) {
969
+ peg$fail(peg$c51);
970
+ }
971
+ }
972
+ if (s4 !== peg$FAILED) {
973
+ peg$savedPos = s0;
974
+ s1 = peg$c52();
975
+ s0 = s1;
976
+ }
977
+ else {
978
+ peg$currPos = s0;
979
+ s0 = peg$FAILED;
980
+ }
981
+ }
982
+ else {
983
+ peg$currPos = s0;
984
+ s0 = peg$FAILED;
985
+ }
986
+ }
987
+ else {
988
+ peg$currPos = s0;
989
+ s0 = peg$FAILED;
990
+ }
991
+ }
992
+ else {
993
+ peg$currPos = s0;
994
+ s0 = peg$FAILED;
995
+ }
996
+ if (s0 === peg$FAILED) {
997
+ s0 = peg$currPos;
998
+ s1 = peg$currPos;
999
+ s2 = peg$currPos;
1000
+ peg$silentFails++;
1001
+ s3 = peg$parseallowed_code_C();
1002
+ peg$silentFails--;
1003
+ if (s3 === peg$FAILED) {
1004
+ s2 = void 0;
1005
+ }
1006
+ else {
1007
+ peg$currPos = s2;
1008
+ s2 = peg$FAILED;
1009
+ }
1010
+ if (s2 !== peg$FAILED) {
1011
+ if (input.length > peg$currPos) {
1012
+ s3 = input.charAt(peg$currPos);
1013
+ peg$currPos++;
1014
+ }
1015
+ else {
1016
+ s3 = peg$FAILED;
1017
+ if (peg$silentFails === 0) {
1018
+ peg$fail(peg$c39);
1019
+ }
1020
+ }
1021
+ if (s3 !== peg$FAILED) {
1022
+ s2 = [s2, s3];
1023
+ s1 = s2;
1024
+ }
1025
+ else {
1026
+ peg$currPos = s1;
1027
+ s1 = peg$FAILED;
1028
+ }
1029
+ }
1030
+ else {
1031
+ peg$currPos = s1;
1032
+ s1 = peg$FAILED;
1033
+ }
1034
+ if (s1 !== peg$FAILED) {
1035
+ if (input.charCodeAt(peg$currPos) === 171) {
1036
+ s2 = peg$c53;
1037
+ peg$currPos++;
1038
+ }
1039
+ else {
1040
+ s2 = peg$FAILED;
1041
+ if (peg$silentFails === 0) {
1042
+ peg$fail(peg$c54);
1043
+ }
1044
+ }
1045
+ if (s2 !== peg$FAILED) {
1046
+ s3 = peg$parsenot_code();
1047
+ if (s3 !== peg$FAILED) {
1048
+ if (input.charCodeAt(peg$currPos) === 187) {
1049
+ s4 = peg$c55;
1050
+ peg$currPos++;
1051
+ }
1052
+ else {
1053
+ s4 = peg$FAILED;
1054
+ if (peg$silentFails === 0) {
1055
+ peg$fail(peg$c56);
1056
+ }
1057
+ }
1058
+ if (s4 !== peg$FAILED) {
1059
+ peg$savedPos = s0;
1060
+ s1 = peg$c52();
1061
+ s0 = s1;
1062
+ }
1063
+ else {
1064
+ peg$currPos = s0;
1065
+ s0 = peg$FAILED;
1066
+ }
1067
+ }
1068
+ else {
1069
+ peg$currPos = s0;
1070
+ s0 = peg$FAILED;
1071
+ }
1072
+ }
1073
+ else {
1074
+ peg$currPos = s0;
1075
+ s0 = peg$FAILED;
1076
+ }
1077
+ }
1078
+ else {
1079
+ peg$currPos = s0;
1080
+ s0 = peg$FAILED;
1081
+ }
1082
+ }
1083
+ return s0;
1084
+ }
1085
+ function peg$parsetext_C() {
1086
+ var s0, s1, s2, s3, s4, s5, s6, s7;
1087
+ s0 = peg$currPos;
1088
+ s1 = peg$currPos;
1089
+ s2 = [];
1090
+ s3 = peg$currPos;
1091
+ s4 = peg$currPos;
1092
+ s5 = peg$currPos;
1093
+ peg$silentFails++;
1094
+ if (input.charCodeAt(peg$currPos) === 60) {
1095
+ s6 = peg$c48;
1096
+ peg$currPos++;
1097
+ }
1098
+ else {
1099
+ s6 = peg$FAILED;
1100
+ if (peg$silentFails === 0) {
1101
+ peg$fail(peg$c49);
1102
+ }
1103
+ }
1104
+ peg$silentFails--;
1105
+ if (s6 === peg$FAILED) {
1106
+ s5 = void 0;
1107
+ }
1108
+ else {
1109
+ peg$currPos = s5;
1110
+ s5 = peg$FAILED;
1111
+ }
1112
+ if (s5 !== peg$FAILED) {
1113
+ if (input.length > peg$currPos) {
1114
+ s6 = input.charAt(peg$currPos);
1115
+ peg$currPos++;
1116
+ }
1117
+ else {
1118
+ s6 = peg$FAILED;
1119
+ if (peg$silentFails === 0) {
1120
+ peg$fail(peg$c39);
1121
+ }
1122
+ }
1123
+ if (s6 !== peg$FAILED) {
1124
+ s5 = [s5, s6];
1125
+ s4 = s5;
1126
+ }
1127
+ else {
1128
+ peg$currPos = s4;
1129
+ s4 = peg$FAILED;
1130
+ }
1131
+ }
1132
+ else {
1133
+ peg$currPos = s4;
1134
+ s4 = peg$FAILED;
1135
+ }
1136
+ if (s4 === peg$FAILED) {
1137
+ s4 = null;
1138
+ }
1139
+ if (s4 !== peg$FAILED) {
1140
+ if (input.charCodeAt(peg$currPos) === 60) {
1141
+ s5 = peg$c48;
1142
+ peg$currPos++;
1143
+ }
1144
+ else {
1145
+ s5 = peg$FAILED;
1146
+ if (peg$silentFails === 0) {
1147
+ peg$fail(peg$c49);
1148
+ }
1149
+ }
1150
+ if (s5 !== peg$FAILED) {
1151
+ s6 = peg$parsetext_C();
1152
+ if (s6 === peg$FAILED) {
1153
+ s6 = null;
1154
+ }
1155
+ if (s6 !== peg$FAILED) {
1156
+ if (input.charCodeAt(peg$currPos) === 62) {
1157
+ s7 = peg$c50;
1158
+ peg$currPos++;
1159
+ }
1160
+ else {
1161
+ s7 = peg$FAILED;
1162
+ if (peg$silentFails === 0) {
1163
+ peg$fail(peg$c51);
1164
+ }
1165
+ }
1166
+ if (s7 !== peg$FAILED) {
1167
+ s4 = [s4, s5, s6, s7];
1168
+ s3 = s4;
1169
+ }
1170
+ else {
1171
+ peg$currPos = s3;
1172
+ s3 = peg$FAILED;
1173
+ }
1174
+ }
1175
+ else {
1176
+ peg$currPos = s3;
1177
+ s3 = peg$FAILED;
1178
+ }
1179
+ }
1180
+ else {
1181
+ peg$currPos = s3;
1182
+ s3 = peg$FAILED;
1183
+ }
1184
+ }
1185
+ else {
1186
+ peg$currPos = s3;
1187
+ s3 = peg$FAILED;
1188
+ }
1189
+ if (s3 === peg$FAILED) {
1190
+ s3 = peg$currPos;
1191
+ s4 = peg$currPos;
1192
+ s5 = peg$currPos;
1193
+ peg$silentFails++;
1194
+ if (input.charCodeAt(peg$currPos) === 171) {
1195
+ s6 = peg$c53;
1196
+ peg$currPos++;
1197
+ }
1198
+ else {
1199
+ s6 = peg$FAILED;
1200
+ if (peg$silentFails === 0) {
1201
+ peg$fail(peg$c54);
1202
+ }
1203
+ }
1204
+ peg$silentFails--;
1205
+ if (s6 === peg$FAILED) {
1206
+ s5 = void 0;
1207
+ }
1208
+ else {
1209
+ peg$currPos = s5;
1210
+ s5 = peg$FAILED;
1211
+ }
1212
+ if (s5 !== peg$FAILED) {
1213
+ if (input.length > peg$currPos) {
1214
+ s6 = input.charAt(peg$currPos);
1215
+ peg$currPos++;
1216
+ }
1217
+ else {
1218
+ s6 = peg$FAILED;
1219
+ if (peg$silentFails === 0) {
1220
+ peg$fail(peg$c39);
1221
+ }
1222
+ }
1223
+ if (s6 !== peg$FAILED) {
1224
+ s5 = [s5, s6];
1225
+ s4 = s5;
1226
+ }
1227
+ else {
1228
+ peg$currPos = s4;
1229
+ s4 = peg$FAILED;
1230
+ }
1231
+ }
1232
+ else {
1233
+ peg$currPos = s4;
1234
+ s4 = peg$FAILED;
1235
+ }
1236
+ if (s4 === peg$FAILED) {
1237
+ s4 = null;
1238
+ }
1239
+ if (s4 !== peg$FAILED) {
1240
+ if (input.charCodeAt(peg$currPos) === 171) {
1241
+ s5 = peg$c53;
1242
+ peg$currPos++;
1243
+ }
1244
+ else {
1245
+ s5 = peg$FAILED;
1246
+ if (peg$silentFails === 0) {
1247
+ peg$fail(peg$c54);
1248
+ }
1249
+ }
1250
+ if (s5 !== peg$FAILED) {
1251
+ s6 = peg$parsetext_C();
1252
+ if (s6 === peg$FAILED) {
1253
+ s6 = null;
1254
+ }
1255
+ if (s6 !== peg$FAILED) {
1256
+ if (input.charCodeAt(peg$currPos) === 187) {
1257
+ s7 = peg$c55;
1258
+ peg$currPos++;
1259
+ }
1260
+ else {
1261
+ s7 = peg$FAILED;
1262
+ if (peg$silentFails === 0) {
1263
+ peg$fail(peg$c56);
1264
+ }
1265
+ }
1266
+ if (s7 !== peg$FAILED) {
1267
+ s4 = [s4, s5, s6, s7];
1268
+ s3 = s4;
1269
+ }
1270
+ else {
1271
+ peg$currPos = s3;
1272
+ s3 = peg$FAILED;
1273
+ }
1274
+ }
1275
+ else {
1276
+ peg$currPos = s3;
1277
+ s3 = peg$FAILED;
1278
+ }
1279
+ }
1280
+ else {
1281
+ peg$currPos = s3;
1282
+ s3 = peg$FAILED;
1283
+ }
1284
+ }
1285
+ else {
1286
+ peg$currPos = s3;
1287
+ s3 = peg$FAILED;
1288
+ }
1289
+ if (s3 === peg$FAILED) {
1290
+ s3 = peg$parselooks_like_code_C();
1291
+ if (s3 === peg$FAILED) {
1292
+ s3 = peg$parsenot_code();
1293
+ }
1294
+ }
1295
+ }
1296
+ if (s3 !== peg$FAILED) {
1297
+ while (s3 !== peg$FAILED) {
1298
+ s2.push(s3);
1299
+ s3 = peg$currPos;
1300
+ s4 = peg$currPos;
1301
+ s5 = peg$currPos;
1302
+ peg$silentFails++;
1303
+ if (input.charCodeAt(peg$currPos) === 60) {
1304
+ s6 = peg$c48;
1305
+ peg$currPos++;
1306
+ }
1307
+ else {
1308
+ s6 = peg$FAILED;
1309
+ if (peg$silentFails === 0) {
1310
+ peg$fail(peg$c49);
1311
+ }
1312
+ }
1313
+ peg$silentFails--;
1314
+ if (s6 === peg$FAILED) {
1315
+ s5 = void 0;
1316
+ }
1317
+ else {
1318
+ peg$currPos = s5;
1319
+ s5 = peg$FAILED;
1320
+ }
1321
+ if (s5 !== peg$FAILED) {
1322
+ if (input.length > peg$currPos) {
1323
+ s6 = input.charAt(peg$currPos);
1324
+ peg$currPos++;
1325
+ }
1326
+ else {
1327
+ s6 = peg$FAILED;
1328
+ if (peg$silentFails === 0) {
1329
+ peg$fail(peg$c39);
1330
+ }
1331
+ }
1332
+ if (s6 !== peg$FAILED) {
1333
+ s5 = [s5, s6];
1334
+ s4 = s5;
1335
+ }
1336
+ else {
1337
+ peg$currPos = s4;
1338
+ s4 = peg$FAILED;
1339
+ }
1340
+ }
1341
+ else {
1342
+ peg$currPos = s4;
1343
+ s4 = peg$FAILED;
1344
+ }
1345
+ if (s4 === peg$FAILED) {
1346
+ s4 = null;
1347
+ }
1348
+ if (s4 !== peg$FAILED) {
1349
+ if (input.charCodeAt(peg$currPos) === 60) {
1350
+ s5 = peg$c48;
1351
+ peg$currPos++;
1352
+ }
1353
+ else {
1354
+ s5 = peg$FAILED;
1355
+ if (peg$silentFails === 0) {
1356
+ peg$fail(peg$c49);
1357
+ }
1358
+ }
1359
+ if (s5 !== peg$FAILED) {
1360
+ s6 = peg$parsetext_C();
1361
+ if (s6 === peg$FAILED) {
1362
+ s6 = null;
1363
+ }
1364
+ if (s6 !== peg$FAILED) {
1365
+ if (input.charCodeAt(peg$currPos) === 62) {
1366
+ s7 = peg$c50;
1367
+ peg$currPos++;
1368
+ }
1369
+ else {
1370
+ s7 = peg$FAILED;
1371
+ if (peg$silentFails === 0) {
1372
+ peg$fail(peg$c51);
1373
+ }
1374
+ }
1375
+ if (s7 !== peg$FAILED) {
1376
+ s4 = [s4, s5, s6, s7];
1377
+ s3 = s4;
1378
+ }
1379
+ else {
1380
+ peg$currPos = s3;
1381
+ s3 = peg$FAILED;
1382
+ }
1383
+ }
1384
+ else {
1385
+ peg$currPos = s3;
1386
+ s3 = peg$FAILED;
1387
+ }
1388
+ }
1389
+ else {
1390
+ peg$currPos = s3;
1391
+ s3 = peg$FAILED;
1392
+ }
1393
+ }
1394
+ else {
1395
+ peg$currPos = s3;
1396
+ s3 = peg$FAILED;
1397
+ }
1398
+ if (s3 === peg$FAILED) {
1399
+ s3 = peg$currPos;
1400
+ s4 = peg$currPos;
1401
+ s5 = peg$currPos;
1402
+ peg$silentFails++;
1403
+ if (input.charCodeAt(peg$currPos) === 171) {
1404
+ s6 = peg$c53;
1405
+ peg$currPos++;
1406
+ }
1407
+ else {
1408
+ s6 = peg$FAILED;
1409
+ if (peg$silentFails === 0) {
1410
+ peg$fail(peg$c54);
1411
+ }
1412
+ }
1413
+ peg$silentFails--;
1414
+ if (s6 === peg$FAILED) {
1415
+ s5 = void 0;
1416
+ }
1417
+ else {
1418
+ peg$currPos = s5;
1419
+ s5 = peg$FAILED;
1420
+ }
1421
+ if (s5 !== peg$FAILED) {
1422
+ if (input.length > peg$currPos) {
1423
+ s6 = input.charAt(peg$currPos);
1424
+ peg$currPos++;
1425
+ }
1426
+ else {
1427
+ s6 = peg$FAILED;
1428
+ if (peg$silentFails === 0) {
1429
+ peg$fail(peg$c39);
1430
+ }
1431
+ }
1432
+ if (s6 !== peg$FAILED) {
1433
+ s5 = [s5, s6];
1434
+ s4 = s5;
1435
+ }
1436
+ else {
1437
+ peg$currPos = s4;
1438
+ s4 = peg$FAILED;
1439
+ }
1440
+ }
1441
+ else {
1442
+ peg$currPos = s4;
1443
+ s4 = peg$FAILED;
1444
+ }
1445
+ if (s4 === peg$FAILED) {
1446
+ s4 = null;
1447
+ }
1448
+ if (s4 !== peg$FAILED) {
1449
+ if (input.charCodeAt(peg$currPos) === 171) {
1450
+ s5 = peg$c53;
1451
+ peg$currPos++;
1452
+ }
1453
+ else {
1454
+ s5 = peg$FAILED;
1455
+ if (peg$silentFails === 0) {
1456
+ peg$fail(peg$c54);
1457
+ }
1458
+ }
1459
+ if (s5 !== peg$FAILED) {
1460
+ s6 = peg$parsetext_C();
1461
+ if (s6 === peg$FAILED) {
1462
+ s6 = null;
1463
+ }
1464
+ if (s6 !== peg$FAILED) {
1465
+ if (input.charCodeAt(peg$currPos) === 187) {
1466
+ s7 = peg$c55;
1467
+ peg$currPos++;
1468
+ }
1469
+ else {
1470
+ s7 = peg$FAILED;
1471
+ if (peg$silentFails === 0) {
1472
+ peg$fail(peg$c56);
1473
+ }
1474
+ }
1475
+ if (s7 !== peg$FAILED) {
1476
+ s4 = [s4, s5, s6, s7];
1477
+ s3 = s4;
1478
+ }
1479
+ else {
1480
+ peg$currPos = s3;
1481
+ s3 = peg$FAILED;
1482
+ }
1483
+ }
1484
+ else {
1485
+ peg$currPos = s3;
1486
+ s3 = peg$FAILED;
1487
+ }
1488
+ }
1489
+ else {
1490
+ peg$currPos = s3;
1491
+ s3 = peg$FAILED;
1492
+ }
1493
+ }
1494
+ else {
1495
+ peg$currPos = s3;
1496
+ s3 = peg$FAILED;
1497
+ }
1498
+ if (s3 === peg$FAILED) {
1499
+ s3 = peg$parselooks_like_code_C();
1500
+ if (s3 === peg$FAILED) {
1501
+ s3 = peg$parsenot_code();
1502
+ }
1503
+ }
1504
+ }
1505
+ }
1506
+ }
1507
+ else {
1508
+ s2 = peg$FAILED;
1509
+ }
1510
+ if (s2 !== peg$FAILED) {
1511
+ s1 = input.substring(s1, peg$currPos);
1512
+ }
1513
+ else {
1514
+ s1 = s2;
1515
+ }
1516
+ if (s1 !== peg$FAILED) {
1517
+ peg$savedPos = s0;
1518
+ s1 = peg$c57(s1);
1519
+ }
1520
+ s0 = s1;
1521
+ return s0;
1522
+ }
1523
+ function peg$parsecode_C() {
1524
+ var s0, s1, s2, s3, s4, s5;
1525
+ s0 = peg$currPos;
1526
+ s1 = peg$parsestart_code_2();
1527
+ if (s1 !== peg$FAILED) {
1528
+ peg$savedPos = peg$currPos;
1529
+ s2 = peg$c58(s1);
1530
+ if (s2) {
1531
+ s2 = void 0;
1532
+ }
1533
+ else {
1534
+ s2 = peg$FAILED;
1535
+ }
1536
+ if (s2 !== peg$FAILED) {
1537
+ s3 = [];
1538
+ s4 = peg$parsetext_C();
1539
+ if (s4 !== peg$FAILED) {
1540
+ while (s4 !== peg$FAILED) {
1541
+ s3.push(s4);
1542
+ s4 = peg$parsetext_C();
1543
+ }
1544
+ }
1545
+ else {
1546
+ s3 = peg$FAILED;
1547
+ }
1548
+ if (s3 !== peg$FAILED) {
1549
+ s4 = peg$parseend_code();
1550
+ if (s4 !== peg$FAILED) {
1551
+ peg$savedPos = peg$currPos;
1552
+ s5 = peg$c59(s1, s3, s4);
1553
+ if (s5) {
1554
+ s5 = void 0;
1555
+ }
1556
+ else {
1557
+ s5 = peg$FAILED;
1558
+ }
1559
+ if (s5 !== peg$FAILED) {
1560
+ peg$savedPos = s0;
1561
+ s1 = peg$c60(s1, s3, s4);
1562
+ s0 = s1;
1563
+ }
1564
+ else {
1565
+ peg$currPos = s0;
1566
+ s0 = peg$FAILED;
1567
+ }
1568
+ }
1569
+ else {
1570
+ peg$currPos = s0;
1571
+ s0 = peg$FAILED;
1572
+ }
1573
+ }
1574
+ else {
1575
+ peg$currPos = s0;
1576
+ s0 = peg$FAILED;
1577
+ }
1578
+ }
1579
+ else {
1580
+ peg$currPos = s0;
1581
+ s0 = peg$FAILED;
1582
+ }
1583
+ }
1584
+ else {
1585
+ peg$currPos = s0;
1586
+ s0 = peg$FAILED;
1587
+ }
1588
+ return s0;
1589
+ }
1590
+ function peg$parseseparator() {
1591
+ var s0;
1592
+ if (input.charCodeAt(peg$currPos) === 124) {
1593
+ s0 = peg$c61;
1594
+ peg$currPos++;
1595
+ }
1596
+ else {
1597
+ s0 = peg$FAILED;
1598
+ if (peg$silentFails === 0) {
1599
+ peg$fail(peg$c62);
1600
+ }
1601
+ }
1602
+ return s0;
1603
+ }
1604
+ function peg$parsetext_L() {
1605
+ var s0, s1, s2, s3, s4, s5, s6, s7, s8;
1606
+ s0 = peg$currPos;
1607
+ s1 = peg$currPos;
1608
+ s2 = [];
1609
+ s3 = peg$currPos;
1610
+ s4 = peg$currPos;
1611
+ s5 = peg$currPos;
1612
+ peg$silentFails++;
1613
+ if (input.charCodeAt(peg$currPos) === 60) {
1614
+ s6 = peg$c48;
1615
+ peg$currPos++;
1616
+ }
1617
+ else {
1618
+ s6 = peg$FAILED;
1619
+ if (peg$silentFails === 0) {
1620
+ peg$fail(peg$c49);
1621
+ }
1622
+ }
1623
+ peg$silentFails--;
1624
+ if (s6 === peg$FAILED) {
1625
+ s5 = void 0;
1626
+ }
1627
+ else {
1628
+ peg$currPos = s5;
1629
+ s5 = peg$FAILED;
1630
+ }
1631
+ if (s5 !== peg$FAILED) {
1632
+ s6 = peg$currPos;
1633
+ peg$silentFails++;
1634
+ s7 = peg$parseallowed_code();
1635
+ peg$silentFails--;
1636
+ if (s7 === peg$FAILED) {
1637
+ s6 = void 0;
1638
+ }
1639
+ else {
1640
+ peg$currPos = s6;
1641
+ s6 = peg$FAILED;
1642
+ }
1643
+ if (s6 !== peg$FAILED) {
1644
+ if (input.length > peg$currPos) {
1645
+ s7 = input.charAt(peg$currPos);
1646
+ peg$currPos++;
1647
+ }
1648
+ else {
1649
+ s7 = peg$FAILED;
1650
+ if (peg$silentFails === 0) {
1651
+ peg$fail(peg$c39);
1652
+ }
1653
+ }
1654
+ if (s7 !== peg$FAILED) {
1655
+ s5 = [s5, s6, s7];
1656
+ s4 = s5;
1657
+ }
1658
+ else {
1659
+ peg$currPos = s4;
1660
+ s4 = peg$FAILED;
1661
+ }
1662
+ }
1663
+ else {
1664
+ peg$currPos = s4;
1665
+ s4 = peg$FAILED;
1666
+ }
1667
+ }
1668
+ else {
1669
+ peg$currPos = s4;
1670
+ s4 = peg$FAILED;
1671
+ }
1672
+ if (s4 !== peg$FAILED) {
1673
+ if (input.charCodeAt(peg$currPos) === 60) {
1674
+ s5 = peg$c48;
1675
+ peg$currPos++;
1676
+ }
1677
+ else {
1678
+ s5 = peg$FAILED;
1679
+ if (peg$silentFails === 0) {
1680
+ peg$fail(peg$c49);
1681
+ }
1682
+ }
1683
+ if (s5 !== peg$FAILED) {
1684
+ s6 = peg$parsetext_L();
1685
+ if (s6 !== peg$FAILED) {
1686
+ if (input.charCodeAt(peg$currPos) === 62) {
1687
+ s7 = peg$c50;
1688
+ peg$currPos++;
1689
+ }
1690
+ else {
1691
+ s7 = peg$FAILED;
1692
+ if (peg$silentFails === 0) {
1693
+ peg$fail(peg$c51);
1694
+ }
1695
+ }
1696
+ if (s7 !== peg$FAILED) {
1697
+ s4 = [s4, s5, s6, s7];
1698
+ s3 = s4;
1699
+ }
1700
+ else {
1701
+ peg$currPos = s3;
1702
+ s3 = peg$FAILED;
1703
+ }
1704
+ }
1705
+ else {
1706
+ peg$currPos = s3;
1707
+ s3 = peg$FAILED;
1708
+ }
1709
+ }
1710
+ else {
1711
+ peg$currPos = s3;
1712
+ s3 = peg$FAILED;
1713
+ }
1714
+ }
1715
+ else {
1716
+ peg$currPos = s3;
1717
+ s3 = peg$FAILED;
1718
+ }
1719
+ if (s3 === peg$FAILED) {
1720
+ s3 = peg$currPos;
1721
+ s4 = peg$currPos;
1722
+ s5 = peg$currPos;
1723
+ peg$silentFails++;
1724
+ if (input.charCodeAt(peg$currPos) === 171) {
1725
+ s6 = peg$c53;
1726
+ peg$currPos++;
1727
+ }
1728
+ else {
1729
+ s6 = peg$FAILED;
1730
+ if (peg$silentFails === 0) {
1731
+ peg$fail(peg$c54);
1732
+ }
1733
+ }
1734
+ peg$silentFails--;
1735
+ if (s6 === peg$FAILED) {
1736
+ s5 = void 0;
1737
+ }
1738
+ else {
1739
+ peg$currPos = s5;
1740
+ s5 = peg$FAILED;
1741
+ }
1742
+ if (s5 !== peg$FAILED) {
1743
+ s6 = peg$currPos;
1744
+ peg$silentFails++;
1745
+ s7 = peg$parseallowed_code();
1746
+ peg$silentFails--;
1747
+ if (s7 === peg$FAILED) {
1748
+ s6 = void 0;
1749
+ }
1750
+ else {
1751
+ peg$currPos = s6;
1752
+ s6 = peg$FAILED;
1753
+ }
1754
+ if (s6 !== peg$FAILED) {
1755
+ if (input.length > peg$currPos) {
1756
+ s7 = input.charAt(peg$currPos);
1757
+ peg$currPos++;
1758
+ }
1759
+ else {
1760
+ s7 = peg$FAILED;
1761
+ if (peg$silentFails === 0) {
1762
+ peg$fail(peg$c39);
1763
+ }
1764
+ }
1765
+ if (s7 !== peg$FAILED) {
1766
+ s5 = [s5, s6, s7];
1767
+ s4 = s5;
1768
+ }
1769
+ else {
1770
+ peg$currPos = s4;
1771
+ s4 = peg$FAILED;
1772
+ }
1773
+ }
1774
+ else {
1775
+ peg$currPos = s4;
1776
+ s4 = peg$FAILED;
1777
+ }
1778
+ }
1779
+ else {
1780
+ peg$currPos = s4;
1781
+ s4 = peg$FAILED;
1782
+ }
1783
+ if (s4 !== peg$FAILED) {
1784
+ if (input.charCodeAt(peg$currPos) === 171) {
1785
+ s5 = peg$c53;
1786
+ peg$currPos++;
1787
+ }
1788
+ else {
1789
+ s5 = peg$FAILED;
1790
+ if (peg$silentFails === 0) {
1791
+ peg$fail(peg$c54);
1792
+ }
1793
+ }
1794
+ if (s5 !== peg$FAILED) {
1795
+ s6 = peg$parsetext_L();
1796
+ if (s6 === peg$FAILED) {
1797
+ s6 = null;
1798
+ }
1799
+ if (s6 !== peg$FAILED) {
1800
+ if (input.charCodeAt(peg$currPos) === 187) {
1801
+ s7 = peg$c55;
1802
+ peg$currPos++;
1803
+ }
1804
+ else {
1805
+ s7 = peg$FAILED;
1806
+ if (peg$silentFails === 0) {
1807
+ peg$fail(peg$c56);
1808
+ }
1809
+ }
1810
+ if (s7 !== peg$FAILED) {
1811
+ s4 = [s4, s5, s6, s7];
1812
+ s3 = s4;
1813
+ }
1814
+ else {
1815
+ peg$currPos = s3;
1816
+ s3 = peg$FAILED;
1817
+ }
1818
+ }
1819
+ else {
1820
+ peg$currPos = s3;
1821
+ s3 = peg$FAILED;
1822
+ }
1823
+ }
1824
+ else {
1825
+ peg$currPos = s3;
1826
+ s3 = peg$FAILED;
1827
+ }
1828
+ }
1829
+ else {
1830
+ peg$currPos = s3;
1831
+ s3 = peg$FAILED;
1832
+ }
1833
+ if (s3 === peg$FAILED) {
1834
+ s3 = peg$currPos;
1835
+ s4 = peg$currPos;
1836
+ peg$silentFails++;
1837
+ s5 = peg$parseseparator();
1838
+ peg$silentFails--;
1839
+ if (s5 === peg$FAILED) {
1840
+ s4 = void 0;
1841
+ }
1842
+ else {
1843
+ peg$currPos = s4;
1844
+ s4 = peg$FAILED;
1845
+ }
1846
+ if (s4 !== peg$FAILED) {
1847
+ s5 = peg$currPos;
1848
+ peg$silentFails++;
1849
+ s6 = peg$parseend_code();
1850
+ peg$silentFails--;
1851
+ if (s6 === peg$FAILED) {
1852
+ s5 = void 0;
1853
+ }
1854
+ else {
1855
+ peg$currPos = s5;
1856
+ s5 = peg$FAILED;
1857
+ }
1858
+ if (s5 !== peg$FAILED) {
1859
+ s6 = peg$currPos;
1860
+ peg$silentFails++;
1861
+ s7 = peg$parsestart_code();
1862
+ peg$silentFails--;
1863
+ if (s7 === peg$FAILED) {
1864
+ s6 = void 0;
1865
+ }
1866
+ else {
1867
+ peg$currPos = s6;
1868
+ s6 = peg$FAILED;
1869
+ }
1870
+ if (s6 !== peg$FAILED) {
1871
+ s7 = peg$currPos;
1872
+ peg$silentFails++;
1873
+ s8 = peg$parselooks_like_code();
1874
+ peg$silentFails--;
1875
+ if (s8 === peg$FAILED) {
1876
+ s7 = void 0;
1877
+ }
1878
+ else {
1879
+ peg$currPos = s7;
1880
+ s7 = peg$FAILED;
1881
+ }
1882
+ if (s7 !== peg$FAILED) {
1883
+ if (input.length > peg$currPos) {
1884
+ s8 = input.charAt(peg$currPos);
1885
+ peg$currPos++;
1886
+ }
1887
+ else {
1888
+ s8 = peg$FAILED;
1889
+ if (peg$silentFails === 0) {
1890
+ peg$fail(peg$c39);
1891
+ }
1892
+ }
1893
+ if (s8 !== peg$FAILED) {
1894
+ s4 = [s4, s5, s6, s7, s8];
1895
+ s3 = s4;
1896
+ }
1897
+ else {
1898
+ peg$currPos = s3;
1899
+ s3 = peg$FAILED;
1900
+ }
1901
+ }
1902
+ else {
1903
+ peg$currPos = s3;
1904
+ s3 = peg$FAILED;
1905
+ }
1906
+ }
1907
+ else {
1908
+ peg$currPos = s3;
1909
+ s3 = peg$FAILED;
1910
+ }
1911
+ }
1912
+ else {
1913
+ peg$currPos = s3;
1914
+ s3 = peg$FAILED;
1915
+ }
1916
+ }
1917
+ else {
1918
+ peg$currPos = s3;
1919
+ s3 = peg$FAILED;
1920
+ }
1921
+ }
1922
+ }
1923
+ if (s3 !== peg$FAILED) {
1924
+ while (s3 !== peg$FAILED) {
1925
+ s2.push(s3);
1926
+ s3 = peg$currPos;
1927
+ s4 = peg$currPos;
1928
+ s5 = peg$currPos;
1929
+ peg$silentFails++;
1930
+ if (input.charCodeAt(peg$currPos) === 60) {
1931
+ s6 = peg$c48;
1932
+ peg$currPos++;
1933
+ }
1934
+ else {
1935
+ s6 = peg$FAILED;
1936
+ if (peg$silentFails === 0) {
1937
+ peg$fail(peg$c49);
1938
+ }
1939
+ }
1940
+ peg$silentFails--;
1941
+ if (s6 === peg$FAILED) {
1942
+ s5 = void 0;
1943
+ }
1944
+ else {
1945
+ peg$currPos = s5;
1946
+ s5 = peg$FAILED;
1947
+ }
1948
+ if (s5 !== peg$FAILED) {
1949
+ s6 = peg$currPos;
1950
+ peg$silentFails++;
1951
+ s7 = peg$parseallowed_code();
1952
+ peg$silentFails--;
1953
+ if (s7 === peg$FAILED) {
1954
+ s6 = void 0;
1955
+ }
1956
+ else {
1957
+ peg$currPos = s6;
1958
+ s6 = peg$FAILED;
1959
+ }
1960
+ if (s6 !== peg$FAILED) {
1961
+ if (input.length > peg$currPos) {
1962
+ s7 = input.charAt(peg$currPos);
1963
+ peg$currPos++;
1964
+ }
1965
+ else {
1966
+ s7 = peg$FAILED;
1967
+ if (peg$silentFails === 0) {
1968
+ peg$fail(peg$c39);
1969
+ }
1970
+ }
1971
+ if (s7 !== peg$FAILED) {
1972
+ s5 = [s5, s6, s7];
1973
+ s4 = s5;
1974
+ }
1975
+ else {
1976
+ peg$currPos = s4;
1977
+ s4 = peg$FAILED;
1978
+ }
1979
+ }
1980
+ else {
1981
+ peg$currPos = s4;
1982
+ s4 = peg$FAILED;
1983
+ }
1984
+ }
1985
+ else {
1986
+ peg$currPos = s4;
1987
+ s4 = peg$FAILED;
1988
+ }
1989
+ if (s4 !== peg$FAILED) {
1990
+ if (input.charCodeAt(peg$currPos) === 60) {
1991
+ s5 = peg$c48;
1992
+ peg$currPos++;
1993
+ }
1994
+ else {
1995
+ s5 = peg$FAILED;
1996
+ if (peg$silentFails === 0) {
1997
+ peg$fail(peg$c49);
1998
+ }
1999
+ }
2000
+ if (s5 !== peg$FAILED) {
2001
+ s6 = peg$parsetext_L();
2002
+ if (s6 !== peg$FAILED) {
2003
+ if (input.charCodeAt(peg$currPos) === 62) {
2004
+ s7 = peg$c50;
2005
+ peg$currPos++;
2006
+ }
2007
+ else {
2008
+ s7 = peg$FAILED;
2009
+ if (peg$silentFails === 0) {
2010
+ peg$fail(peg$c51);
2011
+ }
2012
+ }
2013
+ if (s7 !== peg$FAILED) {
2014
+ s4 = [s4, s5, s6, s7];
2015
+ s3 = s4;
2016
+ }
2017
+ else {
2018
+ peg$currPos = s3;
2019
+ s3 = peg$FAILED;
2020
+ }
2021
+ }
2022
+ else {
2023
+ peg$currPos = s3;
2024
+ s3 = peg$FAILED;
2025
+ }
2026
+ }
2027
+ else {
2028
+ peg$currPos = s3;
2029
+ s3 = peg$FAILED;
2030
+ }
2031
+ }
2032
+ else {
2033
+ peg$currPos = s3;
2034
+ s3 = peg$FAILED;
2035
+ }
2036
+ if (s3 === peg$FAILED) {
2037
+ s3 = peg$currPos;
2038
+ s4 = peg$currPos;
2039
+ s5 = peg$currPos;
2040
+ peg$silentFails++;
2041
+ if (input.charCodeAt(peg$currPos) === 171) {
2042
+ s6 = peg$c53;
2043
+ peg$currPos++;
2044
+ }
2045
+ else {
2046
+ s6 = peg$FAILED;
2047
+ if (peg$silentFails === 0) {
2048
+ peg$fail(peg$c54);
2049
+ }
2050
+ }
2051
+ peg$silentFails--;
2052
+ if (s6 === peg$FAILED) {
2053
+ s5 = void 0;
2054
+ }
2055
+ else {
2056
+ peg$currPos = s5;
2057
+ s5 = peg$FAILED;
2058
+ }
2059
+ if (s5 !== peg$FAILED) {
2060
+ s6 = peg$currPos;
2061
+ peg$silentFails++;
2062
+ s7 = peg$parseallowed_code();
2063
+ peg$silentFails--;
2064
+ if (s7 === peg$FAILED) {
2065
+ s6 = void 0;
2066
+ }
2067
+ else {
2068
+ peg$currPos = s6;
2069
+ s6 = peg$FAILED;
2070
+ }
2071
+ if (s6 !== peg$FAILED) {
2072
+ if (input.length > peg$currPos) {
2073
+ s7 = input.charAt(peg$currPos);
2074
+ peg$currPos++;
2075
+ }
2076
+ else {
2077
+ s7 = peg$FAILED;
2078
+ if (peg$silentFails === 0) {
2079
+ peg$fail(peg$c39);
2080
+ }
2081
+ }
2082
+ if (s7 !== peg$FAILED) {
2083
+ s5 = [s5, s6, s7];
2084
+ s4 = s5;
2085
+ }
2086
+ else {
2087
+ peg$currPos = s4;
2088
+ s4 = peg$FAILED;
2089
+ }
2090
+ }
2091
+ else {
2092
+ peg$currPos = s4;
2093
+ s4 = peg$FAILED;
2094
+ }
2095
+ }
2096
+ else {
2097
+ peg$currPos = s4;
2098
+ s4 = peg$FAILED;
2099
+ }
2100
+ if (s4 !== peg$FAILED) {
2101
+ if (input.charCodeAt(peg$currPos) === 171) {
2102
+ s5 = peg$c53;
2103
+ peg$currPos++;
2104
+ }
2105
+ else {
2106
+ s5 = peg$FAILED;
2107
+ if (peg$silentFails === 0) {
2108
+ peg$fail(peg$c54);
2109
+ }
2110
+ }
2111
+ if (s5 !== peg$FAILED) {
2112
+ s6 = peg$parsetext_L();
2113
+ if (s6 === peg$FAILED) {
2114
+ s6 = null;
2115
+ }
2116
+ if (s6 !== peg$FAILED) {
2117
+ if (input.charCodeAt(peg$currPos) === 187) {
2118
+ s7 = peg$c55;
2119
+ peg$currPos++;
2120
+ }
2121
+ else {
2122
+ s7 = peg$FAILED;
2123
+ if (peg$silentFails === 0) {
2124
+ peg$fail(peg$c56);
2125
+ }
2126
+ }
2127
+ if (s7 !== peg$FAILED) {
2128
+ s4 = [s4, s5, s6, s7];
2129
+ s3 = s4;
2130
+ }
2131
+ else {
2132
+ peg$currPos = s3;
2133
+ s3 = peg$FAILED;
2134
+ }
2135
+ }
2136
+ else {
2137
+ peg$currPos = s3;
2138
+ s3 = peg$FAILED;
2139
+ }
2140
+ }
2141
+ else {
2142
+ peg$currPos = s3;
2143
+ s3 = peg$FAILED;
2144
+ }
2145
+ }
2146
+ else {
2147
+ peg$currPos = s3;
2148
+ s3 = peg$FAILED;
2149
+ }
2150
+ if (s3 === peg$FAILED) {
2151
+ s3 = peg$currPos;
2152
+ s4 = peg$currPos;
2153
+ peg$silentFails++;
2154
+ s5 = peg$parseseparator();
2155
+ peg$silentFails--;
2156
+ if (s5 === peg$FAILED) {
2157
+ s4 = void 0;
2158
+ }
2159
+ else {
2160
+ peg$currPos = s4;
2161
+ s4 = peg$FAILED;
2162
+ }
2163
+ if (s4 !== peg$FAILED) {
2164
+ s5 = peg$currPos;
2165
+ peg$silentFails++;
2166
+ s6 = peg$parseend_code();
2167
+ peg$silentFails--;
2168
+ if (s6 === peg$FAILED) {
2169
+ s5 = void 0;
2170
+ }
2171
+ else {
2172
+ peg$currPos = s5;
2173
+ s5 = peg$FAILED;
2174
+ }
2175
+ if (s5 !== peg$FAILED) {
2176
+ s6 = peg$currPos;
2177
+ peg$silentFails++;
2178
+ s7 = peg$parsestart_code();
2179
+ peg$silentFails--;
2180
+ if (s7 === peg$FAILED) {
2181
+ s6 = void 0;
2182
+ }
2183
+ else {
2184
+ peg$currPos = s6;
2185
+ s6 = peg$FAILED;
2186
+ }
2187
+ if (s6 !== peg$FAILED) {
2188
+ s7 = peg$currPos;
2189
+ peg$silentFails++;
2190
+ s8 = peg$parselooks_like_code();
2191
+ peg$silentFails--;
2192
+ if (s8 === peg$FAILED) {
2193
+ s7 = void 0;
2194
+ }
2195
+ else {
2196
+ peg$currPos = s7;
2197
+ s7 = peg$FAILED;
2198
+ }
2199
+ if (s7 !== peg$FAILED) {
2200
+ if (input.length > peg$currPos) {
2201
+ s8 = input.charAt(peg$currPos);
2202
+ peg$currPos++;
2203
+ }
2204
+ else {
2205
+ s8 = peg$FAILED;
2206
+ if (peg$silentFails === 0) {
2207
+ peg$fail(peg$c39);
2208
+ }
2209
+ }
2210
+ if (s8 !== peg$FAILED) {
2211
+ s4 = [s4, s5, s6, s7, s8];
2212
+ s3 = s4;
2213
+ }
2214
+ else {
2215
+ peg$currPos = s3;
2216
+ s3 = peg$FAILED;
2217
+ }
2218
+ }
2219
+ else {
2220
+ peg$currPos = s3;
2221
+ s3 = peg$FAILED;
2222
+ }
2223
+ }
2224
+ else {
2225
+ peg$currPos = s3;
2226
+ s3 = peg$FAILED;
2227
+ }
2228
+ }
2229
+ else {
2230
+ peg$currPos = s3;
2231
+ s3 = peg$FAILED;
2232
+ }
2233
+ }
2234
+ else {
2235
+ peg$currPos = s3;
2236
+ s3 = peg$FAILED;
2237
+ }
2238
+ }
2239
+ }
2240
+ }
2241
+ }
2242
+ else {
2243
+ s2 = peg$FAILED;
2244
+ }
2245
+ if (s2 !== peg$FAILED) {
2246
+ s1 = input.substring(s1, peg$currPos);
2247
+ }
2248
+ else {
2249
+ s1 = s2;
2250
+ }
2251
+ if (s1 !== peg$FAILED) {
2252
+ peg$savedPos = s0;
2253
+ s1 = peg$c63(s1);
2254
+ }
2255
+ s0 = s1;
2256
+ return s0;
2257
+ }
2258
+ function peg$parsecode_L() {
2259
+ var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10;
2260
+ s0 = peg$currPos;
2261
+ s1 = peg$parsestart_code_2();
2262
+ if (s1 !== peg$FAILED) {
2263
+ peg$savedPos = peg$currPos;
2264
+ s2 = peg$c64(s1);
2265
+ if (s2) {
2266
+ s2 = void 0;
2267
+ }
2268
+ else {
2269
+ s2 = peg$FAILED;
2270
+ }
2271
+ if (s2 !== peg$FAILED) {
2272
+ s3 = [];
2273
+ s4 = peg$parsecode_C();
2274
+ if (s4 === peg$FAILED) {
2275
+ s4 = peg$parsetext_L();
2276
+ }
2277
+ if (s4 !== peg$FAILED) {
2278
+ while (s4 !== peg$FAILED) {
2279
+ s3.push(s4);
2280
+ s4 = peg$parsecode_C();
2281
+ if (s4 === peg$FAILED) {
2282
+ s4 = peg$parsetext_L();
2283
+ }
2284
+ }
2285
+ }
2286
+ else {
2287
+ s3 = peg$FAILED;
2288
+ }
2289
+ if (s3 !== peg$FAILED) {
2290
+ s4 = peg$currPos;
2291
+ s5 = peg$parseseparator();
2292
+ if (s5 !== peg$FAILED) {
2293
+ s6 = peg$currPos;
2294
+ s7 = [];
2295
+ s8 = peg$currPos;
2296
+ s9 = peg$currPos;
2297
+ peg$silentFails++;
2298
+ s10 = peg$parseend_code();
2299
+ peg$silentFails--;
2300
+ if (s10 === peg$FAILED) {
2301
+ s9 = void 0;
2302
+ }
2303
+ else {
2304
+ peg$currPos = s9;
2305
+ s9 = peg$FAILED;
2306
+ }
2307
+ if (s9 !== peg$FAILED) {
2308
+ if (input.length > peg$currPos) {
2309
+ s10 = input.charAt(peg$currPos);
2310
+ peg$currPos++;
2311
+ }
2312
+ else {
2313
+ s10 = peg$FAILED;
2314
+ if (peg$silentFails === 0) {
2315
+ peg$fail(peg$c39);
2316
+ }
2317
+ }
2318
+ if (s10 !== peg$FAILED) {
2319
+ s9 = [s9, s10];
2320
+ s8 = s9;
2321
+ }
2322
+ else {
2323
+ peg$currPos = s8;
2324
+ s8 = peg$FAILED;
2325
+ }
2326
+ }
2327
+ else {
2328
+ peg$currPos = s8;
2329
+ s8 = peg$FAILED;
2330
+ }
2331
+ while (s8 !== peg$FAILED) {
2332
+ s7.push(s8);
2333
+ s8 = peg$currPos;
2334
+ s9 = peg$currPos;
2335
+ peg$silentFails++;
2336
+ s10 = peg$parseend_code();
2337
+ peg$silentFails--;
2338
+ if (s10 === peg$FAILED) {
2339
+ s9 = void 0;
2340
+ }
2341
+ else {
2342
+ peg$currPos = s9;
2343
+ s9 = peg$FAILED;
2344
+ }
2345
+ if (s9 !== peg$FAILED) {
2346
+ if (input.length > peg$currPos) {
2347
+ s10 = input.charAt(peg$currPos);
2348
+ peg$currPos++;
2349
+ }
2350
+ else {
2351
+ s10 = peg$FAILED;
2352
+ if (peg$silentFails === 0) {
2353
+ peg$fail(peg$c39);
2354
+ }
2355
+ }
2356
+ if (s10 !== peg$FAILED) {
2357
+ s9 = [s9, s10];
2358
+ s8 = s9;
2359
+ }
2360
+ else {
2361
+ peg$currPos = s8;
2362
+ s8 = peg$FAILED;
2363
+ }
2364
+ }
2365
+ else {
2366
+ peg$currPos = s8;
2367
+ s8 = peg$FAILED;
2368
+ }
2369
+ }
2370
+ if (s7 !== peg$FAILED) {
2371
+ s6 = input.substring(s6, peg$currPos);
2372
+ }
2373
+ else {
2374
+ s6 = s7;
2375
+ }
2376
+ if (s6 !== peg$FAILED) {
2377
+ peg$savedPos = s4;
2378
+ s5 = peg$c65(s1, s3, s6);
2379
+ s4 = s5;
2380
+ }
2381
+ else {
2382
+ peg$currPos = s4;
2383
+ s4 = peg$FAILED;
2384
+ }
2385
+ }
2386
+ else {
2387
+ peg$currPos = s4;
2388
+ s4 = peg$FAILED;
2389
+ }
2390
+ if (s4 === peg$FAILED) {
2391
+ s4 = null;
2392
+ }
2393
+ if (s4 !== peg$FAILED) {
2394
+ s5 = peg$parseend_code();
2395
+ if (s5 !== peg$FAILED) {
2396
+ peg$savedPos = peg$currPos;
2397
+ s6 = peg$c66(s1, s3, s4, s5);
2398
+ if (s6) {
2399
+ s6 = void 0;
2400
+ }
2401
+ else {
2402
+ s6 = peg$FAILED;
2403
+ }
2404
+ if (s6 !== peg$FAILED) {
2405
+ peg$savedPos = s0;
2406
+ s1 = peg$c67(s1, s3, s4, s5);
2407
+ s0 = s1;
2408
+ }
2409
+ else {
2410
+ peg$currPos = s0;
2411
+ s0 = peg$FAILED;
2412
+ }
2413
+ }
2414
+ else {
2415
+ peg$currPos = s0;
2416
+ s0 = peg$FAILED;
2417
+ }
2418
+ }
2419
+ else {
2420
+ peg$currPos = s0;
2421
+ s0 = peg$FAILED;
2422
+ }
2423
+ }
2424
+ else {
2425
+ peg$currPos = s0;
2426
+ s0 = peg$FAILED;
2427
+ }
2428
+ }
2429
+ else {
2430
+ peg$currPos = s0;
2431
+ s0 = peg$FAILED;
2432
+ }
2433
+ }
2434
+ else {
2435
+ peg$currPos = s0;
2436
+ s0 = peg$FAILED;
2437
+ }
2438
+ return s0;
2439
+ }
2440
+ function peg$parseitem() {
2441
+ var s0, s1, s2, s3, s4, s5;
2442
+ s0 = peg$currPos;
2443
+ s1 = [];
2444
+ s2 = peg$currPos;
2445
+ s3 = peg$currPos;
2446
+ peg$silentFails++;
2447
+ if (input.charCodeAt(peg$currPos) === 59) {
2448
+ s4 = peg$c68;
2449
+ peg$currPos++;
2450
+ }
2451
+ else {
2452
+ s4 = peg$FAILED;
2453
+ if (peg$silentFails === 0) {
2454
+ peg$fail(peg$c69);
2455
+ }
2456
+ }
2457
+ peg$silentFails--;
2458
+ if (s4 === peg$FAILED) {
2459
+ s3 = void 0;
2460
+ }
2461
+ else {
2462
+ peg$currPos = s3;
2463
+ s3 = peg$FAILED;
2464
+ }
2465
+ if (s3 !== peg$FAILED) {
2466
+ s4 = peg$currPos;
2467
+ peg$silentFails++;
2468
+ s5 = peg$parseend_code();
2469
+ peg$silentFails--;
2470
+ if (s5 === peg$FAILED) {
2471
+ s4 = void 0;
2472
+ }
2473
+ else {
2474
+ peg$currPos = s4;
2475
+ s4 = peg$FAILED;
2476
+ }
2477
+ if (s4 !== peg$FAILED) {
2478
+ if (input.length > peg$currPos) {
2479
+ s5 = input.charAt(peg$currPos);
2480
+ peg$currPos++;
2481
+ }
2482
+ else {
2483
+ s5 = peg$FAILED;
2484
+ if (peg$silentFails === 0) {
2485
+ peg$fail(peg$c39);
2486
+ }
2487
+ }
2488
+ if (s5 !== peg$FAILED) {
2489
+ s3 = [s3, s4, s5];
2490
+ s2 = s3;
2491
+ }
2492
+ else {
2493
+ peg$currPos = s2;
2494
+ s2 = peg$FAILED;
2495
+ }
2496
+ }
2497
+ else {
2498
+ peg$currPos = s2;
2499
+ s2 = peg$FAILED;
2500
+ }
2501
+ }
2502
+ else {
2503
+ peg$currPos = s2;
2504
+ s2 = peg$FAILED;
2505
+ }
2506
+ if (s2 !== peg$FAILED) {
2507
+ while (s2 !== peg$FAILED) {
2508
+ s1.push(s2);
2509
+ s2 = peg$currPos;
2510
+ s3 = peg$currPos;
2511
+ peg$silentFails++;
2512
+ if (input.charCodeAt(peg$currPos) === 59) {
2513
+ s4 = peg$c68;
2514
+ peg$currPos++;
2515
+ }
2516
+ else {
2517
+ s4 = peg$FAILED;
2518
+ if (peg$silentFails === 0) {
2519
+ peg$fail(peg$c69);
2520
+ }
2521
+ }
2522
+ peg$silentFails--;
2523
+ if (s4 === peg$FAILED) {
2524
+ s3 = void 0;
2525
+ }
2526
+ else {
2527
+ peg$currPos = s3;
2528
+ s3 = peg$FAILED;
2529
+ }
2530
+ if (s3 !== peg$FAILED) {
2531
+ s4 = peg$currPos;
2532
+ peg$silentFails++;
2533
+ s5 = peg$parseend_code();
2534
+ peg$silentFails--;
2535
+ if (s5 === peg$FAILED) {
2536
+ s4 = void 0;
2537
+ }
2538
+ else {
2539
+ peg$currPos = s4;
2540
+ s4 = peg$FAILED;
2541
+ }
2542
+ if (s4 !== peg$FAILED) {
2543
+ if (input.length > peg$currPos) {
2544
+ s5 = input.charAt(peg$currPos);
2545
+ peg$currPos++;
2546
+ }
2547
+ else {
2548
+ s5 = peg$FAILED;
2549
+ if (peg$silentFails === 0) {
2550
+ peg$fail(peg$c39);
2551
+ }
2552
+ }
2553
+ if (s5 !== peg$FAILED) {
2554
+ s3 = [s3, s4, s5];
2555
+ s2 = s3;
2556
+ }
2557
+ else {
2558
+ peg$currPos = s2;
2559
+ s2 = peg$FAILED;
2560
+ }
2561
+ }
2562
+ else {
2563
+ peg$currPos = s2;
2564
+ s2 = peg$FAILED;
2565
+ }
2566
+ }
2567
+ else {
2568
+ peg$currPos = s2;
2569
+ s2 = peg$FAILED;
2570
+ }
2571
+ }
2572
+ }
2573
+ else {
2574
+ s1 = peg$FAILED;
2575
+ }
2576
+ if (s1 !== peg$FAILED) {
2577
+ s0 = input.substring(s0, peg$currPos);
2578
+ }
2579
+ else {
2580
+ s0 = s1;
2581
+ }
2582
+ return s0;
2583
+ }
2584
+ function peg$parsehs() {
2585
+ var s0;
2586
+ if (peg$c70.test(input.charAt(peg$currPos))) {
2587
+ s0 = input.charAt(peg$currPos);
2588
+ peg$currPos++;
2589
+ }
2590
+ else {
2591
+ s0 = peg$FAILED;
2592
+ if (peg$silentFails === 0) {
2593
+ peg$fail(peg$c71);
2594
+ }
2595
+ }
2596
+ return s0;
2597
+ }
2598
+ function peg$parsearray_items() {
2599
+ var s0, s1, s2, s3, s4, s5;
2600
+ s0 = peg$currPos;
2601
+ s1 = peg$parseitem();
2602
+ if (s1 !== peg$FAILED) {
2603
+ s2 = [];
2604
+ s3 = peg$parsehs();
2605
+ while (s3 !== peg$FAILED) {
2606
+ s2.push(s3);
2607
+ s3 = peg$parsehs();
2608
+ }
2609
+ if (s2 !== peg$FAILED) {
2610
+ if (input.charCodeAt(peg$currPos) === 59) {
2611
+ s3 = peg$c68;
2612
+ peg$currPos++;
2613
+ }
2614
+ else {
2615
+ s3 = peg$FAILED;
2616
+ if (peg$silentFails === 0) {
2617
+ peg$fail(peg$c69);
2618
+ }
2619
+ }
2620
+ if (s3 !== peg$FAILED) {
2621
+ s4 = [];
2622
+ s5 = peg$parsehs();
2623
+ while (s5 !== peg$FAILED) {
2624
+ s4.push(s5);
2625
+ s5 = peg$parsehs();
2626
+ }
2627
+ if (s4 !== peg$FAILED) {
2628
+ s5 = peg$parsearray_items();
2629
+ if (s5 !== peg$FAILED) {
2630
+ peg$savedPos = s0;
2631
+ s1 = peg$c72(s1, s5);
2632
+ s0 = s1;
2633
+ }
2634
+ else {
2635
+ peg$currPos = s0;
2636
+ s0 = peg$FAILED;
2637
+ }
2638
+ }
2639
+ else {
2640
+ peg$currPos = s0;
2641
+ s0 = peg$FAILED;
2642
+ }
2643
+ }
2644
+ else {
2645
+ peg$currPos = s0;
2646
+ s0 = peg$FAILED;
2647
+ }
2648
+ }
2649
+ else {
2650
+ peg$currPos = s0;
2651
+ s0 = peg$FAILED;
2652
+ }
2653
+ }
2654
+ else {
2655
+ peg$currPos = s0;
2656
+ s0 = peg$FAILED;
2657
+ }
2658
+ if (s0 === peg$FAILED) {
2659
+ s0 = peg$currPos;
2660
+ s1 = peg$parseitem();
2661
+ if (s1 !== peg$FAILED) {
2662
+ peg$savedPos = s0;
2663
+ s1 = peg$c73(s1);
2664
+ }
2665
+ s0 = s1;
2666
+ }
2667
+ return s0;
2668
+ }
2669
+ function peg$parsecode_X() {
2670
+ var s0, s1, s2, s3, s4, s5, s6, s7;
2671
+ s0 = peg$currPos;
2672
+ s1 = peg$parsestart_code();
2673
+ if (s1 !== peg$FAILED) {
2674
+ peg$savedPos = peg$currPos;
2675
+ s2 = peg$c74(s1);
2676
+ if (s2) {
2677
+ s2 = void 0;
2678
+ }
2679
+ else {
2680
+ s2 = peg$FAILED;
2681
+ }
2682
+ if (s2 !== peg$FAILED) {
2683
+ s3 = [];
2684
+ s4 = peg$parsetext_L();
2685
+ while (s4 !== peg$FAILED) {
2686
+ s3.push(s4);
2687
+ s4 = peg$parsetext_L();
2688
+ }
2689
+ if (s3 !== peg$FAILED) {
2690
+ s4 = peg$currPos;
2691
+ s5 = peg$parseseparator();
2692
+ if (s5 !== peg$FAILED) {
2693
+ s6 = [];
2694
+ s7 = peg$parsearray_items();
2695
+ while (s7 !== peg$FAILED) {
2696
+ s6.push(s7);
2697
+ s7 = peg$parsearray_items();
2698
+ }
2699
+ if (s6 !== peg$FAILED) {
2700
+ peg$savedPos = s4;
2701
+ s5 = peg$c44(s1, s3, s6);
2702
+ s4 = s5;
2703
+ }
2704
+ else {
2705
+ peg$currPos = s4;
2706
+ s4 = peg$FAILED;
2707
+ }
2708
+ }
2709
+ else {
2710
+ peg$currPos = s4;
2711
+ s4 = peg$FAILED;
2712
+ }
2713
+ if (s4 === peg$FAILED) {
2714
+ s4 = null;
2715
+ }
2716
+ if (s4 !== peg$FAILED) {
2717
+ s5 = peg$parseend_code();
2718
+ if (s5 !== peg$FAILED) {
2719
+ peg$savedPos = s0;
2720
+ s1 = peg$c75(s1, s3, s4);
2721
+ s0 = s1;
2722
+ }
2723
+ else {
2724
+ peg$currPos = s0;
2725
+ s0 = peg$FAILED;
2726
+ }
2727
+ }
2728
+ else {
2729
+ peg$currPos = s0;
2730
+ s0 = peg$FAILED;
2731
+ }
2732
+ }
2733
+ else {
2734
+ peg$currPos = s0;
2735
+ s0 = peg$FAILED;
2736
+ }
2737
+ }
2738
+ else {
2739
+ peg$currPos = s0;
2740
+ s0 = peg$FAILED;
2741
+ }
2742
+ }
2743
+ else {
2744
+ peg$currPos = s0;
2745
+ s0 = peg$FAILED;
2746
+ }
2747
+ return s0;
2748
+ }
2749
+ function peg$parsecode_S() {
2750
+ var s0, s1, s2, s3, s4, s5, s6, s7;
2751
+ s0 = peg$currPos;
2752
+ s1 = peg$parsestart_code();
2753
+ if (s1 !== peg$FAILED) {
2754
+ peg$savedPos = peg$currPos;
2755
+ s2 = peg$c76(s1);
2756
+ if (s2) {
2757
+ s2 = void 0;
2758
+ }
2759
+ else {
2760
+ s2 = peg$FAILED;
2761
+ }
2762
+ if (s2 !== peg$FAILED) {
2763
+ s3 = peg$currPos;
2764
+ s4 = [];
2765
+ s5 = peg$currPos;
2766
+ s6 = peg$currPos;
2767
+ peg$silentFails++;
2768
+ s7 = peg$parseend_code();
2769
+ peg$silentFails--;
2770
+ if (s7 === peg$FAILED) {
2771
+ s6 = void 0;
2772
+ }
2773
+ else {
2774
+ peg$currPos = s6;
2775
+ s6 = peg$FAILED;
2776
+ }
2777
+ if (s6 !== peg$FAILED) {
2778
+ if (input.length > peg$currPos) {
2779
+ s7 = input.charAt(peg$currPos);
2780
+ peg$currPos++;
2781
+ }
2782
+ else {
2783
+ s7 = peg$FAILED;
2784
+ if (peg$silentFails === 0) {
2785
+ peg$fail(peg$c39);
2786
+ }
2787
+ }
2788
+ if (s7 !== peg$FAILED) {
2789
+ s6 = [s6, s7];
2790
+ s5 = s6;
2791
+ }
2792
+ else {
2793
+ peg$currPos = s5;
2794
+ s5 = peg$FAILED;
2795
+ }
2796
+ }
2797
+ else {
2798
+ peg$currPos = s5;
2799
+ s5 = peg$FAILED;
2800
+ }
2801
+ while (s5 !== peg$FAILED) {
2802
+ s4.push(s5);
2803
+ s5 = peg$currPos;
2804
+ s6 = peg$currPos;
2805
+ peg$silentFails++;
2806
+ s7 = peg$parseend_code();
2807
+ peg$silentFails--;
2808
+ if (s7 === peg$FAILED) {
2809
+ s6 = void 0;
2810
+ }
2811
+ else {
2812
+ peg$currPos = s6;
2813
+ s6 = peg$FAILED;
2814
+ }
2815
+ if (s6 !== peg$FAILED) {
2816
+ if (input.length > peg$currPos) {
2817
+ s7 = input.charAt(peg$currPos);
2818
+ peg$currPos++;
2819
+ }
2820
+ else {
2821
+ s7 = peg$FAILED;
2822
+ if (peg$silentFails === 0) {
2823
+ peg$fail(peg$c39);
2824
+ }
2825
+ }
2826
+ if (s7 !== peg$FAILED) {
2827
+ s6 = [s6, s7];
2828
+ s5 = s6;
2829
+ }
2830
+ else {
2831
+ peg$currPos = s5;
2832
+ s5 = peg$FAILED;
2833
+ }
2834
+ }
2835
+ else {
2836
+ peg$currPos = s5;
2837
+ s5 = peg$FAILED;
2838
+ }
2839
+ }
2840
+ if (s4 !== peg$FAILED) {
2841
+ s3 = input.substring(s3, peg$currPos);
2842
+ }
2843
+ else {
2844
+ s3 = s4;
2845
+ }
2846
+ if (s3 !== peg$FAILED) {
2847
+ s4 = peg$parseend_code();
2848
+ if (s4 !== peg$FAILED) {
2849
+ peg$savedPos = s0;
2850
+ s1 = peg$c42(s1, s3);
2851
+ s0 = s1;
2852
+ }
2853
+ else {
2854
+ peg$currPos = s0;
2855
+ s0 = peg$FAILED;
2856
+ }
2857
+ }
2858
+ else {
2859
+ peg$currPos = s0;
2860
+ s0 = peg$FAILED;
2861
+ }
2862
+ }
2863
+ else {
2864
+ peg$currPos = s0;
2865
+ s0 = peg$FAILED;
2866
+ }
2867
+ }
2868
+ else {
2869
+ peg$currPos = s0;
2870
+ s0 = peg$FAILED;
2871
+ }
2872
+ return s0;
2873
+ }
2874
+ function peg$parsecode_Z() {
2875
+ var s0, s1, s2, s3, s4, s5, s6, s7;
2876
+ s0 = peg$currPos;
2877
+ s1 = peg$parsestart_code();
2878
+ if (s1 !== peg$FAILED) {
2879
+ peg$savedPos = peg$currPos;
2880
+ s2 = peg$c77(s1);
2881
+ if (s2) {
2882
+ s2 = void 0;
2883
+ }
2884
+ else {
2885
+ s2 = peg$FAILED;
2886
+ }
2887
+ if (s2 !== peg$FAILED) {
2888
+ s3 = peg$currPos;
2889
+ s4 = [];
2890
+ s5 = peg$currPos;
2891
+ s6 = peg$currPos;
2892
+ peg$silentFails++;
2893
+ s7 = peg$parseend_code();
2894
+ peg$silentFails--;
2895
+ if (s7 === peg$FAILED) {
2896
+ s6 = void 0;
2897
+ }
2898
+ else {
2899
+ peg$currPos = s6;
2900
+ s6 = peg$FAILED;
2901
+ }
2902
+ if (s6 !== peg$FAILED) {
2903
+ if (input.length > peg$currPos) {
2904
+ s7 = input.charAt(peg$currPos);
2905
+ peg$currPos++;
2906
+ }
2907
+ else {
2908
+ s7 = peg$FAILED;
2909
+ if (peg$silentFails === 0) {
2910
+ peg$fail(peg$c39);
2911
+ }
2912
+ }
2913
+ if (s7 !== peg$FAILED) {
2914
+ s6 = [s6, s7];
2915
+ s5 = s6;
2916
+ }
2917
+ else {
2918
+ peg$currPos = s5;
2919
+ s5 = peg$FAILED;
2920
+ }
2921
+ }
2922
+ else {
2923
+ peg$currPos = s5;
2924
+ s5 = peg$FAILED;
2925
+ }
2926
+ while (s5 !== peg$FAILED) {
2927
+ s4.push(s5);
2928
+ s5 = peg$currPos;
2929
+ s6 = peg$currPos;
2930
+ peg$silentFails++;
2931
+ s7 = peg$parseend_code();
2932
+ peg$silentFails--;
2933
+ if (s7 === peg$FAILED) {
2934
+ s6 = void 0;
2935
+ }
2936
+ else {
2937
+ peg$currPos = s6;
2938
+ s6 = peg$FAILED;
2939
+ }
2940
+ if (s6 !== peg$FAILED) {
2941
+ if (input.length > peg$currPos) {
2942
+ s7 = input.charAt(peg$currPos);
2943
+ peg$currPos++;
2944
+ }
2945
+ else {
2946
+ s7 = peg$FAILED;
2947
+ if (peg$silentFails === 0) {
2948
+ peg$fail(peg$c39);
2949
+ }
2950
+ }
2951
+ if (s7 !== peg$FAILED) {
2952
+ s6 = [s6, s7];
2953
+ s5 = s6;
2954
+ }
2955
+ else {
2956
+ peg$currPos = s5;
2957
+ s5 = peg$FAILED;
2958
+ }
2959
+ }
2960
+ else {
2961
+ peg$currPos = s5;
2962
+ s5 = peg$FAILED;
2963
+ }
2964
+ }
2965
+ if (s4 !== peg$FAILED) {
2966
+ s3 = input.substring(s3, peg$currPos);
2967
+ }
2968
+ else {
2969
+ s3 = s4;
2970
+ }
2971
+ if (s3 !== peg$FAILED) {
2972
+ s4 = peg$parseend_code();
2973
+ if (s4 !== peg$FAILED) {
2974
+ peg$savedPos = s0;
2975
+ s1 = peg$c42(s1, s3);
2976
+ s0 = s1;
2977
+ }
2978
+ else {
2979
+ peg$currPos = s0;
2980
+ s0 = peg$FAILED;
2981
+ }
2982
+ }
2983
+ else {
2984
+ peg$currPos = s0;
2985
+ s0 = peg$FAILED;
2986
+ }
2987
+ }
2988
+ else {
2989
+ peg$currPos = s0;
2990
+ s0 = peg$FAILED;
2991
+ }
2992
+ }
2993
+ else {
2994
+ peg$currPos = s0;
2995
+ s0 = peg$FAILED;
2996
+ }
2997
+ return s0;
2998
+ }
2999
+ function peg$parsenumber() {
3000
+ var s0, s1, s2;
3001
+ s0 = peg$currPos;
3002
+ s1 = [];
3003
+ if (peg$c78.test(input.charAt(peg$currPos))) {
3004
+ s2 = input.charAt(peg$currPos);
3005
+ peg$currPos++;
3006
+ }
3007
+ else {
3008
+ s2 = peg$FAILED;
3009
+ if (peg$silentFails === 0) {
3010
+ peg$fail(peg$c79);
3011
+ }
3012
+ }
3013
+ if (s2 !== peg$FAILED) {
3014
+ while (s2 !== peg$FAILED) {
3015
+ s1.push(s2);
3016
+ if (peg$c78.test(input.charAt(peg$currPos))) {
3017
+ s2 = input.charAt(peg$currPos);
3018
+ peg$currPos++;
3019
+ }
3020
+ else {
3021
+ s2 = peg$FAILED;
3022
+ if (peg$silentFails === 0) {
3023
+ peg$fail(peg$c79);
3024
+ }
3025
+ }
3026
+ }
3027
+ }
3028
+ else {
3029
+ s1 = peg$FAILED;
3030
+ }
3031
+ if (s1 !== peg$FAILED) {
3032
+ s0 = input.substring(s0, peg$currPos);
3033
+ }
3034
+ else {
3035
+ s0 = s1;
3036
+ }
3037
+ return s0;
3038
+ }
3039
+ function peg$parsedecimalNumber() {
3040
+ var s0, s1, s2;
3041
+ s0 = peg$currPos;
3042
+ if (input.substr(peg$currPos, 2) === peg$c80) {
3043
+ s1 = peg$c80;
3044
+ peg$currPos += 2;
3045
+ }
3046
+ else {
3047
+ s1 = peg$FAILED;
3048
+ if (peg$silentFails === 0) {
3049
+ peg$fail(peg$c81);
3050
+ }
3051
+ }
3052
+ if (s1 !== peg$FAILED) {
3053
+ s2 = peg$parsenumber();
3054
+ if (s2 !== peg$FAILED) {
3055
+ peg$savedPos = s0;
3056
+ s1 = peg$c82(s2);
3057
+ s0 = s1;
3058
+ }
3059
+ else {
3060
+ peg$currPos = s0;
3061
+ s0 = peg$FAILED;
3062
+ }
3063
+ }
3064
+ else {
3065
+ peg$currPos = s0;
3066
+ s0 = peg$FAILED;
3067
+ }
3068
+ return s0;
3069
+ }
3070
+ function peg$parseoctalNumber() {
3071
+ var s0, s1, s2;
3072
+ s0 = peg$currPos;
3073
+ if (input.substr(peg$currPos, 2) === peg$c83) {
3074
+ s1 = peg$c83;
3075
+ peg$currPos += 2;
3076
+ }
3077
+ else {
3078
+ s1 = peg$FAILED;
3079
+ if (peg$silentFails === 0) {
3080
+ peg$fail(peg$c84);
3081
+ }
3082
+ }
3083
+ if (s1 !== peg$FAILED) {
3084
+ s2 = peg$parsenumber();
3085
+ if (s2 !== peg$FAILED) {
3086
+ peg$savedPos = s0;
3087
+ s1 = peg$c85(s2);
3088
+ s0 = s1;
3089
+ }
3090
+ else {
3091
+ peg$currPos = s0;
3092
+ s0 = peg$FAILED;
3093
+ }
3094
+ }
3095
+ else {
3096
+ peg$currPos = s0;
3097
+ s0 = peg$FAILED;
3098
+ }
3099
+ return s0;
3100
+ }
3101
+ function peg$parsebinaryNumber() {
3102
+ var s0, s1, s2;
3103
+ s0 = peg$currPos;
3104
+ if (input.substr(peg$currPos, 2) === peg$c86) {
3105
+ s1 = peg$c86;
3106
+ peg$currPos += 2;
3107
+ }
3108
+ else {
3109
+ s1 = peg$FAILED;
3110
+ if (peg$silentFails === 0) {
3111
+ peg$fail(peg$c87);
3112
+ }
3113
+ }
3114
+ if (s1 !== peg$FAILED) {
3115
+ s2 = peg$parsenumber();
3116
+ if (s2 !== peg$FAILED) {
3117
+ peg$savedPos = s0;
3118
+ s1 = peg$c88(s2);
3119
+ s0 = s1;
3120
+ }
3121
+ else {
3122
+ peg$currPos = s0;
3123
+ s0 = peg$FAILED;
3124
+ }
3125
+ }
3126
+ else {
3127
+ peg$currPos = s0;
3128
+ s0 = peg$FAILED;
3129
+ }
3130
+ return s0;
3131
+ }
3132
+ function peg$parsehexadecimalNumber() {
3133
+ var s0, s1, s2, s3, s4, s5;
3134
+ s0 = peg$currPos;
3135
+ s1 = peg$currPos;
3136
+ s2 = peg$currPos;
3137
+ if (input.substr(peg$currPos, 2) === peg$c89) {
3138
+ s3 = peg$c89;
3139
+ peg$currPos += 2;
3140
+ }
3141
+ else {
3142
+ s3 = peg$FAILED;
3143
+ if (peg$silentFails === 0) {
3144
+ peg$fail(peg$c90);
3145
+ }
3146
+ }
3147
+ if (s3 !== peg$FAILED) {
3148
+ s4 = [];
3149
+ if (peg$c91.test(input.charAt(peg$currPos))) {
3150
+ s5 = input.charAt(peg$currPos);
3151
+ peg$currPos++;
3152
+ }
3153
+ else {
3154
+ s5 = peg$FAILED;
3155
+ if (peg$silentFails === 0) {
3156
+ peg$fail(peg$c92);
3157
+ }
3158
+ }
3159
+ if (s5 !== peg$FAILED) {
3160
+ while (s5 !== peg$FAILED) {
3161
+ s4.push(s5);
3162
+ if (peg$c91.test(input.charAt(peg$currPos))) {
3163
+ s5 = input.charAt(peg$currPos);
3164
+ peg$currPos++;
3165
+ }
3166
+ else {
3167
+ s5 = peg$FAILED;
3168
+ if (peg$silentFails === 0) {
3169
+ peg$fail(peg$c92);
3170
+ }
3171
+ }
3172
+ }
3173
+ }
3174
+ else {
3175
+ s4 = peg$FAILED;
3176
+ }
3177
+ if (s4 !== peg$FAILED) {
3178
+ s3 = [s3, s4];
3179
+ s2 = s3;
3180
+ }
3181
+ else {
3182
+ peg$currPos = s2;
3183
+ s2 = peg$FAILED;
3184
+ }
3185
+ }
3186
+ else {
3187
+ peg$currPos = s2;
3188
+ s2 = peg$FAILED;
3189
+ }
3190
+ if (s2 !== peg$FAILED) {
3191
+ s1 = input.substring(s1, peg$currPos);
3192
+ }
3193
+ else {
3194
+ s1 = s2;
3195
+ }
3196
+ if (s1 !== peg$FAILED) {
3197
+ peg$savedPos = s0;
3198
+ s1 = peg$c93();
3199
+ }
3200
+ s0 = s1;
3201
+ return s0;
3202
+ }
3203
+ function peg$parseitem_E() {
3204
+ var s0, s1, s2;
3205
+ s0 = peg$currPos;
3206
+ s1 = peg$parse_();
3207
+ if (s1 !== peg$FAILED) {
3208
+ s2 = peg$parseoctalNumber();
3209
+ if (s2 === peg$FAILED) {
3210
+ s2 = peg$parsedecimalNumber();
3211
+ if (s2 === peg$FAILED) {
3212
+ s2 = peg$parsebinaryNumber();
3213
+ if (s2 === peg$FAILED) {
3214
+ s2 = peg$parsehexadecimalNumber();
3215
+ if (s2 === peg$FAILED) {
3216
+ s2 = peg$parsenumber();
3217
+ }
3218
+ }
3219
+ }
3220
+ }
3221
+ if (s2 !== peg$FAILED) {
3222
+ peg$savedPos = s0;
3223
+ s1 = peg$c94(s2);
3224
+ s0 = s1;
3225
+ }
3226
+ else {
3227
+ peg$currPos = s0;
3228
+ s0 = peg$FAILED;
3229
+ }
3230
+ }
3231
+ else {
3232
+ peg$currPos = s0;
3233
+ s0 = peg$FAILED;
3234
+ }
3235
+ return s0;
3236
+ }
3237
+ function peg$parsearray_E_items() {
3238
+ var s0, s1, s2, s3, s4, s5;
3239
+ s0 = peg$currPos;
3240
+ s1 = peg$parseitem_E();
3241
+ if (s1 !== peg$FAILED) {
3242
+ s2 = [];
3243
+ s3 = peg$parsehs();
3244
+ while (s3 !== peg$FAILED) {
3245
+ s2.push(s3);
3246
+ s3 = peg$parsehs();
3247
+ }
3248
+ if (s2 !== peg$FAILED) {
3249
+ if (input.charCodeAt(peg$currPos) === 59) {
3250
+ s3 = peg$c68;
3251
+ peg$currPos++;
3252
+ }
3253
+ else {
3254
+ s3 = peg$FAILED;
3255
+ if (peg$silentFails === 0) {
3256
+ peg$fail(peg$c69);
3257
+ }
3258
+ }
3259
+ if (s3 !== peg$FAILED) {
3260
+ s4 = [];
3261
+ s5 = peg$parsehs();
3262
+ while (s5 !== peg$FAILED) {
3263
+ s4.push(s5);
3264
+ s5 = peg$parsehs();
3265
+ }
3266
+ if (s4 !== peg$FAILED) {
3267
+ s5 = peg$parsearray_E_items();
3268
+ if (s5 !== peg$FAILED) {
3269
+ peg$savedPos = s0;
3270
+ s1 = peg$c72(s1, s5);
3271
+ s0 = s1;
3272
+ }
3273
+ else {
3274
+ peg$currPos = s0;
3275
+ s0 = peg$FAILED;
3276
+ }
3277
+ }
3278
+ else {
3279
+ peg$currPos = s0;
3280
+ s0 = peg$FAILED;
3281
+ }
3282
+ }
3283
+ else {
3284
+ peg$currPos = s0;
3285
+ s0 = peg$FAILED;
3286
+ }
3287
+ }
3288
+ else {
3289
+ peg$currPos = s0;
3290
+ s0 = peg$FAILED;
3291
+ }
3292
+ }
3293
+ else {
3294
+ peg$currPos = s0;
3295
+ s0 = peg$FAILED;
3296
+ }
3297
+ if (s0 === peg$FAILED) {
3298
+ s0 = peg$currPos;
3299
+ s1 = peg$parseitem_E();
3300
+ if (s1 !== peg$FAILED) {
3301
+ peg$savedPos = s0;
3302
+ s1 = peg$c73(s1);
3303
+ }
3304
+ s0 = s1;
3305
+ }
3306
+ return s0;
3307
+ }
3308
+ function peg$parsecode_E() {
3309
+ var s0, s1, s2, s3, s4;
3310
+ s0 = peg$currPos;
3311
+ s1 = peg$parsestart_code();
3312
+ if (s1 !== peg$FAILED) {
3313
+ peg$savedPos = peg$currPos;
3314
+ s2 = peg$c95(s1);
3315
+ if (s2) {
3316
+ s2 = void 0;
3317
+ }
3318
+ else {
3319
+ s2 = peg$FAILED;
3320
+ }
3321
+ if (s2 !== peg$FAILED) {
3322
+ s3 = peg$currPos;
3323
+ s4 = peg$parsearray_E_items();
3324
+ if (s4 !== peg$FAILED) {
3325
+ peg$savedPos = s3;
3326
+ s4 = peg$c96(s1, s4);
3327
+ }
3328
+ s3 = s4;
3329
+ if (s3 === peg$FAILED) {
3330
+ s3 = null;
3331
+ }
3332
+ if (s3 !== peg$FAILED) {
3333
+ s4 = peg$parseend_code();
3334
+ if (s4 !== peg$FAILED) {
3335
+ peg$savedPos = s0;
3336
+ s1 = peg$c97(s1, s3);
3337
+ s0 = s1;
3338
+ }
3339
+ else {
3340
+ peg$currPos = s0;
3341
+ s0 = peg$FAILED;
3342
+ }
3343
+ }
3344
+ else {
3345
+ peg$currPos = s0;
3346
+ s0 = peg$FAILED;
3347
+ }
3348
+ }
3349
+ else {
3350
+ peg$currPos = s0;
3351
+ s0 = peg$FAILED;
3352
+ }
3353
+ }
3354
+ else {
3355
+ peg$currPos = s0;
3356
+ s0 = peg$FAILED;
3357
+ }
3358
+ return s0;
3359
+ }
3360
+ function peg$parsestart_code() {
3361
+ var s0, s1, s2;
3362
+ s0 = peg$currPos;
3363
+ s1 = peg$currPos;
3364
+ s2 = peg$parseallowed_code();
3365
+ if (s2 !== peg$FAILED) {
3366
+ s1 = input.substring(s1, peg$currPos);
3367
+ }
3368
+ else {
3369
+ s1 = s2;
3370
+ }
3371
+ if (s1 !== peg$FAILED) {
3372
+ if (input.charCodeAt(peg$currPos) === 60) {
3373
+ s2 = peg$c48;
3374
+ peg$currPos++;
3375
+ }
3376
+ else {
3377
+ s2 = peg$FAILED;
3378
+ if (peg$silentFails === 0) {
3379
+ peg$fail(peg$c49);
3380
+ }
3381
+ }
3382
+ if (s2 !== peg$FAILED) {
3383
+ peg$savedPos = s0;
3384
+ s1 = peg$c98(s1);
3385
+ s0 = s1;
3386
+ }
3387
+ else {
3388
+ peg$currPos = s0;
3389
+ s0 = peg$FAILED;
3390
+ }
3391
+ }
3392
+ else {
3393
+ peg$currPos = s0;
3394
+ s0 = peg$FAILED;
3395
+ }
3396
+ return s0;
3397
+ }
3398
+ function peg$parsestart_code_2() {
3399
+ var s0, s1, s2, s3;
3400
+ s0 = peg$currPos;
3401
+ s1 = peg$currPos;
3402
+ s2 = peg$parseallowed_code();
3403
+ if (s2 !== peg$FAILED) {
3404
+ s1 = input.substring(s1, peg$currPos);
3405
+ }
3406
+ else {
3407
+ s1 = s2;
3408
+ }
3409
+ if (s1 !== peg$FAILED) {
3410
+ s2 = peg$currPos;
3411
+ if (input.charCodeAt(peg$currPos) === 60) {
3412
+ s3 = peg$c48;
3413
+ peg$currPos++;
3414
+ }
3415
+ else {
3416
+ s3 = peg$FAILED;
3417
+ if (peg$silentFails === 0) {
3418
+ peg$fail(peg$c49);
3419
+ }
3420
+ }
3421
+ if (s3 === peg$FAILED) {
3422
+ if (input.charCodeAt(peg$currPos) === 171) {
3423
+ s3 = peg$c53;
3424
+ peg$currPos++;
3425
+ }
3426
+ else {
3427
+ s3 = peg$FAILED;
3428
+ if (peg$silentFails === 0) {
3429
+ peg$fail(peg$c54);
3430
+ }
3431
+ }
3432
+ }
3433
+ if (s3 !== peg$FAILED) {
3434
+ s2 = input.substring(s2, peg$currPos);
3435
+ }
3436
+ else {
3437
+ s2 = s3;
3438
+ }
3439
+ if (s2 !== peg$FAILED) {
3440
+ peg$savedPos = s0;
3441
+ s1 = peg$c99(s1, s2);
3442
+ s0 = s1;
3443
+ }
3444
+ else {
3445
+ peg$currPos = s0;
3446
+ s0 = peg$FAILED;
3447
+ }
3448
+ }
3449
+ else {
3450
+ peg$currPos = s0;
3451
+ s0 = peg$FAILED;
3452
+ }
3453
+ return s0;
3454
+ }
3455
+ function peg$parseend_code() {
3456
+ var s0;
3457
+ if (input.charCodeAt(peg$currPos) === 62) {
3458
+ s0 = peg$c50;
3459
+ peg$currPos++;
3460
+ }
3461
+ else {
3462
+ s0 = peg$FAILED;
3463
+ if (peg$silentFails === 0) {
3464
+ peg$fail(peg$c51);
3465
+ }
3466
+ }
3467
+ if (s0 === peg$FAILED) {
3468
+ if (input.charCodeAt(peg$currPos) === 187) {
3469
+ s0 = peg$c55;
3470
+ peg$currPos++;
3471
+ }
3472
+ else {
3473
+ s0 = peg$FAILED;
3474
+ if (peg$silentFails === 0) {
3475
+ peg$fail(peg$c56);
3476
+ }
3477
+ }
3478
+ }
3479
+ return s0;
3480
+ }
3481
+ function peg$parsecode_2() {
3482
+ var s0, s1, s2, s3, s4, s5;
3483
+ s0 = peg$currPos;
3484
+ s1 = peg$parsestart_code_2();
3485
+ if (s1 !== peg$FAILED) {
3486
+ peg$savedPos = peg$currPos;
3487
+ s2 = peg$c100(s1);
3488
+ if (s2) {
3489
+ s2 = void 0;
3490
+ }
3491
+ else {
3492
+ s2 = peg$FAILED;
3493
+ }
3494
+ if (s2 !== peg$FAILED) {
3495
+ s3 = [];
3496
+ s4 = peg$parseallowed_rules();
3497
+ if (s4 === peg$FAILED) {
3498
+ s4 = peg$parsecode_2();
3499
+ if (s4 === peg$FAILED) {
3500
+ s4 = peg$parsetext();
3501
+ }
3502
+ }
3503
+ while (s4 !== peg$FAILED) {
3504
+ s3.push(s4);
3505
+ s4 = peg$parseallowed_rules();
3506
+ if (s4 === peg$FAILED) {
3507
+ s4 = peg$parsecode_2();
3508
+ if (s4 === peg$FAILED) {
3509
+ s4 = peg$parsetext();
3510
+ }
3511
+ }
3512
+ }
3513
+ if (s3 !== peg$FAILED) {
3514
+ s4 = peg$parseend_code();
3515
+ if (s4 !== peg$FAILED) {
3516
+ peg$savedPos = peg$currPos;
3517
+ s5 = peg$c101(s1, s3, s4);
3518
+ if (s5) {
3519
+ s5 = void 0;
3520
+ }
3521
+ else {
3522
+ s5 = peg$FAILED;
3523
+ }
3524
+ if (s5 !== peg$FAILED) {
3525
+ peg$savedPos = s0;
3526
+ s1 = peg$c102(s1, s3, s4);
3527
+ s0 = s1;
3528
+ }
3529
+ else {
3530
+ peg$currPos = s0;
3531
+ s0 = peg$FAILED;
3532
+ }
3533
+ }
3534
+ else {
3535
+ peg$currPos = s0;
3536
+ s0 = peg$FAILED;
3537
+ }
3538
+ }
3539
+ else {
3540
+ peg$currPos = s0;
3541
+ s0 = peg$FAILED;
3542
+ }
3543
+ }
3544
+ else {
3545
+ peg$currPos = s0;
3546
+ s0 = peg$FAILED;
3547
+ }
3548
+ }
3549
+ else {
3550
+ peg$currPos = s0;
3551
+ s0 = peg$FAILED;
3552
+ }
3553
+ return s0;
3554
+ }
3555
+ function peg$parseempty() {
3556
+ var s0, s1, s2, s3, s4;
3557
+ s0 = peg$currPos;
3558
+ s1 = [];
3559
+ s2 = peg$currPos;
3560
+ s3 = peg$currPos;
3561
+ peg$silentFails++;
3562
+ s4 = peg$parseend_code();
3563
+ peg$silentFails--;
3564
+ if (s4 === peg$FAILED) {
3565
+ s3 = void 0;
3566
+ }
3567
+ else {
3568
+ peg$currPos = s3;
3569
+ s3 = peg$FAILED;
3570
+ }
3571
+ if (s3 !== peg$FAILED) {
3572
+ if (input.length > peg$currPos) {
3573
+ s4 = input.charAt(peg$currPos);
3574
+ peg$currPos++;
3575
+ }
3576
+ else {
3577
+ s4 = peg$FAILED;
3578
+ if (peg$silentFails === 0) {
3579
+ peg$fail(peg$c39);
3580
+ }
3581
+ }
3582
+ if (s4 !== peg$FAILED) {
3583
+ s3 = [s3, s4];
3584
+ s2 = s3;
3585
+ }
3586
+ else {
3587
+ peg$currPos = s2;
3588
+ s2 = peg$FAILED;
3589
+ }
3590
+ }
3591
+ else {
3592
+ peg$currPos = s2;
3593
+ s2 = peg$FAILED;
3594
+ }
3595
+ while (s2 !== peg$FAILED) {
3596
+ s1.push(s2);
3597
+ s2 = peg$currPos;
3598
+ s3 = peg$currPos;
3599
+ peg$silentFails++;
3600
+ s4 = peg$parseend_code();
3601
+ peg$silentFails--;
3602
+ if (s4 === peg$FAILED) {
3603
+ s3 = void 0;
3604
+ }
3605
+ else {
3606
+ peg$currPos = s3;
3607
+ s3 = peg$FAILED;
3608
+ }
3609
+ if (s3 !== peg$FAILED) {
3610
+ if (input.length > peg$currPos) {
3611
+ s4 = input.charAt(peg$currPos);
3612
+ peg$currPos++;
3613
+ }
3614
+ else {
3615
+ s4 = peg$FAILED;
3616
+ if (peg$silentFails === 0) {
3617
+ peg$fail(peg$c39);
3618
+ }
3619
+ }
3620
+ if (s4 !== peg$FAILED) {
3621
+ s3 = [s3, s4];
3622
+ s2 = s3;
3623
+ }
3624
+ else {
3625
+ peg$currPos = s2;
3626
+ s2 = peg$FAILED;
3627
+ }
3628
+ }
3629
+ else {
3630
+ peg$currPos = s2;
3631
+ s2 = peg$FAILED;
3632
+ }
3633
+ }
3634
+ if (s1 !== peg$FAILED) {
3635
+ s0 = input.substring(s0, peg$currPos);
3636
+ }
3637
+ else {
3638
+ s0 = s1;
3639
+ }
3640
+ return s0;
3641
+ }
3642
+ function peg$parsetext() {
3643
+ var s0, s1, s2, s3, s4, s5, s6;
3644
+ s0 = peg$currPos;
3645
+ s1 = peg$currPos;
3646
+ s2 = [];
3647
+ s3 = peg$currPos;
3648
+ if (input.charCodeAt(peg$currPos) === 60) {
3649
+ s4 = peg$c48;
3650
+ peg$currPos++;
3651
+ }
3652
+ else {
3653
+ s4 = peg$FAILED;
3654
+ if (peg$silentFails === 0) {
3655
+ peg$fail(peg$c49);
3656
+ }
3657
+ }
3658
+ if (s4 !== peg$FAILED) {
3659
+ s5 = peg$parsetext();
3660
+ if (s5 !== peg$FAILED) {
3661
+ if (input.charCodeAt(peg$currPos) === 62) {
3662
+ s6 = peg$c50;
3663
+ peg$currPos++;
3664
+ }
3665
+ else {
3666
+ s6 = peg$FAILED;
3667
+ if (peg$silentFails === 0) {
3668
+ peg$fail(peg$c51);
3669
+ }
3670
+ }
3671
+ if (s6 !== peg$FAILED) {
3672
+ s4 = [s4, s5, s6];
3673
+ s3 = s4;
3674
+ }
3675
+ else {
3676
+ peg$currPos = s3;
3677
+ s3 = peg$FAILED;
3678
+ }
3679
+ }
3680
+ else {
3681
+ peg$currPos = s3;
3682
+ s3 = peg$FAILED;
3683
+ }
3684
+ }
3685
+ else {
3686
+ peg$currPos = s3;
3687
+ s3 = peg$FAILED;
3688
+ }
3689
+ if (s3 === peg$FAILED) {
3690
+ s3 = peg$currPos;
3691
+ if (input.charCodeAt(peg$currPos) === 171) {
3692
+ s4 = peg$c53;
3693
+ peg$currPos++;
3694
+ }
3695
+ else {
3696
+ s4 = peg$FAILED;
3697
+ if (peg$silentFails === 0) {
3698
+ peg$fail(peg$c54);
3699
+ }
3700
+ }
3701
+ if (s4 !== peg$FAILED) {
3702
+ s5 = peg$parsetext();
3703
+ if (s5 !== peg$FAILED) {
3704
+ if (input.charCodeAt(peg$currPos) === 187) {
3705
+ s6 = peg$c55;
3706
+ peg$currPos++;
3707
+ }
3708
+ else {
3709
+ s6 = peg$FAILED;
3710
+ if (peg$silentFails === 0) {
3711
+ peg$fail(peg$c56);
3712
+ }
3713
+ }
3714
+ if (s6 !== peg$FAILED) {
3715
+ s4 = [s4, s5, s6];
3716
+ s3 = s4;
3717
+ }
3718
+ else {
3719
+ peg$currPos = s3;
3720
+ s3 = peg$FAILED;
3721
+ }
3722
+ }
3723
+ else {
3724
+ peg$currPos = s3;
3725
+ s3 = peg$FAILED;
3726
+ }
3727
+ }
3728
+ else {
3729
+ peg$currPos = s3;
3730
+ s3 = peg$FAILED;
3731
+ }
3732
+ if (s3 === peg$FAILED) {
3733
+ s3 = peg$parselooks_like_code();
3734
+ if (s3 === peg$FAILED) {
3735
+ s3 = peg$parsenot_code();
3736
+ }
3737
+ }
3738
+ }
3739
+ if (s3 !== peg$FAILED) {
3740
+ while (s3 !== peg$FAILED) {
3741
+ s2.push(s3);
3742
+ s3 = peg$currPos;
3743
+ if (input.charCodeAt(peg$currPos) === 60) {
3744
+ s4 = peg$c48;
3745
+ peg$currPos++;
3746
+ }
3747
+ else {
3748
+ s4 = peg$FAILED;
3749
+ if (peg$silentFails === 0) {
3750
+ peg$fail(peg$c49);
3751
+ }
3752
+ }
3753
+ if (s4 !== peg$FAILED) {
3754
+ s5 = peg$parsetext();
3755
+ if (s5 !== peg$FAILED) {
3756
+ if (input.charCodeAt(peg$currPos) === 62) {
3757
+ s6 = peg$c50;
3758
+ peg$currPos++;
3759
+ }
3760
+ else {
3761
+ s6 = peg$FAILED;
3762
+ if (peg$silentFails === 0) {
3763
+ peg$fail(peg$c51);
3764
+ }
3765
+ }
3766
+ if (s6 !== peg$FAILED) {
3767
+ s4 = [s4, s5, s6];
3768
+ s3 = s4;
3769
+ }
3770
+ else {
3771
+ peg$currPos = s3;
3772
+ s3 = peg$FAILED;
3773
+ }
3774
+ }
3775
+ else {
3776
+ peg$currPos = s3;
3777
+ s3 = peg$FAILED;
3778
+ }
3779
+ }
3780
+ else {
3781
+ peg$currPos = s3;
3782
+ s3 = peg$FAILED;
3783
+ }
3784
+ if (s3 === peg$FAILED) {
3785
+ s3 = peg$currPos;
3786
+ if (input.charCodeAt(peg$currPos) === 171) {
3787
+ s4 = peg$c53;
3788
+ peg$currPos++;
3789
+ }
3790
+ else {
3791
+ s4 = peg$FAILED;
3792
+ if (peg$silentFails === 0) {
3793
+ peg$fail(peg$c54);
3794
+ }
3795
+ }
3796
+ if (s4 !== peg$FAILED) {
3797
+ s5 = peg$parsetext();
3798
+ if (s5 !== peg$FAILED) {
3799
+ if (input.charCodeAt(peg$currPos) === 187) {
3800
+ s6 = peg$c55;
3801
+ peg$currPos++;
3802
+ }
3803
+ else {
3804
+ s6 = peg$FAILED;
3805
+ if (peg$silentFails === 0) {
3806
+ peg$fail(peg$c56);
3807
+ }
3808
+ }
3809
+ if (s6 !== peg$FAILED) {
3810
+ s4 = [s4, s5, s6];
3811
+ s3 = s4;
3812
+ }
3813
+ else {
3814
+ peg$currPos = s3;
3815
+ s3 = peg$FAILED;
3816
+ }
3817
+ }
3818
+ else {
3819
+ peg$currPos = s3;
3820
+ s3 = peg$FAILED;
3821
+ }
3822
+ }
3823
+ else {
3824
+ peg$currPos = s3;
3825
+ s3 = peg$FAILED;
3826
+ }
3827
+ if (s3 === peg$FAILED) {
3828
+ s3 = peg$parselooks_like_code();
3829
+ if (s3 === peg$FAILED) {
3830
+ s3 = peg$parsenot_code();
3831
+ }
3832
+ }
3833
+ }
3834
+ }
3835
+ }
3836
+ else {
3837
+ s2 = peg$FAILED;
3838
+ }
3839
+ if (s2 !== peg$FAILED) {
3840
+ s1 = input.substring(s1, peg$currPos);
3841
+ }
3842
+ else {
3843
+ s1 = s2;
3844
+ }
3845
+ if (s1 !== peg$FAILED) {
3846
+ peg$savedPos = s0;
3847
+ s1 = peg$c57(s1);
3848
+ }
3849
+ s0 = s1;
3850
+ return s0;
3851
+ }
3852
+ function peg$parsenot_code() {
3853
+ var s0, s1, s2, s3, s4, s5, s6, s7;
3854
+ s0 = peg$currPos;
3855
+ s1 = peg$currPos;
3856
+ s2 = [];
3857
+ s3 = peg$currPos;
3858
+ s4 = peg$currPos;
3859
+ peg$silentFails++;
3860
+ s5 = peg$parseend_code();
3861
+ peg$silentFails--;
3862
+ if (s5 === peg$FAILED) {
3863
+ s4 = void 0;
3864
+ }
3865
+ else {
3866
+ peg$currPos = s4;
3867
+ s4 = peg$FAILED;
3868
+ }
3869
+ if (s4 !== peg$FAILED) {
3870
+ s5 = peg$currPos;
3871
+ peg$silentFails++;
3872
+ s6 = peg$parsestart_code_2();
3873
+ peg$silentFails--;
3874
+ if (s6 === peg$FAILED) {
3875
+ s5 = void 0;
3876
+ }
3877
+ else {
3878
+ peg$currPos = s5;
3879
+ s5 = peg$FAILED;
3880
+ }
3881
+ if (s5 !== peg$FAILED) {
3882
+ s6 = peg$currPos;
3883
+ peg$silentFails++;
3884
+ s7 = peg$parselooks_like_code();
3885
+ peg$silentFails--;
3886
+ if (s7 === peg$FAILED) {
3887
+ s6 = void 0;
3888
+ }
3889
+ else {
3890
+ peg$currPos = s6;
3891
+ s6 = peg$FAILED;
3892
+ }
3893
+ if (s6 !== peg$FAILED) {
3894
+ if (input.length > peg$currPos) {
3895
+ s7 = input.charAt(peg$currPos);
3896
+ peg$currPos++;
3897
+ }
3898
+ else {
3899
+ s7 = peg$FAILED;
3900
+ if (peg$silentFails === 0) {
3901
+ peg$fail(peg$c39);
3902
+ }
3903
+ }
3904
+ if (s7 !== peg$FAILED) {
3905
+ s4 = [s4, s5, s6, s7];
3906
+ s3 = s4;
3907
+ }
3908
+ else {
3909
+ peg$currPos = s3;
3910
+ s3 = peg$FAILED;
3911
+ }
3912
+ }
3913
+ else {
3914
+ peg$currPos = s3;
3915
+ s3 = peg$FAILED;
3916
+ }
3917
+ }
3918
+ else {
3919
+ peg$currPos = s3;
3920
+ s3 = peg$FAILED;
3921
+ }
3922
+ }
3923
+ else {
3924
+ peg$currPos = s3;
3925
+ s3 = peg$FAILED;
3926
+ }
3927
+ if (s3 !== peg$FAILED) {
3928
+ while (s3 !== peg$FAILED) {
3929
+ s2.push(s3);
3930
+ s3 = peg$currPos;
3931
+ s4 = peg$currPos;
3932
+ peg$silentFails++;
3933
+ s5 = peg$parseend_code();
3934
+ peg$silentFails--;
3935
+ if (s5 === peg$FAILED) {
3936
+ s4 = void 0;
3937
+ }
3938
+ else {
3939
+ peg$currPos = s4;
3940
+ s4 = peg$FAILED;
3941
+ }
3942
+ if (s4 !== peg$FAILED) {
3943
+ s5 = peg$currPos;
3944
+ peg$silentFails++;
3945
+ s6 = peg$parsestart_code_2();
3946
+ peg$silentFails--;
3947
+ if (s6 === peg$FAILED) {
3948
+ s5 = void 0;
3949
+ }
3950
+ else {
3951
+ peg$currPos = s5;
3952
+ s5 = peg$FAILED;
3953
+ }
3954
+ if (s5 !== peg$FAILED) {
3955
+ s6 = peg$currPos;
3956
+ peg$silentFails++;
3957
+ s7 = peg$parselooks_like_code();
3958
+ peg$silentFails--;
3959
+ if (s7 === peg$FAILED) {
3960
+ s6 = void 0;
3961
+ }
3962
+ else {
3963
+ peg$currPos = s6;
3964
+ s6 = peg$FAILED;
3965
+ }
3966
+ if (s6 !== peg$FAILED) {
3967
+ if (input.length > peg$currPos) {
3968
+ s7 = input.charAt(peg$currPos);
3969
+ peg$currPos++;
3970
+ }
3971
+ else {
3972
+ s7 = peg$FAILED;
3973
+ if (peg$silentFails === 0) {
3974
+ peg$fail(peg$c39);
3975
+ }
3976
+ }
3977
+ if (s7 !== peg$FAILED) {
3978
+ s4 = [s4, s5, s6, s7];
3979
+ s3 = s4;
3980
+ }
3981
+ else {
3982
+ peg$currPos = s3;
3983
+ s3 = peg$FAILED;
3984
+ }
3985
+ }
3986
+ else {
3987
+ peg$currPos = s3;
3988
+ s3 = peg$FAILED;
3989
+ }
3990
+ }
3991
+ else {
3992
+ peg$currPos = s3;
3993
+ s3 = peg$FAILED;
3994
+ }
3995
+ }
3996
+ else {
3997
+ peg$currPos = s3;
3998
+ s3 = peg$FAILED;
3999
+ }
4000
+ }
4001
+ }
4002
+ else {
4003
+ s2 = peg$FAILED;
4004
+ }
4005
+ if (s2 !== peg$FAILED) {
4006
+ s1 = input.substring(s1, peg$currPos);
4007
+ }
4008
+ else {
4009
+ s1 = s2;
4010
+ }
4011
+ if (s1 !== peg$FAILED) {
4012
+ peg$savedPos = s0;
4013
+ s1 = peg$c57(s1);
4014
+ }
4015
+ s0 = s1;
4016
+ return s0;
4017
+ }
4018
+ function peg$parselooks_like_code() {
4019
+ var s0, s1, s2, s3, s4;
4020
+ s0 = peg$currPos;
4021
+ s1 = peg$currPos;
4022
+ s2 = peg$currPos;
4023
+ peg$silentFails++;
4024
+ s3 = peg$parseallowed_code();
4025
+ peg$silentFails--;
4026
+ if (s3 === peg$FAILED) {
4027
+ s2 = void 0;
4028
+ }
4029
+ else {
4030
+ peg$currPos = s2;
4031
+ s2 = peg$FAILED;
4032
+ }
4033
+ if (s2 !== peg$FAILED) {
4034
+ if (input.length > peg$currPos) {
4035
+ s3 = input.charAt(peg$currPos);
4036
+ peg$currPos++;
4037
+ }
4038
+ else {
4039
+ s3 = peg$FAILED;
4040
+ if (peg$silentFails === 0) {
4041
+ peg$fail(peg$c39);
4042
+ }
4043
+ }
4044
+ if (s3 !== peg$FAILED) {
4045
+ s2 = [s2, s3];
4046
+ s1 = s2;
4047
+ }
4048
+ else {
4049
+ peg$currPos = s1;
4050
+ s1 = peg$FAILED;
4051
+ }
4052
+ }
4053
+ else {
4054
+ peg$currPos = s1;
4055
+ s1 = peg$FAILED;
4056
+ }
4057
+ if (s1 !== peg$FAILED) {
4058
+ if (input.charCodeAt(peg$currPos) === 60) {
4059
+ s2 = peg$c48;
4060
+ peg$currPos++;
4061
+ }
4062
+ else {
4063
+ s2 = peg$FAILED;
4064
+ if (peg$silentFails === 0) {
4065
+ peg$fail(peg$c49);
4066
+ }
4067
+ }
4068
+ if (s2 !== peg$FAILED) {
4069
+ s3 = peg$parsenot_code();
4070
+ if (s3 !== peg$FAILED) {
4071
+ if (input.charCodeAt(peg$currPos) === 62) {
4072
+ s4 = peg$c50;
4073
+ peg$currPos++;
4074
+ }
4075
+ else {
4076
+ s4 = peg$FAILED;
4077
+ if (peg$silentFails === 0) {
4078
+ peg$fail(peg$c51);
4079
+ }
4080
+ }
4081
+ if (s4 !== peg$FAILED) {
4082
+ peg$savedPos = s0;
4083
+ s1 = peg$c52();
4084
+ s0 = s1;
4085
+ }
4086
+ else {
4087
+ peg$currPos = s0;
4088
+ s0 = peg$FAILED;
4089
+ }
4090
+ }
4091
+ else {
4092
+ peg$currPos = s0;
4093
+ s0 = peg$FAILED;
4094
+ }
4095
+ }
4096
+ else {
4097
+ peg$currPos = s0;
4098
+ s0 = peg$FAILED;
4099
+ }
4100
+ }
4101
+ else {
4102
+ peg$currPos = s0;
4103
+ s0 = peg$FAILED;
4104
+ }
4105
+ if (s0 === peg$FAILED) {
4106
+ s0 = peg$currPos;
4107
+ s1 = peg$currPos;
4108
+ s2 = peg$currPos;
4109
+ peg$silentFails++;
4110
+ s3 = peg$parseallowed_code();
4111
+ peg$silentFails--;
4112
+ if (s3 === peg$FAILED) {
4113
+ s2 = void 0;
4114
+ }
4115
+ else {
4116
+ peg$currPos = s2;
4117
+ s2 = peg$FAILED;
4118
+ }
4119
+ if (s2 !== peg$FAILED) {
4120
+ if (input.length > peg$currPos) {
4121
+ s3 = input.charAt(peg$currPos);
4122
+ peg$currPos++;
4123
+ }
4124
+ else {
4125
+ s3 = peg$FAILED;
4126
+ if (peg$silentFails === 0) {
4127
+ peg$fail(peg$c39);
4128
+ }
4129
+ }
4130
+ if (s3 !== peg$FAILED) {
4131
+ s2 = [s2, s3];
4132
+ s1 = s2;
4133
+ }
4134
+ else {
4135
+ peg$currPos = s1;
4136
+ s1 = peg$FAILED;
4137
+ }
4138
+ }
4139
+ else {
4140
+ peg$currPos = s1;
4141
+ s1 = peg$FAILED;
4142
+ }
4143
+ if (s1 !== peg$FAILED) {
4144
+ if (input.charCodeAt(peg$currPos) === 171) {
4145
+ s2 = peg$c53;
4146
+ peg$currPos++;
4147
+ }
4148
+ else {
4149
+ s2 = peg$FAILED;
4150
+ if (peg$silentFails === 0) {
4151
+ peg$fail(peg$c54);
4152
+ }
4153
+ }
4154
+ if (s2 !== peg$FAILED) {
4155
+ s3 = peg$parsenot_code();
4156
+ if (s3 !== peg$FAILED) {
4157
+ if (input.charCodeAt(peg$currPos) === 187) {
4158
+ s4 = peg$c55;
4159
+ peg$currPos++;
4160
+ }
4161
+ else {
4162
+ s4 = peg$FAILED;
4163
+ if (peg$silentFails === 0) {
4164
+ peg$fail(peg$c56);
4165
+ }
4166
+ }
4167
+ if (s4 !== peg$FAILED) {
4168
+ peg$savedPos = s0;
4169
+ s1 = peg$c52();
4170
+ s0 = s1;
4171
+ }
4172
+ else {
4173
+ peg$currPos = s0;
4174
+ s0 = peg$FAILED;
4175
+ }
4176
+ }
4177
+ else {
4178
+ peg$currPos = s0;
4179
+ s0 = peg$FAILED;
4180
+ }
4181
+ }
4182
+ else {
4183
+ peg$currPos = s0;
4184
+ s0 = peg$FAILED;
4185
+ }
4186
+ }
4187
+ else {
4188
+ peg$currPos = s0;
4189
+ s0 = peg$FAILED;
4190
+ }
4191
+ }
4192
+ return s0;
4193
+ }
4194
+ function flattenDeep(arr) {
4195
+ return arr.reduce((acc, val) => Array.isArray(val) ? acc.concat(flattenDeep(val)) : acc.concat(val), []);
4196
+ }
4197
+ function get_pair_tag(tag) {
4198
+ const map = { '<': '>', '«': '»', '>': '<', '»': '«' };
4199
+ return map[tag];
4200
+ }
4201
+ peg$result = peg$startRuleFunction();
4202
+ if (peg$result !== peg$FAILED && peg$currPos === input.length) {
4203
+ return peg$result;
4204
+ }
4205
+ else {
4206
+ if (peg$result !== peg$FAILED && peg$currPos < input.length) {
4207
+ peg$fail(peg$endExpectation());
4208
+ }
4209
+ throw peg$buildStructuredError(peg$maxFailExpected, peg$maxFailPos < input.length ? input.charAt(peg$maxFailPos) : null, peg$maxFailPos < input.length
4210
+ ? peg$computeLocation(peg$maxFailPos, peg$maxFailPos + 1)
4211
+ : peg$computeLocation(peg$maxFailPos, peg$maxFailPos));
4212
+ }
4213
+ }
4214
+ module.exports = {
4215
+ SyntaxError: peg$SyntaxError,
4216
+ parse: peg$parse
4217
+ };
4218
+ //# sourceMappingURL=grammarfc.js.map