Page MenuHomeWickedGov Phorge

Parser.php
No OneTemporary

Size
358 KB
Referenced Files
None
Subscribers
None

Parser.php

This file is larger than 256 KB, so syntax highlighting was skipped.
<?php
/*
* Generated by peggy 1.0.0 with phpeggy plugin
*
* https://peggyjs.org/
*/
namespace MediaWiki\Extension\Math\WikiTexVC;
use MediaWiki\Extension\Math\WikiTexVC\Nodes\Box;
use MediaWiki\Extension\Math\WikiTexVC\Nodes\Big;
use MediaWiki\Extension\Math\WikiTexVC\Nodes\ChemFun2u;
use MediaWiki\Extension\Math\WikiTexVC\Nodes\ChemWord;
use MediaWiki\Extension\Math\WikiTexVC\Nodes\Declh;
use MediaWiki\Extension\Math\WikiTexVC\Nodes\Dollar;
use MediaWiki\Extension\Math\WikiTexVC\Nodes\DQ;
use MediaWiki\Extension\Math\WikiTexVC\Nodes\FQ;
use MediaWiki\Extension\Math\WikiTexVC\Nodes\Fun1;
use MediaWiki\Extension\Math\WikiTexVC\Nodes\Fun1nb;
use MediaWiki\Extension\Math\WikiTexVC\Nodes\Fun2;
use MediaWiki\Extension\Math\WikiTexVC\Nodes\Fun2nb;
use MediaWiki\Extension\Math\WikiTexVC\Nodes\Fun2sq;
use MediaWiki\Extension\Math\WikiTexVC\Nodes\Fun4;
use MediaWiki\Extension\Math\WikiTexVC\Nodes\Infix;
use MediaWiki\Extension\Math\WikiTexVC\Nodes\Literal;
use MediaWiki\Extension\Math\WikiTexVC\Nodes\Lr;
use MediaWiki\Extension\Math\WikiTexVC\Nodes\LengthSpec;
use MediaWiki\Extension\Math\WikiTexVC\Nodes\Matrix;
use MediaWiki\Extension\Math\WikiTexVC\Nodes\Mhchem;
use MediaWiki\Extension\Math\WikiTexVC\Nodes\UQ;
use MediaWiki\Extension\Math\WikiTexVC\Nodes\TexArray;
use MediaWiki\Extension\Math\WikiTexVC\TexUtil;
use MediaWiki\Extension\Math\WikiTexVC\ParserUtil;
/* Useful functions: */
/* chr_unicode - get unicode character from its char code */
if (!function_exists("MediaWiki\\Extension\\Math\\WikiTexVC\\chr_unicode")) {
function chr_unicode($code) {
return html_entity_decode("&#$code;", ENT_QUOTES, "UTF-8");
}
}
/* ord_unicode - get unicode char code from string */
if (!function_exists("MediaWiki\\Extension\\Math\\WikiTexVC\\ord_unicode")) {
function ord_unicode($character) {
if (strlen($character) === 1) {
return ord($character);
}
$json = json_encode($character);
$utf16_1 = hexdec(substr($json, 3, 4));
if (substr($json, 7, 2) === "\u") {
$utf16_2 = hexdec(substr($json, 9, 4));
return 0x10000 + (($utf16_1 & 0x3ff) << 10) + ($utf16_2 & 0x3ff);
} else {
return $utf16_1;
}
}
}
/* peg_regex_test - multibyte regex test */
if (!function_exists("MediaWiki\\Extension\\Math\\WikiTexVC\\peg_regex_test")) {
function peg_regex_test($pattern, $string) {
if (substr($pattern, -1) == "i") {
return mb_eregi(substr($pattern, 1, -2), $string);
} else {
return mb_ereg(substr($pattern, 1, -1), $string);
}
}
}
/* Syntax error exception */
if (!class_exists("MediaWiki\\Extension\\Math\\WikiTexVC\\SyntaxError", false)) {
class SyntaxError extends \Exception {
public $expected;
public $found;
public $grammarOffset;
public $grammarLine;
public $grammarColumn;
public $name;
public function __construct($message, $expected, $found, $offset, $line, $column) {
parent::__construct($message, 0);
$this->expected = $expected;
$this->found = $found;
$this->grammarOffset = $offset;
$this->grammarLine = $line;
$this->grammarColumn = $column;
$this->name = "SyntaxError";
}
}
}
class Parser {
private $tu;
private $options;
private $peg_currPos = 0;
private $peg_reportedPos = 0;
private $peg_cachedPos = 0;
private $peg_cachedPosDetails = array('line' => 1, 'column' => 1, 'seenCR' => false );
private $peg_maxFailPos = 0;
private $peg_maxFailExpected = array();
private $peg_silentFails = 0;
private $input = array();
private $input_length = 0;
public $peg_cache = array();
private function cleanup_state() {
$this->peg_currPos = 0;
$this->peg_reportedPos = 0;
$this->peg_cachedPos = 0;
$this->peg_cachedPosDetails = array('line' => 1, 'column' => 1, 'seenCR' => false );
$this->peg_maxFailPos = 0;
$this->peg_maxFailExpected = array();
$this->peg_silentFails = 0;
$this->input = array();
$this->input_length = 0;
$this->peg_cache = array();
}
private function input_substr($start, $length) {
if ($length === 1 && $start < $this->input_length) {
return $this->input[$start];
}
$substr = '';
$max = min($start + $length, $this->input_length);
for ($i = $start; $i < $max; $i++) {
$substr .= $this->input[$i];
}
return $substr;
}
private function text() {
return $this->input_substr($this->peg_reportedPos, $this->peg_currPos - $this->peg_reportedPos);
}
private function offset() {
return $this->peg_reportedPos;
}
private function line() {
$compute_pd = $this->peg_computePosDetails($this->peg_reportedPos);
return $compute_pd["line"];
}
private function column() {
$compute_pd = $this->peg_computePosDetails($this->peg_reportedPos);
return $compute_pd["column"];
}
private function expected($description) {
throw $this->peg_buildException(
null,
array(array("type" => "other", "description" => $description )),
$this->peg_reportedPos
);
}
private function error($message) {
throw $this->peg_buildException($message, null, $this->peg_reportedPos);
}
private function peg_advancePos(&$details, $startPos, $endPos) {
for ($p = $startPos; $p < $endPos; $p++) {
$ch = $this->input_substr($p, 1);
if ($ch === "\n") {
if (!$details["seenCR"]) { $details["line"]++; }
$details["column"] = 1;
$details["seenCR"] = false;
} else if ($ch === "\r" || $ch === "\u2028" || $ch === "\u2029") {
$details["line"]++;
$details["column"] = 1;
$details["seenCR"] = true;
} else {
$details["column"]++;
$details["seenCR"] = false;
}
}
}
private function peg_computePosDetails($pos) {
if ($this->peg_cachedPos !== $pos) {
if ($this->peg_cachedPos > $pos) {
$this->peg_cachedPos = 0;
$this->peg_cachedPosDetails = array( "line" => 1, "column" => 1, "seenCR" => false );
}
$this->peg_advancePos($this->peg_cachedPosDetails, $this->peg_cachedPos, $pos);
$this->peg_cachedPos = $pos;
}
return $this->peg_cachedPosDetails;
}
private function peg_fail($expected) {
if ($this->peg_currPos < $this->peg_maxFailPos) { return; }
if ($this->peg_currPos > $this->peg_maxFailPos) {
$this->peg_maxFailPos = $this->peg_currPos;
$this->peg_maxFailExpected = array();
}
$this->peg_maxFailExpected[] = $expected;
}
private function peg_buildException_expectedComparator($a, $b) {
if ($a["description"] < $b["description"]) {
return -1;
} else if ($a["description"] > $b["description"]) {
return 1;
} else {
return 0;
}
}
private function peg_buildException($message, $expected, $pos) {
$posDetails = $this->peg_computePosDetails($pos);
$found = $pos < $this->input_length ? $this->input[$pos] : null;
if ($expected !== null) {
usort($expected, array($this, "peg_buildException_expectedComparator"));
$i = 1;
while ($i < count($expected)) {
if ($expected[$i - 1] === $expected[$i]) {
array_splice($expected, $i, 1);
} else {
$i++;
}
}
}
if ($message === null) {
$expectedDescs = array_fill(0, count($expected), null);
for ($i = 0; $i < count($expected); $i++) {
$expectedDescs[$i] = $expected[$i]["description"];
}
$expectedDesc = count($expected) > 1
? join(", ", array_slice($expectedDescs, 0, -1))
. " or "
. $expectedDescs[count($expected) - 1]
: $expectedDescs[0];
$foundDesc = $found ? json_encode($found) : "end of input";
$message = "Expected " . $expectedDesc . " but " . $foundDesc . " found.";
}
return new SyntaxError(
$message,
$expected,
$found,
$pos,
$posDetails["line"],
$posDetails["column"]
);
}
private $peg_FAILED;
private $peg_c0;
private $peg_c1;
private $peg_c2;
private $peg_c3;
private $peg_c4;
private $peg_c5;
private $peg_c6;
private $peg_c7;
private $peg_c8;
private $peg_c9;
private $peg_c10;
private $peg_c11;
private $peg_c12;
private $peg_c13;
private $peg_c14;
private $peg_c15;
private $peg_c16;
private $peg_c17;
private $peg_c18;
private $peg_c19;
private $peg_c20;
private $peg_c21;
private $peg_c22;
private $peg_c23;
private $peg_c24;
private $peg_c25;
private $peg_c26;
private $peg_c27;
private $peg_c28;
private $peg_c29;
private $peg_c30;
private $peg_c31;
private $peg_c32;
private $peg_c33;
private $peg_c34;
private $peg_c35;
private $peg_c36;
private $peg_c37;
private $peg_c38;
private $peg_c39;
private $peg_c40;
private $peg_c41;
private $peg_c42;
private $peg_c43;
private $peg_c44;
private $peg_c45;
private $peg_c46;
private $peg_c47;
private $peg_c48;
private $peg_c49;
private $peg_c50;
private $peg_c51;
private $peg_c52;
private $peg_c53;
private $peg_c54;
private $peg_c55;
private $peg_c56;
private $peg_c57;
private $peg_c58;
private $peg_c59;
private $peg_c60;
private $peg_c61;
private $peg_c62;
private $peg_c63;
private $peg_c64;
private $peg_c65;
private $peg_c66;
private $peg_c67;
private $peg_c68;
private $peg_c69;
private $peg_c70;
private $peg_c71;
private $peg_c72;
private $peg_c73;
private $peg_c74;
private $peg_c75;
private $peg_c76;
private $peg_c77;
private $peg_c78;
private $peg_c79;
private $peg_c80;
private $peg_c81;
private $peg_c82;
private $peg_c83;
private $peg_c84;
private $peg_c85;
private $peg_c86;
private $peg_c87;
private $peg_c88;
private $peg_c89;
private $peg_c90;
private $peg_c91;
private $peg_c92;
private $peg_c93;
private $peg_c94;
private $peg_c95;
private $peg_c96;
private $peg_c97;
private $peg_c98;
private $peg_c99;
private $peg_c100;
private $peg_c101;
private $peg_c102;
private $peg_c103;
private $peg_c104;
private $peg_c105;
private $peg_c106;
private $peg_c107;
private $peg_c108;
private $peg_c109;
private $peg_c110;
private $peg_c111;
private $peg_c112;
private $peg_c113;
private $peg_c114;
private $peg_c115;
private $peg_c116;
private $peg_c117;
private $peg_c118;
private $peg_c119;
private $peg_c120;
private $peg_c121;
private $peg_c122;
private $peg_c123;
private $peg_c124;
private $peg_c125;
private $peg_c126;
private $peg_c127;
private $peg_c128;
private $peg_c129;
private $peg_c130;
private $peg_c131;
private $peg_c132;
private $peg_c133;
private $peg_c134;
private $peg_c135;
private $peg_c136;
private $peg_c137;
private $peg_c138;
private $peg_c139;
private $peg_c140;
private $peg_c141;
private $peg_c142;
private $peg_c143;
private $peg_c144;
private $peg_c145;
private $peg_c146;
private $peg_c147;
private $peg_c148;
private $peg_c149;
private $peg_c150;
private $peg_c151;
private $peg_c152;
private $peg_c153;
private $peg_c154;
private $peg_c155;
private $peg_c156;
private $peg_c157;
private $peg_c158;
private $peg_c159;
private $peg_c160;
private $peg_c161;
private $peg_c162;
private $peg_c163;
private $peg_c164;
private $peg_c165;
private $peg_c166;
private $peg_c167;
private $peg_c168;
private $peg_c169;
private $peg_c170;
private $peg_c171;
private $peg_c172;
private $peg_c173;
private $peg_c174;
private $peg_c175;
private $peg_c176;
private $peg_c177;
private $peg_c178;
private $peg_c179;
private $peg_c180;
private $peg_c181;
private $peg_c182;
private $peg_c183;
private $peg_c184;
private function peg_f0($t) {
assert($t instanceof TexArray);
return $t;
}
private function peg_f1($e) { return $e; }
private function peg_f2($e1, $name, $e2) { return new TexArray( new Infix($name, $e1, $e2)); }
private function peg_f3() { return new TexArray(); }
private function peg_f4($h, $t) { return $t->unshift($h); }
private function peg_f5($d, $e) { return new TexArray(new Declh($d->getFname(), $e)); }
private function peg_f6($l1, $l2) { return new FQ($l1->getBase(), $l1->getDown(), $l2); }
private function peg_f7($l1, $l2) { return new FQ($l1->getBase(), $l2, $l1->getUp()); }
private function peg_f8($base, $upi) { return new UQ($base, $upi); }
private function peg_f9($base, $downi) { return new DQ($base, $downi); }
private function peg_f10() { return new Literal( "]"); }
private function peg_f11($l, $e) { return $e ->unshift( $l ); }
private function peg_f12($l1, $l2) { return new FQ ($l1->getBase(), $l2, $l1->getUp()); }
private function peg_f13($l1, $l2) { return new FQ(new TexArray(), $l1->getDown(), $l2); }
private function peg_f14($l) { return new UQ(new TexArray(),$l); }
private function peg_f15($l) { return new DQ(new TexArray(),$l); }
private function peg_f16($d) { return $d; }
private function peg_f17() { return "]"; }
private function peg_f18($r) { return new Literal($r); }
private function peg_f19($f) { return $this->tu->latex_function_names($f); }
private function peg_f20($f) { return " ";}
private function peg_f21($f, $c) { return new TexArray( new Literal( $f ) , new Literal( $c ) ) ; }
private function peg_f22($f) { return $this->tu->nullary_macro_aliase($f); }
private function peg_f23($f) {
$parser = new Parser();
$ast = $parser->parse($this->tu->nullary_macro_aliase($f), $this->options);
assert($ast instanceof TexArray && $ast->getLength() === 1);
return $ast->first();
}
private function peg_f24($f) { return $this->tu->deprecated_nullary_macro_aliase($f); }
private function peg_f25($f) {
$parser = new Parser();
$ast = $parser->parse($this->tu->deprecated_nullary_macro_aliase($f), $this->options);
assert($ast instanceof TexArray && $ast->getLength() === 1);
if ($this->options['oldtexvc']){
return $ast->first();
} else {
throw new SyntaxError("Deprecation: Alias no longer supported.", [], $this->text(), $this->offset(),
$this->line(), $this->column());
}
}
private function peg_f26($f) { return $this->tu->mediawiki_function_names($f); }
private function peg_f27($f) {
if(is_array($f)) {
// This is an unexpected case, but covers the ambiguity of slice in javascript.
$fProcessed = implode(array_slice($f, 1));
} else {
$fProcessed = substr($f,1);
}
return new Fun1nb( '\\operatorname', new Literal( $fProcessed ) );
}
private function peg_f28($b, $r) { return new Big($b, $r); }
private function peg_f29($b) { return new Big($b, "]"); }
private function peg_f30($l, $e, $r) {return new Lr($l, $r, $e); }
private function peg_f31($name, $e, $l) { return new Fun2sq($name, $e->setCurly(), $l); }
private function peg_f32($name, $l) { return new Fun1($name, $l); }
private function peg_f33($name, $l) { return new Fun1nb($name, $l); }
private function peg_f34($name, $l) { return new Mhchem($name, $l); }
private function peg_f35($name, $l1, $l2) { return new Fun2($name, $l1, $l2); }
private function peg_f36($name, $l1, $l2, $l3, $l4) { return new Fun4($name, $l1, $l2, $l3, $l4); }
private function peg_f37($name, $l1, $l2) { return new Fun2nb($name, $l1, $l2); }
private function peg_f38($e) { return $e->setCurly(); }
private function peg_f39($e1, $name, $e2) { return new Infix($name, $e1, $e2); }
private function peg_f40($m) { return $m->setTop( 'matrix' ); }
private function peg_f41($m) { return $m->setTop( 'pmatrix' ); }
private function peg_f42($m) { return $m->setTop( 'bmatrix' ); }
private function peg_f43($m) { return $m->setTop( 'Bmatrix' ); }
private function peg_f44($m) { return $m->setTop( 'vmatrix' ); }
private function peg_f45($m) { return $m->setTop( 'Vmatrix' ); }
private function peg_f46($m) { return $m->setTop( 'array' ); }
private function peg_f47($m) { return $m->setTop( 'aligned' ); }
private function peg_f48($m) { return $m->setTop( 'alignedat' ); }
private function peg_f49($m) { return $m->setTop( 'smallmatrix' ); }
private function peg_f50($m) { return $m->setTop( 'cases' ); }
private function peg_f51() { throw new SyntaxError("Illegal TeX function", [], $this->text(), $this->offset(),
$this->line(), $this->column()); }
private function peg_f52($f) { return !$this->tu->getAllFunctionsAt($f); }
private function peg_f53($f) { throw new SyntaxError("Illegal TeX function", [], $f, $this->offset(), $this->line(), $this->column()); }
private function peg_f54($cs, $m) { return $m->setColumnSpecs( $cs ); }
private function peg_f55($as, $m) { return $m->setColumnSpecs( $as ); }
private function peg_f56($l, $r, $m) { return [$m,$r]; }
private function peg_f57($l, $tail) { if ($tail === null) { return new Matrix( 'matrix', new TexArray( $l ) ); }
return new Matrix( 'matrix', $tail[0]->unshift($l), $tail[1] ); }
private function peg_f58($f, $l) {
if ($l->first() === null ) {
$l->push(new TexArray());
}
$l->first()->unshift(new Literal($f . " ")); return $l;}
private function peg_f59($e, $l) { return $l; }
private function peg_f60($e, $tail) {
if ($tail === null) { return new TexArray( $e ) ; }
return $tail->unshift($e);
}
private function peg_f61() { return $this->text(); }
private function peg_f62($cs) { return TexArray::newCurly(new Literal($cs)); }
private function peg_f63($num) { return TexArray::newCurly(new Literal($num)); }
private function peg_f64($p, $s) { return new TexArray($p,new TexArray(new Literal(" "),$s)); }
private function peg_f65($p) { return new TexArray($p,new TexArray()); }
private function peg_f66($m) { return new Literal($m); }
private function peg_f67($m, $n) { return new ChemWord($m, new Literal($n)); }
private function peg_f68($m) { return $m; }
private function peg_f69($m, $n) { return new ChemWord($m, $n); }
private function peg_f70($m, $n, $o) { return new ChemWord(new ChemWord(new Literal($m), $n), $o); }
private function peg_f71() { return new Literal(""); }
private function peg_f72($m) { return $m;}
private function peg_f73($c) { return new Literal($c); }
private function peg_f74($c) { return TexArray::newCurly($c); }
private function peg_f75($c) { return new Dollar($c); }
private function peg_f76($e) { return TexArray::newCurly(new Literal($e)); }
private function peg_f77($a, $b) { return new ChemWord(new Literal($a), new Literal($b)); }
private function peg_f78($a, $b) { return new ChemWord(new Literal($a), $b); }
private function peg_f79($a, $b) { return new ChemWord(new Literal($a), new Dollar($b)); }
private function peg_f80($name, $l1, $l2) { return new ChemFun2u($name, $l1, $l2); }
private function peg_f81($cs) { return new Literal(join('',$cs)); }
private function peg_f82($name) { return new Literal(join('',$name)); }
private function peg_f83($b) { return $this->tu->box_functions($b); }
private function peg_f84($b, $cs) { return new Box($b, join('', $cs)); }
private function peg_f85($c) { return $c; }
private function peg_f86($f) { return $this->tu->nullary_macro($f); }
private function peg_f87($f) { return $f . " "; }
private function peg_f88($f) { return $this->options['usemathrm'] && $this->tu->nullary_macro_in_mbox($f); }
private function peg_f89($f) { return "\\mathrm {" . $f . "} "; }
private function peg_f90($mathrm) { return $this->options['usemathrm'] && $mathrm === "\\mathrm"; }
private function peg_f91($mathrm, $f) { return $this->options['usemathrm'] && $this->tu->nullary_macro_in_mbox($f); }
private function peg_f92($mathrm, $f) { return $this->options['usemathrm'] ? "\\mathrm {" . $f . "} " : false;}
private function peg_f93($f) { return $this->tu->nullary_macro_in_mbox($f); }
private function peg_f94($f) { return "\\mbox{" . $f . "} "; }
private function peg_f95($mbox) { return $mbox === "\\mbox"; }
private function peg_f96($mbox, $f) { return $this->tu->nullary_macro_in_mbox($f); }
private function peg_f97($mbox, $f) { return "\\mbox{" . $f . "} "; }
private function peg_f98($f) { return $f; }
private function peg_f99($c) { return "\\" . $c; }
private function peg_f100($c) { if($this->options['oldtexvc']) {
return "\\" . $c; /* escape dangerous chars */
} else {
throw new SyntaxError("Deprecation: % and $ need to be escaped.", [], $this->text(), $this->offset(),
$this->line(), $this->column());
}}
private function peg_f101($f) { return $this->tu->other_delimiters1($f); }
private function peg_f102($f) { return $this->tu->other_delimiters2($f); }
private function peg_f103($f) {
$parser = new Parser();
$p = $parser->parse($this->tu->other_delimiters2($f), $this->options);
# assert.ok(p instanceof TexArray && p.length === 1);
assert($p instanceof TexArray && count($p->getArgs()) === 1);
# assert.ok(p.first() instanceof Literal);
assert($p->first() instanceof Literal);
return $p->first()->getArg();
}
private function peg_f104($f) { return $this->tu->fun_ar1nb($f); }
private function peg_f105($f) { return $this->tu->fun_ar1opt($f); }
private function peg_f106($s, $n, $u) { return new LengthSpec($s, $n, $u); }
private function peg_f107($l) { return $l; }
private function peg_f108($s) {return $s; }
private function peg_f109($f) { return $this->tu->big_literals($f); }
private function peg_f110($f) { return $this->tu->fun_ar1($f); }
private function peg_f111($f) { return $this->options['oldmhchem'] && $this->tu->fun_mhchem($f);}
private function peg_f112($f) { return $this->tu->other_fun_ar1($f); }
private function peg_f113($f) { if ($this->options['oldtexvc']) {
return $this->tu->other_fun_ar1($f);
} else {
throw new SyntaxError("Deprecation: \\Bbb and \\bold are not allowed in math mode.", [],
$this->text(), $this->offset(), $this->line(),$this->column());
}
}
private function peg_f114($f) { return $this->tu->fun_mhchem($f); }
private function peg_f115($f) { return $this->tu->fun_ar2($f); }
private function peg_f116($f) { return $this->tu->fun_ar4($f) && $this->tu->mhchemtexified_required($f); }
private function peg_f117($f) { return $this->tu->fun_infix($f); }
private function peg_f118($f) { return $this->tu->declh_function($f); }
private function peg_f119($f) { return new Declh($f, new TexArray()); }
private function peg_f120($f) { return $this->tu->fun_ar2nb($f); }
private function peg_f121($f) { return $this->tu->left_function($f); }
private function peg_f122($f) { return $this->tu->right_function($f); }
private function peg_f123($f) { return $this->tu->hline_function($f); }
private function peg_f124($f) { return $this->tu->color_function($f); }
private function peg_f125($f, $cs) { return $f . " " . $cs; }
private function peg_f126($f) { return $this->tu->definecolor_function($f); }
private function peg_f127($f, $name, $cs) { return "{named}" . $cs; }
private function peg_f128($f, $name, $cs) { return "{gray}" . $cs; }
private function peg_f129($f, $name, $cs) { return "{rgb}" . $cs; }
private function peg_f130($f, $name, $cs) { return "{cmyk}" . $cs; }
private function peg_f131($f, $name, $a) { return $f . " {" . join('',$name) . "}" . $a; }
private function peg_f132($cs) { return "[named]" . $cs; }
private function peg_f133($cs) { return "[gray]" . $cs; }
private function peg_f134($cs) { return "[rgb]" . $cs; }
private function peg_f135($cs) { return "[cmyk]" . $cs; }
private function peg_f136($name) { return "{" . join('', $name) . "}"; }
private function peg_f137($k) { $s = is_array($k) ? $k[0] : $k;
return "{" . $s . "}";}
private function peg_f138($r, $g, $b) { return "{" . $r . "," . $g . "," . $b . "}"; }
private function peg_f139($c, $m, $y, $k) { return "{" . $c . "," . $m . "," . $y . "," . $k . "}"; }
private function peg_f140($n) { return intval($n, 10) <= 255; }
private function peg_f141($n) { return $n / 255; }
private function peg_f142($n) { return $n; }
private function peg_f143($f) { return $this->tu->mhchem_single_macro($f); }
private function peg_f144($f) { return $this->tu->mhchem_bond($f); }
private function peg_f145($f) { return $this->tu->mhchem_macro_1p($f); }
private function peg_f146($f) { return $this->tu->mhchem_macro_2p($f); }
private function peg_f147($f) { return $this->tu->mhchem_macro_2pu($f); }
private function peg_f148($f) { return $this->tu->mhchem_macro_2pc($f); }
private function peg_f149() { return "{}"; }
private function peg_f150() { return false; }
private function peg_f151() { return $this->peg_currPos === $this->input_length; }
private function peg_parsestart() {
$key = $this->peg_currPos * 130 + 0;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parse_();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsetex_expr();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f0($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parse_() {
$key = $this->peg_currPos * 130 + 1;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = array();
if (peg_regex_test($this->peg_c0, $this->input_substr($this->peg_currPos, 1))) {
$s1 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c1);
}
}
while ($s1 !== $this->peg_FAILED) {
$s0[] = $s1;
if (peg_regex_test($this->peg_c0, $this->input_substr($this->peg_currPos, 1))) {
$s1 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c1);
}
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parsetex_expr() {
$key = $this->peg_currPos * 130 + 2;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseexpr();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseEOF();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f1($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsene_expr();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseFUN_INFIX();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parsene_expr();
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parseEOF();
if ($s4 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f2($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseexpr() {
$key = $this->peg_currPos * 130 + 3;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_parsene_expr();
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_c2;
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f3();
}
$s0 = $s1;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parsene_expr() {
$key = $this->peg_currPos * 130 + 4;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parselit_aq();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseexpr();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f4($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parselitsq_aq();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseexpr();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f4($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseDECLh();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseexpr();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f5($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parselitsq_aq() {
$key = $this->peg_currPos * 130 + 5;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_parselitsq_fq();
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_parselitsq_dq();
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_parselitsq_uq();
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_parselitsq_zq();
}
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parselitsq_fq() {
$key = $this->peg_currPos * 130 + 6;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parselitsq_dq();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseSUP();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parselit();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f6($s1, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parselitsq_uq();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseSUB();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parselit();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f7($s1, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parselitsq_uq() {
$key = $this->peg_currPos * 130 + 7;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parselitsq_zq();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseSUP();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parselit();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f8($s1, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parselitsq_dq() {
$key = $this->peg_currPos * 130 + 8;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parselitsq_zq();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseSUB();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parselit();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f9($s1, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parselitsq_zq() {
$key = $this->peg_currPos * 130 + 9;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseSQ_CLOSE();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f10();
}
$s0 = $s1;
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseexpr_nosqc() {
$key = $this->peg_currPos * 130 + 10;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parselit_aq();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseexpr_nosqc();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f11($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_c2;
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f3();
}
$s0 = $s1;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parselit_aq() {
$key = $this->peg_currPos * 130 + 11;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_parselit_fq();
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_parselit_dq();
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_parselit_uq();
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_parselit_dqn();
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_parselit_uqn();
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_parselit();
}
}
}
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parselit_fq() {
$key = $this->peg_currPos * 130 + 12;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parselit_dq();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseSUP();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parselit();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f6($s1, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parselit_uq();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseSUB();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parselit();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f12($s1, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parselit_dqn();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseSUP();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parselit();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f13($s1, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parselit_uq() {
$key = $this->peg_currPos * 130 + 13;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parselit();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseSUP();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parselit();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f8($s1, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parselit_dq() {
$key = $this->peg_currPos * 130 + 14;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parselit();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseSUB();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parselit();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f9($s1, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parselit_uqn() {
$key = $this->peg_currPos * 130 + 15;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseSUP();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parselit();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f14($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parselit_dqn() {
$key = $this->peg_currPos * 130 + 16;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseSUB();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parselit();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f15($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseleft() {
$key = $this->peg_currPos * 130 + 17;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseLEFTI();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseDELIMITER();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f16($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseLEFTI();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseSQ_CLOSE();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f17();
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseright() {
$key = $this->peg_currPos * 130 + 18;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseRIGHTI();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseDELIMITER();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f16($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseRIGHTI();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseSQ_CLOSE();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f17();
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parselit() {
$key = $this->peg_currPos * 130 + 19;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseLITERAL();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f18($s1);
}
$s0 = $s1;
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f19($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c3) {
$s4 = $this->peg_c3;
$this->peg_currPos++;
} else {
$s4 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c4);
}
}
if ($s4 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c5) {
$s4 = $this->peg_c5;
$this->peg_currPos++;
} else {
$s4 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c6);
}
}
if ($s4 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c7) {
$s4 = $this->peg_c7;
$this->peg_currPos += 2;
} else {
$s4 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c8);
}
}
if ($s4 === $this->peg_FAILED) {
$s4 = $this->peg_currPos;
$s5 = $this->peg_c2;
if ($s5 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s4;
$s5 = $this->peg_f20($s1);
}
$s4 = $s5;
}
}
}
if ($s4 !== $this->peg_FAILED) {
$s5 = $this->peg_parse_();
if ($s5 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f21($s1, $s4);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f22($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f23($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f24($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f25($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f26($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f27($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseDELIMITER();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f18($s1);
}
$s0 = $s1;
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBIG();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseDELIMITER();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f28($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBIG();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseSQ_CLOSE();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f29($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseleft();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseexpr();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseright();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f30($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseFUN_AR1opt();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseexpr_nosqc();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseSQ_CLOSE();
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parselit();
if ($s4 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f31($s1, $s2, $s4);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseFUN_AR1();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parselit();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f32($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseFUN_AR1nb();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parselit();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f33($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseFUN_MHCHEM();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsechem_lit();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f34($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseFUN_AR2();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parselit();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parselit();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f35($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseFUN_AR4_MHCHEM_TEXIFIED();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parselit();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parselit();
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parselit();
if ($s4 !== $this->peg_FAILED) {
$s5 = $this->peg_parselit();
if ($s5 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f36($s1, $s2, $s3, $s4, $s5);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseFUN_AR2nb();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parselit();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parselit();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f37($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_parseBOX();
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseCURLY_OPEN();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseexpr();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseCURLY_CLOSE();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f38($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseCURLY_OPEN();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsene_expr();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseFUN_INFIX();
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parsene_expr();
if ($s4 !== $this->peg_FAILED) {
$s5 = $this->peg_parseCURLY_CLOSE();
if ($s5 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f39($s2, $s3, $s4);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN_MATRIX();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsearray();
if ($s2 === $this->peg_FAILED) {
$s2 = $this->peg_parsematrix();
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseEND_MATRIX();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f40($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN_PMATRIX();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsearray();
if ($s2 === $this->peg_FAILED) {
$s2 = $this->peg_parsematrix();
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseEND_PMATRIX();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f41($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN_BMATRIX();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsearray();
if ($s2 === $this->peg_FAILED) {
$s2 = $this->peg_parsematrix();
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseEND_BMATRIX();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f42($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN_BBMATRIX();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsearray();
if ($s2 === $this->peg_FAILED) {
$s2 = $this->peg_parsematrix();
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseEND_BBMATRIX();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f43($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN_VMATRIX();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsearray();
if ($s2 === $this->peg_FAILED) {
$s2 = $this->peg_parsematrix();
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseEND_VMATRIX();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f44($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN_VVMATRIX();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsearray();
if ($s2 === $this->peg_FAILED) {
$s2 = $this->peg_parsematrix();
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseEND_VVMATRIX();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f45($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN_ARRAY();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseopt_pos();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parsearray();
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parseEND_ARRAY();
if ($s4 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f46($s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN_ALIGN();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseopt_pos();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parsematrix();
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parseEND_ALIGN();
if ($s4 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f47($s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN_ALIGNED();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseopt_pos();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parsematrix();
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parseEND_ALIGNED();
if ($s4 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f47($s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN_ALIGNAT();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsealignat();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseEND_ALIGNAT();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f48($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN_ALIGNEDAT();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsealignat();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseEND_ALIGNEDAT();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f48($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN_SMALLMATRIX();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsearray();
if ($s2 === $this->peg_FAILED) {
$s2 = $this->peg_parsematrix();
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseEND_SMALLMATRIX();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f49($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN_CASES();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsematrix();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseEND_CASES();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f50($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 7) === $this->peg_c9) {
$s1 = $this->peg_c9;
$this->peg_currPos += 7;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c10);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = array();
$s3 = $this->peg_parsealpha();
if ($s3 !== $this->peg_FAILED) {
while ($s3 !== $this->peg_FAILED) {
$s2[] = $s3;
$s3 = $this->peg_parsealpha();
}
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c11) {
$s3 = $this->peg_c11;
$this->peg_currPos++;
} else {
$s3 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c12);
}
}
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f51();
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f52($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f53($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parsearray() {
$key = $this->peg_currPos * 130 + 20;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsecolumn_spec();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsematrix();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f54($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parsealignat() {
$key = $this->peg_currPos * 130 + 21;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsealignat_spec();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsematrix();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f55($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parsematrix() {
$key = $this->peg_currPos * 130 + 22;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseline_start();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_currPos;
$s3 = $this->peg_parseNEXT_ROW();
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parsematrix();
if ($s4 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s2;
$s3 = $this->peg_f56($s1, $s3, $s4);
$s2 = $s3;
} else {
$this->peg_currPos = $s2;
$s2 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s2;
$s2 = $this->peg_FAILED;
}
if ($s2 === $this->peg_FAILED) {
$s2 = null;
}
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f57($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseline_start() {
$key = $this->peg_currPos * 130 + 23;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseHLINE();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseline_start();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f58($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_parseline();
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseline() {
$key = $this->peg_currPos * 130 + 24;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseexpr();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_currPos;
$s3 = $this->peg_parseNEXT_CELL();
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parseline();
if ($s4 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s2;
$s3 = $this->peg_f59($s1, $s4);
$s2 = $s3;
} else {
$this->peg_currPos = $s2;
$s2 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s2;
$s2 = $this->peg_FAILED;
}
if ($s2 === $this->peg_FAILED) {
$s2 = null;
}
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f60($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parsecolumn_spec() {
$key = $this->peg_currPos * 130 + 25;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseCURLY_OPEN();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_currPos;
$s3 = array();
$s4 = $this->peg_parseone_col();
if ($s4 !== $this->peg_FAILED) {
while ($s4 !== $this->peg_FAILED) {
$s3[] = $s4;
$s4 = $this->peg_parseone_col();
}
} else {
$s3 = $this->peg_FAILED;
}
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s2;
$s3 = $this->peg_f61();
}
$s2 = $s3;
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseCURLY_CLOSE();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f62($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseone_col() {
$key = $this->peg_currPos * 130 + 26;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
if (peg_regex_test($this->peg_c13, $this->input_substr($this->peg_currPos, 1))) {
$s1 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c14);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$s1 = array($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c15) {
$s1 = $this->peg_c15;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c16);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseCURLY_OPEN();
if ($s2 !== $this->peg_FAILED) {
$s3 = array();
$s4 = $this->peg_parseboxchars();
if ($s4 !== $this->peg_FAILED) {
while ($s4 !== $this->peg_FAILED) {
$s3[] = $s4;
$s4 = $this->peg_parseboxchars();
}
} else {
$s3 = $this->peg_FAILED;
}
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parseCURLY_CLOSE();
if ($s4 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3, $s4);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c17) {
$s1 = $this->peg_c17;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c18);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseCURLY_OPEN();
if ($s2 !== $this->peg_FAILED) {
$s3 = array();
if (peg_regex_test($this->peg_c19, $this->input_substr($this->peg_currPos, 1))) {
$s4 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s4 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c20);
}
}
if ($s4 !== $this->peg_FAILED) {
while ($s4 !== $this->peg_FAILED) {
$s3[] = $s4;
if (peg_regex_test($this->peg_c19, $this->input_substr($this->peg_currPos, 1))) {
$s4 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s4 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c20);
}
}
}
} else {
$s3 = $this->peg_FAILED;
}
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parse_();
if ($s4 !== $this->peg_FAILED) {
$s5 = $this->peg_parseCURLY_CLOSE();
if ($s5 !== $this->peg_FAILED) {
$s6 = $this->peg_parseone_col();
if ($s6 === $this->peg_FAILED) {
$s6 = $this->peg_currPos;
$s7 = $this->peg_parseCURLY_OPEN();
if ($s7 !== $this->peg_FAILED) {
$s8 = array();
$s9 = $this->peg_parseone_col();
if ($s9 !== $this->peg_FAILED) {
while ($s9 !== $this->peg_FAILED) {
$s8[] = $s9;
$s9 = $this->peg_parseone_col();
}
} else {
$s8 = $this->peg_FAILED;
}
if ($s8 !== $this->peg_FAILED) {
$s9 = $this->peg_parseCURLY_CLOSE();
if ($s9 !== $this->peg_FAILED) {
$s7 = array($s7, $s8, $s9);
$s6 = $s7;
} else {
$this->peg_currPos = $s6;
$s6 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s6;
$s6 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s6;
$s6 = $this->peg_FAILED;
}
}
if ($s6 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3, $s4, $s5, $s6);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c21) {
$s1 = $this->peg_c21;
$this->peg_currPos += 2;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c22);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$s1 = array($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c23) {
$s1 = $this->peg_c23;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c24);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$s1 = array($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c25) {
$s1 = $this->peg_c25;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c26);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseCURLY_OPEN();
if ($s3 !== $this->peg_FAILED) {
$s4 = array();
$s5 = $this->peg_parseboxchars();
if ($s5 !== $this->peg_FAILED) {
while ($s5 !== $this->peg_FAILED) {
$s4[] = $s5;
$s5 = $this->peg_parseboxchars();
}
} else {
$s4 = $this->peg_FAILED;
}
if ($s4 !== $this->peg_FAILED) {
$s5 = $this->peg_parseCURLY_CLOSE();
if ($s5 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3, $s4, $s5);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
}
}
}
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parsealignat_spec() {
$key = $this->peg_currPos * 130 + 27;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseCURLY_OPEN();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_currPos;
$s3 = array();
if (peg_regex_test($this->peg_c19, $this->input_substr($this->peg_currPos, 1))) {
$s4 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s4 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c20);
}
}
if ($s4 !== $this->peg_FAILED) {
while ($s4 !== $this->peg_FAILED) {
$s3[] = $s4;
if (peg_regex_test($this->peg_c19, $this->input_substr($this->peg_currPos, 1))) {
$s4 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s4 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c20);
}
}
}
} else {
$s3 = $this->peg_FAILED;
}
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s2;
$s3 = $this->peg_f61();
}
$s2 = $s3;
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parseCURLY_CLOSE();
if ($s4 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f63($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseopt_pos() {
$key = $this->peg_currPos * 130 + 28;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c5) {
$s1 = $this->peg_c5;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c6);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
if (peg_regex_test($this->peg_c27, $this->input_substr($this->peg_currPos, 1))) {
$s3 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s3 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c28);
}
}
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parse_();
if ($s4 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c29) {
$s5 = $this->peg_c29;
$this->peg_currPos++;
} else {
$s5 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c30);
}
}
if ($s5 !== $this->peg_FAILED) {
$s6 = $this->peg_parse_();
if ($s6 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3, $s4, $s5, $s6);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_c2;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parsechem_lit() {
$key = $this->peg_currPos * 130 + 29;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseCURLY_OPEN();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsechem_sentence();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseCURLY_CLOSE();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f38($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parsechem_sentence() {
$key = $this->peg_currPos * 130 + 30;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parse_();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsechem_phrase();
if ($s2 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c31) {
$s3 = $this->peg_c31;
$this->peg_currPos++;
} else {
$s3 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c32);
}
}
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parsechem_sentence();
if ($s4 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f64($s2, $s4);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parse_();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsechem_phrase();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f65($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parsechem_phrase() {
$key = $this->peg_currPos * 130 + 31;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 3) === $this->peg_c33) {
$s1 = $this->peg_c33;
$this->peg_currPos += 3;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c34);
}
}
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f66($s1);
}
$s0 = $s1;
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsechem_word();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseCHEM_SINGLE_MACRO();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f67($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsechem_word();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f68($s1);
}
$s0 = $s1;
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseCHEM_SINGLE_MACRO();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f66($s1);
}
$s0 = $s1;
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c35) {
$s1 = $this->peg_c35;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c36);
}
}
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f66($s1);
}
$s0 = $s1;
}
}
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parsechem_word() {
$key = $this->peg_currPos * 130 + 32;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsechem_char();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsechem_word_nt();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f69($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseCHEM_SINGLE_MACRO();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsechem_char_nl();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parsechem_word_nt();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f70($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parsechem_word_nt() {
$key = $this->peg_currPos * 130 + 33;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsechem_word();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f68($s1);
}
$s0 = $s1;
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_c2;
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f71();
}
$s0 = $s1;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parsechem_char() {
$key = $this->peg_currPos * 130 + 34;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsechem_char_nl();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f72($s1);
}
$s0 = $s1;
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseCHEM_LETTER();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f73($s1);
}
$s0 = $s1;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parsechem_char_nl() {
$key = $this->peg_currPos * 130 + 35;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsechem_script();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f72($s1);
}
$s0 = $s1;
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseCURLY_OPEN();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsechem_text();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseCURLY_CLOSE();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f74($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN_MATH();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseexpr();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseEND_MATH();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f75($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseCHEM_BONDI();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsechem_bond();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f32($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsechem_macro();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f68($s1);
}
$s0 = $s1;
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseCHEM_NONLETTER();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f73($s1);
}
$s0 = $s1;
}
}
}
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parsechem_bond() {
$key = $this->peg_currPos * 130 + 36;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseCURLY_OPEN();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseCHEM_BOND_TYPE();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseCURLY_CLOSE();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f76($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parsechem_script() {
$key = $this->peg_currPos * 130 + 37;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseCHEM_SUPERSUB();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseCHEM_SCRIPT_FOLLOW();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f77($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseCHEM_SUPERSUB();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsechem_lit();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f78($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseCHEM_SUPERSUB();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseBEGIN_MATH();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseexpr();
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parseEND_MATH();
if ($s4 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f79($s1, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parsechem_macro() {
$key = $this->peg_currPos * 130 + 38;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseCHEM_MACRO_2PU();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsechem_lit();
if ($s2 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c37) {
$s3 = $this->peg_c37;
$this->peg_currPos++;
} else {
$s3 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c38);
}
}
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parsechem_lit();
if ($s4 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f80($s1, $s2, $s4);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseCHEM_MACRO_2PC();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseCHEM_COLOR();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parsechem_lit();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f35($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseCHEM_MACRO_2P();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsechem_lit();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parsechem_lit();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f35($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseCHEM_MACRO_1P();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parsechem_lit();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f32($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
}
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parsechem_text() {
$key = $this->peg_currPos * 130 + 39;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = array();
$s2 = $this->peg_parseboxchars();
if ($s2 !== $this->peg_FAILED) {
while ($s2 !== $this->peg_FAILED) {
$s1[] = $s2;
$s2 = $this->peg_parseboxchars();
}
} else {
$s1 = $this->peg_FAILED;
}
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f81($s1);
}
$s0 = $s1;
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseCHEM_COLOR() {
$key = $this->peg_currPos * 130 + 40;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c39) {
$s1 = $this->peg_c39;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c40);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$s3 = array();
$s4 = $this->peg_parsealpha();
if ($s4 !== $this->peg_FAILED) {
while ($s4 !== $this->peg_FAILED) {
$s3[] = $s4;
$s4 = $this->peg_parsealpha();
}
} else {
$s3 = $this->peg_FAILED;
}
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parse_();
if ($s4 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c11) {
$s5 = $this->peg_c11;
$this->peg_currPos++;
} else {
$s5 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c12);
}
}
if ($s5 !== $this->peg_FAILED) {
$s6 = $this->peg_parse_();
if ($s6 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f82($s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parsealpha() {
$key = $this->peg_currPos * 130 + 41;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
if (peg_regex_test($this->peg_c41, $this->input_substr($this->peg_currPos, 1))) {
$s0 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c42);
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseliteral_id() {
$key = $this->peg_currPos * 130 + 42;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
if (peg_regex_test($this->peg_c41, $this->input_substr($this->peg_currPos, 1))) {
$s0 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c42);
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseliteral_mn() {
$key = $this->peg_currPos * 130 + 43;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
if (peg_regex_test($this->peg_c19, $this->input_substr($this->peg_currPos, 1))) {
$s0 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c20);
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseliteral_uf_lt() {
$key = $this->peg_currPos * 130 + 44;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
if (peg_regex_test($this->peg_c43, $this->input_substr($this->peg_currPos, 1))) {
$s0 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c44);
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parsedelimiter_uf_lt() {
$key = $this->peg_currPos * 130 + 45;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
if (peg_regex_test($this->peg_c45, $this->input_substr($this->peg_currPos, 1))) {
$s0 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c46);
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseliteral_uf_op() {
$key = $this->peg_currPos * 130 + 46;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
if (peg_regex_test($this->peg_c47, $this->input_substr($this->peg_currPos, 1))) {
$s0 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c48);
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parsedelimiter_uf_op() {
$key = $this->peg_currPos * 130 + 47;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
if (peg_regex_test($this->peg_c49, $this->input_substr($this->peg_currPos, 1))) {
$s0 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c50);
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseboxchars() {
$key = $this->peg_currPos * 130 + 48;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
if (peg_regex_test($this->peg_c51, $this->input_substr($this->peg_currPos, 1))) {
$s0 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c52);
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseBOX() {
$key = $this->peg_currPos * 130 + 49;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f83($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c39) {
$s4 = $this->peg_c39;
$this->peg_currPos++;
} else {
$s4 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c40);
}
}
if ($s4 !== $this->peg_FAILED) {
$s5 = array();
$s6 = $this->peg_parseboxchars();
if ($s6 !== $this->peg_FAILED) {
while ($s6 !== $this->peg_FAILED) {
$s5[] = $s6;
$s6 = $this->peg_parseboxchars();
}
} else {
$s5 = $this->peg_FAILED;
}
if ($s5 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c11) {
$s6 = $this->peg_c11;
$this->peg_currPos++;
} else {
$s6 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c12);
}
}
if ($s6 !== $this->peg_FAILED) {
$s7 = $this->peg_parse_();
if ($s7 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f84($s1, $s5);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseLITERAL() {
$key = $this->peg_currPos * 130 + 50;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseliteral_id();
if ($s1 === $this->peg_FAILED) {
$s1 = $this->peg_parseliteral_mn();
if ($s1 === $this->peg_FAILED) {
$s1 = $this->peg_parseliteral_uf_lt();
if ($s1 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c53) {
$s1 = $this->peg_c53;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c54);
}
}
if ($s1 === $this->peg_FAILED) {
$s1 = $this->peg_parseliteral_uf_op();
}
}
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f85($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f86($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f87($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f88($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f89($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f90($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c39) {
$s4 = $this->peg_c39;
$this->peg_currPos++;
} else {
$s4 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c40);
}
}
if ($s4 !== $this->peg_FAILED) {
$s5 = $this->peg_parsegeneric_func();
if ($s5 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s6 = $this->peg_f91($s1, $s5);
if ($s6) {
$s6 = null;
} else {
$s6 = $this->peg_FAILED;
}
if ($s6 !== $this->peg_FAILED) {
$s7 = $this->peg_parse_();
if ($s7 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c11) {
$s8 = $this->peg_c11;
$this->peg_currPos++;
} else {
$s8 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c12);
}
}
if ($s8 !== $this->peg_FAILED) {
$s9 = $this->peg_parse_();
if ($s9 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f92($s1, $s5);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f93($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f94($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f95($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c39) {
$s4 = $this->peg_c39;
$this->peg_currPos++;
} else {
$s4 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c40);
}
}
if ($s4 !== $this->peg_FAILED) {
$s5 = $this->peg_parsegeneric_func();
if ($s5 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s6 = $this->peg_f96($s1, $s5);
if ($s6) {
$s6 = null;
} else {
$s6 = $this->peg_FAILED;
}
if ($s6 !== $this->peg_FAILED) {
$s7 = $this->peg_parse_();
if ($s7 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c11) {
$s8 = $this->peg_c11;
$this->peg_currPos++;
} else {
$s8 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c12);
}
}
if ($s8 !== $this->peg_FAILED) {
$s9 = $this->peg_parse_();
if ($s9 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f97($s1, $s5);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseCOLOR();
if ($s1 === $this->peg_FAILED) {
$s1 = $this->peg_parseDEFINECOLOR();
}
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f98($s1);
}
$s0 = $s1;
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c55) {
$s1 = $this->peg_c55;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c56);
}
}
if ($s1 !== $this->peg_FAILED) {
if (peg_regex_test($this->peg_c57, $this->input_substr($this->peg_currPos, 1))) {
$s2 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c58);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f99($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
if (peg_regex_test($this->peg_c59, $this->input_substr($this->peg_currPos, 1))) {
$s1 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c60);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f85($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
if (peg_regex_test($this->peg_c61, $this->input_substr($this->peg_currPos, 1))) {
$s1 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c62);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f100($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
}
}
}
}
}
}
}
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseDELIMITER() {
$key = $this->peg_currPos * 130 + 51;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsedelimiter_uf_lt();
if ($s1 === $this->peg_FAILED) {
$s1 = $this->peg_parsedelimiter_uf_op();
if ($s1 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c5) {
$s1 = $this->peg_c5;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c6);
}
}
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f85($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c55) {
$s1 = $this->peg_c55;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c56);
}
}
if ($s1 !== $this->peg_FAILED) {
if (peg_regex_test($this->peg_c63, $this->input_substr($this->peg_currPos, 1))) {
$s2 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c64);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f99($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f101($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f87($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f102($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f103($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
}
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseFUN_AR1nb() {
$key = $this->peg_currPos * 130 + 52;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f104($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f98($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseFUN_AR1opt() {
$key = $this->peg_currPos * 130 + 53;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f105($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c5) {
$s4 = $this->peg_c5;
$this->peg_currPos++;
} else {
$s4 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c6);
}
}
if ($s4 !== $this->peg_FAILED) {
$s5 = $this->peg_parse_();
if ($s5 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f98($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseNEXT_CELL() {
$key = $this->peg_currPos * 130 + 54;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c65) {
$s1 = $this->peg_c65;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c66);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$s1 = array($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseLATEX_LENGTH() {
$key = $this->peg_currPos * 130 + 55;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseLATEX_SIGN();
if ($s1 === $this->peg_FAILED) {
$s1 = null;
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseLATEX_NUMBER();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseLATEX_UNIT();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f106($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseLATEX_SIGN() {
$key = $this->peg_currPos * 130 + 56;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
if (peg_regex_test($this->peg_c67, $this->input_substr($this->peg_currPos, 1))) {
$s0 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c68);
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseLATEX_NUMBER() {
$key = $this->peg_currPos * 130 + 57;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = array();
$s2 = $this->peg_parseliteral_mn();
if ($s2 !== $this->peg_FAILED) {
while ($s2 !== $this->peg_FAILED) {
$s1[] = $s2;
$s2 = $this->peg_parseliteral_mn();
}
} else {
$s1 = $this->peg_FAILED;
}
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c69) {
$s2 = $this->peg_c69;
$this->peg_currPos++;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c70);
}
}
if ($s2 === $this->peg_FAILED) {
$s2 = null;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = array();
$s4 = $this->peg_parseliteral_mn();
while ($s4 !== $this->peg_FAILED) {
$s3[] = $s4;
$s4 = $this->peg_parseliteral_mn();
}
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c69) {
$s1 = $this->peg_c69;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c70);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = array();
$s3 = $this->peg_parseliteral_mn();
if ($s3 !== $this->peg_FAILED) {
while ($s3 !== $this->peg_FAILED) {
$s2[] = $s3;
$s3 = $this->peg_parseliteral_mn();
}
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s1 = array($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseLATEX_UNIT() {
$key = $this->peg_currPos * 130 + 58;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c71) {
$s0 = $this->peg_c71;
$this->peg_currPos += 2;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c72);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c73) {
$s0 = $this->peg_c73;
$this->peg_currPos += 2;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c74);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c75) {
$s0 = $this->peg_c75;
$this->peg_currPos += 2;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c76);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c77) {
$s0 = $this->peg_c77;
$this->peg_currPos += 2;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c78);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c79) {
$s0 = $this->peg_c79;
$this->peg_currPos += 2;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c80);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c81) {
$s0 = $this->peg_c81;
$this->peg_currPos += 2;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c82);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c83) {
$s0 = $this->peg_c83;
$this->peg_currPos += 2;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c84);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c85) {
$s0 = $this->peg_c85;
$this->peg_currPos += 2;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c86);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c87) {
$s0 = $this->peg_c87;
$this->peg_currPos += 2;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c88);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c89) {
$s0 = $this->peg_c89;
$this->peg_currPos += 2;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c90);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c91) {
$s0 = $this->peg_c91;
$this->peg_currPos += 2;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c92);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c93) {
$s0 = $this->peg_c93;
$this->peg_currPos += 2;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c94);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c95) {
$s0 = $this->peg_c95;
$this->peg_currPos += 2;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c96);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c97) {
$s0 = $this->peg_c97;
$this->peg_currPos += 2;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c98);
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseNEXT_ROW() {
$key = $this->peg_currPos * 130 + 59;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c99) {
$s1 = $this->peg_c99;
$this->peg_currPos += 2;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c100);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c5) {
$s3 = $this->peg_c5;
$this->peg_currPos++;
} else {
$s3 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c6);
}
}
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parseLATEX_LENGTH();
if ($s4 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c29) {
$s5 = $this->peg_c29;
$this->peg_currPos++;
} else {
$s5 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c30);
}
}
if ($s5 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s2;
$s3 = $this->peg_f107($s4);
$s2 = $s3;
} else {
$this->peg_currPos = $s2;
$s2 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s2;
$s2 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s2;
$s2 = $this->peg_FAILED;
}
if ($s2 === $this->peg_FAILED) {
$s2 = null;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f108($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseBEGIN() {
$key = $this->peg_currPos * 130 + 60;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 6) === $this->peg_c101) {
$s1 = $this->peg_c101;
$this->peg_currPos += 6;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c102);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$s1 = array($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseEND() {
$key = $this->peg_currPos * 130 + 61;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 4) === $this->peg_c103) {
$s1 = $this->peg_c103;
$this->peg_currPos += 4;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c104);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$s1 = array($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseBEGIN_MATRIX() {
$key = $this->peg_currPos * 130 + 62;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 8) === $this->peg_c105) {
$s2 = $this->peg_c105;
$this->peg_currPos += 8;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c106);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseEND_MATRIX() {
$key = $this->peg_currPos * 130 + 63;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseEND();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 8) === $this->peg_c105) {
$s2 = $this->peg_c105;
$this->peg_currPos += 8;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c106);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseBEGIN_PMATRIX() {
$key = $this->peg_currPos * 130 + 64;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 9) === $this->peg_c107) {
$s2 = $this->peg_c107;
$this->peg_currPos += 9;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c108);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseEND_PMATRIX() {
$key = $this->peg_currPos * 130 + 65;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseEND();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 9) === $this->peg_c107) {
$s2 = $this->peg_c107;
$this->peg_currPos += 9;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c108);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseBEGIN_BMATRIX() {
$key = $this->peg_currPos * 130 + 66;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 9) === $this->peg_c109) {
$s2 = $this->peg_c109;
$this->peg_currPos += 9;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c110);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseEND_BMATRIX() {
$key = $this->peg_currPos * 130 + 67;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseEND();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 9) === $this->peg_c109) {
$s2 = $this->peg_c109;
$this->peg_currPos += 9;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c110);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseBEGIN_BBMATRIX() {
$key = $this->peg_currPos * 130 + 68;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 9) === $this->peg_c111) {
$s2 = $this->peg_c111;
$this->peg_currPos += 9;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c112);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseEND_BBMATRIX() {
$key = $this->peg_currPos * 130 + 69;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseEND();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 9) === $this->peg_c111) {
$s2 = $this->peg_c111;
$this->peg_currPos += 9;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c112);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseBEGIN_VMATRIX() {
$key = $this->peg_currPos * 130 + 70;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 9) === $this->peg_c113) {
$s2 = $this->peg_c113;
$this->peg_currPos += 9;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c114);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseEND_VMATRIX() {
$key = $this->peg_currPos * 130 + 71;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseEND();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 9) === $this->peg_c113) {
$s2 = $this->peg_c113;
$this->peg_currPos += 9;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c114);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseBEGIN_VVMATRIX() {
$key = $this->peg_currPos * 130 + 72;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 9) === $this->peg_c115) {
$s2 = $this->peg_c115;
$this->peg_currPos += 9;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c116);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseEND_VVMATRIX() {
$key = $this->peg_currPos * 130 + 73;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseEND();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 9) === $this->peg_c115) {
$s2 = $this->peg_c115;
$this->peg_currPos += 9;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c116);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseBEGIN_ARRAY() {
$key = $this->peg_currPos * 130 + 74;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 7) === $this->peg_c117) {
$s2 = $this->peg_c117;
$this->peg_currPos += 7;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c118);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseEND_ARRAY() {
$key = $this->peg_currPos * 130 + 75;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseEND();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 7) === $this->peg_c117) {
$s2 = $this->peg_c117;
$this->peg_currPos += 7;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c118);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseBEGIN_ALIGN() {
$key = $this->peg_currPos * 130 + 76;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 7) === $this->peg_c119) {
$s2 = $this->peg_c119;
$this->peg_currPos += 7;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c120);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseEND_ALIGN() {
$key = $this->peg_currPos * 130 + 77;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseEND();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 7) === $this->peg_c119) {
$s2 = $this->peg_c119;
$this->peg_currPos += 7;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c120);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseBEGIN_ALIGNED() {
$key = $this->peg_currPos * 130 + 78;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 9) === $this->peg_c121) {
$s2 = $this->peg_c121;
$this->peg_currPos += 9;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c122);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseEND_ALIGNED() {
$key = $this->peg_currPos * 130 + 79;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseEND();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 9) === $this->peg_c121) {
$s2 = $this->peg_c121;
$this->peg_currPos += 9;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c122);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseBEGIN_ALIGNAT() {
$key = $this->peg_currPos * 130 + 80;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 9) === $this->peg_c123) {
$s2 = $this->peg_c123;
$this->peg_currPos += 9;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c124);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseEND_ALIGNAT() {
$key = $this->peg_currPos * 130 + 81;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseEND();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 9) === $this->peg_c123) {
$s2 = $this->peg_c123;
$this->peg_currPos += 9;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c124);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseBEGIN_ALIGNEDAT() {
$key = $this->peg_currPos * 130 + 82;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 11) === $this->peg_c125) {
$s2 = $this->peg_c125;
$this->peg_currPos += 11;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c126);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseEND_ALIGNEDAT() {
$key = $this->peg_currPos * 130 + 83;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseEND();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 11) === $this->peg_c125) {
$s2 = $this->peg_c125;
$this->peg_currPos += 11;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c126);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseBEGIN_SMALLMATRIX() {
$key = $this->peg_currPos * 130 + 84;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 13) === $this->peg_c127) {
$s2 = $this->peg_c127;
$this->peg_currPos += 13;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c128);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseEND_SMALLMATRIX() {
$key = $this->peg_currPos * 130 + 85;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseEND();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 13) === $this->peg_c127) {
$s2 = $this->peg_c127;
$this->peg_currPos += 13;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c128);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseBEGIN_CASES() {
$key = $this->peg_currPos * 130 + 86;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 7) === $this->peg_c129) {
$s2 = $this->peg_c129;
$this->peg_currPos += 7;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c130);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseEND_CASES() {
$key = $this->peg_currPos * 130 + 87;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseEND();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 7) === $this->peg_c129) {
$s2 = $this->peg_c129;
$this->peg_currPos += 7;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c130);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseSQ_CLOSE() {
$key = $this->peg_currPos * 130 + 88;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c29) {
$s1 = $this->peg_c29;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c30);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$s1 = array($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseCURLY_OPEN() {
$key = $this->peg_currPos * 130 + 89;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c39) {
$s1 = $this->peg_c39;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c40);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$s1 = array($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseCURLY_CLOSE() {
$key = $this->peg_currPos * 130 + 90;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c11) {
$s1 = $this->peg_c11;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c12);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$s1 = array($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseSUP() {
$key = $this->peg_currPos * 130 + 91;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c35) {
$s1 = $this->peg_c35;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c36);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$s1 = array($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseSUB() {
$key = $this->peg_currPos * 130 + 92;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c37) {
$s1 = $this->peg_c37;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c38);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$s1 = array($s1, $s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parsegeneric_func() {
$key = $this->peg_currPos * 130 + 93;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c55) {
$s1 = $this->peg_c55;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c56);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = array();
$s3 = $this->peg_parsealpha();
if ($s3 !== $this->peg_FAILED) {
while ($s3 !== $this->peg_FAILED) {
$s2[] = $s3;
$s3 = $this->peg_parsealpha();
}
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f61();
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseBIG() {
$key = $this->peg_currPos * 130 + 94;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f109($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f98($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseFUN_AR1() {
$key = $this->peg_currPos * 130 + 95;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f110($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f98($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f111($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f98($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f112($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f113($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseFUN_MHCHEM() {
$key = $this->peg_currPos * 130 + 96;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f114($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f98($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseFUN_AR2() {
$key = $this->peg_currPos * 130 + 97;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f115($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f98($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseFUN_AR4_MHCHEM_TEXIFIED() {
$key = $this->peg_currPos * 130 + 98;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f116($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f98($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseFUN_INFIX() {
$key = $this->peg_currPos * 130 + 99;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f117($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f98($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseDECLh() {
$key = $this->peg_currPos * 130 + 100;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f118($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f119($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseFUN_AR2nb() {
$key = $this->peg_currPos * 130 + 101;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f120($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f98($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseLEFTI() {
$key = $this->peg_currPos * 130 + 102;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f121($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseRIGHTI() {
$key = $this->peg_currPos * 130 + 103;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f122($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseHLINE() {
$key = $this->peg_currPos * 130 + 104;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f123($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f98($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseCOLOR() {
$key = $this->peg_currPos * 130 + 105;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f124($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parseCOLOR_SPEC();
if ($s4 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f125($s1, $s4);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseDEFINECOLOR() {
$key = $this->peg_currPos * 130 + 106;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f126($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c39) {
$s4 = $this->peg_c39;
$this->peg_currPos++;
} else {
$s4 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c40);
}
}
if ($s4 !== $this->peg_FAILED) {
$s5 = $this->peg_parse_();
if ($s5 !== $this->peg_FAILED) {
$s6 = array();
$s7 = $this->peg_parsealpha();
if ($s7 !== $this->peg_FAILED) {
while ($s7 !== $this->peg_FAILED) {
$s6[] = $s7;
$s7 = $this->peg_parsealpha();
}
} else {
$s6 = $this->peg_FAILED;
}
if ($s6 !== $this->peg_FAILED) {
$s7 = $this->peg_parse_();
if ($s7 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c11) {
$s8 = $this->peg_c11;
$this->peg_currPos++;
} else {
$s8 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c12);
}
}
if ($s8 !== $this->peg_FAILED) {
$s9 = $this->peg_parse_();
if ($s9 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c39) {
$s10 = $this->peg_c39;
$this->peg_currPos++;
} else {
$s10 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c40);
}
}
if ($s10 !== $this->peg_FAILED) {
$s11 = $this->peg_parse_();
if ($s11 !== $this->peg_FAILED) {
$s12 = $this->peg_currPos;
if (mb_strtolower($this->input_substr($this->peg_currPos, 5), "UTF-8") === $this->peg_c131) {
$s13 = $this->input_substr($this->peg_currPos, 5);
$this->peg_currPos += 5;
} else {
$s13 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c132);
}
}
if ($s13 !== $this->peg_FAILED) {
$s14 = $this->peg_parse_();
if ($s14 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c11) {
$s15 = $this->peg_c11;
$this->peg_currPos++;
} else {
$s15 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c12);
}
}
if ($s15 !== $this->peg_FAILED) {
$s16 = $this->peg_parse_();
if ($s16 !== $this->peg_FAILED) {
$s17 = $this->peg_parseCOLOR_SPEC_NAMED();
if ($s17 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s12;
$s13 = $this->peg_f127($s1, $s6, $s17);
$s12 = $s13;
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
if ($s12 === $this->peg_FAILED) {
$s12 = $this->peg_currPos;
if (mb_strtolower($this->input_substr($this->peg_currPos, 4), "UTF-8") === $this->peg_c133) {
$s13 = $this->input_substr($this->peg_currPos, 4);
$this->peg_currPos += 4;
} else {
$s13 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c134);
}
}
if ($s13 !== $this->peg_FAILED) {
$s14 = $this->peg_parse_();
if ($s14 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c11) {
$s15 = $this->peg_c11;
$this->peg_currPos++;
} else {
$s15 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c12);
}
}
if ($s15 !== $this->peg_FAILED) {
$s16 = $this->peg_parse_();
if ($s16 !== $this->peg_FAILED) {
$s17 = $this->peg_parseCOLOR_SPEC_GRAY();
if ($s17 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s12;
$s13 = $this->peg_f128($s1, $s6, $s17);
$s12 = $s13;
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
if ($s12 === $this->peg_FAILED) {
$s12 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 3) === $this->peg_c135) {
$s13 = $this->peg_c135;
$this->peg_currPos += 3;
} else {
$s13 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c136);
}
}
if ($s13 !== $this->peg_FAILED) {
$s14 = $this->peg_parse_();
if ($s14 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c11) {
$s15 = $this->peg_c11;
$this->peg_currPos++;
} else {
$s15 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c12);
}
}
if ($s15 !== $this->peg_FAILED) {
$s16 = $this->peg_parse_();
if ($s16 !== $this->peg_FAILED) {
$s17 = $this->peg_parseCOLOR_SPEC_rgb();
if ($s17 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s12;
$s13 = $this->peg_f129($s1, $s6, $s17);
$s12 = $s13;
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
if ($s12 === $this->peg_FAILED) {
$s12 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 3) === $this->peg_c137) {
$s13 = $this->peg_c137;
$this->peg_currPos += 3;
} else {
$s13 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c138);
}
}
if ($s13 !== $this->peg_FAILED) {
$s14 = $this->peg_parse_();
if ($s14 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c11) {
$s15 = $this->peg_c11;
$this->peg_currPos++;
} else {
$s15 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c12);
}
}
if ($s15 !== $this->peg_FAILED) {
$s16 = $this->peg_parse_();
if ($s16 !== $this->peg_FAILED) {
$s17 = $this->peg_parseCOLOR_SPEC_RGBI();
if ($s17 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s12;
$s13 = $this->peg_f129($s1, $s6, $s17);
$s12 = $s13;
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
if ($s12 === $this->peg_FAILED) {
$s12 = $this->peg_currPos;
if (mb_strtolower($this->input_substr($this->peg_currPos, 4), "UTF-8") === $this->peg_c139) {
$s13 = $this->input_substr($this->peg_currPos, 4);
$this->peg_currPos += 4;
} else {
$s13 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c140);
}
}
if ($s13 !== $this->peg_FAILED) {
$s14 = $this->peg_parse_();
if ($s14 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c11) {
$s15 = $this->peg_c11;
$this->peg_currPos++;
} else {
$s15 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c12);
}
}
if ($s15 !== $this->peg_FAILED) {
$s16 = $this->peg_parse_();
if ($s16 !== $this->peg_FAILED) {
$s17 = $this->peg_parseCOLOR_SPEC_CMYK();
if ($s17 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s12;
$s13 = $this->peg_f130($s1, $s6, $s17);
$s12 = $s13;
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s12;
$s12 = $this->peg_FAILED;
}
}
}
}
}
if ($s12 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f131($s1, $s6, $s12);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseCOLOR_SPEC() {
$key = $this->peg_currPos * 130 + 107;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_parseCOLOR_SPEC_NAMED();
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c5) {
$s1 = $this->peg_c5;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c6);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
if (mb_strtolower($this->input_substr($this->peg_currPos, 5), "UTF-8") === $this->peg_c131) {
$s3 = $this->input_substr($this->peg_currPos, 5);
$this->peg_currPos += 5;
} else {
$s3 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c132);
}
}
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parse_();
if ($s4 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c29) {
$s5 = $this->peg_c29;
$this->peg_currPos++;
} else {
$s5 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c30);
}
}
if ($s5 !== $this->peg_FAILED) {
$s6 = $this->peg_parse_();
if ($s6 !== $this->peg_FAILED) {
$s7 = $this->peg_parseCOLOR_SPEC_NAMED();
if ($s7 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f132($s7);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c5) {
$s1 = $this->peg_c5;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c6);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
if (mb_strtolower($this->input_substr($this->peg_currPos, 4), "UTF-8") === $this->peg_c133) {
$s3 = $this->input_substr($this->peg_currPos, 4);
$this->peg_currPos += 4;
} else {
$s3 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c134);
}
}
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parse_();
if ($s4 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c29) {
$s5 = $this->peg_c29;
$this->peg_currPos++;
} else {
$s5 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c30);
}
}
if ($s5 !== $this->peg_FAILED) {
$s6 = $this->peg_parse_();
if ($s6 !== $this->peg_FAILED) {
$s7 = $this->peg_parseCOLOR_SPEC_GRAY();
if ($s7 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f133($s7);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c5) {
$s1 = $this->peg_c5;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c6);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 3) === $this->peg_c135) {
$s3 = $this->peg_c135;
$this->peg_currPos += 3;
} else {
$s3 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c136);
}
}
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parse_();
if ($s4 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c29) {
$s5 = $this->peg_c29;
$this->peg_currPos++;
} else {
$s5 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c30);
}
}
if ($s5 !== $this->peg_FAILED) {
$s6 = $this->peg_parse_();
if ($s6 !== $this->peg_FAILED) {
$s7 = $this->peg_parseCOLOR_SPEC_rgb();
if ($s7 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f134($s7);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c5) {
$s1 = $this->peg_c5;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c6);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 3) === $this->peg_c137) {
$s3 = $this->peg_c137;
$this->peg_currPos += 3;
} else {
$s3 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c138);
}
}
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parse_();
if ($s4 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c29) {
$s5 = $this->peg_c29;
$this->peg_currPos++;
} else {
$s5 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c30);
}
}
if ($s5 !== $this->peg_FAILED) {
$s6 = $this->peg_parse_();
if ($s6 !== $this->peg_FAILED) {
$s7 = $this->peg_parseCOLOR_SPEC_RGBI();
if ($s7 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f134($s7);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c5) {
$s1 = $this->peg_c5;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c6);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
if (mb_strtolower($this->input_substr($this->peg_currPos, 4), "UTF-8") === $this->peg_c139) {
$s3 = $this->input_substr($this->peg_currPos, 4);
$this->peg_currPos += 4;
} else {
$s3 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c140);
}
}
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parse_();
if ($s4 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c29) {
$s5 = $this->peg_c29;
$this->peg_currPos++;
} else {
$s5 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c30);
}
}
if ($s5 !== $this->peg_FAILED) {
$s6 = $this->peg_parse_();
if ($s6 !== $this->peg_FAILED) {
$s7 = $this->peg_parseCOLOR_SPEC_CMYK();
if ($s7 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f135($s7);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
}
}
}
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseCOLOR_SPEC_NAMED() {
$key = $this->peg_currPos * 130 + 108;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c39) {
$s1 = $this->peg_c39;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c40);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$s3 = array();
$s4 = $this->peg_parsealpha();
if ($s4 !== $this->peg_FAILED) {
while ($s4 !== $this->peg_FAILED) {
$s3[] = $s4;
$s4 = $this->peg_parsealpha();
}
} else {
$s3 = $this->peg_FAILED;
}
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_parse_();
if ($s4 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c11) {
$s5 = $this->peg_c11;
$this->peg_currPos++;
} else {
$s5 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c12);
}
}
if ($s5 !== $this->peg_FAILED) {
$s6 = $this->peg_parse_();
if ($s6 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f136($s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseCOLOR_SPEC_GRAY() {
$key = $this->peg_currPos * 130 + 109;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c39) {
$s1 = $this->peg_c39;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c40);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$s3 = array();
$s4 = $this->peg_parseCNUM();
if ($s4 !== $this->peg_FAILED) {
while ($s4 !== $this->peg_FAILED) {
$s3[] = $s4;
$s4 = $this->peg_parseCNUM();
}
} else {
$s3 = $this->peg_FAILED;
}
if ($s3 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c11) {
$s4 = $this->peg_c11;
$this->peg_currPos++;
} else {
$s4 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c12);
}
}
if ($s4 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f137($s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseCOLOR_SPEC_rgb() {
$key = $this->peg_currPos * 130 + 110;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c39) {
$s1 = $this->peg_c39;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c40);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseCNUM();
if ($s3 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c141) {
$s4 = $this->peg_c141;
$this->peg_currPos++;
} else {
$s4 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c142);
}
}
if ($s4 !== $this->peg_FAILED) {
$s5 = $this->peg_parse_();
if ($s5 !== $this->peg_FAILED) {
$s6 = $this->peg_parseCNUM();
if ($s6 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c141) {
$s7 = $this->peg_c141;
$this->peg_currPos++;
} else {
$s7 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c142);
}
}
if ($s7 !== $this->peg_FAILED) {
$s8 = $this->peg_parse_();
if ($s8 !== $this->peg_FAILED) {
$s9 = $this->peg_parseCNUM();
if ($s9 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c11) {
$s10 = $this->peg_c11;
$this->peg_currPos++;
} else {
$s10 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c12);
}
}
if ($s10 !== $this->peg_FAILED) {
$s11 = $this->peg_parse_();
if ($s11 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f138($s3, $s6, $s9);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseCOLOR_SPEC_RGBI() {
$key = $this->peg_currPos * 130 + 111;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c39) {
$s1 = $this->peg_c39;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c40);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseCNUM255();
if ($s3 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c141) {
$s4 = $this->peg_c141;
$this->peg_currPos++;
} else {
$s4 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c142);
}
}
if ($s4 !== $this->peg_FAILED) {
$s5 = $this->peg_parse_();
if ($s5 !== $this->peg_FAILED) {
$s6 = $this->peg_parseCNUM255();
if ($s6 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c141) {
$s7 = $this->peg_c141;
$this->peg_currPos++;
} else {
$s7 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c142);
}
}
if ($s7 !== $this->peg_FAILED) {
$s8 = $this->peg_parse_();
if ($s8 !== $this->peg_FAILED) {
$s9 = $this->peg_parseCNUM255();
if ($s9 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c11) {
$s10 = $this->peg_c11;
$this->peg_currPos++;
} else {
$s10 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c12);
}
}
if ($s10 !== $this->peg_FAILED) {
$s11 = $this->peg_parse_();
if ($s11 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f138($s3, $s6, $s9);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseCOLOR_SPEC_CMYK() {
$key = $this->peg_currPos * 130 + 112;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c39) {
$s1 = $this->peg_c39;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c40);
}
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parseCNUM();
if ($s3 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c141) {
$s4 = $this->peg_c141;
$this->peg_currPos++;
} else {
$s4 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c142);
}
}
if ($s4 !== $this->peg_FAILED) {
$s5 = $this->peg_parse_();
if ($s5 !== $this->peg_FAILED) {
$s6 = $this->peg_parseCNUM();
if ($s6 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c141) {
$s7 = $this->peg_c141;
$this->peg_currPos++;
} else {
$s7 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c142);
}
}
if ($s7 !== $this->peg_FAILED) {
$s8 = $this->peg_parse_();
if ($s8 !== $this->peg_FAILED) {
$s9 = $this->peg_parseCNUM();
if ($s9 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c141) {
$s10 = $this->peg_c141;
$this->peg_currPos++;
} else {
$s10 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c142);
}
}
if ($s10 !== $this->peg_FAILED) {
$s11 = $this->peg_parse_();
if ($s11 !== $this->peg_FAILED) {
$s12 = $this->peg_parseCNUM();
if ($s12 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c11) {
$s13 = $this->peg_c11;
$this->peg_currPos++;
} else {
$s13 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c12);
}
}
if ($s13 !== $this->peg_FAILED) {
$s14 = $this->peg_parse_();
if ($s14 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f139($s3, $s6, $s9, $s12);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseCNUM255() {
$key = $this->peg_currPos * 130 + 113;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c143) {
$s2 = $this->peg_c143;
$this->peg_currPos++;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c144);
}
}
if ($s2 === $this->peg_FAILED) {
$s2 = $this->peg_currPos;
if (peg_regex_test($this->peg_c145, $this->input_substr($this->peg_currPos, 1))) {
$s3 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s3 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c146);
}
}
if ($s3 !== $this->peg_FAILED) {
$s4 = $this->peg_currPos;
if (peg_regex_test($this->peg_c19, $this->input_substr($this->peg_currPos, 1))) {
$s5 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s5 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c20);
}
}
if ($s5 !== $this->peg_FAILED) {
if (peg_regex_test($this->peg_c19, $this->input_substr($this->peg_currPos, 1))) {
$s6 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s6 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c20);
}
}
if ($s6 === $this->peg_FAILED) {
$s6 = null;
}
if ($s6 !== $this->peg_FAILED) {
$s5 = array($s5, $s6);
$s4 = $s5;
} else {
$this->peg_currPos = $s4;
$s4 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s4;
$s4 = $this->peg_FAILED;
}
if ($s4 === $this->peg_FAILED) {
$s4 = null;
}
if ($s4 !== $this->peg_FAILED) {
$s3 = array($s3, $s4);
$s2 = $s3;
} else {
$this->peg_currPos = $s2;
$s2 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s2;
$s2 = $this->peg_FAILED;
}
}
if ($s2 !== $this->peg_FAILED) {
$s1 = $this->input_substr($s1, $this->peg_currPos - $s1);
} else {
$s1 = $s2;
}
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f140($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f141($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseCNUM() {
$key = $this->peg_currPos * 130 + 114;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_currPos;
$s2 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c143) {
$s3 = $this->peg_c143;
$this->peg_currPos++;
} else {
$s3 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c144);
}
}
if ($s3 === $this->peg_FAILED) {
$s3 = null;
}
if ($s3 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c69) {
$s4 = $this->peg_c69;
$this->peg_currPos++;
} else {
$s4 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c70);
}
}
if ($s4 !== $this->peg_FAILED) {
$s5 = array();
if (peg_regex_test($this->peg_c19, $this->input_substr($this->peg_currPos, 1))) {
$s6 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s6 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c20);
}
}
if ($s6 !== $this->peg_FAILED) {
while ($s6 !== $this->peg_FAILED) {
$s5[] = $s6;
if (peg_regex_test($this->peg_c19, $this->input_substr($this->peg_currPos, 1))) {
$s6 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s6 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c20);
}
}
}
} else {
$s5 = $this->peg_FAILED;
}
if ($s5 !== $this->peg_FAILED) {
$s3 = array($s3, $s4, $s5);
$s2 = $s3;
} else {
$this->peg_currPos = $s2;
$s2 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s2;
$s2 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s2;
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s1 = $this->input_substr($s1, $this->peg_currPos - $s1);
} else {
$s1 = $s2;
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f142($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_currPos;
$s2 = $this->peg_currPos;
if (peg_regex_test($this->peg_c147, $this->input_substr($this->peg_currPos, 1))) {
$s3 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s3 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c148);
}
}
if ($s3 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c69) {
$s4 = $this->peg_c69;
$this->peg_currPos++;
} else {
$s4 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c70);
}
}
if ($s4 === $this->peg_FAILED) {
$s4 = null;
}
if ($s4 !== $this->peg_FAILED) {
$s3 = array($s3, $s4);
$s2 = $s3;
} else {
$this->peg_currPos = $s2;
$s2 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s2;
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s1 = $this->input_substr($s1, $this->peg_currPos - $s1);
} else {
$s1 = $s2;
}
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parse_();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f142($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseCHEM_SINGLE_MACRO() {
$key = $this->peg_currPos * 130 + 115;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f143($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f98($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c55) {
$s1 = $this->peg_c55;
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c56);
}
}
if ($s1 !== $this->peg_FAILED) {
if (peg_regex_test($this->peg_c57, $this->input_substr($this->peg_currPos, 1))) {
$s2 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c58);
}
}
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f99($s2);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseCHEM_BONDI() {
$key = $this->peg_currPos * 130 + 116;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f144($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f98($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseCHEM_MACRO_1P() {
$key = $this->peg_currPos * 130 + 117;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f145($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f98($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseCHEM_MACRO_2P() {
$key = $this->peg_currPos * 130 + 118;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f146($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f98($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseCHEM_MACRO_2PU() {
$key = $this->peg_currPos * 130 + 119;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f147($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f98($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseCHEM_MACRO_2PC() {
$key = $this->peg_currPos * 130 + 120;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parsegeneric_func();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $this->peg_currPos;
$s2 = $this->peg_f148($s1);
if ($s2) {
$s2 = null;
} else {
$s2 = $this->peg_FAILED;
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f98($s1);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseCHEM_SCRIPT_FOLLOW() {
$key = $this->peg_currPos * 130 + 121;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_parseliteral_mn();
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_parseliteral_id();
if ($s0 === $this->peg_FAILED) {
if (peg_regex_test($this->peg_c149, $this->input_substr($this->peg_currPos, 1))) {
$s0 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c150);
}
}
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseCHEM_SUPERSUB() {
$key = $this->peg_currPos * 130 + 122;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c37) {
$s0 = $this->peg_c37;
$this->peg_currPos++;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c38);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c35) {
$s0 = $this->peg_c35;
$this->peg_currPos++;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c36);
}
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseCHEM_BOND_TYPE() {
$key = $this->peg_currPos * 130 + 123;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c151) {
$s0 = $this->peg_c151;
$this->peg_currPos++;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c152);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c153) {
$s0 = $this->peg_c153;
$this->peg_currPos++;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c154);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 3) === $this->peg_c155) {
$s0 = $this->peg_c155;
$this->peg_currPos += 3;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c156);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c157) {
$s0 = $this->peg_c157;
$this->peg_currPos += 2;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c158);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c159) {
$s0 = $this->peg_c159;
$this->peg_currPos += 2;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c160);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c161) {
$s0 = $this->peg_c161;
$this->peg_currPos++;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c162);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 3) === $this->peg_c163) {
$s0 = $this->peg_c163;
$this->peg_currPos += 3;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c164);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 4) === $this->peg_c165) {
$s0 = $this->peg_c165;
$this->peg_currPos += 4;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c166);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 3) === $this->peg_c167) {
$s0 = $this->peg_c167;
$this->peg_currPos += 3;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c168);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c169) {
$s0 = $this->peg_c169;
$this->peg_currPos += 2;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c170);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c171) {
$s0 = $this->peg_c171;
$this->peg_currPos += 2;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c172);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c53) {
$s0 = $this->peg_c53;
$this->peg_currPos++;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c54);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c173) {
$s0 = $this->peg_c173;
$this->peg_currPos++;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c174);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c175) {
$s0 = $this->peg_c175;
$this->peg_currPos++;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c176);
}
}
if ($s0 === $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 1) === $this->peg_c177) {
$s0 = $this->peg_c177;
$this->peg_currPos++;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c178);
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseBEGIN_MATH() {
$key = $this->peg_currPos * 130 + 124;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseBEGIN();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 6) === $this->peg_c179) {
$s2 = $this->peg_c179;
$this->peg_currPos += 6;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c180);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseEND_MATH() {
$key = $this->peg_currPos * 130 + 125;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseEND();
if ($s1 !== $this->peg_FAILED) {
if ($this->input_substr($this->peg_currPos, 6) === $this->peg_c179) {
$s2 = $this->peg_c179;
$this->peg_currPos += 6;
} else {
$s2 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c180);
}
}
if ($s2 !== $this->peg_FAILED) {
$s3 = $this->peg_parse_();
if ($s3 !== $this->peg_FAILED) {
$s1 = array($s1, $s2, $s3);
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseCHEM_LETTER() {
$key = $this->peg_currPos * 130 + 126;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
if (peg_regex_test($this->peg_c41, $this->input_substr($this->peg_currPos, 1))) {
$s0 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s0 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c42);
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseCHEM_NONLETTER() {
$key = $this->peg_currPos * 130 + 127;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c7) {
$s1 = $this->peg_c7;
$this->peg_currPos += 2;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c8);
}
}
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f85($s1);
}
$s0 = $s1;
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c181) {
$s1 = $this->peg_c181;
$this->peg_currPos += 2;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c182);
}
}
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f85($s1);
}
$s0 = $s1;
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
if ($this->input_substr($this->peg_currPos, 2) === $this->peg_c99) {
$s1 = $this->peg_c99;
$this->peg_currPos += 2;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c100);
}
}
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f85($s1);
}
$s0 = $s1;
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
if (peg_regex_test($this->peg_c183, $this->input_substr($this->peg_currPos, 1))) {
$s1 = $this->input_substr($this->peg_currPos, 1);
$this->peg_currPos++;
} else {
$s1 = $this->peg_FAILED;
if ($this->peg_silentFails === 0) {
$this->peg_fail($this->peg_c184);
}
}
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f85($s1);
}
$s0 = $s1;
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseliteral_mn();
if ($s1 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f85($s1);
}
$s0 = $s1;
if ($s0 === $this->peg_FAILED) {
$s0 = $this->peg_currPos;
$s1 = $this->peg_parseCURLY_OPEN();
if ($s1 !== $this->peg_FAILED) {
$s2 = $this->peg_parseCURLY_CLOSE();
if ($s2 !== $this->peg_FAILED) {
$this->peg_reportedPos = $s0;
$s1 = $this->peg_f149();
$s0 = $s1;
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
} else {
$this->peg_currPos = $s0;
$s0 = $this->peg_FAILED;
}
}
}
}
}
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseimpossible() {
$key = $this->peg_currPos * 130 + 128;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$this->peg_reportedPos = $this->peg_currPos;
$s0 = $this->peg_f150();
if ($s0) {
$s0 = null;
} else {
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
private function peg_parseEOF() {
$key = $this->peg_currPos * 130 + 129;
$cached = isset($this->peg_cache[$key]) ? $this->peg_cache[$key] : null;
if ($cached) {
$this->peg_currPos = $cached["nextPos"];
return $cached["result"];
}
$this->peg_reportedPos = $this->peg_currPos;
$s0 = $this->peg_f151();
if ($s0) {
$s0 = null;
} else {
$s0 = $this->peg_FAILED;
}
$this->peg_cache[$key] = array ("nextPos" => $this->peg_currPos, "result" => $s0 );
return $s0;
}
public function parse($input) {
$arguments = func_get_args();
$options = count($arguments) > 1 ? $arguments[1] : array();
$this->cleanup_state();
if (is_array($input)) {
$this->input = $input;
} else {
preg_match_all("/./us", $input, $match);
$this->input = $match[0];
}
$this->input_length = count($this->input);
$old_regex_encoding = mb_regex_encoding();
mb_regex_encoding("UTF-8");
$this->peg_FAILED = new \stdClass;
$this->peg_c0 = "/^[ \\t\\n\\r]/";
$this->peg_c1 = array( "type" => "class", "value" => "[ \t\n\r]", "description" => "[ \t\n\r]" );
$this->peg_c2 = "";
$this->peg_c3 = "(";
$this->peg_c4 = array( "type" => "literal", "value" => "(", "description" => "\"(\"" );
$this->peg_c5 = "[";
$this->peg_c6 = array( "type" => "literal", "value" => "[", "description" => "\"[\"" );
$this->peg_c7 = "\\{";
$this->peg_c8 = array( "type" => "literal", "value" => "\\{", "description" => "\"\\\\{\"" );
$this->peg_c9 = "\\begin{";
$this->peg_c10 = array( "type" => "literal", "value" => "\\begin{", "description" => "\"\\\\begin{\"" );
$this->peg_c11 = "}";
$this->peg_c12 = array( "type" => "literal", "value" => "}", "description" => "\"}\"" );
$this->peg_c13 = "/^[lrc]/";
$this->peg_c14 = array( "type" => "class", "value" => "[lrc]", "description" => "[lrc]" );
$this->peg_c15 = "p";
$this->peg_c16 = array( "type" => "literal", "value" => "p", "description" => "\"p\"" );
$this->peg_c17 = "*";
$this->peg_c18 = array( "type" => "literal", "value" => "*", "description" => "\"*\"" );
$this->peg_c19 = "/^[0-9]/";
$this->peg_c20 = array( "type" => "class", "value" => "[0-9]", "description" => "[0-9]" );
$this->peg_c21 = "||";
$this->peg_c22 = array( "type" => "literal", "value" => "||", "description" => "\"||\"" );
$this->peg_c23 = "|";
$this->peg_c24 = array( "type" => "literal", "value" => "|", "description" => "\"|\"" );
$this->peg_c25 = "@";
$this->peg_c26 = array( "type" => "literal", "value" => "@", "description" => "\"@\"" );
$this->peg_c27 = "/^[tcb]/";
$this->peg_c28 = array( "type" => "class", "value" => "[tcb]", "description" => "[tcb]" );
$this->peg_c29 = "]";
$this->peg_c30 = array( "type" => "literal", "value" => "]", "description" => "\"]\"" );
$this->peg_c31 = " ";
$this->peg_c32 = array( "type" => "literal", "value" => " ", "description" => "\" \"" );
$this->peg_c33 = "(^)";
$this->peg_c34 = array( "type" => "literal", "value" => "(^)", "description" => "\"(^)\"" );
$this->peg_c35 = "^";
$this->peg_c36 = array( "type" => "literal", "value" => "^", "description" => "\"^\"" );
$this->peg_c37 = "_";
$this->peg_c38 = array( "type" => "literal", "value" => "_", "description" => "\"_\"" );
$this->peg_c39 = "{";
$this->peg_c40 = array( "type" => "literal", "value" => "{", "description" => "\"{\"" );
$this->peg_c41 = "/^[a-zA-Z]/";
$this->peg_c42 = array( "type" => "class", "value" => "[a-zA-Z]", "description" => "[a-zA-Z]" );
$this->peg_c43 = "/^[,:;?!']/";
$this->peg_c44 = array( "type" => "class", "value" => "[,:;?!']", "description" => "[,:;?!']" );
$this->peg_c45 = "/^[\\(\\).]/";
$this->peg_c46 = array( "type" => "class", "value" => "[().]", "description" => "[().]" );
$this->peg_c47 = "/^[-+*=]/";
$this->peg_c48 = array( "type" => "class", "value" => "[-+*=]", "description" => "[-+*=]" );
$this->peg_c49 = "/^[\\/|]/";
$this->peg_c50 = array( "type" => "class", "value" => "[/|]", "description" => "[/|]" );
$this->peg_c51 = "/^[-0-9a-zA-Z+*,=\\(\\):\\/;?.!'` \\[\\]\\[\\x{0080}-\\x{D7FF}\\]\\[\\x{E000}-\\x{FFFF}\\]]/";
$this->peg_c52 = array( "type" => "class", "value" => "[-0-9a-zA-Z+*,=():/;?.!'` [][\x{0080}-\x{D7FF}][\x{E000}-\x{FFFF}]]", "description" => "[-0-9a-zA-Z+*,=():/;?.!'` [][\x{0080}-\x{D7FF}][\x{E000}-\x{FFFF}]]" );
$this->peg_c53 = "-";
$this->peg_c54 = array( "type" => "literal", "value" => "-", "description" => "\"-\"" );
$this->peg_c55 = "\\";
$this->peg_c56 = array( "type" => "literal", "value" => "\\", "description" => "\"\\\\\"" );
$this->peg_c57 = "/^[, ;!_#%\\\$&]/";
$this->peg_c58 = array( "type" => "class", "value" => "[, ;!_#%\$&]", "description" => "[, ;!_#%\$&]" );
$this->peg_c59 = "/^[><~]/";
$this->peg_c60 = array( "type" => "class", "value" => "[><~]", "description" => "[><~]" );
$this->peg_c61 = "/^[%\\\$]/";
$this->peg_c62 = array( "type" => "class", "value" => "[%\$]", "description" => "[%\$]" );
$this->peg_c63 = "/^[{}|]/";
$this->peg_c64 = array( "type" => "class", "value" => "[{}|]", "description" => "[{}|]" );
$this->peg_c65 = "&";
$this->peg_c66 = array( "type" => "literal", "value" => "&", "description" => "\"&\"" );
$this->peg_c67 = "/^[+-]/";
$this->peg_c68 = array( "type" => "class", "value" => "[+-]", "description" => "[+-]" );
$this->peg_c69 = ".";
$this->peg_c70 = array( "type" => "literal", "value" => ".", "description" => "\".\"" );
$this->peg_c71 = "pt";
$this->peg_c72 = array( "type" => "literal", "value" => "pt", "description" => "\"pt\"" );
$this->peg_c73 = "pc";
$this->peg_c74 = array( "type" => "literal", "value" => "pc", "description" => "\"pc\"" );
$this->peg_c75 = "in";
$this->peg_c76 = array( "type" => "literal", "value" => "in", "description" => "\"in\"" );
$this->peg_c77 = "bp";
$this->peg_c78 = array( "type" => "literal", "value" => "bp", "description" => "\"bp\"" );
$this->peg_c79 = "cm";
$this->peg_c80 = array( "type" => "literal", "value" => "cm", "description" => "\"cm\"" );
$this->peg_c81 = "mm";
$this->peg_c82 = array( "type" => "literal", "value" => "mm", "description" => "\"mm\"" );
$this->peg_c83 = "dd";
$this->peg_c84 = array( "type" => "literal", "value" => "dd", "description" => "\"dd\"" );
$this->peg_c85 = "cc";
$this->peg_c86 = array( "type" => "literal", "value" => "cc", "description" => "\"cc\"" );
$this->peg_c87 = "sp";
$this->peg_c88 = array( "type" => "literal", "value" => "sp", "description" => "\"sp\"" );
$this->peg_c89 = "em";
$this->peg_c90 = array( "type" => "literal", "value" => "em", "description" => "\"em\"" );
$this->peg_c91 = "ex";
$this->peg_c92 = array( "type" => "literal", "value" => "ex", "description" => "\"ex\"" );
$this->peg_c93 = "mu";
$this->peg_c94 = array( "type" => "literal", "value" => "mu", "description" => "\"mu\"" );
$this->peg_c95 = "nd";
$this->peg_c96 = array( "type" => "literal", "value" => "nd", "description" => "\"nd\"" );
$this->peg_c97 = "nc";
$this->peg_c98 = array( "type" => "literal", "value" => "nc", "description" => "\"nc\"" );
$this->peg_c99 = "\\\\";
$this->peg_c100 = array( "type" => "literal", "value" => "\\\\", "description" => "\"\\\\\\\\\"" );
$this->peg_c101 = "\\begin";
$this->peg_c102 = array( "type" => "literal", "value" => "\\begin", "description" => "\"\\\\begin\"" );
$this->peg_c103 = "\\end";
$this->peg_c104 = array( "type" => "literal", "value" => "\\end", "description" => "\"\\\\end\"" );
$this->peg_c105 = "{matrix}";
$this->peg_c106 = array( "type" => "literal", "value" => "{matrix}", "description" => "\"{matrix}\"" );
$this->peg_c107 = "{pmatrix}";
$this->peg_c108 = array( "type" => "literal", "value" => "{pmatrix}", "description" => "\"{pmatrix}\"" );
$this->peg_c109 = "{bmatrix}";
$this->peg_c110 = array( "type" => "literal", "value" => "{bmatrix}", "description" => "\"{bmatrix}\"" );
$this->peg_c111 = "{Bmatrix}";
$this->peg_c112 = array( "type" => "literal", "value" => "{Bmatrix}", "description" => "\"{Bmatrix}\"" );
$this->peg_c113 = "{vmatrix}";
$this->peg_c114 = array( "type" => "literal", "value" => "{vmatrix}", "description" => "\"{vmatrix}\"" );
$this->peg_c115 = "{Vmatrix}";
$this->peg_c116 = array( "type" => "literal", "value" => "{Vmatrix}", "description" => "\"{Vmatrix}\"" );
$this->peg_c117 = "{array}";
$this->peg_c118 = array( "type" => "literal", "value" => "{array}", "description" => "\"{array}\"" );
$this->peg_c119 = "{align}";
$this->peg_c120 = array( "type" => "literal", "value" => "{align}", "description" => "\"{align}\"" );
$this->peg_c121 = "{aligned}";
$this->peg_c122 = array( "type" => "literal", "value" => "{aligned}", "description" => "\"{aligned}\"" );
$this->peg_c123 = "{alignat}";
$this->peg_c124 = array( "type" => "literal", "value" => "{alignat}", "description" => "\"{alignat}\"" );
$this->peg_c125 = "{alignedat}";
$this->peg_c126 = array( "type" => "literal", "value" => "{alignedat}", "description" => "\"{alignedat}\"" );
$this->peg_c127 = "{smallmatrix}";
$this->peg_c128 = array( "type" => "literal", "value" => "{smallmatrix}", "description" => "\"{smallmatrix}\"" );
$this->peg_c129 = "{cases}";
$this->peg_c130 = array( "type" => "literal", "value" => "{cases}", "description" => "\"{cases}\"" );
$this->peg_c131 = "named";
$this->peg_c132 = array( "type" => "literal", "value" => "named", "description" => "\"named\"" );
$this->peg_c133 = "gray";
$this->peg_c134 = array( "type" => "literal", "value" => "gray", "description" => "\"gray\"" );
$this->peg_c135 = "rgb";
$this->peg_c136 = array( "type" => "literal", "value" => "rgb", "description" => "\"rgb\"" );
$this->peg_c137 = "RGB";
$this->peg_c138 = array( "type" => "literal", "value" => "RGB", "description" => "\"RGB\"" );
$this->peg_c139 = "cmyk";
$this->peg_c140 = array( "type" => "literal", "value" => "cmyk", "description" => "\"cmyk\"" );
$this->peg_c141 = ",";
$this->peg_c142 = array( "type" => "literal", "value" => ",", "description" => "\",\"" );
$this->peg_c143 = "0";
$this->peg_c144 = array( "type" => "literal", "value" => "0", "description" => "\"0\"" );
$this->peg_c145 = "/^[1-9]/";
$this->peg_c146 = array( "type" => "class", "value" => "[1-9]", "description" => "[1-9]" );
$this->peg_c147 = "/^[01]/";
$this->peg_c148 = array( "type" => "class", "value" => "[01]", "description" => "[01]" );
$this->peg_c149 = "/^[+-.*']/";
$this->peg_c150 = array( "type" => "class", "value" => "[+-.*']", "description" => "[+-.*']" );
$this->peg_c151 = "=";
$this->peg_c152 = array( "type" => "literal", "value" => "=", "description" => "\"=\"" );
$this->peg_c153 = "#";
$this->peg_c154 = array( "type" => "literal", "value" => "#", "description" => "\"#\"" );
$this->peg_c155 = "~--";
$this->peg_c156 = array( "type" => "literal", "value" => "~--", "description" => "\"~--\"" );
$this->peg_c157 = "~-";
$this->peg_c158 = array( "type" => "literal", "value" => "~-", "description" => "\"~-\"" );
$this->peg_c159 = "~=";
$this->peg_c160 = array( "type" => "literal", "value" => "~=", "description" => "\"~=\"" );
$this->peg_c161 = "~";
$this->peg_c162 = array( "type" => "literal", "value" => "~", "description" => "\"~\"" );
$this->peg_c163 = "-~-";
$this->peg_c164 = array( "type" => "literal", "value" => "-~-", "description" => "\"-~-\"" );
$this->peg_c165 = "....";
$this->peg_c166 = array( "type" => "literal", "value" => "....", "description" => "\"....\"" );
$this->peg_c167 = "...";
$this->peg_c168 = array( "type" => "literal", "value" => "...", "description" => "\"...\"" );
$this->peg_c169 = "<-";
$this->peg_c170 = array( "type" => "literal", "value" => "<-", "description" => "\"<-\"" );
$this->peg_c171 = "->";
$this->peg_c172 = array( "type" => "literal", "value" => "->", "description" => "\"->\"" );
$this->peg_c173 = "1";
$this->peg_c174 = array( "type" => "literal", "value" => "1", "description" => "\"1\"" );
$this->peg_c175 = "2";
$this->peg_c176 = array( "type" => "literal", "value" => "2", "description" => "\"2\"" );
$this->peg_c177 = "3";
$this->peg_c178 = array( "type" => "literal", "value" => "3", "description" => "\"3\"" );
$this->peg_c179 = "{math}";
$this->peg_c180 = array( "type" => "literal", "value" => "{math}", "description" => "\"{math}\"" );
$this->peg_c181 = "\\}";
$this->peg_c182 = array( "type" => "literal", "value" => "\\}", "description" => "\"\\\\}\"" );
$this->peg_c183 = "/^[+-=#\\(\\).,;\\/*<>|@&'\\[\\]]/";
$this->peg_c184 = array( "type" => "class", "value" => "[+-=#().,;/*<>|@&'[]]", "description" => "[+-=#().,;/*<>|@&'[]]" );
$peg_startRuleFunctions = array( 'start' => array($this, "peg_parsestart") );
$peg_startRuleFunction = array($this, "peg_parsestart");
if (isset($options["startRule"])) {
if (!(isset($peg_startRuleFunctions[$options["startRule"]]))) {
throw new \Exception("Can't start parsing from rule \"" . $options["startRule"] . "\".");
}
$peg_startRuleFunction = $peg_startRuleFunctions[$options["startRule"]];
}
/* BEGIN initializer code */
$this->tu = TexUtil::getInstance();
# get reference of the options for usage in functions.
# get reference of the options for usage in functions.
$this->options = ParserUtil::createOptions($options);
/* END initializer code */
$peg_result = call_user_func($peg_startRuleFunction);
$this->peg_cache = array();
mb_regex_encoding($old_regex_encoding);
if ($peg_result !== $this->peg_FAILED && $this->peg_currPos === $this->input_length) {
$this->cleanup_state(); // Free up memory
return $peg_result;
} else {
if ($peg_result !== $this->peg_FAILED && $this->peg_currPos < $this->input_length) {
$this->peg_fail(array("type" => "end", "description" => "end of input" ));
}
$exception = $this->peg_buildException(null, $this->peg_maxFailExpected, $this->peg_maxFailPos);
$this->cleanup_state(); // Free up memory
throw $exception;
}
}
};

File Metadata

Mime Type
text/x-php
Expires
Wed, Aug 19, 14:37 (3 w, 4 d ago)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
c1/27/0562218e4d92124532eca3316db2
Default Alt Text
Parser.php (358 KB)

Event Timeline