diff --git a/package.json b/package.json index 07d9206..e75bcb9 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "description": "Tact language (for .tact file) extension to use together with Tact compiler for Visual Studio Code to develop smart contract for TON blockchain", "publisher": "KonVik", "icon": "icons/logo.png", - "version": "1.0.20", + "version": "1.3.0", "keywords": [ "tact", "blockchain", @@ -48,7 +48,7 @@ "build": "vsce package" }, "dependencies": { - "@tact-lang/compiler": "^1.2.0", + "@tact-lang/compiler": "^1.3.0", "ajv": "^6.10.2", "ajv-keywords": "^3.4.1", "ast-parents": "0.0.1", diff --git a/snippets/tact.json b/snippets/tact.json index 3aa7e07..f711bb9 100644 --- a/snippets/tact.json +++ b/snippets/tact.json @@ -89,6 +89,14 @@ "require expression": { "prefix": "req", "body": "require(${1:Bool}, ${2:String});" + }, + "try expression": { + "prefix": "try", + "body": "try {\n\n}" + }, + "try catch expression": { + "prefix": "try-catch", + "body": "try {\n\n} catch (e) {\n\n}" } } } diff --git a/src/completionService.ts b/src/completionService.ts index f773ccd..5cddeb7 100644 --- a/src/completionService.ts +++ b/src/completionService.ts @@ -281,7 +281,7 @@ export class CompletionService { selectedFunction.findVariableDeclarationsInScope(offset); //adding input parameters allVariables = allVariables.concat(selectedFunction.input); - //ading all variables + //adding all variables allVariables = allVariables.concat(selectedFunction.variablesInScope); } @@ -333,9 +333,8 @@ export class CompletionService { items = getStringBuilderCompletionItems(); break; case "Address": - // no methods now + items = getAddressCompletionItems(); break; - } if (items.length > 0) { @@ -447,6 +446,13 @@ export class CompletionService { completionItems.push(items[i]); } } + + if (type?.name == 'Address') { + const items = getAddressCompletionItems(); + for (let i in items) { + completionItems.push(items[i]); + } + } } private findDotType(allStructs: Struct[], allMessages: Message[], type: DeclarationType | undefined, autocompleteByDot: AutocompleteByDot, completionItems: any[], allContracts: Contract2[], currentContract: Contract2) { @@ -664,7 +670,37 @@ export function GetGlobalVariables(): CompletionItem[] { detail: 'Int 16', kind: CompletionItemKind.Variable, label: 'SendBounceIfActionFail', - } + }, + { + detail: 'Int 0', + kind: CompletionItemKind.Variable, + label: 'ReserveExact', + }, + { + detail: 'Int 1', + kind: CompletionItemKind.Variable, + label: 'ReserveAllExcept', + }, + { + detail: 'Int 2', + kind: CompletionItemKind.Variable, + label: 'ReserveAtMost', + }, + { + detail: 'Int 4', + kind: CompletionItemKind.Variable, + label: 'ReserveAddOriginalBalance', + }, + { + detail: 'Int 8', + kind: CompletionItemKind.Variable, + label: 'ReserveInvertSign', + }, + { + detail: 'Int 16', + kind: CompletionItemKind.Variable, + label: 'ReserveBounceIfActionFail', + }, ]; } @@ -1087,6 +1123,27 @@ function getMathCompletionItems(): CompletionItem[] { insertTextFormat: 2, label: 'nativeRandomInterval', }, + { + detail: 'Power function with base 2', + kind: CompletionItemKind.Property, + insertText: 'pow2(${1:Int})', + insertTextFormat: 2, + label: 'pow2', + }, + { + detail: 'Logarithm function with base 2', + kind: CompletionItemKind.Property, + insertText: 'log2(${1:Int})', + insertTextFormat: 2, + label: 'log2', + }, + { + detail: 'Logarithm function with base', + kind: CompletionItemKind.Property, + insertText: 'log(${1:Int},${2:Int})', + insertTextFormat: 2, + label: 'log', + }, ] } @@ -1131,6 +1188,20 @@ function getMapCompletionItems(): CompletionItem[] { insertTextFormat: 2, label: 'set', }, + { + detail: 'As cell', + kind: CompletionItemKind.Property, + insertText: "asCell()", + insertTextFormat: 2, + label: 'asCell', + }, + { + detail: 'Is empty', + kind: CompletionItemKind.Property, + insertText: "isEmpty()", + insertTextFormat: 2, + label: 'isEmpty', + }, ] } @@ -1171,6 +1242,25 @@ function getStringBuilderCompletionItems(): CompletionItem[] { insertTextFormat: 2, label: 'toSlice', }, + { + detail: 'Concatenation of strings', + kind: CompletionItemKind.Property, + insertText: "concat()", + insertTextFormat: 2, + label: 'concat', + }, + ]; +} + +function getAddressCompletionItems(): CompletionItem[] { + return [ + { + detail: 'Address to string.', + kind: CompletionItemKind.Property, + insertText: "toString()", + insertTextFormat: 2, + label: 'toString', + }, ]; } diff --git a/src/parser/build/parser.js b/src/parser/build/parser.js index 759020f..e1290c9 100644 --- a/src/parser/build/parser.js +++ b/src/parser/build/parser.js @@ -244,32 +244,44 @@ function peg$parse(input, options) { peg$c75 = function(sequence) { return sequence; }, peg$c76 = function() { return ""; }, peg$c77 = function() { return "\0"; }, - peg$c78 = "b", - peg$c79 = peg$literalExpectation("b", false), - peg$c80 = function() { return "\b"; }, - peg$c81 = "f", - peg$c82 = peg$literalExpectation("f", false), - peg$c83 = function() { return "\f"; }, - peg$c84 = "n", - peg$c85 = peg$literalExpectation("n", false), - peg$c86 = function() { return "\n"; }, - peg$c87 = "r", - peg$c88 = peg$literalExpectation("r", false), - peg$c89 = function() { return "\r"; }, - peg$c90 = "t", - peg$c91 = peg$literalExpectation("t", false), - peg$c92 = function() { return "\t"; }, - peg$c93 = "v", - peg$c94 = peg$literalExpectation("v", false), - peg$c95 = function() { return "\x0B"; }, - peg$c96 = "x", - peg$c97 = peg$literalExpectation("x", false), - peg$c98 = "u", - peg$c99 = peg$literalExpectation("u", false), - peg$c100 = function(digits) { - return String.fromCharCode(parseInt(digits, 16)); + peg$c78 = function() { return "\\\""; }, + peg$c79 = function() { return "\\\\"; }, + peg$c80 = "b", + peg$c81 = peg$literalExpectation("b", false), + peg$c82 = function() { return "\\b"; }, + peg$c83 = "f", + peg$c84 = peg$literalExpectation("f", false), + peg$c85 = function() { return "\\f"; }, + peg$c86 = "n", + peg$c87 = peg$literalExpectation("n", false), + peg$c88 = function() { return "\\n"; }, + peg$c89 = "r", + peg$c90 = peg$literalExpectation("r", false), + peg$c91 = function() { return "\\r"; }, + peg$c92 = "t", + peg$c93 = peg$literalExpectation("t", false), + peg$c94 = function() { return "\\t"; }, + peg$c95 = "v", + peg$c96 = peg$literalExpectation("v", false), + peg$c97 = function() { return "\\v"; }, + peg$c98 = "x", + peg$c99 = peg$literalExpectation("x", false), + peg$c100 = "u", + peg$c101 = peg$literalExpectation("u", false), + peg$c102 = function(digits) { + return "\\" + "x" + digits; }, - peg$c101 = function(operator, major, minor, patch) { + peg$c103 = function(digits) { + return "\\" + "u" + digits; + }, + peg$c104 = "u{", + peg$c105 = peg$literalExpectation("u{", false), + peg$c106 = "}", + peg$c107 = peg$literalExpectation("}", false), + peg$c108 = function(digits) { + return "\\" + "u{" + digits + "}"; + }, + peg$c109 = function(operator, major, minor, patch) { if (patch === null) { patch = 0; } else { @@ -290,154 +302,156 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c102 = /^[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\u0529\u052B\u052D\u052F\u0561-\u0587\u13F8-\u13FD\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\uA699\uA69B\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-\uA795\uA797\uA799\uA79B\uA79D\uA79F\uA7A1\uA7A3\uA7A5\uA7A7\uA7A9\uA7B5\uA7B7\uA7FA\uAB30-\uAB5A\uAB60-\uAB65\uAB70-\uABBF\uFB00-\uFB06\uFB13-\uFB17\uFF41-\uFF5A]/, - peg$c103 = peg$classExpectation([["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", "\u0529", "\u052B", "\u052D", "\u052F", ["\u0561", "\u0587"], ["\u13F8", "\u13FD"], ["\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", "\uA699", "\uA69B", "\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", "\uA795"], "\uA797", "\uA799", "\uA79B", "\uA79D", "\uA79F", "\uA7A1", "\uA7A3", "\uA7A5", "\uA7A7", "\uA7A9", "\uA7B5", "\uA7B7", "\uA7FA", ["\uAB30", "\uAB5A"], ["\uAB60", "\uAB65"], ["\uAB70", "\uABBF"], ["\uFB00", "\uFB06"], ["\uFB13", "\uFB17"], ["\uFF41", "\uFF5A"]], false, false), - peg$c104 = /^[\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\uA69C-\uA69D\uA717-\uA71F\uA770\uA788\uA7F8-\uA7F9\uA9CF\uA9E6\uAA70\uAADD\uAAF3-\uAAF4\uAB5C-\uAB5F\uFF70\uFF9E-\uFF9F]/, - peg$c105 = peg$classExpectation([["\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", ["\uA69C", "\uA69D"], ["\uA717", "\uA71F"], "\uA770", "\uA788", ["\uA7F8", "\uA7F9"], "\uA9CF", "\uA9E6", "\uAA70", "\uAADD", ["\uAAF3", "\uAAF4"], ["\uAB5C", "\uAB5F"], "\uFF70", ["\uFF9E", "\uFF9F"]], false, false), - peg$c106 = /^[\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-\u08B4\u0904-\u0939\u093D\u0950\u0958-\u0961\u0972-\u0980\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\u0AF9\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-\u0C39\u0C3D\u0C58-\u0C5A\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\u0D5F-\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\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\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-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\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-\u9FD5\uA000-\uA014\uA016-\uA48C\uA4D0-\uA4F7\uA500-\uA60B\uA610-\uA61F\uA62A-\uA62B\uA66E\uA6A0-\uA6E5\uA78F\uA7F7\uA7FB-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9E0-\uA9E4\uA9E7-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA6F\uAA71-\uAA76\uAA7A\uAA7E-\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]/, - peg$c107 = peg$classExpectation(["\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", "\u08B4"], ["\u0904", "\u0939"], "\u093D", "\u0950", ["\u0958", "\u0961"], ["\u0972", "\u0980"], ["\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"], "\u0AF9", ["\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", "\u0C39"], "\u0C3D", ["\u0C58", "\u0C5A"], ["\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", ["\u0D5F", "\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"], ["\u1401", "\u166C"], ["\u166F", "\u167F"], ["\u1681", "\u169A"], ["\u16A0", "\u16EA"], ["\u16F1", "\u16F8"], ["\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", "\u191E"], ["\u1950", "\u196D"], ["\u1970", "\u1974"], ["\u1980", "\u19AB"], ["\u19B0", "\u19C9"], ["\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", "\u9FD5"], ["\uA000", "\uA014"], ["\uA016", "\uA48C"], ["\uA4D0", "\uA4F7"], ["\uA500", "\uA60B"], ["\uA610", "\uA61F"], ["\uA62A", "\uA62B"], "\uA66E", ["\uA6A0", "\uA6E5"], "\uA78F", "\uA7F7", ["\uA7FB", "\uA801"], ["\uA803", "\uA805"], ["\uA807", "\uA80A"], ["\uA80C", "\uA822"], ["\uA840", "\uA873"], ["\uA882", "\uA8B3"], ["\uA8F2", "\uA8F7"], "\uA8FB", "\uA8FD", ["\uA90A", "\uA925"], ["\uA930", "\uA946"], ["\uA960", "\uA97C"], ["\uA984", "\uA9B2"], ["\uA9E0", "\uA9E4"], ["\uA9E7", "\uA9EF"], ["\uA9FA", "\uA9FE"], ["\uAA00", "\uAA28"], ["\uAA40", "\uAA42"], ["\uAA44", "\uAA4B"], ["\uAA60", "\uAA6F"], ["\uAA71", "\uAA76"], "\uAA7A", ["\uAA7E", "\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"]], false, false), - peg$c108 = /^[\u01C5\u01C8\u01CB\u01F2\u1F88-\u1F8F\u1F98-\u1F9F\u1FA8-\u1FAF\u1FBC\u1FCC\u1FFC]/, - peg$c109 = peg$classExpectation(["\u01C5", "\u01C8", "\u01CB", "\u01F2", ["\u1F88", "\u1F8F"], ["\u1F98", "\u1F9F"], ["\u1FA8", "\u1FAF"], "\u1FBC", "\u1FCC", "\u1FFC"], false, false), - peg$c110 = /^[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\u037F\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\u0528\u052A\u052C\u052E\u0531-\u0556\u10A0-\u10C5\u10C7\u10CD\u13A0-\u13F5\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\uA698\uA69A\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\uA796\uA798\uA79A\uA79C\uA79E\uA7A0\uA7A2\uA7A4\uA7A6\uA7A8\uA7AA-\uA7AD\uA7B0-\uA7B4\uA7B6\uFF21-\uFF3A]/, - peg$c111 = peg$classExpectation([["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", "\u037F", "\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", "\u0528", "\u052A", "\u052C", "\u052E", ["\u0531", "\u0556"], ["\u10A0", "\u10C5"], "\u10C7", "\u10CD", ["\u13A0", "\u13F5"], "\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", "\uA698", "\uA69A", "\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", "\uA796", "\uA798", "\uA79A", "\uA79C", "\uA79E", "\uA7A0", "\uA7A2", "\uA7A4", "\uA7A6", "\uA7A8", ["\uA7AA", "\uA7AD"], ["\uA7B0", "\uA7B4"], "\uA7B6", ["\uFF21", "\uFF3A"]], false, false), - peg$c112 = /^[\u0903\u093B\u093E-\u0940\u0949-\u094C\u094E-\u094F\u0982-\u0983\u09BE-\u09C0\u09C7-\u09C8\u09CB-\u09CC\u09D7\u0A03\u0A3E-\u0A40\u0A83\u0ABE-\u0AC0\u0AC9\u0ACB-\u0ACC\u0B02-\u0B03\u0B3E\u0B40\u0B47-\u0B48\u0B4B-\u0B4C\u0B57\u0BBE-\u0BBF\u0BC1-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCC\u0BD7\u0C01-\u0C03\u0C41-\u0C44\u0C82-\u0C83\u0CBE\u0CC0-\u0CC4\u0CC7-\u0CC8\u0CCA-\u0CCB\u0CD5-\u0CD6\u0D02-\u0D03\u0D3E-\u0D40\u0D46-\u0D48\u0D4A-\u0D4C\u0D57\u0D82-\u0D83\u0DCF-\u0DD1\u0DD8-\u0DDF\u0DF2-\u0DF3\u0F3E-\u0F3F\u0F7F\u102B-\u102C\u1031\u1038\u103B-\u103C\u1056-\u1057\u1062-\u1064\u1067-\u106D\u1083-\u1084\u1087-\u108C\u108F\u109A-\u109C\u17B6\u17BE-\u17C5\u17C7-\u17C8\u1923-\u1926\u1929-\u192B\u1930-\u1931\u1933-\u1938\u1A19-\u1A1A\u1A55\u1A57\u1A61\u1A63-\u1A64\u1A6D-\u1A72\u1B04\u1B35\u1B3B\u1B3D-\u1B41\u1B43-\u1B44\u1B82\u1BA1\u1BA6-\u1BA7\u1BAA\u1BE7\u1BEA-\u1BEC\u1BEE\u1BF2-\u1BF3\u1C24-\u1C2B\u1C34-\u1C35\u1CE1\u1CF2-\u1CF3\u302E-\u302F\uA823-\uA824\uA827\uA880-\uA881\uA8B4-\uA8C3\uA952-\uA953\uA983\uA9B4-\uA9B5\uA9BA-\uA9BB\uA9BD-\uA9C0\uAA2F-\uAA30\uAA33-\uAA34\uAA4D\uAA7B\uAA7D\uAAEB\uAAEE-\uAAEF\uAAF5\uABE3-\uABE4\uABE6-\uABE7\uABE9-\uABEA\uABEC]/, - peg$c113 = peg$classExpectation(["\u0903", "\u093B", ["\u093E", "\u0940"], ["\u0949", "\u094C"], ["\u094E", "\u094F"], ["\u0982", "\u0983"], ["\u09BE", "\u09C0"], ["\u09C7", "\u09C8"], ["\u09CB", "\u09CC"], "\u09D7", "\u0A03", ["\u0A3E", "\u0A40"], "\u0A83", ["\u0ABE", "\u0AC0"], "\u0AC9", ["\u0ACB", "\u0ACC"], ["\u0B02", "\u0B03"], "\u0B3E", "\u0B40", ["\u0B47", "\u0B48"], ["\u0B4B", "\u0B4C"], "\u0B57", ["\u0BBE", "\u0BBF"], ["\u0BC1", "\u0BC2"], ["\u0BC6", "\u0BC8"], ["\u0BCA", "\u0BCC"], "\u0BD7", ["\u0C01", "\u0C03"], ["\u0C41", "\u0C44"], ["\u0C82", "\u0C83"], "\u0CBE", ["\u0CC0", "\u0CC4"], ["\u0CC7", "\u0CC8"], ["\u0CCA", "\u0CCB"], ["\u0CD5", "\u0CD6"], ["\u0D02", "\u0D03"], ["\u0D3E", "\u0D40"], ["\u0D46", "\u0D48"], ["\u0D4A", "\u0D4C"], "\u0D57", ["\u0D82", "\u0D83"], ["\u0DCF", "\u0DD1"], ["\u0DD8", "\u0DDF"], ["\u0DF2", "\u0DF3"], ["\u0F3E", "\u0F3F"], "\u0F7F", ["\u102B", "\u102C"], "\u1031", "\u1038", ["\u103B", "\u103C"], ["\u1056", "\u1057"], ["\u1062", "\u1064"], ["\u1067", "\u106D"], ["\u1083", "\u1084"], ["\u1087", "\u108C"], "\u108F", ["\u109A", "\u109C"], "\u17B6", ["\u17BE", "\u17C5"], ["\u17C7", "\u17C8"], ["\u1923", "\u1926"], ["\u1929", "\u192B"], ["\u1930", "\u1931"], ["\u1933", "\u1938"], ["\u1A19", "\u1A1A"], "\u1A55", "\u1A57", "\u1A61", ["\u1A63", "\u1A64"], ["\u1A6D", "\u1A72"], "\u1B04", "\u1B35", "\u1B3B", ["\u1B3D", "\u1B41"], ["\u1B43", "\u1B44"], "\u1B82", "\u1BA1", ["\u1BA6", "\u1BA7"], "\u1BAA", "\u1BE7", ["\u1BEA", "\u1BEC"], "\u1BEE", ["\u1BF2", "\u1BF3"], ["\u1C24", "\u1C2B"], ["\u1C34", "\u1C35"], "\u1CE1", ["\u1CF2", "\u1CF3"], ["\u302E", "\u302F"], ["\uA823", "\uA824"], "\uA827", ["\uA880", "\uA881"], ["\uA8B4", "\uA8C3"], ["\uA952", "\uA953"], "\uA983", ["\uA9B4", "\uA9B5"], ["\uA9BA", "\uA9BB"], ["\uA9BD", "\uA9C0"], ["\uAA2F", "\uAA30"], ["\uAA33", "\uAA34"], "\uAA4D", "\uAA7B", "\uAA7D", "\uAAEB", ["\uAAEE", "\uAAEF"], "\uAAF5", ["\uABE3", "\uABE4"], ["\uABE6", "\uABE7"], ["\uABE9", "\uABEA"], "\uABEC"], false, false), - peg$c114 = /^[\u0300-\u036F\u0483-\u0487\u0591-\u05BD\u05BF\u05C1-\u05C2\u05C4-\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7-\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08E3-\u0902\u093A\u093C\u0941-\u0948\u094D\u0951-\u0957\u0962-\u0963\u0981\u09BC\u09C1-\u09C4\u09CD\u09E2-\u09E3\u0A01-\u0A02\u0A3C\u0A41-\u0A42\u0A47-\u0A48\u0A4B-\u0A4D\u0A51\u0A70-\u0A71\u0A75\u0A81-\u0A82\u0ABC\u0AC1-\u0AC5\u0AC7-\u0AC8\u0ACD\u0AE2-\u0AE3\u0B01\u0B3C\u0B3F\u0B41-\u0B44\u0B4D\u0B56\u0B62-\u0B63\u0B82\u0BC0\u0BCD\u0C00\u0C3E-\u0C40\u0C46-\u0C48\u0C4A-\u0C4D\u0C55-\u0C56\u0C62-\u0C63\u0C81\u0CBC\u0CBF\u0CC6\u0CCC-\u0CCD\u0CE2-\u0CE3\u0D01\u0D41-\u0D44\u0D4D\u0D62-\u0D63\u0DCA\u0DD2-\u0DD4\u0DD6\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB-\u0EBC\u0EC8-\u0ECD\u0F18-\u0F19\u0F35\u0F37\u0F39\u0F71-\u0F7E\u0F80-\u0F84\u0F86-\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102D-\u1030\u1032-\u1037\u1039-\u103A\u103D-\u103E\u1058-\u1059\u105E-\u1060\u1071-\u1074\u1082\u1085-\u1086\u108D\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752-\u1753\u1772-\u1773\u17B4-\u17B5\u17B7-\u17BD\u17C6\u17C9-\u17D3\u17DD\u180B-\u180D\u18A9\u1920-\u1922\u1927-\u1928\u1932\u1939-\u193B\u1A17-\u1A18\u1A1B\u1A56\u1A58-\u1A5E\u1A60\u1A62\u1A65-\u1A6C\u1A73-\u1A7C\u1A7F\u1AB0-\u1ABD\u1B00-\u1B03\u1B34\u1B36-\u1B3A\u1B3C\u1B42\u1B6B-\u1B73\u1B80-\u1B81\u1BA2-\u1BA5\u1BA8-\u1BA9\u1BAB-\u1BAD\u1BE6\u1BE8-\u1BE9\u1BED\u1BEF-\u1BF1\u1C2C-\u1C33\u1C36-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE0\u1CE2-\u1CE8\u1CED\u1CF4\u1CF8-\u1CF9\u1DC0-\u1DF5\u1DFC-\u1DFF\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302D\u3099-\u309A\uA66F\uA674-\uA67D\uA69E-\uA69F\uA6F0-\uA6F1\uA802\uA806\uA80B\uA825-\uA826\uA8C4\uA8E0-\uA8F1\uA926-\uA92D\uA947-\uA951\uA980-\uA982\uA9B3\uA9B6-\uA9B9\uA9BC\uA9E5\uAA29-\uAA2E\uAA31-\uAA32\uAA35-\uAA36\uAA43\uAA4C\uAA7C\uAAB0\uAAB2-\uAAB4\uAAB7-\uAAB8\uAABE-\uAABF\uAAC1\uAAEC-\uAAED\uAAF6\uABE5\uABE8\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F]/, - peg$c115 = peg$classExpectation([["\u0300", "\u036F"], ["\u0483", "\u0487"], ["\u0591", "\u05BD"], "\u05BF", ["\u05C1", "\u05C2"], ["\u05C4", "\u05C5"], "\u05C7", ["\u0610", "\u061A"], ["\u064B", "\u065F"], "\u0670", ["\u06D6", "\u06DC"], ["\u06DF", "\u06E4"], ["\u06E7", "\u06E8"], ["\u06EA", "\u06ED"], "\u0711", ["\u0730", "\u074A"], ["\u07A6", "\u07B0"], ["\u07EB", "\u07F3"], ["\u0816", "\u0819"], ["\u081B", "\u0823"], ["\u0825", "\u0827"], ["\u0829", "\u082D"], ["\u0859", "\u085B"], ["\u08E3", "\u0902"], "\u093A", "\u093C", ["\u0941", "\u0948"], "\u094D", ["\u0951", "\u0957"], ["\u0962", "\u0963"], "\u0981", "\u09BC", ["\u09C1", "\u09C4"], "\u09CD", ["\u09E2", "\u09E3"], ["\u0A01", "\u0A02"], "\u0A3C", ["\u0A41", "\u0A42"], ["\u0A47", "\u0A48"], ["\u0A4B", "\u0A4D"], "\u0A51", ["\u0A70", "\u0A71"], "\u0A75", ["\u0A81", "\u0A82"], "\u0ABC", ["\u0AC1", "\u0AC5"], ["\u0AC7", "\u0AC8"], "\u0ACD", ["\u0AE2", "\u0AE3"], "\u0B01", "\u0B3C", "\u0B3F", ["\u0B41", "\u0B44"], "\u0B4D", "\u0B56", ["\u0B62", "\u0B63"], "\u0B82", "\u0BC0", "\u0BCD", "\u0C00", ["\u0C3E", "\u0C40"], ["\u0C46", "\u0C48"], ["\u0C4A", "\u0C4D"], ["\u0C55", "\u0C56"], ["\u0C62", "\u0C63"], "\u0C81", "\u0CBC", "\u0CBF", "\u0CC6", ["\u0CCC", "\u0CCD"], ["\u0CE2", "\u0CE3"], "\u0D01", ["\u0D41", "\u0D44"], "\u0D4D", ["\u0D62", "\u0D63"], "\u0DCA", ["\u0DD2", "\u0DD4"], "\u0DD6", "\u0E31", ["\u0E34", "\u0E3A"], ["\u0E47", "\u0E4E"], "\u0EB1", ["\u0EB4", "\u0EB9"], ["\u0EBB", "\u0EBC"], ["\u0EC8", "\u0ECD"], ["\u0F18", "\u0F19"], "\u0F35", "\u0F37", "\u0F39", ["\u0F71", "\u0F7E"], ["\u0F80", "\u0F84"], ["\u0F86", "\u0F87"], ["\u0F8D", "\u0F97"], ["\u0F99", "\u0FBC"], "\u0FC6", ["\u102D", "\u1030"], ["\u1032", "\u1037"], ["\u1039", "\u103A"], ["\u103D", "\u103E"], ["\u1058", "\u1059"], ["\u105E", "\u1060"], ["\u1071", "\u1074"], "\u1082", ["\u1085", "\u1086"], "\u108D", "\u109D", ["\u135D", "\u135F"], ["\u1712", "\u1714"], ["\u1732", "\u1734"], ["\u1752", "\u1753"], ["\u1772", "\u1773"], ["\u17B4", "\u17B5"], ["\u17B7", "\u17BD"], "\u17C6", ["\u17C9", "\u17D3"], "\u17DD", ["\u180B", "\u180D"], "\u18A9", ["\u1920", "\u1922"], ["\u1927", "\u1928"], "\u1932", ["\u1939", "\u193B"], ["\u1A17", "\u1A18"], "\u1A1B", "\u1A56", ["\u1A58", "\u1A5E"], "\u1A60", "\u1A62", ["\u1A65", "\u1A6C"], ["\u1A73", "\u1A7C"], "\u1A7F", ["\u1AB0", "\u1ABD"], ["\u1B00", "\u1B03"], "\u1B34", ["\u1B36", "\u1B3A"], "\u1B3C", "\u1B42", ["\u1B6B", "\u1B73"], ["\u1B80", "\u1B81"], ["\u1BA2", "\u1BA5"], ["\u1BA8", "\u1BA9"], ["\u1BAB", "\u1BAD"], "\u1BE6", ["\u1BE8", "\u1BE9"], "\u1BED", ["\u1BEF", "\u1BF1"], ["\u1C2C", "\u1C33"], ["\u1C36", "\u1C37"], ["\u1CD0", "\u1CD2"], ["\u1CD4", "\u1CE0"], ["\u1CE2", "\u1CE8"], "\u1CED", "\u1CF4", ["\u1CF8", "\u1CF9"], ["\u1DC0", "\u1DF5"], ["\u1DFC", "\u1DFF"], ["\u20D0", "\u20DC"], "\u20E1", ["\u20E5", "\u20F0"], ["\u2CEF", "\u2CF1"], "\u2D7F", ["\u2DE0", "\u2DFF"], ["\u302A", "\u302D"], ["\u3099", "\u309A"], "\uA66F", ["\uA674", "\uA67D"], ["\uA69E", "\uA69F"], ["\uA6F0", "\uA6F1"], "\uA802", "\uA806", "\uA80B", ["\uA825", "\uA826"], "\uA8C4", ["\uA8E0", "\uA8F1"], ["\uA926", "\uA92D"], ["\uA947", "\uA951"], ["\uA980", "\uA982"], "\uA9B3", ["\uA9B6", "\uA9B9"], "\uA9BC", "\uA9E5", ["\uAA29", "\uAA2E"], ["\uAA31", "\uAA32"], ["\uAA35", "\uAA36"], "\uAA43", "\uAA4C", "\uAA7C", "\uAAB0", ["\uAAB2", "\uAAB4"], ["\uAAB7", "\uAAB8"], ["\uAABE", "\uAABF"], "\uAAC1", ["\uAAEC", "\uAAED"], "\uAAF6", "\uABE5", "\uABE8", "\uABED", "\uFB1E", ["\uFE00", "\uFE0F"], ["\uFE20", "\uFE2F"]], false, false), - peg$c116 = /^[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\u0DE6-\u0DEF\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\uA9F0-\uA9F9\uAA50-\uAA59\uABF0-\uABF9\uFF10-\uFF19]/, - peg$c117 = peg$classExpectation([["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"], ["\u0DE6", "\u0DEF"], ["\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"], ["\uA9F0", "\uA9F9"], ["\uAA50", "\uAA59"], ["\uABF0", "\uABF9"], ["\uFF10", "\uFF19"]], false, false), - peg$c118 = /^[\u16EE-\u16F0\u2160-\u2182\u2185-\u2188\u3007\u3021-\u3029\u3038-\u303A\uA6E6-\uA6EF]/, - peg$c119 = peg$classExpectation([["\u16EE", "\u16F0"], ["\u2160", "\u2182"], ["\u2185", "\u2188"], "\u3007", ["\u3021", "\u3029"], ["\u3038", "\u303A"], ["\uA6E6", "\uA6EF"]], false, false), - peg$c120 = /^[_\u203F-\u2040\u2054\uFE33-\uFE34\uFE4D-\uFE4F\uFF3F]/, - peg$c121 = peg$classExpectation(["_", ["\u203F", "\u2040"], "\u2054", ["\uFE33", "\uFE34"], ["\uFE4D", "\uFE4F"], "\uFF3F"], false, false), - peg$c122 = /^[ \xA0\u1680\u2000-\u200A\u202F\u205F\u3000]/, - peg$c123 = peg$classExpectation([" ", "\xA0", "\u1680", ["\u2000", "\u200A"], "\u202F", "\u205F", "\u3000"], false, false), - peg$c124 = "let", - peg$c125 = peg$literalExpectation("let", false), - peg$c126 = "as", - peg$c127 = peg$literalExpectation("as", false), - peg$c128 = "break", - peg$c129 = peg$literalExpectation("break", false), - peg$c130 = "const", - peg$c131 = peg$literalExpectation("const", false), - peg$c132 = "continue", - peg$c133 = peg$literalExpectation("continue", false), - peg$c134 = "initOf", - peg$c135 = peg$literalExpectation("initOf", false), - peg$c136 = "contract", - peg$c137 = peg$literalExpectation("contract", false), - peg$c138 = "init", - peg$c139 = peg$literalExpectation("init", false), - peg$c140 = "receive", - peg$c141 = peg$literalExpectation("receive", false), - peg$c142 = "external", - peg$c143 = peg$literalExpectation("external", false), - peg$c144 = "bounced", - peg$c145 = peg$literalExpectation("bounced", false), - peg$c146 = "delete", - peg$c147 = peg$literalExpectation("delete", false), - peg$c148 = "do", - peg$c149 = peg$literalExpectation("do", false), - peg$c150 = "else", - peg$c151 = peg$literalExpectation("else", false), - peg$c152 = "false", - peg$c153 = peg$literalExpectation("false", false), - peg$c154 = "repeat", - peg$c155 = peg$literalExpectation("repeat", false), - peg$c156 = "from", - peg$c157 = peg$literalExpectation("from", false), - peg$c158 = "fun", - peg$c159 = peg$literalExpectation("fun", false), - peg$c160 = "native", - peg$c161 = peg$literalExpectation("native", false), - peg$c162 = "if", - peg$c163 = peg$literalExpectation("if", false), - peg$c164 = "try", - peg$c165 = peg$literalExpectation("try", false), - peg$c166 = "catch", - peg$c167 = peg$literalExpectation("catch", false), - peg$c168 = "with", - peg$c169 = peg$literalExpectation("with", false), - peg$c170 = "import", - peg$c171 = peg$literalExpectation("import", false), - peg$c172 = "interface", - peg$c173 = peg$literalExpectation("interface", false), - peg$c174 = "message", - peg$c175 = peg$literalExpectation("message", false), - peg$c176 = "map", - peg$c177 = peg$literalExpectation("map", false), - peg$c178 = "new", - peg$c179 = peg$literalExpectation("new", false), - peg$c180 = "null", - peg$c181 = peg$literalExpectation("null", false), - peg$c182 = "return", - peg$c183 = peg$literalExpectation("return", false), - peg$c184 = "struct", - peg$c185 = peg$literalExpectation("struct", false), - peg$c186 = "super", - peg$c187 = peg$literalExpectation("super", false), - peg$c188 = "self", - peg$c189 = peg$literalExpectation("self", false), - peg$c190 = "throw", - peg$c191 = peg$literalExpectation("throw", false), - peg$c192 = "true", - peg$c193 = peg$literalExpectation("true", false), - peg$c194 = "ton", - peg$c195 = peg$literalExpectation("ton", false), - peg$c196 = "while", - peg$c197 = peg$literalExpectation("while", false), - peg$c198 = "until", - peg$c199 = peg$literalExpectation("until", false), - peg$c200 = "Context", - peg$c201 = peg$literalExpectation("Context", false), - peg$c202 = "Int", - peg$c203 = peg$literalExpectation("Int", false), - peg$c204 = "Bool", - peg$c205 = peg$literalExpectation("Bool", false), - peg$c206 = "Builder", - peg$c207 = peg$literalExpectation("Builder", false), - peg$c208 = "Slice", - peg$c209 = peg$literalExpectation("Slice", false), - peg$c210 = "Cell", - peg$c211 = peg$literalExpectation("Cell", false), - peg$c212 = "Address", - peg$c213 = peg$literalExpectation("Address", false), - peg$c214 = "String", - peg$c215 = peg$literalExpectation("String", false), - peg$c216 = "StringBuilder", - peg$c217 = peg$literalExpectation("StringBuilder", false), - peg$c218 = "StateInit", - peg$c219 = peg$literalExpectation("StateInit", false), - peg$c220 = "primitive", - peg$c221 = peg$literalExpectation("primitive", false), - peg$c222 = "trait", - peg$c223 = peg$literalExpectation("trait", false), - peg$c224 = "get", - peg$c225 = peg$literalExpectation("get", false), - peg$c226 = "override", - peg$c227 = peg$literalExpectation("override", false), - peg$c228 = "inline", - peg$c229 = peg$literalExpectation("inline", false), - peg$c230 = "virtual", - peg$c231 = peg$literalExpectation("virtual", false), - peg$c232 = "abstract", - peg$c233 = peg$literalExpectation("abstract", false), - peg$c234 = "extends", - peg$c235 = peg$literalExpectation("extends", false), - peg$c236 = "mutates", - peg$c237 = peg$literalExpectation("mutates", false), - peg$c238 = "public", - peg$c239 = peg$literalExpectation("public", false), - peg$c240 = ";", - peg$c241 = peg$literalExpectation(";", false), - peg$c242 = ",", - peg$c243 = peg$literalExpectation(",", false), - peg$c244 = function() { return { type: "ThisExpression", start: location().start.offset, end: location().end.offset }; }, - peg$c245 = "(", - peg$c246 = peg$literalExpectation("(", false), - peg$c247 = ")", - peg$c248 = peg$literalExpectation(")", false), - peg$c249 = function(expression) { + peg$c110 = /^[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\u0529\u052B\u052D\u052F\u0561-\u0587\u13F8-\u13FD\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\uA699\uA69B\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-\uA795\uA797\uA799\uA79B\uA79D\uA79F\uA7A1\uA7A3\uA7A5\uA7A7\uA7A9\uA7B5\uA7B7\uA7FA\uAB30-\uAB5A\uAB60-\uAB65\uAB70-\uABBF\uFB00-\uFB06\uFB13-\uFB17\uFF41-\uFF5A]/, + peg$c111 = peg$classExpectation([["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", "\u0529", "\u052B", "\u052D", "\u052F", ["\u0561", "\u0587"], ["\u13F8", "\u13FD"], ["\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", "\uA699", "\uA69B", "\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", "\uA795"], "\uA797", "\uA799", "\uA79B", "\uA79D", "\uA79F", "\uA7A1", "\uA7A3", "\uA7A5", "\uA7A7", "\uA7A9", "\uA7B5", "\uA7B7", "\uA7FA", ["\uAB30", "\uAB5A"], ["\uAB60", "\uAB65"], ["\uAB70", "\uABBF"], ["\uFB00", "\uFB06"], ["\uFB13", "\uFB17"], ["\uFF41", "\uFF5A"]], false, false), + peg$c112 = /^[\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\uA69C-\uA69D\uA717-\uA71F\uA770\uA788\uA7F8-\uA7F9\uA9CF\uA9E6\uAA70\uAADD\uAAF3-\uAAF4\uAB5C-\uAB5F\uFF70\uFF9E-\uFF9F]/, + peg$c113 = peg$classExpectation([["\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", ["\uA69C", "\uA69D"], ["\uA717", "\uA71F"], "\uA770", "\uA788", ["\uA7F8", "\uA7F9"], "\uA9CF", "\uA9E6", "\uAA70", "\uAADD", ["\uAAF3", "\uAAF4"], ["\uAB5C", "\uAB5F"], "\uFF70", ["\uFF9E", "\uFF9F"]], false, false), + peg$c114 = /^[\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-\u08B4\u0904-\u0939\u093D\u0950\u0958-\u0961\u0972-\u0980\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\u0AF9\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-\u0C39\u0C3D\u0C58-\u0C5A\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\u0D5F-\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\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\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-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\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-\u9FD5\uA000-\uA014\uA016-\uA48C\uA4D0-\uA4F7\uA500-\uA60B\uA610-\uA61F\uA62A-\uA62B\uA66E\uA6A0-\uA6E5\uA78F\uA7F7\uA7FB-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9E0-\uA9E4\uA9E7-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA6F\uAA71-\uAA76\uAA7A\uAA7E-\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]/, + peg$c115 = peg$classExpectation(["\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", "\u08B4"], ["\u0904", "\u0939"], "\u093D", "\u0950", ["\u0958", "\u0961"], ["\u0972", "\u0980"], ["\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"], "\u0AF9", ["\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", "\u0C39"], "\u0C3D", ["\u0C58", "\u0C5A"], ["\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", ["\u0D5F", "\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"], ["\u1401", "\u166C"], ["\u166F", "\u167F"], ["\u1681", "\u169A"], ["\u16A0", "\u16EA"], ["\u16F1", "\u16F8"], ["\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", "\u191E"], ["\u1950", "\u196D"], ["\u1970", "\u1974"], ["\u1980", "\u19AB"], ["\u19B0", "\u19C9"], ["\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", "\u9FD5"], ["\uA000", "\uA014"], ["\uA016", "\uA48C"], ["\uA4D0", "\uA4F7"], ["\uA500", "\uA60B"], ["\uA610", "\uA61F"], ["\uA62A", "\uA62B"], "\uA66E", ["\uA6A0", "\uA6E5"], "\uA78F", "\uA7F7", ["\uA7FB", "\uA801"], ["\uA803", "\uA805"], ["\uA807", "\uA80A"], ["\uA80C", "\uA822"], ["\uA840", "\uA873"], ["\uA882", "\uA8B3"], ["\uA8F2", "\uA8F7"], "\uA8FB", "\uA8FD", ["\uA90A", "\uA925"], ["\uA930", "\uA946"], ["\uA960", "\uA97C"], ["\uA984", "\uA9B2"], ["\uA9E0", "\uA9E4"], ["\uA9E7", "\uA9EF"], ["\uA9FA", "\uA9FE"], ["\uAA00", "\uAA28"], ["\uAA40", "\uAA42"], ["\uAA44", "\uAA4B"], ["\uAA60", "\uAA6F"], ["\uAA71", "\uAA76"], "\uAA7A", ["\uAA7E", "\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"]], false, false), + peg$c116 = /^[\u01C5\u01C8\u01CB\u01F2\u1F88-\u1F8F\u1F98-\u1F9F\u1FA8-\u1FAF\u1FBC\u1FCC\u1FFC]/, + peg$c117 = peg$classExpectation(["\u01C5", "\u01C8", "\u01CB", "\u01F2", ["\u1F88", "\u1F8F"], ["\u1F98", "\u1F9F"], ["\u1FA8", "\u1FAF"], "\u1FBC", "\u1FCC", "\u1FFC"], false, false), + peg$c118 = /^[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\u037F\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\u0528\u052A\u052C\u052E\u0531-\u0556\u10A0-\u10C5\u10C7\u10CD\u13A0-\u13F5\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\uA698\uA69A\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\uA796\uA798\uA79A\uA79C\uA79E\uA7A0\uA7A2\uA7A4\uA7A6\uA7A8\uA7AA-\uA7AD\uA7B0-\uA7B4\uA7B6\uFF21-\uFF3A]/, + peg$c119 = peg$classExpectation([["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", "\u037F", "\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", "\u0528", "\u052A", "\u052C", "\u052E", ["\u0531", "\u0556"], ["\u10A0", "\u10C5"], "\u10C7", "\u10CD", ["\u13A0", "\u13F5"], "\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", "\uA698", "\uA69A", "\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", "\uA796", "\uA798", "\uA79A", "\uA79C", "\uA79E", "\uA7A0", "\uA7A2", "\uA7A4", "\uA7A6", "\uA7A8", ["\uA7AA", "\uA7AD"], ["\uA7B0", "\uA7B4"], "\uA7B6", ["\uFF21", "\uFF3A"]], false, false), + peg$c120 = /^[\u0903\u093B\u093E-\u0940\u0949-\u094C\u094E-\u094F\u0982-\u0983\u09BE-\u09C0\u09C7-\u09C8\u09CB-\u09CC\u09D7\u0A03\u0A3E-\u0A40\u0A83\u0ABE-\u0AC0\u0AC9\u0ACB-\u0ACC\u0B02-\u0B03\u0B3E\u0B40\u0B47-\u0B48\u0B4B-\u0B4C\u0B57\u0BBE-\u0BBF\u0BC1-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCC\u0BD7\u0C01-\u0C03\u0C41-\u0C44\u0C82-\u0C83\u0CBE\u0CC0-\u0CC4\u0CC7-\u0CC8\u0CCA-\u0CCB\u0CD5-\u0CD6\u0D02-\u0D03\u0D3E-\u0D40\u0D46-\u0D48\u0D4A-\u0D4C\u0D57\u0D82-\u0D83\u0DCF-\u0DD1\u0DD8-\u0DDF\u0DF2-\u0DF3\u0F3E-\u0F3F\u0F7F\u102B-\u102C\u1031\u1038\u103B-\u103C\u1056-\u1057\u1062-\u1064\u1067-\u106D\u1083-\u1084\u1087-\u108C\u108F\u109A-\u109C\u17B6\u17BE-\u17C5\u17C7-\u17C8\u1923-\u1926\u1929-\u192B\u1930-\u1931\u1933-\u1938\u1A19-\u1A1A\u1A55\u1A57\u1A61\u1A63-\u1A64\u1A6D-\u1A72\u1B04\u1B35\u1B3B\u1B3D-\u1B41\u1B43-\u1B44\u1B82\u1BA1\u1BA6-\u1BA7\u1BAA\u1BE7\u1BEA-\u1BEC\u1BEE\u1BF2-\u1BF3\u1C24-\u1C2B\u1C34-\u1C35\u1CE1\u1CF2-\u1CF3\u302E-\u302F\uA823-\uA824\uA827\uA880-\uA881\uA8B4-\uA8C3\uA952-\uA953\uA983\uA9B4-\uA9B5\uA9BA-\uA9BB\uA9BD-\uA9C0\uAA2F-\uAA30\uAA33-\uAA34\uAA4D\uAA7B\uAA7D\uAAEB\uAAEE-\uAAEF\uAAF5\uABE3-\uABE4\uABE6-\uABE7\uABE9-\uABEA\uABEC]/, + peg$c121 = peg$classExpectation(["\u0903", "\u093B", ["\u093E", "\u0940"], ["\u0949", "\u094C"], ["\u094E", "\u094F"], ["\u0982", "\u0983"], ["\u09BE", "\u09C0"], ["\u09C7", "\u09C8"], ["\u09CB", "\u09CC"], "\u09D7", "\u0A03", ["\u0A3E", "\u0A40"], "\u0A83", ["\u0ABE", "\u0AC0"], "\u0AC9", ["\u0ACB", "\u0ACC"], ["\u0B02", "\u0B03"], "\u0B3E", "\u0B40", ["\u0B47", "\u0B48"], ["\u0B4B", "\u0B4C"], "\u0B57", ["\u0BBE", "\u0BBF"], ["\u0BC1", "\u0BC2"], ["\u0BC6", "\u0BC8"], ["\u0BCA", "\u0BCC"], "\u0BD7", ["\u0C01", "\u0C03"], ["\u0C41", "\u0C44"], ["\u0C82", "\u0C83"], "\u0CBE", ["\u0CC0", "\u0CC4"], ["\u0CC7", "\u0CC8"], ["\u0CCA", "\u0CCB"], ["\u0CD5", "\u0CD6"], ["\u0D02", "\u0D03"], ["\u0D3E", "\u0D40"], ["\u0D46", "\u0D48"], ["\u0D4A", "\u0D4C"], "\u0D57", ["\u0D82", "\u0D83"], ["\u0DCF", "\u0DD1"], ["\u0DD8", "\u0DDF"], ["\u0DF2", "\u0DF3"], ["\u0F3E", "\u0F3F"], "\u0F7F", ["\u102B", "\u102C"], "\u1031", "\u1038", ["\u103B", "\u103C"], ["\u1056", "\u1057"], ["\u1062", "\u1064"], ["\u1067", "\u106D"], ["\u1083", "\u1084"], ["\u1087", "\u108C"], "\u108F", ["\u109A", "\u109C"], "\u17B6", ["\u17BE", "\u17C5"], ["\u17C7", "\u17C8"], ["\u1923", "\u1926"], ["\u1929", "\u192B"], ["\u1930", "\u1931"], ["\u1933", "\u1938"], ["\u1A19", "\u1A1A"], "\u1A55", "\u1A57", "\u1A61", ["\u1A63", "\u1A64"], ["\u1A6D", "\u1A72"], "\u1B04", "\u1B35", "\u1B3B", ["\u1B3D", "\u1B41"], ["\u1B43", "\u1B44"], "\u1B82", "\u1BA1", ["\u1BA6", "\u1BA7"], "\u1BAA", "\u1BE7", ["\u1BEA", "\u1BEC"], "\u1BEE", ["\u1BF2", "\u1BF3"], ["\u1C24", "\u1C2B"], ["\u1C34", "\u1C35"], "\u1CE1", ["\u1CF2", "\u1CF3"], ["\u302E", "\u302F"], ["\uA823", "\uA824"], "\uA827", ["\uA880", "\uA881"], ["\uA8B4", "\uA8C3"], ["\uA952", "\uA953"], "\uA983", ["\uA9B4", "\uA9B5"], ["\uA9BA", "\uA9BB"], ["\uA9BD", "\uA9C0"], ["\uAA2F", "\uAA30"], ["\uAA33", "\uAA34"], "\uAA4D", "\uAA7B", "\uAA7D", "\uAAEB", ["\uAAEE", "\uAAEF"], "\uAAF5", ["\uABE3", "\uABE4"], ["\uABE6", "\uABE7"], ["\uABE9", "\uABEA"], "\uABEC"], false, false), + peg$c122 = /^[\u0300-\u036F\u0483-\u0487\u0591-\u05BD\u05BF\u05C1-\u05C2\u05C4-\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7-\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08E3-\u0902\u093A\u093C\u0941-\u0948\u094D\u0951-\u0957\u0962-\u0963\u0981\u09BC\u09C1-\u09C4\u09CD\u09E2-\u09E3\u0A01-\u0A02\u0A3C\u0A41-\u0A42\u0A47-\u0A48\u0A4B-\u0A4D\u0A51\u0A70-\u0A71\u0A75\u0A81-\u0A82\u0ABC\u0AC1-\u0AC5\u0AC7-\u0AC8\u0ACD\u0AE2-\u0AE3\u0B01\u0B3C\u0B3F\u0B41-\u0B44\u0B4D\u0B56\u0B62-\u0B63\u0B82\u0BC0\u0BCD\u0C00\u0C3E-\u0C40\u0C46-\u0C48\u0C4A-\u0C4D\u0C55-\u0C56\u0C62-\u0C63\u0C81\u0CBC\u0CBF\u0CC6\u0CCC-\u0CCD\u0CE2-\u0CE3\u0D01\u0D41-\u0D44\u0D4D\u0D62-\u0D63\u0DCA\u0DD2-\u0DD4\u0DD6\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB-\u0EBC\u0EC8-\u0ECD\u0F18-\u0F19\u0F35\u0F37\u0F39\u0F71-\u0F7E\u0F80-\u0F84\u0F86-\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102D-\u1030\u1032-\u1037\u1039-\u103A\u103D-\u103E\u1058-\u1059\u105E-\u1060\u1071-\u1074\u1082\u1085-\u1086\u108D\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752-\u1753\u1772-\u1773\u17B4-\u17B5\u17B7-\u17BD\u17C6\u17C9-\u17D3\u17DD\u180B-\u180D\u18A9\u1920-\u1922\u1927-\u1928\u1932\u1939-\u193B\u1A17-\u1A18\u1A1B\u1A56\u1A58-\u1A5E\u1A60\u1A62\u1A65-\u1A6C\u1A73-\u1A7C\u1A7F\u1AB0-\u1ABD\u1B00-\u1B03\u1B34\u1B36-\u1B3A\u1B3C\u1B42\u1B6B-\u1B73\u1B80-\u1B81\u1BA2-\u1BA5\u1BA8-\u1BA9\u1BAB-\u1BAD\u1BE6\u1BE8-\u1BE9\u1BED\u1BEF-\u1BF1\u1C2C-\u1C33\u1C36-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE0\u1CE2-\u1CE8\u1CED\u1CF4\u1CF8-\u1CF9\u1DC0-\u1DF5\u1DFC-\u1DFF\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302D\u3099-\u309A\uA66F\uA674-\uA67D\uA69E-\uA69F\uA6F0-\uA6F1\uA802\uA806\uA80B\uA825-\uA826\uA8C4\uA8E0-\uA8F1\uA926-\uA92D\uA947-\uA951\uA980-\uA982\uA9B3\uA9B6-\uA9B9\uA9BC\uA9E5\uAA29-\uAA2E\uAA31-\uAA32\uAA35-\uAA36\uAA43\uAA4C\uAA7C\uAAB0\uAAB2-\uAAB4\uAAB7-\uAAB8\uAABE-\uAABF\uAAC1\uAAEC-\uAAED\uAAF6\uABE5\uABE8\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F]/, + peg$c123 = peg$classExpectation([["\u0300", "\u036F"], ["\u0483", "\u0487"], ["\u0591", "\u05BD"], "\u05BF", ["\u05C1", "\u05C2"], ["\u05C4", "\u05C5"], "\u05C7", ["\u0610", "\u061A"], ["\u064B", "\u065F"], "\u0670", ["\u06D6", "\u06DC"], ["\u06DF", "\u06E4"], ["\u06E7", "\u06E8"], ["\u06EA", "\u06ED"], "\u0711", ["\u0730", "\u074A"], ["\u07A6", "\u07B0"], ["\u07EB", "\u07F3"], ["\u0816", "\u0819"], ["\u081B", "\u0823"], ["\u0825", "\u0827"], ["\u0829", "\u082D"], ["\u0859", "\u085B"], ["\u08E3", "\u0902"], "\u093A", "\u093C", ["\u0941", "\u0948"], "\u094D", ["\u0951", "\u0957"], ["\u0962", "\u0963"], "\u0981", "\u09BC", ["\u09C1", "\u09C4"], "\u09CD", ["\u09E2", "\u09E3"], ["\u0A01", "\u0A02"], "\u0A3C", ["\u0A41", "\u0A42"], ["\u0A47", "\u0A48"], ["\u0A4B", "\u0A4D"], "\u0A51", ["\u0A70", "\u0A71"], "\u0A75", ["\u0A81", "\u0A82"], "\u0ABC", ["\u0AC1", "\u0AC5"], ["\u0AC7", "\u0AC8"], "\u0ACD", ["\u0AE2", "\u0AE3"], "\u0B01", "\u0B3C", "\u0B3F", ["\u0B41", "\u0B44"], "\u0B4D", "\u0B56", ["\u0B62", "\u0B63"], "\u0B82", "\u0BC0", "\u0BCD", "\u0C00", ["\u0C3E", "\u0C40"], ["\u0C46", "\u0C48"], ["\u0C4A", "\u0C4D"], ["\u0C55", "\u0C56"], ["\u0C62", "\u0C63"], "\u0C81", "\u0CBC", "\u0CBF", "\u0CC6", ["\u0CCC", "\u0CCD"], ["\u0CE2", "\u0CE3"], "\u0D01", ["\u0D41", "\u0D44"], "\u0D4D", ["\u0D62", "\u0D63"], "\u0DCA", ["\u0DD2", "\u0DD4"], "\u0DD6", "\u0E31", ["\u0E34", "\u0E3A"], ["\u0E47", "\u0E4E"], "\u0EB1", ["\u0EB4", "\u0EB9"], ["\u0EBB", "\u0EBC"], ["\u0EC8", "\u0ECD"], ["\u0F18", "\u0F19"], "\u0F35", "\u0F37", "\u0F39", ["\u0F71", "\u0F7E"], ["\u0F80", "\u0F84"], ["\u0F86", "\u0F87"], ["\u0F8D", "\u0F97"], ["\u0F99", "\u0FBC"], "\u0FC6", ["\u102D", "\u1030"], ["\u1032", "\u1037"], ["\u1039", "\u103A"], ["\u103D", "\u103E"], ["\u1058", "\u1059"], ["\u105E", "\u1060"], ["\u1071", "\u1074"], "\u1082", ["\u1085", "\u1086"], "\u108D", "\u109D", ["\u135D", "\u135F"], ["\u1712", "\u1714"], ["\u1732", "\u1734"], ["\u1752", "\u1753"], ["\u1772", "\u1773"], ["\u17B4", "\u17B5"], ["\u17B7", "\u17BD"], "\u17C6", ["\u17C9", "\u17D3"], "\u17DD", ["\u180B", "\u180D"], "\u18A9", ["\u1920", "\u1922"], ["\u1927", "\u1928"], "\u1932", ["\u1939", "\u193B"], ["\u1A17", "\u1A18"], "\u1A1B", "\u1A56", ["\u1A58", "\u1A5E"], "\u1A60", "\u1A62", ["\u1A65", "\u1A6C"], ["\u1A73", "\u1A7C"], "\u1A7F", ["\u1AB0", "\u1ABD"], ["\u1B00", "\u1B03"], "\u1B34", ["\u1B36", "\u1B3A"], "\u1B3C", "\u1B42", ["\u1B6B", "\u1B73"], ["\u1B80", "\u1B81"], ["\u1BA2", "\u1BA5"], ["\u1BA8", "\u1BA9"], ["\u1BAB", "\u1BAD"], "\u1BE6", ["\u1BE8", "\u1BE9"], "\u1BED", ["\u1BEF", "\u1BF1"], ["\u1C2C", "\u1C33"], ["\u1C36", "\u1C37"], ["\u1CD0", "\u1CD2"], ["\u1CD4", "\u1CE0"], ["\u1CE2", "\u1CE8"], "\u1CED", "\u1CF4", ["\u1CF8", "\u1CF9"], ["\u1DC0", "\u1DF5"], ["\u1DFC", "\u1DFF"], ["\u20D0", "\u20DC"], "\u20E1", ["\u20E5", "\u20F0"], ["\u2CEF", "\u2CF1"], "\u2D7F", ["\u2DE0", "\u2DFF"], ["\u302A", "\u302D"], ["\u3099", "\u309A"], "\uA66F", ["\uA674", "\uA67D"], ["\uA69E", "\uA69F"], ["\uA6F0", "\uA6F1"], "\uA802", "\uA806", "\uA80B", ["\uA825", "\uA826"], "\uA8C4", ["\uA8E0", "\uA8F1"], ["\uA926", "\uA92D"], ["\uA947", "\uA951"], ["\uA980", "\uA982"], "\uA9B3", ["\uA9B6", "\uA9B9"], "\uA9BC", "\uA9E5", ["\uAA29", "\uAA2E"], ["\uAA31", "\uAA32"], ["\uAA35", "\uAA36"], "\uAA43", "\uAA4C", "\uAA7C", "\uAAB0", ["\uAAB2", "\uAAB4"], ["\uAAB7", "\uAAB8"], ["\uAABE", "\uAABF"], "\uAAC1", ["\uAAEC", "\uAAED"], "\uAAF6", "\uABE5", "\uABE8", "\uABED", "\uFB1E", ["\uFE00", "\uFE0F"], ["\uFE20", "\uFE2F"]], false, false), + peg$c124 = /^[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\u0DE6-\u0DEF\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\uA9F0-\uA9F9\uAA50-\uAA59\uABF0-\uABF9\uFF10-\uFF19]/, + peg$c125 = peg$classExpectation([["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"], ["\u0DE6", "\u0DEF"], ["\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"], ["\uA9F0", "\uA9F9"], ["\uAA50", "\uAA59"], ["\uABF0", "\uABF9"], ["\uFF10", "\uFF19"]], false, false), + peg$c126 = /^[\u16EE-\u16F0\u2160-\u2182\u2185-\u2188\u3007\u3021-\u3029\u3038-\u303A\uA6E6-\uA6EF]/, + peg$c127 = peg$classExpectation([["\u16EE", "\u16F0"], ["\u2160", "\u2182"], ["\u2185", "\u2188"], "\u3007", ["\u3021", "\u3029"], ["\u3038", "\u303A"], ["\uA6E6", "\uA6EF"]], false, false), + peg$c128 = /^[_\u203F-\u2040\u2054\uFE33-\uFE34\uFE4D-\uFE4F\uFF3F]/, + peg$c129 = peg$classExpectation(["_", ["\u203F", "\u2040"], "\u2054", ["\uFE33", "\uFE34"], ["\uFE4D", "\uFE4F"], "\uFF3F"], false, false), + peg$c130 = /^[ \xA0\u1680\u2000-\u200A\u202F\u205F\u3000]/, + peg$c131 = peg$classExpectation([" ", "\xA0", "\u1680", ["\u2000", "\u200A"], "\u202F", "\u205F", "\u3000"], false, false), + peg$c132 = "let", + peg$c133 = peg$literalExpectation("let", false), + peg$c134 = "as", + peg$c135 = peg$literalExpectation("as", false), + peg$c136 = "break", + peg$c137 = peg$literalExpectation("break", false), + peg$c138 = "const", + peg$c139 = peg$literalExpectation("const", false), + peg$c140 = "continue", + peg$c141 = peg$literalExpectation("continue", false), + peg$c142 = "initOf", + peg$c143 = peg$literalExpectation("initOf", false), + peg$c144 = "contract", + peg$c145 = peg$literalExpectation("contract", false), + peg$c146 = "init", + peg$c147 = peg$literalExpectation("init", false), + peg$c148 = "receive", + peg$c149 = peg$literalExpectation("receive", false), + peg$c150 = "external", + peg$c151 = peg$literalExpectation("external", false), + peg$c152 = "bounced", + peg$c153 = peg$literalExpectation("bounced", false), + peg$c154 = "delete", + peg$c155 = peg$literalExpectation("delete", false), + peg$c156 = "do", + peg$c157 = peg$literalExpectation("do", false), + peg$c158 = "else", + peg$c159 = peg$literalExpectation("else", false), + peg$c160 = "false", + peg$c161 = peg$literalExpectation("false", false), + peg$c162 = "repeat", + peg$c163 = peg$literalExpectation("repeat", false), + peg$c164 = "from", + peg$c165 = peg$literalExpectation("from", false), + peg$c166 = "fun", + peg$c167 = peg$literalExpectation("fun", false), + peg$c168 = "native", + peg$c169 = peg$literalExpectation("native", false), + peg$c170 = "if", + peg$c171 = peg$literalExpectation("if", false), + peg$c172 = "try", + peg$c173 = peg$literalExpectation("try", false), + peg$c174 = "catch", + peg$c175 = peg$literalExpectation("catch", false), + peg$c176 = "with", + peg$c177 = peg$literalExpectation("with", false), + peg$c178 = "import", + peg$c179 = peg$literalExpectation("import", false), + peg$c180 = "interface", + peg$c181 = peg$literalExpectation("interface", false), + peg$c182 = "message", + peg$c183 = peg$literalExpectation("message", false), + peg$c184 = "map", + peg$c185 = peg$literalExpectation("map", false), + peg$c186 = "new", + peg$c187 = peg$literalExpectation("new", false), + peg$c188 = "null", + peg$c189 = peg$literalExpectation("null", false), + peg$c190 = "return", + peg$c191 = peg$literalExpectation("return", false), + peg$c192 = "struct", + peg$c193 = peg$literalExpectation("struct", false), + peg$c194 = "super", + peg$c195 = peg$literalExpectation("super", false), + peg$c196 = "self", + peg$c197 = peg$literalExpectation("self", false), + peg$c198 = "throw", + peg$c199 = peg$literalExpectation("throw", false), + peg$c200 = "true", + peg$c201 = peg$literalExpectation("true", false), + peg$c202 = "ton", + peg$c203 = peg$literalExpectation("ton", false), + peg$c204 = "while", + peg$c205 = peg$literalExpectation("while", false), + peg$c206 = "foreach", + peg$c207 = peg$literalExpectation("foreach", false), + peg$c208 = "until", + peg$c209 = peg$literalExpectation("until", false), + peg$c210 = "Context", + peg$c211 = peg$literalExpectation("Context", false), + peg$c212 = "Int", + peg$c213 = peg$literalExpectation("Int", false), + peg$c214 = "Bool", + peg$c215 = peg$literalExpectation("Bool", false), + peg$c216 = "Builder", + peg$c217 = peg$literalExpectation("Builder", false), + peg$c218 = "Slice", + peg$c219 = peg$literalExpectation("Slice", false), + peg$c220 = "Cell", + peg$c221 = peg$literalExpectation("Cell", false), + peg$c222 = "Address", + peg$c223 = peg$literalExpectation("Address", false), + peg$c224 = "String", + peg$c225 = peg$literalExpectation("String", false), + peg$c226 = "StringBuilder", + peg$c227 = peg$literalExpectation("StringBuilder", false), + peg$c228 = "StateInit", + peg$c229 = peg$literalExpectation("StateInit", false), + peg$c230 = "primitive", + peg$c231 = peg$literalExpectation("primitive", false), + peg$c232 = "trait", + peg$c233 = peg$literalExpectation("trait", false), + peg$c234 = "get", + peg$c235 = peg$literalExpectation("get", false), + peg$c236 = "override", + peg$c237 = peg$literalExpectation("override", false), + peg$c238 = "inline", + peg$c239 = peg$literalExpectation("inline", false), + peg$c240 = "virtual", + peg$c241 = peg$literalExpectation("virtual", false), + peg$c242 = "abstract", + peg$c243 = peg$literalExpectation("abstract", false), + peg$c244 = "extends", + peg$c245 = peg$literalExpectation("extends", false), + peg$c246 = "mutates", + peg$c247 = peg$literalExpectation("mutates", false), + peg$c248 = "public", + peg$c249 = peg$literalExpectation("public", false), + peg$c250 = ";", + peg$c251 = peg$literalExpectation(";", false), + peg$c252 = ",", + peg$c253 = peg$literalExpectation(",", false), + peg$c254 = function() { return { type: "ThisExpression", start: location().start.offset, end: location().end.offset }; }, + peg$c255 = "(", + peg$c256 = peg$literalExpectation("(", false), + peg$c257 = ")", + peg$c258 = peg$literalExpectation(")", false), + peg$c259 = function(expression) { /* Need to modify the location here so the position takes into account the "(" & ")". Else "(a, b)" (for eg) results in incorrect position. @@ -447,11 +461,11 @@ function peg$parse(input, options) { return expression; }, - peg$c250 = "[", - peg$c251 = peg$literalExpectation("[", false), - peg$c252 = "]", - peg$c253 = peg$literalExpectation("]", false), - peg$c254 = function(elision) { + peg$c260 = "[", + peg$c261 = peg$literalExpectation("[", false), + peg$c262 = "]", + peg$c263 = peg$literalExpectation("]", false), + peg$c264 = function(elision) { return { type: "ArrayExpression", elements: optionalList(extractOptional(elision, 0)), @@ -459,7 +473,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c255 = function(elements) { + peg$c265 = function(elements) { return { type: "ArrayExpression", elements: elements, @@ -467,7 +481,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c256 = function(elements, elision) { + peg$c266 = function(elements, elision) { return { type: "ArrayExpression", elements: elements.concat(optionalList(extractOptional(elision, 0))), @@ -475,15 +489,15 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c257 = function(elision, element) { + peg$c267 = function(elision, element) { return optionalList(extractOptional(elision, 0)).concat(element); }, - peg$c258 = function(head, elision, element) { + peg$c268 = function(head, elision, element) { return optionalList(extractOptional(elision, 0)).concat(element); }, - peg$c259 = function(head, tail) { return Array.prototype.concat.apply(head, tail); }, - peg$c260 = function(commas) { return filledArray(commas.length + 1, null); }, - peg$c261 = function(callee, args) { + peg$c269 = function(head, tail) { return Array.prototype.concat.apply(head, tail); }, + peg$c270 = function(commas) { return filledArray(commas.length + 1, null); }, + peg$c271 = function(callee, args) { return { type: "NewExpression", callee: callee, @@ -493,7 +507,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c262 = function(callee, args) { + peg$c272 = function(callee, args) { return { type: "InitOfExpression", callee: callee, @@ -503,7 +517,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c263 = function(head, property) { + peg$c273 = function(head, property) { return { property: property, computed: true, @@ -511,10 +525,10 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c264 = function(head, property) { + peg$c274 = function(head, property) { return { property: property, computed: false, start: location().start.offset, end: location().end.offset }; }, - peg$c265 = function(head, tail) { + peg$c275 = function(head, tail) { return buildTree(head, tail, function(result, element) { return { type: "MemberExpression", @@ -526,19 +540,21 @@ function peg$parse(input, options) { }; }); }, - peg$c266 = function(callee) { + peg$c276 = function(callee) { return { type: "NewExpression", callee: callee, arguments: [], start: location().start.offset, end: location().end.offset }; }, - peg$c267 = function(callee) { + peg$c277 = function(callee) { return { type: "InitOfExpression", callee: callee, arguments: [], start: location().start.offset, end: location().end.offset }; }, - peg$c268 = function(callee, args) { - return { type: "CallExpression", callee: callee, arguments: args != null ? args[0]: null, argumentsType: args != null ? args[1]: null, start: location().start.offset, end: location().end.offset }; + peg$c278 = "!!", + peg$c279 = peg$literalExpectation("!!", false), + peg$c280 = function(callee, args, optionalArgs) { + return { type: "CallExpression", callee: callee, arguments: args != null ? args[0]: null, argumentsType: args != null ? args[1]: null, optional: optionalArgs != null, start: location().start.offset, end: location().end.offset }; }, - peg$c269 = function(head, args) { - return { type: "CallExpression", arguments: args != null ? args[0]: null, argumentsType: args != null ? args[1]: null, start: location().start.offset, end: location().end.offset }; + peg$c281 = function(head, args, optionalArgs) { + return { type: "CallExpression", arguments: args != null ? args[0]: null, argumentsType: args != null ? args[1]: null, optional: optionalArgs != null, start: location().start.offset, end: location().end.offset }; }, - peg$c270 = function(head, property) { + peg$c282 = function(head, property) { return { type: "MemberExpression", property: property, @@ -547,7 +563,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c271 = function(head, property) { + peg$c283 = function(head, property) { return { type: "MemberExpression", property: property, @@ -556,32 +572,30 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c272 = function(head, tail) { + peg$c284 = function(head, tail) { return buildTree(head, tail, function(result, element) { element[TYPES_TO_PROPERTY_NAMES[element.type]] = result; element.start = location().start.offset; return element; }); }, - peg$c273 = function(args) { + peg$c285 = function(args) { return [optionalList(extractOptional(args, 0)), 0]; }, - peg$c274 = "{", - peg$c275 = peg$literalExpectation("{", false), - peg$c276 = "}", - peg$c277 = peg$literalExpectation("}", false), - peg$c278 = function(args) { + peg$c286 = "{", + peg$c287 = peg$literalExpectation("{", false), + peg$c288 = function(args) { return [optionalList(extractOptional(args, 0)), 1]; }, - peg$c279 = function(args) { + peg$c289 = function(args) { return [optionalList(extractOptional(args, 0)), 2]; }, - peg$c280 = function(head, tail) { + peg$c290 = function(head, tail) { return buildList(head, tail, 3); }, - peg$c281 = ":", - peg$c282 = peg$literalExpectation(":", false), - peg$c283 = function(name, value) { + peg$c291 = ":", + peg$c292 = peg$literalExpectation(":", false), + peg$c293 = function(name, value) { return { type: "NameValueAssignment", name: name, @@ -590,11 +604,11 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c284 = "<", - peg$c285 = peg$literalExpectation("<", false), - peg$c286 = ">", - peg$c287 = peg$literalExpectation(">", false), - peg$c288 = function(literal, members, parts, subparts) { + peg$c294 = "<", + peg$c295 = peg$literalExpectation("<", false), + peg$c296 = ">", + peg$c297 = peg$literalExpectation(">", false), + peg$c298 = function(literal, members, parts, subparts) { return { type: "Type", literal: literal.type == "Identifier" ? literal.name : literal, @@ -605,7 +619,7 @@ function peg$parse(input, options) { end: location().end.offset } }, - peg$c289 = function(funcName, parts) { + peg$c299 = function(funcName, parts) { return { type: "Type", literal: "function", @@ -616,7 +630,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c290 = function(token) { + peg$c300 = function(token) { return { type: "StateMutabilitySpecifier", value: token[0], @@ -624,14 +638,14 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c291 = "=", - peg$c292 = peg$literalExpectation("=", false), - peg$c293 = function(expression) { + peg$c301 = "=", + peg$c302 = peg$literalExpectation("=", false), + peg$c303 = function(expression) { return expression; }, - peg$c294 = "?", - peg$c295 = peg$literalExpectation("?", false), - peg$c296 = function(modifier, isconst, id, type, typePrimitive, isoptional, value) { + peg$c304 = "?", + peg$c305 = peg$literalExpectation("?", false), + peg$c306 = function(modifier, isconst, id, type, typePrimitive, isoptional, value) { return { type: "StateVariableDeclaration", name: id.name, @@ -645,7 +659,7 @@ function peg$parse(input, options) { end: location().end.offset } }, - peg$c297 = function(id, type, typePrimitive, isoptional) { + peg$c307 = function(id, type, typePrimitive, isoptional) { return { type: "DeclarativeExpression", name: id.name, @@ -656,7 +670,7 @@ function peg$parse(input, options) { end: location().end.offset } }, - peg$c298 = function(from, fromPrimitive, to, toPrimitive) { + peg$c308 = function(from, fromPrimitive, to, toPrimitive) { return { type: "MappingExpression", from: from, @@ -667,7 +681,7 @@ function peg$parse(input, options) { end: location().end.offset } }, - peg$c299 = function(argument, operator) { + peg$c309 = function(argument, operator) { return { type: "UpdateExpression", operator: operator, @@ -677,13 +691,11 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c300 = "++", - peg$c301 = peg$literalExpectation("++", false), - peg$c302 = "--", - peg$c303 = peg$literalExpectation("--", false), - peg$c304 = "!!", - peg$c305 = peg$literalExpectation("!!", false), - peg$c306 = function(operator, argument) { + peg$c310 = "++", + peg$c311 = peg$literalExpectation("++", false), + peg$c312 = "--", + peg$c313 = peg$literalExpectation("--", false), + peg$c314 = function(operator, argument) { var type = (operator === "++" || operator === "--") ? "UpdateExpression" : "UnaryExpression"; @@ -697,54 +709,54 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c307 = "+", - peg$c308 = peg$literalExpectation("+", false), - peg$c309 = "-", - peg$c310 = peg$literalExpectation("-", false), - peg$c311 = "~", - peg$c312 = peg$literalExpectation("~", false), - peg$c313 = "!", - peg$c314 = peg$literalExpectation("!", false), - peg$c315 = function(head, tail) { return buildBinaryExpression(head, tail); }, - peg$c316 = "*", - peg$c317 = peg$literalExpectation("*", false), - peg$c318 = "/", - peg$c319 = peg$literalExpectation("/", false), - peg$c320 = "%", - peg$c321 = peg$literalExpectation("%", false), - peg$c322 = /^[+=]/, - peg$c323 = peg$classExpectation(["+", "="], false, false), - peg$c324 = /^[\-=]/, - peg$c325 = peg$classExpectation(["-", "="], false, false), - peg$c326 = "<<", - peg$c327 = peg$literalExpectation("<<", false), - peg$c328 = ">>>", - peg$c329 = peg$literalExpectation(">>>", false), - peg$c330 = ">>", - peg$c331 = peg$literalExpectation(">>", false), - peg$c332 = "<=", - peg$c333 = peg$literalExpectation("<=", false), - peg$c334 = ">=", - peg$c335 = peg$literalExpectation(">=", false), - peg$c336 = "==", - peg$c337 = peg$literalExpectation("==", false), - peg$c338 = "!=", - peg$c339 = peg$literalExpectation("!=", false), - peg$c340 = "&", - peg$c341 = peg$literalExpectation("&", false), - peg$c342 = /^[&=]/, - peg$c343 = peg$classExpectation(["&", "="], false, false), - peg$c344 = "^", - peg$c345 = peg$literalExpectation("^", false), - peg$c346 = "|", - peg$c347 = peg$literalExpectation("|", false), - peg$c348 = /^[|=]/, - peg$c349 = peg$classExpectation(["|", "="], false, false), - peg$c350 = "&&", - peg$c351 = peg$literalExpectation("&&", false), - peg$c352 = "||", - peg$c353 = peg$literalExpectation("||", false), - peg$c354 = function(test, consequent, alternate) { + peg$c315 = "+", + peg$c316 = peg$literalExpectation("+", false), + peg$c317 = "-", + peg$c318 = peg$literalExpectation("-", false), + peg$c319 = "~", + peg$c320 = peg$literalExpectation("~", false), + peg$c321 = "!", + peg$c322 = peg$literalExpectation("!", false), + peg$c323 = function(head, tail) { return buildBinaryExpression(head, tail); }, + peg$c324 = "*", + peg$c325 = peg$literalExpectation("*", false), + peg$c326 = "/", + peg$c327 = peg$literalExpectation("/", false), + peg$c328 = "%", + peg$c329 = peg$literalExpectation("%", false), + peg$c330 = /^[+=]/, + peg$c331 = peg$classExpectation(["+", "="], false, false), + peg$c332 = /^[\-=]/, + peg$c333 = peg$classExpectation(["-", "="], false, false), + peg$c334 = "<<", + peg$c335 = peg$literalExpectation("<<", false), + peg$c336 = ">>>", + peg$c337 = peg$literalExpectation(">>>", false), + peg$c338 = ">>", + peg$c339 = peg$literalExpectation(">>", false), + peg$c340 = "<=", + peg$c341 = peg$literalExpectation("<=", false), + peg$c342 = ">=", + peg$c343 = peg$literalExpectation(">=", false), + peg$c344 = "==", + peg$c345 = peg$literalExpectation("==", false), + peg$c346 = "!=", + peg$c347 = peg$literalExpectation("!=", false), + peg$c348 = "&", + peg$c349 = peg$literalExpectation("&", false), + peg$c350 = /^[&=]/, + peg$c351 = peg$classExpectation(["&", "="], false, false), + peg$c352 = "^", + peg$c353 = peg$literalExpectation("^", false), + peg$c354 = "|", + peg$c355 = peg$literalExpectation("|", false), + peg$c356 = /^[|=]/, + peg$c357 = peg$classExpectation(["|", "="], false, false), + peg$c358 = "&&", + peg$c359 = peg$literalExpectation("&&", false), + peg$c360 = "||", + peg$c361 = peg$literalExpectation("||", false), + peg$c362 = function(test, consequent, alternate) { return { type: "ConditionalExpression", test: test, @@ -754,7 +766,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c355 = function(left, right) { + peg$c363 = function(left, right) { return { type: "AssignmentExpression", operator: "=", @@ -764,7 +776,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c356 = function(left, operator, right) { + peg$c364 = function(left, operator, right) { return { type: "AssignmentExpression", operator: operator, @@ -774,27 +786,27 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c357 = "*=", - peg$c358 = peg$literalExpectation("*=", false), - peg$c359 = "/=", - peg$c360 = peg$literalExpectation("/=", false), - peg$c361 = "%=", - peg$c362 = peg$literalExpectation("%=", false), - peg$c363 = "+=", - peg$c364 = peg$literalExpectation("+=", false), - peg$c365 = "-=", - peg$c366 = peg$literalExpectation("-=", false), - peg$c367 = "<<=", - peg$c368 = peg$literalExpectation("<<=", false), - peg$c369 = ">>=", - peg$c370 = peg$literalExpectation(">>=", false), - peg$c371 = "&=", - peg$c372 = peg$literalExpectation("&=", false), - peg$c373 = "^=", - peg$c374 = peg$literalExpectation("^=", false), - peg$c375 = "|=", - peg$c376 = peg$literalExpectation("|=", false), - peg$c377 = function(head, tail) { + peg$c365 = "*=", + peg$c366 = peg$literalExpectation("*=", false), + peg$c367 = "/=", + peg$c368 = peg$literalExpectation("/=", false), + peg$c369 = "%=", + peg$c370 = peg$literalExpectation("%=", false), + peg$c371 = "+=", + peg$c372 = peg$literalExpectation("+=", false), + peg$c373 = "-=", + peg$c374 = peg$literalExpectation("-=", false), + peg$c375 = "<<=", + peg$c376 = peg$literalExpectation("<<=", false), + peg$c377 = ">>=", + peg$c378 = peg$literalExpectation(">>=", false), + peg$c379 = "&=", + peg$c380 = peg$literalExpectation("&=", false), + peg$c381 = "^=", + peg$c382 = peg$literalExpectation("^=", false), + peg$c383 = "|=", + peg$c384 = peg$literalExpectation("|=", false), + peg$c385 = function(head, tail) { if (tail.length < 1) { return head; } @@ -815,10 +827,10 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c378 = function(head, tail) { + peg$c386 = function(head, tail) { return buildList(head, tail, 1); }, - peg$c379 = function(tail) { + peg$c387 = function(tail) { return { type: "IncompleteStatement", body: text(), @@ -826,7 +838,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c380 = function(body, tail) { + peg$c388 = function(body, tail) { return { type: "IncompleteStatement", body: text(), @@ -834,7 +846,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c381 = function(body, tail) { + peg$c389 = function(body, tail) { return { type: "IncompleteStatement", body: text(), @@ -842,7 +854,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c382 = function(body) { + peg$c390 = function(body) { return { type: "BlockStatement", body: optionalList(extractOptional(body, 0)), @@ -850,8 +862,8 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c383 = function(head, tail) { return buildList(head, tail, 1); }, - peg$c384 = function(modifier, vartype, declarations) { + peg$c391 = function(head, tail) { return buildList(head, tail, 1); }, + peg$c392 = function(modifier, vartype, declarations) { return { type: "VariableDeclaration", declarations: declarations, @@ -861,7 +873,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c385 = function(modifier, vartype, tuple) { + peg$c393 = function(modifier, vartype, tuple) { return { type: "VariableDeclarationTuple", declarations: tuple.declarations, @@ -872,13 +884,13 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c386 = function(head, tail, init) { + peg$c394 = function(head, tail, init) { return { declarations: buildList(head, tail, 1), init: extractOptional(init, 1) } }, - peg$c387 = function(id) { + peg$c395 = function(id) { return { type: "VariableDeclarator", id: id.constructor === Array ? id [1] : id, @@ -887,7 +899,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c388 = function(id, type, isoptional, init) { + peg$c396 = function(id, type, isoptional, init) { return { type: "VariableDeclarator", typePrimitive: type, @@ -898,9 +910,9 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c389 = function(expression) { return expression; }, - peg$c390 = function() { return { type: "EmptyStatement", start: location().start.offset, end: location().end.offset }; }, - peg$c391 = function(expression) { + peg$c397 = function(expression) { return expression; }, + peg$c398 = function() { return { type: "EmptyStatement", start: location().start.offset, end: location().end.offset }; }, + peg$c399 = function(expression) { return { type: "ExpressionStatement", expression: expression, @@ -908,7 +920,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c392 = function(tryExpression, tail, tryStatement, catchStatements) { + peg$c400 = function(tryExpression, tail, tryStatement, catchStatements) { return { type: "TryStatement", tryExpression: tryExpression, @@ -916,7 +928,7 @@ function peg$parse(input, options) { catchStatements: catchStatements }; }, - peg$c393 = function(tryExpression, tail, tryStatement, catchStatements) { + peg$c401 = function(tryExpression, tail, tryStatement, catchStatements) { return { type: "TryStatement", tryExpressionReturns: tryExpressionReturns, @@ -925,22 +937,22 @@ function peg$parse(input, options) { catchStatements: catchStatements }; }, - peg$c394 = function(param, body) { + peg$c402 = function(param, body) { return { type: "CatchClause", param: param, body: body }; }, - peg$c395 = function(body) { + peg$c403 = function(body) { return { type: "CatchClause", body: body }; }, - peg$c396 = "Error", - peg$c397 = peg$literalExpectation("Error", false), - peg$c398 = function(test, consequent, alternate) { + peg$c404 = "Error", + peg$c405 = peg$literalExpectation("Error", false), + peg$c406 = function(test, consequent, alternate) { return { type: "IfStatement", test: test, @@ -950,7 +962,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c399 = function(test, consequent) { + peg$c407 = function(test, consequent) { return { type: "IfStatement", test: test, @@ -960,7 +972,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c400 = function(from, alias) { + peg$c408 = function(from, alias) { return { type: "ImportStatement", from: from.value, @@ -970,7 +982,7 @@ function peg$parse(input, options) { end: location().end.offset } }, - peg$c401 = function(symbol, from) { + peg$c409 = function(symbol, from) { return { type: "ImportStatement", from: from.value, @@ -979,7 +991,7 @@ function peg$parse(input, options) { end: location().end.offset } }, - peg$c402 = function(symbols, from) { + peg$c410 = function(symbols, from) { return { type: "ImportStatement", from: from.value, @@ -988,7 +1000,7 @@ function peg$parse(input, options) { end: location().end.offset } }, - peg$c403 = function(name, alias) { + peg$c411 = function(name, alias) { return { type: "Symbol", name: name.name, @@ -997,7 +1009,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c404 = function(name, alias) { + peg$c412 = function(name, alias) { return { type: "Symbol", name: "*", @@ -1006,9 +1018,9 @@ function peg$parse(input, options) { end: location().end.offset } }, - peg$c405 = function(body, test) { return { type: "DoWhileStatement", body: body, test: test, start: location().start.offset, end: location().end.offset }; }, - peg$c406 = function(test, body) { return { type: "WhileStatement", test: test, body: body, start: location().start.offset, end: location().end.offset }; }, - peg$c407 = function(count, body) { + peg$c413 = function(body, test) { return { type: "DoWhileStatement", body: body, test: test, start: location().start.offset, end: location().end.offset }; }, + peg$c414 = function(test, body) { return { type: "WhileStatement", test: test, body: body, start: location().start.offset, end: location().end.offset }; }, + peg$c415 = function(count, body) { return { type: "RepeatStatement", count: extractOptional(count, 0), @@ -1017,39 +1029,52 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c408 = function() { + peg$c416 = "in", + peg$c417 = peg$literalExpectation("in", false), + peg$c418 = function(key, value, mapName, body) { + return { + type: "ForeachStatement", + key: key, + value: value, + mapName: mapName, + body: body, + start: location().start.offset, + end: location().end.offset + }; + }, + peg$c419 = function() { return { type: "PlaceholderStatement", start: location().start.offset, end: location().end.offset } }, - peg$c409 = function() { + peg$c420 = function() { return { type: "ContinueStatement", label: null, start: location().start.offset, end: location().end.offset }; }, - peg$c410 = function(label) { + peg$c421 = function(label) { return { type: "ContinueStatement", label: label, start: location().start.offset, end: location().end.offset }; }, - peg$c411 = function() { + peg$c422 = function() { return { type: "BreakStatement", label: null, start: location().start.offset, end: location().end.offset }; }, - peg$c412 = function(label) { + peg$c423 = function(label) { return { type: "BreakStatement", label: label, start: location().start.offset, end: location().end.offset }; }, - peg$c413 = function() { + peg$c424 = function() { return { type: "ReturnStatement", argument: null, start: location().start.offset, end: location().end.offset }; }, - peg$c414 = function(agrModificator, argument) { + peg$c425 = function(agrModificator, argument) { return { type: "ReturnStatement", argument: argument, agrModificator: agrModificator != null ? agrModificator[0]: null, agrModificatorType: agrModificator != null ? agrModificator[1]: null, start: location().start.offset, end: location().end.offset }; }, - peg$c415 = function(code) { + peg$c426 = function(code) { return { type: "ThrowStatement", code: code, start: location().start.offset, end: location().end.offset }; }, - peg$c416 = function(id) { + peg$c427 = function(id) { return { type: "PrimitiveStatement", name: id.name, @@ -1057,13 +1082,13 @@ function peg$parse(input, options) { end: location().end.offset } }, - peg$c417 = "@", - peg$c418 = peg$literalExpectation("@", false), - peg$c419 = "(\"", - peg$c420 = peg$literalExpectation("(\"", false), - peg$c421 = "\")", - peg$c422 = peg$literalExpectation("\")", false), - peg$c423 = function(idInterface, id, is, body) { + peg$c428 = "@", + peg$c429 = peg$literalExpectation("@", false), + peg$c430 = "(\"", + peg$c431 = peg$literalExpectation("(\"", false), + peg$c432 = "\")", + peg$c433 = peg$literalExpectation("\")", false), + peg$c434 = function(idInterface, id, is, body) { return { type: "TraitStatement", name: id.name, @@ -1074,7 +1099,7 @@ function peg$parse(input, options) { end: location().end.offset } }, - peg$c424 = function(idInterface, id, is, body) { + peg$c435 = function(idInterface, id, is, body) { return { type: "ContractStatement", name: id.name, @@ -1085,7 +1110,7 @@ function peg$parse(input, options) { end: location().end.offset } }, - peg$c425 = function(code, id, body) { + peg$c436 = function(code, id, body) { return { type: "MessageDeclaration", name: id.name, @@ -1095,7 +1120,7 @@ function peg$parse(input, options) { end: location().end.offset } }, - peg$c426 = function(modifiers) { + peg$c437 = function(modifiers) { return { type: "WithStatement", names: modifiers, @@ -1103,7 +1128,7 @@ function peg$parse(input, options) { end: location().end.offset } }, - peg$c427 = function(is_extends, is_mutates, is_abstract, is_public, fnname, returns, body) { + peg$c438 = function(is_extends, is_mutates, is_abstract, is_public, fnname, returns, body) { return { type: "FunctionDeclaration", idNative: "", @@ -1122,9 +1147,9 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c428 = "@name(", - peg$c429 = peg$literalExpectation("@name(", false), - peg$c430 = function(id_native, is_extends, is_mutates, is_public, fnname, returns) { + peg$c439 = "@name(", + peg$c440 = peg$literalExpectation("@name(", false), + peg$c441 = function(id_native, is_extends, is_mutates, is_public, fnname, returns) { return { type: "FunctionDeclaration", idNative: id_native, @@ -1143,7 +1168,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c431 = function(modifier, fnname, returns, body) { + peg$c442 = function(modifier, fnname, returns, body) { return { type: "FunctionDeclaration", name: fnname.name, @@ -1161,7 +1186,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c432 = function(fnname, returns, body) { + peg$c443 = function(fnname, returns, body) { return { type: "FunctionDeclaration", name: fnname.name, @@ -1178,7 +1203,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c433 = function(params, body) { + peg$c444 = function(params, body) { return { type: "InitDeclaration", params: params != null ? params[2] : [], @@ -1187,7 +1212,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c434 = function(params, body) { + peg$c445 = function(params, body) { return { type: "ReceiveDeclaration", params: params != null ? params[2] : [], @@ -1196,7 +1221,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c435 = function(params, body) { + peg$c446 = function(params, body) { return { type: "ExternalDeclaration", params: params != null ? params[2] : [], @@ -1205,7 +1230,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c436 = function(params, body) { + peg$c447 = function(params, body) { return { type: "OnBounceDeclaration", params: params != null ? params[2] : [], @@ -1214,10 +1239,10 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c437 = function(type) { + peg$c448 = function(type) { return type; }, - peg$c438 = function(returnParams, isoptional) { + peg$c449 = function(returnParams, isoptional) { if (returnParams == null) { return null; } @@ -1230,7 +1255,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c439 = function(id, params) { + peg$c450 = function(id, params) { return { type: "FunctionName", name: id != null ? id.name : null, @@ -1239,7 +1264,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c440 = function(id, params) { + peg$c451 = function(id, params) { return { type: "ModifierName", name: id != null ? id.name : null, @@ -1248,7 +1273,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c441 = function(id, params) { + peg$c452 = function(id, params) { var p = []; if (params != null && params[3] != null) { @@ -1263,7 +1288,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c442 = function(alias, modifier) { + peg$c453 = function(alias, modifier) { if (alias.length > 0) { var mergedAlias = alias.reduce(function(result, item) { return result + item[0].name + item[1]; @@ -1275,7 +1300,7 @@ function peg$parse(input, options) { return modifier; }, - peg$c443 = function(id, type, isoptional) { + peg$c454 = function(id, type, isoptional) { return { type: "InformalParameter", literal: type, @@ -1285,7 +1310,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c444 = function(body) { + peg$c455 = function(body) { return { type: "BlockStatement", body: optionalList(body), @@ -1293,7 +1318,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c445 = function(id, body) { + peg$c456 = function(id, body) { return { type: "StructDeclaration", name: id.name, @@ -1302,7 +1327,7 @@ function peg$parse(input, options) { end: location().end.offset } }, - peg$c446 = function(body) { + peg$c457 = function(body) { return { type: "Program", body: optionalList(body), @@ -1310,7 +1335,7 @@ function peg$parse(input, options) { end: location().end.offset }; }, - peg$c447 = function() { + peg$c458 = function() { return { type: "Identifier", name: "return", @@ -1460,7 +1485,7 @@ function peg$parse(input, options) { function peg$parseStart() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 0, + var key = peg$currPos * 225 + 0, cached = peg$resultsCache[key]; if (cached) { @@ -1500,7 +1525,7 @@ function peg$parse(input, options) { function peg$parseSourceCharacter() { var s0; - var key = peg$currPos * 224 + 1, + var key = peg$currPos * 225 + 1, cached = peg$resultsCache[key]; if (cached) { @@ -1525,7 +1550,7 @@ function peg$parse(input, options) { function peg$parseWhiteSpace() { var s0, s1; - var key = peg$currPos * 224 + 2, + var key = peg$currPos * 225 + 2, cached = peg$resultsCache[key]; if (cached) { @@ -1604,7 +1629,7 @@ function peg$parse(input, options) { function peg$parseLineTerminator() { var s0; - var key = peg$currPos * 224 + 3, + var key = peg$currPos * 225 + 3, cached = peg$resultsCache[key]; if (cached) { @@ -1629,7 +1654,7 @@ function peg$parse(input, options) { function peg$parseLineTerminatorSequence() { var s0, s1; - var key = peg$currPos * 224 + 4, + var key = peg$currPos * 225 + 4, cached = peg$resultsCache[key]; if (cached) { @@ -1696,7 +1721,7 @@ function peg$parse(input, options) { function peg$parseComment() { var s0, s1; - var key = peg$currPos * 224 + 5, + var key = peg$currPos * 225 + 5, cached = peg$resultsCache[key]; if (cached) { @@ -1724,7 +1749,7 @@ function peg$parse(input, options) { function peg$parseMultiLineComment() { var s0, s1, s2, s3, s4, s5; - var key = peg$currPos * 224 + 6, + var key = peg$currPos * 225 + 6, cached = peg$resultsCache[key]; if (cached) { @@ -1838,7 +1863,7 @@ function peg$parse(input, options) { function peg$parseMultiLineCommentNoLineTerminator() { var s0, s1, s2, s3, s4, s5; - var key = peg$currPos * 224 + 7, + var key = peg$currPos * 225 + 7, cached = peg$resultsCache[key]; if (cached) { @@ -1958,7 +1983,7 @@ function peg$parse(input, options) { function peg$parseSingleLineComment() { var s0, s1, s2, s3, s4, s5; - var key = peg$currPos * 224 + 8, + var key = peg$currPos * 225 + 8, cached = peg$resultsCache[key]; if (cached) { @@ -2048,7 +2073,7 @@ function peg$parse(input, options) { function peg$parseIdentifier() { var s0, s1, s2; - var key = peg$currPos * 224 + 9, + var key = peg$currPos * 225 + 9, cached = peg$resultsCache[key]; if (cached) { @@ -2091,7 +2116,7 @@ function peg$parse(input, options) { function peg$parseIdentifierName() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 10, + var key = peg$currPos * 225 + 10, cached = peg$resultsCache[key]; if (cached) { @@ -2136,7 +2161,7 @@ function peg$parse(input, options) { function peg$parseIdentifierStart() { var s0; - var key = peg$currPos * 224 + 11, + var key = peg$currPos * 225 + 11, cached = peg$resultsCache[key]; if (cached) { @@ -2173,7 +2198,7 @@ function peg$parse(input, options) { function peg$parseIdentifierPart() { var s0; - var key = peg$currPos * 224 + 12, + var key = peg$currPos * 225 + 12, cached = peg$resultsCache[key]; if (cached) { @@ -2195,7 +2220,7 @@ function peg$parse(input, options) { function peg$parseUnicodeLetter() { var s0; - var key = peg$currPos * 224 + 13, + var key = peg$currPos * 225 + 13, cached = peg$resultsCache[key]; if (cached) { @@ -2229,7 +2254,7 @@ function peg$parse(input, options) { function peg$parseUnicodeCombiningMark() { var s0; - var key = peg$currPos * 224 + 14, + var key = peg$currPos * 225 + 14, cached = peg$resultsCache[key]; if (cached) { @@ -2251,7 +2276,7 @@ function peg$parse(input, options) { function peg$parseReservedWord() { var s0; - var key = peg$currPos * 224 + 15, + var key = peg$currPos * 225 + 15, cached = peg$resultsCache[key]; if (cached) { @@ -2273,7 +2298,7 @@ function peg$parse(input, options) { function peg$parseKeyword() { var s0; - var key = peg$currPos * 224 + 16, + var key = peg$currPos * 225 + 16, cached = peg$resultsCache[key]; if (cached) { @@ -2346,7 +2371,7 @@ function peg$parse(input, options) { function peg$parseLiteral() { var s0; - var key = peg$currPos * 224 + 17, + var key = peg$currPos * 225 + 17, cached = peg$resultsCache[key]; if (cached) { @@ -2377,7 +2402,7 @@ function peg$parse(input, options) { function peg$parseBooleanLiteral() { var s0, s1; - var key = peg$currPos * 224 + 18, + var key = peg$currPos * 225 + 18, cached = peg$resultsCache[key]; if (cached) { @@ -2411,7 +2436,7 @@ function peg$parse(input, options) { function peg$parseNumericLiteral() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 19, + var key = peg$currPos * 225 + 19, cached = peg$resultsCache[key]; if (cached) { @@ -2493,7 +2518,7 @@ function peg$parse(input, options) { function peg$parseDenomination() { var s0, s1; - var key = peg$currPos * 224 + 20, + var key = peg$currPos * 225 + 20, cached = peg$resultsCache[key]; if (cached) { @@ -2518,7 +2543,7 @@ function peg$parse(input, options) { function peg$parseDenominationLiteral() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 21, + var key = peg$currPos * 225 + 21, cached = peg$resultsCache[key]; if (cached) { @@ -2558,7 +2583,7 @@ function peg$parse(input, options) { function peg$parseDecimalLiteral() { var s0, s1, s2, s3, s4; - var key = peg$currPos * 224 + 22, + var key = peg$currPos * 225 + 22, cached = peg$resultsCache[key]; if (cached) { @@ -2681,7 +2706,7 @@ function peg$parse(input, options) { function peg$parseDecimalIntegerLiteral() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 23, + var key = peg$currPos * 225 + 23, cached = peg$resultsCache[key]; if (cached) { @@ -2728,7 +2753,7 @@ function peg$parse(input, options) { function peg$parseDecimalDigit() { var s0; - var key = peg$currPos * 224 + 24, + var key = peg$currPos * 225 + 24, cached = peg$resultsCache[key]; if (cached) { @@ -2753,7 +2778,7 @@ function peg$parse(input, options) { function peg$parseNonZeroDigit() { var s0; - var key = peg$currPos * 224 + 25, + var key = peg$currPos * 225 + 25, cached = peg$resultsCache[key]; if (cached) { @@ -2778,7 +2803,7 @@ function peg$parse(input, options) { function peg$parseExponentPart() { var s0, s1, s2; - var key = peg$currPos * 224 + 26, + var key = peg$currPos * 225 + 26, cached = peg$resultsCache[key]; if (cached) { @@ -2811,7 +2836,7 @@ function peg$parse(input, options) { function peg$parseExponentIndicator() { var s0; - var key = peg$currPos * 224 + 27, + var key = peg$currPos * 225 + 27, cached = peg$resultsCache[key]; if (cached) { @@ -2836,7 +2861,7 @@ function peg$parse(input, options) { function peg$parseSignedInteger() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 28, + var key = peg$currPos * 225 + 28, cached = peg$resultsCache[key]; if (cached) { @@ -2887,7 +2912,7 @@ function peg$parse(input, options) { function peg$parseHexIntegerLiteral() { var s0, s1, s2, s3, s4; - var key = peg$currPos * 224 + 29, + var key = peg$currPos * 225 + 29, cached = peg$resultsCache[key]; if (cached) { @@ -2942,7 +2967,7 @@ function peg$parse(input, options) { function peg$parseHexDigit() { var s0; - var key = peg$currPos * 224 + 30, + var key = peg$currPos * 225 + 30, cached = peg$resultsCache[key]; if (cached) { @@ -2967,7 +2992,7 @@ function peg$parse(input, options) { function peg$parseStringLiteral() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 31, + var key = peg$currPos * 225 + 31, cached = peg$resultsCache[key]; if (cached) { @@ -3071,7 +3096,7 @@ function peg$parse(input, options) { function peg$parseDoubleStringCharacter() { var s0, s1, s2; - var key = peg$currPos * 224 + 32, + var key = peg$currPos * 225 + 32, cached = peg$resultsCache[key]; if (cached) { @@ -3159,7 +3184,7 @@ function peg$parse(input, options) { function peg$parseSingleStringCharacter() { var s0, s1, s2; - var key = peg$currPos * 224 + 33, + var key = peg$currPos * 225 + 33, cached = peg$resultsCache[key]; if (cached) { @@ -3247,7 +3272,7 @@ function peg$parse(input, options) { function peg$parseLineContinuation() { var s0, s1, s2; - var key = peg$currPos * 224 + 34, + var key = peg$currPos * 225 + 34, cached = peg$resultsCache[key]; if (cached) { @@ -3287,7 +3312,7 @@ function peg$parse(input, options) { function peg$parseEscapeSequence() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 35, + var key = peg$currPos * 225 + 35, cached = peg$resultsCache[key]; if (cached) { @@ -3345,7 +3370,7 @@ function peg$parse(input, options) { function peg$parseCharacterEscapeSequence() { var s0; - var key = peg$currPos * 224 + 36, + var key = peg$currPos * 225 + 36, cached = peg$resultsCache[key]; if (cached) { @@ -3367,7 +3392,7 @@ function peg$parse(input, options) { function peg$parseSingleEscapeCharacter() { var s0, s1; - var key = peg$currPos * 224 + 37, + var key = peg$currPos * 225 + 37, cached = peg$resultsCache[key]; if (cached) { @@ -3384,103 +3409,115 @@ function peg$parse(input, options) { if (peg$silentFails === 0) { peg$fail(peg$c71); } } if (s0 === peg$FAILED) { + s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 34) { - s0 = peg$c67; + s1 = peg$c67; peg$currPos++; } else { - s0 = peg$FAILED; + s1 = peg$FAILED; if (peg$silentFails === 0) { peg$fail(peg$c68); } } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c78(); + } + s0 = s1; if (s0 === peg$FAILED) { + s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 92) { - s0 = peg$c72; + s1 = peg$c72; peg$currPos++; } else { - s0 = peg$FAILED; + s1 = peg$FAILED; if (peg$silentFails === 0) { peg$fail(peg$c73); } } + if (s1 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c79(); + } + s0 = s1; if (s0 === peg$FAILED) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 98) { - s1 = peg$c78; + s1 = peg$c80; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c79); } + if (peg$silentFails === 0) { peg$fail(peg$c81); } } if (s1 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c80(); + s1 = peg$c82(); } s0 = s1; if (s0 === peg$FAILED) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 102) { - s1 = peg$c81; + s1 = peg$c83; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c82); } + if (peg$silentFails === 0) { peg$fail(peg$c84); } } if (s1 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c83(); + s1 = peg$c85(); } s0 = s1; if (s0 === peg$FAILED) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 110) { - s1 = peg$c84; + s1 = peg$c86; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c85); } + if (peg$silentFails === 0) { peg$fail(peg$c87); } } if (s1 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c86(); + s1 = peg$c88(); } s0 = s1; if (s0 === peg$FAILED) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 114) { - s1 = peg$c87; + s1 = peg$c89; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c88); } + if (peg$silentFails === 0) { peg$fail(peg$c90); } } if (s1 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c89(); + s1 = peg$c91(); } s0 = s1; if (s0 === peg$FAILED) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 116) { - s1 = peg$c90; + s1 = peg$c92; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c91); } + if (peg$silentFails === 0) { peg$fail(peg$c93); } } if (s1 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c92(); + s1 = peg$c94(); } s0 = s1; if (s0 === peg$FAILED) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 118) { - s1 = peg$c93; + s1 = peg$c95; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c94); } + if (peg$silentFails === 0) { peg$fail(peg$c96); } } if (s1 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c95(); + s1 = peg$c97(); } s0 = s1; } @@ -3500,7 +3537,7 @@ function peg$parse(input, options) { function peg$parseNonEscapeCharacter() { var s0, s1, s2; - var key = peg$currPos * 224 + 38, + var key = peg$currPos * 225 + 38, cached = peg$resultsCache[key]; if (cached) { @@ -3546,7 +3583,7 @@ function peg$parse(input, options) { function peg$parseEscapeCharacter() { var s0; - var key = peg$currPos * 224 + 39, + var key = peg$currPos * 225 + 39, cached = peg$resultsCache[key]; if (cached) { @@ -3560,19 +3597,19 @@ function peg$parse(input, options) { s0 = peg$parseDecimalDigit(); if (s0 === peg$FAILED) { if (input.charCodeAt(peg$currPos) === 120) { - s0 = peg$c96; + s0 = peg$c98; peg$currPos++; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c97); } + if (peg$silentFails === 0) { peg$fail(peg$c99); } } if (s0 === peg$FAILED) { if (input.charCodeAt(peg$currPos) === 117) { - s0 = peg$c98; + s0 = peg$c100; peg$currPos++; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c99); } + if (peg$silentFails === 0) { peg$fail(peg$c101); } } } } @@ -3586,7 +3623,7 @@ function peg$parse(input, options) { function peg$parseHexEscapeSequence() { var s0, s1, s2, s3, s4, s5; - var key = peg$currPos * 224 + 40, + var key = peg$currPos * 225 + 40, cached = peg$resultsCache[key]; if (cached) { @@ -3597,11 +3634,11 @@ function peg$parse(input, options) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 120) { - s1 = peg$c96; + s1 = peg$c98; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c97); } + if (peg$silentFails === 0) { peg$fail(peg$c99); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -3627,7 +3664,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c100(s2); + s1 = peg$c102(s2); s0 = s1; } else { peg$currPos = s0; @@ -3644,9 +3681,9 @@ function peg$parse(input, options) { } function peg$parseUnicodeEscapeSequence() { - var s0, s1, s2, s3, s4, s5, s6, s7; + var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9; - var key = peg$currPos * 224 + 41, + var key = peg$currPos * 225 + 41, cached = peg$resultsCache[key]; if (cached) { @@ -3657,11 +3694,11 @@ function peg$parse(input, options) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 117) { - s1 = peg$c98; + s1 = peg$c100; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c99); } + if (peg$silentFails === 0) { peg$fail(peg$c101); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -3699,7 +3736,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c100(s2); + s1 = peg$c103(s2); s0 = s1; } else { peg$currPos = s0; @@ -3709,6 +3746,101 @@ function peg$parse(input, options) { peg$currPos = s0; s0 = peg$FAILED; } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + if (input.substr(peg$currPos, 2) === peg$c104) { + s1 = peg$c104; + peg$currPos += 2; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c105); } + } + if (s1 !== peg$FAILED) { + s2 = peg$currPos; + s3 = peg$currPos; + s4 = peg$parseHexDigit(); + if (s4 !== peg$FAILED) { + s5 = peg$parseHexDigit(); + if (s5 === peg$FAILED) { + s5 = null; + } + if (s5 !== peg$FAILED) { + s6 = peg$parseHexDigit(); + if (s6 === peg$FAILED) { + s6 = null; + } + if (s6 !== peg$FAILED) { + s7 = peg$parseHexDigit(); + if (s7 === peg$FAILED) { + s7 = null; + } + if (s7 !== peg$FAILED) { + s8 = peg$parseHexDigit(); + if (s8 === peg$FAILED) { + s8 = null; + } + if (s8 !== peg$FAILED) { + s9 = peg$parseHexDigit(); + if (s9 === peg$FAILED) { + s9 = null; + } + if (s9 !== peg$FAILED) { + s4 = [s4, s5, s6, s7, s8, s9]; + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + if (s3 !== peg$FAILED) { + s2 = input.substring(s2, peg$currPos); + } else { + s2 = s3; + } + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 125) { + s3 = peg$c106; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c107); } + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c108(s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } peg$resultsCache[key] = { nextPos: peg$currPos, result: s0 }; @@ -3718,7 +3850,7 @@ function peg$parse(input, options) { function peg$parseVersionLiteral() { var s0, s1, s2, s3, s4, s5, s6, s7, s8; - var key = peg$currPos * 224 + 42, + var key = peg$currPos * 225 + 42, cached = peg$resultsCache[key]; if (cached) { @@ -3745,11 +3877,11 @@ function peg$parse(input, options) { s2 = peg$parse__(); if (s2 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 118) { - s3 = peg$c93; + s3 = peg$c95; peg$currPos++; } else { s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c94); } + if (peg$silentFails === 0) { peg$fail(peg$c96); } } if (s3 === peg$FAILED) { s3 = null; @@ -3808,7 +3940,7 @@ function peg$parse(input, options) { } if (s6 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c101(s1, s4, s5, s6); + s1 = peg$c109(s1, s4, s5, s6); s0 = s1; } else { peg$currPos = s0; @@ -3843,7 +3975,7 @@ function peg$parse(input, options) { function peg$parseLl() { var s0; - var key = peg$currPos * 224 + 43, + var key = peg$currPos * 225 + 43, cached = peg$resultsCache[key]; if (cached) { @@ -3852,12 +3984,12 @@ function peg$parse(input, options) { return cached.result; } - if (peg$c102.test(input.charAt(peg$currPos))) { + if (peg$c110.test(input.charAt(peg$currPos))) { s0 = input.charAt(peg$currPos); peg$currPos++; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c103); } + if (peg$silentFails === 0) { peg$fail(peg$c111); } } peg$resultsCache[key] = { nextPos: peg$currPos, result: s0 }; @@ -3868,7 +4000,7 @@ function peg$parse(input, options) { function peg$parseLm() { var s0; - var key = peg$currPos * 224 + 44, + var key = peg$currPos * 225 + 44, cached = peg$resultsCache[key]; if (cached) { @@ -3877,12 +4009,12 @@ function peg$parse(input, options) { return cached.result; } - if (peg$c104.test(input.charAt(peg$currPos))) { + if (peg$c112.test(input.charAt(peg$currPos))) { s0 = input.charAt(peg$currPos); peg$currPos++; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c105); } + if (peg$silentFails === 0) { peg$fail(peg$c113); } } peg$resultsCache[key] = { nextPos: peg$currPos, result: s0 }; @@ -3893,7 +4025,7 @@ function peg$parse(input, options) { function peg$parseLo() { var s0; - var key = peg$currPos * 224 + 45, + var key = peg$currPos * 225 + 45, cached = peg$resultsCache[key]; if (cached) { @@ -3902,12 +4034,12 @@ function peg$parse(input, options) { return cached.result; } - if (peg$c106.test(input.charAt(peg$currPos))) { + if (peg$c114.test(input.charAt(peg$currPos))) { s0 = input.charAt(peg$currPos); peg$currPos++; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c107); } + if (peg$silentFails === 0) { peg$fail(peg$c115); } } peg$resultsCache[key] = { nextPos: peg$currPos, result: s0 }; @@ -3918,7 +4050,7 @@ function peg$parse(input, options) { function peg$parseLt() { var s0; - var key = peg$currPos * 224 + 46, + var key = peg$currPos * 225 + 46, cached = peg$resultsCache[key]; if (cached) { @@ -3927,12 +4059,12 @@ function peg$parse(input, options) { return cached.result; } - if (peg$c108.test(input.charAt(peg$currPos))) { + if (peg$c116.test(input.charAt(peg$currPos))) { s0 = input.charAt(peg$currPos); peg$currPos++; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c109); } + if (peg$silentFails === 0) { peg$fail(peg$c117); } } peg$resultsCache[key] = { nextPos: peg$currPos, result: s0 }; @@ -3943,7 +4075,7 @@ function peg$parse(input, options) { function peg$parseLu() { var s0; - var key = peg$currPos * 224 + 47, + var key = peg$currPos * 225 + 47, cached = peg$resultsCache[key]; if (cached) { @@ -3952,12 +4084,12 @@ function peg$parse(input, options) { return cached.result; } - if (peg$c110.test(input.charAt(peg$currPos))) { + if (peg$c118.test(input.charAt(peg$currPos))) { s0 = input.charAt(peg$currPos); peg$currPos++; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c111); } + if (peg$silentFails === 0) { peg$fail(peg$c119); } } peg$resultsCache[key] = { nextPos: peg$currPos, result: s0 }; @@ -3968,7 +4100,7 @@ function peg$parse(input, options) { function peg$parseMc() { var s0; - var key = peg$currPos * 224 + 48, + var key = peg$currPos * 225 + 48, cached = peg$resultsCache[key]; if (cached) { @@ -3977,12 +4109,12 @@ function peg$parse(input, options) { return cached.result; } - if (peg$c112.test(input.charAt(peg$currPos))) { + if (peg$c120.test(input.charAt(peg$currPos))) { s0 = input.charAt(peg$currPos); peg$currPos++; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c113); } + if (peg$silentFails === 0) { peg$fail(peg$c121); } } peg$resultsCache[key] = { nextPos: peg$currPos, result: s0 }; @@ -3993,7 +4125,7 @@ function peg$parse(input, options) { function peg$parseMn() { var s0; - var key = peg$currPos * 224 + 49, + var key = peg$currPos * 225 + 49, cached = peg$resultsCache[key]; if (cached) { @@ -4002,12 +4134,12 @@ function peg$parse(input, options) { return cached.result; } - if (peg$c114.test(input.charAt(peg$currPos))) { + if (peg$c122.test(input.charAt(peg$currPos))) { s0 = input.charAt(peg$currPos); peg$currPos++; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c115); } + if (peg$silentFails === 0) { peg$fail(peg$c123); } } peg$resultsCache[key] = { nextPos: peg$currPos, result: s0 }; @@ -4018,7 +4150,7 @@ function peg$parse(input, options) { function peg$parseNd() { var s0; - var key = peg$currPos * 224 + 50, + var key = peg$currPos * 225 + 50, cached = peg$resultsCache[key]; if (cached) { @@ -4027,12 +4159,12 @@ function peg$parse(input, options) { return cached.result; } - if (peg$c116.test(input.charAt(peg$currPos))) { + if (peg$c124.test(input.charAt(peg$currPos))) { s0 = input.charAt(peg$currPos); peg$currPos++; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c117); } + if (peg$silentFails === 0) { peg$fail(peg$c125); } } peg$resultsCache[key] = { nextPos: peg$currPos, result: s0 }; @@ -4043,7 +4175,7 @@ function peg$parse(input, options) { function peg$parseNl() { var s0; - var key = peg$currPos * 224 + 51, + var key = peg$currPos * 225 + 51, cached = peg$resultsCache[key]; if (cached) { @@ -4052,12 +4184,12 @@ function peg$parse(input, options) { return cached.result; } - if (peg$c118.test(input.charAt(peg$currPos))) { + if (peg$c126.test(input.charAt(peg$currPos))) { s0 = input.charAt(peg$currPos); peg$currPos++; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c119); } + if (peg$silentFails === 0) { peg$fail(peg$c127); } } peg$resultsCache[key] = { nextPos: peg$currPos, result: s0 }; @@ -4068,7 +4200,7 @@ function peg$parse(input, options) { function peg$parsePc() { var s0; - var key = peg$currPos * 224 + 52, + var key = peg$currPos * 225 + 52, cached = peg$resultsCache[key]; if (cached) { @@ -4077,12 +4209,12 @@ function peg$parse(input, options) { return cached.result; } - if (peg$c120.test(input.charAt(peg$currPos))) { + if (peg$c128.test(input.charAt(peg$currPos))) { s0 = input.charAt(peg$currPos); peg$currPos++; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c121); } + if (peg$silentFails === 0) { peg$fail(peg$c129); } } peg$resultsCache[key] = { nextPos: peg$currPos, result: s0 }; @@ -4093,7 +4225,7 @@ function peg$parse(input, options) { function peg$parseZs() { var s0; - var key = peg$currPos * 224 + 53, + var key = peg$currPos * 225 + 53, cached = peg$resultsCache[key]; if (cached) { @@ -4102,12 +4234,12 @@ function peg$parse(input, options) { return cached.result; } - if (peg$c122.test(input.charAt(peg$currPos))) { + if (peg$c130.test(input.charAt(peg$currPos))) { s0 = input.charAt(peg$currPos); peg$currPos++; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c123); } + if (peg$silentFails === 0) { peg$fail(peg$c131); } } peg$resultsCache[key] = { nextPos: peg$currPos, result: s0 }; @@ -4118,7 +4250,7 @@ function peg$parse(input, options) { function peg$parseLetToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 54, + var key = peg$currPos * 225 + 54, cached = peg$resultsCache[key]; if (cached) { @@ -4128,12 +4260,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 3) === peg$c124) { - s1 = peg$c124; + if (input.substr(peg$currPos, 3) === peg$c132) { + s1 = peg$c132; peg$currPos += 3; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c125); } + if (peg$silentFails === 0) { peg$fail(peg$c133); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -4166,7 +4298,7 @@ function peg$parse(input, options) { function peg$parseAsToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 55, + var key = peg$currPos * 225 + 55, cached = peg$resultsCache[key]; if (cached) { @@ -4176,12 +4308,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c126) { - s1 = peg$c126; + if (input.substr(peg$currPos, 2) === peg$c134) { + s1 = peg$c134; peg$currPos += 2; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c127); } + if (peg$silentFails === 0) { peg$fail(peg$c135); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -4214,7 +4346,7 @@ function peg$parse(input, options) { function peg$parseBreakToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 56, + var key = peg$currPos * 225 + 56, cached = peg$resultsCache[key]; if (cached) { @@ -4224,12 +4356,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 5) === peg$c128) { - s1 = peg$c128; + if (input.substr(peg$currPos, 5) === peg$c136) { + s1 = peg$c136; peg$currPos += 5; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c129); } + if (peg$silentFails === 0) { peg$fail(peg$c137); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -4262,7 +4394,7 @@ function peg$parse(input, options) { function peg$parseConstantToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 57, + var key = peg$currPos * 225 + 57, cached = peg$resultsCache[key]; if (cached) { @@ -4272,12 +4404,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 5) === peg$c130) { - s1 = peg$c130; + if (input.substr(peg$currPos, 5) === peg$c138) { + s1 = peg$c138; peg$currPos += 5; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c131); } + if (peg$silentFails === 0) { peg$fail(peg$c139); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -4310,7 +4442,7 @@ function peg$parse(input, options) { function peg$parseContinueToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 58, + var key = peg$currPos * 225 + 58, cached = peg$resultsCache[key]; if (cached) { @@ -4320,12 +4452,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 8) === peg$c132) { - s1 = peg$c132; + if (input.substr(peg$currPos, 8) === peg$c140) { + s1 = peg$c140; peg$currPos += 8; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c133); } + if (peg$silentFails === 0) { peg$fail(peg$c141); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -4358,7 +4490,7 @@ function peg$parse(input, options) { function peg$parseInitOfToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 59, + var key = peg$currPos * 225 + 59, cached = peg$resultsCache[key]; if (cached) { @@ -4368,12 +4500,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 6) === peg$c134) { - s1 = peg$c134; + if (input.substr(peg$currPos, 6) === peg$c142) { + s1 = peg$c142; peg$currPos += 6; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c135); } + if (peg$silentFails === 0) { peg$fail(peg$c143); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -4406,7 +4538,7 @@ function peg$parse(input, options) { function peg$parseContractToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 60, + var key = peg$currPos * 225 + 60, cached = peg$resultsCache[key]; if (cached) { @@ -4416,12 +4548,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 8) === peg$c136) { - s1 = peg$c136; + if (input.substr(peg$currPos, 8) === peg$c144) { + s1 = peg$c144; peg$currPos += 8; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c137); } + if (peg$silentFails === 0) { peg$fail(peg$c145); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -4454,7 +4586,7 @@ function peg$parse(input, options) { function peg$parseInitToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 61, + var key = peg$currPos * 225 + 61, cached = peg$resultsCache[key]; if (cached) { @@ -4464,12 +4596,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 4) === peg$c138) { - s1 = peg$c138; + if (input.substr(peg$currPos, 4) === peg$c146) { + s1 = peg$c146; peg$currPos += 4; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c139); } + if (peg$silentFails === 0) { peg$fail(peg$c147); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -4502,7 +4634,7 @@ function peg$parse(input, options) { function peg$parseReceiveToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 62, + var key = peg$currPos * 225 + 62, cached = peg$resultsCache[key]; if (cached) { @@ -4512,12 +4644,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 7) === peg$c140) { - s1 = peg$c140; + if (input.substr(peg$currPos, 7) === peg$c148) { + s1 = peg$c148; peg$currPos += 7; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c141); } + if (peg$silentFails === 0) { peg$fail(peg$c149); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -4550,7 +4682,7 @@ function peg$parse(input, options) { function peg$parseExternalToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 63, + var key = peg$currPos * 225 + 63, cached = peg$resultsCache[key]; if (cached) { @@ -4560,12 +4692,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 8) === peg$c142) { - s1 = peg$c142; + if (input.substr(peg$currPos, 8) === peg$c150) { + s1 = peg$c150; peg$currPos += 8; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c143); } + if (peg$silentFails === 0) { peg$fail(peg$c151); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -4598,7 +4730,7 @@ function peg$parse(input, options) { function peg$parseOnBounceToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 64, + var key = peg$currPos * 225 + 64, cached = peg$resultsCache[key]; if (cached) { @@ -4608,12 +4740,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 7) === peg$c144) { - s1 = peg$c144; + if (input.substr(peg$currPos, 7) === peg$c152) { + s1 = peg$c152; peg$currPos += 7; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c145); } + if (peg$silentFails === 0) { peg$fail(peg$c153); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -4646,7 +4778,7 @@ function peg$parse(input, options) { function peg$parseDeleteToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 65, + var key = peg$currPos * 225 + 65, cached = peg$resultsCache[key]; if (cached) { @@ -4656,12 +4788,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 6) === peg$c146) { - s1 = peg$c146; + if (input.substr(peg$currPos, 6) === peg$c154) { + s1 = peg$c154; peg$currPos += 6; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c147); } + if (peg$silentFails === 0) { peg$fail(peg$c155); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -4694,7 +4826,7 @@ function peg$parse(input, options) { function peg$parseDoToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 66, + var key = peg$currPos * 225 + 66, cached = peg$resultsCache[key]; if (cached) { @@ -4704,12 +4836,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c148) { - s1 = peg$c148; + if (input.substr(peg$currPos, 2) === peg$c156) { + s1 = peg$c156; peg$currPos += 2; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c149); } + if (peg$silentFails === 0) { peg$fail(peg$c157); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -4742,7 +4874,7 @@ function peg$parse(input, options) { function peg$parseElseToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 67, + var key = peg$currPos * 225 + 67, cached = peg$resultsCache[key]; if (cached) { @@ -4752,12 +4884,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 4) === peg$c150) { - s1 = peg$c150; + if (input.substr(peg$currPos, 4) === peg$c158) { + s1 = peg$c158; peg$currPos += 4; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c151); } + if (peg$silentFails === 0) { peg$fail(peg$c159); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -4790,7 +4922,7 @@ function peg$parse(input, options) { function peg$parseFalseToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 68, + var key = peg$currPos * 225 + 68, cached = peg$resultsCache[key]; if (cached) { @@ -4800,12 +4932,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 5) === peg$c152) { - s1 = peg$c152; + if (input.substr(peg$currPos, 5) === peg$c160) { + s1 = peg$c160; peg$currPos += 5; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c153); } + if (peg$silentFails === 0) { peg$fail(peg$c161); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -4838,7 +4970,7 @@ function peg$parse(input, options) { function peg$parseRepeatToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 69, + var key = peg$currPos * 225 + 69, cached = peg$resultsCache[key]; if (cached) { @@ -4848,12 +4980,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 6) === peg$c154) { - s1 = peg$c154; + if (input.substr(peg$currPos, 6) === peg$c162) { + s1 = peg$c162; peg$currPos += 6; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c155); } + if (peg$silentFails === 0) { peg$fail(peg$c163); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -4886,7 +5018,7 @@ function peg$parse(input, options) { function peg$parseFromToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 70, + var key = peg$currPos * 225 + 70, cached = peg$resultsCache[key]; if (cached) { @@ -4896,12 +5028,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 4) === peg$c156) { - s1 = peg$c156; + if (input.substr(peg$currPos, 4) === peg$c164) { + s1 = peg$c164; peg$currPos += 4; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c157); } + if (peg$silentFails === 0) { peg$fail(peg$c165); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -4934,7 +5066,7 @@ function peg$parse(input, options) { function peg$parseFunctionToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 71, + var key = peg$currPos * 225 + 71, cached = peg$resultsCache[key]; if (cached) { @@ -4944,12 +5076,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 3) === peg$c158) { - s1 = peg$c158; + if (input.substr(peg$currPos, 3) === peg$c166) { + s1 = peg$c166; peg$currPos += 3; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c159); } + if (peg$silentFails === 0) { peg$fail(peg$c167); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -4982,7 +5114,7 @@ function peg$parse(input, options) { function peg$parseNativeToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 72, + var key = peg$currPos * 225 + 72, cached = peg$resultsCache[key]; if (cached) { @@ -4992,12 +5124,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 6) === peg$c160) { - s1 = peg$c160; + if (input.substr(peg$currPos, 6) === peg$c168) { + s1 = peg$c168; peg$currPos += 6; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c161); } + if (peg$silentFails === 0) { peg$fail(peg$c169); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -5030,7 +5162,7 @@ function peg$parse(input, options) { function peg$parseIfToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 73, + var key = peg$currPos * 225 + 73, cached = peg$resultsCache[key]; if (cached) { @@ -5040,12 +5172,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c162) { - s1 = peg$c162; + if (input.substr(peg$currPos, 2) === peg$c170) { + s1 = peg$c170; peg$currPos += 2; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c163); } + if (peg$silentFails === 0) { peg$fail(peg$c171); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -5078,7 +5210,7 @@ function peg$parse(input, options) { function peg$parseTryToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 74, + var key = peg$currPos * 225 + 74, cached = peg$resultsCache[key]; if (cached) { @@ -5088,12 +5220,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 3) === peg$c164) { - s1 = peg$c164; + if (input.substr(peg$currPos, 3) === peg$c172) { + s1 = peg$c172; peg$currPos += 3; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c165); } + if (peg$silentFails === 0) { peg$fail(peg$c173); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -5126,7 +5258,7 @@ function peg$parse(input, options) { function peg$parseCatchToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 75, + var key = peg$currPos * 225 + 75, cached = peg$resultsCache[key]; if (cached) { @@ -5136,12 +5268,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 5) === peg$c166) { - s1 = peg$c166; + if (input.substr(peg$currPos, 5) === peg$c174) { + s1 = peg$c174; peg$currPos += 5; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c167); } + if (peg$silentFails === 0) { peg$fail(peg$c175); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -5174,7 +5306,7 @@ function peg$parse(input, options) { function peg$parseWithToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 76, + var key = peg$currPos * 225 + 76, cached = peg$resultsCache[key]; if (cached) { @@ -5184,12 +5316,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 4) === peg$c168) { - s1 = peg$c168; + if (input.substr(peg$currPos, 4) === peg$c176) { + s1 = peg$c176; peg$currPos += 4; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c169); } + if (peg$silentFails === 0) { peg$fail(peg$c177); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -5222,7 +5354,7 @@ function peg$parse(input, options) { function peg$parseImportToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 77, + var key = peg$currPos * 225 + 77, cached = peg$resultsCache[key]; if (cached) { @@ -5232,12 +5364,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 6) === peg$c170) { - s1 = peg$c170; + if (input.substr(peg$currPos, 6) === peg$c178) { + s1 = peg$c178; peg$currPos += 6; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c171); } + if (peg$silentFails === 0) { peg$fail(peg$c179); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -5270,7 +5402,7 @@ function peg$parse(input, options) { function peg$parseInterfaceToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 78, + var key = peg$currPos * 225 + 78, cached = peg$resultsCache[key]; if (cached) { @@ -5280,12 +5412,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 9) === peg$c172) { - s1 = peg$c172; + if (input.substr(peg$currPos, 9) === peg$c180) { + s1 = peg$c180; peg$currPos += 9; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c173); } + if (peg$silentFails === 0) { peg$fail(peg$c181); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -5318,7 +5450,7 @@ function peg$parse(input, options) { function peg$parseMessageToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 79, + var key = peg$currPos * 225 + 79, cached = peg$resultsCache[key]; if (cached) { @@ -5328,12 +5460,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 7) === peg$c174) { - s1 = peg$c174; + if (input.substr(peg$currPos, 7) === peg$c182) { + s1 = peg$c182; peg$currPos += 7; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c175); } + if (peg$silentFails === 0) { peg$fail(peg$c183); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -5366,7 +5498,7 @@ function peg$parse(input, options) { function peg$parseMappingToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 80, + var key = peg$currPos * 225 + 80, cached = peg$resultsCache[key]; if (cached) { @@ -5376,12 +5508,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 3) === peg$c176) { - s1 = peg$c176; + if (input.substr(peg$currPos, 3) === peg$c184) { + s1 = peg$c184; peg$currPos += 3; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c177); } + if (peg$silentFails === 0) { peg$fail(peg$c185); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -5414,7 +5546,7 @@ function peg$parse(input, options) { function peg$parseNewToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 81, + var key = peg$currPos * 225 + 81, cached = peg$resultsCache[key]; if (cached) { @@ -5424,12 +5556,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 3) === peg$c178) { - s1 = peg$c178; + if (input.substr(peg$currPos, 3) === peg$c186) { + s1 = peg$c186; peg$currPos += 3; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c179); } + if (peg$silentFails === 0) { peg$fail(peg$c187); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -5462,7 +5594,7 @@ function peg$parse(input, options) { function peg$parseNullToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 82, + var key = peg$currPos * 225 + 82, cached = peg$resultsCache[key]; if (cached) { @@ -5472,12 +5604,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 4) === peg$c180) { - s1 = peg$c180; + if (input.substr(peg$currPos, 4) === peg$c188) { + s1 = peg$c188; peg$currPos += 4; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c181); } + if (peg$silentFails === 0) { peg$fail(peg$c189); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -5510,7 +5642,7 @@ function peg$parse(input, options) { function peg$parseReturnToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 83, + var key = peg$currPos * 225 + 83, cached = peg$resultsCache[key]; if (cached) { @@ -5520,12 +5652,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 6) === peg$c182) { - s1 = peg$c182; + if (input.substr(peg$currPos, 6) === peg$c190) { + s1 = peg$c190; peg$currPos += 6; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c183); } + if (peg$silentFails === 0) { peg$fail(peg$c191); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -5558,7 +5690,7 @@ function peg$parse(input, options) { function peg$parseStructToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 84, + var key = peg$currPos * 225 + 84, cached = peg$resultsCache[key]; if (cached) { @@ -5568,12 +5700,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 6) === peg$c184) { - s1 = peg$c184; + if (input.substr(peg$currPos, 6) === peg$c192) { + s1 = peg$c192; peg$currPos += 6; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c185); } + if (peg$silentFails === 0) { peg$fail(peg$c193); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -5606,7 +5738,7 @@ function peg$parse(input, options) { function peg$parseSuperToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 85, + var key = peg$currPos * 225 + 85, cached = peg$resultsCache[key]; if (cached) { @@ -5616,12 +5748,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 5) === peg$c186) { - s1 = peg$c186; + if (input.substr(peg$currPos, 5) === peg$c194) { + s1 = peg$c194; peg$currPos += 5; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c187); } + if (peg$silentFails === 0) { peg$fail(peg$c195); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -5654,7 +5786,7 @@ function peg$parse(input, options) { function peg$parseThisToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 86, + var key = peg$currPos * 225 + 86, cached = peg$resultsCache[key]; if (cached) { @@ -5664,12 +5796,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 4) === peg$c188) { - s1 = peg$c188; + if (input.substr(peg$currPos, 4) === peg$c196) { + s1 = peg$c196; peg$currPos += 4; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c189); } + if (peg$silentFails === 0) { peg$fail(peg$c197); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -5702,7 +5834,7 @@ function peg$parse(input, options) { function peg$parseThrowToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 87, + var key = peg$currPos * 225 + 87, cached = peg$resultsCache[key]; if (cached) { @@ -5712,12 +5844,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 5) === peg$c190) { - s1 = peg$c190; + if (input.substr(peg$currPos, 5) === peg$c198) { + s1 = peg$c198; peg$currPos += 5; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c191); } + if (peg$silentFails === 0) { peg$fail(peg$c199); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -5750,7 +5882,7 @@ function peg$parse(input, options) { function peg$parseTrueToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 88, + var key = peg$currPos * 225 + 88, cached = peg$resultsCache[key]; if (cached) { @@ -5760,12 +5892,60 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 4) === peg$c192) { - s1 = peg$c192; + if (input.substr(peg$currPos, 4) === peg$c200) { + s1 = peg$c200; peg$currPos += 4; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c193); } + if (peg$silentFails === 0) { peg$fail(peg$c201); } + } + if (s1 !== peg$FAILED) { + s2 = peg$currPos; + peg$silentFails++; + s3 = peg$parseIdentifierPart(); + peg$silentFails--; + if (s3 === peg$FAILED) { + s2 = void 0; + } else { + peg$currPos = s2; + s2 = peg$FAILED; + } + if (s2 !== peg$FAILED) { + s1 = [s1, s2]; + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + + peg$resultsCache[key] = { nextPos: peg$currPos, result: s0 }; + + return s0; + } + + function peg$parseTonToken() { + var s0, s1, s2, s3; + + var key = peg$currPos * 225 + 89, + cached = peg$resultsCache[key]; + + if (cached) { + peg$currPos = cached.nextPos; + + return cached.result; + } + + s0 = peg$currPos; + if (input.substr(peg$currPos, 3) === peg$c202) { + s1 = peg$c202; + peg$currPos += 3; + } else { + s1 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c203); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -5795,10 +5975,10 @@ function peg$parse(input, options) { return s0; } - function peg$parseTonToken() { + function peg$parseWhileToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 89, + var key = peg$currPos * 225 + 90, cached = peg$resultsCache[key]; if (cached) { @@ -5808,12 +5988,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 3) === peg$c194) { - s1 = peg$c194; - peg$currPos += 3; + if (input.substr(peg$currPos, 5) === peg$c204) { + s1 = peg$c204; + peg$currPos += 5; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c195); } + if (peg$silentFails === 0) { peg$fail(peg$c205); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -5843,10 +6023,10 @@ function peg$parse(input, options) { return s0; } - function peg$parseWhileToken() { + function peg$parseForeachToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 90, + var key = peg$currPos * 225 + 91, cached = peg$resultsCache[key]; if (cached) { @@ -5856,12 +6036,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 5) === peg$c196) { - s1 = peg$c196; - peg$currPos += 5; + if (input.substr(peg$currPos, 7) === peg$c206) { + s1 = peg$c206; + peg$currPos += 7; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c197); } + if (peg$silentFails === 0) { peg$fail(peg$c207); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -5894,7 +6074,7 @@ function peg$parse(input, options) { function peg$parseUntilToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 91, + var key = peg$currPos * 225 + 92, cached = peg$resultsCache[key]; if (cached) { @@ -5904,12 +6084,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 5) === peg$c198) { - s1 = peg$c198; + if (input.substr(peg$currPos, 5) === peg$c208) { + s1 = peg$c208; peg$currPos += 5; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c199); } + if (peg$silentFails === 0) { peg$fail(peg$c209); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -5942,7 +6122,7 @@ function peg$parse(input, options) { function peg$parseContextToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 92, + var key = peg$currPos * 225 + 93, cached = peg$resultsCache[key]; if (cached) { @@ -5952,12 +6132,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 7) === peg$c200) { - s1 = peg$c200; + if (input.substr(peg$currPos, 7) === peg$c210) { + s1 = peg$c210; peg$currPos += 7; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c201); } + if (peg$silentFails === 0) { peg$fail(peg$c211); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -5990,7 +6170,7 @@ function peg$parse(input, options) { function peg$parseIntToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 93, + var key = peg$currPos * 225 + 94, cached = peg$resultsCache[key]; if (cached) { @@ -6000,12 +6180,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 3) === peg$c202) { - s1 = peg$c202; + if (input.substr(peg$currPos, 3) === peg$c212) { + s1 = peg$c212; peg$currPos += 3; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c203); } + if (peg$silentFails === 0) { peg$fail(peg$c213); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -6038,7 +6218,7 @@ function peg$parse(input, options) { function peg$parseBoolToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 94, + var key = peg$currPos * 225 + 95, cached = peg$resultsCache[key]; if (cached) { @@ -6048,12 +6228,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 4) === peg$c204) { - s1 = peg$c204; + if (input.substr(peg$currPos, 4) === peg$c214) { + s1 = peg$c214; peg$currPos += 4; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c205); } + if (peg$silentFails === 0) { peg$fail(peg$c215); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -6086,7 +6266,7 @@ function peg$parse(input, options) { function peg$parseBuilderToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 95, + var key = peg$currPos * 225 + 96, cached = peg$resultsCache[key]; if (cached) { @@ -6096,12 +6276,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 7) === peg$c206) { - s1 = peg$c206; + if (input.substr(peg$currPos, 7) === peg$c216) { + s1 = peg$c216; peg$currPos += 7; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c207); } + if (peg$silentFails === 0) { peg$fail(peg$c217); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -6134,7 +6314,7 @@ function peg$parse(input, options) { function peg$parseSliceToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 96, + var key = peg$currPos * 225 + 97, cached = peg$resultsCache[key]; if (cached) { @@ -6144,12 +6324,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 5) === peg$c208) { - s1 = peg$c208; + if (input.substr(peg$currPos, 5) === peg$c218) { + s1 = peg$c218; peg$currPos += 5; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c209); } + if (peg$silentFails === 0) { peg$fail(peg$c219); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -6182,7 +6362,7 @@ function peg$parse(input, options) { function peg$parseCellToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 97, + var key = peg$currPos * 225 + 98, cached = peg$resultsCache[key]; if (cached) { @@ -6192,12 +6372,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 4) === peg$c210) { - s1 = peg$c210; + if (input.substr(peg$currPos, 4) === peg$c220) { + s1 = peg$c220; peg$currPos += 4; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c211); } + if (peg$silentFails === 0) { peg$fail(peg$c221); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -6230,7 +6410,7 @@ function peg$parse(input, options) { function peg$parseAddressToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 98, + var key = peg$currPos * 225 + 99, cached = peg$resultsCache[key]; if (cached) { @@ -6240,12 +6420,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 7) === peg$c212) { - s1 = peg$c212; + if (input.substr(peg$currPos, 7) === peg$c222) { + s1 = peg$c222; peg$currPos += 7; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c213); } + if (peg$silentFails === 0) { peg$fail(peg$c223); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -6278,7 +6458,7 @@ function peg$parse(input, options) { function peg$parseStringToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 99, + var key = peg$currPos * 225 + 100, cached = peg$resultsCache[key]; if (cached) { @@ -6288,12 +6468,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 6) === peg$c214) { - s1 = peg$c214; + if (input.substr(peg$currPos, 6) === peg$c224) { + s1 = peg$c224; peg$currPos += 6; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c215); } + if (peg$silentFails === 0) { peg$fail(peg$c225); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -6326,7 +6506,7 @@ function peg$parse(input, options) { function peg$parseStringBuilderToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 100, + var key = peg$currPos * 225 + 101, cached = peg$resultsCache[key]; if (cached) { @@ -6336,12 +6516,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 13) === peg$c216) { - s1 = peg$c216; + if (input.substr(peg$currPos, 13) === peg$c226) { + s1 = peg$c226; peg$currPos += 13; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c217); } + if (peg$silentFails === 0) { peg$fail(peg$c227); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -6374,7 +6554,7 @@ function peg$parse(input, options) { function peg$parseStateInitToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 101, + var key = peg$currPos * 225 + 102, cached = peg$resultsCache[key]; if (cached) { @@ -6384,12 +6564,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 9) === peg$c218) { - s1 = peg$c218; + if (input.substr(peg$currPos, 9) === peg$c228) { + s1 = peg$c228; peg$currPos += 9; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c219); } + if (peg$silentFails === 0) { peg$fail(peg$c229); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -6422,7 +6602,7 @@ function peg$parse(input, options) { function peg$parsePrimitiveToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 102, + var key = peg$currPos * 225 + 103, cached = peg$resultsCache[key]; if (cached) { @@ -6432,12 +6612,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 9) === peg$c220) { - s1 = peg$c220; + if (input.substr(peg$currPos, 9) === peg$c230) { + s1 = peg$c230; peg$currPos += 9; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c221); } + if (peg$silentFails === 0) { peg$fail(peg$c231); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -6470,7 +6650,7 @@ function peg$parse(input, options) { function peg$parseTraitToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 103, + var key = peg$currPos * 225 + 104, cached = peg$resultsCache[key]; if (cached) { @@ -6480,12 +6660,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 5) === peg$c222) { - s1 = peg$c222; + if (input.substr(peg$currPos, 5) === peg$c232) { + s1 = peg$c232; peg$currPos += 5; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c223); } + if (peg$silentFails === 0) { peg$fail(peg$c233); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -6518,7 +6698,7 @@ function peg$parse(input, options) { function peg$parseGetToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 104, + var key = peg$currPos * 225 + 105, cached = peg$resultsCache[key]; if (cached) { @@ -6528,12 +6708,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 3) === peg$c224) { - s1 = peg$c224; + if (input.substr(peg$currPos, 3) === peg$c234) { + s1 = peg$c234; peg$currPos += 3; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c225); } + if (peg$silentFails === 0) { peg$fail(peg$c235); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -6566,7 +6746,7 @@ function peg$parse(input, options) { function peg$parseOverrideToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 105, + var key = peg$currPos * 225 + 106, cached = peg$resultsCache[key]; if (cached) { @@ -6576,12 +6756,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 8) === peg$c226) { - s1 = peg$c226; + if (input.substr(peg$currPos, 8) === peg$c236) { + s1 = peg$c236; peg$currPos += 8; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c227); } + if (peg$silentFails === 0) { peg$fail(peg$c237); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -6614,7 +6794,7 @@ function peg$parse(input, options) { function peg$parseInlineToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 106, + var key = peg$currPos * 225 + 107, cached = peg$resultsCache[key]; if (cached) { @@ -6624,12 +6804,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 6) === peg$c228) { - s1 = peg$c228; + if (input.substr(peg$currPos, 6) === peg$c238) { + s1 = peg$c238; peg$currPos += 6; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c229); } + if (peg$silentFails === 0) { peg$fail(peg$c239); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -6662,7 +6842,7 @@ function peg$parse(input, options) { function peg$parseVirtualToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 107, + var key = peg$currPos * 225 + 108, cached = peg$resultsCache[key]; if (cached) { @@ -6672,12 +6852,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 7) === peg$c230) { - s1 = peg$c230; + if (input.substr(peg$currPos, 7) === peg$c240) { + s1 = peg$c240; peg$currPos += 7; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c231); } + if (peg$silentFails === 0) { peg$fail(peg$c241); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -6710,7 +6890,7 @@ function peg$parse(input, options) { function peg$parseAbstractToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 108, + var key = peg$currPos * 225 + 109, cached = peg$resultsCache[key]; if (cached) { @@ -6720,12 +6900,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 8) === peg$c232) { - s1 = peg$c232; + if (input.substr(peg$currPos, 8) === peg$c242) { + s1 = peg$c242; peg$currPos += 8; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c233); } + if (peg$silentFails === 0) { peg$fail(peg$c243); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -6758,7 +6938,7 @@ function peg$parse(input, options) { function peg$parseExtendsToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 109, + var key = peg$currPos * 225 + 110, cached = peg$resultsCache[key]; if (cached) { @@ -6768,12 +6948,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 7) === peg$c234) { - s1 = peg$c234; + if (input.substr(peg$currPos, 7) === peg$c244) { + s1 = peg$c244; peg$currPos += 7; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c235); } + if (peg$silentFails === 0) { peg$fail(peg$c245); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -6806,7 +6986,7 @@ function peg$parse(input, options) { function peg$parseMutatesToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 110, + var key = peg$currPos * 225 + 111, cached = peg$resultsCache[key]; if (cached) { @@ -6816,12 +6996,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 7) === peg$c236) { - s1 = peg$c236; + if (input.substr(peg$currPos, 7) === peg$c246) { + s1 = peg$c246; peg$currPos += 7; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c237); } + if (peg$silentFails === 0) { peg$fail(peg$c247); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -6854,7 +7034,7 @@ function peg$parse(input, options) { function peg$parsePublicToken() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 111, + var key = peg$currPos * 225 + 112, cached = peg$resultsCache[key]; if (cached) { @@ -6864,12 +7044,12 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 6) === peg$c238) { - s1 = peg$c238; + if (input.substr(peg$currPos, 6) === peg$c248) { + s1 = peg$c248; peg$currPos += 6; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c239); } + if (peg$silentFails === 0) { peg$fail(peg$c249); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; @@ -6902,7 +7082,7 @@ function peg$parse(input, options) { function peg$parse__() { var s0, s1; - var key = peg$currPos * 224 + 112, + var key = peg$currPos * 225 + 113, cached = peg$resultsCache[key]; if (cached) { @@ -6938,7 +7118,7 @@ function peg$parse(input, options) { function peg$parse_() { var s0, s1; - var key = peg$currPos * 224 + 113, + var key = peg$currPos * 225 + 114, cached = peg$resultsCache[key]; if (cached) { @@ -6968,7 +7148,7 @@ function peg$parse(input, options) { function peg$parseEOS() { var s0, s1, s2; - var key = peg$currPos * 224 + 114, + var key = peg$currPos * 225 + 115, cached = peg$resultsCache[key]; if (cached) { @@ -6981,11 +7161,11 @@ function peg$parse(input, options) { s1 = peg$parse__(); if (s1 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 59) { - s2 = peg$c240; + s2 = peg$c250; peg$currPos++; } else { s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c241); } + if (peg$silentFails === 0) { peg$fail(peg$c251); } } if (s2 !== peg$FAILED) { s1 = [s1, s2]; @@ -7007,7 +7187,7 @@ function peg$parse(input, options) { function peg$parseEOF() { var s0, s1; - var key = peg$currPos * 224 + 115, + var key = peg$currPos * 225 + 116, cached = peg$resultsCache[key]; if (cached) { @@ -7041,7 +7221,7 @@ function peg$parse(input, options) { function peg$parseComma() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 116, + var key = peg$currPos * 225 + 117, cached = peg$resultsCache[key]; if (cached) { @@ -7054,11 +7234,11 @@ function peg$parse(input, options) { s1 = peg$parse__(); if (s1 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 44) { - s2 = peg$c242; + s2 = peg$c252; peg$currPos++; } else { s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s2 !== peg$FAILED) { s3 = peg$parse__(); @@ -7086,7 +7266,7 @@ function peg$parse(input, options) { function peg$parsePrimaryExpression() { var s0, s1, s2, s3, s4, s5; - var key = peg$currPos * 224 + 117, + var key = peg$currPos * 225 + 118, cached = peg$resultsCache[key]; if (cached) { @@ -7099,7 +7279,7 @@ function peg$parse(input, options) { s1 = peg$parseThisToken(); if (s1 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c244(); + s1 = peg$c254(); } s0 = s1; if (s0 === peg$FAILED) { @@ -7111,11 +7291,11 @@ function peg$parse(input, options) { if (s0 === peg$FAILED) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 40) { - s1 = peg$c245; + s1 = peg$c255; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c246); } + if (peg$silentFails === 0) { peg$fail(peg$c256); } } if (s1 !== peg$FAILED) { s2 = peg$parse__(); @@ -7125,15 +7305,15 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 41) { - s5 = peg$c247; + s5 = peg$c257; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c248); } + if (peg$silentFails === 0) { peg$fail(peg$c258); } } if (s5 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c249(s3); + s1 = peg$c259(s3); s0 = s1; } else { peg$currPos = s0; @@ -7168,7 +7348,7 @@ function peg$parse(input, options) { function peg$parseArrayLiteral() { var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9; - var key = peg$currPos * 224 + 118, + var key = peg$currPos * 225 + 119, cached = peg$resultsCache[key]; if (cached) { @@ -7179,11 +7359,11 @@ function peg$parse(input, options) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 91) { - s1 = peg$c250; + s1 = peg$c260; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c251); } + if (peg$silentFails === 0) { peg$fail(peg$c261); } } if (s1 !== peg$FAILED) { s2 = peg$parse__(); @@ -7208,15 +7388,15 @@ function peg$parse(input, options) { } if (s3 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 93) { - s4 = peg$c252; + s4 = peg$c262; peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c253); } + if (peg$silentFails === 0) { peg$fail(peg$c263); } } if (s4 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c254(s3); + s1 = peg$c264(s3); s0 = s1; } else { peg$currPos = s0; @@ -7237,11 +7417,11 @@ function peg$parse(input, options) { if (s0 === peg$FAILED) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 91) { - s1 = peg$c250; + s1 = peg$c260; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c251); } + if (peg$silentFails === 0) { peg$fail(peg$c261); } } if (s1 !== peg$FAILED) { s2 = peg$parse__(); @@ -7251,15 +7431,15 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 93) { - s5 = peg$c252; + s5 = peg$c262; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c253); } + if (peg$silentFails === 0) { peg$fail(peg$c263); } } if (s5 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c255(s3); + s1 = peg$c265(s3); s0 = s1; } else { peg$currPos = s0; @@ -7284,11 +7464,11 @@ function peg$parse(input, options) { if (s0 === peg$FAILED) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 91) { - s1 = peg$c250; + s1 = peg$c260; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c251); } + if (peg$silentFails === 0) { peg$fail(peg$c261); } } if (s1 !== peg$FAILED) { s2 = peg$parse__(); @@ -7298,11 +7478,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 44) { - s5 = peg$c242; + s5 = peg$c252; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -7327,15 +7507,15 @@ function peg$parse(input, options) { } if (s7 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 93) { - s8 = peg$c252; + s8 = peg$c262; peg$currPos++; } else { s8 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c253); } + if (peg$silentFails === 0) { peg$fail(peg$c263); } } if (s8 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c256(s3, s7); + s1 = peg$c266(s3, s7); s0 = s1; } else { peg$currPos = s0; @@ -7380,7 +7560,7 @@ function peg$parse(input, options) { function peg$parseElementList() { var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9; - var key = peg$currPos * 224 + 119, + var key = peg$currPos * 225 + 120, cached = peg$resultsCache[key]; if (cached) { @@ -7413,7 +7593,7 @@ function peg$parse(input, options) { s3 = peg$parseAssignmentExpression(); if (s3 !== peg$FAILED) { peg$savedPos = s1; - s2 = peg$c257(s2, s3); + s2 = peg$c267(s2, s3); s1 = s2; } else { peg$currPos = s1; @@ -7429,11 +7609,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 44) { - s5 = peg$c242; + s5 = peg$c252; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -7460,7 +7640,7 @@ function peg$parse(input, options) { s8 = peg$parseAssignmentExpression(); if (s8 !== peg$FAILED) { peg$savedPos = s3; - s4 = peg$c258(s1, s7, s8); + s4 = peg$c268(s1, s7, s8); s3 = s4; } else { peg$currPos = s3; @@ -7488,11 +7668,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 44) { - s5 = peg$c242; + s5 = peg$c252; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -7519,7 +7699,7 @@ function peg$parse(input, options) { s8 = peg$parseAssignmentExpression(); if (s8 !== peg$FAILED) { peg$savedPos = s3; - s4 = peg$c258(s1, s7, s8); + s4 = peg$c268(s1, s7, s8); s3 = s4; } else { peg$currPos = s3; @@ -7544,7 +7724,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c259(s1, s2); + s1 = peg$c269(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -7563,7 +7743,7 @@ function peg$parse(input, options) { function peg$parseElision() { var s0, s1, s2, s3, s4, s5; - var key = peg$currPos * 224 + 120, + var key = peg$currPos * 225 + 121, cached = peg$resultsCache[key]; if (cached) { @@ -7574,11 +7754,11 @@ function peg$parse(input, options) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 44) { - s1 = peg$c242; + s1 = peg$c252; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s1 !== peg$FAILED) { s2 = []; @@ -7586,11 +7766,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 44) { - s5 = peg$c242; + s5 = peg$c252; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s5 !== peg$FAILED) { s4 = [s4, s5]; @@ -7609,11 +7789,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 44) { - s5 = peg$c242; + s5 = peg$c252; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s5 !== peg$FAILED) { s4 = [s4, s5]; @@ -7629,7 +7809,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c260(s2); + s1 = peg$c270(s2); s0 = s1; } else { peg$currPos = s0; @@ -7648,7 +7828,7 @@ function peg$parse(input, options) { function peg$parseMemberExpression() { var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9; - var key = peg$currPos * 224 + 121, + var key = peg$currPos * 225 + 122, cached = peg$resultsCache[key]; if (cached) { @@ -7672,7 +7852,7 @@ function peg$parse(input, options) { s6 = peg$parseArguments(); if (s6 !== peg$FAILED) { peg$savedPos = s1; - s2 = peg$c261(s4, s6); + s2 = peg$c271(s4, s6); s1 = s2; } else { peg$currPos = s1; @@ -7707,7 +7887,7 @@ function peg$parse(input, options) { s6 = peg$parseArguments(); if (s6 !== peg$FAILED) { peg$savedPos = s1; - s2 = peg$c262(s4, s6); + s2 = peg$c272(s4, s6); s1 = s2; } else { peg$currPos = s1; @@ -7737,11 +7917,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 91) { - s5 = peg$c250; + s5 = peg$c260; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c251); } + if (peg$silentFails === 0) { peg$fail(peg$c261); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -7751,15 +7931,15 @@ function peg$parse(input, options) { s8 = peg$parse__(); if (s8 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 93) { - s9 = peg$c252; + s9 = peg$c262; peg$currPos++; } else { s9 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c253); } + if (peg$silentFails === 0) { peg$fail(peg$c263); } } if (s9 !== peg$FAILED) { peg$savedPos = s3; - s4 = peg$c263(s1, s7); + s4 = peg$c273(s1, s7); s3 = s4; } else { peg$currPos = s3; @@ -7802,7 +7982,7 @@ function peg$parse(input, options) { s7 = peg$parseIdentifierName(); if (s7 !== peg$FAILED) { peg$savedPos = s3; - s4 = peg$c264(s1, s7); + s4 = peg$c274(s1, s7); s3 = s4; } else { peg$currPos = s3; @@ -7827,11 +8007,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 91) { - s5 = peg$c250; + s5 = peg$c260; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c251); } + if (peg$silentFails === 0) { peg$fail(peg$c261); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -7841,15 +8021,15 @@ function peg$parse(input, options) { s8 = peg$parse__(); if (s8 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 93) { - s9 = peg$c252; + s9 = peg$c262; peg$currPos++; } else { s9 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c253); } + if (peg$silentFails === 0) { peg$fail(peg$c263); } } if (s9 !== peg$FAILED) { peg$savedPos = s3; - s4 = peg$c263(s1, s7); + s4 = peg$c273(s1, s7); s3 = s4; } else { peg$currPos = s3; @@ -7892,7 +8072,7 @@ function peg$parse(input, options) { s7 = peg$parseIdentifierName(); if (s7 !== peg$FAILED) { peg$savedPos = s3; - s4 = peg$c264(s1, s7); + s4 = peg$c274(s1, s7); s3 = s4; } else { peg$currPos = s3; @@ -7914,7 +8094,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c265(s1, s2); + s1 = peg$c275(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -7933,7 +8113,7 @@ function peg$parse(input, options) { function peg$parseNewExpression() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 122, + var key = peg$currPos * 225 + 123, cached = peg$resultsCache[key]; if (cached) { @@ -7952,7 +8132,7 @@ function peg$parse(input, options) { s3 = peg$parseNewExpression(); if (s3 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c266(s3); + s1 = peg$c276(s3); s0 = s1; } else { peg$currPos = s0; @@ -7976,7 +8156,7 @@ function peg$parse(input, options) { function peg$parseInitOfExpression() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 123, + var key = peg$currPos * 225 + 124, cached = peg$resultsCache[key]; if (cached) { @@ -7995,7 +8175,7 @@ function peg$parse(input, options) { s3 = peg$parseInitOfExpression(); if (s3 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c267(s3); + s1 = peg$c277(s3); s0 = s1; } else { peg$currPos = s0; @@ -8019,7 +8199,7 @@ function peg$parse(input, options) { function peg$parseCallExpression() { var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9; - var key = peg$currPos * 224 + 124, + var key = peg$currPos * 225 + 125, cached = peg$resultsCache[key]; if (cached) { @@ -8036,9 +8216,30 @@ function peg$parse(input, options) { if (s3 !== peg$FAILED) { s4 = peg$parseArguments(); if (s4 !== peg$FAILED) { - peg$savedPos = s1; - s2 = peg$c268(s2, s4); - s1 = s2; + s5 = peg$parse__(); + if (s5 !== peg$FAILED) { + if (input.substr(peg$currPos, 2) === peg$c278) { + s6 = peg$c278; + peg$currPos += 2; + } else { + s6 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c279); } + } + if (s6 === peg$FAILED) { + s6 = null; + } + if (s6 !== peg$FAILED) { + peg$savedPos = s1; + s2 = peg$c280(s2, s4, s6); + s1 = s2; + } else { + peg$currPos = s1; + s1 = peg$FAILED; + } + } else { + peg$currPos = s1; + s1 = peg$FAILED; + } } else { peg$currPos = s1; s1 = peg$FAILED; @@ -8058,9 +8259,30 @@ function peg$parse(input, options) { if (s4 !== peg$FAILED) { s5 = peg$parseArguments(); if (s5 !== peg$FAILED) { - peg$savedPos = s3; - s4 = peg$c269(s1, s5); - s3 = s4; + s6 = peg$parse__(); + if (s6 !== peg$FAILED) { + if (input.substr(peg$currPos, 2) === peg$c278) { + s7 = peg$c278; + peg$currPos += 2; + } else { + s7 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c279); } + } + if (s7 === peg$FAILED) { + s7 = null; + } + if (s7 !== peg$FAILED) { + peg$savedPos = s3; + s4 = peg$c281(s1, s5, s7); + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } } else { peg$currPos = s3; s3 = peg$FAILED; @@ -8074,11 +8296,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 91) { - s5 = peg$c250; + s5 = peg$c260; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c251); } + if (peg$silentFails === 0) { peg$fail(peg$c261); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -8088,15 +8310,15 @@ function peg$parse(input, options) { s8 = peg$parse__(); if (s8 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 93) { - s9 = peg$c252; + s9 = peg$c262; peg$currPos++; } else { s9 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c253); } + if (peg$silentFails === 0) { peg$fail(peg$c263); } } if (s9 !== peg$FAILED) { peg$savedPos = s3; - s4 = peg$c270(s1, s7); + s4 = peg$c282(s1, s7); s3 = s4; } else { peg$currPos = s3; @@ -8139,7 +8361,7 @@ function peg$parse(input, options) { s7 = peg$parseIdentifierName(); if (s7 !== peg$FAILED) { peg$savedPos = s3; - s4 = peg$c271(s1, s7); + s4 = peg$c283(s1, s7); s3 = s4; } else { peg$currPos = s3; @@ -8166,9 +8388,30 @@ function peg$parse(input, options) { if (s4 !== peg$FAILED) { s5 = peg$parseArguments(); if (s5 !== peg$FAILED) { - peg$savedPos = s3; - s4 = peg$c269(s1, s5); - s3 = s4; + s6 = peg$parse__(); + if (s6 !== peg$FAILED) { + if (input.substr(peg$currPos, 2) === peg$c278) { + s7 = peg$c278; + peg$currPos += 2; + } else { + s7 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c279); } + } + if (s7 === peg$FAILED) { + s7 = null; + } + if (s7 !== peg$FAILED) { + peg$savedPos = s3; + s4 = peg$c281(s1, s5, s7); + s3 = s4; + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } + } else { + peg$currPos = s3; + s3 = peg$FAILED; + } } else { peg$currPos = s3; s3 = peg$FAILED; @@ -8182,11 +8425,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 91) { - s5 = peg$c250; + s5 = peg$c260; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c251); } + if (peg$silentFails === 0) { peg$fail(peg$c261); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -8196,15 +8439,15 @@ function peg$parse(input, options) { s8 = peg$parse__(); if (s8 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 93) { - s9 = peg$c252; + s9 = peg$c262; peg$currPos++; } else { s9 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c253); } + if (peg$silentFails === 0) { peg$fail(peg$c263); } } if (s9 !== peg$FAILED) { peg$savedPos = s3; - s4 = peg$c270(s1, s7); + s4 = peg$c282(s1, s7); s3 = s4; } else { peg$currPos = s3; @@ -8247,7 +8490,7 @@ function peg$parse(input, options) { s7 = peg$parseIdentifierName(); if (s7 !== peg$FAILED) { peg$savedPos = s3; - s4 = peg$c271(s1, s7); + s4 = peg$c283(s1, s7); s3 = s4; } else { peg$currPos = s3; @@ -8270,7 +8513,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c272(s1, s2); + s1 = peg$c284(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -8289,7 +8532,7 @@ function peg$parse(input, options) { function peg$parseArguments() { var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9; - var key = peg$currPos * 224 + 125, + var key = peg$currPos * 225 + 126, cached = peg$resultsCache[key]; if (cached) { @@ -8300,11 +8543,11 @@ function peg$parse(input, options) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 40) { - s1 = peg$c245; + s1 = peg$c255; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c246); } + if (peg$silentFails === 0) { peg$fail(peg$c256); } } if (s1 !== peg$FAILED) { s2 = peg$parse__(); @@ -8329,15 +8572,15 @@ function peg$parse(input, options) { } if (s3 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 41) { - s4 = peg$c247; + s4 = peg$c257; peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c248); } + if (peg$silentFails === 0) { peg$fail(peg$c258); } } if (s4 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c273(s3); + s1 = peg$c285(s3); s0 = s1; } else { peg$currPos = s0; @@ -8358,21 +8601,21 @@ function peg$parse(input, options) { if (s0 === peg$FAILED) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 40) { - s1 = peg$c245; + s1 = peg$c255; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c246); } + if (peg$silentFails === 0) { peg$fail(peg$c256); } } if (s1 !== peg$FAILED) { s2 = peg$parse__(); if (s2 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 123) { - s3 = peg$c274; + s3 = peg$c286; peg$currPos++; } else { s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c275); } + if (peg$silentFails === 0) { peg$fail(peg$c287); } } if (s3 !== peg$FAILED) { s4 = peg$parse__(); @@ -8384,11 +8627,11 @@ function peg$parse(input, options) { s8 = peg$parse__(); if (s8 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 44) { - s9 = peg$c242; + s9 = peg$c252; peg$currPos++; } else { s9 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s9 !== peg$FAILED) { s8 = [s8, s9]; @@ -8422,25 +8665,25 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 125) { - s7 = peg$c276; + s7 = peg$c106; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c277); } + if (peg$silentFails === 0) { peg$fail(peg$c107); } } if (s7 !== peg$FAILED) { s8 = peg$parse__(); if (s8 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 41) { - s9 = peg$c247; + s9 = peg$c257; peg$currPos++; } else { s9 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c248); } + if (peg$silentFails === 0) { peg$fail(peg$c258); } } if (s9 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c278(s5); + s1 = peg$c288(s5); s0 = s1; } else { peg$currPos = s0; @@ -8481,11 +8724,11 @@ function peg$parse(input, options) { if (s0 === peg$FAILED) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 123) { - s1 = peg$c274; + s1 = peg$c286; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c275); } + if (peg$silentFails === 0) { peg$fail(peg$c287); } } if (s1 !== peg$FAILED) { s2 = peg$parse__(); @@ -8497,11 +8740,11 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 44) { - s7 = peg$c242; + s7 = peg$c252; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s7 !== peg$FAILED) { s6 = [s6, s7]; @@ -8535,15 +8778,15 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 125) { - s5 = peg$c276; + s5 = peg$c106; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c277); } + if (peg$silentFails === 0) { peg$fail(peg$c107); } } if (s5 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c279(s3); + s1 = peg$c289(s3); s0 = s1; } else { peg$currPos = s0; @@ -8576,7 +8819,7 @@ function peg$parse(input, options) { function peg$parseArgumentList() { var s0, s1, s2, s3, s4, s5, s6, s7; - var key = peg$currPos * 224 + 126, + var key = peg$currPos * 225 + 127, cached = peg$resultsCache[key]; if (cached) { @@ -8593,11 +8836,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 44) { - s5 = peg$c242; + s5 = peg$c252; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -8628,11 +8871,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 44) { - s5 = peg$c242; + s5 = peg$c252; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -8659,9 +8902,24 @@ function peg$parse(input, options) { } } if (s2 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c280(s1, s2); - s0 = s1; + if (input.charCodeAt(peg$currPos) === 44) { + s3 = peg$c252; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c253); } + } + if (s3 === peg$FAILED) { + s3 = null; + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c290(s1, s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { peg$currPos = s0; s0 = peg$FAILED; @@ -8679,7 +8937,7 @@ function peg$parse(input, options) { function peg$parseNameValueList() { var s0, s1, s2, s3, s4, s5, s6, s7; - var key = peg$currPos * 224 + 127, + var key = peg$currPos * 225 + 128, cached = peg$resultsCache[key]; if (cached) { @@ -8696,11 +8954,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 44) { - s5 = peg$c242; + s5 = peg$c252; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -8731,11 +8989,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 44) { - s5 = peg$c242; + s5 = peg$c252; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -8762,9 +9020,24 @@ function peg$parse(input, options) { } } if (s2 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c280(s1, s2); - s0 = s1; + if (input.charCodeAt(peg$currPos) === 44) { + s3 = peg$c252; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c253); } + } + if (s3 === peg$FAILED) { + s3 = null; + } + if (s3 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c290(s1, s2); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { peg$currPos = s0; s0 = peg$FAILED; @@ -8782,7 +9055,7 @@ function peg$parse(input, options) { function peg$parseNameValueAssignment() { var s0, s1, s2, s3, s4, s5, s6; - var key = peg$currPos * 224 + 128, + var key = peg$currPos * 225 + 129, cached = peg$resultsCache[key]; if (cached) { @@ -8797,21 +9070,27 @@ function peg$parse(input, options) { s2 = peg$parse__(); if (s2 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 58) { - s3 = peg$c281; + s3 = peg$c291; peg$currPos++; } else { s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c282); } + if (peg$silentFails === 0) { peg$fail(peg$c292); } + } + if (s3 === peg$FAILED) { + s3 = null; } if (s3 !== peg$FAILED) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { s5 = peg$parseAssignmentExpression(); + if (s5 === peg$FAILED) { + s5 = null; + } if (s5 !== peg$FAILED) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c283(s1, s5); + s1 = peg$c293(s1, s5); s0 = s1; } else { peg$currPos = s0; @@ -8846,7 +9125,7 @@ function peg$parse(input, options) { function peg$parseLeftHandSideExpression() { var s0; - var key = peg$currPos * 224 + 129, + var key = peg$currPos * 225 + 130, cached = peg$resultsCache[key]; if (cached) { @@ -8874,7 +9153,7 @@ function peg$parse(input, options) { function peg$parsePrimitive() { var s0; - var key = peg$currPos * 224 + 130, + var key = peg$currPos * 225 + 131, cached = peg$resultsCache[key]; if (cached) { @@ -8920,7 +9199,7 @@ function peg$parse(input, options) { function peg$parseType() { var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11; - var key = peg$currPos * 224 + 131, + var key = peg$currPos * 225 + 132, cached = peg$resultsCache[key]; if (cached) { @@ -8987,11 +9266,11 @@ function peg$parse(input, options) { s5 = peg$parse__(); if (s5 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 91) { - s6 = peg$c250; + s6 = peg$c260; peg$currPos++; } else { s6 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c251); } + if (peg$silentFails === 0) { peg$fail(peg$c261); } } if (s6 !== peg$FAILED) { s7 = peg$parse__(); @@ -9004,11 +9283,11 @@ function peg$parse(input, options) { s9 = peg$parse__(); if (s9 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 93) { - s10 = peg$c252; + s10 = peg$c262; peg$currPos++; } else { s10 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c253); } + if (peg$silentFails === 0) { peg$fail(peg$c263); } } if (s10 !== peg$FAILED) { s5 = [s5, s6, s7, s8, s9, s10]; @@ -9043,11 +9322,11 @@ function peg$parse(input, options) { s5 = peg$parse__(); if (s5 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 91) { - s6 = peg$c250; + s6 = peg$c260; peg$currPos++; } else { s6 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c251); } + if (peg$silentFails === 0) { peg$fail(peg$c261); } } if (s6 !== peg$FAILED) { s7 = peg$parse__(); @@ -9060,11 +9339,11 @@ function peg$parse(input, options) { s9 = peg$parse__(); if (s9 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 93) { - s10 = peg$c252; + s10 = peg$c262; peg$currPos++; } else { s10 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c253); } + if (peg$silentFails === 0) { peg$fail(peg$c263); } } if (s10 !== peg$FAILED) { s5 = [s5, s6, s7, s8, s9, s10]; @@ -9100,11 +9379,11 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 60) { - s7 = peg$c284; + s7 = peg$c294; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c285); } + if (peg$silentFails === 0) { peg$fail(peg$c295); } } if (s7 !== peg$FAILED) { s8 = peg$parse__(); @@ -9117,11 +9396,11 @@ function peg$parse(input, options) { s10 = peg$parse__(); if (s10 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 62) { - s11 = peg$c286; + s11 = peg$c296; peg$currPos++; } else { s11 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c287); } + if (peg$silentFails === 0) { peg$fail(peg$c297); } } if (s11 !== peg$FAILED) { s6 = [s6, s7, s8, s9, s10, s11]; @@ -9156,11 +9435,11 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 60) { - s7 = peg$c284; + s7 = peg$c294; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c285); } + if (peg$silentFails === 0) { peg$fail(peg$c295); } } if (s7 !== peg$FAILED) { s8 = peg$parse__(); @@ -9173,11 +9452,11 @@ function peg$parse(input, options) { s10 = peg$parse__(); if (s10 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 62) { - s11 = peg$c286; + s11 = peg$c296; peg$currPos++; } else { s11 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c287); } + if (peg$silentFails === 0) { peg$fail(peg$c297); } } if (s11 !== peg$FAILED) { s6 = [s6, s7, s8, s9, s10, s11]; @@ -9209,7 +9488,7 @@ function peg$parse(input, options) { } if (s4 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c288(s1, s2, s3, s4); + s1 = peg$c298(s1, s2, s3, s4); s0 = s1; } else { peg$currPos = s0; @@ -9240,11 +9519,11 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 91) { - s7 = peg$c250; + s7 = peg$c260; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c251); } + if (peg$silentFails === 0) { peg$fail(peg$c261); } } if (s7 !== peg$FAILED) { s8 = peg$parse__(); @@ -9257,11 +9536,11 @@ function peg$parse(input, options) { s10 = peg$parse__(); if (s10 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 93) { - s11 = peg$c252; + s11 = peg$c262; peg$currPos++; } else { s11 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c253); } + if (peg$silentFails === 0) { peg$fail(peg$c263); } } if (s11 !== peg$FAILED) { s6 = [s6, s7, s8, s9, s10, s11]; @@ -9296,11 +9575,11 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 91) { - s7 = peg$c250; + s7 = peg$c260; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c251); } + if (peg$silentFails === 0) { peg$fail(peg$c261); } } if (s7 !== peg$FAILED) { s8 = peg$parse__(); @@ -9313,11 +9592,11 @@ function peg$parse(input, options) { s10 = peg$parse__(); if (s10 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 93) { - s11 = peg$c252; + s11 = peg$c262; peg$currPos++; } else { s11 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c253); } + if (peg$silentFails === 0) { peg$fail(peg$c263); } } if (s11 !== peg$FAILED) { s6 = [s6, s7, s8, s9, s10, s11]; @@ -9349,7 +9628,7 @@ function peg$parse(input, options) { } if (s4 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c289(s3, s4); + s1 = peg$c299(s3, s4); s0 = s1; } else { peg$currPos = s0; @@ -9377,7 +9656,7 @@ function peg$parse(input, options) { function peg$parseStateMutabilitySpecifier() { var s0, s1; - var key = peg$currPos * 224 + 132, + var key = peg$currPos * 225 + 133, cached = peg$resultsCache[key]; if (cached) { @@ -9390,7 +9669,7 @@ function peg$parse(input, options) { s1 = peg$parseConstantToken(); if (s1 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c290(s1); + s1 = peg$c300(s1); } s0 = s1; @@ -9402,7 +9681,7 @@ function peg$parse(input, options) { function peg$parseStateVariableValue() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 133, + var key = peg$currPos * 225 + 134, cached = peg$resultsCache[key]; if (cached) { @@ -9413,11 +9692,11 @@ function peg$parse(input, options) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 61) { - s1 = peg$c291; + s1 = peg$c301; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } if (s1 !== peg$FAILED) { s2 = peg$parse__(); @@ -9425,7 +9704,7 @@ function peg$parse(input, options) { s3 = peg$parseExpression(); if (s3 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c293(s3); + s1 = peg$c303(s3); s0 = s1; } else { peg$currPos = s0; @@ -9448,7 +9727,7 @@ function peg$parse(input, options) { function peg$parseStateVariableDeclaration() { var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, s16, s17, s18; - var key = peg$currPos * 224 + 134, + var key = peg$currPos * 225 + 135, cached = peg$resultsCache[key]; if (cached) { @@ -9578,11 +9857,11 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 58) { - s7 = peg$c281; + s7 = peg$c291; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c282); } + if (peg$silentFails === 0) { peg$fail(peg$c292); } } if (s7 !== peg$FAILED) { s8 = peg$parse__(); @@ -9591,12 +9870,12 @@ function peg$parse(input, options) { if (s9 !== peg$FAILED) { s10 = peg$parse__(); if (s10 !== peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c126) { - s11 = peg$c126; + if (input.substr(peg$currPos, 2) === peg$c134) { + s11 = peg$c134; peg$currPos += 2; } else { s11 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c127); } + if (peg$silentFails === 0) { peg$fail(peg$c135); } } if (s11 === peg$FAILED) { s11 = null; @@ -9610,11 +9889,11 @@ function peg$parse(input, options) { } if (s13 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 63) { - s14 = peg$c294; + s14 = peg$c304; peg$currPos++; } else { s14 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c295); } + if (peg$silentFails === 0) { peg$fail(peg$c305); } } if (s14 === peg$FAILED) { s14 = null; @@ -9632,7 +9911,7 @@ function peg$parse(input, options) { s18 = peg$parseEOS(); if (s18 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c296(s1, s3, s5, s9, s13, s14, s16); + s1 = peg$c306(s1, s3, s5, s9, s13, s14, s16); s0 = s1; } else { peg$currPos = s0; @@ -9715,7 +9994,7 @@ function peg$parse(input, options) { function peg$parseDeclarativeExpression() { var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12; - var key = peg$currPos * 224 + 135, + var key = peg$currPos * 225 + 136, cached = peg$resultsCache[key]; if (cached) { @@ -9734,11 +10013,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 58) { - s5 = peg$c281; + s5 = peg$c291; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c282); } + if (peg$silentFails === 0) { peg$fail(peg$c292); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -9747,12 +10026,12 @@ function peg$parse(input, options) { if (s7 !== peg$FAILED) { s8 = peg$parse__(); if (s8 !== peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c126) { - s9 = peg$c126; + if (input.substr(peg$currPos, 2) === peg$c134) { + s9 = peg$c134; peg$currPos += 2; } else { s9 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c127); } + if (peg$silentFails === 0) { peg$fail(peg$c135); } } if (s9 === peg$FAILED) { s9 = null; @@ -9766,18 +10045,18 @@ function peg$parse(input, options) { } if (s11 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 63) { - s12 = peg$c294; + s12 = peg$c304; peg$currPos++; } else { s12 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c295); } + if (peg$silentFails === 0) { peg$fail(peg$c305); } } if (s12 === peg$FAILED) { s12 = null; } if (s12 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c297(s3, s7, s11, s12); + s1 = peg$c307(s3, s7, s11, s12); s0 = s1; } else { peg$currPos = s0; @@ -9836,7 +10115,7 @@ function peg$parse(input, options) { function peg$parseMapping() { var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, s16, s17, s18, s19, s20; - var key = peg$currPos * 224 + 136, + var key = peg$currPos * 225 + 137, cached = peg$resultsCache[key]; if (cached) { @@ -9851,11 +10130,11 @@ function peg$parse(input, options) { s2 = peg$parse__(); if (s2 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 60) { - s3 = peg$c284; + s3 = peg$c294; peg$currPos++; } else { s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c285); } + if (peg$silentFails === 0) { peg$fail(peg$c295); } } if (s3 !== peg$FAILED) { s4 = peg$parse__(); @@ -9864,12 +10143,12 @@ function peg$parse(input, options) { if (s5 !== peg$FAILED) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c126) { - s7 = peg$c126; + if (input.substr(peg$currPos, 2) === peg$c134) { + s7 = peg$c134; peg$currPos += 2; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c127); } + if (peg$silentFails === 0) { peg$fail(peg$c135); } } if (s7 === peg$FAILED) { s7 = null; @@ -9885,11 +10164,11 @@ function peg$parse(input, options) { s10 = peg$parse__(); if (s10 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 44) { - s11 = peg$c242; + s11 = peg$c252; peg$currPos++; } else { s11 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s11 !== peg$FAILED) { s12 = peg$parse__(); @@ -9898,12 +10177,12 @@ function peg$parse(input, options) { if (s13 !== peg$FAILED) { s14 = peg$parse__(); if (s14 !== peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c126) { - s15 = peg$c126; + if (input.substr(peg$currPos, 2) === peg$c134) { + s15 = peg$c134; peg$currPos += 2; } else { s15 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c127); } + if (peg$silentFails === 0) { peg$fail(peg$c135); } } if (s15 === peg$FAILED) { s15 = null; @@ -9919,17 +10198,17 @@ function peg$parse(input, options) { s18 = peg$parse__(); if (s18 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 62) { - s19 = peg$c286; + s19 = peg$c296; peg$currPos++; } else { s19 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c287); } + if (peg$silentFails === 0) { peg$fail(peg$c297); } } if (s19 !== peg$FAILED) { s20 = peg$parse__(); if (s20 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c298(s5, s9, s13, s17); + s1 = peg$c308(s5, s9, s13, s17); s0 = s1; } else { peg$currPos = s0; @@ -10020,7 +10299,7 @@ function peg$parse(input, options) { function peg$parsePostfixExpression() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 137, + var key = peg$currPos * 225 + 138, cached = peg$resultsCache[key]; if (cached) { @@ -10037,7 +10316,7 @@ function peg$parse(input, options) { s3 = peg$parsePostfixOperator(); if (s3 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c299(s1, s3); + s1 = peg$c309(s1, s3); s0 = s1; } else { peg$currPos = s0; @@ -10063,7 +10342,7 @@ function peg$parse(input, options) { function peg$parsePostfixOperator() { var s0; - var key = peg$currPos * 224 + 138, + var key = peg$currPos * 225 + 139, cached = peg$resultsCache[key]; if (cached) { @@ -10072,28 +10351,28 @@ function peg$parse(input, options) { return cached.result; } - if (input.substr(peg$currPos, 2) === peg$c300) { - s0 = peg$c300; + if (input.substr(peg$currPos, 2) === peg$c310) { + s0 = peg$c310; peg$currPos += 2; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c301); } + if (peg$silentFails === 0) { peg$fail(peg$c311); } } if (s0 === peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c302) { - s0 = peg$c302; + if (input.substr(peg$currPos, 2) === peg$c312) { + s0 = peg$c312; peg$currPos += 2; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c303); } + if (peg$silentFails === 0) { peg$fail(peg$c313); } } if (s0 === peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c304) { - s0 = peg$c304; + if (input.substr(peg$currPos, 2) === peg$c278) { + s0 = peg$c278; peg$currPos += 2; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c305); } + if (peg$silentFails === 0) { peg$fail(peg$c279); } } } } @@ -10106,7 +10385,7 @@ function peg$parse(input, options) { function peg$parseUnaryExpression() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 139, + var key = peg$currPos * 225 + 140, cached = peg$resultsCache[key]; if (cached) { @@ -10125,7 +10404,7 @@ function peg$parse(input, options) { s3 = peg$parseUnaryExpression(); if (s3 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c306(s1, s3); + s1 = peg$c314(s1, s3); s0 = s1; } else { peg$currPos = s0; @@ -10149,7 +10428,7 @@ function peg$parse(input, options) { function peg$parseUnaryOperator() { var s0, s1, s2, s3, s4; - var key = peg$currPos * 224 + 140, + var key = peg$currPos * 225 + 141, cached = peg$resultsCache[key]; if (cached) { @@ -10166,40 +10445,40 @@ function peg$parse(input, options) { s0 = s1; } if (s0 === peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c300) { - s0 = peg$c300; + if (input.substr(peg$currPos, 2) === peg$c310) { + s0 = peg$c310; peg$currPos += 2; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c301); } + if (peg$silentFails === 0) { peg$fail(peg$c311); } } if (s0 === peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c302) { - s0 = peg$c302; + if (input.substr(peg$currPos, 2) === peg$c312) { + s0 = peg$c312; peg$currPos += 2; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c303); } + if (peg$silentFails === 0) { peg$fail(peg$c313); } } if (s0 === peg$FAILED) { s0 = peg$currPos; s1 = peg$currPos; if (input.charCodeAt(peg$currPos) === 43) { - s2 = peg$c307; + s2 = peg$c315; peg$currPos++; } else { s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c308); } + if (peg$silentFails === 0) { peg$fail(peg$c316); } } if (s2 !== peg$FAILED) { s3 = peg$currPos; peg$silentFails++; if (input.charCodeAt(peg$currPos) === 61) { - s4 = peg$c291; + s4 = peg$c301; peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } peg$silentFails--; if (s4 === peg$FAILED) { @@ -10228,21 +10507,21 @@ function peg$parse(input, options) { s0 = peg$currPos; s1 = peg$currPos; if (input.charCodeAt(peg$currPos) === 45) { - s2 = peg$c309; + s2 = peg$c317; peg$currPos++; } else { s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c310); } + if (peg$silentFails === 0) { peg$fail(peg$c318); } } if (s2 !== peg$FAILED) { s3 = peg$currPos; peg$silentFails++; if (input.charCodeAt(peg$currPos) === 61) { - s4 = peg$c291; + s4 = peg$c301; peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } peg$silentFails--; if (s4 === peg$FAILED) { @@ -10269,19 +10548,19 @@ function peg$parse(input, options) { } if (s0 === peg$FAILED) { if (input.charCodeAt(peg$currPos) === 126) { - s0 = peg$c311; + s0 = peg$c319; peg$currPos++; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c312); } + if (peg$silentFails === 0) { peg$fail(peg$c320); } } if (s0 === peg$FAILED) { if (input.charCodeAt(peg$currPos) === 33) { - s0 = peg$c313; + s0 = peg$c321; peg$currPos++; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c314); } + if (peg$silentFails === 0) { peg$fail(peg$c322); } } } } @@ -10298,7 +10577,7 @@ function peg$parse(input, options) { function peg$parseMultiplicativeExpression() { var s0, s1, s2, s3, s4, s5, s6, s7; - var key = peg$currPos * 224 + 141, + var key = peg$currPos * 225 + 142, cached = peg$resultsCache[key]; if (cached) { @@ -10370,7 +10649,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c315(s1, s2); + s1 = peg$c323(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -10389,7 +10668,7 @@ function peg$parse(input, options) { function peg$parseMultiplicativeOperator() { var s0, s1, s2, s3, s4, s5; - var key = peg$currPos * 224 + 142, + var key = peg$currPos * 225 + 143, cached = peg$resultsCache[key]; if (cached) { @@ -10401,19 +10680,19 @@ function peg$parse(input, options) { s0 = peg$currPos; s1 = peg$currPos; if (input.charCodeAt(peg$currPos) === 42) { - s2 = peg$c316; + s2 = peg$c324; peg$currPos++; } else { s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c317); } + if (peg$silentFails === 0) { peg$fail(peg$c325); } } if (s2 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 42) { - s3 = peg$c316; + s3 = peg$c324; peg$currPos++; } else { s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c317); } + if (peg$silentFails === 0) { peg$fail(peg$c325); } } if (s3 === peg$FAILED) { s3 = null; @@ -10422,11 +10701,11 @@ function peg$parse(input, options) { s4 = peg$currPos; peg$silentFails++; if (input.charCodeAt(peg$currPos) === 61) { - s5 = peg$c291; + s5 = peg$c301; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } peg$silentFails--; if (s5 === peg$FAILED) { @@ -10459,21 +10738,21 @@ function peg$parse(input, options) { s0 = peg$currPos; s1 = peg$currPos; if (input.charCodeAt(peg$currPos) === 47) { - s2 = peg$c318; + s2 = peg$c326; peg$currPos++; } else { s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c319); } + if (peg$silentFails === 0) { peg$fail(peg$c327); } } if (s2 !== peg$FAILED) { s3 = peg$currPos; peg$silentFails++; if (input.charCodeAt(peg$currPos) === 61) { - s4 = peg$c291; + s4 = peg$c301; peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } peg$silentFails--; if (s4 === peg$FAILED) { @@ -10502,21 +10781,21 @@ function peg$parse(input, options) { s0 = peg$currPos; s1 = peg$currPos; if (input.charCodeAt(peg$currPos) === 37) { - s2 = peg$c320; + s2 = peg$c328; peg$currPos++; } else { s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c321); } + if (peg$silentFails === 0) { peg$fail(peg$c329); } } if (s2 !== peg$FAILED) { s3 = peg$currPos; peg$silentFails++; if (input.charCodeAt(peg$currPos) === 61) { - s4 = peg$c291; + s4 = peg$c301; peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } peg$silentFails--; if (s4 === peg$FAILED) { @@ -10552,7 +10831,7 @@ function peg$parse(input, options) { function peg$parseAdditiveExpression() { var s0, s1, s2, s3, s4, s5, s6, s7; - var key = peg$currPos * 224 + 143, + var key = peg$currPos * 225 + 144, cached = peg$resultsCache[key]; if (cached) { @@ -10624,7 +10903,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c315(s1, s2); + s1 = peg$c323(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -10643,7 +10922,7 @@ function peg$parse(input, options) { function peg$parseAdditiveOperator() { var s0, s1, s2, s3, s4; - var key = peg$currPos * 224 + 144, + var key = peg$currPos * 225 + 145, cached = peg$resultsCache[key]; if (cached) { @@ -10655,21 +10934,21 @@ function peg$parse(input, options) { s0 = peg$currPos; s1 = peg$currPos; if (input.charCodeAt(peg$currPos) === 43) { - s2 = peg$c307; + s2 = peg$c315; peg$currPos++; } else { s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c308); } + if (peg$silentFails === 0) { peg$fail(peg$c316); } } if (s2 !== peg$FAILED) { s3 = peg$currPos; peg$silentFails++; - if (peg$c322.test(input.charAt(peg$currPos))) { + if (peg$c330.test(input.charAt(peg$currPos))) { s4 = input.charAt(peg$currPos); peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c323); } + if (peg$silentFails === 0) { peg$fail(peg$c331); } } peg$silentFails--; if (s4 === peg$FAILED) { @@ -10698,21 +10977,21 @@ function peg$parse(input, options) { s0 = peg$currPos; s1 = peg$currPos; if (input.charCodeAt(peg$currPos) === 45) { - s2 = peg$c309; + s2 = peg$c317; peg$currPos++; } else { s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c310); } + if (peg$silentFails === 0) { peg$fail(peg$c318); } } if (s2 !== peg$FAILED) { s3 = peg$currPos; peg$silentFails++; - if (peg$c324.test(input.charAt(peg$currPos))) { + if (peg$c332.test(input.charAt(peg$currPos))) { s4 = input.charAt(peg$currPos); peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c325); } + if (peg$silentFails === 0) { peg$fail(peg$c333); } } peg$silentFails--; if (s4 === peg$FAILED) { @@ -10747,7 +11026,7 @@ function peg$parse(input, options) { function peg$parseShiftExpression() { var s0, s1, s2, s3, s4, s5, s6, s7; - var key = peg$currPos * 224 + 145, + var key = peg$currPos * 225 + 146, cached = peg$resultsCache[key]; if (cached) { @@ -10819,7 +11098,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c315(s1, s2); + s1 = peg$c323(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -10838,7 +11117,7 @@ function peg$parse(input, options) { function peg$parseShiftOperator() { var s0, s1, s2, s3, s4; - var key = peg$currPos * 224 + 146, + var key = peg$currPos * 225 + 147, cached = peg$resultsCache[key]; if (cached) { @@ -10849,22 +11128,22 @@ function peg$parse(input, options) { s0 = peg$currPos; s1 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c326) { - s2 = peg$c326; + if (input.substr(peg$currPos, 2) === peg$c334) { + s2 = peg$c334; peg$currPos += 2; } else { s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c327); } + if (peg$silentFails === 0) { peg$fail(peg$c335); } } if (s2 !== peg$FAILED) { s3 = peg$currPos; peg$silentFails++; if (input.charCodeAt(peg$currPos) === 61) { - s4 = peg$c291; + s4 = peg$c301; peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } peg$silentFails--; if (s4 === peg$FAILED) { @@ -10892,22 +11171,22 @@ function peg$parse(input, options) { if (s0 === peg$FAILED) { s0 = peg$currPos; s1 = peg$currPos; - if (input.substr(peg$currPos, 3) === peg$c328) { - s2 = peg$c328; + if (input.substr(peg$currPos, 3) === peg$c336) { + s2 = peg$c336; peg$currPos += 3; } else { s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c329); } + if (peg$silentFails === 0) { peg$fail(peg$c337); } } if (s2 !== peg$FAILED) { s3 = peg$currPos; peg$silentFails++; if (input.charCodeAt(peg$currPos) === 61) { - s4 = peg$c291; + s4 = peg$c301; peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } peg$silentFails--; if (s4 === peg$FAILED) { @@ -10935,22 +11214,22 @@ function peg$parse(input, options) { if (s0 === peg$FAILED) { s0 = peg$currPos; s1 = peg$currPos; - if (input.substr(peg$currPos, 2) === peg$c330) { - s2 = peg$c330; + if (input.substr(peg$currPos, 2) === peg$c338) { + s2 = peg$c338; peg$currPos += 2; } else { s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c331); } + if (peg$silentFails === 0) { peg$fail(peg$c339); } } if (s2 !== peg$FAILED) { s3 = peg$currPos; peg$silentFails++; if (input.charCodeAt(peg$currPos) === 61) { - s4 = peg$c291; + s4 = peg$c301; peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } peg$silentFails--; if (s4 === peg$FAILED) { @@ -10986,7 +11265,7 @@ function peg$parse(input, options) { function peg$parseRelationalExpression() { var s0, s1, s2, s3, s4, s5, s6, s7; - var key = peg$currPos * 224 + 147, + var key = peg$currPos * 225 + 148, cached = peg$resultsCache[key]; if (cached) { @@ -11058,7 +11337,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c315(s1, s2); + s1 = peg$c323(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -11077,7 +11356,7 @@ function peg$parse(input, options) { function peg$parseRelationalOperator() { var s0, s1, s2, s3, s4; - var key = peg$currPos * 224 + 148, + var key = peg$currPos * 225 + 149, cached = peg$resultsCache[key]; if (cached) { @@ -11086,40 +11365,40 @@ function peg$parse(input, options) { return cached.result; } - if (input.substr(peg$currPos, 2) === peg$c332) { - s0 = peg$c332; + if (input.substr(peg$currPos, 2) === peg$c340) { + s0 = peg$c340; peg$currPos += 2; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c333); } + if (peg$silentFails === 0) { peg$fail(peg$c341); } } if (s0 === peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c334) { - s0 = peg$c334; + if (input.substr(peg$currPos, 2) === peg$c342) { + s0 = peg$c342; peg$currPos += 2; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c335); } + if (peg$silentFails === 0) { peg$fail(peg$c343); } } if (s0 === peg$FAILED) { s0 = peg$currPos; s1 = peg$currPos; if (input.charCodeAt(peg$currPos) === 60) { - s2 = peg$c284; + s2 = peg$c294; peg$currPos++; } else { s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c285); } + if (peg$silentFails === 0) { peg$fail(peg$c295); } } if (s2 !== peg$FAILED) { s3 = peg$currPos; peg$silentFails++; if (input.charCodeAt(peg$currPos) === 60) { - s4 = peg$c284; + s4 = peg$c294; peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c285); } + if (peg$silentFails === 0) { peg$fail(peg$c295); } } peg$silentFails--; if (s4 === peg$FAILED) { @@ -11148,21 +11427,21 @@ function peg$parse(input, options) { s0 = peg$currPos; s1 = peg$currPos; if (input.charCodeAt(peg$currPos) === 62) { - s2 = peg$c286; + s2 = peg$c296; peg$currPos++; } else { s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c287); } + if (peg$silentFails === 0) { peg$fail(peg$c297); } } if (s2 !== peg$FAILED) { s3 = peg$currPos; peg$silentFails++; if (input.charCodeAt(peg$currPos) === 62) { - s4 = peg$c286; + s4 = peg$c296; peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c287); } + if (peg$silentFails === 0) { peg$fail(peg$c297); } } peg$silentFails--; if (s4 === peg$FAILED) { @@ -11199,7 +11478,7 @@ function peg$parse(input, options) { function peg$parseEqualityExpression() { var s0, s1, s2, s3, s4, s5, s6, s7; - var key = peg$currPos * 224 + 149, + var key = peg$currPos * 225 + 150, cached = peg$resultsCache[key]; if (cached) { @@ -11271,7 +11550,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c315(s1, s2); + s1 = peg$c323(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -11290,7 +11569,7 @@ function peg$parse(input, options) { function peg$parseEqualityOperator() { var s0; - var key = peg$currPos * 224 + 150, + var key = peg$currPos * 225 + 151, cached = peg$resultsCache[key]; if (cached) { @@ -11299,20 +11578,20 @@ function peg$parse(input, options) { return cached.result; } - if (input.substr(peg$currPos, 2) === peg$c336) { - s0 = peg$c336; + if (input.substr(peg$currPos, 2) === peg$c344) { + s0 = peg$c344; peg$currPos += 2; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c337); } + if (peg$silentFails === 0) { peg$fail(peg$c345); } } if (s0 === peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c338) { - s0 = peg$c338; + if (input.substr(peg$currPos, 2) === peg$c346) { + s0 = peg$c346; peg$currPos += 2; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c339); } + if (peg$silentFails === 0) { peg$fail(peg$c347); } } } @@ -11324,7 +11603,7 @@ function peg$parse(input, options) { function peg$parseEqualityPragmaOperator() { var s0; - var key = peg$currPos * 224 + 151, + var key = peg$currPos * 225 + 152, cached = peg$resultsCache[key]; if (cached) { @@ -11334,11 +11613,11 @@ function peg$parse(input, options) { } if (input.charCodeAt(peg$currPos) === 61) { - s0 = peg$c291; + s0 = peg$c301; peg$currPos++; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } peg$resultsCache[key] = { nextPos: peg$currPos, result: s0 }; @@ -11349,7 +11628,7 @@ function peg$parse(input, options) { function peg$parseTilde() { var s0; - var key = peg$currPos * 224 + 152, + var key = peg$currPos * 225 + 153, cached = peg$resultsCache[key]; if (cached) { @@ -11359,11 +11638,11 @@ function peg$parse(input, options) { } if (input.charCodeAt(peg$currPos) === 126) { - s0 = peg$c311; + s0 = peg$c319; peg$currPos++; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c312); } + if (peg$silentFails === 0) { peg$fail(peg$c320); } } peg$resultsCache[key] = { nextPos: peg$currPos, result: s0 }; @@ -11374,7 +11653,7 @@ function peg$parse(input, options) { function peg$parseBitwiseANDExpression() { var s0, s1, s2, s3, s4, s5, s6, s7; - var key = peg$currPos * 224 + 153, + var key = peg$currPos * 225 + 154, cached = peg$resultsCache[key]; if (cached) { @@ -11446,7 +11725,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c315(s1, s2); + s1 = peg$c323(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -11465,7 +11744,7 @@ function peg$parse(input, options) { function peg$parseBitwiseANDOperator() { var s0, s1, s2, s3, s4; - var key = peg$currPos * 224 + 154, + var key = peg$currPos * 225 + 155, cached = peg$resultsCache[key]; if (cached) { @@ -11477,21 +11756,21 @@ function peg$parse(input, options) { s0 = peg$currPos; s1 = peg$currPos; if (input.charCodeAt(peg$currPos) === 38) { - s2 = peg$c340; + s2 = peg$c348; peg$currPos++; } else { s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c341); } + if (peg$silentFails === 0) { peg$fail(peg$c349); } } if (s2 !== peg$FAILED) { s3 = peg$currPos; peg$silentFails++; - if (peg$c342.test(input.charAt(peg$currPos))) { + if (peg$c350.test(input.charAt(peg$currPos))) { s4 = input.charAt(peg$currPos); peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c343); } + if (peg$silentFails === 0) { peg$fail(peg$c351); } } peg$silentFails--; if (s4 === peg$FAILED) { @@ -11525,7 +11804,7 @@ function peg$parse(input, options) { function peg$parseBitwiseXORExpression() { var s0, s1, s2, s3, s4, s5, s6, s7; - var key = peg$currPos * 224 + 155, + var key = peg$currPos * 225 + 156, cached = peg$resultsCache[key]; if (cached) { @@ -11597,7 +11876,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c315(s1, s2); + s1 = peg$c323(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -11616,7 +11895,7 @@ function peg$parse(input, options) { function peg$parseBitwiseXOROperator() { var s0, s1, s2, s3, s4; - var key = peg$currPos * 224 + 156, + var key = peg$currPos * 225 + 157, cached = peg$resultsCache[key]; if (cached) { @@ -11628,21 +11907,21 @@ function peg$parse(input, options) { s0 = peg$currPos; s1 = peg$currPos; if (input.charCodeAt(peg$currPos) === 94) { - s2 = peg$c344; + s2 = peg$c352; peg$currPos++; } else { s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c345); } + if (peg$silentFails === 0) { peg$fail(peg$c353); } } if (s2 !== peg$FAILED) { s3 = peg$currPos; peg$silentFails++; if (input.charCodeAt(peg$currPos) === 61) { - s4 = peg$c291; + s4 = peg$c301; peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } peg$silentFails--; if (s4 === peg$FAILED) { @@ -11676,7 +11955,7 @@ function peg$parse(input, options) { function peg$parseBitwiseORExpression() { var s0, s1, s2, s3, s4, s5, s6, s7; - var key = peg$currPos * 224 + 157, + var key = peg$currPos * 225 + 158, cached = peg$resultsCache[key]; if (cached) { @@ -11748,7 +12027,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c315(s1, s2); + s1 = peg$c323(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -11767,7 +12046,7 @@ function peg$parse(input, options) { function peg$parseBitwiseOROperator() { var s0, s1, s2, s3, s4; - var key = peg$currPos * 224 + 158, + var key = peg$currPos * 225 + 159, cached = peg$resultsCache[key]; if (cached) { @@ -11779,21 +12058,21 @@ function peg$parse(input, options) { s0 = peg$currPos; s1 = peg$currPos; if (input.charCodeAt(peg$currPos) === 124) { - s2 = peg$c346; + s2 = peg$c354; peg$currPos++; } else { s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c347); } + if (peg$silentFails === 0) { peg$fail(peg$c355); } } if (s2 !== peg$FAILED) { s3 = peg$currPos; peg$silentFails++; - if (peg$c348.test(input.charAt(peg$currPos))) { + if (peg$c356.test(input.charAt(peg$currPos))) { s4 = input.charAt(peg$currPos); peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c349); } + if (peg$silentFails === 0) { peg$fail(peg$c357); } } peg$silentFails--; if (s4 === peg$FAILED) { @@ -11827,7 +12106,7 @@ function peg$parse(input, options) { function peg$parseLogicalANDExpression() { var s0, s1, s2, s3, s4, s5, s6, s7; - var key = peg$currPos * 224 + 159, + var key = peg$currPos * 225 + 160, cached = peg$resultsCache[key]; if (cached) { @@ -11899,7 +12178,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c315(s1, s2); + s1 = peg$c323(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -11918,7 +12197,7 @@ function peg$parse(input, options) { function peg$parseLogicalANDOperator() { var s0; - var key = peg$currPos * 224 + 160, + var key = peg$currPos * 225 + 161, cached = peg$resultsCache[key]; if (cached) { @@ -11927,12 +12206,12 @@ function peg$parse(input, options) { return cached.result; } - if (input.substr(peg$currPos, 2) === peg$c350) { - s0 = peg$c350; + if (input.substr(peg$currPos, 2) === peg$c358) { + s0 = peg$c358; peg$currPos += 2; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c351); } + if (peg$silentFails === 0) { peg$fail(peg$c359); } } peg$resultsCache[key] = { nextPos: peg$currPos, result: s0 }; @@ -11943,7 +12222,7 @@ function peg$parse(input, options) { function peg$parseLogicalORExpression() { var s0, s1, s2, s3, s4, s5, s6, s7; - var key = peg$currPos * 224 + 161, + var key = peg$currPos * 225 + 162, cached = peg$resultsCache[key]; if (cached) { @@ -12015,7 +12294,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c315(s1, s2); + s1 = peg$c323(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -12034,7 +12313,7 @@ function peg$parse(input, options) { function peg$parseLogicalOROperator() { var s0; - var key = peg$currPos * 224 + 162, + var key = peg$currPos * 225 + 163, cached = peg$resultsCache[key]; if (cached) { @@ -12043,12 +12322,12 @@ function peg$parse(input, options) { return cached.result; } - if (input.substr(peg$currPos, 2) === peg$c352) { - s0 = peg$c352; + if (input.substr(peg$currPos, 2) === peg$c360) { + s0 = peg$c360; peg$currPos += 2; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c353); } + if (peg$silentFails === 0) { peg$fail(peg$c361); } } peg$resultsCache[key] = { nextPos: peg$currPos, result: s0 }; @@ -12059,7 +12338,7 @@ function peg$parse(input, options) { function peg$parseConditionalExpression() { var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9; - var key = peg$currPos * 224 + 163, + var key = peg$currPos * 225 + 164, cached = peg$resultsCache[key]; if (cached) { @@ -12074,11 +12353,11 @@ function peg$parse(input, options) { s2 = peg$parse__(); if (s2 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 63) { - s3 = peg$c294; + s3 = peg$c304; peg$currPos++; } else { s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c295); } + if (peg$silentFails === 0) { peg$fail(peg$c305); } } if (s3 !== peg$FAILED) { s4 = peg$parse__(); @@ -12088,11 +12367,11 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 58) { - s7 = peg$c281; + s7 = peg$c291; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c282); } + if (peg$silentFails === 0) { peg$fail(peg$c292); } } if (s7 !== peg$FAILED) { s8 = peg$parse__(); @@ -12100,7 +12379,7 @@ function peg$parse(input, options) { s9 = peg$parseAssignmentExpression(); if (s9 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c354(s1, s5, s9); + s1 = peg$c362(s1, s5, s9); s0 = s1; } else { peg$currPos = s0; @@ -12150,7 +12429,7 @@ function peg$parse(input, options) { function peg$parseAssignmentExpression() { var s0, s1, s2, s3, s4, s5, s6; - var key = peg$currPos * 224 + 164, + var key = peg$currPos * 225 + 165, cached = peg$resultsCache[key]; if (cached) { @@ -12165,21 +12444,21 @@ function peg$parse(input, options) { s2 = peg$parse__(); if (s2 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 61) { - s3 = peg$c291; + s3 = peg$c301; peg$currPos++; } else { s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } if (s3 !== peg$FAILED) { s4 = peg$currPos; peg$silentFails++; if (input.charCodeAt(peg$currPos) === 61) { - s5 = peg$c291; + s5 = peg$c301; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } peg$silentFails--; if (s5 === peg$FAILED) { @@ -12194,7 +12473,7 @@ function peg$parse(input, options) { s6 = peg$parseAssignmentExpression(); if (s6 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c355(s1, s6); + s1 = peg$c363(s1, s6); s0 = s1; } else { peg$currPos = s0; @@ -12233,7 +12512,7 @@ function peg$parse(input, options) { s5 = peg$parseAssignmentExpression(); if (s5 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c356(s1, s3, s5); + s1 = peg$c364(s1, s3, s5); s0 = s1; } else { peg$currPos = s0; @@ -12268,7 +12547,7 @@ function peg$parse(input, options) { function peg$parseAssignmentOperator() { var s0; - var key = peg$currPos * 224 + 165, + var key = peg$currPos * 225 + 166, cached = peg$resultsCache[key]; if (cached) { @@ -12277,84 +12556,84 @@ function peg$parse(input, options) { return cached.result; } - if (input.substr(peg$currPos, 2) === peg$c357) { - s0 = peg$c357; + if (input.substr(peg$currPos, 2) === peg$c365) { + s0 = peg$c365; peg$currPos += 2; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c358); } + if (peg$silentFails === 0) { peg$fail(peg$c366); } } if (s0 === peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c359) { - s0 = peg$c359; + if (input.substr(peg$currPos, 2) === peg$c367) { + s0 = peg$c367; peg$currPos += 2; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c360); } + if (peg$silentFails === 0) { peg$fail(peg$c368); } } if (s0 === peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c361) { - s0 = peg$c361; + if (input.substr(peg$currPos, 2) === peg$c369) { + s0 = peg$c369; peg$currPos += 2; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c362); } + if (peg$silentFails === 0) { peg$fail(peg$c370); } } if (s0 === peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c363) { - s0 = peg$c363; + if (input.substr(peg$currPos, 2) === peg$c371) { + s0 = peg$c371; peg$currPos += 2; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c364); } + if (peg$silentFails === 0) { peg$fail(peg$c372); } } if (s0 === peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c365) { - s0 = peg$c365; + if (input.substr(peg$currPos, 2) === peg$c373) { + s0 = peg$c373; peg$currPos += 2; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c366); } + if (peg$silentFails === 0) { peg$fail(peg$c374); } } if (s0 === peg$FAILED) { - if (input.substr(peg$currPos, 3) === peg$c367) { - s0 = peg$c367; + if (input.substr(peg$currPos, 3) === peg$c375) { + s0 = peg$c375; peg$currPos += 3; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c368); } + if (peg$silentFails === 0) { peg$fail(peg$c376); } } if (s0 === peg$FAILED) { - if (input.substr(peg$currPos, 3) === peg$c369) { - s0 = peg$c369; + if (input.substr(peg$currPos, 3) === peg$c377) { + s0 = peg$c377; peg$currPos += 3; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c370); } + if (peg$silentFails === 0) { peg$fail(peg$c378); } } if (s0 === peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c371) { - s0 = peg$c371; + if (input.substr(peg$currPos, 2) === peg$c379) { + s0 = peg$c379; peg$currPos += 2; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c372); } + if (peg$silentFails === 0) { peg$fail(peg$c380); } } if (s0 === peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c373) { - s0 = peg$c373; + if (input.substr(peg$currPos, 2) === peg$c381) { + s0 = peg$c381; peg$currPos += 2; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c374); } + if (peg$silentFails === 0) { peg$fail(peg$c382); } } if (s0 === peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c375) { - s0 = peg$c375; + if (input.substr(peg$currPos, 2) === peg$c383) { + s0 = peg$c383; peg$currPos += 2; } else { s0 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c376); } + if (peg$silentFails === 0) { peg$fail(peg$c384); } } } } @@ -12374,7 +12653,7 @@ function peg$parse(input, options) { function peg$parseExpression() { var s0, s1, s2, s3, s4, s5, s6, s7; - var key = peg$currPos * 224 + 166, + var key = peg$currPos * 225 + 167, cached = peg$resultsCache[key]; if (cached) { @@ -12394,11 +12673,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 44) { - s5 = peg$c242; + s5 = peg$c252; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -12432,11 +12711,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 44) { - s5 = peg$c242; + s5 = peg$c252; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -12467,7 +12746,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c377(s1, s2); + s1 = peg$c385(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -12486,7 +12765,7 @@ function peg$parse(input, options) { function peg$parseStatements() { var s0, s1, s2, s3, s4, s5; - var key = peg$currPos * 224 + 167, + var key = peg$currPos * 225 + 168, cached = peg$resultsCache[key]; if (cached) { @@ -12534,7 +12813,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c378(s1, s2); + s1 = peg$c386(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -12553,7 +12832,7 @@ function peg$parse(input, options) { function peg$parseStatement() { var s0; - var key = peg$currPos * 224 + 168, + var key = peg$currPos * 225 + 169, cached = peg$resultsCache[key]; if (cached) { @@ -12608,7 +12887,7 @@ function peg$parse(input, options) { function peg$parseIncompleteBlock() { var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12; - var key = peg$currPos * 224 + 169, + var key = peg$currPos * 225 + 170, cached = peg$resultsCache[key]; if (cached) { @@ -12681,11 +12960,11 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 61) { - s7 = peg$c291; + s7 = peg$c301; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } if (s7 !== peg$FAILED) { s8 = peg$parse__(); @@ -12709,11 +12988,11 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 61) { - s7 = peg$c291; + s7 = peg$c301; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } if (s7 !== peg$FAILED) { s8 = peg$parse__(); @@ -12777,11 +13056,11 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 61) { - s7 = peg$c291; + s7 = peg$c301; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } if (s7 !== peg$FAILED) { s8 = peg$parse__(); @@ -12805,11 +13084,11 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 61) { - s7 = peg$c291; + s7 = peg$c301; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } if (s7 !== peg$FAILED) { s8 = peg$parse__(); @@ -12866,7 +13145,7 @@ function peg$parse(input, options) { } if (s4 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c379(s3); + s1 = peg$c387(s3); s0 = s1; } else { peg$currPos = s0; @@ -12908,11 +13187,11 @@ function peg$parse(input, options) { s8 = peg$parse__(); if (s8 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 61) { - s9 = peg$c291; + s9 = peg$c301; peg$currPos++; } else { s9 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } if (s9 !== peg$FAILED) { s10 = peg$parse__(); @@ -12936,11 +13215,11 @@ function peg$parse(input, options) { s8 = peg$parse__(); if (s8 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 61) { - s9 = peg$c291; + s9 = peg$c301; peg$currPos++; } else { s9 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } if (s9 !== peg$FAILED) { s10 = peg$parse__(); @@ -13004,11 +13283,11 @@ function peg$parse(input, options) { s8 = peg$parse__(); if (s8 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 61) { - s9 = peg$c291; + s9 = peg$c301; peg$currPos++; } else { s9 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } if (s9 !== peg$FAILED) { s10 = peg$parse__(); @@ -13032,11 +13311,11 @@ function peg$parse(input, options) { s8 = peg$parse__(); if (s8 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 61) { - s9 = peg$c291; + s9 = peg$c301; peg$currPos++; } else { s9 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } if (s9 !== peg$FAILED) { s10 = peg$parse__(); @@ -13093,7 +13372,7 @@ function peg$parse(input, options) { } if (s6 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c380(s2, s5); + s1 = peg$c388(s2, s5); s0 = s1; } else { peg$currPos = s0; @@ -13139,11 +13418,11 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 61) { - s7 = peg$c291; + s7 = peg$c301; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } if (s7 !== peg$FAILED) { s8 = peg$parse__(); @@ -13167,11 +13446,11 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 61) { - s7 = peg$c291; + s7 = peg$c301; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } if (s7 !== peg$FAILED) { s8 = peg$parse__(); @@ -13235,11 +13514,11 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 61) { - s7 = peg$c291; + s7 = peg$c301; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } if (s7 !== peg$FAILED) { s8 = peg$parse__(); @@ -13263,11 +13542,11 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 61) { - s7 = peg$c291; + s7 = peg$c301; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } if (s7 !== peg$FAILED) { s8 = peg$parse__(); @@ -13324,7 +13603,7 @@ function peg$parse(input, options) { } if (s4 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c381(s2, s3); + s1 = peg$c389(s2, s3); s0 = s1; } else { peg$currPos = s0; @@ -13353,7 +13632,7 @@ function peg$parse(input, options) { function peg$parseBlock() { var s0, s1, s2, s3, s4, s5; - var key = peg$currPos * 224 + 170, + var key = peg$currPos * 225 + 171, cached = peg$resultsCache[key]; if (cached) { @@ -13364,11 +13643,11 @@ function peg$parse(input, options) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 123) { - s1 = peg$c274; + s1 = peg$c286; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c275); } + if (peg$silentFails === 0) { peg$fail(peg$c287); } } if (s1 !== peg$FAILED) { s2 = peg$parse__(); @@ -13393,15 +13672,15 @@ function peg$parse(input, options) { } if (s3 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 125) { - s4 = peg$c276; + s4 = peg$c106; peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c277); } + if (peg$silentFails === 0) { peg$fail(peg$c107); } } if (s4 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c382(s3); + s1 = peg$c390(s3); s0 = s1; } else { peg$currPos = s0; @@ -13428,7 +13707,7 @@ function peg$parse(input, options) { function peg$parseStatementList() { var s0, s1, s2, s3, s4, s5; - var key = peg$currPos * 224 + 171, + var key = peg$currPos * 225 + 172, cached = peg$resultsCache[key]; if (cached) { @@ -13476,7 +13755,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c383(s1, s2); + s1 = peg$c391(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -13495,7 +13774,7 @@ function peg$parse(input, options) { function peg$parseVariableStatement() { var s0, s1, s2, s3, s4, s5, s6; - var key = peg$currPos * 224 + 172, + var key = peg$currPos * 225 + 173, cached = peg$resultsCache[key]; if (cached) { @@ -13625,7 +13904,7 @@ function peg$parse(input, options) { s6 = peg$parseEOS(); if (s6 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c384(s1, s3, s5); + s1 = peg$c392(s1, s3, s5); s0 = s1; } else { peg$currPos = s0; @@ -13773,7 +14052,7 @@ function peg$parse(input, options) { s6 = peg$parseEOS(); if (s6 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c385(s1, s3, s5); + s1 = peg$c393(s1, s3, s5); s0 = s1; } else { peg$currPos = s0; @@ -13809,7 +14088,7 @@ function peg$parse(input, options) { function peg$parseVariableDeclarationTuple() { var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11; - var key = peg$currPos * 224 + 173, + var key = peg$currPos * 225 + 174, cached = peg$resultsCache[key]; if (cached) { @@ -13820,11 +14099,11 @@ function peg$parse(input, options) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 40) { - s1 = peg$c245; + s1 = peg$c255; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c246); } + if (peg$silentFails === 0) { peg$fail(peg$c256); } } if (s1 !== peg$FAILED) { s2 = []; @@ -13901,11 +14180,11 @@ function peg$parse(input, options) { } if (s7 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 41) { - s8 = peg$c247; + s8 = peg$c257; peg$currPos++; } else { s8 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c248); } + if (peg$silentFails === 0) { peg$fail(peg$c258); } } if (s8 !== peg$FAILED) { s9 = peg$currPos; @@ -13925,7 +14204,7 @@ function peg$parse(input, options) { } if (s9 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c386(s4, s5, s9); + s1 = peg$c394(s4, s5, s9); s0 = s1; } else { peg$currPos = s0; @@ -13972,7 +14251,7 @@ function peg$parse(input, options) { function peg$parseVariableDeclarationNoInit() { var s0, s1; - var key = peg$currPos * 224 + 174, + var key = peg$currPos * 225 + 175, cached = peg$resultsCache[key]; if (cached) { @@ -13985,7 +14264,7 @@ function peg$parse(input, options) { s1 = peg$parseIdentifier(); if (s1 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c387(s1); + s1 = peg$c395(s1); } s0 = s1; @@ -13997,7 +14276,7 @@ function peg$parse(input, options) { function peg$parseVariableDeclarationList() { var s0, s1, s2, s3, s4, s5, s6, s7; - var key = peg$currPos * 224 + 175, + var key = peg$currPos * 225 + 176, cached = peg$resultsCache[key]; if (cached) { @@ -14014,11 +14293,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 44) { - s5 = peg$c242; + s5 = peg$c252; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -14049,11 +14328,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 44) { - s5 = peg$c242; + s5 = peg$c252; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -14081,7 +14360,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c280(s1, s2); + s1 = peg$c290(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -14100,7 +14379,7 @@ function peg$parse(input, options) { function peg$parseVariableDeclaration() { var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10; - var key = peg$currPos * 224 + 176, + var key = peg$currPos * 225 + 177, cached = peg$resultsCache[key]; if (cached) { @@ -14114,21 +14393,21 @@ function peg$parse(input, options) { if (s1 === peg$FAILED) { s1 = peg$currPos; if (input.charCodeAt(peg$currPos) === 40) { - s2 = peg$c245; + s2 = peg$c255; peg$currPos++; } else { s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c246); } + if (peg$silentFails === 0) { peg$fail(peg$c256); } } if (s2 !== peg$FAILED) { s3 = peg$parseIdentifier(); if (s3 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 41) { - s4 = peg$c247; + s4 = peg$c257; peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c248); } + if (peg$silentFails === 0) { peg$fail(peg$c258); } } if (s4 !== peg$FAILED) { s2 = [s2, s3, s4]; @@ -14150,11 +14429,11 @@ function peg$parse(input, options) { s2 = peg$parse__(); if (s2 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 58) { - s3 = peg$c281; + s3 = peg$c291; peg$currPos++; } else { s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c282); } + if (peg$silentFails === 0) { peg$fail(peg$c292); } } if (s3 !== peg$FAILED) { s4 = peg$parse__(); @@ -14162,11 +14441,11 @@ function peg$parse(input, options) { s5 = peg$parseType(); if (s5 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 63) { - s6 = peg$c294; + s6 = peg$c304; peg$currPos++; } else { s6 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c295); } + if (peg$silentFails === 0) { peg$fail(peg$c305); } } if (s6 === peg$FAILED) { s6 = null; @@ -14194,7 +14473,7 @@ function peg$parse(input, options) { } if (s8 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c388(s1, s5, s6, s8); + s1 = peg$c396(s1, s5, s6, s8); s0 = s1; } else { peg$currPos = s0; @@ -14237,7 +14516,7 @@ function peg$parse(input, options) { function peg$parseInitialiser() { var s0, s1, s2, s3, s4; - var key = peg$currPos * 224 + 177, + var key = peg$currPos * 225 + 178, cached = peg$resultsCache[key]; if (cached) { @@ -14248,21 +14527,21 @@ function peg$parse(input, options) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 61) { - s1 = peg$c291; + s1 = peg$c301; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } if (s1 !== peg$FAILED) { s2 = peg$currPos; peg$silentFails++; if (input.charCodeAt(peg$currPos) === 61) { - s3 = peg$c291; + s3 = peg$c301; peg$currPos++; } else { s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } peg$silentFails--; if (s3 === peg$FAILED) { @@ -14277,7 +14556,7 @@ function peg$parse(input, options) { s4 = peg$parseAssignmentExpression(); if (s4 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c389(s4); + s1 = peg$c397(s4); s0 = s1; } else { peg$currPos = s0; @@ -14304,7 +14583,7 @@ function peg$parse(input, options) { function peg$parseEmptyStatement() { var s0, s1; - var key = peg$currPos * 224 + 178, + var key = peg$currPos * 225 + 179, cached = peg$resultsCache[key]; if (cached) { @@ -14315,15 +14594,15 @@ function peg$parse(input, options) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 59) { - s1 = peg$c240; + s1 = peg$c250; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c241); } + if (peg$silentFails === 0) { peg$fail(peg$c251); } } if (s1 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c390(); + s1 = peg$c398(); } s0 = s1; @@ -14335,7 +14614,7 @@ function peg$parse(input, options) { function peg$parseExpressionStatement() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 179, + var key = peg$currPos * 225 + 180, cached = peg$resultsCache[key]; if (cached) { @@ -14348,11 +14627,11 @@ function peg$parse(input, options) { s1 = peg$currPos; peg$silentFails++; if (input.charCodeAt(peg$currPos) === 123) { - s2 = peg$c274; + s2 = peg$c286; peg$currPos++; } else { s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c275); } + if (peg$silentFails === 0) { peg$fail(peg$c287); } } if (s2 === peg$FAILED) { s2 = peg$parseContractToken(); @@ -14376,7 +14655,7 @@ function peg$parse(input, options) { s3 = peg$parseEOS(); if (s3 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c391(s2); + s1 = peg$c399(s2); s0 = s1; } else { peg$currPos = s0; @@ -14399,7 +14678,7 @@ function peg$parse(input, options) { function peg$parseTryStatement() { var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11; - var key = peg$currPos * 224 + 180, + var key = peg$currPos * 225 + 181, cached = peg$resultsCache[key]; if (cached) { @@ -14429,11 +14708,11 @@ function peg$parse(input, options) { s7 = peg$parse__(); if (s7 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 61) { - s8 = peg$c291; + s8 = peg$c301; peg$currPos++; } else { s8 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } if (s8 !== peg$FAILED) { s9 = peg$parse__(); @@ -14457,11 +14736,11 @@ function peg$parse(input, options) { s7 = peg$parse__(); if (s7 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 61) { - s8 = peg$c291; + s8 = peg$c301; peg$currPos++; } else { s8 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } if (s8 !== peg$FAILED) { s9 = peg$parse__(); @@ -14525,11 +14804,11 @@ function peg$parse(input, options) { s7 = peg$parse__(); if (s7 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 61) { - s8 = peg$c291; + s8 = peg$c301; peg$currPos++; } else { s8 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } if (s8 !== peg$FAILED) { s9 = peg$parse__(); @@ -14553,11 +14832,11 @@ function peg$parse(input, options) { s7 = peg$parse__(); if (s7 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 61) { - s8 = peg$c291; + s8 = peg$c301; peg$currPos++; } else { s8 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } if (s8 !== peg$FAILED) { s9 = peg$parse__(); @@ -14622,7 +14901,7 @@ function peg$parse(input, options) { } if (s8 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c392(s3, s4, s6, s8); + s1 = peg$c400(s3, s4, s6, s8); s0 = s1; } else { peg$currPos = s0; @@ -14678,11 +14957,11 @@ function peg$parse(input, options) { s7 = peg$parse__(); if (s7 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 61) { - s8 = peg$c291; + s8 = peg$c301; peg$currPos++; } else { s8 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } if (s8 !== peg$FAILED) { s9 = peg$parse__(); @@ -14706,11 +14985,11 @@ function peg$parse(input, options) { s7 = peg$parse__(); if (s7 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 61) { - s8 = peg$c291; + s8 = peg$c301; peg$currPos++; } else { s8 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } if (s8 !== peg$FAILED) { s9 = peg$parse__(); @@ -14774,11 +15053,11 @@ function peg$parse(input, options) { s7 = peg$parse__(); if (s7 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 61) { - s8 = peg$c291; + s8 = peg$c301; peg$currPos++; } else { s8 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } if (s8 !== peg$FAILED) { s9 = peg$parse__(); @@ -14802,11 +15081,11 @@ function peg$parse(input, options) { s7 = peg$parse__(); if (s7 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 61) { - s8 = peg$c291; + s8 = peg$c301; peg$currPos++; } else { s8 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c292); } + if (peg$silentFails === 0) { peg$fail(peg$c302); } } if (s8 !== peg$FAILED) { s9 = peg$parse__(); @@ -14869,7 +15148,7 @@ function peg$parse(input, options) { } if (s7 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c393(s3, s4, s5, s7); + s1 = peg$c401(s3, s4, s5, s7); s0 = s1; } else { peg$currPos = s0; @@ -14909,7 +15188,7 @@ function peg$parse(input, options) { function peg$parseCatchStatements() { var s0, s1, s2, s3, s4, s5; - var key = peg$currPos * 224 + 181, + var key = peg$currPos * 225 + 182, cached = peg$resultsCache[key]; if (cached) { @@ -14957,7 +15236,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c378(s1, s2); + s1 = peg$c386(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -14976,7 +15255,7 @@ function peg$parse(input, options) { function peg$parseCatchStatement() { var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11; - var key = peg$currPos * 224 + 182, + var key = peg$currPos * 225 + 183, cached = peg$resultsCache[key]; if (cached) { @@ -14991,11 +15270,11 @@ function peg$parse(input, options) { s2 = peg$parse__(); if (s2 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 40) { - s3 = peg$c245; + s3 = peg$c255; peg$currPos++; } else { s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c246); } + if (peg$silentFails === 0) { peg$fail(peg$c256); } } if (s3 !== peg$FAILED) { s4 = peg$parse__(); @@ -15005,11 +15284,11 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 41) { - s7 = peg$c247; + s7 = peg$c257; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c248); } + if (peg$silentFails === 0) { peg$fail(peg$c258); } } if (s7 !== peg$FAILED) { s8 = peg$parse__(); @@ -15017,7 +15296,7 @@ function peg$parse(input, options) { s9 = peg$parseBlock(); if (s9 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c394(s5, s9); + s1 = peg$c402(s5, s9); s0 = s1; } else { peg$currPos = s0; @@ -15064,7 +15343,7 @@ function peg$parse(input, options) { s3 = peg$parseBlock(); if (s3 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c395(s3); + s1 = peg$c403(s3); s0 = s1; } else { peg$currPos = s0; @@ -15084,22 +15363,22 @@ function peg$parse(input, options) { if (s1 !== peg$FAILED) { s2 = peg$parse__(); if (s2 !== peg$FAILED) { - if (input.substr(peg$currPos, 5) === peg$c396) { - s3 = peg$c396; + if (input.substr(peg$currPos, 5) === peg$c404) { + s3 = peg$c404; peg$currPos += 5; } else { s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c397); } + if (peg$silentFails === 0) { peg$fail(peg$c405); } } if (s3 !== peg$FAILED) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 40) { - s5 = peg$c245; + s5 = peg$c255; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c246); } + if (peg$silentFails === 0) { peg$fail(peg$c256); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -15109,11 +15388,11 @@ function peg$parse(input, options) { s8 = peg$parse__(); if (s8 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 41) { - s9 = peg$c247; + s9 = peg$c257; peg$currPos++; } else { s9 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c248); } + if (peg$silentFails === 0) { peg$fail(peg$c258); } } if (s9 !== peg$FAILED) { s10 = peg$parse__(); @@ -15121,7 +15400,7 @@ function peg$parse(input, options) { s11 = peg$parseBlock(); if (s11 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c394(s7, s11); + s1 = peg$c402(s7, s11); s0 = s1; } else { peg$currPos = s0; @@ -15178,7 +15457,7 @@ function peg$parse(input, options) { function peg$parseIfStatement() { var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13; - var key = peg$currPos * 224 + 183, + var key = peg$currPos * 225 + 184, cached = peg$resultsCache[key]; if (cached) { @@ -15193,11 +15472,11 @@ function peg$parse(input, options) { s2 = peg$parse__(); if (s2 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 40) { - s3 = peg$c245; + s3 = peg$c255; peg$currPos++; } else { s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c246); } + if (peg$silentFails === 0) { peg$fail(peg$c256); } } if (s3 === peg$FAILED) { s3 = null; @@ -15210,11 +15489,11 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 41) { - s7 = peg$c247; + s7 = peg$c257; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c248); } + if (peg$silentFails === 0) { peg$fail(peg$c258); } } if (s7 === peg$FAILED) { s7 = null; @@ -15233,7 +15512,7 @@ function peg$parse(input, options) { s13 = peg$parseStatement(); if (s13 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c398(s5, s9, s13); + s1 = peg$c406(s5, s9, s13); s0 = s1; } else { peg$currPos = s0; @@ -15294,11 +15573,11 @@ function peg$parse(input, options) { s2 = peg$parse__(); if (s2 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 40) { - s3 = peg$c245; + s3 = peg$c255; peg$currPos++; } else { s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c246); } + if (peg$silentFails === 0) { peg$fail(peg$c256); } } if (s3 === peg$FAILED) { s3 = null; @@ -15311,11 +15590,11 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 41) { - s7 = peg$c247; + s7 = peg$c257; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c248); } + if (peg$silentFails === 0) { peg$fail(peg$c258); } } if (s7 === peg$FAILED) { s7 = null; @@ -15326,7 +15605,7 @@ function peg$parse(input, options) { s9 = peg$parseStatement(); if (s9 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c399(s5, s9); + s1 = peg$c407(s5, s9); s0 = s1; } else { peg$currPos = s0; @@ -15374,7 +15653,7 @@ function peg$parse(input, options) { function peg$parseImportStatement() { var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13; - var key = peg$currPos * 224 + 184, + var key = peg$currPos * 225 + 185, cached = peg$resultsCache[key]; if (cached) { @@ -15422,7 +15701,7 @@ function peg$parse(input, options) { s7 = peg$parseEOS(); if (s7 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c400(s3, s5); + s1 = peg$c408(s3, s5); s0 = s1; } else { peg$currPos = s0; @@ -15473,7 +15752,7 @@ function peg$parse(input, options) { s9 = peg$parseEOS(); if (s9 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c401(s3, s7); + s1 = peg$c409(s3, s7); s0 = s1; } else { peg$currPos = s0; @@ -15518,11 +15797,11 @@ function peg$parse(input, options) { s2 = peg$parse__(); if (s2 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 123) { - s3 = peg$c274; + s3 = peg$c286; peg$currPos++; } else { s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c275); } + if (peg$silentFails === 0) { peg$fail(peg$c287); } } if (s3 !== peg$FAILED) { s4 = peg$parse__(); @@ -15532,11 +15811,11 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 125) { - s7 = peg$c276; + s7 = peg$c106; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c277); } + if (peg$silentFails === 0) { peg$fail(peg$c107); } } if (s7 !== peg$FAILED) { s8 = peg$parse__(); @@ -15552,7 +15831,7 @@ function peg$parse(input, options) { s13 = peg$parseEOS(); if (s13 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c402(s5, s11); + s1 = peg$c410(s5, s11); s0 = s1; } else { peg$currPos = s0; @@ -15617,7 +15896,7 @@ function peg$parse(input, options) { function peg$parseSymbolList() { var s0, s1, s2, s3, s4, s5, s6, s7; - var key = peg$currPos * 224 + 185, + var key = peg$currPos * 225 + 186, cached = peg$resultsCache[key]; if (cached) { @@ -15634,11 +15913,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 44) { - s5 = peg$c242; + s5 = peg$c252; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -15669,11 +15948,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 44) { - s5 = peg$c242; + s5 = peg$c252; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -15701,7 +15980,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c280(s1, s2); + s1 = peg$c290(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -15720,7 +15999,7 @@ function peg$parse(input, options) { function peg$parseSymbol() { var s0, s1, s2, s3, s4, s5, s6; - var key = peg$currPos * 224 + 186, + var key = peg$currPos * 225 + 187, cached = peg$resultsCache[key]; if (cached) { @@ -15760,7 +16039,7 @@ function peg$parse(input, options) { } if (s3 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c403(s1, s3); + s1 = peg$c411(s1, s3); s0 = s1; } else { peg$currPos = s0; @@ -15783,7 +16062,7 @@ function peg$parse(input, options) { function peg$parseGlobalSymbol() { var s0, s1, s2, s3, s4, s5, s6; - var key = peg$currPos * 224 + 187, + var key = peg$currPos * 225 + 188, cached = peg$resultsCache[key]; if (cached) { @@ -15794,11 +16073,11 @@ function peg$parse(input, options) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 42) { - s1 = peg$c316; + s1 = peg$c324; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c317); } + if (peg$silentFails === 0) { peg$fail(peg$c325); } } if (s1 !== peg$FAILED) { s2 = peg$parse__(); @@ -15826,7 +16105,7 @@ function peg$parse(input, options) { } if (s3 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c404(s1, s3); + s1 = peg$c412(s1, s3); s0 = s1; } else { peg$currPos = s0; @@ -15847,9 +16126,9 @@ function peg$parse(input, options) { } function peg$parseIterationStatement() { - var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12; + var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, s16, s17; - var key = peg$currPos * 224 + 188, + var key = peg$currPos * 225 + 189, cached = peg$resultsCache[key]; if (cached) { @@ -15872,11 +16151,11 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 40) { - s7 = peg$c245; + s7 = peg$c255; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c246); } + if (peg$silentFails === 0) { peg$fail(peg$c256); } } if (s7 !== peg$FAILED) { s8 = peg$parse__(); @@ -15886,17 +16165,17 @@ function peg$parse(input, options) { s10 = peg$parse__(); if (s10 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 41) { - s11 = peg$c247; + s11 = peg$c257; peg$currPos++; } else { s11 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c248); } + if (peg$silentFails === 0) { peg$fail(peg$c258); } } if (s11 !== peg$FAILED) { s12 = peg$parseEOS(); if (s12 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c405(s3, s9); + s1 = peg$c413(s3, s9); s0 = s1; } else { peg$currPos = s0; @@ -15953,11 +16232,11 @@ function peg$parse(input, options) { s2 = peg$parse__(); if (s2 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 40) { - s3 = peg$c245; + s3 = peg$c255; peg$currPos++; } else { s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c246); } + if (peg$silentFails === 0) { peg$fail(peg$c256); } } if (s3 !== peg$FAILED) { s4 = peg$parse__(); @@ -15967,11 +16246,11 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 41) { - s7 = peg$c247; + s7 = peg$c257; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c248); } + if (peg$silentFails === 0) { peg$fail(peg$c258); } } if (s7 !== peg$FAILED) { s8 = peg$parse__(); @@ -15979,7 +16258,7 @@ function peg$parse(input, options) { s9 = peg$parseStatement(); if (s9 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c406(s5, s9); + s1 = peg$c414(s5, s9); s0 = s1; } else { peg$currPos = s0; @@ -16024,11 +16303,11 @@ function peg$parse(input, options) { s2 = peg$parse__(); if (s2 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 40) { - s3 = peg$c245; + s3 = peg$c255; peg$currPos++; } else { s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c246); } + if (peg$silentFails === 0) { peg$fail(peg$c256); } } if (s3 !== peg$FAILED) { s4 = peg$parse__(); @@ -16062,11 +16341,11 @@ function peg$parse(input, options) { s8 = peg$parse__(); if (s8 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 41) { - s9 = peg$c247; + s9 = peg$c257; peg$currPos++; } else { s9 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c248); } + if (peg$silentFails === 0) { peg$fail(peg$c258); } } if (s9 !== peg$FAILED) { s10 = peg$parse__(); @@ -16074,7 +16353,7 @@ function peg$parse(input, options) { s11 = peg$parseStatement(); if (s11 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c407(s5, s11); + s1 = peg$c415(s5, s11); s0 = s1; } else { peg$currPos = s0; @@ -16120,6 +16399,138 @@ function peg$parse(input, options) { peg$currPos = s0; s0 = peg$FAILED; } + if (s0 === peg$FAILED) { + s0 = peg$currPos; + s1 = peg$parseForeachToken(); + if (s1 !== peg$FAILED) { + s2 = peg$parse__(); + if (s2 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 40) { + s3 = peg$c255; + peg$currPos++; + } else { + s3 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c256); } + } + if (s3 !== peg$FAILED) { + s4 = peg$parse__(); + if (s4 !== peg$FAILED) { + s5 = peg$parseIdentifierName(); + if (s5 !== peg$FAILED) { + s6 = peg$parse__(); + if (s6 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 44) { + s7 = peg$c252; + peg$currPos++; + } else { + s7 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c253); } + } + if (s7 !== peg$FAILED) { + s8 = peg$parse__(); + if (s8 !== peg$FAILED) { + s9 = peg$parseIdentifierName(); + if (s9 !== peg$FAILED) { + s10 = peg$parse__(); + if (s10 !== peg$FAILED) { + if (input.substr(peg$currPos, 2) === peg$c416) { + s11 = peg$c416; + peg$currPos += 2; + } else { + s11 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c417); } + } + if (s11 !== peg$FAILED) { + s12 = peg$parse__(); + if (s12 !== peg$FAILED) { + s13 = peg$parseIdentifierName(); + if (s13 !== peg$FAILED) { + s14 = peg$parse__(); + if (s14 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 41) { + s15 = peg$c257; + peg$currPos++; + } else { + s15 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c258); } + } + if (s15 !== peg$FAILED) { + s16 = peg$parse__(); + if (s16 !== peg$FAILED) { + s17 = peg$parseStatement(); + if (s17 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c418(s5, s9, s13, s17); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } } } @@ -16131,7 +16542,7 @@ function peg$parse(input, options) { function peg$parsePlaceholderStatement() { var s0, s1, s2, s3, s4; - var key = peg$currPos * 224 + 189, + var key = peg$currPos * 225 + 190, cached = peg$resultsCache[key]; if (cached) { @@ -16169,7 +16580,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c408(); + s1 = peg$c419(); s0 = s1; } else { peg$currPos = s0; @@ -16188,7 +16599,7 @@ function peg$parse(input, options) { function peg$parseContinueStatement() { var s0, s1, s2, s3, s4; - var key = peg$currPos * 224 + 190, + var key = peg$currPos * 225 + 191, cached = peg$resultsCache[key]; if (cached) { @@ -16203,7 +16614,7 @@ function peg$parse(input, options) { s2 = peg$parseEOS(); if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c409(); + s1 = peg$c420(); s0 = s1; } else { peg$currPos = s0; @@ -16224,7 +16635,7 @@ function peg$parse(input, options) { s4 = peg$parseEOS(); if (s4 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c410(s3); + s1 = peg$c421(s3); s0 = s1; } else { peg$currPos = s0; @@ -16252,7 +16663,7 @@ function peg$parse(input, options) { function peg$parseBreakStatement() { var s0, s1, s2, s3, s4; - var key = peg$currPos * 224 + 191, + var key = peg$currPos * 225 + 192, cached = peg$resultsCache[key]; if (cached) { @@ -16267,7 +16678,7 @@ function peg$parse(input, options) { s2 = peg$parseEOS(); if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c411(); + s1 = peg$c422(); s0 = s1; } else { peg$currPos = s0; @@ -16288,7 +16699,7 @@ function peg$parse(input, options) { s4 = peg$parseEOS(); if (s4 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c412(s3); + s1 = peg$c423(s3); s0 = s1; } else { peg$currPos = s0; @@ -16316,7 +16727,7 @@ function peg$parse(input, options) { function peg$parseReturnStatement() { var s0, s1, s2, s3, s4, s5, s6; - var key = peg$currPos * 224 + 192, + var key = peg$currPos * 225 + 193, cached = peg$resultsCache[key]; if (cached) { @@ -16331,7 +16742,7 @@ function peg$parse(input, options) { s2 = peg$parseEOS(); if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c413(); + s1 = peg$c424(); s0 = s1; } else { peg$currPos = s0; @@ -16359,7 +16770,7 @@ function peg$parse(input, options) { s6 = peg$parseEOS(); if (s6 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c414(s3, s5); + s1 = peg$c425(s3, s5); s0 = s1; } else { peg$currPos = s0; @@ -16395,7 +16806,7 @@ function peg$parse(input, options) { function peg$parseThrowStatement() { var s0, s1, s2, s3, s4, s5, s6, s7, s8; - var key = peg$currPos * 224 + 193, + var key = peg$currPos * 225 + 194, cached = peg$resultsCache[key]; if (cached) { @@ -16410,11 +16821,11 @@ function peg$parse(input, options) { s2 = peg$parse__(); if (s2 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 40) { - s3 = peg$c245; + s3 = peg$c255; peg$currPos++; } else { s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c246); } + if (peg$silentFails === 0) { peg$fail(peg$c256); } } if (s3 !== peg$FAILED) { s4 = peg$parse__(); @@ -16424,17 +16835,17 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 41) { - s7 = peg$c247; + s7 = peg$c257; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c248); } + if (peg$silentFails === 0) { peg$fail(peg$c258); } } if (s7 !== peg$FAILED) { s8 = peg$parseEOS(); if (s8 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c415(s5); + s1 = peg$c426(s5); s0 = s1; } else { peg$currPos = s0; @@ -16477,7 +16888,7 @@ function peg$parse(input, options) { function peg$parsePrimitiveStatement() { var s0, s1, s2, s3, s4; - var key = peg$currPos * 224 + 194, + var key = peg$currPos * 225 + 195, cached = peg$resultsCache[key]; if (cached) { @@ -16496,7 +16907,7 @@ function peg$parse(input, options) { s4 = peg$parseEOS(); if (s4 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c416(s3); + s1 = peg$c427(s3); s0 = s1; } else { peg$currPos = s0; @@ -16523,7 +16934,7 @@ function peg$parse(input, options) { function peg$parseTraitStatement() { var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12; - var key = peg$currPos * 224 + 195, + var key = peg$currPos * 225 + 196, cached = peg$resultsCache[key]; if (cached) { @@ -16535,23 +16946,23 @@ function peg$parse(input, options) { s0 = peg$currPos; s1 = peg$currPos; if (input.charCodeAt(peg$currPos) === 64) { - s2 = peg$c417; + s2 = peg$c428; peg$currPos++; } else { s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c418); } + if (peg$silentFails === 0) { peg$fail(peg$c429); } } if (s2 !== peg$FAILED) { s3 = peg$parseInterfaceToken(); if (s3 !== peg$FAILED) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c419) { - s5 = peg$c419; + if (input.substr(peg$currPos, 2) === peg$c430) { + s5 = peg$c430; peg$currPos += 2; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c420); } + if (peg$silentFails === 0) { peg$fail(peg$c431); } } if (s5 !== peg$FAILED) { s6 = []; @@ -16579,12 +16990,12 @@ function peg$parse(input, options) { } } if (s6 !== peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c421) { - s7 = peg$c421; + if (input.substr(peg$currPos, 2) === peg$c432) { + s7 = peg$c432; peg$currPos += 2; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c422); } + if (peg$silentFails === 0) { peg$fail(peg$c433); } } if (s7 !== peg$FAILED) { s8 = peg$parseLineTerminator(); @@ -16639,11 +17050,11 @@ function peg$parse(input, options) { s7 = peg$parse__(); if (s7 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 123) { - s8 = peg$c274; + s8 = peg$c286; peg$currPos++; } else { s8 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c275); } + if (peg$silentFails === 0) { peg$fail(peg$c287); } } if (s8 !== peg$FAILED) { s9 = peg$parse__(); @@ -16656,15 +17067,15 @@ function peg$parse(input, options) { s11 = peg$parse__(); if (s11 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 125) { - s12 = peg$c276; + s12 = peg$c106; peg$currPos++; } else { s12 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c277); } + if (peg$silentFails === 0) { peg$fail(peg$c107); } } if (s12 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c423(s1, s4, s6, s10); + s1 = peg$c434(s1, s4, s6, s10); s0 = s1; } else { peg$currPos = s0; @@ -16723,7 +17134,7 @@ function peg$parse(input, options) { function peg$parseContractStatement() { var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12; - var key = peg$currPos * 224 + 196, + var key = peg$currPos * 225 + 197, cached = peg$resultsCache[key]; if (cached) { @@ -16735,23 +17146,23 @@ function peg$parse(input, options) { s0 = peg$currPos; s1 = peg$currPos; if (input.charCodeAt(peg$currPos) === 64) { - s2 = peg$c417; + s2 = peg$c428; peg$currPos++; } else { s2 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c418); } + if (peg$silentFails === 0) { peg$fail(peg$c429); } } if (s2 !== peg$FAILED) { s3 = peg$parseInterfaceToken(); if (s3 !== peg$FAILED) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c419) { - s5 = peg$c419; + if (input.substr(peg$currPos, 2) === peg$c430) { + s5 = peg$c430; peg$currPos += 2; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c420); } + if (peg$silentFails === 0) { peg$fail(peg$c431); } } if (s5 !== peg$FAILED) { s6 = []; @@ -16779,12 +17190,12 @@ function peg$parse(input, options) { } } if (s6 !== peg$FAILED) { - if (input.substr(peg$currPos, 2) === peg$c421) { - s7 = peg$c421; + if (input.substr(peg$currPos, 2) === peg$c432) { + s7 = peg$c432; peg$currPos += 2; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c422); } + if (peg$silentFails === 0) { peg$fail(peg$c433); } } if (s7 !== peg$FAILED) { s8 = peg$parseLineTerminator(); @@ -16839,11 +17250,11 @@ function peg$parse(input, options) { s7 = peg$parse__(); if (s7 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 123) { - s8 = peg$c274; + s8 = peg$c286; peg$currPos++; } else { s8 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c275); } + if (peg$silentFails === 0) { peg$fail(peg$c287); } } if (s8 !== peg$FAILED) { s9 = peg$parse__(); @@ -16856,15 +17267,15 @@ function peg$parse(input, options) { s11 = peg$parse__(); if (s11 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 125) { - s12 = peg$c276; + s12 = peg$c106; peg$currPos++; } else { s12 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c277); } + if (peg$silentFails === 0) { peg$fail(peg$c107); } } if (s12 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c424(s1, s4, s6, s10); + s1 = peg$c435(s1, s4, s6, s10); s0 = s1; } else { peg$currPos = s0; @@ -16923,7 +17334,7 @@ function peg$parse(input, options) { function peg$parseMessageDeclaration() { var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10; - var key = peg$currPos * 224 + 197, + var key = peg$currPos * 225 + 198, cached = peg$resultsCache[key]; if (cached) { @@ -16937,11 +17348,11 @@ function peg$parse(input, options) { if (s1 !== peg$FAILED) { s2 = peg$currPos; if (input.charCodeAt(peg$currPos) === 40) { - s3 = peg$c245; + s3 = peg$c255; peg$currPos++; } else { s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c246); } + if (peg$silentFails === 0) { peg$fail(peg$c256); } } if (s3 !== peg$FAILED) { s4 = peg$parse__(); @@ -16951,11 +17362,11 @@ function peg$parse(input, options) { s6 = peg$parse__(); if (s6 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 41) { - s7 = peg$c247; + s7 = peg$c257; peg$currPos++; } else { s7 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c248); } + if (peg$silentFails === 0) { peg$fail(peg$c258); } } if (s7 !== peg$FAILED) { s3 = [s3, s4, s5, s6, s7]; @@ -16991,11 +17402,11 @@ function peg$parse(input, options) { s5 = peg$parse__(); if (s5 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 123) { - s6 = peg$c274; + s6 = peg$c286; peg$currPos++; } else { s6 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c275); } + if (peg$silentFails === 0) { peg$fail(peg$c287); } } if (s6 !== peg$FAILED) { s7 = peg$parse__(); @@ -17008,15 +17419,15 @@ function peg$parse(input, options) { s9 = peg$parse__(); if (s9 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 125) { - s10 = peg$c276; + s10 = peg$c106; peg$currPos++; } else { s10 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c277); } + if (peg$silentFails === 0) { peg$fail(peg$c107); } } if (s10 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c425(s2, s4, s8); + s1 = peg$c436(s2, s4, s8); s0 = s1; } else { peg$currPos = s0; @@ -17065,9 +17476,9 @@ function peg$parse(input, options) { } function peg$parseWithStatement() { - var s0, s1, s2, s3; + var s0, s1, s2, s3, s4, s5; - var key = peg$currPos * 224 + 198, + var key = peg$currPos * 225 + 199, cached = peg$resultsCache[key]; if (cached) { @@ -17083,9 +17494,30 @@ function peg$parse(input, options) { if (s2 !== peg$FAILED) { s3 = peg$parseCommaSeparatedModifierNameList(); if (s3 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c426(s3); - s0 = s1; + s4 = peg$parse__(); + if (s4 !== peg$FAILED) { + if (input.charCodeAt(peg$currPos) === 44) { + s5 = peg$c252; + peg$currPos++; + } else { + s5 = peg$FAILED; + if (peg$silentFails === 0) { peg$fail(peg$c253); } + } + if (s5 === peg$FAILED) { + s5 = null; + } + if (s5 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c437(s3); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { peg$currPos = s0; s0 = peg$FAILED; @@ -17105,9 +17537,9 @@ function peg$parse(input, options) { } function peg$parseFunctionDeclaration() { - var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, s16, s17, s18, s19; + var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, s16, s17, s18, s19, s20; - var key = peg$currPos * 224 + 199, + var key = peg$currPos * 225 + 200, cached = peg$resultsCache[key]; if (cached) { @@ -17117,64 +17549,70 @@ function peg$parse(input, options) { } s0 = peg$currPos; - s1 = peg$parseExtendsToken(); - if (s1 === peg$FAILED) { - s1 = null; - } + s1 = peg$parse__(); if (s1 !== peg$FAILED) { - s2 = peg$parse__(); + s2 = peg$parseExtendsToken(); + if (s2 === peg$FAILED) { + s2 = null; + } if (s2 !== peg$FAILED) { - s3 = peg$parseMutatesToken(); - if (s3 === peg$FAILED) { - s3 = null; - } + s3 = peg$parse__(); if (s3 !== peg$FAILED) { - s4 = peg$parse__(); + s4 = peg$parseMutatesToken(); + if (s4 === peg$FAILED) { + s4 = null; + } if (s4 !== peg$FAILED) { - s5 = peg$parseAbstractToken(); - if (s5 === peg$FAILED) { - s5 = null; - } + s5 = peg$parse__(); if (s5 !== peg$FAILED) { - s6 = peg$parse__(); + s6 = peg$parseAbstractToken(); + if (s6 === peg$FAILED) { + s6 = null; + } if (s6 !== peg$FAILED) { - s7 = peg$parsePublicToken(); - if (s7 === peg$FAILED) { - s7 = null; - } + s7 = peg$parse__(); if (s7 !== peg$FAILED) { - s8 = peg$parse__(); + s8 = peg$parsePublicToken(); + if (s8 === peg$FAILED) { + s8 = null; + } if (s8 !== peg$FAILED) { - s9 = peg$parseFunctionToken(); + s9 = peg$parse__(); if (s9 !== peg$FAILED) { - s10 = peg$parse__(); + s10 = peg$parseFunctionToken(); if (s10 !== peg$FAILED) { - s11 = peg$parseFunctionName(); + s11 = peg$parse__(); if (s11 !== peg$FAILED) { - s12 = peg$parse__(); + s12 = peg$parseFunctionName(); if (s12 !== peg$FAILED) { - s13 = peg$parseReturnsDeclarations(); - if (s13 === peg$FAILED) { - s13 = null; - } + s13 = peg$parse__(); if (s13 !== peg$FAILED) { - s14 = peg$parse__(); + s14 = peg$parseReturnsDeclarations(); + if (s14 === peg$FAILED) { + s14 = null; + } if (s14 !== peg$FAILED) { - s15 = peg$parseFunctionBody(); - if (s15 === peg$FAILED) { - s15 = null; - } + s15 = peg$parse__(); if (s15 !== peg$FAILED) { - s16 = peg$parse__(); + s16 = peg$parseFunctionBody(); + if (s16 === peg$FAILED) { + s16 = null; + } if (s16 !== peg$FAILED) { - s17 = peg$parseEOS(); - if (s17 === peg$FAILED) { - s17 = null; - } + s17 = peg$parse__(); if (s17 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c427(s1, s3, s5, s7, s11, s13, s15); - s0 = s1; + s18 = peg$parseEOS(); + if (s18 === peg$FAILED) { + s18 = null; + } + if (s18 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c438(s2, s4, s6, s8, s12, s14, s16); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { peg$currPos = s0; s0 = peg$FAILED; @@ -17245,12 +17683,12 @@ function peg$parse(input, options) { } if (s0 === peg$FAILED) { s0 = peg$currPos; - if (input.substr(peg$currPos, 6) === peg$c428) { - s1 = peg$c428; + if (input.substr(peg$currPos, 6) === peg$c439) { + s1 = peg$c439; peg$currPos += 6; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c429); } + if (peg$silentFails === 0) { peg$fail(peg$c440); } } if (s1 !== peg$FAILED) { s2 = peg$parse__(); @@ -17260,56 +17698,62 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 41) { - s5 = peg$c247; + s5 = peg$c257; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c248); } + if (peg$silentFails === 0) { peg$fail(peg$c258); } } if (s5 !== peg$FAILED) { s6 = peg$parseLineTerminator(); if (s6 !== peg$FAILED) { - s7 = peg$parseExtendsToken(); - if (s7 === peg$FAILED) { - s7 = null; - } + s7 = peg$parse__(); if (s7 !== peg$FAILED) { - s8 = peg$parse__(); + s8 = peg$parseExtendsToken(); + if (s8 === peg$FAILED) { + s8 = null; + } if (s8 !== peg$FAILED) { - s9 = peg$parseMutatesToken(); - if (s9 === peg$FAILED) { - s9 = null; - } + s9 = peg$parse__(); if (s9 !== peg$FAILED) { - s10 = peg$parse__(); + s10 = peg$parseMutatesToken(); + if (s10 === peg$FAILED) { + s10 = null; + } if (s10 !== peg$FAILED) { - s11 = peg$parsePublicToken(); - if (s11 === peg$FAILED) { - s11 = null; - } + s11 = peg$parse__(); if (s11 !== peg$FAILED) { - s12 = peg$parse__(); + s12 = peg$parsePublicToken(); + if (s12 === peg$FAILED) { + s12 = null; + } if (s12 !== peg$FAILED) { - s13 = peg$parseNativeToken(); + s13 = peg$parse__(); if (s13 !== peg$FAILED) { - s14 = peg$parse__(); + s14 = peg$parseNativeToken(); if (s14 !== peg$FAILED) { - s15 = peg$parseFunctionName(); + s15 = peg$parse__(); if (s15 !== peg$FAILED) { - s16 = peg$parse__(); + s16 = peg$parseFunctionName(); if (s16 !== peg$FAILED) { - s17 = peg$parseReturnsDeclarations(); - if (s17 === peg$FAILED) { - s17 = null; - } + s17 = peg$parse__(); if (s17 !== peg$FAILED) { - s18 = peg$parse__(); + s18 = peg$parseReturnsDeclarations(); + if (s18 === peg$FAILED) { + s18 = null; + } if (s18 !== peg$FAILED) { - s19 = peg$parseEOS(); + s19 = peg$parse__(); if (s19 !== peg$FAILED) { - peg$savedPos = s0; - s1 = peg$c430(s3, s7, s9, s11, s15, s17); - s0 = s1; + s20 = peg$parseEOS(); + if (s20 !== peg$FAILED) { + peg$savedPos = s0; + s1 = peg$c441(s3, s8, s10, s12, s16, s18); + s0 = s1; + } else { + peg$currPos = s0; + s0 = peg$FAILED; + } } else { peg$currPos = s0; s0 = peg$FAILED; @@ -17660,7 +18104,7 @@ function peg$parse(input, options) { } if (s11 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c431(s1, s5, s7, s9); + s1 = peg$c442(s1, s5, s7, s9); s0 = s1; } else { peg$currPos = s0; @@ -17726,7 +18170,7 @@ function peg$parse(input, options) { s7 = peg$parseFunctionBody(); if (s7 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c432(s3, s5, s7); + s1 = peg$c443(s3, s5, s7); s0 = s1; } else { peg$currPos = s0; @@ -17768,7 +18212,7 @@ function peg$parse(input, options) { function peg$parseInitDeclaration() { var s0, s1, s2, s3, s4, s5, s6, s7, s8; - var key = peg$currPos * 224 + 200, + var key = peg$currPos * 225 + 201, cached = peg$resultsCache[key]; if (cached) { @@ -17784,11 +18228,11 @@ function peg$parse(input, options) { if (s2 !== peg$FAILED) { s3 = peg$currPos; if (input.charCodeAt(peg$currPos) === 40) { - s4 = peg$c245; + s4 = peg$c255; peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c246); } + if (peg$silentFails === 0) { peg$fail(peg$c256); } } if (s4 !== peg$FAILED) { s5 = peg$parse__(); @@ -17801,11 +18245,11 @@ function peg$parse(input, options) { s7 = peg$parse__(); if (s7 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 41) { - s8 = peg$c247; + s8 = peg$c257; peg$currPos++; } else { s8 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c248); } + if (peg$silentFails === 0) { peg$fail(peg$c258); } } if (s8 !== peg$FAILED) { s4 = [s4, s5, s6, s7, s8]; @@ -17836,7 +18280,7 @@ function peg$parse(input, options) { s5 = peg$parseFunctionBody(); if (s5 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c433(s3, s5); + s1 = peg$c444(s3, s5); s0 = s1; } else { peg$currPos = s0; @@ -17867,7 +18311,7 @@ function peg$parse(input, options) { function peg$parseReceiveDeclaration() { var s0, s1, s2, s3, s4, s5, s6, s7, s8; - var key = peg$currPos * 224 + 201, + var key = peg$currPos * 225 + 202, cached = peg$resultsCache[key]; if (cached) { @@ -17883,11 +18327,11 @@ function peg$parse(input, options) { if (s2 !== peg$FAILED) { s3 = peg$currPos; if (input.charCodeAt(peg$currPos) === 40) { - s4 = peg$c245; + s4 = peg$c255; peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c246); } + if (peg$silentFails === 0) { peg$fail(peg$c256); } } if (s4 !== peg$FAILED) { s5 = peg$parse__(); @@ -17900,11 +18344,11 @@ function peg$parse(input, options) { s7 = peg$parse__(); if (s7 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 41) { - s8 = peg$c247; + s8 = peg$c257; peg$currPos++; } else { s8 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c248); } + if (peg$silentFails === 0) { peg$fail(peg$c258); } } if (s8 !== peg$FAILED) { s4 = [s4, s5, s6, s7, s8]; @@ -17935,7 +18379,7 @@ function peg$parse(input, options) { s5 = peg$parseFunctionBody(); if (s5 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c434(s3, s5); + s1 = peg$c445(s3, s5); s0 = s1; } else { peg$currPos = s0; @@ -17966,7 +18410,7 @@ function peg$parse(input, options) { function peg$parseExternalDeclaration() { var s0, s1, s2, s3, s4, s5, s6, s7, s8; - var key = peg$currPos * 224 + 202, + var key = peg$currPos * 225 + 203, cached = peg$resultsCache[key]; if (cached) { @@ -17982,11 +18426,11 @@ function peg$parse(input, options) { if (s2 !== peg$FAILED) { s3 = peg$currPos; if (input.charCodeAt(peg$currPos) === 40) { - s4 = peg$c245; + s4 = peg$c255; peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c246); } + if (peg$silentFails === 0) { peg$fail(peg$c256); } } if (s4 !== peg$FAILED) { s5 = peg$parse__(); @@ -17999,11 +18443,11 @@ function peg$parse(input, options) { s7 = peg$parse__(); if (s7 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 41) { - s8 = peg$c247; + s8 = peg$c257; peg$currPos++; } else { s8 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c248); } + if (peg$silentFails === 0) { peg$fail(peg$c258); } } if (s8 !== peg$FAILED) { s4 = [s4, s5, s6, s7, s8]; @@ -18034,7 +18478,7 @@ function peg$parse(input, options) { s5 = peg$parseFunctionBody(); if (s5 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c435(s3, s5); + s1 = peg$c446(s3, s5); s0 = s1; } else { peg$currPos = s0; @@ -18065,7 +18509,7 @@ function peg$parse(input, options) { function peg$parseOnBounceDeclaration() { var s0, s1, s2, s3, s4, s5, s6, s7, s8; - var key = peg$currPos * 224 + 203, + var key = peg$currPos * 225 + 204, cached = peg$resultsCache[key]; if (cached) { @@ -18081,11 +18525,11 @@ function peg$parse(input, options) { if (s2 !== peg$FAILED) { s3 = peg$currPos; if (input.charCodeAt(peg$currPos) === 40) { - s4 = peg$c245; + s4 = peg$c255; peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c246); } + if (peg$silentFails === 0) { peg$fail(peg$c256); } } if (s4 !== peg$FAILED) { s5 = peg$parse__(); @@ -18098,11 +18542,11 @@ function peg$parse(input, options) { s7 = peg$parse__(); if (s7 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 41) { - s8 = peg$c247; + s8 = peg$c257; peg$currPos++; } else { s8 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c248); } + if (peg$silentFails === 0) { peg$fail(peg$c258); } } if (s8 !== peg$FAILED) { s4 = [s4, s5, s6, s7, s8]; @@ -18133,7 +18577,7 @@ function peg$parse(input, options) { s5 = peg$parseFunctionBody(); if (s5 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c436(s3, s5); + s1 = peg$c447(s3, s5); s0 = s1; } else { peg$currPos = s0; @@ -18164,7 +18608,7 @@ function peg$parse(input, options) { function peg$parseReturnsDeclaration() { var s0, s1, s2, s3; - var key = peg$currPos * 224 + 204, + var key = peg$currPos * 225 + 205, cached = peg$resultsCache[key]; if (cached) { @@ -18181,7 +18625,7 @@ function peg$parse(input, options) { s3 = peg$parse__(); if (s3 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c437(s2); + s1 = peg$c448(s2); s0 = s1; } else { peg$currPos = s0; @@ -18204,7 +18648,7 @@ function peg$parse(input, options) { function peg$parseReturnsDeclarations() { var s0, s1, s2, s3, s4; - var key = peg$currPos * 224 + 205, + var key = peg$currPos * 225 + 206, cached = peg$resultsCache[key]; if (cached) { @@ -18215,11 +18659,11 @@ function peg$parse(input, options) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 58) { - s1 = peg$c281; + s1 = peg$c291; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c282); } + if (peg$silentFails === 0) { peg$fail(peg$c292); } } if (s1 !== peg$FAILED) { s2 = peg$parse__(); @@ -18230,18 +18674,18 @@ function peg$parse(input, options) { } if (s3 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 63) { - s4 = peg$c294; + s4 = peg$c304; peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c295); } + if (peg$silentFails === 0) { peg$fail(peg$c305); } } if (s4 === peg$FAILED) { s4 = null; } if (s4 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c438(s3, s4); + s1 = peg$c449(s3, s4); s0 = s1; } else { peg$currPos = s0; @@ -18268,7 +18712,7 @@ function peg$parse(input, options) { function peg$parseFunctionName() { var s0, s1, s2, s3, s4, s5, s6, s7, s8; - var key = peg$currPos * 224 + 206, + var key = peg$currPos * 225 + 207, cached = peg$resultsCache[key]; if (cached) { @@ -18287,11 +18731,11 @@ function peg$parse(input, options) { if (s2 !== peg$FAILED) { s3 = peg$currPos; if (input.charCodeAt(peg$currPos) === 40) { - s4 = peg$c245; + s4 = peg$c255; peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c246); } + if (peg$silentFails === 0) { peg$fail(peg$c256); } } if (s4 !== peg$FAILED) { s5 = peg$parse__(); @@ -18304,11 +18748,11 @@ function peg$parse(input, options) { s7 = peg$parse__(); if (s7 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 41) { - s8 = peg$c247; + s8 = peg$c257; peg$currPos++; } else { s8 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c248); } + if (peg$silentFails === 0) { peg$fail(peg$c258); } } if (s8 !== peg$FAILED) { s4 = [s4, s5, s6, s7, s8]; @@ -18335,7 +18779,7 @@ function peg$parse(input, options) { } if (s3 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c439(s1, s3); + s1 = peg$c450(s1, s3); s0 = s1; } else { peg$currPos = s0; @@ -18358,7 +18802,7 @@ function peg$parse(input, options) { function peg$parseModifierName() { var s0, s1, s2, s3, s4, s5, s6, s7, s8; - var key = peg$currPos * 224 + 207, + var key = peg$currPos * 225 + 208, cached = peg$resultsCache[key]; if (cached) { @@ -18374,11 +18818,11 @@ function peg$parse(input, options) { if (s2 !== peg$FAILED) { s3 = peg$currPos; if (input.charCodeAt(peg$currPos) === 40) { - s4 = peg$c245; + s4 = peg$c255; peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c246); } + if (peg$silentFails === 0) { peg$fail(peg$c256); } } if (s4 !== peg$FAILED) { s5 = peg$parse__(); @@ -18391,11 +18835,11 @@ function peg$parse(input, options) { s7 = peg$parse__(); if (s7 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 41) { - s8 = peg$c247; + s8 = peg$c257; peg$currPos++; } else { s8 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c248); } + if (peg$silentFails === 0) { peg$fail(peg$c258); } } if (s8 !== peg$FAILED) { s4 = [s4, s5, s6, s7, s8]; @@ -18425,7 +18869,7 @@ function peg$parse(input, options) { } if (s3 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c440(s1, s3); + s1 = peg$c451(s1, s3); s0 = s1; } else { peg$currPos = s0; @@ -18448,7 +18892,7 @@ function peg$parse(input, options) { function peg$parseModifierArgument() { var s0, s1, s2, s3, s4, s5, s6, s7, s8; - var key = peg$currPos * 224 + 208, + var key = peg$currPos * 225 + 209, cached = peg$resultsCache[key]; if (cached) { @@ -18464,11 +18908,11 @@ function peg$parse(input, options) { s3 = peg$parse__(); if (s3 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 40) { - s4 = peg$c245; + s4 = peg$c255; peg$currPos++; } else { s4 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c246); } + if (peg$silentFails === 0) { peg$fail(peg$c256); } } if (s4 !== peg$FAILED) { s5 = peg$parse__(); @@ -18481,11 +18925,11 @@ function peg$parse(input, options) { s7 = peg$parse__(); if (s7 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 41) { - s8 = peg$c247; + s8 = peg$c257; peg$currPos++; } else { s8 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c248); } + if (peg$silentFails === 0) { peg$fail(peg$c258); } } if (s8 !== peg$FAILED) { s3 = [s3, s4, s5, s6, s7, s8]; @@ -18519,7 +18963,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c441(s1, s2); + s1 = peg$c452(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -18538,7 +18982,7 @@ function peg$parse(input, options) { function peg$parseFunctionNameList() { var s0, s1, s2, s3, s4, s5; - var key = peg$currPos * 224 + 209, + var key = peg$currPos * 225 + 210, cached = peg$resultsCache[key]; if (cached) { @@ -18586,7 +19030,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c378(s1, s2); + s1 = peg$c386(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -18605,7 +19049,7 @@ function peg$parse(input, options) { function peg$parseModifierNameList() { var s0, s1, s2, s3, s4, s5; - var key = peg$currPos * 224 + 210, + var key = peg$currPos * 225 + 211, cached = peg$resultsCache[key]; if (cached) { @@ -18653,7 +19097,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c378(s1, s2); + s1 = peg$c386(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -18672,7 +19116,7 @@ function peg$parse(input, options) { function peg$parseModifierArgumentList() { var s0, s1, s2, s3, s4, s5; - var key = peg$currPos * 224 + 211, + var key = peg$currPos * 225 + 212, cached = peg$resultsCache[key]; if (cached) { @@ -18720,7 +19164,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c378(s1, s2); + s1 = peg$c386(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -18739,7 +19183,7 @@ function peg$parse(input, options) { function peg$parseModifierNameWithAlias() { var s0, s1, s2, s3, s4; - var key = peg$currPos * 224 + 212, + var key = peg$currPos * 225 + 213, cached = peg$resultsCache[key]; if (cached) { @@ -18799,7 +19243,7 @@ function peg$parse(input, options) { s2 = peg$parseModifierName(); if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c442(s1, s2); + s1 = peg$c453(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -18818,7 +19262,7 @@ function peg$parse(input, options) { function peg$parseCommaSeparatedModifierNameList() { var s0, s1, s2, s3, s4, s5, s6, s7; - var key = peg$currPos * 224 + 213, + var key = peg$currPos * 225 + 214, cached = peg$resultsCache[key]; if (cached) { @@ -18835,11 +19279,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 44) { - s5 = peg$c242; + s5 = peg$c252; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -18870,11 +19314,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 44) { - s5 = peg$c242; + s5 = peg$c252; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -18902,7 +19346,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c280(s1, s2); + s1 = peg$c290(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -18921,7 +19365,7 @@ function peg$parse(input, options) { function peg$parseInformalParameter() { var s0, s1, s2, s3, s4, s5, s6; - var key = peg$currPos * 224 + 214, + var key = peg$currPos * 225 + 215, cached = peg$resultsCache[key]; if (cached) { @@ -18939,11 +19383,11 @@ function peg$parse(input, options) { s2 = peg$parse__(); if (s2 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 58) { - s3 = peg$c281; + s3 = peg$c291; peg$currPos++; } else { s3 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c282); } + if (peg$silentFails === 0) { peg$fail(peg$c292); } } if (s3 !== peg$FAILED) { s4 = peg$parse__(); @@ -18951,18 +19395,18 @@ function peg$parse(input, options) { s5 = peg$parseType(); if (s5 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 63) { - s6 = peg$c294; + s6 = peg$c304; peg$currPos++; } else { s6 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c295); } + if (peg$silentFails === 0) { peg$fail(peg$c305); } } if (s6 === peg$FAILED) { s6 = null; } if (s6 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c443(s1, s5, s6); + s1 = peg$c454(s1, s5, s6); s0 = s1; } else { peg$currPos = s0; @@ -18997,7 +19441,7 @@ function peg$parse(input, options) { function peg$parseInformalParameterList() { var s0, s1, s2, s3, s4, s5, s6, s7; - var key = peg$currPos * 224 + 215, + var key = peg$currPos * 225 + 216, cached = peg$resultsCache[key]; if (cached) { @@ -19020,11 +19464,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 44) { - s5 = peg$c242; + s5 = peg$c252; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -19061,11 +19505,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 44) { - s5 = peg$c242; + s5 = peg$c252; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c243); } + if (peg$silentFails === 0) { peg$fail(peg$c253); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -19099,7 +19543,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c280(s1, s2); + s1 = peg$c290(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -19118,7 +19562,7 @@ function peg$parse(input, options) { function peg$parseFunctionBody() { var s0, s1, s2, s3, s4, s5; - var key = peg$currPos * 224 + 216, + var key = peg$currPos * 225 + 217, cached = peg$resultsCache[key]; if (cached) { @@ -19129,11 +19573,11 @@ function peg$parse(input, options) { s0 = peg$currPos; if (input.charCodeAt(peg$currPos) === 123) { - s1 = peg$c274; + s1 = peg$c286; peg$currPos++; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c275); } + if (peg$silentFails === 0) { peg$fail(peg$c287); } } if (s1 !== peg$FAILED) { s2 = peg$parse__(); @@ -19146,15 +19590,15 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 125) { - s5 = peg$c276; + s5 = peg$c106; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c277); } + if (peg$silentFails === 0) { peg$fail(peg$c107); } } if (s5 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c444(s3); + s1 = peg$c455(s3); s0 = s1; } else { peg$currPos = s0; @@ -19185,7 +19629,7 @@ function peg$parse(input, options) { function peg$parseStructDeclaration() { var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9; - var key = peg$currPos * 224 + 217, + var key = peg$currPos * 225 + 218, cached = peg$resultsCache[key]; if (cached) { @@ -19204,11 +19648,11 @@ function peg$parse(input, options) { s4 = peg$parse__(); if (s4 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 123) { - s5 = peg$c274; + s5 = peg$c286; peg$currPos++; } else { s5 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c275); } + if (peg$silentFails === 0) { peg$fail(peg$c287); } } if (s5 !== peg$FAILED) { s6 = peg$parse__(); @@ -19221,15 +19665,15 @@ function peg$parse(input, options) { s8 = peg$parse__(); if (s8 !== peg$FAILED) { if (input.charCodeAt(peg$currPos) === 125) { - s9 = peg$c276; + s9 = peg$c106; peg$currPos++; } else { s9 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c277); } + if (peg$silentFails === 0) { peg$fail(peg$c107); } } if (s9 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c445(s3, s7); + s1 = peg$c456(s3, s7); s0 = s1; } else { peg$currPos = s0; @@ -19276,7 +19720,7 @@ function peg$parse(input, options) { function peg$parseProgram() { var s0, s1; - var key = peg$currPos * 224 + 218, + var key = peg$currPos * 225 + 219, cached = peg$resultsCache[key]; if (cached) { @@ -19292,7 +19736,7 @@ function peg$parse(input, options) { } if (s1 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c446(s1); + s1 = peg$c457(s1); } s0 = s1; @@ -19304,7 +19748,7 @@ function peg$parse(input, options) { function peg$parseSourceUnits() { var s0, s1, s2, s3, s4, s5; - var key = peg$currPos * 224 + 219, + var key = peg$currPos * 225 + 220, cached = peg$resultsCache[key]; if (cached) { @@ -19352,7 +19796,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c378(s1, s2); + s1 = peg$c386(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -19371,7 +19815,7 @@ function peg$parse(input, options) { function peg$parseSourceUnit() { var s0; - var key = peg$currPos * 224 + 220, + var key = peg$currPos * 225 + 221, cached = peg$resultsCache[key]; if (cached) { @@ -19411,7 +19855,7 @@ function peg$parse(input, options) { function peg$parseSourceElements() { var s0, s1, s2, s3, s4, s5; - var key = peg$currPos * 224 + 221, + var key = peg$currPos * 225 + 222, cached = peg$resultsCache[key]; if (cached) { @@ -19459,7 +19903,7 @@ function peg$parse(input, options) { } if (s2 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c378(s1, s2); + s1 = peg$c386(s1, s2); s0 = s1; } else { peg$currPos = s0; @@ -19478,7 +19922,7 @@ function peg$parse(input, options) { function peg$parseSourceElement() { var s0; - var key = peg$currPos * 224 + 222, + var key = peg$currPos * 225 + 223, cached = peg$resultsCache[key]; if (cached) { @@ -19515,7 +19959,7 @@ function peg$parse(input, options) { function peg$parseReturnOpCode() { var s0, s1; - var key = peg$currPos * 224 + 223, + var key = peg$currPos * 225 + 224, cached = peg$resultsCache[key]; if (cached) { @@ -19525,16 +19969,16 @@ function peg$parse(input, options) { } s0 = peg$currPos; - if (input.substr(peg$currPos, 6) === peg$c182) { - s1 = peg$c182; + if (input.substr(peg$currPos, 6) === peg$c190) { + s1 = peg$c190; peg$currPos += 6; } else { s1 = peg$FAILED; - if (peg$silentFails === 0) { peg$fail(peg$c183); } + if (peg$silentFails === 0) { peg$fail(peg$c191); } } if (s1 !== peg$FAILED) { peg$savedPos = s0; - s1 = peg$c447(); + s1 = peg$c458(); } s0 = s1; @@ -19569,10 +20013,12 @@ function peg$parse(input, options) { } function extractList(list, index) { - var result = new Array(list.length), i; + var result = new Array(), i; for (i = 0; i < list.length; i++) { - result[i] = list[i][index]; + if (list[i][index].length != 0) { + result[i] = list[i][index]; + } } return result; diff --git a/src/parser/tact.pegjs b/src/parser/tact.pegjs index 39b4587..9135e8e 100644 --- a/src/parser/tact.pegjs +++ b/src/parser/tact.pegjs @@ -51,10 +51,12 @@ } function extractList(list, index) { - var result = new Array(list.length), i; + var result = new Array(), i; for (i = 0; i < list.length; i++) { - result[i] = list[i][index]; + if (list[i][index].length != 0) { + result[i] = list[i][index]; + } } return result; @@ -333,14 +335,14 @@ CharacterEscapeSequence SingleEscapeCharacter = "'" - / '"' - / "\\" - / "b" { return "\b"; } - / "f" { return "\f"; } - / "n" { return "\n"; } - / "r" { return "\r"; } - / "t" { return "\t"; } - / "v" { return "\x0B"; } // IE does not recognize "\v". + / '"' { return "\\\""; } + / "\\" { return "\\\\"; } + / "b" { return "\\b"; } + / "f" { return "\\f"; } + / "n" { return "\\n"; } + / "r" { return "\\r"; } + / "t" { return "\\t"; } + / "v" { return "\\v"; } NonEscapeCharacter = !(EscapeCharacter / LineTerminator) SourceCharacter { return text(); } @@ -353,12 +355,15 @@ EscapeCharacter HexEscapeSequence = "x" digits:$(HexDigit HexDigit) { - return String.fromCharCode(parseInt(digits, 16)); + return "\\" + "x" + digits; } UnicodeEscapeSequence = "u" digits:$(HexDigit HexDigit HexDigit HexDigit) { - return String.fromCharCode(parseInt(digits, 16)); + return "\\" + "u" + digits; + } / + "u{" digits:$(HexDigit HexDigit? HexDigit? HexDigit? HexDigit? HexDigit?) "}" { + return "\\" + "u{" + digits + "}"; } VersionLiteral @@ -480,6 +485,7 @@ ThrowToken = "throw" !IdentifierPart TrueToken = "true" !IdentifierPart TonToken = "ton" !IdentifierPart WhileToken = "while" !IdentifierPart +ForeachToken = "foreach" !IdentifierPart UntilToken = "until" !IdentifierPart ContextToken = "Context" !IdentifierPart @@ -650,13 +656,13 @@ InitOfExpression CallExpression = head:( - callee:MemberExpression __ args:Arguments { - return { type: "CallExpression", callee: callee, arguments: args != null ? args[0]: null, argumentsType: args != null ? args[1]: null, start: location().start.offset, end: location().end.offset }; + callee:MemberExpression __ args:Arguments __ optionalArgs:"!!"? { + return { type: "CallExpression", callee: callee, arguments: args != null ? args[0]: null, argumentsType: args != null ? args[1]: null, optional: optionalArgs != null, start: location().start.offset, end: location().end.offset }; } ) tail:( - __ args:Arguments { - return { type: "CallExpression", arguments: args != null ? args[0]: null, argumentsType: args != null ? args[1]: null, start: location().start.offset, end: location().end.offset }; + __ args:Arguments __ optionalArgs:"!!"? { + return { type: "CallExpression", arguments: args != null ? args[0]: null, argumentsType: args != null ? args[1]: null, optional: optionalArgs != null, start: location().start.offset, end: location().end.offset }; } / __ "[" __ property:Expression __ "]" { return { @@ -697,17 +703,17 @@ Arguments } ArgumentList - = head:AssignmentExpression tail:(__ "," __ AssignmentExpression)* { + = head:AssignmentExpression tail:(__ "," __ AssignmentExpression)* ","? { return buildList(head, tail, 3); } NameValueList - = head:NameValueAssignment tail:(__ "," __ NameValueAssignment)* { + = head:NameValueAssignment tail:(__ "," __ NameValueAssignment)* ","? { return buildList(head, tail, 3); } NameValueAssignment - = name:Identifier __ ":" __ value:AssignmentExpression __ { + = name:Identifier __ ":"? __ value:AssignmentExpression? __ { return { type: "NameValueAssignment", name: name, @@ -1361,6 +1367,20 @@ IterationStatement end: location().end.offset }; } + / ForeachToken __ + "(" __ key:IdentifierName __ "," __ value:IdentifierName __ "in" __ mapName:IdentifierName __ ")" __ + body:Statement + { + return { + type: "ForeachStatement", + key: key, + value: value, + mapName: mapName, + body: body, + start: location().start.offset, + end: location().end.offset + }; + } PlaceholderStatement = "_" (__ EOS)? { @@ -1459,7 +1479,7 @@ MessageDeclaration } WithStatement - = WithToken __ modifiers:CommaSeparatedModifierNameList + = WithToken __ modifiers:CommaSeparatedModifierNameList __ ","? { return { type: "WithStatement", @@ -1472,7 +1492,7 @@ WithStatement /* ----- A.5 Functions and Programs ----- */ FunctionDeclaration - = is_extends:ExtendsToken? __ is_mutates:MutatesToken? __ is_abstract:AbstractToken? __ is_public:PublicToken? __ FunctionToken __ fnname:FunctionName __ returns:ReturnsDeclarations? __ body:FunctionBody? __ EOS? + = __ is_extends:ExtendsToken? __ is_mutates:MutatesToken? __ is_abstract:AbstractToken? __ is_public:PublicToken? __ FunctionToken __ fnname:FunctionName __ returns:ReturnsDeclarations? __ body:FunctionBody? __ EOS? { return { type: "FunctionDeclaration", @@ -1493,7 +1513,7 @@ FunctionDeclaration }; } / "@name(" __ id_native:Identifier __ ")" LineTerminator - is_extends:ExtendsToken? __ is_mutates:MutatesToken? __ is_public:PublicToken? __ NativeToken __ fnname:FunctionName __ returns:ReturnsDeclarations? __ EOS + __ is_extends:ExtendsToken? __ is_mutates:MutatesToken? __ is_public:PublicToken? __ NativeToken __ fnname:FunctionName __ returns:ReturnsDeclarations? __ EOS { return { type: "FunctionDeclaration", diff --git a/src/prettier-plugin-tact/types/CallExpression.ts b/src/prettier-plugin-tact/types/CallExpression.ts index dd1b0f2..3db6deb 100644 --- a/src/prettier-plugin-tact/types/CallExpression.ts +++ b/src/prettier-plugin-tact/types/CallExpression.ts @@ -51,10 +51,18 @@ const CallExpression = { }); // We wrap the expression in a label in case there is an IndexAccess or // a CallExpression following this IndexAccess. - return label('MemberAccessChain', [expressionDoc, bracketIn, argumentsDoc]); + if (node.optional) { + return label('MemberAccessChain', [expressionDoc, bracketIn, argumentsDoc, '!!']); + } else { + return label('MemberAccessChain', [expressionDoc, bracketIn, argumentsDoc]); + } } - return [expressionDoc, bracketIn, argumentsDoc]; + if (node.optional) { + return [expressionDoc, bracketIn, argumentsDoc, '!!']; + } else { + return [expressionDoc, bracketIn, argumentsDoc]; + } } }; diff --git a/src/prettier-plugin-tact/types/ForeachStatement.ts b/src/prettier-plugin-tact/types/ForeachStatement.ts new file mode 100644 index 0000000..54835bc --- /dev/null +++ b/src/prettier-plugin-tact/types/ForeachStatement.ts @@ -0,0 +1,27 @@ +import { doc } from 'prettier'; +const { group, indent, line } = doc.builders; + +const printBody = (node: any, path: any, print: any) => + node.body.type === 'BlockStatement' + ? [' ', path.call(print, 'body')] + : group(indent([line, path.call(print, 'body')])); + +const ForeachStatement = { + print: ({ node, path, print }: any) => //JSON.stringify(node) + [ + 'foreach (', + path.call(print, 'key'), + ' ', + ',', + ' ', + path.call(print, 'value'), + ' ', + 'in', + ' ', + path.call(print, 'mapName'), + ')', + printBody(node, path, print) + ] +}; + +export default ForeachStatement; diff --git a/src/prettier-plugin-tact/types/FunctionDeclaration.ts b/src/prettier-plugin-tact/types/FunctionDeclaration.ts index 0befd7a..4893477 100644 --- a/src/prettier-plugin-tact/types/FunctionDeclaration.ts +++ b/src/prettier-plugin-tact/types/FunctionDeclaration.ts @@ -5,7 +5,7 @@ const { getNextNonSpaceNonCommentCharacterIndex } = util; import { printComments, printSeparatedItem, printSeparatedList } from '../libs/printer-helpers'; const functionName = (node: any, options: any, path: any, print: any) => { - return `${node.modifier && node.modifier.length > 0 ? node.modifier.join(" "): ''}${node.is_native ? 'native': ' fun'} ${node.name}`; + return `${node.modifier && node.modifier.length > 0 ? node.modifier.join(" ") + ' ': ''}${node.is_native ? 'native': 'fun'} ${node.name}`; }; const parameters = (parametersType: any, node: any, path: any, print: any, options: any) => { diff --git a/src/prettier-plugin-tact/types/InitDeclaration.ts b/src/prettier-plugin-tact/types/InitDeclaration.ts index 76ff893..22b5c7f 100644 --- a/src/prettier-plugin-tact/types/InitDeclaration.ts +++ b/src/prettier-plugin-tact/types/InitDeclaration.ts @@ -37,15 +37,17 @@ const parameters = (parametersType: any, node: any, path: any, print: any, optio const body = (node: any, path: any, print: any) => (node.body ? path.call(print, 'body') : ''); const InitDeclaration = { - print: ({ node, path, print, options }: any) => [ - group([ - 'init', - '(', - parameters('params', node, path, print, options), - ')' - ]), - body(node, path, print) - ] + print: ({ node, path, print, options }: any) => { + return [ + group([ + 'init', + '(', + parameters('params', node, path, print, options), + ')' + ]), + body(node, path, print) + ] + } }; export default InitDeclaration; diff --git a/src/prettier-plugin-tact/types/NameValueAssignment.ts b/src/prettier-plugin-tact/types/NameValueAssignment.ts index 86c2914..a04602d 100644 --- a/src/prettier-plugin-tact/types/NameValueAssignment.ts +++ b/src/prettier-plugin-tact/types/NameValueAssignment.ts @@ -1,9 +1,11 @@ const NameValueExpression = { - print: ({ path, print }: any) => //JSON.stringify(path) - [ path.call(print, 'name'), - ": ", - path.call(print, 'value'), - ] + print: ({ node, path, print }: any) => { + if (node.value == null) { + return [ path.call(print, 'name') ] + } else { + return [ path.call(print, 'name'), ": ", path.call(print, 'value') ] + } + } }; export default NameValueExpression; \ No newline at end of file diff --git a/src/prettier-plugin-tact/types/index.ts b/src/prettier-plugin-tact/types/index.ts index 2d783fc..6560e9a 100644 --- a/src/prettier-plugin-tact/types/index.ts +++ b/src/prettier-plugin-tact/types/index.ts @@ -13,6 +13,7 @@ import DenominationLiteral from './DenominationLiteral'; import DoWhileStatement from './DoWhileStatement'; import EmptyStatement from './EmptyStatement'; import ExpressionStatement from './ExpressionStatement'; +import ForeachStatement from './ForeachStatement'; import FunctionDeclaration from './FunctionDeclaration'; import FunctionName from './FunctionName'; import Identifier from './Identifier'; @@ -60,7 +61,7 @@ import WhileStatement from './WhileStatement'; import WithStatement from './WithStatement'; export { ArrayExpression, AssignmentExpression, BinaryExpression, BlockStatement, BreakStatement, CallExpression, CatchClause, ConditionalExpression, - ContinueStatement, ContractStatement, DeclarativeExpression, DenominationLiteral, DoWhileStatement, EmptyStatement, ExpressionStatement, + ContinueStatement, ContractStatement, DeclarativeExpression, DenominationLiteral, DoWhileStatement, EmptyStatement, ExpressionStatement, ForeachStatement, FunctionDeclaration, FunctionName, Identifier, IfStatement, ImportStatement, IncompleteStatement, InformalParameter, InitDeclaration, InitOfExpression, Literal, LogicalExpression, MappingExpression, MemberExpression, MessageDeclaration, ModifierArgument, ModifierName, NameValueAssignment, NewExpression, OnBounceDeclaration, PlaceholderStatement, PrimitiveStatement, Program, ReceiveDeclaration, ExternalDeclaration, RepeatStatement, ReturnParams, ReturnStatement, diff --git a/syntaxes/tact.json b/syntaxes/tact.json index e68bb1d..4653c2a 100644 --- a/syntaxes/tact.json +++ b/syntaxes/tact.json @@ -213,7 +213,7 @@ "control-flow": { "patterns": [ { - "match": "\\b(if|else|while|do|until|repeat|return|extends|mutates|abstract|native|let|override|virtual|const|self|is|initOf|map|primitive|as|null)\\b", + "match": "\\b(if|else|foreach|in|while|do|until|repeat|return|extends|mutates|abstract|native|let|override|virtual|const|self|is|initOf|map|primitive|as|null|try|catch)\\b", "name": "keyword.control.flow" } ] @@ -332,11 +332,11 @@ "string": { "patterns": [ { - "match": "\\\".*?\\\"", + "match": "\\\"(?:(?:\\\\\")|[^\\\"])*\\\"", "name": "string.quoted.double" }, { - "match": "\\'.*?\\'", + "match": "\\'[^\\']*\\'", "name": "string.quoted.single" } ] diff --git a/yarn.lock b/yarn.lock index 47aa56b..35ac4e8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -157,25 +157,25 @@ resolved "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.25.21.tgz" integrity sha512-gFukHN4t8K4+wVC+ECqeqwzBDeFeTzBXroBTqE6vcWrQGbEUpHO7LYdG0f4xnvYq4VOEwITSlHlp0JBAIFMS/g== -"@tact-lang/compiler@^1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@tact-lang/compiler/-/compiler-1.2.0.tgz#803b2ea7ca37a6fd99da731f584715596bf2270e" - integrity sha512-H44pj+DV6G9CYbl+oVOSHbwcicrxA5sZ0sCVseb2Z7uTqptb3+hEj2p/rLS3AtJ/KeEibzasLGf5wgnX2eSLbw== +"@tact-lang/compiler@^1.3.0": + version "1.3.0" + resolved "https://registry.yarnpkg.com/@tact-lang/compiler/-/compiler-1.3.0.tgz#ed9d8a65ad8894b1f76435a138f91bb024b70d67" + integrity sha512-JER8kAritfvLFLOfKnFfJ+A7vB9RZJFwfO4c0AzWBuzDJCyOp6ByIhNPkn+srpoDOEd7U0yMIyzq4RjCnRyTJw== dependencies: "@ipld/dag-pb" "2.1.18" "@tact-lang/opcode" "^0.0.14" - "@ton/core" "0.49.2" + "@ton/core" "0.56.3" "@ton/crypto" "^3.2.0" - arg "^5.0.2" blockstore-core "1.0.5" change-case "^4.1.2" ipfs-unixfs-importer "9.0.10" + meow "^13.2.0" mkdirp "^2.1.3" - multiformats "9.9.0" - ohm-js "16.5.0" - path-normalize "^6.0.10" + multiformats "^13.1.0" + ohm-js "^17.1.0" + path-normalize "^6.0.13" prando "^6.0.1" - qs "^6.11.0" + qs "^6.12.1" zod "^3.22.4" "@tact-lang/opcode@^0.0.14": @@ -183,10 +183,10 @@ resolved "https://registry.yarnpkg.com/@tact-lang/opcode/-/opcode-0.0.14.tgz#52a9cb65bd43b8975481ecac26a3a59b377d1cf2" integrity sha512-8FKHK2jwvViRBReO2t40DCkHAP9KPTRWZof4kdsAUJFlyeWIC8SsRQSl9QkZxF+48WvjDduKNqN5Ltb80paufA== -"@ton/core@0.49.2": - version "0.49.2" - resolved "https://registry.yarnpkg.com/@ton/core/-/core-0.49.2.tgz#bb5f714f727cb98768d53bfb76b87133858e6bda" - integrity sha512-jzW7ZGNkkkv131uvgX/4JgHBdtEnanT8i1fnZ6NOL7lxXjlVIKTuAfr1J2wJQAGHn0wLrbceAHix3jKX+4F5CA== +"@ton/core@0.56.3": + version "0.56.3" + resolved "https://registry.yarnpkg.com/@ton/core/-/core-0.56.3.tgz#1162764573abb76032eba70f8497e5cb2ea532ee" + integrity sha512-HVkalfqw8zqLLPehtq0CNhu5KjVzc7IrbDwDHPjGoOSXmnqSobiWj8a5F+YuWnZnEbQKtrnMGNOOjVw4LG37rg== dependencies: symbol.inspect "1.0.1" @@ -592,6 +592,17 @@ call-bind@^1.0.0: function-bind "^1.1.1" get-intrinsic "^1.0.2" +call-bind@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.7.tgz#06016599c40c56498c18769d2730be242b6fa3b9" + integrity sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w== + dependencies: + es-define-property "^1.0.0" + es-errors "^1.3.0" + function-bind "^1.1.2" + get-intrinsic "^1.2.4" + set-function-length "^1.2.1" + callsites@^3.0.0: version "3.1.0" resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" @@ -882,6 +893,15 @@ defaults@^1.0.3: dependencies: clone "^1.0.2" +define-data-property@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e" + integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A== + dependencies: + es-define-property "^1.0.0" + es-errors "^1.3.0" + gopd "^1.0.1" + denodeify@^1.2.1: version "1.2.1" resolved "https://registry.npmjs.org/denodeify/-/denodeify-1.2.1.tgz" @@ -996,6 +1016,18 @@ error-ex@^1.3.1: dependencies: is-arrayish "^0.2.1" +es-define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.0.tgz#c7faefbdff8b2696cf5f46921edfb77cc4ba3845" + integrity sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ== + dependencies: + get-intrinsic "^1.2.4" + +es-errors@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" + integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== + es6-promise@^4.0.3: version "4.2.8" resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.8.tgz#4eb21594c972bc40553d276e510539143db53e0a" @@ -1138,6 +1170,11 @@ function-bind@^1.1.1: resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== +function-bind@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" + integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== + get-caller-file@^2.0.5: version "2.0.5" resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz" @@ -1152,6 +1189,17 @@ get-intrinsic@^1.0.2: has "^1.0.3" has-symbols "^1.0.3" +get-intrinsic@^1.1.3, get-intrinsic@^1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.4.tgz#e385f5a4b5227d449c3eabbad05494ef0abbeadd" + integrity sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ== + dependencies: + es-errors "^1.3.0" + function-bind "^1.1.2" + has-proto "^1.0.1" + has-symbols "^1.0.3" + hasown "^2.0.0" + github-from-package@0.0.0: version "0.0.0" resolved "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz" @@ -1181,6 +1229,13 @@ glob@^7.0.6, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3: once "^1.3.0" path-is-absolute "^1.0.0" +gopd@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" + integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA== + dependencies: + get-intrinsic "^1.1.3" + graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.2, graceful-fs@^4.2.9: version "4.2.10" resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz" @@ -1209,6 +1264,18 @@ has-flag@^4.0.0: resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== +has-property-descriptors@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" + integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== + dependencies: + es-define-property "^1.0.0" + +has-proto@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.3.tgz#b31ddfe9b0e6e9914536a6ab286426d0214f77fd" + integrity sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q== + has-symbols@^1.0.3: version "1.0.3" resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz" @@ -1221,6 +1288,13 @@ has@^1.0.3: dependencies: function-bind "^1.1.1" +hasown@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" + integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== + dependencies: + function-bind "^1.1.2" + he@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd" @@ -1656,6 +1730,11 @@ mdurl@^1.0.1: resolved "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz" integrity sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g== +meow@^13.2.0: + version "13.2.0" + resolved "https://registry.yarnpkg.com/meow/-/meow-13.2.0.tgz#6b7d63f913f984063b3cc261b6e8800c4cd3474f" + integrity sha512-pxQJQzB6djGPXh08dacEloMFopsOqGVRKFPYvPOt9XDZ1HasbgDZA74CJGreSU4G3Ak7EFJGoiH2auq+yXISgA== + merge-options@^3.0.4: version "3.0.4" resolved "https://registry.npmjs.org/merge-options/-/merge-options-3.0.4.tgz" @@ -1771,6 +1850,11 @@ multiformats@9.9.0, multiformats@^9.0.4, multiformats@^9.4.2, multiformats@^9.4. resolved "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz" integrity sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg== +multiformats@^13.1.0: + version "13.1.0" + resolved "https://registry.yarnpkg.com/multiformats/-/multiformats-13.1.0.tgz#5aa9d2175108a448fc3bdb54ba8a3d0b6cab3ac3" + integrity sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ== + murmurhash3js-revisited@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/murmurhash3js-revisited/-/murmurhash3js-revisited-3.0.0.tgz" @@ -1820,21 +1904,26 @@ nth-check@^2.0.1: dependencies: boolbase "^1.0.0" +object-inspect@^1.13.1: + version "1.13.1" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.1.tgz#b96c6109324ccfef6b12216a956ca4dc2ff94bc2" + integrity sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ== + object-inspect@^1.9.0: version "1.12.3" resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz" integrity sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g== -ohm-js@16.5.0: - version "16.5.0" - resolved "https://registry.npmjs.org/ohm-js/-/ohm-js-16.5.0.tgz" - integrity sha512-OXuB3g1cdP6vCyaGziLmihLkBrtfH9H9jmYp5nRqad093KVzkUSi062IVv5l+3SB/HIbMyDvBqhgR3Q3S+EEnw== - ohm-js@^16.4.0: version "16.6.0" resolved "https://registry.npmjs.org/ohm-js/-/ohm-js-16.6.0.tgz" integrity sha512-X9P4koSGa7swgVQ0gt71UCYtkAQGOjciJPJAz74kDxWt8nXbH5HrDOQG6qBDH7SR40ktNv4x61BwpTDE9q4lRA== +ohm-js@^17.1.0: + version "17.1.0" + resolved "https://registry.yarnpkg.com/ohm-js/-/ohm-js-17.1.0.tgz#50d8e08f69d7909931998d75202d35e2a90c8885" + integrity sha512-xc3B5dgAjTBQGHaH7B58M2Pmv6WvzrJ/3/7LeUzXNg0/sY3jQPdSd/S2SstppaleO77rifR1tyhdfFGNIwxf2Q== + once@^1.3.0, once@^1.3.1, once@^1.4.0: version "1.4.0" resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz" @@ -1979,6 +2068,11 @@ path-normalize@^6.0.10: resolved "https://registry.npmjs.org/path-normalize/-/path-normalize-6.0.10.tgz" integrity sha512-ZlQRW8CAmppOuQB6+dVvkmzk4wGZRDtUmHeV+/596Bm+TYcuiAGV8EACc6hhRw4j3rdv5PimDOshXCqerHAtEA== +path-normalize@^6.0.13: + version "6.0.13" + resolved "https://registry.yarnpkg.com/path-normalize/-/path-normalize-6.0.13.tgz#f80575c85ef041366040b00cdbeea97b8e255231" + integrity sha512-PfC1Pc+IEhI77UEN731pj2nMs9gHAV36IA6IW6VdXWjoQesf+jtO9hdMUqTRS6mwR0T5rmyUrQzd5vw0VwL1Lw== + path-parse@^1.0.7: version "1.0.7" resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz" @@ -2097,6 +2191,13 @@ qs@^6.11.0, qs@^6.9.1: dependencies: side-channel "^1.0.4" +qs@^6.12.1: + version "6.12.1" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.12.1.tgz#39422111ca7cbdb70425541cba20c7d7b216599a" + integrity sha512-zWmv4RSuB9r2mYQw3zxQuHWeU+42aKi1wWig/j4ele4ygELZ7PEO6MM7rim9oAQH2A5MWfsAVf/jPvTPgCbvUQ== + dependencies: + side-channel "^1.0.6" + rabin-wasm@^0.1.4: version "0.1.5" resolved "https://registry.npmjs.org/rabin-wasm/-/rabin-wasm-0.1.5.tgz" @@ -2247,6 +2348,18 @@ sentence-case@^3.0.4: tslib "^2.0.3" upper-case-first "^2.0.2" +set-function-length@^1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449" + integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg== + dependencies: + define-data-property "^1.1.4" + es-errors "^1.3.0" + function-bind "^1.1.2" + get-intrinsic "^1.2.4" + gopd "^1.0.1" + has-property-descriptors "^1.0.2" + setimmediate@~1.0.4: version "1.0.5" resolved "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz" @@ -2276,6 +2389,16 @@ side-channel@^1.0.4: get-intrinsic "^1.0.2" object-inspect "^1.9.0" +side-channel@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.6.tgz#abd25fb7cd24baf45466406b1096b7831c9215f2" + integrity sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA== + dependencies: + call-bind "^1.0.7" + es-errors "^1.3.0" + get-intrinsic "^1.2.4" + object-inspect "^1.13.1" + signal-exit@^3.0.2: version "3.0.7" resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz"