@ts-graphviz/ast 2.0.1 → 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 +28 -0
  2. package/lib/ast.cjs +212 -420
  3. package/lib/ast.js +212 -420
  4. package/package.json +5 -5
package/lib/ast.cjs CHANGED
@@ -317,7 +317,7 @@ function stringify(ast, options) {
317
317
  return result;
318
318
  }
319
319
  const peggyParser = (
320
- // Generated by Peggy 3.0.2.
320
+ // @generated by Peggy 4.0.2.
321
321
  //
322
322
  // https://peggyjs.org/
323
323
  // @ts-ignore
@@ -461,53 +461,45 @@ const peggyParser = (
461
461
  var peg$c2 = "digraph";
462
462
  var peg$c3 = "{";
463
463
  var peg$c4 = "}";
464
- var peg$c5 = ";";
465
464
  var peg$c6 = "node";
466
465
  var peg$c7 = "edge";
467
466
  var peg$c8 = "=";
468
- var peg$c9 = ",";
469
- var peg$c10 = "[";
470
- var peg$c11 = "]";
471
- var peg$c12 = "->";
472
- var peg$c13 = "--";
473
- var peg$c14 = ":";
474
- var peg$c15 = "subgraph";
475
- var peg$c16 = "n";
476
- var peg$c17 = "ne";
477
- var peg$c18 = "e";
478
- var peg$c19 = "se";
479
- var peg$c20 = "s";
480
- var peg$c21 = "sw";
481
- var peg$c22 = "w";
482
- var peg$c23 = "nw";
483
- var peg$c24 = '"';
484
- var peg$c25 = "/*";
485
- var peg$c26 = "*/";
486
- var peg$c27 = "//";
487
- var peg$c28 = "#";
488
- var peg$c29 = "$";
489
- var peg$c30 = "_";
490
- var peg$c31 = "-";
491
- var peg$c32 = ".";
492
- var peg$c33 = "<";
493
- var peg$c34 = ">";
494
- var peg$c35 = "\\";
495
- var peg$c36 = "\n";
496
- var peg$c37 = "\r\n";
497
- var peg$c38 = "\r";
498
- var peg$c39 = "\u2028";
499
- var peg$c40 = "\u2029";
500
- var peg$r0 = /^[0-9]/;
501
- var peg$r1 = /^[\n\r\u2028\u2029]/;
502
- var peg$r3 = /^[\n\r]/;
503
- var peg$r4 = /^[ \t]/;
504
- 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]/;
505
- 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]/;
506
- 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]/;
507
- var peg$r8 = /^[\u01C5\u01C8\u01CB\u01F2\u1F88-\u1F8F\u1F98-\u1F9F\u1FA8-\u1FAF\u1FBC\u1FCC\u1FFC]/;
508
- 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]/;
509
- var peg$r10 = /^[\u16EE-\u16F0\u2160-\u2182\u2185-\u2188\u3007\u3021-\u3029\u3038-\u303A\uA6E6-\uA6EF]/;
510
- 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]/;
467
+ var peg$c9 = "[";
468
+ var peg$c10 = "]";
469
+ var peg$c11 = "->";
470
+ var peg$c12 = "--";
471
+ var peg$c13 = ":";
472
+ var peg$c14 = "subgraph";
473
+ var peg$c15 = "n";
474
+ var peg$c16 = "ne";
475
+ var peg$c17 = "e";
476
+ var peg$c18 = "se";
477
+ var peg$c19 = "s";
478
+ var peg$c20 = "sw";
479
+ var peg$c21 = "w";
480
+ var peg$c22 = "nw";
481
+ var peg$c23 = '"';
482
+ var peg$c24 = "/*";
483
+ var peg$c25 = "*/";
484
+ var peg$c26 = "//";
485
+ var peg$c27 = "#";
486
+ var peg$c28 = "-";
487
+ var peg$c29 = ".";
488
+ var peg$c30 = "<";
489
+ var peg$c31 = ">";
490
+ var peg$c32 = "\\";
491
+ var peg$c33 = "\n";
492
+ var peg$c34 = "\r\n";
493
+ var peg$r0 = /^[,;]/;
494
+ 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]/;
495
+ 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]/;
496
+ var peg$r3 = /^[0-9]/;
497
+ var peg$r4 = /^[<>]/;
498
+ var peg$r5 = /^[\n\r"\u2028-\u2029]/;
499
+ var peg$r7 = /^[\r\u2028-\u2029]/;
500
+ var peg$r9 = /^[\t-\n\r ]/;
501
+ var peg$r10 = /^[\n\r]/;
502
+ var peg$r11 = /^[ \t]/;
511
503
  var peg$e0 = peg$literalExpectation("strict", true);
512
504
  var peg$e1 = peg$literalExpectation("graph", true);
513
505
  var peg$e2 = peg$literalExpectation("digraph", true);
@@ -517,7 +509,7 @@ const peggyParser = (
517
509
  var peg$e6 = peg$literalExpectation("node", true);
518
510
  var peg$e7 = peg$literalExpectation("edge", true);
519
511
  var peg$e8 = peg$literalExpectation("=", false);
520
- var peg$e9 = peg$literalExpectation(",", false);
512
+ var peg$e9 = peg$classExpectation([",", ";"], false, false);
521
513
  var peg$e10 = peg$literalExpectation("[", false);
522
514
  var peg$e11 = peg$literalExpectation("]", false);
523
515
  var peg$e12 = peg$literalExpectation("->", false);
@@ -540,33 +532,26 @@ const peggyParser = (
540
532
  var peg$e29 = peg$literalExpectation("//", false);
541
533
  var peg$e30 = peg$literalExpectation("#", false);
542
534
  var peg$e31 = peg$otherExpectation("UNICODE_STRING");
543
- var peg$e32 = peg$literalExpectation("$", false);
544
- var peg$e33 = peg$literalExpectation("_", false);
535
+ var peg$e32 = peg$classExpectation(["$", ["A", "Z"], "_", ["a", "z"], "ª", "µ", "º", ["À", "Ö"], ["Ø", "ö"], ["ø", "ˁ"], ["ˆ", "ˑ"], ["ˠ", "ˤ"], "ˬ", "ˮ", ["Ͱ", "ʹ"], ["Ͷ", "ͷ"], ["ͺ", "ͽ"], "Ά", ["Έ", "Ί"], "Ό", ["Ύ", "Ρ"], ["Σ", "ϵ"], ["Ϸ", "ҁ"], ["Ҋ", "ԧ"], ["Ա", "Ֆ"], "ՙ", ["ա", "և"], ["א", "ת"], ["װ", "ײ"], ["ؠ", "ي"], ["ٮ", "ٯ"], ["ٱ", "ۓ"], "ە", ["ۥ", "ۦ"], ["ۮ", "ۯ"], ["ۺ", "ۼ"], "ۿ", "ܐ", ["ܒ", "ܯ"], ["ݍ", "ޥ"], "ޱ", ["ߊ", "ߪ"], ["ߴ", "ߵ"], "ߺ", ["ࠀ", "ࠕ"], "ࠚ", "ࠤ", "ࠨ", ["ࡀ", "ࡘ"], "ࢠ", ["ࢢ", "ࢬ"], ["ऄ", "ह"], "ऽ", "ॐ", ["क़", "ॡ"], ["ॱ", "ॷ"], ["ॹ", "ॿ"], ["অ", "ঌ"], ["এ", "ঐ"], ["ও", "ন"], ["প", "র"], "ল", ["শ", "হ"], "ঽ", "ৎ", ["ড়", "ঢ়"], ["য়", "ৡ"], ["ৰ", "ৱ"], ["ਅ", "ਊ"], ["ਏ", "ਐ"], ["ਓ", "ਨ"], ["ਪ", "ਰ"], ["ਲ", "ਲ਼"], ["ਵ", "ਸ਼"], ["ਸ", "ਹ"], ["ਖ਼", "ੜ"], "ਫ਼", ["ੲ", "ੴ"], ["અ", "ઍ"], ["એ", "ઑ"], ["ઓ", "ન"], ["પ", "ર"], ["લ", "ળ"], ["વ", "હ"], "ઽ", "ૐ", ["ૠ", "ૡ"], ["ଅ", "ଌ"], ["ଏ", "ଐ"], ["ଓ", "ନ"], ["ପ", "ର"], ["ଲ", "ଳ"], ["ଵ", "ହ"], "ଽ", ["ଡ଼", "ଢ଼"], ["ୟ", "ୡ"], "ୱ", "ஃ", ["அ", "ஊ"], ["எ", "ஐ"], ["ஒ", "க"], ["ங", "ச"], "ஜ", ["ஞ", "ட"], ["ண", "த"], ["ந", "ப"], ["ம", "ஹ"], "ௐ", ["అ", "ఌ"], ["ఎ", "ఐ"], ["ఒ", "న"], ["ప", "ళ"], ["వ", "హ"], "ఽ", ["ౘ", "ౙ"], ["ౠ", "ౡ"], ["ಅ", "ಌ"], ["ಎ", "ಐ"], ["ಒ", "ನ"], ["ಪ", "ಳ"], ["ವ", "ಹ"], "ಽ", "ೞ", ["ೠ", "ೡ"], ["ೱ", "ೲ"], ["അ", "ഌ"], ["എ", "ഐ"], ["ഒ", "ഺ"], "ഽ", "ൎ", ["ൠ", "ൡ"], ["ൺ", "ൿ"], ["අ", "ඖ"], ["ක", "න"], ["ඳ", "ර"], "ල", ["ව", "ෆ"], ["ก", "ะ"], ["า", "ำ"], ["เ", "ๆ"], ["ກ", "ຂ"], "ຄ", ["ງ", "ຈ"], "ຊ", "ຍ", ["ດ", "ທ"], ["ນ", "ຟ"], ["ມ", "ຣ"], "ລ", "ວ", ["ສ", "ຫ"], ["ອ", "ະ"], ["າ", "ຳ"], "ຽ", ["ເ", "ໄ"], "ໆ", ["ໜ", "ໟ"], "ༀ", ["ཀ", "ཇ"], ["ཉ", "ཬ"], ["ྈ", "ྌ"], ["က", "ဪ"], "ဿ", ["ၐ", "ၕ"], ["ၚ", "ၝ"], "ၡ", ["ၥ", "ၦ"], ["ၮ", "ၰ"], ["ၵ", "ႁ"], "ႎ", ["Ⴀ", "Ⴥ"], "Ⴧ", "Ⴭ", ["ა", "ჺ"], ["ჼ", "ቈ"], ["ቊ", "ቍ"], ["ቐ", "ቖ"], "ቘ", ["ቚ", "ቝ"], ["በ", "ኈ"], ["ኊ", "ኍ"], ["ነ", "ኰ"], ["ኲ", "ኵ"], ["ኸ", "ኾ"], "ዀ", ["ዂ", "ዅ"], ["ወ", "ዖ"], ["ዘ", "ጐ"], ["ጒ", "ጕ"], ["ጘ", "ፚ"], ["ᎀ", "ᎏ"], ["Ꭰ", "Ᏼ"], ["ᐁ", "ᙬ"], ["ᙯ", "ᙿ"], ["ᚁ", "ᚚ"], ["ᚠ", "ᛪ"], ["ᛮ", "ᛰ"], ["ᜀ", "ᜌ"], ["ᜎ", "ᜑ"], ["ᜠ", "ᜱ"], ["ᝀ", "ᝑ"], ["ᝠ", "ᝬ"], ["ᝮ", "ᝰ"], ["ក", "ឳ"], "ៗ", "ៜ", ["ᠠ", "ᡷ"], ["ᢀ", "ᢨ"], "ᢪ", ["ᢰ", "ᣵ"], ["ᤀ", "ᤜ"], ["ᥐ", "ᥭ"], ["ᥰ", "ᥴ"], ["ᦀ", "ᦫ"], ["ᧁ", "ᧇ"], ["ᨀ", "ᨖ"], ["ᨠ", "ᩔ"], "ᪧ", ["ᬅ", "ᬳ"], ["ᭅ", "ᭋ"], ["ᮃ", "ᮠ"], ["ᮮ", "ᮯ"], ["ᮺ", "ᯥ"], ["ᰀ", "ᰣ"], ["ᱍ", "ᱏ"], ["ᱚ", "ᱽ"], ["ᳩ", "ᳬ"], ["ᳮ", "ᳱ"], ["ᳵ", "ᳶ"], ["ᴀ", "ᶿ"], ["Ḁ", "ἕ"], ["Ἐ", "Ἕ"], ["ἠ", "ὅ"], ["Ὀ", "Ὅ"], ["ὐ", "ὗ"], "Ὑ", "Ὓ", "Ὕ", ["Ὗ", "ώ"], ["ᾀ", "ᾴ"], ["ᾶ", "ᾼ"], "ι", ["ῂ", "ῄ"], ["ῆ", "ῌ"], ["ῐ", "ΐ"], ["ῖ", "Ί"], ["ῠ", "Ῥ"], ["ῲ", "ῴ"], ["ῶ", "ῼ"], "ⁱ", "ⁿ", ["ₐ", "ₜ"], "ℂ", "ℇ", ["ℊ", "ℓ"], "ℕ", ["ℙ", "ℝ"], "ℤ", "Ω", "ℨ", ["K", "ℭ"], ["ℯ", "ℹ"], ["ℼ", "ℿ"], ["ⅅ", "ⅉ"], "ⅎ", ["Ⅰ", "ↈ"], ["Ⰰ", "Ⱞ"], ["ⰰ", "ⱞ"], ["Ⱡ", "ⳤ"], ["Ⳬ", "ⳮ"], ["Ⳳ", "ⳳ"], ["ⴀ", "ⴥ"], "ⴧ", "ⴭ", ["ⴰ", "ⵧ"], "ⵯ", ["ⶀ", "ⶖ"], ["ⶠ", "ⶦ"], ["ⶨ", "ⶮ"], ["ⶰ", "ⶶ"], ["ⶸ", "ⶾ"], ["ⷀ", "ⷆ"], ["ⷈ", "ⷎ"], ["ⷐ", "ⷖ"], ["ⷘ", "ⷞ"], "ⸯ", ["々", "〇"], ["〡", "〩"], ["〱", "〵"], ["〸", "〼"], ["ぁ", "ゖ"], ["ゝ", "ゟ"], ["ァ", "ヺ"], ["ー", "ヿ"], ["ㄅ", "ㄭ"], ["ㄱ", "ㆎ"], ["ㆠ", "ㆺ"], ["ㇰ", "ㇿ"], ["㐀", "䶵"], ["一", "鿌"], ["ꀀ", "ꒌ"], ["ꓐ", "ꓽ"], ["ꔀ", "ꘌ"], ["ꘐ", "ꘟ"], ["ꘪ", "ꘫ"], ["Ꙁ", "ꙮ"], ["ꙿ", "ꚗ"], ["ꚠ", "ꛯ"], ["ꜗ", "ꜟ"], ["Ꜣ", "ꞈ"], ["Ꞌ", "ꞎ"], ["Ꞑ", "ꞓ"], ["Ꞡ", "Ɦ"], ["ꟸ", "ꠁ"], ["ꠃ", "ꠅ"], ["ꠇ", "ꠊ"], ["ꠌ", "ꠢ"], ["ꡀ", "ꡳ"], ["ꢂ", "ꢳ"], ["ꣲ", "ꣷ"], "ꣻ", ["ꤊ", "ꤥ"], ["ꤰ", "ꥆ"], ["ꥠ", "ꥼ"], ["ꦄ", "ꦲ"], "ꧏ", ["ꨀ", "ꨨ"], ["ꩀ", "ꩂ"], ["ꩄ", "ꩋ"], ["ꩠ", "ꩶ"], "ꩺ", ["ꪀ", "ꪯ"], "ꪱ", ["ꪵ", "ꪶ"], ["ꪹ", "ꪽ"], "ꫀ", "ꫂ", ["ꫛ", "ꫝ"], ["ꫠ", "ꫪ"], ["ꫲ", "ꫴ"], ["ꬁ", "ꬆ"], ["ꬉ", "ꬎ"], ["ꬑ", "ꬖ"], ["ꬠ", "ꬦ"], ["ꬨ", "ꬮ"], ["ꯀ", "ꯢ"], ["가", "힣"], ["ힰ", "ퟆ"], ["ퟋ", "ퟻ"], ["豈", "舘"], ["並", "龎"], ["ff", "st"], ["ﬓ", "ﬗ"], "יִ", ["ײַ", "ﬨ"], ["שׁ", "זּ"], ["טּ", "לּ"], "מּ", ["נּ", "סּ"], ["ףּ", "פּ"], ["צּ", "ﮱ"], ["ﯓ", "ﴽ"], ["ﵐ", "ﶏ"], ["ﶒ", "ﷇ"], ["ﷰ", "ﷻ"], ["ﹰ", "ﹴ"], ["ﹶ", "ﻼ"], ["A", "Z"], ["a", "z"], ["ヲ", "ᄒ"], ["ᅡ", "ᅦ"], ["ᅧ", "ᅬ"], ["ᅭ", "ᅲ"], ["ᅳ", "ᅵ"]], false, false);
536
+ var peg$e33 = peg$classExpectation(["$", ["0", "9"], ["A", "Z"], "_", ["a", "z"], "ª", "µ", "º", ["À", "Ö"], ["Ø", "ö"], ["ø", "ˁ"], ["ˆ", "ˑ"], ["ˠ", "ˤ"], "ˬ", "ˮ", ["Ͱ", "ʹ"], ["Ͷ", "ͷ"], ["ͺ", "ͽ"], "Ά", ["Έ", "Ί"], "Ό", ["Ύ", "Ρ"], ["Σ", "ϵ"], ["Ϸ", "ҁ"], ["Ҋ", "ԧ"], ["Ա", "Ֆ"], "ՙ", ["ա", "և"], ["א", "ת"], ["װ", "ײ"], ["ؠ", "ي"], ["٠", "٩"], ["ٮ", "ٯ"], ["ٱ", "ۓ"], "ە", ["ۥ", "ۦ"], ["ۮ", "ۼ"], "ۿ", "ܐ", ["ܒ", "ܯ"], ["ݍ", "ޥ"], "ޱ", ["߀", "ߪ"], ["ߴ", "ߵ"], "ߺ", ["ࠀ", "ࠕ"], "ࠚ", "ࠤ", "ࠨ", ["ࡀ", "ࡘ"], "ࢠ", ["ࢢ", "ࢬ"], ["ऄ", "ह"], "ऽ", "ॐ", ["क़", "ॡ"], ["०", "९"], ["ॱ", "ॷ"], ["ॹ", "ॿ"], ["অ", "ঌ"], ["এ", "ঐ"], ["ও", "ন"], ["প", "র"], "ল", ["শ", "হ"], "ঽ", "ৎ", ["ড়", "ঢ়"], ["য়", "ৡ"], ["০", "ৱ"], ["ਅ", "ਊ"], ["ਏ", "ਐ"], ["ਓ", "ਨ"], ["ਪ", "ਰ"], ["ਲ", "ਲ਼"], ["ਵ", "ਸ਼"], ["ਸ", "ਹ"], ["ਖ਼", "ੜ"], "ਫ਼", ["੦", "੯"], ["ੲ", "ੴ"], ["અ", "ઍ"], ["એ", "ઑ"], ["ઓ", "ન"], ["પ", "ર"], ["લ", "ળ"], ["વ", "હ"], "ઽ", "ૐ", ["ૠ", "ૡ"], ["૦", "૯"], ["ଅ", "ଌ"], ["ଏ", "ଐ"], ["ଓ", "ନ"], ["ପ", "ର"], ["ଲ", "ଳ"], ["ଵ", "ହ"], "ଽ", ["ଡ଼", "ଢ଼"], ["ୟ", "ୡ"], ["୦", "୯"], "ୱ", "ஃ", ["அ", "ஊ"], ["எ", "ஐ"], ["ஒ", "க"], ["ங", "ச"], "ஜ", ["ஞ", "ட"], ["ண", "த"], ["ந", "ப"], ["ம", "ஹ"], "ௐ", ["௦", "௯"], ["అ", "ఌ"], ["ఎ", "ఐ"], ["ఒ", "న"], ["ప", "ళ"], ["వ", "హ"], "ఽ", ["ౘ", "ౙ"], ["ౠ", "ౡ"], ["౦", "౯"], ["ಅ", "ಌ"], ["ಎ", "ಐ"], ["ಒ", "ನ"], ["ಪ", "ಳ"], ["ವ", "ಹ"], "ಽ", "ೞ", ["ೠ", "ೡ"], ["೦", "೯"], ["ೱ", "ೲ"], ["അ", "ഌ"], ["എ", "ഐ"], ["ഒ", "ഺ"], "ഽ", "ൎ", ["ൠ", "ൡ"], ["൦", "൯"], ["ൺ", "ൿ"], ["අ", "ඖ"], ["ක", "න"], ["ඳ", "ර"], "ල", ["ව", "ෆ"], ["ก", "ะ"], ["า", "ำ"], ["เ", "ๆ"], ["๐", "๙"], ["ກ", "ຂ"], "ຄ", ["ງ", "ຈ"], "ຊ", "ຍ", ["ດ", "ທ"], ["ນ", "ຟ"], ["ມ", "ຣ"], "ລ", "ວ", ["ສ", "ຫ"], ["ອ", "ະ"], ["າ", "ຳ"], "ຽ", ["ເ", "ໄ"], "ໆ", ["໐", "໙"], ["ໜ", "ໟ"], "ༀ", ["༠", "༩"], ["ཀ", "ཇ"], ["ཉ", "ཬ"], ["ྈ", "ྌ"], ["က", "ဪ"], ["ဿ", "၉"], ["ၐ", "ၕ"], ["ၚ", "ၝ"], "ၡ", ["ၥ", "ၦ"], ["ၮ", "ၰ"], ["ၵ", "ႁ"], "ႎ", ["႐", "႙"], ["Ⴀ", "Ⴥ"], "Ⴧ", "Ⴭ", ["ა", "ჺ"], ["ჼ", "ቈ"], ["ቊ", "ቍ"], ["ቐ", "ቖ"], "ቘ", ["ቚ", "ቝ"], ["በ", "ኈ"], ["ኊ", "ኍ"], ["ነ", "ኰ"], ["ኲ", "ኵ"], ["ኸ", "ኾ"], "ዀ", ["ዂ", "ዅ"], ["ወ", "ዖ"], ["ዘ", "ጐ"], ["ጒ", "ጕ"], ["ጘ", "ፚ"], ["ᎀ", "ᎏ"], ["Ꭰ", "Ᏼ"], ["ᐁ", "ᙬ"], ["ᙯ", "ᙿ"], ["ᚁ", "ᚚ"], ["ᚠ", "ᛪ"], ["ᛮ", "ᛰ"], ["ᜀ", "ᜌ"], ["ᜎ", "ᜑ"], ["ᜠ", "ᜱ"], ["ᝀ", "ᝑ"], ["ᝠ", "ᝬ"], ["ᝮ", "ᝰ"], ["ក", "ឳ"], "ៗ", "ៜ", ["០", "៩"], ["᠐", "᠙"], ["ᠠ", "ᡷ"], ["ᢀ", "ᢨ"], "ᢪ", ["ᢰ", "ᣵ"], ["ᤀ", "ᤜ"], ["᥆", "ᥭ"], ["ᥰ", "ᥴ"], ["ᦀ", "ᦫ"], ["ᧁ", "ᧇ"], ["᧐", "᧙"], ["ᨀ", "ᨖ"], ["ᨠ", "ᩔ"], ["᪀", "᪉"], ["᪐", "᪙"], "ᪧ", ["ᬅ", "ᬳ"], ["ᭅ", "ᭋ"], ["᭐", "᭙"], ["ᮃ", "ᮠ"], ["ᮮ", "ᯥ"], ["ᰀ", "ᰣ"], ["᱀", "᱉"], ["ᱍ", "ᱽ"], ["ᳩ", "ᳬ"], ["ᳮ", "ᳱ"], ["ᳵ", "ᳶ"], ["ᴀ", "ᶿ"], ["Ḁ", "ἕ"], ["Ἐ", "Ἕ"], ["ἠ", "ὅ"], ["Ὀ", "Ὅ"], ["ὐ", "ὗ"], "Ὑ", "Ὓ", "Ὕ", ["Ὗ", "ώ"], ["ᾀ", "ᾴ"], ["ᾶ", "ᾼ"], "ι", ["ῂ", "ῄ"], ["ῆ", "ῌ"], ["ῐ", "ΐ"], ["ῖ", "Ί"], ["ῠ", "Ῥ"], ["ῲ", "ῴ"], ["ῶ", "ῼ"], "ⁱ", "ⁿ", ["ₐ", "ₜ"], "ℂ", "ℇ", ["ℊ", "ℓ"], "ℕ", ["ℙ", "ℝ"], "ℤ", "Ω", "ℨ", ["K", "ℭ"], ["ℯ", "ℹ"], ["ℼ", "ℿ"], ["ⅅ", "ⅉ"], "ⅎ", ["Ⅰ", "ↈ"], ["Ⰰ", "Ⱞ"], ["ⰰ", "ⱞ"], ["Ⱡ", "ⳤ"], ["Ⳬ", "ⳮ"], ["Ⳳ", "ⳳ"], ["ⴀ", "ⴥ"], "ⴧ", "ⴭ", ["ⴰ", "ⵧ"], "ⵯ", ["ⶀ", "ⶖ"], ["ⶠ", "ⶦ"], ["ⶨ", "ⶮ"], ["ⶰ", "ⶶ"], ["ⶸ", "ⶾ"], ["ⷀ", "ⷆ"], ["ⷈ", "ⷎ"], ["ⷐ", "ⷖ"], ["ⷘ", "ⷞ"], "ⸯ", ["々", "〇"], ["〡", "〩"], ["〱", "〵"], ["〸", "〼"], ["ぁ", "ゖ"], ["ゝ", "ゟ"], ["ァ", "ヺ"], ["ー", "ヿ"], ["ㄅ", "ㄭ"], ["ㄱ", "ㆎ"], ["ㆠ", "ㆺ"], ["ㇰ", "ㇿ"], ["㐀", "䶵"], ["一", "鿌"], ["ꀀ", "ꒌ"], ["ꓐ", "ꓽ"], ["ꔀ", "ꘌ"], ["ꘐ", "ꘫ"], ["Ꙁ", "ꙮ"], ["ꙿ", "ꚗ"], ["ꚠ", "ꛯ"], ["ꜗ", "ꜟ"], ["Ꜣ", "ꞈ"], ["Ꞌ", "ꞎ"], ["Ꞑ", "ꞓ"], ["Ꞡ", "Ɦ"], ["ꟸ", "ꠁ"], ["ꠃ", "ꠅ"], ["ꠇ", "ꠊ"], ["ꠌ", "ꠢ"], ["ꡀ", "ꡳ"], ["ꢂ", "ꢳ"], ["꣐", "꣙"], ["ꣲ", "ꣷ"], "ꣻ", ["꤀", "ꤥ"], ["ꤰ", "ꥆ"], ["ꥠ", "ꥼ"], ["ꦄ", "ꦲ"], ["ꧏ", "꧙"], ["ꨀ", "ꨨ"], ["ꩀ", "ꩂ"], ["ꩄ", "ꩋ"], ["꩐", "꩙"], ["ꩠ", "ꩶ"], "ꩺ", ["ꪀ", "ꪯ"], "ꪱ", ["ꪵ", "ꪶ"], ["ꪹ", "ꪽ"], "ꫀ", "ꫂ", ["ꫛ", "ꫝ"], ["ꫠ", "ꫪ"], ["ꫲ", "ꫴ"], ["ꬁ", "ꬆ"], ["ꬉ", "ꬎ"], ["ꬑ", "ꬖ"], ["ꬠ", "ꬦ"], ["ꬨ", "ꬮ"], ["ꯀ", "ꯢ"], ["꯰", "꯹"], ["가", "힣"], ["ힰ", "ퟆ"], ["ퟋ", "ퟻ"], ["豈", "舘"], ["並", "龎"], ["ff", "st"], ["ﬓ", "ﬗ"], "יִ", ["ײַ", "ﬨ"], ["שׁ", "זּ"], ["טּ", "לּ"], "מּ", ["נּ", "סּ"], ["ףּ", "פּ"], ["צּ", "ﮱ"], ["ﯓ", "ﴽ"], ["ﵐ", "ﶏ"], ["ﶒ", "ﷇ"], ["ﷰ", "ﷻ"], ["ﹰ", "ﹴ"], ["ﹶ", "ﻼ"], ["0", "9"], ["A", "Z"], ["a", "z"], ["ヲ", "ᄒ"], ["ᅡ", "ᅦ"], ["ᅧ", "ᅬ"], ["ᅭ", "ᅲ"], ["ᅳ", "ᅵ"]], false, false);
545
537
  var peg$e34 = peg$otherExpectation("NUMBER");
546
538
  var peg$e35 = peg$literalExpectation("-", false);
547
539
  var peg$e36 = peg$literalExpectation(".", false);
548
540
  var peg$e37 = peg$classExpectation([["0", "9"]], false, false);
549
541
  var peg$e38 = peg$literalExpectation("<", false);
550
542
  var peg$e39 = peg$literalExpectation(">", false);
551
- var peg$e40 = peg$literalExpectation("\\", false);
552
- var peg$e41 = peg$classExpectation(["\n", "\r", "\u2028", "\u2029"], false, false);
553
- var peg$e42 = peg$otherExpectation("end of line");
554
- var peg$e43 = peg$literalExpectation("\n", false);
555
- var peg$e44 = peg$literalExpectation("\r\n", false);
556
- var peg$e45 = peg$literalExpectation("\r", false);
557
- var peg$e46 = peg$literalExpectation("\u2028", false);
558
- var peg$e47 = peg$literalExpectation("\u2029", false);
543
+ var peg$e40 = peg$classExpectation(["<", ">"], false, false);
544
+ var peg$e41 = peg$classExpectation(["\n", "\r", '"', ["\u2028", "\u2029"]], false, false);
545
+ var peg$e42 = peg$literalExpectation("\\", false);
546
+ var peg$e44 = peg$otherExpectation("end of line");
547
+ var peg$e45 = peg$literalExpectation("\n", false);
548
+ var peg$e46 = peg$literalExpectation("\r\n", false);
549
+ var peg$e47 = peg$classExpectation(["\r", ["\u2028", "\u2029"]], false, false);
559
550
  var peg$e50 = peg$otherExpectation("whitespace");
560
551
  var peg$e51 = peg$otherExpectation("WHITESPACE");
561
- var peg$e52 = peg$classExpectation(["\n", "\r"], false, false);
562
- var peg$e53 = peg$classExpectation([" ", " "], false, false);
563
- var peg$e54 = peg$classExpectation([["a", "z"], "µ", ["ß", "ö"], ["ø", "ÿ"], "ā", "ă", "ą", "ć", "ĉ", "ċ", "č", "ď", "đ", "ē", "ĕ", "ė", "ę", "ě", "ĝ", "ğ", "ġ", "ģ", "ĥ", "ħ", "ĩ", "ī", "ĭ", "į", "ı", "ij", "ĵ", ["ķ", "ĸ"], "ĺ", "ļ", "ľ", "ŀ", "ł", "ń", "ņ", ["ň", "ʼn"], "ŋ", "ō", "ŏ", "ő", "œ", "ŕ", "ŗ", "ř", "ś", "ŝ", "ş", "š", "ţ", "ť", "ŧ", "ũ", "ū", "ŭ", "ů", "ű", "ų", "ŵ", "ŷ", "ź", "ż", ["ž", "ƀ"], "ƃ", "ƅ", "ƈ", ["ƌ", "ƍ"], "ƒ", "ƕ", ["ƙ", "ƛ"], "ƞ", "ơ", "ƣ", "ƥ", "ƨ", ["ƪ", "ƫ"], "ƭ", "ư", "ƴ", "ƶ", ["ƹ", "ƺ"], ["ƽ", "ƿ"], "dž", "lj", "nj", "ǎ", "ǐ", "ǒ", "ǔ", "ǖ", "ǘ", "ǚ", ["ǜ", "ǝ"], "ǟ", "ǡ", "ǣ", "ǥ", "ǧ", "ǩ", "ǫ", "ǭ", ["ǯ", "ǰ"], "dz", "ǵ", "ǹ", "ǻ", "ǽ", "ǿ", "ȁ", "ȃ", "ȅ", "ȇ", "ȉ", "ȋ", "ȍ", "ȏ", "ȑ", "ȓ", "ȕ", "ȗ", "ș", "ț", "ȝ", "ȟ", "ȡ", "ȣ", "ȥ", "ȧ", "ȩ", "ȫ", "ȭ", "ȯ", "ȱ", ["ȳ", "ȹ"], "ȼ", ["ȿ", "ɀ"], "ɂ", "ɇ", "ɉ", "ɋ", "ɍ", ["ɏ", "ʓ"], ["ʕ", "ʯ"], "ͱ", "ͳ", "ͷ", ["ͻ", "ͽ"], "ΐ", ["ά", "ώ"], ["ϐ", "ϑ"], ["ϕ", "ϗ"], "ϙ", "ϛ", "ϝ", "ϟ", "ϡ", "ϣ", "ϥ", "ϧ", "ϩ", "ϫ", "ϭ", ["ϯ", "ϳ"], "ϵ", "ϸ", ["ϻ", "ϼ"], ["а", "џ"], "ѡ", "ѣ", "ѥ", "ѧ", "ѩ", "ѫ", "ѭ", "ѯ", "ѱ", "ѳ", "ѵ", "ѷ", "ѹ", "ѻ", "ѽ", "ѿ", "ҁ", "ҋ", "ҍ", "ҏ", "ґ", "ғ", "ҕ", "җ", "ҙ", "қ", "ҝ", "ҟ", "ҡ", "ң", "ҥ", "ҧ", "ҩ", "ҫ", "ҭ", "ү", "ұ", "ҳ", "ҵ", "ҷ", "ҹ", "һ", "ҽ", "ҿ", "ӂ", "ӄ", "ӆ", "ӈ", "ӊ", "ӌ", ["ӎ", "ӏ"], "ӑ", "ӓ", "ӕ", "ӗ", "ә", "ӛ", "ӝ", "ӟ", "ӡ", "ӣ", "ӥ", "ӧ", "ө", "ӫ", "ӭ", "ӯ", "ӱ", "ӳ", "ӵ", "ӷ", "ӹ", "ӻ", "ӽ", "ӿ", "ԁ", "ԃ", "ԅ", "ԇ", "ԉ", "ԋ", "ԍ", "ԏ", "ԑ", "ԓ", "ԕ", "ԗ", "ԙ", "ԛ", "ԝ", "ԟ", "ԡ", "ԣ", "ԥ", "ԧ", ["ա", "և"], ["ᴀ", "ᴫ"], ["ᵫ", "ᵷ"], ["ᵹ", "ᶚ"], "ḁ", "ḃ", "ḅ", "ḇ", "ḉ", "ḋ", "ḍ", "ḏ", "ḑ", "ḓ", "ḕ", "ḗ", "ḙ", "ḛ", "ḝ", "ḟ", "ḡ", "ḣ", "ḥ", "ḧ", "ḩ", "ḫ", "ḭ", "ḯ", "ḱ", "ḳ", "ḵ", "ḷ", "ḹ", "ḻ", "ḽ", "ḿ", "ṁ", "ṃ", "ṅ", "ṇ", "ṉ", "ṋ", "ṍ", "ṏ", "ṑ", "ṓ", "ṕ", "ṗ", "ṙ", "ṛ", "ṝ", "ṟ", "ṡ", "ṣ", "ṥ", "ṧ", "ṩ", "ṫ", "ṭ", "ṯ", "ṱ", "ṳ", "ṵ", "ṷ", "ṹ", "ṻ", "ṽ", "ṿ", "ẁ", "ẃ", "ẅ", "ẇ", "ẉ", "ẋ", "ẍ", "ẏ", "ẑ", "ẓ", ["ẕ", "ẝ"], "ẟ", "ạ", "ả", "ấ", "ầ", "ẩ", "ẫ", "ậ", "ắ", "ằ", "ẳ", "ẵ", "ặ", "ẹ", "ẻ", "ẽ", "ế", "ề", "ể", "ễ", "ệ", "ỉ", "ị", "ọ", "ỏ", "ố", "ồ", "ổ", "ỗ", "ộ", "ớ", "ờ", "ở", "ỡ", "ợ", "ụ", "ủ", "ứ", "ừ", "ử", "ữ", "ự", "ỳ", "ỵ", "ỷ", "ỹ", "ỻ", "ỽ", ["ỿ", "ἇ"], ["ἐ", "ἕ"], ["ἠ", "ἧ"], ["ἰ", "ἷ"], ["ὀ", "ὅ"], ["ὐ", "ὗ"], ["ὠ", "ὧ"], ["ὰ", "ώ"], ["ᾀ", "ᾇ"], ["ᾐ", "ᾗ"], ["ᾠ", "ᾧ"], ["ᾰ", "ᾴ"], ["ᾶ", "ᾷ"], "ι", ["ῂ", "ῄ"], ["ῆ", "ῇ"], ["ῐ", "ΐ"], ["ῖ", "ῗ"], ["ῠ", "ῧ"], ["ῲ", "ῴ"], ["ῶ", "ῷ"], "ℊ", ["ℎ", "ℏ"], "ℓ", "ℯ", "ℴ", "ℹ", ["ℼ", "ℽ"], ["ⅆ", "ⅉ"], "ⅎ", "ↄ", ["ⰰ", "ⱞ"], "ⱡ", ["ⱥ", "ⱦ"], "ⱨ", "ⱪ", "ⱬ", "ⱱ", ["ⱳ", "ⱴ"], ["ⱶ", "ⱻ"], "ⲁ", "ⲃ", "ⲅ", "ⲇ", "ⲉ", "ⲋ", "ⲍ", "ⲏ", "ⲑ", "ⲓ", "ⲕ", "ⲗ", "ⲙ", "ⲛ", "ⲝ", "ⲟ", "ⲡ", "ⲣ", "ⲥ", "ⲧ", "ⲩ", "ⲫ", "ⲭ", "ⲯ", "ⲱ", "ⲳ", "ⲵ", "ⲷ", "ⲹ", "ⲻ", "ⲽ", "ⲿ", "ⳁ", "ⳃ", "ⳅ", "ⳇ", "ⳉ", "ⳋ", "ⳍ", "ⳏ", "ⳑ", "ⳓ", "ⳕ", "ⳗ", "ⳙ", "ⳛ", "ⳝ", "ⳟ", "ⳡ", ["ⳣ", "ⳤ"], "ⳬ", "ⳮ", "ⳳ", ["ⴀ", "ⴥ"], "ⴧ", "ⴭ", "ꙁ", "ꙃ", "ꙅ", "ꙇ", "ꙉ", "ꙋ", "ꙍ", "ꙏ", "ꙑ", "ꙓ", "ꙕ", "ꙗ", "ꙙ", "ꙛ", "ꙝ", "ꙟ", "ꙡ", "ꙣ", "ꙥ", "ꙧ", "ꙩ", "ꙫ", "ꙭ", "ꚁ", "ꚃ", "ꚅ", "ꚇ", "ꚉ", "ꚋ", "ꚍ", "ꚏ", "ꚑ", "ꚓ", "ꚕ", "ꚗ", "ꜣ", "ꜥ", "ꜧ", "ꜩ", "ꜫ", "ꜭ", ["ꜯ", "ꜱ"], "ꜳ", "ꜵ", "ꜷ", "ꜹ", "ꜻ", "ꜽ", "ꜿ", "ꝁ", "ꝃ", "ꝅ", "ꝇ", "ꝉ", "ꝋ", "ꝍ", "ꝏ", "ꝑ", "ꝓ", "ꝕ", "ꝗ", "ꝙ", "ꝛ", "ꝝ", "ꝟ", "ꝡ", "ꝣ", "ꝥ", "ꝧ", "ꝩ", "ꝫ", "ꝭ", "ꝯ", ["ꝱ", "ꝸ"], "ꝺ", "ꝼ", "ꝿ", "ꞁ", "ꞃ", "ꞅ", "ꞇ", "ꞌ", "ꞎ", "ꞑ", "ꞓ", "ꞡ", "ꞣ", "ꞥ", "ꞧ", "ꞩ", "ꟺ", ["ff", "st"], ["ﬓ", "ﬗ"], ["a", "z"]], false, false);
564
- var peg$e55 = peg$classExpectation([["ʰ", "ˁ"], ["ˆ", "ˑ"], ["ˠ", "ˤ"], "ˬ", "ˮ", "ʹ", "ͺ", "ՙ", "ـ", ["ۥ", "ۦ"], ["ߴ", "ߵ"], "ߺ", "ࠚ", "ࠤ", "ࠨ", "ॱ", "ๆ", "ໆ", "ჼ", "ៗ", "ᡃ", "ᪧ", ["ᱸ", "ᱽ"], ["ᴬ", "ᵪ"], "ᵸ", ["ᶛ", "ᶿ"], "ⁱ", "ⁿ", ["ₐ", "ₜ"], ["ⱼ", "ⱽ"], "ⵯ", "ⸯ", "々", ["〱", "〵"], "〻", ["ゝ", "ゞ"], ["ー", "ヾ"], "ꀕ", ["ꓸ", "ꓽ"], "ꘌ", "ꙿ", ["ꜗ", "ꜟ"], "ꝰ", "ꞈ", ["ꟸ", "ꟹ"], "ꧏ", "ꩰ", "ꫝ", ["ꫳ", "ꫴ"], "ー", ["゙", "゚"]], false, false);
565
- var peg$e56 = peg$classExpectation(["ª", "º", "ƻ", ["ǀ", "ǃ"], "ʔ", ["א", "ת"], ["װ", "ײ"], ["ؠ", "ؿ"], ["ف", "ي"], ["ٮ", "ٯ"], ["ٱ", "ۓ"], "ە", ["ۮ", "ۯ"], ["ۺ", "ۼ"], "ۿ", "ܐ", ["ܒ", "ܯ"], ["ݍ", "ޥ"], "ޱ", ["ߊ", "ߪ"], ["ࠀ", "ࠕ"], ["ࡀ", "ࡘ"], "ࢠ", ["ࢢ", "ࢬ"], ["ऄ", "ह"], "ऽ", "ॐ", ["क़", "ॡ"], ["ॲ", "ॷ"], ["ॹ", "ॿ"], ["অ", "ঌ"], ["এ", "ঐ"], ["ও", "ন"], ["প", "র"], "ল", ["শ", "হ"], "ঽ", "ৎ", ["ড়", "ঢ়"], ["য়", "ৡ"], ["ৰ", "ৱ"], ["ਅ", "ਊ"], ["ਏ", "ਐ"], ["ਓ", "ਨ"], ["ਪ", "ਰ"], ["ਲ", "ਲ਼"], ["ਵ", "ਸ਼"], ["ਸ", "ਹ"], ["ਖ਼", "ੜ"], "ਫ਼", ["ੲ", "ੴ"], ["અ", "ઍ"], ["એ", "ઑ"], ["ઓ", "ન"], ["પ", "ર"], ["લ", "ળ"], ["વ", "હ"], "ઽ", "ૐ", ["ૠ", "ૡ"], ["ଅ", "ଌ"], ["ଏ", "ଐ"], ["ଓ", "ନ"], ["ପ", "ର"], ["ଲ", "ଳ"], ["ଵ", "ହ"], "ଽ", ["ଡ଼", "ଢ଼"], ["ୟ", "ୡ"], "ୱ", "ஃ", ["அ", "ஊ"], ["எ", "ஐ"], ["ஒ", "க"], ["ங", "ச"], "ஜ", ["ஞ", "ட"], ["ண", "த"], ["ந", "ப"], ["ம", "ஹ"], "ௐ", ["అ", "ఌ"], ["ఎ", "ఐ"], ["ఒ", "న"], ["ప", "ళ"], ["వ", "హ"], "ఽ", ["ౘ", "ౙ"], ["ౠ", "ౡ"], ["ಅ", "ಌ"], ["ಎ", "ಐ"], ["ಒ", "ನ"], ["ಪ", "ಳ"], ["ವ", "ಹ"], "ಽ", "ೞ", ["ೠ", "ೡ"], ["ೱ", "ೲ"], ["അ", "ഌ"], ["എ", "ഐ"], ["ഒ", "ഺ"], "ഽ", "ൎ", ["ൠ", "ൡ"], ["ൺ", "ൿ"], ["අ", "ඖ"], ["ක", "න"], ["ඳ", "ර"], "ල", ["ව", "ෆ"], ["ก", "ะ"], ["า", "ำ"], ["เ", "ๅ"], ["ກ", "ຂ"], "ຄ", ["ງ", "ຈ"], "ຊ", "ຍ", ["ດ", "ທ"], ["ນ", "ຟ"], ["ມ", "ຣ"], "ລ", "ວ", ["ສ", "ຫ"], ["ອ", "ະ"], ["າ", "ຳ"], "ຽ", ["ເ", "ໄ"], ["ໜ", "ໟ"], "ༀ", ["ཀ", "ཇ"], ["ཉ", "ཬ"], ["ྈ", "ྌ"], ["က", "ဪ"], "ဿ", ["ၐ", "ၕ"], ["ၚ", "ၝ"], "ၡ", ["ၥ", "ၦ"], ["ၮ", "ၰ"], ["ၵ", "ႁ"], "ႎ", ["ა", "ჺ"], ["ჽ", "ቈ"], ["ቊ", "ቍ"], ["ቐ", "ቖ"], "ቘ", ["ቚ", "ቝ"], ["በ", "ኈ"], ["ኊ", "ኍ"], ["ነ", "ኰ"], ["ኲ", "ኵ"], ["ኸ", "ኾ"], "ዀ", ["ዂ", "ዅ"], ["ወ", "ዖ"], ["ዘ", "ጐ"], ["ጒ", "ጕ"], ["ጘ", "ፚ"], ["ᎀ", "ᎏ"], ["Ꭰ", "Ᏼ"], ["ᐁ", "ᙬ"], ["ᙯ", "ᙿ"], ["ᚁ", "ᚚ"], ["ᚠ", "ᛪ"], ["ᜀ", "ᜌ"], ["ᜎ", "ᜑ"], ["ᜠ", "ᜱ"], ["ᝀ", "ᝑ"], ["ᝠ", "ᝬ"], ["ᝮ", "ᝰ"], ["ក", "ឳ"], "ៜ", ["ᠠ", "ᡂ"], ["ᡄ", "ᡷ"], ["ᢀ", "ᢨ"], "ᢪ", ["ᢰ", "ᣵ"], ["ᤀ", "ᤜ"], ["ᥐ", "ᥭ"], ["ᥰ", "ᥴ"], ["ᦀ", "ᦫ"], ["ᧁ", "ᧇ"], ["ᨀ", "ᨖ"], ["ᨠ", "ᩔ"], ["ᬅ", "ᬳ"], ["ᭅ", "ᭋ"], ["ᮃ", "ᮠ"], ["ᮮ", "ᮯ"], ["ᮺ", "ᯥ"], ["ᰀ", "ᰣ"], ["ᱍ", "ᱏ"], ["ᱚ", "ᱷ"], ["ᳩ", "ᳬ"], ["ᳮ", "ᳱ"], ["ᳵ", "ᳶ"], ["ℵ", "ℸ"], ["ⴰ", "ⵧ"], ["ⶀ", "ⶖ"], ["ⶠ", "ⶦ"], ["ⶨ", "ⶮ"], ["ⶰ", "ⶶ"], ["ⶸ", "ⶾ"], ["ⷀ", "ⷆ"], ["ⷈ", "ⷎ"], ["ⷐ", "ⷖ"], ["ⷘ", "ⷞ"], "〆", "〼", ["ぁ", "ゖ"], "ゟ", ["ァ", "ヺ"], "ヿ", ["ㄅ", "ㄭ"], ["ㄱ", "ㆎ"], ["ㆠ", "ㆺ"], ["ㇰ", "ㇿ"], ["㐀", "䶵"], ["一", "鿌"], ["ꀀ", "ꀔ"], ["ꀖ", "ꒌ"], ["ꓐ", "ꓷ"], ["ꔀ", "ꘋ"], ["ꘐ", "ꘟ"], ["ꘪ", "ꘫ"], "ꙮ", ["ꚠ", "ꛥ"], ["ꟻ", "ꠁ"], ["ꠃ", "ꠅ"], ["ꠇ", "ꠊ"], ["ꠌ", "ꠢ"], ["ꡀ", "ꡳ"], ["ꢂ", "ꢳ"], ["ꣲ", "ꣷ"], "ꣻ", ["ꤊ", "ꤥ"], ["ꤰ", "ꥆ"], ["ꥠ", "ꥼ"], ["ꦄ", "ꦲ"], ["ꨀ", "ꨨ"], ["ꩀ", "ꩂ"], ["ꩄ", "ꩋ"], ["ꩠ", "ꩯ"], ["ꩱ", "ꩶ"], "ꩺ", ["ꪀ", "ꪯ"], "ꪱ", ["ꪵ", "ꪶ"], ["ꪹ", "ꪽ"], "ꫀ", "ꫂ", ["ꫛ", "ꫜ"], ["ꫠ", "ꫪ"], "ꫲ", ["ꬁ", "ꬆ"], ["ꬉ", "ꬎ"], ["ꬑ", "ꬖ"], ["ꬠ", "ꬦ"], ["ꬨ", "ꬮ"], ["ꯀ", "ꯢ"], ["가", "힣"], ["ힰ", "ퟆ"], ["ퟋ", "ퟻ"], ["豈", "舘"], ["並", "龎"], "יִ", ["ײַ", "ﬨ"], ["שׁ", "זּ"], ["טּ", "לּ"], "מּ", ["נּ", "סּ"], ["ףּ", "פּ"], ["צּ", "ﮱ"], ["ﯓ", "ﴽ"], ["ﵐ", "ﶏ"], ["ﶒ", "ﷇ"], ["ﷰ", "ﷻ"], ["ﹰ", "ﹴ"], ["ﹶ", "ﻼ"], ["ヲ", "ッ"], ["ア", "ン"], ["ᅠ", "ᄒ"], ["ᅡ", "ᅦ"], ["ᅧ", "ᅬ"], ["ᅭ", "ᅲ"], ["ᅳ", "ᅵ"]], false, false);
566
- var peg$e57 = peg$classExpectation(["Dž", "Lj", "Nj", "Dz", ["ᾈ", "ᾏ"], ["ᾘ", "ᾟ"], ["ᾨ", "ᾯ"], "ᾼ", "ῌ", "ῼ"], false, false);
567
- var peg$e58 = peg$classExpectation([["A", "Z"], ["À", "Ö"], ["Ø", "Þ"], "Ā", "Ă", "Ą", "Ć", "Ĉ", "Ċ", "Č", "Ď", "Đ", "Ē", "Ĕ", "Ė", "Ę", "Ě", "Ĝ", "Ğ", "Ġ", "Ģ", "Ĥ", "Ħ", "Ĩ", "Ī", "Ĭ", "Į", "İ", "IJ", "Ĵ", "Ķ", "Ĺ", "Ļ", "Ľ", "Ŀ", "Ł", "Ń", "Ņ", "Ň", "Ŋ", "Ō", "Ŏ", "Ő", "Œ", "Ŕ", "Ŗ", "Ř", "Ś", "Ŝ", "Ş", "Š", "Ţ", "Ť", "Ŧ", "Ũ", "Ū", "Ŭ", "Ů", "Ű", "Ų", "Ŵ", "Ŷ", ["Ÿ", "Ź"], "Ż", "Ž", ["Ɓ", "Ƃ"], "Ƅ", ["Ɔ", "Ƈ"], ["Ɖ", "Ƌ"], ["Ǝ", "Ƒ"], ["Ɠ", "Ɣ"], ["Ɩ", "Ƙ"], ["Ɯ", "Ɲ"], ["Ɵ", "Ơ"], "Ƣ", "Ƥ", ["Ʀ", "Ƨ"], "Ʃ", "Ƭ", ["Ʈ", "Ư"], ["Ʊ", "Ƴ"], "Ƶ", ["Ʒ", "Ƹ"], "Ƽ", "DŽ", "LJ", "NJ", "Ǎ", "Ǐ", "Ǒ", "Ǔ", "Ǖ", "Ǘ", "Ǚ", "Ǜ", "Ǟ", "Ǡ", "Ǣ", "Ǥ", "Ǧ", "Ǩ", "Ǫ", "Ǭ", "Ǯ", "DZ", "Ǵ", ["Ƕ", "Ǹ"], "Ǻ", "Ǽ", "Ǿ", "Ȁ", "Ȃ", "Ȅ", "Ȇ", "Ȉ", "Ȋ", "Ȍ", "Ȏ", "Ȑ", "Ȓ", "Ȕ", "Ȗ", "Ș", "Ț", "Ȝ", "Ȟ", "Ƞ", "Ȣ", "Ȥ", "Ȧ", "Ȩ", "Ȫ", "Ȭ", "Ȯ", "Ȱ", "Ȳ", ["Ⱥ", "Ȼ"], ["Ƚ", "Ⱦ"], "Ɂ", ["Ƀ", "Ɇ"], "Ɉ", "Ɋ", "Ɍ", "Ɏ", "Ͱ", "Ͳ", "Ͷ", "Ά", ["Έ", "Ί"], "Ό", ["Ύ", "Ώ"], ["Α", "Ρ"], ["Σ", "Ϋ"], "Ϗ", ["ϒ", "ϔ"], "Ϙ", "Ϛ", "Ϝ", "Ϟ", "Ϡ", "Ϣ", "Ϥ", "Ϧ", "Ϩ", "Ϫ", "Ϭ", "Ϯ", "ϴ", "Ϸ", ["Ϲ", "Ϻ"], ["Ͻ", "Я"], "Ѡ", "Ѣ", "Ѥ", "Ѧ", "Ѩ", "Ѫ", "Ѭ", "Ѯ", "Ѱ", "Ѳ", "Ѵ", "Ѷ", "Ѹ", "Ѻ", "Ѽ", "Ѿ", "Ҁ", "Ҋ", "Ҍ", "Ҏ", "Ґ", "Ғ", "Ҕ", "Җ", "Ҙ", "Қ", "Ҝ", "Ҟ", "Ҡ", "Ң", "Ҥ", "Ҧ", "Ҩ", "Ҫ", "Ҭ", "Ү", "Ұ", "Ҳ", "Ҵ", "Ҷ", "Ҹ", "Һ", "Ҽ", "Ҿ", ["Ӏ", "Ӂ"], "Ӄ", "Ӆ", "Ӈ", "Ӊ", "Ӌ", "Ӎ", "Ӑ", "Ӓ", "Ӕ", "Ӗ", "Ә", "Ӛ", "Ӝ", "Ӟ", "Ӡ", "Ӣ", "Ӥ", "Ӧ", "Ө", "Ӫ", "Ӭ", "Ӯ", "Ӱ", "Ӳ", "Ӵ", "Ӷ", "Ӹ", "Ӻ", "Ӽ", "Ӿ", "Ԁ", "Ԃ", "Ԅ", "Ԇ", "Ԉ", "Ԋ", "Ԍ", "Ԏ", "Ԑ", "Ԓ", "Ԕ", "Ԗ", "Ԙ", "Ԛ", "Ԝ", "Ԟ", "Ԡ", "Ԣ", "Ԥ", "Ԧ", ["Ա", "Ֆ"], ["Ⴀ", "Ⴥ"], "Ⴧ", "Ⴭ", "Ḁ", "Ḃ", "Ḅ", "Ḇ", "Ḉ", "Ḋ", "Ḍ", "Ḏ", "Ḑ", "Ḓ", "Ḕ", "Ḗ", "Ḙ", "Ḛ", "Ḝ", "Ḟ", "Ḡ", "Ḣ", "Ḥ", "Ḧ", "Ḩ", "Ḫ", "Ḭ", "Ḯ", "Ḱ", "Ḳ", "Ḵ", "Ḷ", "Ḹ", "Ḻ", "Ḽ", "Ḿ", "Ṁ", "Ṃ", "Ṅ", "Ṇ", "Ṉ", "Ṋ", "Ṍ", "Ṏ", "Ṑ", "Ṓ", "Ṕ", "Ṗ", "Ṙ", "Ṛ", "Ṝ", "Ṟ", "Ṡ", "Ṣ", "Ṥ", "Ṧ", "Ṩ", "Ṫ", "Ṭ", "Ṯ", "Ṱ", "Ṳ", "Ṵ", "Ṷ", "Ṹ", "Ṻ", "Ṽ", "Ṿ", "Ẁ", "Ẃ", "Ẅ", "Ẇ", "Ẉ", "Ẋ", "Ẍ", "Ẏ", "Ẑ", "Ẓ", "Ẕ", "ẞ", "Ạ", "Ả", "Ấ", "Ầ", "Ẩ", "Ẫ", "Ậ", "Ắ", "Ằ", "Ẳ", "Ẵ", "Ặ", "Ẹ", "Ẻ", "Ẽ", "Ế", "Ề", "Ể", "Ễ", "Ệ", "Ỉ", "Ị", "Ọ", "Ỏ", "Ố", "Ồ", "Ổ", "Ỗ", "Ộ", "Ớ", "Ờ", "Ở", "Ỡ", "Ợ", "Ụ", "Ủ", "Ứ", "Ừ", "Ử", "Ữ", "Ự", "Ỳ", "Ỵ", "Ỷ", "Ỹ", "Ỻ", "Ỽ", "Ỿ", ["Ἀ", "Ἇ"], ["Ἐ", "Ἕ"], ["Ἠ", "Ἧ"], ["Ἰ", "Ἷ"], ["Ὀ", "Ὅ"], "Ὑ", "Ὓ", "Ὕ", "Ὗ", ["Ὠ", "Ὧ"], ["Ᾰ", "Ά"], ["Ὲ", "Ή"], ["Ῐ", "Ί"], ["Ῠ", "Ῥ"], ["Ὸ", "Ώ"], "ℂ", "ℇ", ["ℋ", "ℍ"], ["ℐ", "ℒ"], "ℕ", ["ℙ", "ℝ"], "ℤ", "Ω", "ℨ", ["K", "ℭ"], ["ℰ", "ℳ"], ["ℾ", "ℿ"], "ⅅ", "Ↄ", ["Ⰰ", "Ⱞ"], "Ⱡ", ["Ɫ", "Ɽ"], "Ⱨ", "Ⱪ", "Ⱬ", ["Ɑ", "Ɒ"], "Ⱳ", "Ⱶ", ["Ȿ", "Ⲁ"], "Ⲃ", "Ⲅ", "Ⲇ", "Ⲉ", "Ⲋ", "Ⲍ", "Ⲏ", "Ⲑ", "Ⲓ", "Ⲕ", "Ⲗ", "Ⲙ", "Ⲛ", "Ⲝ", "Ⲟ", "Ⲡ", "Ⲣ", "Ⲥ", "Ⲧ", "Ⲩ", "Ⲫ", "Ⲭ", "Ⲯ", "Ⲱ", "Ⲳ", "Ⲵ", "Ⲷ", "Ⲹ", "Ⲻ", "Ⲽ", "Ⲿ", "Ⳁ", "Ⳃ", "Ⳅ", "Ⳇ", "Ⳉ", "Ⳋ", "Ⳍ", "Ⳏ", "Ⳑ", "Ⳓ", "Ⳕ", "Ⳗ", "Ⳙ", "Ⳛ", "Ⳝ", "Ⳟ", "Ⳡ", "Ⳣ", "Ⳬ", "Ⳮ", "Ⳳ", "Ꙁ", "Ꙃ", "Ꙅ", "Ꙇ", "Ꙉ", "Ꙋ", "Ꙍ", "Ꙏ", "Ꙑ", "Ꙓ", "Ꙕ", "Ꙗ", "Ꙙ", "Ꙛ", "Ꙝ", "Ꙟ", "Ꙡ", "Ꙣ", "Ꙥ", "Ꙧ", "Ꙩ", "Ꙫ", "Ꙭ", "Ꚁ", "Ꚃ", "Ꚅ", "Ꚇ", "Ꚉ", "Ꚋ", "Ꚍ", "Ꚏ", "Ꚑ", "Ꚓ", "Ꚕ", "Ꚗ", "Ꜣ", "Ꜥ", "Ꜧ", "Ꜩ", "Ꜫ", "Ꜭ", "Ꜯ", "Ꜳ", "Ꜵ", "Ꜷ", "Ꜹ", "Ꜻ", "Ꜽ", "Ꜿ", "Ꝁ", "Ꝃ", "Ꝅ", "Ꝇ", "Ꝉ", "Ꝋ", "Ꝍ", "Ꝏ", "Ꝑ", "Ꝓ", "Ꝕ", "Ꝗ", "Ꝙ", "Ꝛ", "Ꝝ", "Ꝟ", "Ꝡ", "Ꝣ", "Ꝥ", "Ꝧ", "Ꝩ", "Ꝫ", "Ꝭ", "Ꝯ", "Ꝺ", "Ꝼ", ["Ᵹ", "Ꝿ"], "Ꞁ", "Ꞃ", "Ꞅ", "Ꞇ", "Ꞌ", "Ɥ", "Ꞑ", "Ꞓ", "Ꞡ", "Ꞣ", "Ꞥ", "Ꞧ", "Ꞩ", "Ɦ", ["A", "Z"]], false, false);
568
- var peg$e59 = peg$classExpectation([["ᛮ", "ᛰ"], ["Ⅰ", "ↂ"], ["ↅ", "ↈ"], "〇", ["〡", "〩"], ["〸", "〺"], ["ꛦ", "ꛯ"]], false, false);
569
- var peg$e60 = peg$classExpectation([["0", "9"], ["٠", "٩"], ["۰", "۹"], ["߀", "߉"], ["०", "९"], ["০", "৯"], ["੦", "੯"], ["૦", "૯"], ["୦", "୯"], ["௦", "௯"], ["౦", "౯"], ["೦", "೯"], ["൦", "൯"], ["๐", "๙"], ["໐", "໙"], ["༠", "༩"], ["၀", "၉"], ["႐", "႙"], ["០", "៩"], ["᠐", "᠙"], ["᥆", "᥏"], ["᧐", "᧙"], ["᪀", "᪉"], ["᪐", "᪙"], ["᭐", "᭙"], ["᮰", "᮹"], ["᱀", "᱉"], ["᱐", "᱙"], ["꘠", "꘩"], ["꣐", "꣙"], ["꤀", "꤉"], ["꧐", "꧙"], ["꩐", "꩙"], ["꯰", "꯹"], ["0", "9"]], false, false);
552
+ var peg$e52 = peg$classExpectation([[" ", "\n"], "\r", " "], false, false);
553
+ var peg$e53 = peg$classExpectation(["\n", "\r"], false, false);
554
+ var peg$e54 = peg$classExpectation([" ", " "], false, false);
570
555
  var peg$f0 = function(v) {
571
556
  return v;
572
557
  };
@@ -884,14 +869,14 @@ const peggyParser = (
884
869
  var peg$f50 = function() {
885
870
  return "";
886
871
  };
887
- var peg$currPos = 0;
888
- var peg$savedPos = 0;
872
+ var peg$currPos = options.peg$currPos | 0;
873
+ var peg$savedPos = peg$currPos;
889
874
  var peg$posDetailsCache = [{ line: 1, column: 1 }];
890
- var peg$maxFailPos = 0;
891
- var peg$maxFailExpected = [];
892
- var peg$silentFails = 0;
875
+ var peg$maxFailPos = peg$currPos;
876
+ var peg$maxFailExpected = options.peg$maxFailExpected || [];
877
+ var peg$silentFails = options.peg$silentFails | 0;
893
878
  var peg$result;
894
- if ("startRule" in options) {
879
+ if (options.startRule) {
895
880
  if (!(options.startRule in peg$startRuleFunctions)) {
896
881
  throw new Error(`Can't start parsing from rule "` + options.startRule + '".');
897
882
  }
@@ -928,9 +913,12 @@ const peggyParser = (
928
913
  if (details) {
929
914
  return details;
930
915
  } else {
931
- p = pos - 1;
932
- while (!peg$posDetailsCache[p]) {
933
- p--;
916
+ if (pos >= peg$posDetailsCache.length) {
917
+ p = peg$posDetailsCache.length - 1;
918
+ } else {
919
+ p = pos;
920
+ while (!peg$posDetailsCache[--p]) {
921
+ }
934
922
  }
935
923
  details = peg$posDetailsCache[p];
936
924
  details = {
@@ -1226,8 +1214,8 @@ const peggyParser = (
1226
1214
  function peg$parse_graph() {
1227
1215
  var s0, s1, s3, s5, s7, s8, s10;
1228
1216
  s0 = peg$currPos;
1229
- if (input.substr(peg$currPos, 6).toLowerCase() === peg$c0) {
1230
- s1 = input.substr(peg$currPos, 6);
1217
+ s1 = input.substr(peg$currPos, 6);
1218
+ if (s1.toLowerCase() === peg$c0) {
1231
1219
  peg$currPos += 6;
1232
1220
  } else {
1233
1221
  s1 = peg$FAILED;
@@ -1239,8 +1227,8 @@ const peggyParser = (
1239
1227
  s1 = null;
1240
1228
  }
1241
1229
  peg$parse_();
1242
- if (input.substr(peg$currPos, 5).toLowerCase() === peg$c1) {
1243
- s3 = input.substr(peg$currPos, 5);
1230
+ s3 = input.substr(peg$currPos, 5);
1231
+ if (s3.toLowerCase() === peg$c1) {
1244
1232
  peg$currPos += 5;
1245
1233
  } else {
1246
1234
  s3 = peg$FAILED;
@@ -1249,8 +1237,8 @@ const peggyParser = (
1249
1237
  }
1250
1238
  }
1251
1239
  if (s3 === peg$FAILED) {
1252
- if (input.substr(peg$currPos, 7).toLowerCase() === peg$c2) {
1253
- s3 = input.substr(peg$currPos, 7);
1240
+ s3 = input.substr(peg$currPos, 7);
1241
+ if (s3.toLowerCase() === peg$c2) {
1254
1242
  peg$currPos += 7;
1255
1243
  } else {
1256
1244
  s3 = peg$FAILED;
@@ -1328,8 +1316,8 @@ const peggyParser = (
1328
1316
  function peg$parse_attributes() {
1329
1317
  var s0, s1, s2;
1330
1318
  s0 = peg$currPos;
1331
- if (input.substr(peg$currPos, 5).toLowerCase() === peg$c1) {
1332
- s1 = input.substr(peg$currPos, 5);
1319
+ s1 = input.substr(peg$currPos, 5);
1320
+ if (s1.toLowerCase() === peg$c1) {
1333
1321
  peg$currPos += 5;
1334
1322
  } else {
1335
1323
  s1 = peg$FAILED;
@@ -1338,8 +1326,8 @@ const peggyParser = (
1338
1326
  }
1339
1327
  }
1340
1328
  if (s1 === peg$FAILED) {
1341
- if (input.substr(peg$currPos, 4).toLowerCase() === peg$c6) {
1342
- s1 = input.substr(peg$currPos, 4);
1329
+ s1 = input.substr(peg$currPos, 4);
1330
+ if (s1.toLowerCase() === peg$c6) {
1343
1331
  peg$currPos += 4;
1344
1332
  } else {
1345
1333
  s1 = peg$FAILED;
@@ -1348,8 +1336,8 @@ const peggyParser = (
1348
1336
  }
1349
1337
  }
1350
1338
  if (s1 === peg$FAILED) {
1351
- if (input.substr(peg$currPos, 4).toLowerCase() === peg$c7) {
1352
- s1 = input.substr(peg$currPos, 4);
1339
+ s1 = input.substr(peg$currPos, 4);
1340
+ if (s1.toLowerCase() === peg$c7) {
1353
1341
  peg$currPos += 4;
1354
1342
  } else {
1355
1343
  s1 = peg$FAILED;
@@ -1480,8 +1468,8 @@ const peggyParser = (
1480
1468
  s1 = peg$parse_key_value();
1481
1469
  if (s1 !== peg$FAILED) {
1482
1470
  peg$parse_();
1483
- if (input.charCodeAt(peg$currPos) === 44) {
1484
- s3 = peg$c9;
1471
+ s3 = input.charAt(peg$currPos);
1472
+ if (peg$r0.test(s3)) {
1485
1473
  peg$currPos++;
1486
1474
  } else {
1487
1475
  s3 = peg$FAILED;
@@ -1489,17 +1477,6 @@ const peggyParser = (
1489
1477
  peg$fail(peg$e9);
1490
1478
  }
1491
1479
  }
1492
- if (s3 === peg$FAILED) {
1493
- if (input.charCodeAt(peg$currPos) === 59) {
1494
- s3 = peg$c5;
1495
- peg$currPos++;
1496
- } else {
1497
- s3 = peg$FAILED;
1498
- if (peg$silentFails === 0) {
1499
- peg$fail(peg$e5);
1500
- }
1501
- }
1502
- }
1503
1480
  if (s3 === peg$FAILED) {
1504
1481
  s3 = null;
1505
1482
  }
@@ -1516,7 +1493,7 @@ const peggyParser = (
1516
1493
  s0 = peg$currPos;
1517
1494
  peg$parse_();
1518
1495
  if (input.charCodeAt(peg$currPos) === 91) {
1519
- s2 = peg$c10;
1496
+ s2 = peg$c9;
1520
1497
  peg$currPos++;
1521
1498
  } else {
1522
1499
  s2 = peg$FAILED;
@@ -1539,7 +1516,7 @@ const peggyParser = (
1539
1516
  }
1540
1517
  s4 = peg$parse__();
1541
1518
  if (input.charCodeAt(peg$currPos) === 93) {
1542
- s5 = peg$c11;
1519
+ s5 = peg$c10;
1543
1520
  peg$currPos++;
1544
1521
  } else {
1545
1522
  s5 = peg$FAILED;
@@ -1577,8 +1554,8 @@ const peggyParser = (
1577
1554
  if (s2 !== peg$FAILED) {
1578
1555
  s3 = [];
1579
1556
  s4 = peg$currPos;
1580
- if (input.charCodeAt(peg$currPos) === 44) {
1581
- s5 = peg$c9;
1557
+ s5 = input.charAt(peg$currPos);
1558
+ if (peg$r0.test(s5)) {
1582
1559
  peg$currPos++;
1583
1560
  } else {
1584
1561
  s5 = peg$FAILED;
@@ -1586,17 +1563,6 @@ const peggyParser = (
1586
1563
  peg$fail(peg$e9);
1587
1564
  }
1588
1565
  }
1589
- if (s5 === peg$FAILED) {
1590
- if (input.charCodeAt(peg$currPos) === 59) {
1591
- s5 = peg$c5;
1592
- peg$currPos++;
1593
- } else {
1594
- s5 = peg$FAILED;
1595
- if (peg$silentFails === 0) {
1596
- peg$fail(peg$e5);
1597
- }
1598
- }
1599
- }
1600
1566
  if (s5 === peg$FAILED) {
1601
1567
  s5 = null;
1602
1568
  }
@@ -1611,8 +1577,8 @@ const peggyParser = (
1611
1577
  while (s4 !== peg$FAILED) {
1612
1578
  s3.push(s4);
1613
1579
  s4 = peg$currPos;
1614
- if (input.charCodeAt(peg$currPos) === 44) {
1615
- s5 = peg$c9;
1580
+ s5 = input.charAt(peg$currPos);
1581
+ if (peg$r0.test(s5)) {
1616
1582
  peg$currPos++;
1617
1583
  } else {
1618
1584
  s5 = peg$FAILED;
@@ -1620,17 +1586,6 @@ const peggyParser = (
1620
1586
  peg$fail(peg$e9);
1621
1587
  }
1622
1588
  }
1623
- if (s5 === peg$FAILED) {
1624
- if (input.charCodeAt(peg$currPos) === 59) {
1625
- s5 = peg$c5;
1626
- peg$currPos++;
1627
- } else {
1628
- s5 = peg$FAILED;
1629
- if (peg$silentFails === 0) {
1630
- peg$fail(peg$e5);
1631
- }
1632
- }
1633
- }
1634
1589
  if (s5 === peg$FAILED) {
1635
1590
  s5 = null;
1636
1591
  }
@@ -1643,8 +1598,8 @@ const peggyParser = (
1643
1598
  s4 = peg$FAILED;
1644
1599
  }
1645
1600
  }
1646
- if (input.charCodeAt(peg$currPos) === 44) {
1647
- s4 = peg$c9;
1601
+ s4 = input.charAt(peg$currPos);
1602
+ if (peg$r0.test(s4)) {
1648
1603
  peg$currPos++;
1649
1604
  } else {
1650
1605
  s4 = peg$FAILED;
@@ -1652,17 +1607,6 @@ const peggyParser = (
1652
1607
  peg$fail(peg$e9);
1653
1608
  }
1654
1609
  }
1655
- if (s4 === peg$FAILED) {
1656
- if (input.charCodeAt(peg$currPos) === 59) {
1657
- s4 = peg$c5;
1658
- peg$currPos++;
1659
- } else {
1660
- s4 = peg$FAILED;
1661
- if (peg$silentFails === 0) {
1662
- peg$fail(peg$e5);
1663
- }
1664
- }
1665
- }
1666
1610
  if (s4 === peg$FAILED) {
1667
1611
  s4 = null;
1668
1612
  }
@@ -1704,8 +1648,8 @@ const peggyParser = (
1704
1648
  function peg$parse_edge_operator() {
1705
1649
  var s0, s1;
1706
1650
  s0 = peg$currPos;
1707
- if (input.substr(peg$currPos, 2) === peg$c12) {
1708
- s1 = peg$c12;
1651
+ if (input.substr(peg$currPos, 2) === peg$c11) {
1652
+ s1 = peg$c11;
1709
1653
  peg$currPos += 2;
1710
1654
  } else {
1711
1655
  s1 = peg$FAILED;
@@ -1714,8 +1658,8 @@ const peggyParser = (
1714
1658
  }
1715
1659
  }
1716
1660
  if (s1 === peg$FAILED) {
1717
- if (input.substr(peg$currPos, 2) === peg$c13) {
1718
- s1 = peg$c13;
1661
+ if (input.substr(peg$currPos, 2) === peg$c12) {
1662
+ s1 = peg$c12;
1719
1663
  peg$currPos += 2;
1720
1664
  } else {
1721
1665
  s1 = peg$FAILED;
@@ -1779,7 +1723,7 @@ const peggyParser = (
1779
1723
  peg$silentFails++;
1780
1724
  s0 = peg$currPos;
1781
1725
  if (input.charCodeAt(peg$currPos) === 58) {
1782
- s1 = peg$c14;
1726
+ s1 = peg$c13;
1783
1727
  peg$currPos++;
1784
1728
  } else {
1785
1729
  s1 = peg$FAILED;
@@ -1792,7 +1736,7 @@ const peggyParser = (
1792
1736
  if (s2 !== peg$FAILED) {
1793
1737
  s3 = peg$currPos;
1794
1738
  if (input.charCodeAt(peg$currPos) === 58) {
1795
- s4 = peg$c14;
1739
+ s4 = peg$c13;
1796
1740
  peg$currPos++;
1797
1741
  } else {
1798
1742
  s4 = peg$FAILED;
@@ -1838,8 +1782,8 @@ const peggyParser = (
1838
1782
  function peg$parse_subgraph_id() {
1839
1783
  var s0, s1, s3;
1840
1784
  s0 = peg$currPos;
1841
- if (input.substr(peg$currPos, 8).toLowerCase() === peg$c15) {
1842
- s1 = input.substr(peg$currPos, 8);
1785
+ s1 = input.substr(peg$currPos, 8);
1786
+ if (s1.toLowerCase() === peg$c14) {
1843
1787
  peg$currPos += 8;
1844
1788
  } else {
1845
1789
  s1 = peg$FAILED;
@@ -1909,7 +1853,7 @@ const peggyParser = (
1909
1853
  function peg$parse_compass_keyword() {
1910
1854
  var s0;
1911
1855
  if (input.charCodeAt(peg$currPos) === 110) {
1912
- s0 = peg$c16;
1856
+ s0 = peg$c15;
1913
1857
  peg$currPos++;
1914
1858
  } else {
1915
1859
  s0 = peg$FAILED;
@@ -1918,8 +1862,8 @@ const peggyParser = (
1918
1862
  }
1919
1863
  }
1920
1864
  if (s0 === peg$FAILED) {
1921
- if (input.substr(peg$currPos, 2) === peg$c17) {
1922
- s0 = peg$c17;
1865
+ if (input.substr(peg$currPos, 2) === peg$c16) {
1866
+ s0 = peg$c16;
1923
1867
  peg$currPos += 2;
1924
1868
  } else {
1925
1869
  s0 = peg$FAILED;
@@ -1929,7 +1873,7 @@ const peggyParser = (
1929
1873
  }
1930
1874
  if (s0 === peg$FAILED) {
1931
1875
  if (input.charCodeAt(peg$currPos) === 101) {
1932
- s0 = peg$c18;
1876
+ s0 = peg$c17;
1933
1877
  peg$currPos++;
1934
1878
  } else {
1935
1879
  s0 = peg$FAILED;
@@ -1938,8 +1882,8 @@ const peggyParser = (
1938
1882
  }
1939
1883
  }
1940
1884
  if (s0 === peg$FAILED) {
1941
- if (input.substr(peg$currPos, 2) === peg$c19) {
1942
- s0 = peg$c19;
1885
+ if (input.substr(peg$currPos, 2) === peg$c18) {
1886
+ s0 = peg$c18;
1943
1887
  peg$currPos += 2;
1944
1888
  } else {
1945
1889
  s0 = peg$FAILED;
@@ -1949,7 +1893,7 @@ const peggyParser = (
1949
1893
  }
1950
1894
  if (s0 === peg$FAILED) {
1951
1895
  if (input.charCodeAt(peg$currPos) === 115) {
1952
- s0 = peg$c20;
1896
+ s0 = peg$c19;
1953
1897
  peg$currPos++;
1954
1898
  } else {
1955
1899
  s0 = peg$FAILED;
@@ -1958,8 +1902,8 @@ const peggyParser = (
1958
1902
  }
1959
1903
  }
1960
1904
  if (s0 === peg$FAILED) {
1961
- if (input.substr(peg$currPos, 2) === peg$c21) {
1962
- s0 = peg$c21;
1905
+ if (input.substr(peg$currPos, 2) === peg$c20) {
1906
+ s0 = peg$c20;
1963
1907
  peg$currPos += 2;
1964
1908
  } else {
1965
1909
  s0 = peg$FAILED;
@@ -1969,7 +1913,7 @@ const peggyParser = (
1969
1913
  }
1970
1914
  if (s0 === peg$FAILED) {
1971
1915
  if (input.charCodeAt(peg$currPos) === 119) {
1972
- s0 = peg$c22;
1916
+ s0 = peg$c21;
1973
1917
  peg$currPos++;
1974
1918
  } else {
1975
1919
  s0 = peg$FAILED;
@@ -1978,8 +1922,8 @@ const peggyParser = (
1978
1922
  }
1979
1923
  }
1980
1924
  if (s0 === peg$FAILED) {
1981
- if (input.substr(peg$currPos, 2) === peg$c23) {
1982
- s0 = peg$c23;
1925
+ if (input.substr(peg$currPos, 2) === peg$c22) {
1926
+ s0 = peg$c22;
1983
1927
  peg$currPos += 2;
1984
1928
  } else {
1985
1929
  s0 = peg$FAILED;
@@ -2009,7 +1953,7 @@ const peggyParser = (
2009
1953
  if (s1 === peg$FAILED) {
2010
1954
  s1 = peg$currPos;
2011
1955
  if (input.charCodeAt(peg$currPos) === 34) {
2012
- s2 = peg$c24;
1956
+ s2 = peg$c23;
2013
1957
  peg$currPos++;
2014
1958
  } else {
2015
1959
  s2 = peg$FAILED;
@@ -2021,7 +1965,7 @@ const peggyParser = (
2021
1965
  s3 = peg$parse_compass_keyword();
2022
1966
  if (s3 !== peg$FAILED) {
2023
1967
  if (input.charCodeAt(peg$currPos) === 34) {
2024
- s4 = peg$c24;
1968
+ s4 = peg$c23;
2025
1969
  peg$currPos++;
2026
1970
  } else {
2027
1971
  s4 = peg$FAILED;
@@ -2089,8 +2033,8 @@ const peggyParser = (
2089
2033
  function peg$parse_block_comment() {
2090
2034
  var s0, s1, s2, s3, s4, s5;
2091
2035
  s0 = peg$currPos;
2092
- if (input.substr(peg$currPos, 2) === peg$c25) {
2093
- s1 = peg$c25;
2036
+ if (input.substr(peg$currPos, 2) === peg$c24) {
2037
+ s1 = peg$c24;
2094
2038
  peg$currPos += 2;
2095
2039
  } else {
2096
2040
  s1 = peg$FAILED;
@@ -2103,8 +2047,8 @@ const peggyParser = (
2103
2047
  s3 = peg$currPos;
2104
2048
  s4 = peg$currPos;
2105
2049
  peg$silentFails++;
2106
- if (input.substr(peg$currPos, 2) === peg$c26) {
2107
- s5 = peg$c26;
2050
+ if (input.substr(peg$currPos, 2) === peg$c25) {
2051
+ s5 = peg$c25;
2108
2052
  peg$currPos += 2;
2109
2053
  } else {
2110
2054
  s5 = peg$FAILED;
@@ -2145,8 +2089,8 @@ const peggyParser = (
2145
2089
  s3 = peg$currPos;
2146
2090
  s4 = peg$currPos;
2147
2091
  peg$silentFails++;
2148
- if (input.substr(peg$currPos, 2) === peg$c26) {
2149
- s5 = peg$c26;
2092
+ if (input.substr(peg$currPos, 2) === peg$c25) {
2093
+ s5 = peg$c25;
2150
2094
  peg$currPos += 2;
2151
2095
  } else {
2152
2096
  s5 = peg$FAILED;
@@ -2183,8 +2127,8 @@ const peggyParser = (
2183
2127
  s3 = peg$FAILED;
2184
2128
  }
2185
2129
  }
2186
- if (input.substr(peg$currPos, 2) === peg$c26) {
2187
- s3 = peg$c26;
2130
+ if (input.substr(peg$currPos, 2) === peg$c25) {
2131
+ s3 = peg$c25;
2188
2132
  peg$currPos += 2;
2189
2133
  } else {
2190
2134
  s3 = peg$FAILED;
@@ -2229,8 +2173,8 @@ const peggyParser = (
2229
2173
  var s0, s2, s3, s4, s5, s6;
2230
2174
  s0 = peg$currPos;
2231
2175
  peg$parse_();
2232
- if (input.substr(peg$currPos, 2) === peg$c27) {
2233
- s2 = peg$c27;
2176
+ if (input.substr(peg$currPos, 2) === peg$c26) {
2177
+ s2 = peg$c26;
2234
2178
  peg$currPos += 2;
2235
2179
  } else {
2236
2180
  s2 = peg$FAILED;
@@ -2344,7 +2288,7 @@ const peggyParser = (
2344
2288
  s0 = peg$currPos;
2345
2289
  peg$parse_();
2346
2290
  if (input.charCodeAt(peg$currPos) === 35) {
2347
- s2 = peg$c28;
2291
+ s2 = peg$c27;
2348
2292
  peg$currPos++;
2349
2293
  } else {
2350
2294
  s2 = peg$FAILED;
@@ -2481,36 +2425,27 @@ const peggyParser = (
2481
2425
  }
2482
2426
  function peg$parseStringStart() {
2483
2427
  var s0;
2484
- s0 = peg$parseUnicodeLetter();
2485
- if (s0 === peg$FAILED) {
2486
- if (input.charCodeAt(peg$currPos) === 36) {
2487
- s0 = peg$c29;
2488
- peg$currPos++;
2489
- } else {
2490
- s0 = peg$FAILED;
2491
- if (peg$silentFails === 0) {
2492
- peg$fail(peg$e32);
2493
- }
2494
- }
2495
- if (s0 === peg$FAILED) {
2496
- if (input.charCodeAt(peg$currPos) === 95) {
2497
- s0 = peg$c30;
2498
- peg$currPos++;
2499
- } else {
2500
- s0 = peg$FAILED;
2501
- if (peg$silentFails === 0) {
2502
- peg$fail(peg$e33);
2503
- }
2504
- }
2428
+ s0 = input.charAt(peg$currPos);
2429
+ if (peg$r1.test(s0)) {
2430
+ peg$currPos++;
2431
+ } else {
2432
+ s0 = peg$FAILED;
2433
+ if (peg$silentFails === 0) {
2434
+ peg$fail(peg$e32);
2505
2435
  }
2506
2436
  }
2507
2437
  return s0;
2508
2438
  }
2509
2439
  function peg$parseStringPart() {
2510
2440
  var s0;
2511
- s0 = peg$parseStringStart();
2512
- if (s0 === peg$FAILED) {
2513
- s0 = peg$parseNd();
2441
+ s0 = input.charAt(peg$currPos);
2442
+ if (peg$r2.test(s0)) {
2443
+ peg$currPos++;
2444
+ } else {
2445
+ s0 = peg$FAILED;
2446
+ if (peg$silentFails === 0) {
2447
+ peg$fail(peg$e33);
2448
+ }
2514
2449
  }
2515
2450
  return s0;
2516
2451
  }
@@ -2520,7 +2455,7 @@ const peggyParser = (
2520
2455
  s0 = peg$currPos;
2521
2456
  s1 = peg$currPos;
2522
2457
  if (input.charCodeAt(peg$currPos) === 45) {
2523
- s2 = peg$c31;
2458
+ s2 = peg$c28;
2524
2459
  peg$currPos++;
2525
2460
  } else {
2526
2461
  s2 = peg$FAILED;
@@ -2533,7 +2468,7 @@ const peggyParser = (
2533
2468
  }
2534
2469
  s3 = peg$currPos;
2535
2470
  if (input.charCodeAt(peg$currPos) === 46) {
2536
- s4 = peg$c32;
2471
+ s4 = peg$c29;
2537
2472
  peg$currPos++;
2538
2473
  } else {
2539
2474
  s4 = peg$FAILED;
@@ -2543,8 +2478,8 @@ const peggyParser = (
2543
2478
  }
2544
2479
  if (s4 !== peg$FAILED) {
2545
2480
  s5 = [];
2546
- if (peg$r0.test(input.charAt(peg$currPos))) {
2547
- s6 = input.charAt(peg$currPos);
2481
+ s6 = input.charAt(peg$currPos);
2482
+ if (peg$r3.test(s6)) {
2548
2483
  peg$currPos++;
2549
2484
  } else {
2550
2485
  s6 = peg$FAILED;
@@ -2555,8 +2490,8 @@ const peggyParser = (
2555
2490
  if (s6 !== peg$FAILED) {
2556
2491
  while (s6 !== peg$FAILED) {
2557
2492
  s5.push(s6);
2558
- if (peg$r0.test(input.charAt(peg$currPos))) {
2559
- s6 = input.charAt(peg$currPos);
2493
+ s6 = input.charAt(peg$currPos);
2494
+ if (peg$r3.test(s6)) {
2560
2495
  peg$currPos++;
2561
2496
  } else {
2562
2497
  s6 = peg$FAILED;
@@ -2582,8 +2517,8 @@ const peggyParser = (
2582
2517
  if (s3 === peg$FAILED) {
2583
2518
  s3 = peg$currPos;
2584
2519
  s4 = [];
2585
- if (peg$r0.test(input.charAt(peg$currPos))) {
2586
- s5 = input.charAt(peg$currPos);
2520
+ s5 = input.charAt(peg$currPos);
2521
+ if (peg$r3.test(s5)) {
2587
2522
  peg$currPos++;
2588
2523
  } else {
2589
2524
  s5 = peg$FAILED;
@@ -2594,8 +2529,8 @@ const peggyParser = (
2594
2529
  if (s5 !== peg$FAILED) {
2595
2530
  while (s5 !== peg$FAILED) {
2596
2531
  s4.push(s5);
2597
- if (peg$r0.test(input.charAt(peg$currPos))) {
2598
- s5 = input.charAt(peg$currPos);
2532
+ s5 = input.charAt(peg$currPos);
2533
+ if (peg$r3.test(s5)) {
2599
2534
  peg$currPos++;
2600
2535
  } else {
2601
2536
  s5 = peg$FAILED;
@@ -2610,7 +2545,7 @@ const peggyParser = (
2610
2545
  if (s4 !== peg$FAILED) {
2611
2546
  s5 = peg$currPos;
2612
2547
  if (input.charCodeAt(peg$currPos) === 46) {
2613
- s6 = peg$c32;
2548
+ s6 = peg$c29;
2614
2549
  peg$currPos++;
2615
2550
  } else {
2616
2551
  s6 = peg$FAILED;
@@ -2620,8 +2555,8 @@ const peggyParser = (
2620
2555
  }
2621
2556
  if (s6 !== peg$FAILED) {
2622
2557
  s7 = [];
2623
- if (peg$r0.test(input.charAt(peg$currPos))) {
2624
- s8 = input.charAt(peg$currPos);
2558
+ s8 = input.charAt(peg$currPos);
2559
+ if (peg$r3.test(s8)) {
2625
2560
  peg$currPos++;
2626
2561
  } else {
2627
2562
  s8 = peg$FAILED;
@@ -2631,8 +2566,8 @@ const peggyParser = (
2631
2566
  }
2632
2567
  while (s8 !== peg$FAILED) {
2633
2568
  s7.push(s8);
2634
- if (peg$r0.test(input.charAt(peg$currPos))) {
2635
- s8 = input.charAt(peg$currPos);
2569
+ s8 = input.charAt(peg$currPos);
2570
+ if (peg$r3.test(s8)) {
2636
2571
  peg$currPos++;
2637
2572
  } else {
2638
2573
  s8 = peg$FAILED;
@@ -2693,7 +2628,7 @@ const peggyParser = (
2693
2628
  var s0, s1, s2, s3;
2694
2629
  s0 = peg$currPos;
2695
2630
  if (input.charCodeAt(peg$currPos) === 60) {
2696
- s1 = peg$c33;
2631
+ s1 = peg$c30;
2697
2632
  peg$currPos++;
2698
2633
  } else {
2699
2634
  s1 = peg$FAILED;
@@ -2715,7 +2650,7 @@ const peggyParser = (
2715
2650
  }
2716
2651
  }
2717
2652
  if (input.charCodeAt(peg$currPos) === 62) {
2718
- s3 = peg$c34;
2653
+ s3 = peg$c31;
2719
2654
  peg$currPos++;
2720
2655
  } else {
2721
2656
  s3 = peg$FAILED;
@@ -2743,24 +2678,13 @@ const peggyParser = (
2743
2678
  s2 = peg$currPos;
2744
2679
  s3 = peg$currPos;
2745
2680
  peg$silentFails++;
2746
- if (input.charCodeAt(peg$currPos) === 62) {
2747
- s4 = peg$c34;
2681
+ s4 = input.charAt(peg$currPos);
2682
+ if (peg$r4.test(s4)) {
2748
2683
  peg$currPos++;
2749
2684
  } else {
2750
2685
  s4 = peg$FAILED;
2751
2686
  if (peg$silentFails === 0) {
2752
- peg$fail(peg$e39);
2753
- }
2754
- }
2755
- if (s4 === peg$FAILED) {
2756
- if (input.charCodeAt(peg$currPos) === 60) {
2757
- s4 = peg$c33;
2758
- peg$currPos++;
2759
- } else {
2760
- s4 = peg$FAILED;
2761
- if (peg$silentFails === 0) {
2762
- peg$fail(peg$e38);
2763
- }
2687
+ peg$fail(peg$e40);
2764
2688
  }
2765
2689
  }
2766
2690
  peg$silentFails--;
@@ -2797,24 +2721,13 @@ const peggyParser = (
2797
2721
  s2 = peg$currPos;
2798
2722
  s3 = peg$currPos;
2799
2723
  peg$silentFails++;
2800
- if (input.charCodeAt(peg$currPos) === 62) {
2801
- s4 = peg$c34;
2724
+ s4 = input.charAt(peg$currPos);
2725
+ if (peg$r4.test(s4)) {
2802
2726
  peg$currPos++;
2803
2727
  } else {
2804
2728
  s4 = peg$FAILED;
2805
2729
  if (peg$silentFails === 0) {
2806
- peg$fail(peg$e39);
2807
- }
2808
- }
2809
- if (s4 === peg$FAILED) {
2810
- if (input.charCodeAt(peg$currPos) === 60) {
2811
- s4 = peg$c33;
2812
- peg$currPos++;
2813
- } else {
2814
- s4 = peg$FAILED;
2815
- if (peg$silentFails === 0) {
2816
- peg$fail(peg$e38);
2817
- }
2730
+ peg$fail(peg$e40);
2818
2731
  }
2819
2732
  }
2820
2733
  peg$silentFails--;
@@ -2860,7 +2773,7 @@ const peggyParser = (
2860
2773
  var s0, s1, s2, s3;
2861
2774
  s0 = peg$currPos;
2862
2775
  if (input.charCodeAt(peg$currPos) === 34) {
2863
- s1 = peg$c24;
2776
+ s1 = peg$c23;
2864
2777
  peg$currPos++;
2865
2778
  } else {
2866
2779
  s1 = peg$FAILED;
@@ -2876,7 +2789,7 @@ const peggyParser = (
2876
2789
  s3 = peg$parseDoubleStringCharacter();
2877
2790
  }
2878
2791
  if (input.charCodeAt(peg$currPos) === 34) {
2879
- s3 = peg$c24;
2792
+ s3 = peg$c23;
2880
2793
  peg$currPos++;
2881
2794
  } else {
2882
2795
  s3 = peg$FAILED;
@@ -2904,18 +2817,15 @@ const peggyParser = (
2904
2817
  s0 = peg$currPos;
2905
2818
  s1 = peg$currPos;
2906
2819
  peg$silentFails++;
2907
- if (input.charCodeAt(peg$currPos) === 34) {
2908
- s2 = peg$c24;
2820
+ s2 = input.charAt(peg$currPos);
2821
+ if (peg$r5.test(s2)) {
2909
2822
  peg$currPos++;
2910
2823
  } else {
2911
2824
  s2 = peg$FAILED;
2912
2825
  if (peg$silentFails === 0) {
2913
- peg$fail(peg$e25);
2826
+ peg$fail(peg$e41);
2914
2827
  }
2915
2828
  }
2916
- if (s2 === peg$FAILED) {
2917
- s2 = peg$parseLineTerminator();
2918
- }
2919
2829
  peg$silentFails--;
2920
2830
  if (s2 === peg$FAILED) {
2921
2831
  s1 = void 0;
@@ -2947,12 +2857,12 @@ const peggyParser = (
2947
2857
  s0 = peg$currPos;
2948
2858
  s1 = peg$currPos;
2949
2859
  if (input.charCodeAt(peg$currPos) === 92) {
2950
- s2 = peg$c35;
2860
+ s2 = peg$c32;
2951
2861
  peg$currPos++;
2952
2862
  } else {
2953
2863
  s2 = peg$FAILED;
2954
2864
  if (peg$silentFails === 0) {
2955
- peg$fail(peg$e40);
2865
+ peg$fail(peg$e42);
2956
2866
  }
2957
2867
  }
2958
2868
  if (s2 !== peg$FAILED) {
@@ -2987,12 +2897,12 @@ const peggyParser = (
2987
2897
  var s0, s1, s2;
2988
2898
  s0 = peg$currPos;
2989
2899
  if (input.charCodeAt(peg$currPos) === 92) {
2990
- s1 = peg$c35;
2900
+ s1 = peg$c32;
2991
2901
  peg$currPos++;
2992
2902
  } else {
2993
2903
  s1 = peg$FAILED;
2994
2904
  if (peg$silentFails === 0) {
2995
- peg$fail(peg$e40);
2905
+ peg$fail(peg$e42);
2996
2906
  }
2997
2907
  }
2998
2908
  if (s1 !== peg$FAILED) {
@@ -3010,71 +2920,36 @@ const peggyParser = (
3010
2920
  }
3011
2921
  return s0;
3012
2922
  }
3013
- function peg$parseLineTerminator() {
3014
- var s0;
3015
- if (peg$r1.test(input.charAt(peg$currPos))) {
3016
- s0 = input.charAt(peg$currPos);
3017
- peg$currPos++;
3018
- } else {
3019
- s0 = peg$FAILED;
3020
- if (peg$silentFails === 0) {
3021
- peg$fail(peg$e41);
3022
- }
3023
- }
3024
- return s0;
3025
- }
3026
2923
  function peg$parseLineTerminatorSequence() {
3027
2924
  var s0;
3028
2925
  peg$silentFails++;
3029
2926
  if (input.charCodeAt(peg$currPos) === 10) {
3030
- s0 = peg$c36;
2927
+ s0 = peg$c33;
3031
2928
  peg$currPos++;
3032
2929
  } else {
3033
2930
  s0 = peg$FAILED;
3034
2931
  if (peg$silentFails === 0) {
3035
- peg$fail(peg$e43);
2932
+ peg$fail(peg$e45);
3036
2933
  }
3037
2934
  }
3038
2935
  if (s0 === peg$FAILED) {
3039
- if (input.substr(peg$currPos, 2) === peg$c37) {
3040
- s0 = peg$c37;
2936
+ if (input.substr(peg$currPos, 2) === peg$c34) {
2937
+ s0 = peg$c34;
3041
2938
  peg$currPos += 2;
3042
2939
  } else {
3043
2940
  s0 = peg$FAILED;
3044
2941
  if (peg$silentFails === 0) {
3045
- peg$fail(peg$e44);
2942
+ peg$fail(peg$e46);
3046
2943
  }
3047
2944
  }
3048
2945
  if (s0 === peg$FAILED) {
3049
- if (input.charCodeAt(peg$currPos) === 13) {
3050
- s0 = peg$c38;
2946
+ s0 = input.charAt(peg$currPos);
2947
+ if (peg$r7.test(s0)) {
3051
2948
  peg$currPos++;
3052
2949
  } else {
3053
2950
  s0 = peg$FAILED;
3054
2951
  if (peg$silentFails === 0) {
3055
- peg$fail(peg$e45);
3056
- }
3057
- }
3058
- if (s0 === peg$FAILED) {
3059
- if (input.charCodeAt(peg$currPos) === 8232) {
3060
- s0 = peg$c39;
3061
- peg$currPos++;
3062
- } else {
3063
- s0 = peg$FAILED;
3064
- if (peg$silentFails === 0) {
3065
- peg$fail(peg$e46);
3066
- }
3067
- }
3068
- if (s0 === peg$FAILED) {
3069
- if (input.charCodeAt(peg$currPos) === 8233) {
3070
- s0 = peg$c40;
3071
- peg$currPos++;
3072
- } else {
3073
- s0 = peg$FAILED;
3074
- if (peg$silentFails === 0) {
3075
- peg$fail(peg$e47);
3076
- }
3077
- }
2952
+ peg$fail(peg$e47);
3078
2953
  }
3079
2954
  }
3080
2955
  }
@@ -3082,7 +2957,7 @@ const peggyParser = (
3082
2957
  peg$silentFails--;
3083
2958
  if (s0 === peg$FAILED) {
3084
2959
  if (peg$silentFails === 0) {
3085
- peg$fail(peg$e42);
2960
+ peg$fail(peg$e44);
3086
2961
  }
3087
2962
  }
3088
2963
  return s0;
@@ -3120,15 +2995,25 @@ const peggyParser = (
3120
2995
  var s0, s1;
3121
2996
  peg$silentFails++;
3122
2997
  s0 = [];
3123
- s1 = peg$parse_whitespace();
3124
- if (s1 === peg$FAILED) {
3125
- s1 = peg$parse_newline();
2998
+ s1 = input.charAt(peg$currPos);
2999
+ if (peg$r9.test(s1)) {
3000
+ peg$currPos++;
3001
+ } else {
3002
+ s1 = peg$FAILED;
3003
+ if (peg$silentFails === 0) {
3004
+ peg$fail(peg$e52);
3005
+ }
3126
3006
  }
3127
3007
  while (s1 !== peg$FAILED) {
3128
3008
  s0.push(s1);
3129
- s1 = peg$parse_whitespace();
3130
- if (s1 === peg$FAILED) {
3131
- s1 = peg$parse_newline();
3009
+ s1 = input.charAt(peg$currPos);
3010
+ if (peg$r9.test(s1)) {
3011
+ peg$currPos++;
3012
+ } else {
3013
+ s1 = peg$FAILED;
3014
+ if (peg$silentFails === 0) {
3015
+ peg$fail(peg$e52);
3016
+ }
3132
3017
  }
3133
3018
  }
3134
3019
  peg$silentFails--;
@@ -3140,21 +3025,8 @@ const peggyParser = (
3140
3025
  }
3141
3026
  function peg$parse_newline() {
3142
3027
  var s0;
3143
- if (peg$r3.test(input.charAt(peg$currPos))) {
3144
- s0 = input.charAt(peg$currPos);
3145
- peg$currPos++;
3146
- } else {
3147
- s0 = peg$FAILED;
3148
- if (peg$silentFails === 0) {
3149
- peg$fail(peg$e52);
3150
- }
3151
- }
3152
- return s0;
3153
- }
3154
- function peg$parse_whitespace() {
3155
- var s0;
3156
- if (peg$r4.test(input.charAt(peg$currPos))) {
3157
- s0 = input.charAt(peg$currPos);
3028
+ s0 = input.charAt(peg$currPos);
3029
+ if (peg$r10.test(s0)) {
3158
3030
  peg$currPos++;
3159
3031
  } else {
3160
3032
  s0 = peg$FAILED;
@@ -3164,30 +3036,10 @@ const peggyParser = (
3164
3036
  }
3165
3037
  return s0;
3166
3038
  }
3167
- function peg$parseUnicodeLetter() {
3168
- var s0;
3169
- s0 = peg$parseLu();
3170
- if (s0 === peg$FAILED) {
3171
- s0 = peg$parseLl();
3172
- if (s0 === peg$FAILED) {
3173
- s0 = peg$parseLt();
3174
- if (s0 === peg$FAILED) {
3175
- s0 = peg$parseLm();
3176
- if (s0 === peg$FAILED) {
3177
- s0 = peg$parseLo();
3178
- if (s0 === peg$FAILED) {
3179
- s0 = peg$parseNl();
3180
- }
3181
- }
3182
- }
3183
- }
3184
- }
3185
- return s0;
3186
- }
3187
- function peg$parseLl() {
3039
+ function peg$parse_whitespace() {
3188
3040
  var s0;
3189
- if (peg$r5.test(input.charAt(peg$currPos))) {
3190
- s0 = input.charAt(peg$currPos);
3041
+ s0 = input.charAt(peg$currPos);
3042
+ if (peg$r11.test(s0)) {
3191
3043
  peg$currPos++;
3192
3044
  } else {
3193
3045
  s0 = peg$FAILED;
@@ -3197,84 +3049,6 @@ const peggyParser = (
3197
3049
  }
3198
3050
  return s0;
3199
3051
  }
3200
- function peg$parseLm() {
3201
- var s0;
3202
- if (peg$r6.test(input.charAt(peg$currPos))) {
3203
- s0 = input.charAt(peg$currPos);
3204
- peg$currPos++;
3205
- } else {
3206
- s0 = peg$FAILED;
3207
- if (peg$silentFails === 0) {
3208
- peg$fail(peg$e55);
3209
- }
3210
- }
3211
- return s0;
3212
- }
3213
- function peg$parseLo() {
3214
- var s0;
3215
- if (peg$r7.test(input.charAt(peg$currPos))) {
3216
- s0 = input.charAt(peg$currPos);
3217
- peg$currPos++;
3218
- } else {
3219
- s0 = peg$FAILED;
3220
- if (peg$silentFails === 0) {
3221
- peg$fail(peg$e56);
3222
- }
3223
- }
3224
- return s0;
3225
- }
3226
- function peg$parseLt() {
3227
- var s0;
3228
- if (peg$r8.test(input.charAt(peg$currPos))) {
3229
- s0 = input.charAt(peg$currPos);
3230
- peg$currPos++;
3231
- } else {
3232
- s0 = peg$FAILED;
3233
- if (peg$silentFails === 0) {
3234
- peg$fail(peg$e57);
3235
- }
3236
- }
3237
- return s0;
3238
- }
3239
- function peg$parseLu() {
3240
- var s0;
3241
- if (peg$r9.test(input.charAt(peg$currPos))) {
3242
- s0 = input.charAt(peg$currPos);
3243
- peg$currPos++;
3244
- } else {
3245
- s0 = peg$FAILED;
3246
- if (peg$silentFails === 0) {
3247
- peg$fail(peg$e58);
3248
- }
3249
- }
3250
- return s0;
3251
- }
3252
- function peg$parseNl() {
3253
- var s0;
3254
- if (peg$r10.test(input.charAt(peg$currPos))) {
3255
- s0 = input.charAt(peg$currPos);
3256
- peg$currPos++;
3257
- } else {
3258
- s0 = peg$FAILED;
3259
- if (peg$silentFails === 0) {
3260
- peg$fail(peg$e59);
3261
- }
3262
- }
3263
- return s0;
3264
- }
3265
- function peg$parseNd() {
3266
- var s0;
3267
- if (peg$r11.test(input.charAt(peg$currPos))) {
3268
- s0 = input.charAt(peg$currPos);
3269
- peg$currPos++;
3270
- } else {
3271
- s0 = peg$FAILED;
3272
- if (peg$silentFails === 0) {
3273
- peg$fail(peg$e60);
3274
- }
3275
- }
3276
- return s0;
3277
- }
3278
3052
  function dedent(value) {
3279
3053
  const str = value.trim();
3280
3054
  const matches = str.match(/\n([\t ]+|(?!\s).)/g);
@@ -3292,6 +3066,23 @@ const peggyParser = (
3292
3066
  locationFunction: location
3293
3067
  });
3294
3068
  peg$result = peg$startRuleFunction();
3069
+ if (options.peg$library) {
3070
+ return (
3071
+ /** @type {any} */
3072
+ {
3073
+ // @ts-ignore
3074
+ peg$result,
3075
+ // @ts-ignore
3076
+ peg$currPos,
3077
+ // @ts-ignore
3078
+ peg$FAILED,
3079
+ // @ts-ignore
3080
+ peg$maxFailExpected,
3081
+ // @ts-ignore
3082
+ peg$maxFailPos
3083
+ }
3084
+ );
3085
+ }
3295
3086
  if (peg$result !== peg$FAILED && peg$currPos === input.length) {
3296
3087
  return peg$result;
3297
3088
  } else {
@@ -3309,6 +3100,7 @@ const peggyParser = (
3309
3100
  }
3310
3101
  }
3311
3102
  return {
3103
+ StartRules: ["Dot", "Graph", "Subgraph", "Node", "Edge", "AttributeList", "Attribute", "ClusterStatements"],
3312
3104
  SyntaxError: peg$SyntaxError,
3313
3105
  parse: peg$parse
3314
3106
  };