@ts-graphviz/ast 2.0.2 → 2.0.3

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 (4) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/lib/ast.cjs +212 -420
  3. package/lib/ast.js +212 -420
  4. package/package.json +4 -4
package/lib/ast.js CHANGED
@@ -315,7 +315,7 @@ function stringify(ast, options) {
315
315
  return result;
316
316
  }
317
317
  const peggyParser = (
318
- // Generated by Peggy 3.0.2.
318
+ // @generated by Peggy 4.0.2.
319
319
  //
320
320
  // https://peggyjs.org/
321
321
  // @ts-ignore
@@ -459,53 +459,45 @@ const peggyParser = (
459
459
  var peg$c2 = "digraph";
460
460
  var peg$c3 = "{";
461
461
  var peg$c4 = "}";
462
- var peg$c5 = ";";
463
462
  var peg$c6 = "node";
464
463
  var peg$c7 = "edge";
465
464
  var peg$c8 = "=";
466
- var peg$c9 = ",";
467
- var peg$c10 = "[";
468
- var peg$c11 = "]";
469
- var peg$c12 = "->";
470
- var peg$c13 = "--";
471
- var peg$c14 = ":";
472
- var peg$c15 = "subgraph";
473
- var peg$c16 = "n";
474
- var peg$c17 = "ne";
475
- var peg$c18 = "e";
476
- var peg$c19 = "se";
477
- var peg$c20 = "s";
478
- var peg$c21 = "sw";
479
- var peg$c22 = "w";
480
- var peg$c23 = "nw";
481
- var peg$c24 = '"';
482
- var peg$c25 = "/*";
483
- var peg$c26 = "*/";
484
- var peg$c27 = "//";
485
- var peg$c28 = "#";
486
- var peg$c29 = "$";
487
- var peg$c30 = "_";
488
- var peg$c31 = "-";
489
- var peg$c32 = ".";
490
- var peg$c33 = "<";
491
- var peg$c34 = ">";
492
- var peg$c35 = "\\";
493
- var peg$c36 = "\n";
494
- var peg$c37 = "\r\n";
495
- var peg$c38 = "\r";
496
- var peg$c39 = "\u2028";
497
- var peg$c40 = "\u2029";
498
- var peg$r0 = /^[0-9]/;
499
- var peg$r1 = /^[\n\r\u2028\u2029]/;
500
- var peg$r3 = /^[\n\r]/;
501
- var peg$r4 = /^[ \t]/;
502
- var peg$r5 = /^[a-z\xB5\xDF-\xF6\xF8-\xFF\u0101\u0103\u0105\u0107\u0109\u010B\u010D\u010F\u0111\u0113\u0115\u0117\u0119\u011B\u011D\u011F\u0121\u0123\u0125\u0127\u0129\u012B\u012D\u012F\u0131\u0133\u0135\u0137-\u0138\u013A\u013C\u013E\u0140\u0142\u0144\u0146\u0148-\u0149\u014B\u014D\u014F\u0151\u0153\u0155\u0157\u0159\u015B\u015D\u015F\u0161\u0163\u0165\u0167\u0169\u016B\u016D\u016F\u0171\u0173\u0175\u0177\u017A\u017C\u017E-\u0180\u0183\u0185\u0188\u018C-\u018D\u0192\u0195\u0199-\u019B\u019E\u01A1\u01A3\u01A5\u01A8\u01AA-\u01AB\u01AD\u01B0\u01B4\u01B6\u01B9-\u01BA\u01BD-\u01BF\u01C6\u01C9\u01CC\u01CE\u01D0\u01D2\u01D4\u01D6\u01D8\u01DA\u01DC-\u01DD\u01DF\u01E1\u01E3\u01E5\u01E7\u01E9\u01EB\u01ED\u01EF-\u01F0\u01F3\u01F5\u01F9\u01FB\u01FD\u01FF\u0201\u0203\u0205\u0207\u0209\u020B\u020D\u020F\u0211\u0213\u0215\u0217\u0219\u021B\u021D\u021F\u0221\u0223\u0225\u0227\u0229\u022B\u022D\u022F\u0231\u0233-\u0239\u023C\u023F-\u0240\u0242\u0247\u0249\u024B\u024D\u024F-\u0293\u0295-\u02AF\u0371\u0373\u0377\u037B-\u037D\u0390\u03AC-\u03CE\u03D0-\u03D1\u03D5-\u03D7\u03D9\u03DB\u03DD\u03DF\u03E1\u03E3\u03E5\u03E7\u03E9\u03EB\u03ED\u03EF-\u03F3\u03F5\u03F8\u03FB-\u03FC\u0430-\u045F\u0461\u0463\u0465\u0467\u0469\u046B\u046D\u046F\u0471\u0473\u0475\u0477\u0479\u047B\u047D\u047F\u0481\u048B\u048D\u048F\u0491\u0493\u0495\u0497\u0499\u049B\u049D\u049F\u04A1\u04A3\u04A5\u04A7\u04A9\u04AB\u04AD\u04AF\u04B1\u04B3\u04B5\u04B7\u04B9\u04BB\u04BD\u04BF\u04C2\u04C4\u04C6\u04C8\u04CA\u04CC\u04CE-\u04CF\u04D1\u04D3\u04D5\u04D7\u04D9\u04DB\u04DD\u04DF\u04E1\u04E3\u04E5\u04E7\u04E9\u04EB\u04ED\u04EF\u04F1\u04F3\u04F5\u04F7\u04F9\u04FB\u04FD\u04FF\u0501\u0503\u0505\u0507\u0509\u050B\u050D\u050F\u0511\u0513\u0515\u0517\u0519\u051B\u051D\u051F\u0521\u0523\u0525\u0527\u0561-\u0587\u1D00-\u1D2B\u1D6B-\u1D77\u1D79-\u1D9A\u1E01\u1E03\u1E05\u1E07\u1E09\u1E0B\u1E0D\u1E0F\u1E11\u1E13\u1E15\u1E17\u1E19\u1E1B\u1E1D\u1E1F\u1E21\u1E23\u1E25\u1E27\u1E29\u1E2B\u1E2D\u1E2F\u1E31\u1E33\u1E35\u1E37\u1E39\u1E3B\u1E3D\u1E3F\u1E41\u1E43\u1E45\u1E47\u1E49\u1E4B\u1E4D\u1E4F\u1E51\u1E53\u1E55\u1E57\u1E59\u1E5B\u1E5D\u1E5F\u1E61\u1E63\u1E65\u1E67\u1E69\u1E6B\u1E6D\u1E6F\u1E71\u1E73\u1E75\u1E77\u1E79\u1E7B\u1E7D\u1E7F\u1E81\u1E83\u1E85\u1E87\u1E89\u1E8B\u1E8D\u1E8F\u1E91\u1E93\u1E95-\u1E9D\u1E9F\u1EA1\u1EA3\u1EA5\u1EA7\u1EA9\u1EAB\u1EAD\u1EAF\u1EB1\u1EB3\u1EB5\u1EB7\u1EB9\u1EBB\u1EBD\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1EC9\u1ECB\u1ECD\u1ECF\u1ED1\u1ED3\u1ED5\u1ED7\u1ED9\u1EDB\u1EDD\u1EDF\u1EE1\u1EE3\u1EE5\u1EE7\u1EE9\u1EEB\u1EED\u1EEF\u1EF1\u1EF3\u1EF5\u1EF7\u1EF9\u1EFB\u1EFD\u1EFF-\u1F07\u1F10-\u1F15\u1F20-\u1F27\u1F30-\u1F37\u1F40-\u1F45\u1F50-\u1F57\u1F60-\u1F67\u1F70-\u1F7D\u1F80-\u1F87\u1F90-\u1F97\u1FA0-\u1FA7\u1FB0-\u1FB4\u1FB6-\u1FB7\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FC7\u1FD0-\u1FD3\u1FD6-\u1FD7\u1FE0-\u1FE7\u1FF2-\u1FF4\u1FF6-\u1FF7\u210A\u210E-\u210F\u2113\u212F\u2134\u2139\u213C-\u213D\u2146-\u2149\u214E\u2184\u2C30-\u2C5E\u2C61\u2C65-\u2C66\u2C68\u2C6A\u2C6C\u2C71\u2C73-\u2C74\u2C76-\u2C7B\u2C81\u2C83\u2C85\u2C87\u2C89\u2C8B\u2C8D\u2C8F\u2C91\u2C93\u2C95\u2C97\u2C99\u2C9B\u2C9D\u2C9F\u2CA1\u2CA3\u2CA5\u2CA7\u2CA9\u2CAB\u2CAD\u2CAF\u2CB1\u2CB3\u2CB5\u2CB7\u2CB9\u2CBB\u2CBD\u2CBF\u2CC1\u2CC3\u2CC5\u2CC7\u2CC9\u2CCB\u2CCD\u2CCF\u2CD1\u2CD3\u2CD5\u2CD7\u2CD9\u2CDB\u2CDD\u2CDF\u2CE1\u2CE3-\u2CE4\u2CEC\u2CEE\u2CF3\u2D00-\u2D25\u2D27\u2D2D\uA641\uA643\uA645\uA647\uA649\uA64B\uA64D\uA64F\uA651\uA653\uA655\uA657\uA659\uA65B\uA65D\uA65F\uA661\uA663\uA665\uA667\uA669\uA66B\uA66D\uA681\uA683\uA685\uA687\uA689\uA68B\uA68D\uA68F\uA691\uA693\uA695\uA697\uA723\uA725\uA727\uA729\uA72B\uA72D\uA72F-\uA731\uA733\uA735\uA737\uA739\uA73B\uA73D\uA73F\uA741\uA743\uA745\uA747\uA749\uA74B\uA74D\uA74F\uA751\uA753\uA755\uA757\uA759\uA75B\uA75D\uA75F\uA761\uA763\uA765\uA767\uA769\uA76B\uA76D\uA76F\uA771-\uA778\uA77A\uA77C\uA77F\uA781\uA783\uA785\uA787\uA78C\uA78E\uA791\uA793\uA7A1\uA7A3\uA7A5\uA7A7\uA7A9\uA7FA\uFB00-\uFB06\uFB13-\uFB17\uFF41-\uFF5A]/;
503
- var peg$r6 = /^[\u02B0-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0374\u037A\u0559\u0640\u06E5-\u06E6\u07F4-\u07F5\u07FA\u081A\u0824\u0828\u0971\u0E46\u0EC6\u10FC\u17D7\u1843\u1AA7\u1C78-\u1C7D\u1D2C-\u1D6A\u1D78\u1D9B-\u1DBF\u2071\u207F\u2090-\u209C\u2C7C-\u2C7D\u2D6F\u2E2F\u3005\u3031-\u3035\u303B\u309D-\u309E\u30FC-\u30FE\uA015\uA4F8-\uA4FD\uA60C\uA67F\uA717-\uA71F\uA770\uA788\uA7F8-\uA7F9\uA9CF\uAA70\uAADD\uAAF3-\uAAF4\uFF70\uFF9E-\uFF9F]/;
504
- var peg$r7 = /^[\xAA\xBA\u01BB\u01C0-\u01C3\u0294\u05D0-\u05EA\u05F0-\u05F2\u0620-\u063F\u0641-\u064A\u066E-\u066F\u0671-\u06D3\u06D5\u06EE-\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u0800-\u0815\u0840-\u0858\u08A0\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0972-\u0977\u0979-\u097F\u0985-\u098C\u098F-\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC-\u09DD\u09DF-\u09E1\u09F0-\u09F1\u0A05-\u0A0A\u0A0F-\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32-\u0A33\u0A35-\u0A36\u0A38-\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2-\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0-\u0AE1\u0B05-\u0B0C\u0B0F-\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32-\u0B33\u0B35-\u0B39\u0B3D\u0B5C-\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99-\u0B9A\u0B9C\u0B9E-\u0B9F\u0BA3-\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D\u0C58-\u0C59\u0C60-\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0-\u0CE1\u0CF1-\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D60-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32-\u0E33\u0E40-\u0E45\u0E81-\u0E82\u0E84\u0E87-\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA-\u0EAB\u0EAD-\u0EB0\u0EB2-\u0EB3\u0EBD\u0EC0-\u0EC4\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065-\u1066\u106E-\u1070\u1075-\u1081\u108E\u10D0-\u10FA\u10FD-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17DC\u1820-\u1842\u1844-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16\u1A20-\u1A54\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE-\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C77\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5-\u1CF6\u2135-\u2138\u2D30-\u2D67\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3006\u303C\u3041-\u3096\u309F\u30A1-\u30FA\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA014\uA016-\uA48C\uA4D0-\uA4F7\uA500-\uA60B\uA610-\uA61F\uA62A-\uA62B\uA66E\uA6A0-\uA6E5\uA7FB-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA6F\uAA71-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5-\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADC\uAAE0-\uAAEA\uAAF2\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40-\uFB41\uFB43-\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF66-\uFF6F\uFF71-\uFF9D\uFFA0-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/;
505
- var peg$r8 = /^[\u01C5\u01C8\u01CB\u01F2\u1F88-\u1F8F\u1F98-\u1F9F\u1FA8-\u1FAF\u1FBC\u1FCC\u1FFC]/;
506
- var peg$r9 = /^[A-Z\xC0-\xD6\xD8-\xDE\u0100\u0102\u0104\u0106\u0108\u010A\u010C\u010E\u0110\u0112\u0114\u0116\u0118\u011A\u011C\u011E\u0120\u0122\u0124\u0126\u0128\u012A\u012C\u012E\u0130\u0132\u0134\u0136\u0139\u013B\u013D\u013F\u0141\u0143\u0145\u0147\u014A\u014C\u014E\u0150\u0152\u0154\u0156\u0158\u015A\u015C\u015E\u0160\u0162\u0164\u0166\u0168\u016A\u016C\u016E\u0170\u0172\u0174\u0176\u0178-\u0179\u017B\u017D\u0181-\u0182\u0184\u0186-\u0187\u0189-\u018B\u018E-\u0191\u0193-\u0194\u0196-\u0198\u019C-\u019D\u019F-\u01A0\u01A2\u01A4\u01A6-\u01A7\u01A9\u01AC\u01AE-\u01AF\u01B1-\u01B3\u01B5\u01B7-\u01B8\u01BC\u01C4\u01C7\u01CA\u01CD\u01CF\u01D1\u01D3\u01D5\u01D7\u01D9\u01DB\u01DE\u01E0\u01E2\u01E4\u01E6\u01E8\u01EA\u01EC\u01EE\u01F1\u01F4\u01F6-\u01F8\u01FA\u01FC\u01FE\u0200\u0202\u0204\u0206\u0208\u020A\u020C\u020E\u0210\u0212\u0214\u0216\u0218\u021A\u021C\u021E\u0220\u0222\u0224\u0226\u0228\u022A\u022C\u022E\u0230\u0232\u023A-\u023B\u023D-\u023E\u0241\u0243-\u0246\u0248\u024A\u024C\u024E\u0370\u0372\u0376\u0386\u0388-\u038A\u038C\u038E-\u038F\u0391-\u03A1\u03A3-\u03AB\u03CF\u03D2-\u03D4\u03D8\u03DA\u03DC\u03DE\u03E0\u03E2\u03E4\u03E6\u03E8\u03EA\u03EC\u03EE\u03F4\u03F7\u03F9-\u03FA\u03FD-\u042F\u0460\u0462\u0464\u0466\u0468\u046A\u046C\u046E\u0470\u0472\u0474\u0476\u0478\u047A\u047C\u047E\u0480\u048A\u048C\u048E\u0490\u0492\u0494\u0496\u0498\u049A\u049C\u049E\u04A0\u04A2\u04A4\u04A6\u04A8\u04AA\u04AC\u04AE\u04B0\u04B2\u04B4\u04B6\u04B8\u04BA\u04BC\u04BE\u04C0-\u04C1\u04C3\u04C5\u04C7\u04C9\u04CB\u04CD\u04D0\u04D2\u04D4\u04D6\u04D8\u04DA\u04DC\u04DE\u04E0\u04E2\u04E4\u04E6\u04E8\u04EA\u04EC\u04EE\u04F0\u04F2\u04F4\u04F6\u04F8\u04FA\u04FC\u04FE\u0500\u0502\u0504\u0506\u0508\u050A\u050C\u050E\u0510\u0512\u0514\u0516\u0518\u051A\u051C\u051E\u0520\u0522\u0524\u0526\u0531-\u0556\u10A0-\u10C5\u10C7\u10CD\u1E00\u1E02\u1E04\u1E06\u1E08\u1E0A\u1E0C\u1E0E\u1E10\u1E12\u1E14\u1E16\u1E18\u1E1A\u1E1C\u1E1E\u1E20\u1E22\u1E24\u1E26\u1E28\u1E2A\u1E2C\u1E2E\u1E30\u1E32\u1E34\u1E36\u1E38\u1E3A\u1E3C\u1E3E\u1E40\u1E42\u1E44\u1E46\u1E48\u1E4A\u1E4C\u1E4E\u1E50\u1E52\u1E54\u1E56\u1E58\u1E5A\u1E5C\u1E5E\u1E60\u1E62\u1E64\u1E66\u1E68\u1E6A\u1E6C\u1E6E\u1E70\u1E72\u1E74\u1E76\u1E78\u1E7A\u1E7C\u1E7E\u1E80\u1E82\u1E84\u1E86\u1E88\u1E8A\u1E8C\u1E8E\u1E90\u1E92\u1E94\u1E9E\u1EA0\u1EA2\u1EA4\u1EA6\u1EA8\u1EAA\u1EAC\u1EAE\u1EB0\u1EB2\u1EB4\u1EB6\u1EB8\u1EBA\u1EBC\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1EC8\u1ECA\u1ECC\u1ECE\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EDA\u1EDC\u1EDE\u1EE0\u1EE2\u1EE4\u1EE6\u1EE8\u1EEA\u1EEC\u1EEE\u1EF0\u1EF2\u1EF4\u1EF6\u1EF8\u1EFA\u1EFC\u1EFE\u1F08-\u1F0F\u1F18-\u1F1D\u1F28-\u1F2F\u1F38-\u1F3F\u1F48-\u1F4D\u1F59\u1F5B\u1F5D\u1F5F\u1F68-\u1F6F\u1FB8-\u1FBB\u1FC8-\u1FCB\u1FD8-\u1FDB\u1FE8-\u1FEC\u1FF8-\u1FFB\u2102\u2107\u210B-\u210D\u2110-\u2112\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u2130-\u2133\u213E-\u213F\u2145\u2183\u2C00-\u2C2E\u2C60\u2C62-\u2C64\u2C67\u2C69\u2C6B\u2C6D-\u2C70\u2C72\u2C75\u2C7E-\u2C80\u2C82\u2C84\u2C86\u2C88\u2C8A\u2C8C\u2C8E\u2C90\u2C92\u2C94\u2C96\u2C98\u2C9A\u2C9C\u2C9E\u2CA0\u2CA2\u2CA4\u2CA6\u2CA8\u2CAA\u2CAC\u2CAE\u2CB0\u2CB2\u2CB4\u2CB6\u2CB8\u2CBA\u2CBC\u2CBE\u2CC0\u2CC2\u2CC4\u2CC6\u2CC8\u2CCA\u2CCC\u2CCE\u2CD0\u2CD2\u2CD4\u2CD6\u2CD8\u2CDA\u2CDC\u2CDE\u2CE0\u2CE2\u2CEB\u2CED\u2CF2\uA640\uA642\uA644\uA646\uA648\uA64A\uA64C\uA64E\uA650\uA652\uA654\uA656\uA658\uA65A\uA65C\uA65E\uA660\uA662\uA664\uA666\uA668\uA66A\uA66C\uA680\uA682\uA684\uA686\uA688\uA68A\uA68C\uA68E\uA690\uA692\uA694\uA696\uA722\uA724\uA726\uA728\uA72A\uA72C\uA72E\uA732\uA734\uA736\uA738\uA73A\uA73C\uA73E\uA740\uA742\uA744\uA746\uA748\uA74A\uA74C\uA74E\uA750\uA752\uA754\uA756\uA758\uA75A\uA75C\uA75E\uA760\uA762\uA764\uA766\uA768\uA76A\uA76C\uA76E\uA779\uA77B\uA77D-\uA77E\uA780\uA782\uA784\uA786\uA78B\uA78D\uA790\uA792\uA7A0\uA7A2\uA7A4\uA7A6\uA7A8\uA7AA\uFF21-\uFF3A]/;
507
- var peg$r10 = /^[\u16EE-\u16F0\u2160-\u2182\u2185-\u2188\u3007\u3021-\u3029\u3038-\u303A\uA6E6-\uA6EF]/;
508
- var peg$r11 = /^[0-9\u0660-\u0669\u06F0-\u06F9\u07C0-\u07C9\u0966-\u096F\u09E6-\u09EF\u0A66-\u0A6F\u0AE6-\u0AEF\u0B66-\u0B6F\u0BE6-\u0BEF\u0C66-\u0C6F\u0CE6-\u0CEF\u0D66-\u0D6F\u0E50-\u0E59\u0ED0-\u0ED9\u0F20-\u0F29\u1040-\u1049\u1090-\u1099\u17E0-\u17E9\u1810-\u1819\u1946-\u194F\u19D0-\u19D9\u1A80-\u1A89\u1A90-\u1A99\u1B50-\u1B59\u1BB0-\u1BB9\u1C40-\u1C49\u1C50-\u1C59\uA620-\uA629\uA8D0-\uA8D9\uA900-\uA909\uA9D0-\uA9D9\uAA50-\uAA59\uABF0-\uABF9\uFF10-\uFF19]/;
465
+ var peg$c9 = "[";
466
+ var peg$c10 = "]";
467
+ var peg$c11 = "->";
468
+ var peg$c12 = "--";
469
+ var peg$c13 = ":";
470
+ var peg$c14 = "subgraph";
471
+ var peg$c15 = "n";
472
+ var peg$c16 = "ne";
473
+ var peg$c17 = "e";
474
+ var peg$c18 = "se";
475
+ var peg$c19 = "s";
476
+ var peg$c20 = "sw";
477
+ var peg$c21 = "w";
478
+ var peg$c22 = "nw";
479
+ var peg$c23 = '"';
480
+ var peg$c24 = "/*";
481
+ var peg$c25 = "*/";
482
+ var peg$c26 = "//";
483
+ var peg$c27 = "#";
484
+ var peg$c28 = "-";
485
+ var peg$c29 = ".";
486
+ var peg$c30 = "<";
487
+ var peg$c31 = ">";
488
+ var peg$c32 = "\\";
489
+ var peg$c33 = "\n";
490
+ var peg$c34 = "\r\n";
491
+ var peg$r0 = /^[,;]/;
492
+ var peg$r1 = /^[$A-Z_a-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376-\u0377\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E-\u066F\u0671-\u06D3\u06D5\u06E5-\u06E6\u06EE-\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4-\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977\u0979-\u097F\u0985-\u098C\u098F-\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC-\u09DD\u09DF-\u09E1\u09F0-\u09F1\u0A05-\u0A0A\u0A0F-\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32-\u0A33\u0A35-\u0A36\u0A38-\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2-\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0-\u0AE1\u0B05-\u0B0C\u0B0F-\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32-\u0B33\u0B35-\u0B39\u0B3D\u0B5C-\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99-\u0B9A\u0B9C\u0B9E-\u0B9F\u0BA3-\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D\u0C58-\u0C59\u0C60-\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0-\u0CE1\u0CF1-\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D60-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32-\u0E33\u0E40-\u0E46\u0E81-\u0E82\u0E84\u0E87-\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA-\u0EAB\u0EAD-\u0EB0\u0EB2-\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065-\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F0\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE-\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5-\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A-\uA62B\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5-\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40-\uFB41\uFB43-\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/;
493
+ var peg$r2 = /^[$0-9A-Z_a-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376-\u0377\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u0660-\u0669\u066E-\u066F\u0671-\u06D3\u06D5\u06E5-\u06E6\u06EE-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07C0-\u07EA\u07F4-\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0966-\u096F\u0971-\u0977\u0979-\u097F\u0985-\u098C\u098F-\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC-\u09DD\u09DF-\u09E1\u09E6-\u09F1\u0A05-\u0A0A\u0A0F-\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32-\u0A33\u0A35-\u0A36\u0A38-\u0A39\u0A59-\u0A5C\u0A5E\u0A66-\u0A6F\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2-\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0-\u0AE1\u0AE6-\u0AEF\u0B05-\u0B0C\u0B0F-\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32-\u0B33\u0B35-\u0B39\u0B3D\u0B5C-\u0B5D\u0B5F-\u0B61\u0B66-\u0B6F\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99-\u0B9A\u0B9C\u0B9E-\u0B9F\u0BA3-\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0BE6-\u0BEF\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D\u0C58-\u0C59\u0C60-\u0C61\u0C66-\u0C6F\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0-\u0CE1\u0CE6-\u0CEF\u0CF1-\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D60-\u0D61\u0D66-\u0D6F\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32-\u0E33\u0E40-\u0E46\u0E50-\u0E59\u0E81-\u0E82\u0E84\u0E87-\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA-\u0EAB\u0EAD-\u0EB0\u0EB2-\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F20-\u0F29\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F-\u1049\u1050-\u1055\u105A-\u105D\u1061\u1065-\u1066\u106E-\u1070\u1075-\u1081\u108E\u1090-\u1099\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F0\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u17E0-\u17E9\u1810-\u1819\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u19D0-\u19D9\u1A00-\u1A16\u1A20-\u1A54\u1A80-\u1A89\u1A90-\u1A99\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B50-\u1B59\u1B83-\u1BA0\u1BAE-\u1BE5\u1C00-\u1C23\u1C40-\u1C49\u1C4D-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5-\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8D0-\uA8D9\uA8F2-\uA8F7\uA8FB\uA900-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF-\uA9D9\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA50-\uAA59\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5-\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uABC0-\uABE2\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40-\uFB41\uFB43-\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/;
494
+ var peg$r3 = /^[0-9]/;
495
+ var peg$r4 = /^[<>]/;
496
+ var peg$r5 = /^[\n\r"\u2028-\u2029]/;
497
+ var peg$r7 = /^[\r\u2028-\u2029]/;
498
+ var peg$r9 = /^[\t-\n\r ]/;
499
+ var peg$r10 = /^[\n\r]/;
500
+ var peg$r11 = /^[ \t]/;
509
501
  var peg$e0 = peg$literalExpectation("strict", true);
510
502
  var peg$e1 = peg$literalExpectation("graph", true);
511
503
  var peg$e2 = peg$literalExpectation("digraph", true);
@@ -515,7 +507,7 @@ const peggyParser = (
515
507
  var peg$e6 = peg$literalExpectation("node", true);
516
508
  var peg$e7 = peg$literalExpectation("edge", true);
517
509
  var peg$e8 = peg$literalExpectation("=", false);
518
- var peg$e9 = peg$literalExpectation(",", false);
510
+ var peg$e9 = peg$classExpectation([",", ";"], false, false);
519
511
  var peg$e10 = peg$literalExpectation("[", false);
520
512
  var peg$e11 = peg$literalExpectation("]", false);
521
513
  var peg$e12 = peg$literalExpectation("->", false);
@@ -538,33 +530,26 @@ const peggyParser = (
538
530
  var peg$e29 = peg$literalExpectation("//", false);
539
531
  var peg$e30 = peg$literalExpectation("#", false);
540
532
  var peg$e31 = peg$otherExpectation("UNICODE_STRING");
541
- var peg$e32 = peg$literalExpectation("$", false);
542
- var peg$e33 = peg$literalExpectation("_", false);
533
+ var peg$e32 = peg$classExpectation(["$", ["A", "Z"], "_", ["a", "z"], "ª", "µ", "º", ["À", "Ö"], ["Ø", "ö"], ["ø", "ˁ"], ["ˆ", "ˑ"], ["ˠ", "ˤ"], "ˬ", "ˮ", ["Ͱ", "ʹ"], ["Ͷ", "ͷ"], ["ͺ", "ͽ"], "Ά", ["Έ", "Ί"], "Ό", ["Ύ", "Ρ"], ["Σ", "ϵ"], ["Ϸ", "ҁ"], ["Ҋ", "ԧ"], ["Ա", "Ֆ"], "ՙ", ["ա", "և"], ["א", "ת"], ["װ", "ײ"], ["ؠ", "ي"], ["ٮ", "ٯ"], ["ٱ", "ۓ"], "ە", ["ۥ", "ۦ"], ["ۮ", "ۯ"], ["ۺ", "ۼ"], "ۿ", "ܐ", ["ܒ", "ܯ"], ["ݍ", "ޥ"], "ޱ", ["ߊ", "ߪ"], ["ߴ", "ߵ"], "ߺ", ["ࠀ", "ࠕ"], "ࠚ", "ࠤ", "ࠨ", ["ࡀ", "ࡘ"], "ࢠ", ["ࢢ", "ࢬ"], ["ऄ", "ह"], "ऽ", "ॐ", ["क़", "ॡ"], ["ॱ", "ॷ"], ["ॹ", "ॿ"], ["অ", "ঌ"], ["এ", "ঐ"], ["ও", "ন"], ["প", "র"], "ল", ["শ", "হ"], "ঽ", "ৎ", ["ড়", "ঢ়"], ["য়", "ৡ"], ["ৰ", "ৱ"], ["ਅ", "ਊ"], ["ਏ", "ਐ"], ["ਓ", "ਨ"], ["ਪ", "ਰ"], ["ਲ", "ਲ਼"], ["ਵ", "ਸ਼"], ["ਸ", "ਹ"], ["ਖ਼", "ੜ"], "ਫ਼", ["ੲ", "ੴ"], ["અ", "ઍ"], ["એ", "ઑ"], ["ઓ", "ન"], ["પ", "ર"], ["લ", "ળ"], ["વ", "હ"], "ઽ", "ૐ", ["ૠ", "ૡ"], ["ଅ", "ଌ"], ["ଏ", "ଐ"], ["ଓ", "ନ"], ["ପ", "ର"], ["ଲ", "ଳ"], ["ଵ", "ହ"], "ଽ", ["ଡ଼", "ଢ଼"], ["ୟ", "ୡ"], "ୱ", "ஃ", ["அ", "ஊ"], ["எ", "ஐ"], ["ஒ", "க"], ["ங", "ச"], "ஜ", ["ஞ", "ட"], ["ண", "த"], ["ந", "ப"], ["ம", "ஹ"], "ௐ", ["అ", "ఌ"], ["ఎ", "ఐ"], ["ఒ", "న"], ["ప", "ళ"], ["వ", "హ"], "ఽ", ["ౘ", "ౙ"], ["ౠ", "ౡ"], ["ಅ", "ಌ"], ["ಎ", "ಐ"], ["ಒ", "ನ"], ["ಪ", "ಳ"], ["ವ", "ಹ"], "ಽ", "ೞ", ["ೠ", "ೡ"], ["ೱ", "ೲ"], ["അ", "ഌ"], ["എ", "ഐ"], ["ഒ", "ഺ"], "ഽ", "ൎ", ["ൠ", "ൡ"], ["ൺ", "ൿ"], ["අ", "ඖ"], ["ක", "න"], ["ඳ", "ර"], "ල", ["ව", "ෆ"], ["ก", "ะ"], ["า", "ำ"], ["เ", "ๆ"], ["ກ", "ຂ"], "ຄ", ["ງ", "ຈ"], "ຊ", "ຍ", ["ດ", "ທ"], ["ນ", "ຟ"], ["ມ", "ຣ"], "ລ", "ວ", ["ສ", "ຫ"], ["ອ", "ະ"], ["າ", "ຳ"], "ຽ", ["ເ", "ໄ"], "ໆ", ["ໜ", "ໟ"], "ༀ", ["ཀ", "ཇ"], ["ཉ", "ཬ"], ["ྈ", "ྌ"], ["က", "ဪ"], "ဿ", ["ၐ", "ၕ"], ["ၚ", "ၝ"], "ၡ", ["ၥ", "ၦ"], ["ၮ", "ၰ"], ["ၵ", "ႁ"], "ႎ", ["Ⴀ", "Ⴥ"], "Ⴧ", "Ⴭ", ["ა", "ჺ"], ["ჼ", "ቈ"], ["ቊ", "ቍ"], ["ቐ", "ቖ"], "ቘ", ["ቚ", "ቝ"], ["በ", "ኈ"], ["ኊ", "ኍ"], ["ነ", "ኰ"], ["ኲ", "ኵ"], ["ኸ", "ኾ"], "ዀ", ["ዂ", "ዅ"], ["ወ", "ዖ"], ["ዘ", "ጐ"], ["ጒ", "ጕ"], ["ጘ", "ፚ"], ["ᎀ", "ᎏ"], ["Ꭰ", "Ᏼ"], ["ᐁ", "ᙬ"], ["ᙯ", "ᙿ"], ["ᚁ", "ᚚ"], ["ᚠ", "ᛪ"], ["ᛮ", "ᛰ"], ["ᜀ", "ᜌ"], ["ᜎ", "ᜑ"], ["ᜠ", "ᜱ"], ["ᝀ", "ᝑ"], ["ᝠ", "ᝬ"], ["ᝮ", "ᝰ"], ["ក", "ឳ"], "ៗ", "ៜ", ["ᠠ", "ᡷ"], ["ᢀ", "ᢨ"], "ᢪ", ["ᢰ", "ᣵ"], ["ᤀ", "ᤜ"], ["ᥐ", "ᥭ"], ["ᥰ", "ᥴ"], ["ᦀ", "ᦫ"], ["ᧁ", "ᧇ"], ["ᨀ", "ᨖ"], ["ᨠ", "ᩔ"], "ᪧ", ["ᬅ", "ᬳ"], ["ᭅ", "ᭋ"], ["ᮃ", "ᮠ"], ["ᮮ", "ᮯ"], ["ᮺ", "ᯥ"], ["ᰀ", "ᰣ"], ["ᱍ", "ᱏ"], ["ᱚ", "ᱽ"], ["ᳩ", "ᳬ"], ["ᳮ", "ᳱ"], ["ᳵ", "ᳶ"], ["ᴀ", "ᶿ"], ["Ḁ", "ἕ"], ["Ἐ", "Ἕ"], ["ἠ", "ὅ"], ["Ὀ", "Ὅ"], ["ὐ", "ὗ"], "Ὑ", "Ὓ", "Ὕ", ["Ὗ", "ώ"], ["ᾀ", "ᾴ"], ["ᾶ", "ᾼ"], "ι", ["ῂ", "ῄ"], ["ῆ", "ῌ"], ["ῐ", "ΐ"], ["ῖ", "Ί"], ["ῠ", "Ῥ"], ["ῲ", "ῴ"], ["ῶ", "ῼ"], "ⁱ", "ⁿ", ["ₐ", "ₜ"], "ℂ", "ℇ", ["ℊ", "ℓ"], "ℕ", ["ℙ", "ℝ"], "ℤ", "Ω", "ℨ", ["K", "ℭ"], ["ℯ", "ℹ"], ["ℼ", "ℿ"], ["ⅅ", "ⅉ"], "ⅎ", ["Ⅰ", "ↈ"], ["Ⰰ", "Ⱞ"], ["ⰰ", "ⱞ"], ["Ⱡ", "ⳤ"], ["Ⳬ", "ⳮ"], ["Ⳳ", "ⳳ"], ["ⴀ", "ⴥ"], "ⴧ", "ⴭ", ["ⴰ", "ⵧ"], "ⵯ", ["ⶀ", "ⶖ"], ["ⶠ", "ⶦ"], ["ⶨ", "ⶮ"], ["ⶰ", "ⶶ"], ["ⶸ", "ⶾ"], ["ⷀ", "ⷆ"], ["ⷈ", "ⷎ"], ["ⷐ", "ⷖ"], ["ⷘ", "ⷞ"], "ⸯ", ["々", "〇"], ["〡", "〩"], ["〱", "〵"], ["〸", "〼"], ["ぁ", "ゖ"], ["ゝ", "ゟ"], ["ァ", "ヺ"], ["ー", "ヿ"], ["ㄅ", "ㄭ"], ["ㄱ", "ㆎ"], ["ㆠ", "ㆺ"], ["ㇰ", "ㇿ"], ["㐀", "䶵"], ["一", "鿌"], ["ꀀ", "ꒌ"], ["ꓐ", "ꓽ"], ["ꔀ", "ꘌ"], ["ꘐ", "ꘟ"], ["ꘪ", "ꘫ"], ["Ꙁ", "ꙮ"], ["ꙿ", "ꚗ"], ["ꚠ", "ꛯ"], ["ꜗ", "ꜟ"], ["Ꜣ", "ꞈ"], ["Ꞌ", "ꞎ"], ["Ꞑ", "ꞓ"], ["Ꞡ", "Ɦ"], ["ꟸ", "ꠁ"], ["ꠃ", "ꠅ"], ["ꠇ", "ꠊ"], ["ꠌ", "ꠢ"], ["ꡀ", "ꡳ"], ["ꢂ", "ꢳ"], ["ꣲ", "ꣷ"], "ꣻ", ["ꤊ", "ꤥ"], ["ꤰ", "ꥆ"], ["ꥠ", "ꥼ"], ["ꦄ", "ꦲ"], "ꧏ", ["ꨀ", "ꨨ"], ["ꩀ", "ꩂ"], ["ꩄ", "ꩋ"], ["ꩠ", "ꩶ"], "ꩺ", ["ꪀ", "ꪯ"], "ꪱ", ["ꪵ", "ꪶ"], ["ꪹ", "ꪽ"], "ꫀ", "ꫂ", ["ꫛ", "ꫝ"], ["ꫠ", "ꫪ"], ["ꫲ", "ꫴ"], ["ꬁ", "ꬆ"], ["ꬉ", "ꬎ"], ["ꬑ", "ꬖ"], ["ꬠ", "ꬦ"], ["ꬨ", "ꬮ"], ["ꯀ", "ꯢ"], ["가", "힣"], ["ힰ", "ퟆ"], ["ퟋ", "ퟻ"], ["豈", "舘"], ["並", "龎"], ["ff", "st"], ["ﬓ", "ﬗ"], "יִ", ["ײַ", "ﬨ"], ["שׁ", "זּ"], ["טּ", "לּ"], "מּ", ["נּ", "סּ"], ["ףּ", "פּ"], ["צּ", "ﮱ"], ["ﯓ", "ﴽ"], ["ﵐ", "ﶏ"], ["ﶒ", "ﷇ"], ["ﷰ", "ﷻ"], ["ﹰ", "ﹴ"], ["ﹶ", "ﻼ"], ["A", "Z"], ["a", "z"], ["ヲ", "ᄒ"], ["ᅡ", "ᅦ"], ["ᅧ", "ᅬ"], ["ᅭ", "ᅲ"], ["ᅳ", "ᅵ"]], false, false);
534
+ var peg$e33 = peg$classExpectation(["$", ["0", "9"], ["A", "Z"], "_", ["a", "z"], "ª", "µ", "º", ["À", "Ö"], ["Ø", "ö"], ["ø", "ˁ"], ["ˆ", "ˑ"], ["ˠ", "ˤ"], "ˬ", "ˮ", ["Ͱ", "ʹ"], ["Ͷ", "ͷ"], ["ͺ", "ͽ"], "Ά", ["Έ", "Ί"], "Ό", ["Ύ", "Ρ"], ["Σ", "ϵ"], ["Ϸ", "ҁ"], ["Ҋ", "ԧ"], ["Ա", "Ֆ"], "ՙ", ["ա", "և"], ["א", "ת"], ["װ", "ײ"], ["ؠ", "ي"], ["٠", "٩"], ["ٮ", "ٯ"], ["ٱ", "ۓ"], "ە", ["ۥ", "ۦ"], ["ۮ", "ۼ"], "ۿ", "ܐ", ["ܒ", "ܯ"], ["ݍ", "ޥ"], "ޱ", ["߀", "ߪ"], ["ߴ", "ߵ"], "ߺ", ["ࠀ", "ࠕ"], "ࠚ", "ࠤ", "ࠨ", ["ࡀ", "ࡘ"], "ࢠ", ["ࢢ", "ࢬ"], ["ऄ", "ह"], "ऽ", "ॐ", ["क़", "ॡ"], ["०", "९"], ["ॱ", "ॷ"], ["ॹ", "ॿ"], ["অ", "ঌ"], ["এ", "ঐ"], ["ও", "ন"], ["প", "র"], "ল", ["শ", "হ"], "ঽ", "ৎ", ["ড়", "ঢ়"], ["য়", "ৡ"], ["০", "ৱ"], ["ਅ", "ਊ"], ["ਏ", "ਐ"], ["ਓ", "ਨ"], ["ਪ", "ਰ"], ["ਲ", "ਲ਼"], ["ਵ", "ਸ਼"], ["ਸ", "ਹ"], ["ਖ਼", "ੜ"], "ਫ਼", ["੦", "੯"], ["ੲ", "ੴ"], ["અ", "ઍ"], ["એ", "ઑ"], ["ઓ", "ન"], ["પ", "ર"], ["લ", "ળ"], ["વ", "હ"], "ઽ", "ૐ", ["ૠ", "ૡ"], ["૦", "૯"], ["ଅ", "ଌ"], ["ଏ", "ଐ"], ["ଓ", "ନ"], ["ପ", "ର"], ["ଲ", "ଳ"], ["ଵ", "ହ"], "ଽ", ["ଡ଼", "ଢ଼"], ["ୟ", "ୡ"], ["୦", "୯"], "ୱ", "ஃ", ["அ", "ஊ"], ["எ", "ஐ"], ["ஒ", "க"], ["ங", "ச"], "ஜ", ["ஞ", "ட"], ["ண", "த"], ["ந", "ப"], ["ம", "ஹ"], "ௐ", ["௦", "௯"], ["అ", "ఌ"], ["ఎ", "ఐ"], ["ఒ", "న"], ["ప", "ళ"], ["వ", "హ"], "ఽ", ["ౘ", "ౙ"], ["ౠ", "ౡ"], ["౦", "౯"], ["ಅ", "ಌ"], ["ಎ", "ಐ"], ["ಒ", "ನ"], ["ಪ", "ಳ"], ["ವ", "ಹ"], "ಽ", "ೞ", ["ೠ", "ೡ"], ["೦", "೯"], ["ೱ", "ೲ"], ["അ", "ഌ"], ["എ", "ഐ"], ["ഒ", "ഺ"], "ഽ", "ൎ", ["ൠ", "ൡ"], ["൦", "൯"], ["ൺ", "ൿ"], ["අ", "ඖ"], ["ක", "න"], ["ඳ", "ර"], "ල", ["ව", "ෆ"], ["ก", "ะ"], ["า", "ำ"], ["เ", "ๆ"], ["๐", "๙"], ["ກ", "ຂ"], "ຄ", ["ງ", "ຈ"], "ຊ", "ຍ", ["ດ", "ທ"], ["ນ", "ຟ"], ["ມ", "ຣ"], "ລ", "ວ", ["ສ", "ຫ"], ["ອ", "ະ"], ["າ", "ຳ"], "ຽ", ["ເ", "ໄ"], "ໆ", ["໐", "໙"], ["ໜ", "ໟ"], "ༀ", ["༠", "༩"], ["ཀ", "ཇ"], ["ཉ", "ཬ"], ["ྈ", "ྌ"], ["က", "ဪ"], ["ဿ", "၉"], ["ၐ", "ၕ"], ["ၚ", "ၝ"], "ၡ", ["ၥ", "ၦ"], ["ၮ", "ၰ"], ["ၵ", "ႁ"], "ႎ", ["႐", "႙"], ["Ⴀ", "Ⴥ"], "Ⴧ", "Ⴭ", ["ა", "ჺ"], ["ჼ", "ቈ"], ["ቊ", "ቍ"], ["ቐ", "ቖ"], "ቘ", ["ቚ", "ቝ"], ["በ", "ኈ"], ["ኊ", "ኍ"], ["ነ", "ኰ"], ["ኲ", "ኵ"], ["ኸ", "ኾ"], "ዀ", ["ዂ", "ዅ"], ["ወ", "ዖ"], ["ዘ", "ጐ"], ["ጒ", "ጕ"], ["ጘ", "ፚ"], ["ᎀ", "ᎏ"], ["Ꭰ", "Ᏼ"], ["ᐁ", "ᙬ"], ["ᙯ", "ᙿ"], ["ᚁ", "ᚚ"], ["ᚠ", "ᛪ"], ["ᛮ", "ᛰ"], ["ᜀ", "ᜌ"], ["ᜎ", "ᜑ"], ["ᜠ", "ᜱ"], ["ᝀ", "ᝑ"], ["ᝠ", "ᝬ"], ["ᝮ", "ᝰ"], ["ក", "ឳ"], "ៗ", "ៜ", ["០", "៩"], ["᠐", "᠙"], ["ᠠ", "ᡷ"], ["ᢀ", "ᢨ"], "ᢪ", ["ᢰ", "ᣵ"], ["ᤀ", "ᤜ"], ["᥆", "ᥭ"], ["ᥰ", "ᥴ"], ["ᦀ", "ᦫ"], ["ᧁ", "ᧇ"], ["᧐", "᧙"], ["ᨀ", "ᨖ"], ["ᨠ", "ᩔ"], ["᪀", "᪉"], ["᪐", "᪙"], "ᪧ", ["ᬅ", "ᬳ"], ["ᭅ", "ᭋ"], ["᭐", "᭙"], ["ᮃ", "ᮠ"], ["ᮮ", "ᯥ"], ["ᰀ", "ᰣ"], ["᱀", "᱉"], ["ᱍ", "ᱽ"], ["ᳩ", "ᳬ"], ["ᳮ", "ᳱ"], ["ᳵ", "ᳶ"], ["ᴀ", "ᶿ"], ["Ḁ", "ἕ"], ["Ἐ", "Ἕ"], ["ἠ", "ὅ"], ["Ὀ", "Ὅ"], ["ὐ", "ὗ"], "Ὑ", "Ὓ", "Ὕ", ["Ὗ", "ώ"], ["ᾀ", "ᾴ"], ["ᾶ", "ᾼ"], "ι", ["ῂ", "ῄ"], ["ῆ", "ῌ"], ["ῐ", "ΐ"], ["ῖ", "Ί"], ["ῠ", "Ῥ"], ["ῲ", "ῴ"], ["ῶ", "ῼ"], "ⁱ", "ⁿ", ["ₐ", "ₜ"], "ℂ", "ℇ", ["ℊ", "ℓ"], "ℕ", ["ℙ", "ℝ"], "ℤ", "Ω", "ℨ", ["K", "ℭ"], ["ℯ", "ℹ"], ["ℼ", "ℿ"], ["ⅅ", "ⅉ"], "ⅎ", ["Ⅰ", "ↈ"], ["Ⰰ", "Ⱞ"], ["ⰰ", "ⱞ"], ["Ⱡ", "ⳤ"], ["Ⳬ", "ⳮ"], ["Ⳳ", "ⳳ"], ["ⴀ", "ⴥ"], "ⴧ", "ⴭ", ["ⴰ", "ⵧ"], "ⵯ", ["ⶀ", "ⶖ"], ["ⶠ", "ⶦ"], ["ⶨ", "ⶮ"], ["ⶰ", "ⶶ"], ["ⶸ", "ⶾ"], ["ⷀ", "ⷆ"], ["ⷈ", "ⷎ"], ["ⷐ", "ⷖ"], ["ⷘ", "ⷞ"], "ⸯ", ["々", "〇"], ["〡", "〩"], ["〱", "〵"], ["〸", "〼"], ["ぁ", "ゖ"], ["ゝ", "ゟ"], ["ァ", "ヺ"], ["ー", "ヿ"], ["ㄅ", "ㄭ"], ["ㄱ", "ㆎ"], ["ㆠ", "ㆺ"], ["ㇰ", "ㇿ"], ["㐀", "䶵"], ["一", "鿌"], ["ꀀ", "ꒌ"], ["ꓐ", "ꓽ"], ["ꔀ", "ꘌ"], ["ꘐ", "ꘫ"], ["Ꙁ", "ꙮ"], ["ꙿ", "ꚗ"], ["ꚠ", "ꛯ"], ["ꜗ", "ꜟ"], ["Ꜣ", "ꞈ"], ["Ꞌ", "ꞎ"], ["Ꞑ", "ꞓ"], ["Ꞡ", "Ɦ"], ["ꟸ", "ꠁ"], ["ꠃ", "ꠅ"], ["ꠇ", "ꠊ"], ["ꠌ", "ꠢ"], ["ꡀ", "ꡳ"], ["ꢂ", "ꢳ"], ["꣐", "꣙"], ["ꣲ", "ꣷ"], "ꣻ", ["꤀", "ꤥ"], ["ꤰ", "ꥆ"], ["ꥠ", "ꥼ"], ["ꦄ", "ꦲ"], ["ꧏ", "꧙"], ["ꨀ", "ꨨ"], ["ꩀ", "ꩂ"], ["ꩄ", "ꩋ"], ["꩐", "꩙"], ["ꩠ", "ꩶ"], "ꩺ", ["ꪀ", "ꪯ"], "ꪱ", ["ꪵ", "ꪶ"], ["ꪹ", "ꪽ"], "ꫀ", "ꫂ", ["ꫛ", "ꫝ"], ["ꫠ", "ꫪ"], ["ꫲ", "ꫴ"], ["ꬁ", "ꬆ"], ["ꬉ", "ꬎ"], ["ꬑ", "ꬖ"], ["ꬠ", "ꬦ"], ["ꬨ", "ꬮ"], ["ꯀ", "ꯢ"], ["꯰", "꯹"], ["가", "힣"], ["ힰ", "ퟆ"], ["ퟋ", "ퟻ"], ["豈", "舘"], ["並", "龎"], ["ff", "st"], ["ﬓ", "ﬗ"], "יִ", ["ײַ", "ﬨ"], ["שׁ", "זּ"], ["טּ", "לּ"], "מּ", ["נּ", "סּ"], ["ףּ", "פּ"], ["צּ", "ﮱ"], ["ﯓ", "ﴽ"], ["ﵐ", "ﶏ"], ["ﶒ", "ﷇ"], ["ﷰ", "ﷻ"], ["ﹰ", "ﹴ"], ["ﹶ", "ﻼ"], ["0", "9"], ["A", "Z"], ["a", "z"], ["ヲ", "ᄒ"], ["ᅡ", "ᅦ"], ["ᅧ", "ᅬ"], ["ᅭ", "ᅲ"], ["ᅳ", "ᅵ"]], false, false);
543
535
  var peg$e34 = peg$otherExpectation("NUMBER");
544
536
  var peg$e35 = peg$literalExpectation("-", false);
545
537
  var peg$e36 = peg$literalExpectation(".", false);
546
538
  var peg$e37 = peg$classExpectation([["0", "9"]], false, false);
547
539
  var peg$e38 = peg$literalExpectation("<", false);
548
540
  var peg$e39 = peg$literalExpectation(">", false);
549
- var peg$e40 = peg$literalExpectation("\\", false);
550
- var peg$e41 = peg$classExpectation(["\n", "\r", "\u2028", "\u2029"], false, false);
551
- var peg$e42 = peg$otherExpectation("end of line");
552
- var peg$e43 = peg$literalExpectation("\n", false);
553
- var peg$e44 = peg$literalExpectation("\r\n", false);
554
- var peg$e45 = peg$literalExpectation("\r", false);
555
- var peg$e46 = peg$literalExpectation("\u2028", false);
556
- var peg$e47 = peg$literalExpectation("\u2029", false);
541
+ var peg$e40 = peg$classExpectation(["<", ">"], false, false);
542
+ var peg$e41 = peg$classExpectation(["\n", "\r", '"', ["\u2028", "\u2029"]], false, false);
543
+ var peg$e42 = peg$literalExpectation("\\", false);
544
+ var peg$e44 = peg$otherExpectation("end of line");
545
+ var peg$e45 = peg$literalExpectation("\n", false);
546
+ var peg$e46 = peg$literalExpectation("\r\n", false);
547
+ var peg$e47 = peg$classExpectation(["\r", ["\u2028", "\u2029"]], false, false);
557
548
  var peg$e50 = peg$otherExpectation("whitespace");
558
549
  var peg$e51 = peg$otherExpectation("WHITESPACE");
559
- var peg$e52 = peg$classExpectation(["\n", "\r"], false, false);
560
- var peg$e53 = peg$classExpectation([" ", " "], false, false);
561
- var peg$e54 = peg$classExpectation([["a", "z"], "µ", ["ß", "ö"], ["ø", "ÿ"], "ā", "ă", "ą", "ć", "ĉ", "ċ", "č", "ď", "đ", "ē", "ĕ", "ė", "ę", "ě", "ĝ", "ğ", "ġ", "ģ", "ĥ", "ħ", "ĩ", "ī", "ĭ", "į", "ı", "ij", "ĵ", ["ķ", "ĸ"], "ĺ", "ļ", "ľ", "ŀ", "ł", "ń", "ņ", ["ň", "ʼn"], "ŋ", "ō", "ŏ", "ő", "œ", "ŕ", "ŗ", "ř", "ś", "ŝ", "ş", "š", "ţ", "ť", "ŧ", "ũ", "ū", "ŭ", "ů", "ű", "ų", "ŵ", "ŷ", "ź", "ż", ["ž", "ƀ"], "ƃ", "ƅ", "ƈ", ["ƌ", "ƍ"], "ƒ", "ƕ", ["ƙ", "ƛ"], "ƞ", "ơ", "ƣ", "ƥ", "ƨ", ["ƪ", "ƫ"], "ƭ", "ư", "ƴ", "ƶ", ["ƹ", "ƺ"], ["ƽ", "ƿ"], "dž", "lj", "nj", "ǎ", "ǐ", "ǒ", "ǔ", "ǖ", "ǘ", "ǚ", ["ǜ", "ǝ"], "ǟ", "ǡ", "ǣ", "ǥ", "ǧ", "ǩ", "ǫ", "ǭ", ["ǯ", "ǰ"], "dz", "ǵ", "ǹ", "ǻ", "ǽ", "ǿ", "ȁ", "ȃ", "ȅ", "ȇ", "ȉ", "ȋ", "ȍ", "ȏ", "ȑ", "ȓ", "ȕ", "ȗ", "ș", "ț", "ȝ", "ȟ", "ȡ", "ȣ", "ȥ", "ȧ", "ȩ", "ȫ", "ȭ", "ȯ", "ȱ", ["ȳ", "ȹ"], "ȼ", ["ȿ", "ɀ"], "ɂ", "ɇ", "ɉ", "ɋ", "ɍ", ["ɏ", "ʓ"], ["ʕ", "ʯ"], "ͱ", "ͳ", "ͷ", ["ͻ", "ͽ"], "ΐ", ["ά", "ώ"], ["ϐ", "ϑ"], ["ϕ", "ϗ"], "ϙ", "ϛ", "ϝ", "ϟ", "ϡ", "ϣ", "ϥ", "ϧ", "ϩ", "ϫ", "ϭ", ["ϯ", "ϳ"], "ϵ", "ϸ", ["ϻ", "ϼ"], ["а", "џ"], "ѡ", "ѣ", "ѥ", "ѧ", "ѩ", "ѫ", "ѭ", "ѯ", "ѱ", "ѳ", "ѵ", "ѷ", "ѹ", "ѻ", "ѽ", "ѿ", "ҁ", "ҋ", "ҍ", "ҏ", "ґ", "ғ", "ҕ", "җ", "ҙ", "қ", "ҝ", "ҟ", "ҡ", "ң", "ҥ", "ҧ", "ҩ", "ҫ", "ҭ", "ү", "ұ", "ҳ", "ҵ", "ҷ", "ҹ", "һ", "ҽ", "ҿ", "ӂ", "ӄ", "ӆ", "ӈ", "ӊ", "ӌ", ["ӎ", "ӏ"], "ӑ", "ӓ", "ӕ", "ӗ", "ә", "ӛ", "ӝ", "ӟ", "ӡ", "ӣ", "ӥ", "ӧ", "ө", "ӫ", "ӭ", "ӯ", "ӱ", "ӳ", "ӵ", "ӷ", "ӹ", "ӻ", "ӽ", "ӿ", "ԁ", "ԃ", "ԅ", "ԇ", "ԉ", "ԋ", "ԍ", "ԏ", "ԑ", "ԓ", "ԕ", "ԗ", "ԙ", "ԛ", "ԝ", "ԟ", "ԡ", "ԣ", "ԥ", "ԧ", ["ա", "և"], ["ᴀ", "ᴫ"], ["ᵫ", "ᵷ"], ["ᵹ", "ᶚ"], "ḁ", "ḃ", "ḅ", "ḇ", "ḉ", "ḋ", "ḍ", "ḏ", "ḑ", "ḓ", "ḕ", "ḗ", "ḙ", "ḛ", "ḝ", "ḟ", "ḡ", "ḣ", "ḥ", "ḧ", "ḩ", "ḫ", "ḭ", "ḯ", "ḱ", "ḳ", "ḵ", "ḷ", "ḹ", "ḻ", "ḽ", "ḿ", "ṁ", "ṃ", "ṅ", "ṇ", "ṉ", "ṋ", "ṍ", "ṏ", "ṑ", "ṓ", "ṕ", "ṗ", "ṙ", "ṛ", "ṝ", "ṟ", "ṡ", "ṣ", "ṥ", "ṧ", "ṩ", "ṫ", "ṭ", "ṯ", "ṱ", "ṳ", "ṵ", "ṷ", "ṹ", "ṻ", "ṽ", "ṿ", "ẁ", "ẃ", "ẅ", "ẇ", "ẉ", "ẋ", "ẍ", "ẏ", "ẑ", "ẓ", ["ẕ", "ẝ"], "ẟ", "ạ", "ả", "ấ", "ầ", "ẩ", "ẫ", "ậ", "ắ", "ằ", "ẳ", "ẵ", "ặ", "ẹ", "ẻ", "ẽ", "ế", "ề", "ể", "ễ", "ệ", "ỉ", "ị", "ọ", "ỏ", "ố", "ồ", "ổ", "ỗ", "ộ", "ớ", "ờ", "ở", "ỡ", "ợ", "ụ", "ủ", "ứ", "ừ", "ử", "ữ", "ự", "ỳ", "ỵ", "ỷ", "ỹ", "ỻ", "ỽ", ["ỿ", "ἇ"], ["ἐ", "ἕ"], ["ἠ", "ἧ"], ["ἰ", "ἷ"], ["ὀ", "ὅ"], ["ὐ", "ὗ"], ["ὠ", "ὧ"], ["ὰ", "ώ"], ["ᾀ", "ᾇ"], ["ᾐ", "ᾗ"], ["ᾠ", "ᾧ"], ["ᾰ", "ᾴ"], ["ᾶ", "ᾷ"], "ι", ["ῂ", "ῄ"], ["ῆ", "ῇ"], ["ῐ", "ΐ"], ["ῖ", "ῗ"], ["ῠ", "ῧ"], ["ῲ", "ῴ"], ["ῶ", "ῷ"], "ℊ", ["ℎ", "ℏ"], "ℓ", "ℯ", "ℴ", "ℹ", ["ℼ", "ℽ"], ["ⅆ", "ⅉ"], "ⅎ", "ↄ", ["ⰰ", "ⱞ"], "ⱡ", ["ⱥ", "ⱦ"], "ⱨ", "ⱪ", "ⱬ", "ⱱ", ["ⱳ", "ⱴ"], ["ⱶ", "ⱻ"], "ⲁ", "ⲃ", "ⲅ", "ⲇ", "ⲉ", "ⲋ", "ⲍ", "ⲏ", "ⲑ", "ⲓ", "ⲕ", "ⲗ", "ⲙ", "ⲛ", "ⲝ", "ⲟ", "ⲡ", "ⲣ", "ⲥ", "ⲧ", "ⲩ", "ⲫ", "ⲭ", "ⲯ", "ⲱ", "ⲳ", "ⲵ", "ⲷ", "ⲹ", "ⲻ", "ⲽ", "ⲿ", "ⳁ", "ⳃ", "ⳅ", "ⳇ", "ⳉ", "ⳋ", "ⳍ", "ⳏ", "ⳑ", "ⳓ", "ⳕ", "ⳗ", "ⳙ", "ⳛ", "ⳝ", "ⳟ", "ⳡ", ["ⳣ", "ⳤ"], "ⳬ", "ⳮ", "ⳳ", ["ⴀ", "ⴥ"], "ⴧ", "ⴭ", "ꙁ", "ꙃ", "ꙅ", "ꙇ", "ꙉ", "ꙋ", "ꙍ", "ꙏ", "ꙑ", "ꙓ", "ꙕ", "ꙗ", "ꙙ", "ꙛ", "ꙝ", "ꙟ", "ꙡ", "ꙣ", "ꙥ", "ꙧ", "ꙩ", "ꙫ", "ꙭ", "ꚁ", "ꚃ", "ꚅ", "ꚇ", "ꚉ", "ꚋ", "ꚍ", "ꚏ", "ꚑ", "ꚓ", "ꚕ", "ꚗ", "ꜣ", "ꜥ", "ꜧ", "ꜩ", "ꜫ", "ꜭ", ["ꜯ", "ꜱ"], "ꜳ", "ꜵ", "ꜷ", "ꜹ", "ꜻ", "ꜽ", "ꜿ", "ꝁ", "ꝃ", "ꝅ", "ꝇ", "ꝉ", "ꝋ", "ꝍ", "ꝏ", "ꝑ", "ꝓ", "ꝕ", "ꝗ", "ꝙ", "ꝛ", "ꝝ", "ꝟ", "ꝡ", "ꝣ", "ꝥ", "ꝧ", "ꝩ", "ꝫ", "ꝭ", "ꝯ", ["ꝱ", "ꝸ"], "ꝺ", "ꝼ", "ꝿ", "ꞁ", "ꞃ", "ꞅ", "ꞇ", "ꞌ", "ꞎ", "ꞑ", "ꞓ", "ꞡ", "ꞣ", "ꞥ", "ꞧ", "ꞩ", "ꟺ", ["ff", "st"], ["ﬓ", "ﬗ"], ["a", "z"]], false, false);
562
- var peg$e55 = peg$classExpectation([["ʰ", "ˁ"], ["ˆ", "ˑ"], ["ˠ", "ˤ"], "ˬ", "ˮ", "ʹ", "ͺ", "ՙ", "ـ", ["ۥ", "ۦ"], ["ߴ", "ߵ"], "ߺ", "ࠚ", "ࠤ", "ࠨ", "ॱ", "ๆ", "ໆ", "ჼ", "ៗ", "ᡃ", "ᪧ", ["ᱸ", "ᱽ"], ["ᴬ", "ᵪ"], "ᵸ", ["ᶛ", "ᶿ"], "ⁱ", "ⁿ", ["ₐ", "ₜ"], ["ⱼ", "ⱽ"], "ⵯ", "ⸯ", "々", ["〱", "〵"], "〻", ["ゝ", "ゞ"], ["ー", "ヾ"], "ꀕ", ["ꓸ", "ꓽ"], "ꘌ", "ꙿ", ["ꜗ", "ꜟ"], "ꝰ", "ꞈ", ["ꟸ", "ꟹ"], "ꧏ", "ꩰ", "ꫝ", ["ꫳ", "ꫴ"], "ー", ["゙", "゚"]], false, false);
563
- var peg$e56 = peg$classExpectation(["ª", "º", "ƻ", ["ǀ", "ǃ"], "ʔ", ["א", "ת"], ["װ", "ײ"], ["ؠ", "ؿ"], ["ف", "ي"], ["ٮ", "ٯ"], ["ٱ", "ۓ"], "ە", ["ۮ", "ۯ"], ["ۺ", "ۼ"], "ۿ", "ܐ", ["ܒ", "ܯ"], ["ݍ", "ޥ"], "ޱ", ["ߊ", "ߪ"], ["ࠀ", "ࠕ"], ["ࡀ", "ࡘ"], "ࢠ", ["ࢢ", "ࢬ"], ["ऄ", "ह"], "ऽ", "ॐ", ["क़", "ॡ"], ["ॲ", "ॷ"], ["ॹ", "ॿ"], ["অ", "ঌ"], ["এ", "ঐ"], ["ও", "ন"], ["প", "র"], "ল", ["শ", "হ"], "ঽ", "ৎ", ["ড়", "ঢ়"], ["য়", "ৡ"], ["ৰ", "ৱ"], ["ਅ", "ਊ"], ["ਏ", "ਐ"], ["ਓ", "ਨ"], ["ਪ", "ਰ"], ["ਲ", "ਲ਼"], ["ਵ", "ਸ਼"], ["ਸ", "ਹ"], ["ਖ਼", "ੜ"], "ਫ਼", ["ੲ", "ੴ"], ["અ", "ઍ"], ["એ", "ઑ"], ["ઓ", "ન"], ["પ", "ર"], ["લ", "ળ"], ["વ", "હ"], "ઽ", "ૐ", ["ૠ", "ૡ"], ["ଅ", "ଌ"], ["ଏ", "ଐ"], ["ଓ", "ନ"], ["ପ", "ର"], ["ଲ", "ଳ"], ["ଵ", "ହ"], "ଽ", ["ଡ଼", "ଢ଼"], ["ୟ", "ୡ"], "ୱ", "ஃ", ["அ", "ஊ"], ["எ", "ஐ"], ["ஒ", "க"], ["ங", "ச"], "ஜ", ["ஞ", "ட"], ["ண", "த"], ["ந", "ப"], ["ம", "ஹ"], "ௐ", ["అ", "ఌ"], ["ఎ", "ఐ"], ["ఒ", "న"], ["ప", "ళ"], ["వ", "హ"], "ఽ", ["ౘ", "ౙ"], ["ౠ", "ౡ"], ["ಅ", "ಌ"], ["ಎ", "ಐ"], ["ಒ", "ನ"], ["ಪ", "ಳ"], ["ವ", "ಹ"], "ಽ", "ೞ", ["ೠ", "ೡ"], ["ೱ", "ೲ"], ["അ", "ഌ"], ["എ", "ഐ"], ["ഒ", "ഺ"], "ഽ", "ൎ", ["ൠ", "ൡ"], ["ൺ", "ൿ"], ["අ", "ඖ"], ["ක", "න"], ["ඳ", "ර"], "ල", ["ව", "ෆ"], ["ก", "ะ"], ["า", "ำ"], ["เ", "ๅ"], ["ກ", "ຂ"], "ຄ", ["ງ", "ຈ"], "ຊ", "ຍ", ["ດ", "ທ"], ["ນ", "ຟ"], ["ມ", "ຣ"], "ລ", "ວ", ["ສ", "ຫ"], ["ອ", "ະ"], ["າ", "ຳ"], "ຽ", ["ເ", "ໄ"], ["ໜ", "ໟ"], "ༀ", ["ཀ", "ཇ"], ["ཉ", "ཬ"], ["ྈ", "ྌ"], ["က", "ဪ"], "ဿ", ["ၐ", "ၕ"], ["ၚ", "ၝ"], "ၡ", ["ၥ", "ၦ"], ["ၮ", "ၰ"], ["ၵ", "ႁ"], "ႎ", ["ა", "ჺ"], ["ჽ", "ቈ"], ["ቊ", "ቍ"], ["ቐ", "ቖ"], "ቘ", ["ቚ", "ቝ"], ["በ", "ኈ"], ["ኊ", "ኍ"], ["ነ", "ኰ"], ["ኲ", "ኵ"], ["ኸ", "ኾ"], "ዀ", ["ዂ", "ዅ"], ["ወ", "ዖ"], ["ዘ", "ጐ"], ["ጒ", "ጕ"], ["ጘ", "ፚ"], ["ᎀ", "ᎏ"], ["Ꭰ", "Ᏼ"], ["ᐁ", "ᙬ"], ["ᙯ", "ᙿ"], ["ᚁ", "ᚚ"], ["ᚠ", "ᛪ"], ["ᜀ", "ᜌ"], ["ᜎ", "ᜑ"], ["ᜠ", "ᜱ"], ["ᝀ", "ᝑ"], ["ᝠ", "ᝬ"], ["ᝮ", "ᝰ"], ["ក", "ឳ"], "ៜ", ["ᠠ", "ᡂ"], ["ᡄ", "ᡷ"], ["ᢀ", "ᢨ"], "ᢪ", ["ᢰ", "ᣵ"], ["ᤀ", "ᤜ"], ["ᥐ", "ᥭ"], ["ᥰ", "ᥴ"], ["ᦀ", "ᦫ"], ["ᧁ", "ᧇ"], ["ᨀ", "ᨖ"], ["ᨠ", "ᩔ"], ["ᬅ", "ᬳ"], ["ᭅ", "ᭋ"], ["ᮃ", "ᮠ"], ["ᮮ", "ᮯ"], ["ᮺ", "ᯥ"], ["ᰀ", "ᰣ"], ["ᱍ", "ᱏ"], ["ᱚ", "ᱷ"], ["ᳩ", "ᳬ"], ["ᳮ", "ᳱ"], ["ᳵ", "ᳶ"], ["ℵ", "ℸ"], ["ⴰ", "ⵧ"], ["ⶀ", "ⶖ"], ["ⶠ", "ⶦ"], ["ⶨ", "ⶮ"], ["ⶰ", "ⶶ"], ["ⶸ", "ⶾ"], ["ⷀ", "ⷆ"], ["ⷈ", "ⷎ"], ["ⷐ", "ⷖ"], ["ⷘ", "ⷞ"], "〆", "〼", ["ぁ", "ゖ"], "ゟ", ["ァ", "ヺ"], "ヿ", ["ㄅ", "ㄭ"], ["ㄱ", "ㆎ"], ["ㆠ", "ㆺ"], ["ㇰ", "ㇿ"], ["㐀", "䶵"], ["一", "鿌"], ["ꀀ", "ꀔ"], ["ꀖ", "ꒌ"], ["ꓐ", "ꓷ"], ["ꔀ", "ꘋ"], ["ꘐ", "ꘟ"], ["ꘪ", "ꘫ"], "ꙮ", ["ꚠ", "ꛥ"], ["ꟻ", "ꠁ"], ["ꠃ", "ꠅ"], ["ꠇ", "ꠊ"], ["ꠌ", "ꠢ"], ["ꡀ", "ꡳ"], ["ꢂ", "ꢳ"], ["ꣲ", "ꣷ"], "ꣻ", ["ꤊ", "ꤥ"], ["ꤰ", "ꥆ"], ["ꥠ", "ꥼ"], ["ꦄ", "ꦲ"], ["ꨀ", "ꨨ"], ["ꩀ", "ꩂ"], ["ꩄ", "ꩋ"], ["ꩠ", "ꩯ"], ["ꩱ", "ꩶ"], "ꩺ", ["ꪀ", "ꪯ"], "ꪱ", ["ꪵ", "ꪶ"], ["ꪹ", "ꪽ"], "ꫀ", "ꫂ", ["ꫛ", "ꫜ"], ["ꫠ", "ꫪ"], "ꫲ", ["ꬁ", "ꬆ"], ["ꬉ", "ꬎ"], ["ꬑ", "ꬖ"], ["ꬠ", "ꬦ"], ["ꬨ", "ꬮ"], ["ꯀ", "ꯢ"], ["가", "힣"], ["ힰ", "ퟆ"], ["ퟋ", "ퟻ"], ["豈", "舘"], ["並", "龎"], "יִ", ["ײַ", "ﬨ"], ["שׁ", "זּ"], ["טּ", "לּ"], "מּ", ["נּ", "סּ"], ["ףּ", "פּ"], ["צּ", "ﮱ"], ["ﯓ", "ﴽ"], ["ﵐ", "ﶏ"], ["ﶒ", "ﷇ"], ["ﷰ", "ﷻ"], ["ﹰ", "ﹴ"], ["ﹶ", "ﻼ"], ["ヲ", "ッ"], ["ア", "ン"], ["ᅠ", "ᄒ"], ["ᅡ", "ᅦ"], ["ᅧ", "ᅬ"], ["ᅭ", "ᅲ"], ["ᅳ", "ᅵ"]], false, false);
564
- var peg$e57 = peg$classExpectation(["Dž", "Lj", "Nj", "Dz", ["ᾈ", "ᾏ"], ["ᾘ", "ᾟ"], ["ᾨ", "ᾯ"], "ᾼ", "ῌ", "ῼ"], false, false);
565
- var peg$e58 = peg$classExpectation([["A", "Z"], ["À", "Ö"], ["Ø", "Þ"], "Ā", "Ă", "Ą", "Ć", "Ĉ", "Ċ", "Č", "Ď", "Đ", "Ē", "Ĕ", "Ė", "Ę", "Ě", "Ĝ", "Ğ", "Ġ", "Ģ", "Ĥ", "Ħ", "Ĩ", "Ī", "Ĭ", "Į", "İ", "IJ", "Ĵ", "Ķ", "Ĺ", "Ļ", "Ľ", "Ŀ", "Ł", "Ń", "Ņ", "Ň", "Ŋ", "Ō", "Ŏ", "Ő", "Œ", "Ŕ", "Ŗ", "Ř", "Ś", "Ŝ", "Ş", "Š", "Ţ", "Ť", "Ŧ", "Ũ", "Ū", "Ŭ", "Ů", "Ű", "Ų", "Ŵ", "Ŷ", ["Ÿ", "Ź"], "Ż", "Ž", ["Ɓ", "Ƃ"], "Ƅ", ["Ɔ", "Ƈ"], ["Ɖ", "Ƌ"], ["Ǝ", "Ƒ"], ["Ɠ", "Ɣ"], ["Ɩ", "Ƙ"], ["Ɯ", "Ɲ"], ["Ɵ", "Ơ"], "Ƣ", "Ƥ", ["Ʀ", "Ƨ"], "Ʃ", "Ƭ", ["Ʈ", "Ư"], ["Ʊ", "Ƴ"], "Ƶ", ["Ʒ", "Ƹ"], "Ƽ", "DŽ", "LJ", "NJ", "Ǎ", "Ǐ", "Ǒ", "Ǔ", "Ǖ", "Ǘ", "Ǚ", "Ǜ", "Ǟ", "Ǡ", "Ǣ", "Ǥ", "Ǧ", "Ǩ", "Ǫ", "Ǭ", "Ǯ", "DZ", "Ǵ", ["Ƕ", "Ǹ"], "Ǻ", "Ǽ", "Ǿ", "Ȁ", "Ȃ", "Ȅ", "Ȇ", "Ȉ", "Ȋ", "Ȍ", "Ȏ", "Ȑ", "Ȓ", "Ȕ", "Ȗ", "Ș", "Ț", "Ȝ", "Ȟ", "Ƞ", "Ȣ", "Ȥ", "Ȧ", "Ȩ", "Ȫ", "Ȭ", "Ȯ", "Ȱ", "Ȳ", ["Ⱥ", "Ȼ"], ["Ƚ", "Ⱦ"], "Ɂ", ["Ƀ", "Ɇ"], "Ɉ", "Ɋ", "Ɍ", "Ɏ", "Ͱ", "Ͳ", "Ͷ", "Ά", ["Έ", "Ί"], "Ό", ["Ύ", "Ώ"], ["Α", "Ρ"], ["Σ", "Ϋ"], "Ϗ", ["ϒ", "ϔ"], "Ϙ", "Ϛ", "Ϝ", "Ϟ", "Ϡ", "Ϣ", "Ϥ", "Ϧ", "Ϩ", "Ϫ", "Ϭ", "Ϯ", "ϴ", "Ϸ", ["Ϲ", "Ϻ"], ["Ͻ", "Я"], "Ѡ", "Ѣ", "Ѥ", "Ѧ", "Ѩ", "Ѫ", "Ѭ", "Ѯ", "Ѱ", "Ѳ", "Ѵ", "Ѷ", "Ѹ", "Ѻ", "Ѽ", "Ѿ", "Ҁ", "Ҋ", "Ҍ", "Ҏ", "Ґ", "Ғ", "Ҕ", "Җ", "Ҙ", "Қ", "Ҝ", "Ҟ", "Ҡ", "Ң", "Ҥ", "Ҧ", "Ҩ", "Ҫ", "Ҭ", "Ү", "Ұ", "Ҳ", "Ҵ", "Ҷ", "Ҹ", "Һ", "Ҽ", "Ҿ", ["Ӏ", "Ӂ"], "Ӄ", "Ӆ", "Ӈ", "Ӊ", "Ӌ", "Ӎ", "Ӑ", "Ӓ", "Ӕ", "Ӗ", "Ә", "Ӛ", "Ӝ", "Ӟ", "Ӡ", "Ӣ", "Ӥ", "Ӧ", "Ө", "Ӫ", "Ӭ", "Ӯ", "Ӱ", "Ӳ", "Ӵ", "Ӷ", "Ӹ", "Ӻ", "Ӽ", "Ӿ", "Ԁ", "Ԃ", "Ԅ", "Ԇ", "Ԉ", "Ԋ", "Ԍ", "Ԏ", "Ԑ", "Ԓ", "Ԕ", "Ԗ", "Ԙ", "Ԛ", "Ԝ", "Ԟ", "Ԡ", "Ԣ", "Ԥ", "Ԧ", ["Ա", "Ֆ"], ["Ⴀ", "Ⴥ"], "Ⴧ", "Ⴭ", "Ḁ", "Ḃ", "Ḅ", "Ḇ", "Ḉ", "Ḋ", "Ḍ", "Ḏ", "Ḑ", "Ḓ", "Ḕ", "Ḗ", "Ḙ", "Ḛ", "Ḝ", "Ḟ", "Ḡ", "Ḣ", "Ḥ", "Ḧ", "Ḩ", "Ḫ", "Ḭ", "Ḯ", "Ḱ", "Ḳ", "Ḵ", "Ḷ", "Ḹ", "Ḻ", "Ḽ", "Ḿ", "Ṁ", "Ṃ", "Ṅ", "Ṇ", "Ṉ", "Ṋ", "Ṍ", "Ṏ", "Ṑ", "Ṓ", "Ṕ", "Ṗ", "Ṙ", "Ṛ", "Ṝ", "Ṟ", "Ṡ", "Ṣ", "Ṥ", "Ṧ", "Ṩ", "Ṫ", "Ṭ", "Ṯ", "Ṱ", "Ṳ", "Ṵ", "Ṷ", "Ṹ", "Ṻ", "Ṽ", "Ṿ", "Ẁ", "Ẃ", "Ẅ", "Ẇ", "Ẉ", "Ẋ", "Ẍ", "Ẏ", "Ẑ", "Ẓ", "Ẕ", "ẞ", "Ạ", "Ả", "Ấ", "Ầ", "Ẩ", "Ẫ", "Ậ", "Ắ", "Ằ", "Ẳ", "Ẵ", "Ặ", "Ẹ", "Ẻ", "Ẽ", "Ế", "Ề", "Ể", "Ễ", "Ệ", "Ỉ", "Ị", "Ọ", "Ỏ", "Ố", "Ồ", "Ổ", "Ỗ", "Ộ", "Ớ", "Ờ", "Ở", "Ỡ", "Ợ", "Ụ", "Ủ", "Ứ", "Ừ", "Ử", "Ữ", "Ự", "Ỳ", "Ỵ", "Ỷ", "Ỹ", "Ỻ", "Ỽ", "Ỿ", ["Ἀ", "Ἇ"], ["Ἐ", "Ἕ"], ["Ἠ", "Ἧ"], ["Ἰ", "Ἷ"], ["Ὀ", "Ὅ"], "Ὑ", "Ὓ", "Ὕ", "Ὗ", ["Ὠ", "Ὧ"], ["Ᾰ", "Ά"], ["Ὲ", "Ή"], ["Ῐ", "Ί"], ["Ῠ", "Ῥ"], ["Ὸ", "Ώ"], "ℂ", "ℇ", ["ℋ", "ℍ"], ["ℐ", "ℒ"], "ℕ", ["ℙ", "ℝ"], "ℤ", "Ω", "ℨ", ["K", "ℭ"], ["ℰ", "ℳ"], ["ℾ", "ℿ"], "ⅅ", "Ↄ", ["Ⰰ", "Ⱞ"], "Ⱡ", ["Ɫ", "Ɽ"], "Ⱨ", "Ⱪ", "Ⱬ", ["Ɑ", "Ɒ"], "Ⱳ", "Ⱶ", ["Ȿ", "Ⲁ"], "Ⲃ", "Ⲅ", "Ⲇ", "Ⲉ", "Ⲋ", "Ⲍ", "Ⲏ", "Ⲑ", "Ⲓ", "Ⲕ", "Ⲗ", "Ⲙ", "Ⲛ", "Ⲝ", "Ⲟ", "Ⲡ", "Ⲣ", "Ⲥ", "Ⲧ", "Ⲩ", "Ⲫ", "Ⲭ", "Ⲯ", "Ⲱ", "Ⲳ", "Ⲵ", "Ⲷ", "Ⲹ", "Ⲻ", "Ⲽ", "Ⲿ", "Ⳁ", "Ⳃ", "Ⳅ", "Ⳇ", "Ⳉ", "Ⳋ", "Ⳍ", "Ⳏ", "Ⳑ", "Ⳓ", "Ⳕ", "Ⳗ", "Ⳙ", "Ⳛ", "Ⳝ", "Ⳟ", "Ⳡ", "Ⳣ", "Ⳬ", "Ⳮ", "Ⳳ", "Ꙁ", "Ꙃ", "Ꙅ", "Ꙇ", "Ꙉ", "Ꙋ", "Ꙍ", "Ꙏ", "Ꙑ", "Ꙓ", "Ꙕ", "Ꙗ", "Ꙙ", "Ꙛ", "Ꙝ", "Ꙟ", "Ꙡ", "Ꙣ", "Ꙥ", "Ꙧ", "Ꙩ", "Ꙫ", "Ꙭ", "Ꚁ", "Ꚃ", "Ꚅ", "Ꚇ", "Ꚉ", "Ꚋ", "Ꚍ", "Ꚏ", "Ꚑ", "Ꚓ", "Ꚕ", "Ꚗ", "Ꜣ", "Ꜥ", "Ꜧ", "Ꜩ", "Ꜫ", "Ꜭ", "Ꜯ", "Ꜳ", "Ꜵ", "Ꜷ", "Ꜹ", "Ꜻ", "Ꜽ", "Ꜿ", "Ꝁ", "Ꝃ", "Ꝅ", "Ꝇ", "Ꝉ", "Ꝋ", "Ꝍ", "Ꝏ", "Ꝑ", "Ꝓ", "Ꝕ", "Ꝗ", "Ꝙ", "Ꝛ", "Ꝝ", "Ꝟ", "Ꝡ", "Ꝣ", "Ꝥ", "Ꝧ", "Ꝩ", "Ꝫ", "Ꝭ", "Ꝯ", "Ꝺ", "Ꝼ", ["Ᵹ", "Ꝿ"], "Ꞁ", "Ꞃ", "Ꞅ", "Ꞇ", "Ꞌ", "Ɥ", "Ꞑ", "Ꞓ", "Ꞡ", "Ꞣ", "Ꞥ", "Ꞧ", "Ꞩ", "Ɦ", ["A", "Z"]], false, false);
566
- var peg$e59 = peg$classExpectation([["ᛮ", "ᛰ"], ["Ⅰ", "ↂ"], ["ↅ", "ↈ"], "〇", ["〡", "〩"], ["〸", "〺"], ["ꛦ", "ꛯ"]], false, false);
567
- var peg$e60 = peg$classExpectation([["0", "9"], ["٠", "٩"], ["۰", "۹"], ["߀", "߉"], ["०", "९"], ["০", "৯"], ["੦", "੯"], ["૦", "૯"], ["୦", "୯"], ["௦", "௯"], ["౦", "౯"], ["೦", "೯"], ["൦", "൯"], ["๐", "๙"], ["໐", "໙"], ["༠", "༩"], ["၀", "၉"], ["႐", "႙"], ["០", "៩"], ["᠐", "᠙"], ["᥆", "᥏"], ["᧐", "᧙"], ["᪀", "᪉"], ["᪐", "᪙"], ["᭐", "᭙"], ["᮰", "᮹"], ["᱀", "᱉"], ["᱐", "᱙"], ["꘠", "꘩"], ["꣐", "꣙"], ["꤀", "꤉"], ["꧐", "꧙"], ["꩐", "꩙"], ["꯰", "꯹"], ["0", "9"]], false, false);
550
+ var peg$e52 = peg$classExpectation([[" ", "\n"], "\r", " "], false, false);
551
+ var peg$e53 = peg$classExpectation(["\n", "\r"], false, false);
552
+ var peg$e54 = peg$classExpectation([" ", " "], false, false);
568
553
  var peg$f0 = function(v) {
569
554
  return v;
570
555
  };
@@ -882,14 +867,14 @@ const peggyParser = (
882
867
  var peg$f50 = function() {
883
868
  return "";
884
869
  };
885
- var peg$currPos = 0;
886
- var peg$savedPos = 0;
870
+ var peg$currPos = options.peg$currPos | 0;
871
+ var peg$savedPos = peg$currPos;
887
872
  var peg$posDetailsCache = [{ line: 1, column: 1 }];
888
- var peg$maxFailPos = 0;
889
- var peg$maxFailExpected = [];
890
- var peg$silentFails = 0;
873
+ var peg$maxFailPos = peg$currPos;
874
+ var peg$maxFailExpected = options.peg$maxFailExpected || [];
875
+ var peg$silentFails = options.peg$silentFails | 0;
891
876
  var peg$result;
892
- if ("startRule" in options) {
877
+ if (options.startRule) {
893
878
  if (!(options.startRule in peg$startRuleFunctions)) {
894
879
  throw new Error(`Can't start parsing from rule "` + options.startRule + '".');
895
880
  }
@@ -926,9 +911,12 @@ const peggyParser = (
926
911
  if (details) {
927
912
  return details;
928
913
  } else {
929
- p = pos - 1;
930
- while (!peg$posDetailsCache[p]) {
931
- p--;
914
+ if (pos >= peg$posDetailsCache.length) {
915
+ p = peg$posDetailsCache.length - 1;
916
+ } else {
917
+ p = pos;
918
+ while (!peg$posDetailsCache[--p]) {
919
+ }
932
920
  }
933
921
  details = peg$posDetailsCache[p];
934
922
  details = {
@@ -1224,8 +1212,8 @@ const peggyParser = (
1224
1212
  function peg$parse_graph() {
1225
1213
  var s0, s1, s3, s5, s7, s8, s10;
1226
1214
  s0 = peg$currPos;
1227
- if (input.substr(peg$currPos, 6).toLowerCase() === peg$c0) {
1228
- s1 = input.substr(peg$currPos, 6);
1215
+ s1 = input.substr(peg$currPos, 6);
1216
+ if (s1.toLowerCase() === peg$c0) {
1229
1217
  peg$currPos += 6;
1230
1218
  } else {
1231
1219
  s1 = peg$FAILED;
@@ -1237,8 +1225,8 @@ const peggyParser = (
1237
1225
  s1 = null;
1238
1226
  }
1239
1227
  peg$parse_();
1240
- if (input.substr(peg$currPos, 5).toLowerCase() === peg$c1) {
1241
- s3 = input.substr(peg$currPos, 5);
1228
+ s3 = input.substr(peg$currPos, 5);
1229
+ if (s3.toLowerCase() === peg$c1) {
1242
1230
  peg$currPos += 5;
1243
1231
  } else {
1244
1232
  s3 = peg$FAILED;
@@ -1247,8 +1235,8 @@ const peggyParser = (
1247
1235
  }
1248
1236
  }
1249
1237
  if (s3 === peg$FAILED) {
1250
- if (input.substr(peg$currPos, 7).toLowerCase() === peg$c2) {
1251
- s3 = input.substr(peg$currPos, 7);
1238
+ s3 = input.substr(peg$currPos, 7);
1239
+ if (s3.toLowerCase() === peg$c2) {
1252
1240
  peg$currPos += 7;
1253
1241
  } else {
1254
1242
  s3 = peg$FAILED;
@@ -1326,8 +1314,8 @@ const peggyParser = (
1326
1314
  function peg$parse_attributes() {
1327
1315
  var s0, s1, s2;
1328
1316
  s0 = peg$currPos;
1329
- if (input.substr(peg$currPos, 5).toLowerCase() === peg$c1) {
1330
- s1 = input.substr(peg$currPos, 5);
1317
+ s1 = input.substr(peg$currPos, 5);
1318
+ if (s1.toLowerCase() === peg$c1) {
1331
1319
  peg$currPos += 5;
1332
1320
  } else {
1333
1321
  s1 = peg$FAILED;
@@ -1336,8 +1324,8 @@ const peggyParser = (
1336
1324
  }
1337
1325
  }
1338
1326
  if (s1 === peg$FAILED) {
1339
- if (input.substr(peg$currPos, 4).toLowerCase() === peg$c6) {
1340
- s1 = input.substr(peg$currPos, 4);
1327
+ s1 = input.substr(peg$currPos, 4);
1328
+ if (s1.toLowerCase() === peg$c6) {
1341
1329
  peg$currPos += 4;
1342
1330
  } else {
1343
1331
  s1 = peg$FAILED;
@@ -1346,8 +1334,8 @@ const peggyParser = (
1346
1334
  }
1347
1335
  }
1348
1336
  if (s1 === peg$FAILED) {
1349
- if (input.substr(peg$currPos, 4).toLowerCase() === peg$c7) {
1350
- s1 = input.substr(peg$currPos, 4);
1337
+ s1 = input.substr(peg$currPos, 4);
1338
+ if (s1.toLowerCase() === peg$c7) {
1351
1339
  peg$currPos += 4;
1352
1340
  } else {
1353
1341
  s1 = peg$FAILED;
@@ -1478,8 +1466,8 @@ const peggyParser = (
1478
1466
  s1 = peg$parse_key_value();
1479
1467
  if (s1 !== peg$FAILED) {
1480
1468
  peg$parse_();
1481
- if (input.charCodeAt(peg$currPos) === 44) {
1482
- s3 = peg$c9;
1469
+ s3 = input.charAt(peg$currPos);
1470
+ if (peg$r0.test(s3)) {
1483
1471
  peg$currPos++;
1484
1472
  } else {
1485
1473
  s3 = peg$FAILED;
@@ -1487,17 +1475,6 @@ const peggyParser = (
1487
1475
  peg$fail(peg$e9);
1488
1476
  }
1489
1477
  }
1490
- if (s3 === peg$FAILED) {
1491
- if (input.charCodeAt(peg$currPos) === 59) {
1492
- s3 = peg$c5;
1493
- peg$currPos++;
1494
- } else {
1495
- s3 = peg$FAILED;
1496
- if (peg$silentFails === 0) {
1497
- peg$fail(peg$e5);
1498
- }
1499
- }
1500
- }
1501
1478
  if (s3 === peg$FAILED) {
1502
1479
  s3 = null;
1503
1480
  }
@@ -1514,7 +1491,7 @@ const peggyParser = (
1514
1491
  s0 = peg$currPos;
1515
1492
  peg$parse_();
1516
1493
  if (input.charCodeAt(peg$currPos) === 91) {
1517
- s2 = peg$c10;
1494
+ s2 = peg$c9;
1518
1495
  peg$currPos++;
1519
1496
  } else {
1520
1497
  s2 = peg$FAILED;
@@ -1537,7 +1514,7 @@ const peggyParser = (
1537
1514
  }
1538
1515
  s4 = peg$parse__();
1539
1516
  if (input.charCodeAt(peg$currPos) === 93) {
1540
- s5 = peg$c11;
1517
+ s5 = peg$c10;
1541
1518
  peg$currPos++;
1542
1519
  } else {
1543
1520
  s5 = peg$FAILED;
@@ -1575,8 +1552,8 @@ const peggyParser = (
1575
1552
  if (s2 !== peg$FAILED) {
1576
1553
  s3 = [];
1577
1554
  s4 = peg$currPos;
1578
- if (input.charCodeAt(peg$currPos) === 44) {
1579
- s5 = peg$c9;
1555
+ s5 = input.charAt(peg$currPos);
1556
+ if (peg$r0.test(s5)) {
1580
1557
  peg$currPos++;
1581
1558
  } else {
1582
1559
  s5 = peg$FAILED;
@@ -1584,17 +1561,6 @@ const peggyParser = (
1584
1561
  peg$fail(peg$e9);
1585
1562
  }
1586
1563
  }
1587
- if (s5 === peg$FAILED) {
1588
- if (input.charCodeAt(peg$currPos) === 59) {
1589
- s5 = peg$c5;
1590
- peg$currPos++;
1591
- } else {
1592
- s5 = peg$FAILED;
1593
- if (peg$silentFails === 0) {
1594
- peg$fail(peg$e5);
1595
- }
1596
- }
1597
- }
1598
1564
  if (s5 === peg$FAILED) {
1599
1565
  s5 = null;
1600
1566
  }
@@ -1609,8 +1575,8 @@ const peggyParser = (
1609
1575
  while (s4 !== peg$FAILED) {
1610
1576
  s3.push(s4);
1611
1577
  s4 = peg$currPos;
1612
- if (input.charCodeAt(peg$currPos) === 44) {
1613
- s5 = peg$c9;
1578
+ s5 = input.charAt(peg$currPos);
1579
+ if (peg$r0.test(s5)) {
1614
1580
  peg$currPos++;
1615
1581
  } else {
1616
1582
  s5 = peg$FAILED;
@@ -1618,17 +1584,6 @@ const peggyParser = (
1618
1584
  peg$fail(peg$e9);
1619
1585
  }
1620
1586
  }
1621
- if (s5 === peg$FAILED) {
1622
- if (input.charCodeAt(peg$currPos) === 59) {
1623
- s5 = peg$c5;
1624
- peg$currPos++;
1625
- } else {
1626
- s5 = peg$FAILED;
1627
- if (peg$silentFails === 0) {
1628
- peg$fail(peg$e5);
1629
- }
1630
- }
1631
- }
1632
1587
  if (s5 === peg$FAILED) {
1633
1588
  s5 = null;
1634
1589
  }
@@ -1641,8 +1596,8 @@ const peggyParser = (
1641
1596
  s4 = peg$FAILED;
1642
1597
  }
1643
1598
  }
1644
- if (input.charCodeAt(peg$currPos) === 44) {
1645
- s4 = peg$c9;
1599
+ s4 = input.charAt(peg$currPos);
1600
+ if (peg$r0.test(s4)) {
1646
1601
  peg$currPos++;
1647
1602
  } else {
1648
1603
  s4 = peg$FAILED;
@@ -1650,17 +1605,6 @@ const peggyParser = (
1650
1605
  peg$fail(peg$e9);
1651
1606
  }
1652
1607
  }
1653
- if (s4 === peg$FAILED) {
1654
- if (input.charCodeAt(peg$currPos) === 59) {
1655
- s4 = peg$c5;
1656
- peg$currPos++;
1657
- } else {
1658
- s4 = peg$FAILED;
1659
- if (peg$silentFails === 0) {
1660
- peg$fail(peg$e5);
1661
- }
1662
- }
1663
- }
1664
1608
  if (s4 === peg$FAILED) {
1665
1609
  s4 = null;
1666
1610
  }
@@ -1702,8 +1646,8 @@ const peggyParser = (
1702
1646
  function peg$parse_edge_operator() {
1703
1647
  var s0, s1;
1704
1648
  s0 = peg$currPos;
1705
- if (input.substr(peg$currPos, 2) === peg$c12) {
1706
- s1 = peg$c12;
1649
+ if (input.substr(peg$currPos, 2) === peg$c11) {
1650
+ s1 = peg$c11;
1707
1651
  peg$currPos += 2;
1708
1652
  } else {
1709
1653
  s1 = peg$FAILED;
@@ -1712,8 +1656,8 @@ const peggyParser = (
1712
1656
  }
1713
1657
  }
1714
1658
  if (s1 === peg$FAILED) {
1715
- if (input.substr(peg$currPos, 2) === peg$c13) {
1716
- s1 = peg$c13;
1659
+ if (input.substr(peg$currPos, 2) === peg$c12) {
1660
+ s1 = peg$c12;
1717
1661
  peg$currPos += 2;
1718
1662
  } else {
1719
1663
  s1 = peg$FAILED;
@@ -1777,7 +1721,7 @@ const peggyParser = (
1777
1721
  peg$silentFails++;
1778
1722
  s0 = peg$currPos;
1779
1723
  if (input.charCodeAt(peg$currPos) === 58) {
1780
- s1 = peg$c14;
1724
+ s1 = peg$c13;
1781
1725
  peg$currPos++;
1782
1726
  } else {
1783
1727
  s1 = peg$FAILED;
@@ -1790,7 +1734,7 @@ const peggyParser = (
1790
1734
  if (s2 !== peg$FAILED) {
1791
1735
  s3 = peg$currPos;
1792
1736
  if (input.charCodeAt(peg$currPos) === 58) {
1793
- s4 = peg$c14;
1737
+ s4 = peg$c13;
1794
1738
  peg$currPos++;
1795
1739
  } else {
1796
1740
  s4 = peg$FAILED;
@@ -1836,8 +1780,8 @@ const peggyParser = (
1836
1780
  function peg$parse_subgraph_id() {
1837
1781
  var s0, s1, s3;
1838
1782
  s0 = peg$currPos;
1839
- if (input.substr(peg$currPos, 8).toLowerCase() === peg$c15) {
1840
- s1 = input.substr(peg$currPos, 8);
1783
+ s1 = input.substr(peg$currPos, 8);
1784
+ if (s1.toLowerCase() === peg$c14) {
1841
1785
  peg$currPos += 8;
1842
1786
  } else {
1843
1787
  s1 = peg$FAILED;
@@ -1907,7 +1851,7 @@ const peggyParser = (
1907
1851
  function peg$parse_compass_keyword() {
1908
1852
  var s0;
1909
1853
  if (input.charCodeAt(peg$currPos) === 110) {
1910
- s0 = peg$c16;
1854
+ s0 = peg$c15;
1911
1855
  peg$currPos++;
1912
1856
  } else {
1913
1857
  s0 = peg$FAILED;
@@ -1916,8 +1860,8 @@ const peggyParser = (
1916
1860
  }
1917
1861
  }
1918
1862
  if (s0 === peg$FAILED) {
1919
- if (input.substr(peg$currPos, 2) === peg$c17) {
1920
- s0 = peg$c17;
1863
+ if (input.substr(peg$currPos, 2) === peg$c16) {
1864
+ s0 = peg$c16;
1921
1865
  peg$currPos += 2;
1922
1866
  } else {
1923
1867
  s0 = peg$FAILED;
@@ -1927,7 +1871,7 @@ const peggyParser = (
1927
1871
  }
1928
1872
  if (s0 === peg$FAILED) {
1929
1873
  if (input.charCodeAt(peg$currPos) === 101) {
1930
- s0 = peg$c18;
1874
+ s0 = peg$c17;
1931
1875
  peg$currPos++;
1932
1876
  } else {
1933
1877
  s0 = peg$FAILED;
@@ -1936,8 +1880,8 @@ const peggyParser = (
1936
1880
  }
1937
1881
  }
1938
1882
  if (s0 === peg$FAILED) {
1939
- if (input.substr(peg$currPos, 2) === peg$c19) {
1940
- s0 = peg$c19;
1883
+ if (input.substr(peg$currPos, 2) === peg$c18) {
1884
+ s0 = peg$c18;
1941
1885
  peg$currPos += 2;
1942
1886
  } else {
1943
1887
  s0 = peg$FAILED;
@@ -1947,7 +1891,7 @@ const peggyParser = (
1947
1891
  }
1948
1892
  if (s0 === peg$FAILED) {
1949
1893
  if (input.charCodeAt(peg$currPos) === 115) {
1950
- s0 = peg$c20;
1894
+ s0 = peg$c19;
1951
1895
  peg$currPos++;
1952
1896
  } else {
1953
1897
  s0 = peg$FAILED;
@@ -1956,8 +1900,8 @@ const peggyParser = (
1956
1900
  }
1957
1901
  }
1958
1902
  if (s0 === peg$FAILED) {
1959
- if (input.substr(peg$currPos, 2) === peg$c21) {
1960
- s0 = peg$c21;
1903
+ if (input.substr(peg$currPos, 2) === peg$c20) {
1904
+ s0 = peg$c20;
1961
1905
  peg$currPos += 2;
1962
1906
  } else {
1963
1907
  s0 = peg$FAILED;
@@ -1967,7 +1911,7 @@ const peggyParser = (
1967
1911
  }
1968
1912
  if (s0 === peg$FAILED) {
1969
1913
  if (input.charCodeAt(peg$currPos) === 119) {
1970
- s0 = peg$c22;
1914
+ s0 = peg$c21;
1971
1915
  peg$currPos++;
1972
1916
  } else {
1973
1917
  s0 = peg$FAILED;
@@ -1976,8 +1920,8 @@ const peggyParser = (
1976
1920
  }
1977
1921
  }
1978
1922
  if (s0 === peg$FAILED) {
1979
- if (input.substr(peg$currPos, 2) === peg$c23) {
1980
- s0 = peg$c23;
1923
+ if (input.substr(peg$currPos, 2) === peg$c22) {
1924
+ s0 = peg$c22;
1981
1925
  peg$currPos += 2;
1982
1926
  } else {
1983
1927
  s0 = peg$FAILED;
@@ -2007,7 +1951,7 @@ const peggyParser = (
2007
1951
  if (s1 === peg$FAILED) {
2008
1952
  s1 = peg$currPos;
2009
1953
  if (input.charCodeAt(peg$currPos) === 34) {
2010
- s2 = peg$c24;
1954
+ s2 = peg$c23;
2011
1955
  peg$currPos++;
2012
1956
  } else {
2013
1957
  s2 = peg$FAILED;
@@ -2019,7 +1963,7 @@ const peggyParser = (
2019
1963
  s3 = peg$parse_compass_keyword();
2020
1964
  if (s3 !== peg$FAILED) {
2021
1965
  if (input.charCodeAt(peg$currPos) === 34) {
2022
- s4 = peg$c24;
1966
+ s4 = peg$c23;
2023
1967
  peg$currPos++;
2024
1968
  } else {
2025
1969
  s4 = peg$FAILED;
@@ -2087,8 +2031,8 @@ const peggyParser = (
2087
2031
  function peg$parse_block_comment() {
2088
2032
  var s0, s1, s2, s3, s4, s5;
2089
2033
  s0 = peg$currPos;
2090
- if (input.substr(peg$currPos, 2) === peg$c25) {
2091
- s1 = peg$c25;
2034
+ if (input.substr(peg$currPos, 2) === peg$c24) {
2035
+ s1 = peg$c24;
2092
2036
  peg$currPos += 2;
2093
2037
  } else {
2094
2038
  s1 = peg$FAILED;
@@ -2101,8 +2045,8 @@ const peggyParser = (
2101
2045
  s3 = peg$currPos;
2102
2046
  s4 = peg$currPos;
2103
2047
  peg$silentFails++;
2104
- if (input.substr(peg$currPos, 2) === peg$c26) {
2105
- s5 = peg$c26;
2048
+ if (input.substr(peg$currPos, 2) === peg$c25) {
2049
+ s5 = peg$c25;
2106
2050
  peg$currPos += 2;
2107
2051
  } else {
2108
2052
  s5 = peg$FAILED;
@@ -2143,8 +2087,8 @@ const peggyParser = (
2143
2087
  s3 = peg$currPos;
2144
2088
  s4 = peg$currPos;
2145
2089
  peg$silentFails++;
2146
- if (input.substr(peg$currPos, 2) === peg$c26) {
2147
- s5 = peg$c26;
2090
+ if (input.substr(peg$currPos, 2) === peg$c25) {
2091
+ s5 = peg$c25;
2148
2092
  peg$currPos += 2;
2149
2093
  } else {
2150
2094
  s5 = peg$FAILED;
@@ -2181,8 +2125,8 @@ const peggyParser = (
2181
2125
  s3 = peg$FAILED;
2182
2126
  }
2183
2127
  }
2184
- if (input.substr(peg$currPos, 2) === peg$c26) {
2185
- s3 = peg$c26;
2128
+ if (input.substr(peg$currPos, 2) === peg$c25) {
2129
+ s3 = peg$c25;
2186
2130
  peg$currPos += 2;
2187
2131
  } else {
2188
2132
  s3 = peg$FAILED;
@@ -2227,8 +2171,8 @@ const peggyParser = (
2227
2171
  var s0, s2, s3, s4, s5, s6;
2228
2172
  s0 = peg$currPos;
2229
2173
  peg$parse_();
2230
- if (input.substr(peg$currPos, 2) === peg$c27) {
2231
- s2 = peg$c27;
2174
+ if (input.substr(peg$currPos, 2) === peg$c26) {
2175
+ s2 = peg$c26;
2232
2176
  peg$currPos += 2;
2233
2177
  } else {
2234
2178
  s2 = peg$FAILED;
@@ -2342,7 +2286,7 @@ const peggyParser = (
2342
2286
  s0 = peg$currPos;
2343
2287
  peg$parse_();
2344
2288
  if (input.charCodeAt(peg$currPos) === 35) {
2345
- s2 = peg$c28;
2289
+ s2 = peg$c27;
2346
2290
  peg$currPos++;
2347
2291
  } else {
2348
2292
  s2 = peg$FAILED;
@@ -2479,36 +2423,27 @@ const peggyParser = (
2479
2423
  }
2480
2424
  function peg$parseStringStart() {
2481
2425
  var s0;
2482
- s0 = peg$parseUnicodeLetter();
2483
- if (s0 === peg$FAILED) {
2484
- if (input.charCodeAt(peg$currPos) === 36) {
2485
- s0 = peg$c29;
2486
- peg$currPos++;
2487
- } else {
2488
- s0 = peg$FAILED;
2489
- if (peg$silentFails === 0) {
2490
- peg$fail(peg$e32);
2491
- }
2492
- }
2493
- if (s0 === peg$FAILED) {
2494
- if (input.charCodeAt(peg$currPos) === 95) {
2495
- s0 = peg$c30;
2496
- peg$currPos++;
2497
- } else {
2498
- s0 = peg$FAILED;
2499
- if (peg$silentFails === 0) {
2500
- peg$fail(peg$e33);
2501
- }
2502
- }
2426
+ s0 = input.charAt(peg$currPos);
2427
+ if (peg$r1.test(s0)) {
2428
+ peg$currPos++;
2429
+ } else {
2430
+ s0 = peg$FAILED;
2431
+ if (peg$silentFails === 0) {
2432
+ peg$fail(peg$e32);
2503
2433
  }
2504
2434
  }
2505
2435
  return s0;
2506
2436
  }
2507
2437
  function peg$parseStringPart() {
2508
2438
  var s0;
2509
- s0 = peg$parseStringStart();
2510
- if (s0 === peg$FAILED) {
2511
- s0 = peg$parseNd();
2439
+ s0 = input.charAt(peg$currPos);
2440
+ if (peg$r2.test(s0)) {
2441
+ peg$currPos++;
2442
+ } else {
2443
+ s0 = peg$FAILED;
2444
+ if (peg$silentFails === 0) {
2445
+ peg$fail(peg$e33);
2446
+ }
2512
2447
  }
2513
2448
  return s0;
2514
2449
  }
@@ -2518,7 +2453,7 @@ const peggyParser = (
2518
2453
  s0 = peg$currPos;
2519
2454
  s1 = peg$currPos;
2520
2455
  if (input.charCodeAt(peg$currPos) === 45) {
2521
- s2 = peg$c31;
2456
+ s2 = peg$c28;
2522
2457
  peg$currPos++;
2523
2458
  } else {
2524
2459
  s2 = peg$FAILED;
@@ -2531,7 +2466,7 @@ const peggyParser = (
2531
2466
  }
2532
2467
  s3 = peg$currPos;
2533
2468
  if (input.charCodeAt(peg$currPos) === 46) {
2534
- s4 = peg$c32;
2469
+ s4 = peg$c29;
2535
2470
  peg$currPos++;
2536
2471
  } else {
2537
2472
  s4 = peg$FAILED;
@@ -2541,8 +2476,8 @@ const peggyParser = (
2541
2476
  }
2542
2477
  if (s4 !== peg$FAILED) {
2543
2478
  s5 = [];
2544
- if (peg$r0.test(input.charAt(peg$currPos))) {
2545
- s6 = input.charAt(peg$currPos);
2479
+ s6 = input.charAt(peg$currPos);
2480
+ if (peg$r3.test(s6)) {
2546
2481
  peg$currPos++;
2547
2482
  } else {
2548
2483
  s6 = peg$FAILED;
@@ -2553,8 +2488,8 @@ const peggyParser = (
2553
2488
  if (s6 !== peg$FAILED) {
2554
2489
  while (s6 !== peg$FAILED) {
2555
2490
  s5.push(s6);
2556
- if (peg$r0.test(input.charAt(peg$currPos))) {
2557
- s6 = input.charAt(peg$currPos);
2491
+ s6 = input.charAt(peg$currPos);
2492
+ if (peg$r3.test(s6)) {
2558
2493
  peg$currPos++;
2559
2494
  } else {
2560
2495
  s6 = peg$FAILED;
@@ -2580,8 +2515,8 @@ const peggyParser = (
2580
2515
  if (s3 === peg$FAILED) {
2581
2516
  s3 = peg$currPos;
2582
2517
  s4 = [];
2583
- if (peg$r0.test(input.charAt(peg$currPos))) {
2584
- s5 = input.charAt(peg$currPos);
2518
+ s5 = input.charAt(peg$currPos);
2519
+ if (peg$r3.test(s5)) {
2585
2520
  peg$currPos++;
2586
2521
  } else {
2587
2522
  s5 = peg$FAILED;
@@ -2592,8 +2527,8 @@ const peggyParser = (
2592
2527
  if (s5 !== peg$FAILED) {
2593
2528
  while (s5 !== peg$FAILED) {
2594
2529
  s4.push(s5);
2595
- if (peg$r0.test(input.charAt(peg$currPos))) {
2596
- s5 = input.charAt(peg$currPos);
2530
+ s5 = input.charAt(peg$currPos);
2531
+ if (peg$r3.test(s5)) {
2597
2532
  peg$currPos++;
2598
2533
  } else {
2599
2534
  s5 = peg$FAILED;
@@ -2608,7 +2543,7 @@ const peggyParser = (
2608
2543
  if (s4 !== peg$FAILED) {
2609
2544
  s5 = peg$currPos;
2610
2545
  if (input.charCodeAt(peg$currPos) === 46) {
2611
- s6 = peg$c32;
2546
+ s6 = peg$c29;
2612
2547
  peg$currPos++;
2613
2548
  } else {
2614
2549
  s6 = peg$FAILED;
@@ -2618,8 +2553,8 @@ const peggyParser = (
2618
2553
  }
2619
2554
  if (s6 !== peg$FAILED) {
2620
2555
  s7 = [];
2621
- if (peg$r0.test(input.charAt(peg$currPos))) {
2622
- s8 = input.charAt(peg$currPos);
2556
+ s8 = input.charAt(peg$currPos);
2557
+ if (peg$r3.test(s8)) {
2623
2558
  peg$currPos++;
2624
2559
  } else {
2625
2560
  s8 = peg$FAILED;
@@ -2629,8 +2564,8 @@ const peggyParser = (
2629
2564
  }
2630
2565
  while (s8 !== peg$FAILED) {
2631
2566
  s7.push(s8);
2632
- if (peg$r0.test(input.charAt(peg$currPos))) {
2633
- s8 = input.charAt(peg$currPos);
2567
+ s8 = input.charAt(peg$currPos);
2568
+ if (peg$r3.test(s8)) {
2634
2569
  peg$currPos++;
2635
2570
  } else {
2636
2571
  s8 = peg$FAILED;
@@ -2691,7 +2626,7 @@ const peggyParser = (
2691
2626
  var s0, s1, s2, s3;
2692
2627
  s0 = peg$currPos;
2693
2628
  if (input.charCodeAt(peg$currPos) === 60) {
2694
- s1 = peg$c33;
2629
+ s1 = peg$c30;
2695
2630
  peg$currPos++;
2696
2631
  } else {
2697
2632
  s1 = peg$FAILED;
@@ -2713,7 +2648,7 @@ const peggyParser = (
2713
2648
  }
2714
2649
  }
2715
2650
  if (input.charCodeAt(peg$currPos) === 62) {
2716
- s3 = peg$c34;
2651
+ s3 = peg$c31;
2717
2652
  peg$currPos++;
2718
2653
  } else {
2719
2654
  s3 = peg$FAILED;
@@ -2741,24 +2676,13 @@ const peggyParser = (
2741
2676
  s2 = peg$currPos;
2742
2677
  s3 = peg$currPos;
2743
2678
  peg$silentFails++;
2744
- if (input.charCodeAt(peg$currPos) === 62) {
2745
- s4 = peg$c34;
2679
+ s4 = input.charAt(peg$currPos);
2680
+ if (peg$r4.test(s4)) {
2746
2681
  peg$currPos++;
2747
2682
  } else {
2748
2683
  s4 = peg$FAILED;
2749
2684
  if (peg$silentFails === 0) {
2750
- peg$fail(peg$e39);
2751
- }
2752
- }
2753
- if (s4 === peg$FAILED) {
2754
- if (input.charCodeAt(peg$currPos) === 60) {
2755
- s4 = peg$c33;
2756
- peg$currPos++;
2757
- } else {
2758
- s4 = peg$FAILED;
2759
- if (peg$silentFails === 0) {
2760
- peg$fail(peg$e38);
2761
- }
2685
+ peg$fail(peg$e40);
2762
2686
  }
2763
2687
  }
2764
2688
  peg$silentFails--;
@@ -2795,24 +2719,13 @@ const peggyParser = (
2795
2719
  s2 = peg$currPos;
2796
2720
  s3 = peg$currPos;
2797
2721
  peg$silentFails++;
2798
- if (input.charCodeAt(peg$currPos) === 62) {
2799
- s4 = peg$c34;
2722
+ s4 = input.charAt(peg$currPos);
2723
+ if (peg$r4.test(s4)) {
2800
2724
  peg$currPos++;
2801
2725
  } else {
2802
2726
  s4 = peg$FAILED;
2803
2727
  if (peg$silentFails === 0) {
2804
- peg$fail(peg$e39);
2805
- }
2806
- }
2807
- if (s4 === peg$FAILED) {
2808
- if (input.charCodeAt(peg$currPos) === 60) {
2809
- s4 = peg$c33;
2810
- peg$currPos++;
2811
- } else {
2812
- s4 = peg$FAILED;
2813
- if (peg$silentFails === 0) {
2814
- peg$fail(peg$e38);
2815
- }
2728
+ peg$fail(peg$e40);
2816
2729
  }
2817
2730
  }
2818
2731
  peg$silentFails--;
@@ -2858,7 +2771,7 @@ const peggyParser = (
2858
2771
  var s0, s1, s2, s3;
2859
2772
  s0 = peg$currPos;
2860
2773
  if (input.charCodeAt(peg$currPos) === 34) {
2861
- s1 = peg$c24;
2774
+ s1 = peg$c23;
2862
2775
  peg$currPos++;
2863
2776
  } else {
2864
2777
  s1 = peg$FAILED;
@@ -2874,7 +2787,7 @@ const peggyParser = (
2874
2787
  s3 = peg$parseDoubleStringCharacter();
2875
2788
  }
2876
2789
  if (input.charCodeAt(peg$currPos) === 34) {
2877
- s3 = peg$c24;
2790
+ s3 = peg$c23;
2878
2791
  peg$currPos++;
2879
2792
  } else {
2880
2793
  s3 = peg$FAILED;
@@ -2902,18 +2815,15 @@ const peggyParser = (
2902
2815
  s0 = peg$currPos;
2903
2816
  s1 = peg$currPos;
2904
2817
  peg$silentFails++;
2905
- if (input.charCodeAt(peg$currPos) === 34) {
2906
- s2 = peg$c24;
2818
+ s2 = input.charAt(peg$currPos);
2819
+ if (peg$r5.test(s2)) {
2907
2820
  peg$currPos++;
2908
2821
  } else {
2909
2822
  s2 = peg$FAILED;
2910
2823
  if (peg$silentFails === 0) {
2911
- peg$fail(peg$e25);
2824
+ peg$fail(peg$e41);
2912
2825
  }
2913
2826
  }
2914
- if (s2 === peg$FAILED) {
2915
- s2 = peg$parseLineTerminator();
2916
- }
2917
2827
  peg$silentFails--;
2918
2828
  if (s2 === peg$FAILED) {
2919
2829
  s1 = void 0;
@@ -2945,12 +2855,12 @@ const peggyParser = (
2945
2855
  s0 = peg$currPos;
2946
2856
  s1 = peg$currPos;
2947
2857
  if (input.charCodeAt(peg$currPos) === 92) {
2948
- s2 = peg$c35;
2858
+ s2 = peg$c32;
2949
2859
  peg$currPos++;
2950
2860
  } else {
2951
2861
  s2 = peg$FAILED;
2952
2862
  if (peg$silentFails === 0) {
2953
- peg$fail(peg$e40);
2863
+ peg$fail(peg$e42);
2954
2864
  }
2955
2865
  }
2956
2866
  if (s2 !== peg$FAILED) {
@@ -2985,12 +2895,12 @@ const peggyParser = (
2985
2895
  var s0, s1, s2;
2986
2896
  s0 = peg$currPos;
2987
2897
  if (input.charCodeAt(peg$currPos) === 92) {
2988
- s1 = peg$c35;
2898
+ s1 = peg$c32;
2989
2899
  peg$currPos++;
2990
2900
  } else {
2991
2901
  s1 = peg$FAILED;
2992
2902
  if (peg$silentFails === 0) {
2993
- peg$fail(peg$e40);
2903
+ peg$fail(peg$e42);
2994
2904
  }
2995
2905
  }
2996
2906
  if (s1 !== peg$FAILED) {
@@ -3008,71 +2918,36 @@ const peggyParser = (
3008
2918
  }
3009
2919
  return s0;
3010
2920
  }
3011
- function peg$parseLineTerminator() {
3012
- var s0;
3013
- if (peg$r1.test(input.charAt(peg$currPos))) {
3014
- s0 = input.charAt(peg$currPos);
3015
- peg$currPos++;
3016
- } else {
3017
- s0 = peg$FAILED;
3018
- if (peg$silentFails === 0) {
3019
- peg$fail(peg$e41);
3020
- }
3021
- }
3022
- return s0;
3023
- }
3024
2921
  function peg$parseLineTerminatorSequence() {
3025
2922
  var s0;
3026
2923
  peg$silentFails++;
3027
2924
  if (input.charCodeAt(peg$currPos) === 10) {
3028
- s0 = peg$c36;
2925
+ s0 = peg$c33;
3029
2926
  peg$currPos++;
3030
2927
  } else {
3031
2928
  s0 = peg$FAILED;
3032
2929
  if (peg$silentFails === 0) {
3033
- peg$fail(peg$e43);
2930
+ peg$fail(peg$e45);
3034
2931
  }
3035
2932
  }
3036
2933
  if (s0 === peg$FAILED) {
3037
- if (input.substr(peg$currPos, 2) === peg$c37) {
3038
- s0 = peg$c37;
2934
+ if (input.substr(peg$currPos, 2) === peg$c34) {
2935
+ s0 = peg$c34;
3039
2936
  peg$currPos += 2;
3040
2937
  } else {
3041
2938
  s0 = peg$FAILED;
3042
2939
  if (peg$silentFails === 0) {
3043
- peg$fail(peg$e44);
2940
+ peg$fail(peg$e46);
3044
2941
  }
3045
2942
  }
3046
2943
  if (s0 === peg$FAILED) {
3047
- if (input.charCodeAt(peg$currPos) === 13) {
3048
- s0 = peg$c38;
2944
+ s0 = input.charAt(peg$currPos);
2945
+ if (peg$r7.test(s0)) {
3049
2946
  peg$currPos++;
3050
2947
  } else {
3051
2948
  s0 = peg$FAILED;
3052
2949
  if (peg$silentFails === 0) {
3053
- peg$fail(peg$e45);
3054
- }
3055
- }
3056
- if (s0 === peg$FAILED) {
3057
- if (input.charCodeAt(peg$currPos) === 8232) {
3058
- s0 = peg$c39;
3059
- peg$currPos++;
3060
- } else {
3061
- s0 = peg$FAILED;
3062
- if (peg$silentFails === 0) {
3063
- peg$fail(peg$e46);
3064
- }
3065
- }
3066
- if (s0 === peg$FAILED) {
3067
- if (input.charCodeAt(peg$currPos) === 8233) {
3068
- s0 = peg$c40;
3069
- peg$currPos++;
3070
- } else {
3071
- s0 = peg$FAILED;
3072
- if (peg$silentFails === 0) {
3073
- peg$fail(peg$e47);
3074
- }
3075
- }
2950
+ peg$fail(peg$e47);
3076
2951
  }
3077
2952
  }
3078
2953
  }
@@ -3080,7 +2955,7 @@ const peggyParser = (
3080
2955
  peg$silentFails--;
3081
2956
  if (s0 === peg$FAILED) {
3082
2957
  if (peg$silentFails === 0) {
3083
- peg$fail(peg$e42);
2958
+ peg$fail(peg$e44);
3084
2959
  }
3085
2960
  }
3086
2961
  return s0;
@@ -3118,15 +2993,25 @@ const peggyParser = (
3118
2993
  var s0, s1;
3119
2994
  peg$silentFails++;
3120
2995
  s0 = [];
3121
- s1 = peg$parse_whitespace();
3122
- if (s1 === peg$FAILED) {
3123
- s1 = peg$parse_newline();
2996
+ s1 = input.charAt(peg$currPos);
2997
+ if (peg$r9.test(s1)) {
2998
+ peg$currPos++;
2999
+ } else {
3000
+ s1 = peg$FAILED;
3001
+ if (peg$silentFails === 0) {
3002
+ peg$fail(peg$e52);
3003
+ }
3124
3004
  }
3125
3005
  while (s1 !== peg$FAILED) {
3126
3006
  s0.push(s1);
3127
- s1 = peg$parse_whitespace();
3128
- if (s1 === peg$FAILED) {
3129
- s1 = peg$parse_newline();
3007
+ s1 = input.charAt(peg$currPos);
3008
+ if (peg$r9.test(s1)) {
3009
+ peg$currPos++;
3010
+ } else {
3011
+ s1 = peg$FAILED;
3012
+ if (peg$silentFails === 0) {
3013
+ peg$fail(peg$e52);
3014
+ }
3130
3015
  }
3131
3016
  }
3132
3017
  peg$silentFails--;
@@ -3138,21 +3023,8 @@ const peggyParser = (
3138
3023
  }
3139
3024
  function peg$parse_newline() {
3140
3025
  var s0;
3141
- if (peg$r3.test(input.charAt(peg$currPos))) {
3142
- s0 = input.charAt(peg$currPos);
3143
- peg$currPos++;
3144
- } else {
3145
- s0 = peg$FAILED;
3146
- if (peg$silentFails === 0) {
3147
- peg$fail(peg$e52);
3148
- }
3149
- }
3150
- return s0;
3151
- }
3152
- function peg$parse_whitespace() {
3153
- var s0;
3154
- if (peg$r4.test(input.charAt(peg$currPos))) {
3155
- s0 = input.charAt(peg$currPos);
3026
+ s0 = input.charAt(peg$currPos);
3027
+ if (peg$r10.test(s0)) {
3156
3028
  peg$currPos++;
3157
3029
  } else {
3158
3030
  s0 = peg$FAILED;
@@ -3162,30 +3034,10 @@ const peggyParser = (
3162
3034
  }
3163
3035
  return s0;
3164
3036
  }
3165
- function peg$parseUnicodeLetter() {
3166
- var s0;
3167
- s0 = peg$parseLu();
3168
- if (s0 === peg$FAILED) {
3169
- s0 = peg$parseLl();
3170
- if (s0 === peg$FAILED) {
3171
- s0 = peg$parseLt();
3172
- if (s0 === peg$FAILED) {
3173
- s0 = peg$parseLm();
3174
- if (s0 === peg$FAILED) {
3175
- s0 = peg$parseLo();
3176
- if (s0 === peg$FAILED) {
3177
- s0 = peg$parseNl();
3178
- }
3179
- }
3180
- }
3181
- }
3182
- }
3183
- return s0;
3184
- }
3185
- function peg$parseLl() {
3037
+ function peg$parse_whitespace() {
3186
3038
  var s0;
3187
- if (peg$r5.test(input.charAt(peg$currPos))) {
3188
- s0 = input.charAt(peg$currPos);
3039
+ s0 = input.charAt(peg$currPos);
3040
+ if (peg$r11.test(s0)) {
3189
3041
  peg$currPos++;
3190
3042
  } else {
3191
3043
  s0 = peg$FAILED;
@@ -3195,84 +3047,6 @@ const peggyParser = (
3195
3047
  }
3196
3048
  return s0;
3197
3049
  }
3198
- function peg$parseLm() {
3199
- var s0;
3200
- if (peg$r6.test(input.charAt(peg$currPos))) {
3201
- s0 = input.charAt(peg$currPos);
3202
- peg$currPos++;
3203
- } else {
3204
- s0 = peg$FAILED;
3205
- if (peg$silentFails === 0) {
3206
- peg$fail(peg$e55);
3207
- }
3208
- }
3209
- return s0;
3210
- }
3211
- function peg$parseLo() {
3212
- var s0;
3213
- if (peg$r7.test(input.charAt(peg$currPos))) {
3214
- s0 = input.charAt(peg$currPos);
3215
- peg$currPos++;
3216
- } else {
3217
- s0 = peg$FAILED;
3218
- if (peg$silentFails === 0) {
3219
- peg$fail(peg$e56);
3220
- }
3221
- }
3222
- return s0;
3223
- }
3224
- function peg$parseLt() {
3225
- var s0;
3226
- if (peg$r8.test(input.charAt(peg$currPos))) {
3227
- s0 = input.charAt(peg$currPos);
3228
- peg$currPos++;
3229
- } else {
3230
- s0 = peg$FAILED;
3231
- if (peg$silentFails === 0) {
3232
- peg$fail(peg$e57);
3233
- }
3234
- }
3235
- return s0;
3236
- }
3237
- function peg$parseLu() {
3238
- var s0;
3239
- if (peg$r9.test(input.charAt(peg$currPos))) {
3240
- s0 = input.charAt(peg$currPos);
3241
- peg$currPos++;
3242
- } else {
3243
- s0 = peg$FAILED;
3244
- if (peg$silentFails === 0) {
3245
- peg$fail(peg$e58);
3246
- }
3247
- }
3248
- return s0;
3249
- }
3250
- function peg$parseNl() {
3251
- var s0;
3252
- if (peg$r10.test(input.charAt(peg$currPos))) {
3253
- s0 = input.charAt(peg$currPos);
3254
- peg$currPos++;
3255
- } else {
3256
- s0 = peg$FAILED;
3257
- if (peg$silentFails === 0) {
3258
- peg$fail(peg$e59);
3259
- }
3260
- }
3261
- return s0;
3262
- }
3263
- function peg$parseNd() {
3264
- var s0;
3265
- if (peg$r11.test(input.charAt(peg$currPos))) {
3266
- s0 = input.charAt(peg$currPos);
3267
- peg$currPos++;
3268
- } else {
3269
- s0 = peg$FAILED;
3270
- if (peg$silentFails === 0) {
3271
- peg$fail(peg$e60);
3272
- }
3273
- }
3274
- return s0;
3275
- }
3276
3050
  function dedent(value) {
3277
3051
  const str = value.trim();
3278
3052
  const matches = str.match(/\n([\t ]+|(?!\s).)/g);
@@ -3290,6 +3064,23 @@ const peggyParser = (
3290
3064
  locationFunction: location
3291
3065
  });
3292
3066
  peg$result = peg$startRuleFunction();
3067
+ if (options.peg$library) {
3068
+ return (
3069
+ /** @type {any} */
3070
+ {
3071
+ // @ts-ignore
3072
+ peg$result,
3073
+ // @ts-ignore
3074
+ peg$currPos,
3075
+ // @ts-ignore
3076
+ peg$FAILED,
3077
+ // @ts-ignore
3078
+ peg$maxFailExpected,
3079
+ // @ts-ignore
3080
+ peg$maxFailPos
3081
+ }
3082
+ );
3083
+ }
3293
3084
  if (peg$result !== peg$FAILED && peg$currPos === input.length) {
3294
3085
  return peg$result;
3295
3086
  } else {
@@ -3307,6 +3098,7 @@ const peggyParser = (
3307
3098
  }
3308
3099
  }
3309
3100
  return {
3101
+ StartRules: ["Dot", "Graph", "Subgraph", "Node", "Edge", "AttributeList", "Attribute", "ClusterStatements"],
3310
3102
  SyntaxError: peg$SyntaxError,
3311
3103
  parse: peg$parse
3312
3104
  };