|
Parser.java
|
// *******************************************************************
// This file has been automatically generated from the grammar in file
// RCL.grm by ilog.language.syntax.ParserGenerator on
// Tue May 23 07:36:30 CEST 2006 --- !!! PLEASE DO NO EDIT !!!
// *******************************************************************
package ilog.rcl;
import java.io.Reader;
import java.io.StringReader;
import java.io.IOException;
import ilog.language.syntax.*;
import java.io.PrintStream;
import ilog.language.tools.Misc;
/* ************ */
/* PARSER CLASS */
/* ************ */
class Parser extends StaticParser
{
/* ************************ */
/* PARSER CLASS CONSTRUCTOR */
/* ************************ */
public Parser(Tokenizer t)
{
input = t;
}
/* ************************* */
/* PARSER CLASS DECLARATIONS */
/* ************************* */
long start;
boolean quiet = true;
PrintStream out = System.out;
void setStart ()
{
start = System.currentTimeMillis();
}
void setQuiet (boolean flag)
{
quiet = flag;
}
void setOutputStream (PrintStream stream)
{
out = stream;
}
void showXml ()
{
out.println("*** Total parsing time = "
+(System.currentTimeMillis()-start)
+" ms");
if (!quiet)
{
errorManager().tallyErrors();
if (Misc.askYesNo("*** Do you want to see the XML serialization"))
{
out.println();
currentNode().xmlify();
out.println();
}
}
}
/* ********************** */
/* STATIC INITIALIZATIONS */
/* ********************** */
static
{
initializeTerminals();
initializeNonTerminals();
initializeRules();
initializeParserActions();
initializeParserStates();
initializeActionTables();
initializeGotoTables();
initializeStateTables();
}
/* ********************* */
/* PARTIAL PARSE METHODS */
/* ********************* */
final static ParseNode $RCL_SWITCH$ = new ParseNode(terminals[3]);
public final void parseRCL (String s) throws IOException
{
parseRCL(new StringReader(s));
}
public final void parseRCL (Reader r) throws IOException
{
input.setReader(r);
errorManager().recoverFromErrors(false);
setSwitchToken($RCL_SWITCH$);
parse();
}
/* **************** */
/* SEMANTIC ACTIONS */
/* **************** */
protected ParseNode semanticAction(ParserRule $rule$) throws IOException
{
ParseNode $head$ = new ParseNode($rule$.head);
switch($rule$.index())
{
case 2:
{
$head$ = $head$.copy(node($rule$,2));
break;
}
case 3:
{
showXml();
break;
}
case 0: case 1: case 23: case 27:
break;
default:
$head$ = $head$.copy(node($rule$,1));
break;
}
return $head$;
}
/* **************** */
/* TERMINAL SYMBOLS */
/* **************** */
static void initializeTerminals ()
{
terminals = new ParserTerminal[18];
newTerminal(0,"$EMPTY$",1,2);
newTerminal(1,"$E_O_I$",1,2);
newTerminal(2,"error",1,2);
newTerminal(3,"$RCL_switch$",1,2);
newTerminal(4,"Data",1,2);
newTerminal(5,"Ind",1,2);
newTerminal(6,"Var",1,2);
newTerminal(7,"Rel",1,2);
newTerminal(8,"Fun",1,2);
newTerminal(9,"And",1,2);
newTerminal(10,"(",1,2);
newTerminal(11,")",1,2);
newTerminal(12,"Or",1,2);
newTerminal(13,"Exists",1,2);
newTerminal(14,"Forall",1,2);
newTerminal(15,"Neg",1,2);
newTerminal(16,"Naf",1,2);
newTerminal(17,"=",1,2);
}
/* ******************** */
/* NON-TERMINAL SYMBOLS */
/* ******************** */
static void initializeNonTerminals ()
{
nonterminals = new ParserNonTerminal[16];
newNonTerminal(0,"$START$");
newNonTerminal(1,"$ROOTS$");
newNonTerminal(2,"RCL");
newNonTerminal(3,"CONDIT");
newNonTerminal(4,"CONJ");
newNonTerminal(5,"DISJ");
newNonTerminal(6,"QUANTIF");
newNonTerminal(7,"LITFORM");
newNonTerminal(8,"CONDIT_star");
newNonTerminal(9,"Var_plus");
newNonTerminal(10,"Atom");
newNonTerminal(11,"TERM_star");
newNonTerminal(12,"TERM");
newNonTerminal(13,"Expr");
newNonTerminal(14,"CONDIT_plus");
newNonTerminal(15,"TERM_plus");
}
/* **************** */
/* PRODUCTION RULES */
/* **************** */
static void initializeRules ()
{
rules = new ParserRule[33];
rules[0] = new ParserRule(0,1,0,1,2);
rules[1] = new ParserRule(1,1,1,1,2);
rules[2] = new ParserRule(1,2,2,1,2);
rules[3] = new ParserRule(2,1,3,1,2);
rules[4] = new ParserRule(3,1,4,1,2);
rules[5] = new ParserRule(3,1,5,1,2);
rules[6] = new ParserRule(3,1,6,1,2);
rules[7] = new ParserRule(3,1,7,1,2);
rules[8] = new ParserRule(4,4,8,1,2).xmlInfo("And 3");
rules[9] = new ParserRule(5,4,9,1,2).xmlInfo("Or 3");
rules[10] = new ParserRule(6,5,10,1,2).xmlInfo("Exists 2 4");
rules[11] = new ParserRule(6,5,11,1,2).xmlInfo("Forall 2 4");
rules[12] = new ParserRule(7,1,12,1,2);
rules[13] = new ParserRule(7,2,13,1,2).xmlInfo("Neg 2");
rules[14] = new ParserRule(7,2,14,1,2).xmlInfo("Naf 2");
rules[15] = new ParserRule(7,3,15,1,2).xmlInfo("NafNeg 3");
rules[16] = new ParserRule(10,4,16,1,2).xmlInfo("Atom 1 3");
rules[17] = new ParserRule(10,3,17,1,2).xmlInfo("Equal 1 3");
rules[18] = new ParserRule(12,1,18,1,2);
rules[19] = new ParserRule(12,1,19,1,2);
rules[20] = new ParserRule(12,1,20,1,2);
rules[21] = new ParserRule(12,1,21,1,2);
rules[22] = new ParserRule(13,4,22,1,2).xmlInfo("Expr 1 3");
rules[23] = new ParserRule(8,0,23,1,2);
rules[24] = new ParserRule(8,1,24,1,2);
rules[25] = new ParserRule(14,1,25,1,2);
rules[26] = new ParserRule(14,2,26,1,2);
rules[27] = new ParserRule(11,0,27,1,2);
rules[28] = new ParserRule(11,1,28,1,2);
rules[29] = new ParserRule(15,1,29,1,2);
rules[30] = new ParserRule(15,2,30,1,2);
rules[31] = new ParserRule(9,1,31,1,2);
rules[32] = new ParserRule(9,2,32,1,2);
}
/* ************** */
/* PARSER ACTIONS */
/* ************** */
static void initializeParserActions ()
{
actions = new ParserAction[428];
newAction(0,5,0);
newAction(1,2,0);
newAction(2,0,3);
newAction(3,0,9);
newAction(4,0,10);
newAction(5,0,11);
newAction(6,0,12);
newAction(7,0,14);
newAction(8,0,15);
newAction(9,0,16);
newAction(10,0,18);
newAction(11,0,19);
newAction(12,0,20);
newAction(13,0,22);
newAction(14,1,1);
newAction(15,0,9);
newAction(16,0,10);
newAction(17,0,11);
newAction(18,0,12);
newAction(19,0,14);
newAction(20,0,15);
newAction(21,0,16);
newAction(22,0,18);
newAction(23,0,19);
newAction(24,0,20);
newAction(25,0,22);
newAction(26,1,3);
newAction(27,1,4);
newAction(28,1,4);
newAction(29,1,4);
newAction(30,1,4);
newAction(31,1,4);
newAction(32,1,4);
newAction(33,1,4);
newAction(34,1,4);
newAction(35,1,4);
newAction(36,1,4);
newAction(37,1,4);
newAction(38,1,4);
newAction(39,1,4);
newAction(40,1,5);
newAction(41,1,5);
newAction(42,1,5);
newAction(43,1,5);
newAction(44,1,5);
newAction(45,1,5);
newAction(46,1,5);
newAction(47,1,5);
newAction(48,1,5);
newAction(49,1,5);
newAction(50,1,5);
newAction(51,1,5);
newAction(52,1,5);
newAction(53,1,6);
newAction(54,1,6);
newAction(55,1,6);
newAction(56,1,6);
newAction(57,1,6);
newAction(58,1,6);
newAction(59,1,6);
newAction(60,1,6);
newAction(61,1,6);
newAction(62,1,6);
newAction(63,1,6);
newAction(64,1,6);
newAction(65,1,6);
newAction(66,1,7);
newAction(67,1,7);
newAction(68,1,7);
newAction(69,1,7);
newAction(70,1,7);
newAction(71,1,7);
newAction(72,1,7);
newAction(73,1,7);
newAction(74,1,7);
newAction(75,1,7);
newAction(76,1,7);
newAction(77,1,7);
newAction(78,1,7);
newAction(79,0,54);
newAction(80,0,48);
newAction(81,0,39);
newAction(82,0,39);
newAction(83,1,12);
newAction(84,1,12);
newAction(85,1,12);
newAction(86,1,12);
newAction(87,1,12);
newAction(88,1,12);
newAction(89,1,12);
newAction(90,1,12);
newAction(91,1,12);
newAction(92,1,12);
newAction(93,1,12);
newAction(94,1,12);
newAction(95,1,12);
newAction(96,0,16);
newAction(97,0,18);
newAction(98,0,19);
newAction(99,0,20);
newAction(100,0,22);
newAction(101,0,35);
newAction(102,0,16);
newAction(103,0,18);
newAction(104,0,19);
newAction(105,0,20);
newAction(106,0,22);
newAction(107,0,31);
newAction(108,0,29);
newAction(109,1,18);
newAction(110,1,18);
newAction(111,1,18);
newAction(112,1,18);
newAction(113,1,18);
newAction(114,1,18);
newAction(115,1,18);
newAction(116,1,18);
newAction(117,1,18);
newAction(118,1,18);
newAction(119,1,18);
newAction(120,1,18);
newAction(121,1,18);
newAction(122,1,18);
newAction(123,1,19);
newAction(124,1,19);
newAction(125,1,19);
newAction(126,1,19);
newAction(127,1,19);
newAction(128,1,19);
newAction(129,1,19);
newAction(130,1,19);
newAction(131,1,19);
newAction(132,1,19);
newAction(133,1,19);
newAction(134,1,19);
newAction(135,1,19);
newAction(136,1,19);
newAction(137,1,20);
newAction(138,1,20);
newAction(139,1,20);
newAction(140,1,20);
newAction(141,1,20);
newAction(142,1,20);
newAction(143,1,20);
newAction(144,1,20);
newAction(145,1,20);
newAction(146,1,20);
newAction(147,1,20);
newAction(148,1,20);
newAction(149,1,20);
newAction(150,1,20);
newAction(151,1,21);
newAction(152,1,21);
newAction(153,1,21);
newAction(154,1,21);
newAction(155,1,21);
newAction(156,1,21);
newAction(157,1,21);
newAction(158,1,21);
newAction(159,1,21);
newAction(160,1,21);
newAction(161,1,21);
newAction(162,1,21);
newAction(163,1,21);
newAction(164,1,21);
newAction(165,0,23);
newAction(166,1,27);
newAction(167,0,18);
newAction(168,0,19);
newAction(169,0,20);
newAction(170,0,22);
newAction(171,0,28);
newAction(172,1,28);
newAction(173,0,18);
newAction(174,0,19);
newAction(175,0,20);
newAction(176,0,22);
newAction(177,1,29);
newAction(178,1,29);
newAction(179,1,29);
newAction(180,1,29);
newAction(181,1,29);
newAction(182,1,30);
newAction(183,1,30);
newAction(184,1,30);
newAction(185,1,30);
newAction(186,1,30);
newAction(187,1,22);
newAction(188,1,22);
newAction(189,1,22);
newAction(190,1,22);
newAction(191,1,22);
newAction(192,1,22);
newAction(193,1,22);
newAction(194,1,22);
newAction(195,1,22);
newAction(196,1,22);
newAction(197,1,22);
newAction(198,1,22);
newAction(199,1,22);
newAction(200,1,22);
newAction(201,0,18);
newAction(202,0,19);
newAction(203,0,20);
newAction(204,0,22);
newAction(205,1,17);
newAction(206,1,17);
newAction(207,1,17);
newAction(208,1,17);
newAction(209,1,17);
newAction(210,1,17);
newAction(211,1,17);
newAction(212,1,17);
newAction(213,1,17);
newAction(214,1,17);
newAction(215,1,17);
newAction(216,1,17);
newAction(217,1,17);
newAction(218,1,27);
newAction(219,0,18);
newAction(220,0,19);
newAction(221,0,20);
newAction(222,0,22);
newAction(223,0,33);
newAction(224,1,16);
newAction(225,1,16);
newAction(226,1,16);
newAction(227,1,16);
newAction(228,1,16);
newAction(229,1,16);
newAction(230,1,16);
newAction(231,1,16);
newAction(232,1,16);
newAction(233,1,16);
newAction(234,1,16);
newAction(235,1,16);
newAction(236,1,16);
newAction(237,1,14);
newAction(238,1,14);
newAction(239,1,14);
newAction(240,1,14);
newAction(241,1,14);
newAction(242,1,14);
newAction(243,1,14);
newAction(244,1,14);
newAction(245,1,14);
newAction(246,1,14);
newAction(247,1,14);
newAction(248,1,14);
newAction(249,1,14);
newAction(250,0,16);
newAction(251,0,18);
newAction(252,0,19);
newAction(253,0,20);
newAction(254,0,22);
newAction(255,1,15);
newAction(256,1,15);
newAction(257,1,15);
newAction(258,1,15);
newAction(259,1,15);
newAction(260,1,15);
newAction(261,1,15);
newAction(262,1,15);
newAction(263,1,15);
newAction(264,1,15);
newAction(265,1,15);
newAction(266,1,15);
newAction(267,1,15);
newAction(268,1,13);
newAction(269,1,13);
newAction(270,1,13);
newAction(271,1,13);
newAction(272,1,13);
newAction(273,1,13);
newAction(274,1,13);
newAction(275,1,13);
newAction(276,1,13);
newAction(277,1,13);
newAction(278,1,13);
newAction(279,1,13);
newAction(280,1,13);
newAction(281,0,40);
newAction(282,0,41);
newAction(283,1,31);
newAction(284,1,31);
newAction(285,0,9);
newAction(286,0,10);
newAction(287,0,11);
newAction(288,0,12);
newAction(289,0,14);
newAction(290,0,15);
newAction(291,0,16);
newAction(292,0,18);
newAction(293,0,19);
newAction(294,0,20);
newAction(295,0,22);
newAction(296,1,32);
newAction(297,1,32);
newAction(298,0,43);
newAction(299,1,11);
newAction(300,1,11);
newAction(301,1,11);
newAction(302,1,11);
newAction(303,1,11);
newAction(304,1,11);
newAction(305,1,11);
newAction(306,1,11);
newAction(307,1,11);
newAction(308,1,11);
newAction(309,1,11);
newAction(310,1,11);
newAction(311,1,11);
newAction(312,0,45);
newAction(313,0,41);
newAction(314,0,9);
newAction(315,0,10);
newAction(316,0,11);
newAction(317,0,12);
newAction(318,0,14);
newAction(319,0,15);
newAction(320,0,16);
newAction(321,0,18);
newAction(322,0,19);
newAction(323,0,20);
newAction(324,0,22);
newAction(325,0,47);
newAction(326,1,10);
newAction(327,1,10);
newAction(328,1,10);
newAction(329,1,10);
newAction(330,1,10);
newAction(331,1,10);
newAction(332,1,10);
newAction(333,1,10);
newAction(334,1,10);
newAction(335,1,10);
newAction(336,1,10);
newAction(337,1,10);
newAction(338,1,10);
newAction(339,0,9);
newAction(340,0,10);
newAction(341,0,11);
newAction(342,0,12);
newAction(343,0,14);
newAction(344,0,15);
newAction(345,1,23);
newAction(346,0,16);
newAction(347,0,18);
newAction(348,0,19);
newAction(349,0,20);
newAction(350,0,22);
newAction(351,0,53);
newAction(352,1,24);
newAction(353,0,9);
newAction(354,0,10);
newAction(355,0,11);
newAction(356,0,12);
newAction(357,0,14);
newAction(358,0,15);
newAction(359,0,16);
newAction(360,0,18);
newAction(361,0,19);
newAction(362,0,20);
newAction(363,0,22);
newAction(364,1,25);
newAction(365,1,25);
newAction(366,1,25);
newAction(367,1,25);
newAction(368,1,25);
newAction(369,1,25);
newAction(370,1,25);
newAction(371,1,25);
newAction(372,1,25);
newAction(373,1,25);
newAction(374,1,25);
newAction(375,1,25);
newAction(376,1,26);
newAction(377,1,26);
newAction(378,1,26);
newAction(379,1,26);
newAction(380,1,26);
newAction(381,1,26);
newAction(382,1,26);
newAction(383,1,26);
newAction(384,1,26);
newAction(385,1,26);
newAction(386,1,26);
newAction(387,1,26);
newAction(388,1,9);
newAction(389,1,9);
newAction(390,1,9);
newAction(391,1,9);
newAction(392,1,9);
newAction(393,1,9);
newAction(394,1,9);
newAction(395,1,9);
newAction(396,1,9);
newAction(397,1,9);
newAction(398,1,9);
newAction(399,1,9);
newAction(400,1,9);
newAction(401,0,9);
newAction(402,0,10);
newAction(403,0,11);
newAction(404,0,12);
newAction(405,0,14);
newAction(406,0,15);
newAction(407,1,23);
newAction(408,0,16);
newAction(409,0,18);
newAction(410,0,19);
newAction(411,0,20);
newAction(412,0,22);
newAction(413,0,56);
newAction(414,1,8);
newAction(415,1,8);
newAction(416,1,8);
newAction(417,1,8);
newAction(418,1,8);
newAction(419,1,8);
newAction(420,1,8);
newAction(421,1,8);
newAction(422,1,8);
newAction(423,1,8);
newAction(424,1,8);
newAction(425,1,8);
newAction(426,1,8);
newAction(427,1,2);
}
/* ************* */
/* PARSER STATES */
/* ************* */
static void initializeParserStates ()
{
states = new ParserState[58];
for (int i=0; i<58; i++) newState(i);
}
/* ************* */
/* ACTION TABLES */
/* ************* */
static void initializeActionTables ()
{
newActionTables(52);
newActionTable(0,12);
setAction(0,15,7);
setAction(0,4,10);
setAction(0,13,5);
setAction(0,8,13);
setAction(0,9,3);
setAction(0,6,12);
setAction(0,16,8);
setAction(0,14,6);
setAction(0,3,2);
setAction(0,7,9);
setAction(0,5,11);
setAction(0,12,4);
newActionTable(1,1);
setAction(1,1,1);
newActionTable(2,1);
setAction(2,1,14);
newActionTable(3,11);
setAction(3,15,19);
setAction(3,4,22);
setAction(3,13,17);
setAction(3,8,25);
setAction(3,9,15);
setAction(3,6,24);
setAction(3,16,20);
setAction(3,14,18);
setAction(3,7,21);
setAction(3,5,23);
setAction(3,12,16);
newActionTable(4,1);
setAction(4,1,26);
newActionTable(5,13);
setAction(5,15,38);
setAction(5,4,28);
setAction(5,8,32);
setAction(5,11,34);
setAction(5,16,39);
setAction(5,7,31);
setAction(5,12,35);
setAction(5,13,36);
setAction(5,9,33);
setAction(5,6,30);
setAction(5,1,27);
setAction(5,14,37);
setAction(5,5,29);
newActionTable(6,13);
setAction(6,15,51);
setAction(6,4,41);
setAction(6,8,45);
setAction(6,11,47);
setAction(6,16,52);
setAction(6,7,44);
setAction(6,12,48);
setAction(6,13,49);
setAction(6,9,46);
setAction(6,6,43);
setAction(6,1,40);
setAction(6,14,50);
setAction(6,5,42);
newActionTable(7,13);
setAction(7,15,64);
setAction(7,4,54);
setAction(7,8,58);
setAction(7,11,60);
setAction(7,16,65);
setAction(7,7,57);
setAction(7,12,61);
setAction(7,13,62);
setAction(7,9,59);
setAction(7,6,56);
setAction(7,1,53);
setAction(7,14,63);
setAction(7,5,55);
newActionTable(8,13);
setAction(8,15,77);
setAction(8,4,67);
setAction(8,8,71);
setAction(8,11,73);
setAction(8,16,78);
setAction(8,7,70);
setAction(8,12,74);
setAction(8,13,75);
setAction(8,9,72);
setAction(8,6,69);
setAction(8,1,66);
setAction(8,14,76);
setAction(8,5,68);
newActionTable(9,1);
setAction(9,10,79);
newActionTable(10,1);
setAction(10,10,80);
newActionTable(11,1);
setAction(11,6,81);
newActionTable(12,13);
setAction(12,15,94);
setAction(12,4,84);
setAction(12,8,88);
setAction(12,11,90);
setAction(12,16,95);
setAction(12,7,87);
setAction(12,12,91);
setAction(12,13,92);
setAction(12,9,89);
setAction(12,6,86);
setAction(12,1,83);
setAction(12,14,93);
setAction(12,5,85);
newActionTable(13,5);
setAction(13,4,97);
setAction(13,8,100);
setAction(13,6,99);
setAction(13,7,96);
setAction(13,5,98);
newActionTable(14,6);
setAction(14,15,101);
setAction(14,4,103);
setAction(14,8,106);
setAction(14,6,105);
setAction(14,7,102);
setAction(14,5,104);
newActionTable(15,1);
setAction(15,10,107);
newActionTable(16,1);
setAction(16,17,108);
newActionTable(17,14);
setAction(17,15,120);
setAction(17,4,110);
setAction(17,8,114);
setAction(17,11,116);
setAction(17,16,121);
setAction(17,7,113);
setAction(17,12,117);
setAction(17,17,122);
setAction(17,13,118);
setAction(17,9,115);
setAction(17,6,112);
setAction(17,1,109);
setAction(17,14,119);
setAction(17,5,111);
newActionTable(18,14);
setAction(18,15,134);
setAction(18,4,124);
setAction(18,8,128);
setAction(18,11,130);
setAction(18,16,135);
setAction(18,7,127);
setAction(18,12,131);
setAction(18,17,136);
setAction(18,13,132);
setAction(18,9,129);
setAction(18,6,126);
setAction(18,1,123);
setAction(18,14,133);
setAction(18,5,125);
newActionTable(19,14);
setAction(19,15,148);
setAction(19,4,138);
setAction(19,8,142);
setAction(19,11,144);
setAction(19,16,149);
setAction(19,7,141);
setAction(19,12,145);
setAction(19,17,150);
setAction(19,13,146);
setAction(19,9,143);
setAction(19,6,140);
setAction(19,1,137);
setAction(19,14,147);
setAction(19,5,139);
newActionTable(20,14);
setAction(20,15,162);
setAction(20,4,152);
setAction(20,8,156);
setAction(20,11,158);
setAction(20,16,163);
setAction(20,7,155);
setAction(20,12,159);
setAction(20,17,164);
setAction(20,13,160);
setAction(20,9,157);
setAction(20,6,154);
setAction(20,1,151);
setAction(20,14,161);
setAction(20,5,153);
newActionTable(21,1);
setAction(21,10,165);
newActionTable(22,5);
setAction(22,4,167);
setAction(22,8,170);
setAction(22,6,169);
setAction(22,11,166);
setAction(22,5,168);
newActionTable(23,1);
setAction(23,11,171);
newActionTable(24,5);
setAction(24,4,173);
setAction(24,8,176);
setAction(24,6,175);
setAction(24,11,172);
setAction(24,5,174);
newActionTable(25,5);
setAction(25,4,177);
setAction(25,8,180);
setAction(25,11,181);
setAction(25,6,179);
setAction(25,5,178);
newActionTable(26,5);
setAction(26,4,182);
setAction(26,8,185);
setAction(26,11,186);
setAction(26,6,184);
setAction(26,5,183);
newActionTable(27,14);
setAction(27,15,198);
setAction(27,4,188);
setAction(27,8,192);
setAction(27,11,194);
setAction(27,16,199);
setAction(27,7,191);
setAction(27,12,195);
setAction(27,17,200);
setAction(27,13,196);
setAction(27,9,193);
setAction(27,6,190);
setAction(27,1,187);
setAction(27,14,197);
setAction(27,5,189);
newActionTable(28,4);
setAction(28,4,201);
setAction(28,8,204);
setAction(28,6,203);
setAction(28,5,202);
newActionTable(29,13);
setAction(29,15,216);
setAction(29,4,206);
setAction(29,8,210);
setAction(29,11,212);
setAction(29,16,217);
setAction(29,7,209);
setAction(29,12,213);
setAction(29,13,214);
setAction(29,9,211);
setAction(29,6,208);
setAction(29,1,205);
setAction(29,14,215);
setAction(29,5,207);
newActionTable(30,1);
setAction(30,11,223);
newActionTable(31,13);
setAction(31,15,235);
setAction(31,4,225);
setAction(31,8,229);
setAction(31,11,231);
setAction(31,16,236);
setAction(31,7,228);
setAction(31,12,232);
setAction(31,13,233);
setAction(31,9,230);
setAction(31,6,227);
setAction(31,1,224);
setAction(31,14,234);
setAction(31,5,226);
newActionTable(32,13);
setAction(32,15,248);
setAction(32,4,238);
setAction(32,8,242);
setAction(32,11,244);
setAction(32,16,249);
setAction(32,7,241);
setAction(32,12,245);
setAction(32,13,246);
setAction(32,9,243);
setAction(32,6,240);
setAction(32,1,237);
setAction(32,14,247);
setAction(32,5,239);
newActionTable(33,13);
setAction(33,15,266);
setAction(33,4,256);
setAction(33,8,260);
setAction(33,11,262);
setAction(33,16,267);
setAction(33,7,259);
setAction(33,12,263);
setAction(33,13,264);
setAction(33,9,261);
setAction(33,6,258);
setAction(33,1,255);
setAction(33,14,265);
setAction(33,5,257);
newActionTable(34,13);
setAction(34,15,279);
setAction(34,4,269);
setAction(34,8,273);
setAction(34,11,275);
setAction(34,16,280);
setAction(34,7,272);
setAction(34,12,276);
setAction(34,13,277);
setAction(34,9,274);
setAction(34,6,271);
setAction(34,1,268);
setAction(34,14,278);
setAction(34,5,270);
newActionTable(35,2);
setAction(35,6,282);
setAction(35,10,281);
newActionTable(36,2);
setAction(36,6,283);
setAction(36,10,284);
newActionTable(37,2);
setAction(37,6,296);
setAction(37,10,297);
newActionTable(38,1);
setAction(38,11,298);
newActionTable(39,13);
setAction(39,15,310);
setAction(39,4,300);
setAction(39,8,304);
setAction(39,11,306);
setAction(39,16,311);
setAction(39,7,303);
setAction(39,12,307);
setAction(39,13,308);
setAction(39,9,305);
setAction(39,6,302);
setAction(39,1,299);
setAction(39,14,309);
setAction(39,5,301);
newActionTable(40,2);
setAction(40,6,313);
setAction(40,10,312);
newActionTable(41,1);
setAction(41,11,325);
newActionTable(42,13);
setAction(42,15,337);
setAction(42,4,327);
setAction(42,8,331);
setAction(42,11,333);
setAction(42,16,338);
setAction(42,7,330);
setAction(42,12,334);
setAction(42,13,335);
setAction(42,9,332);
setAction(42,6,329);
setAction(42,1,326);
setAction(42,14,336);
setAction(42,5,328);
newActionTable(43,12);
setAction(43,15,343);
setAction(43,4,347);
setAction(43,13,341);
setAction(43,8,350);
setAction(43,9,339);
setAction(43,6,349);
setAction(43,11,345);
setAction(43,16,344);
setAction(43,14,342);
setAction(43,7,346);
setAction(43,5,348);
setAction(43,12,340);
newActionTable(44,1);
setAction(44,11,351);
newActionTable(45,12);
setAction(45,15,357);
setAction(45,4,360);
setAction(45,13,355);
setAction(45,8,363);
setAction(45,9,353);
setAction(45,6,362);
setAction(45,11,352);
setAction(45,16,358);
setAction(45,14,356);
setAction(45,7,359);
setAction(45,5,361);
setAction(45,12,354);
newActionTable(46,12);
setAction(46,15,374);
setAction(46,13,372);
setAction(46,4,364);
setAction(46,9,369);
setAction(46,8,368);
setAction(46,11,370);
setAction(46,6,366);
setAction(46,16,375);
setAction(46,14,373);
setAction(46,7,367);
setAction(46,12,371);
setAction(46,5,365);
newActionTable(47,12);
setAction(47,15,386);
setAction(47,13,384);
setAction(47,4,376);
setAction(47,9,381);
setAction(47,8,380);
setAction(47,11,382);
setAction(47,6,378);
setAction(47,16,387);
setAction(47,14,385);
setAction(47,7,379);
setAction(47,12,383);
setAction(47,5,377);
newActionTable(48,13);
setAction(48,15,399);
setAction(48,4,389);
setAction(48,8,393);
setAction(48,11,395);
setAction(48,16,400);
setAction(48,7,392);
setAction(48,12,396);
setAction(48,13,397);
setAction(48,9,394);
setAction(48,6,391);
setAction(48,1,388);
setAction(48,14,398);
setAction(48,5,390);
newActionTable(49,1);
setAction(49,11,413);
newActionTable(50,13);
setAction(50,15,425);
setAction(50,4,415);
setAction(50,8,419);
setAction(50,11,421);
setAction(50,16,426);
setAction(50,7,418);
setAction(50,12,422);
setAction(50,13,423);
setAction(50,9,420);
setAction(50,6,417);
setAction(50,1,414);
setAction(50,14,424);
setAction(50,5,416);
newActionTable(51,1);
setAction(51,1,427);
}
/* *********** */
/* GOTO TABLES */
/* *********** */
static void initializeGotoTables ()
{
newGotoTables(17);
newGotoTable(0,10);
setGoto(0,2,2);
setGoto(0,13,21);
setGoto(0,4,5);
setGoto(0,6,7);
setGoto(0,1,1);
setGoto(0,3,4);
setGoto(0,10,13);
setGoto(0,7,8);
setGoto(0,12,17);
setGoto(0,5,6);
newGotoTable(1,0);
newGotoTable(2,9);
setGoto(2,2,57);
setGoto(2,13,21);
setGoto(2,4,5);
setGoto(2,6,7);
setGoto(2,3,4);
setGoto(2,10,13);
setGoto(2,7,8);
setGoto(2,12,17);
setGoto(2,5,6);
newGotoTable(3,1);
setGoto(3,9,44);
newGotoTable(4,1);
setGoto(4,9,38);
newGotoTable(5,3);
setGoto(5,13,21);
setGoto(5,10,37);
setGoto(5,12,17);
newGotoTable(6,3);
setGoto(6,13,21);
setGoto(6,10,34);
setGoto(6,12,17);
newGotoTable(7,4);
setGoto(7,15,25);
setGoto(7,13,21);
setGoto(7,11,24);
setGoto(7,12,26);
newGotoTable(8,2);
setGoto(8,13,21);
setGoto(8,12,27);
newGotoTable(9,2);
setGoto(9,13,21);
setGoto(9,12,30);
newGotoTable(10,4);
setGoto(10,15,25);
setGoto(10,13,21);
setGoto(10,11,32);
setGoto(10,12,26);
newGotoTable(11,3);
setGoto(11,13,21);
setGoto(11,10,36);
setGoto(11,12,17);
newGotoTable(12,8);
setGoto(12,13,21);
setGoto(12,4,5);
setGoto(12,6,7);
setGoto(12,3,42);
setGoto(12,10,13);
setGoto(12,7,8);
setGoto(12,12,17);
setGoto(12,5,6);
newGotoTable(13,8);
setGoto(13,13,21);
setGoto(13,4,5);
setGoto(13,6,7);
setGoto(13,3,46);
setGoto(13,10,13);
setGoto(13,7,8);
setGoto(13,12,17);
setGoto(13,5,6);
newGotoTable(14,10);
setGoto(14,13,21);
setGoto(14,4,5);
setGoto(14,8,49);
setGoto(14,6,7);
setGoto(14,3,51);
setGoto(14,14,50);
setGoto(14,10,13);
setGoto(14,7,8);
setGoto(14,12,17);
setGoto(14,5,6);
newGotoTable(15,8);
setGoto(15,13,21);
setGoto(15,4,5);
setGoto(15,6,7);
setGoto(15,3,52);
setGoto(15,10,13);
setGoto(15,7,8);
setGoto(15,12,17);
setGoto(15,5,6);
newGotoTable(16,10);
setGoto(16,13,21);
setGoto(16,4,5);
setGoto(16,8,55);
setGoto(16,6,7);
setGoto(16,3,51);
setGoto(16,14,50);
setGoto(16,10,13);
setGoto(16,7,8);
setGoto(16,12,17);
setGoto(16,5,6);
}
/* ************ */
/* STATE TABLES */
/* ************ */
static void initializeStateTables ()
{
setTables(0,0,0);
setTables(1,1,1);
setTables(2,2,1);
setTables(3,3,2);
setTables(4,4,1);
setTables(5,5,1);
setTables(6,6,1);
setTables(7,7,1);
setTables(8,8,1);
setTables(9,9,1);
setTables(10,10,1);
setTables(11,11,3);
setTables(12,11,4);
setTables(13,12,1);
setTables(14,13,5);
setTables(15,14,6);
setTables(16,15,1);
setTables(17,16,1);
setTables(18,17,1);
setTables(19,18,1);
setTables(20,19,1);
setTables(21,20,1);
setTables(22,21,1);
setTables(23,22,7);
setTables(24,23,1);
setTables(25,24,8);
setTables(26,25,1);
setTables(27,26,1);
setTables(28,27,1);
setTables(29,28,9);
setTables(30,29,1);
setTables(31,22,10);
setTables(32,30,1);
setTables(33,31,1);
setTables(34,32,1);
setTables(35,13,11);
setTables(36,33,1);
setTables(37,34,1);
setTables(38,35,1);
setTables(39,36,1);
setTables(40,3,12);
setTables(41,37,1);
setTables(42,38,1);
setTables(43,39,1);
setTables(44,40,1);
setTables(45,3,13);
setTables(46,41,1);
setTables(47,42,1);
setTables(48,43,14);
setTables(49,44,1);
setTables(50,45,15);
setTables(51,46,1);
setTables(52,47,1);
setTables(53,48,1);
setTables(54,43,16);
setTables(55,49,1);
setTables(56,50,1);
setTables(57,51,1);
}
}
This file was generated on Tue May 23 07:36:35 CEST 2006 from file Parser.java
by the ilog.language.tools.Hilite Java tool written by Hassan Aït-Kaci