// $Id: javadcl.h,v 1.8 1999/03/08 18:04:50 shields Exp $ copyright notice #ifndef javadcl_INCLUDED #define javadcl_INCLUDED #define CLASS_HEADER javaprs_table:: const unsigned char CLASS_HEADER rhs[] = {0, 1,2,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,2,2, 1,1,1,1,1,3,3,1,2,1,2,4,1,1,3, 5,1,1,1,1,2,1,1,1,1,1,1,1,1,1, 1,1,6,2,2,1,3,3,1,2,1,1,1,2,1, 1,1,1,1,4,1,3,1,3,2,1,1,3,4,4, 5,1,3,2,3,2,1,3,1,1,3,5,4,1,4, 5,5,7,7,7,5,2,3,1,2,1,1,1,1,1, 1,2,3,3,4,1,3,3,1,2,1,1,1,2,2, 3,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,3,3,2,1,1,1, 1,1,1,1,5,7,7,5,2,3,3,4,1,2,2, 1,2,3,2,5,5,7,9,9,1,1,1,1,3,2, 3,2,3,3,3,5,3,4,1,2,5,2,1,1,1, 1,3,1,1,3,3,3,1,1,6,8,8,1,3,4, 4,3,1,2,3,2,3,3,3,5,4,6,6,8,4, 4,1,1,1,1,2,2,1,1,2,2,1,2,2,1, 2,2,1,5,4,5,1,3,3,3,1,3,3,1,3, 3,3,1,3,3,3,3,3,1,3,3,1,3,1,3, 1,3,1,3,1,3,1,5,1,1,3,1,1,1,1, 1,1,1,1,1,1,1,1,1,1,1,1,1,0,1, 0,1,0,1,0,1,0,1,0,1,0,1,0,1,0, 1,0,1,0,1,0,1,0,1,0,1,0,1,0,1, 0,1,0,1,0,1,0,1,0,0 }; const signed short CLASS_HEADER check_table[] = { -6,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-244,-39,-53,0, 0,-48,0,0,0,0,0,0,0,0, 0,0,0,-2,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,-11,0,0,-164,0, 0,0,0,0,-160,-219,0,-289,0,0, 0,0,0,-174,0,0,0,0,0,0, 0,0,0,0,0,-181,-168,0,0,-13, 0,-12,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-232,0,-15, 0,0,-245,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-17,0,0,-158, 0,0,0,0,-10,-19,-16,0,-4,0, 0,0,-3,0,-239,0,-217,0,0,0, 0,0,0,0,0,0,0,0,0,0, -41,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-20,0, 0,0,-38,0,-9,0,0,0,-24,-87, 0,0,0,-240,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,-25,0,0,0,-27, 0,0,0,0,-28,0,0,-29,0,0, -30,-31,0,0,0,-336,0,0,0,0, 0,0,0,0,0,0,0,0,0,-272, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,-7,0,0,0,0, 0,0,0,-18,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-311,-60,0, 0,0,-157,-328,0,-215,0,0,0,0, -317,0,-323,0,0,0,0,-32,-85,0, -296,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-33,0, 0,-287,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,-36,0,0,0,0, 0,0,0,0,0,0,-335,0,0,0, 0,-37,0,-40,0,0,0,0,-42,-43, 0,-50,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-44,0, 0,0,-294,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-45,0,0,0, -47,0,0,0,-298,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -308,-307,-247,0,0,-129,0,0,0,0, 0,0,0,0,0,0,-267,-88,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,-92, 0,0,-1,-49,0,0,0,-227,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-21,0,0,0,0,-216,-51, -52,-269,0,-54,-292,-293,0,-176,-56,-113, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,-214,-231,-266,0,-57,-58, 0,0,0,0,0,0,0,0,-283,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-59,0,0,0, 0,0,-46,0,0,0,0,-61,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-291,0,0,-309,-322,-62,0, 0,-65,-67,-70,0,0,0,0,0,-314, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,-319,0,0,0,0, 0,-71,-72,-116,-73,-74,-75,-76,0,-77, 0,-122,0,0,-78,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,-79,-81,-82,-83,0,-86, -91,-93,-94,-95,-96,0,0,0,0,0, -315,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-299,0, 0,-97,-98,-100,-103,-104,0,-111,-112,0, -114,0,0,-321,0,-117,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,-118,-119,-120,-121,-145, -146,-147,-148,-149,-156,-159,0,0,0,0, 0,-333,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-161,0,-300, 0,0,0,-162,-163,-165,-166,-167,0,-169, -170,-171,-172,-338,-101,0,-173,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-310,-175,-177,-179, -180,-182,-183,-185,-186,-187,-188,0,0,0, 0,0,-339,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,-189,-191,-192,-193,0,-194, -195,-196,-197,-198,-199,-200,0,-201,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-202,-203,-204, -233,0,0,0,0,-205,-206,-209,0,0, 0,0,0,-150,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-210,-211, -212,-26,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-123,-190,-213, 0,0,-221,0,-224,-225,-237,-242,-243,-246, 0,-248,-250,-251,-253,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-107,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,-254,0,0,-255,-256,-257, -258,-259,-260,0,0,-261,-263,-265,-268,-270, 0,-273,0,-274,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-228,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-275,-276,-278, 0,0,-285,-286,-290,-297,-301,-302,-303,-304, -305,-306,-312,-318,-320,0,-325,0,-326,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-279,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-329,-330,-331,0,0,-334,-337,-340, -341,-342,-343,-344,-345,-346,-347,-348,-349,-350, 0,-351,0,-352,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-316,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-353,-354,-355, 0,0,-356,-357,-358,-359,-360,-361,-362,-363, -364,-365,-366,-367,-368,0,-369,0,-370,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-80,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -371,-372,-373,-374,-375,-376,-377,-378,-379,-380, -381,-382,-383,-384,-385,-386,-387,-388,-389,-390, -391,-392,-393,-394,0,0,-84,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -395,-396,-397,-398,-399,-400,-401,-402,-403,-404, -405,-406,-407,-408,-409,-410,-411,-412,-413,-414, -415,-416,-417,-418,0,0,-102,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -419,-420,-421,-422,-423,-424,-425,-426,-427,-428, -429,-430,-431,-432,-433,-434,-435,-436,-437,-438, -439,-440,-441,-442,0,0,-151,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -443,-444,-445,-446,-447,-448,-449,-450,-451,-452, -453,-454,-455,-456,-457,-458,-459,-460,-461,-462, -463,-464,-465,-466,0,0,-178,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -106,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,-467,-468,-469,-470,-471,-472, -473,0,-208,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-474,-475,-476,-477, -478,-479,-480,-481,-482,-483,-484,-485,-486,-487, -488,-489,-490,-491,-492,-493,-494,-495,-496,-497, 0,0,-220,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-498,-499,-500,-501, -502,-503,-504,-505,-506,-507,-508,-509,-510,-511, -512,-513,-514,-515,-516,-517,-518,-519,-520,-521, 0,0,-222,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-522,-523,-524,-525, -526,-527,-528,-529,-530,-531,-532,-533,-534,-535, -536,-537,-538,-539,-540,-541,-542,-543,-544,-545, 0,0,-223,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-546,-547,-548,-549, -550,-551,-552,-553,-554,-555,-556,-557,-558,-559, -560,0,0,0,0,0,0,0,0,0, 0,0,-226,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-241,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-238,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-236,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-249,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-252,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-277,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-23,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-229,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-143,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-271,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-313,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -14,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-22,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-66,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,-90,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,-99, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-105,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-108,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-109,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,-115,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,-142, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-153,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-155,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-207,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,-218,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,-281, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-282,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-144,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-5,0,0,0, 0,0,0,0,0,0,-140,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,-110,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-184,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,-89,0,-141,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-152,-154,0,0, 0,0,0,0,-280,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-235,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-137,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-138,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-139,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-130,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-131,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-132,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,-133,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,-284, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-55,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-332,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-34,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -134,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-135,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-136,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,-124, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-125,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-35,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-63,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-64,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -68,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,-69, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-126,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-127,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-128,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,-230,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-324,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-234,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,-327,0,0,0,0,0, 0,0,0,0,0,0,-264,0,0,0, 0,-295,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,-262,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-288,0,0,0,0,0,0,0,-8, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0 }; const signed short *CLASS_HEADER base_check = &(check_table[0]) - (NUM_RULES + 1); const unsigned short CLASS_HEADER lhs[] = {0, 126,126,12,12,12,12,12,12,12,12,13,13,11,11,5, 5,6,6,7,7,7,7,7,8,8,10,10,4,9,9, 83,93,2,2,1,3,127,131,131,132,132,133,102,102,104, 105,103,103,103,47,47,45,45,45,45,45,45,45,45,45, 45,45,66,137,138,106,106,84,140,140,107,107,107,107,108, 108,108,108,108,85,94,94,86,86,74,95,95,111,88,88, 112,114,114,89,89,97,142,142,141,141,109,110,143,101,101, 144,144,144,144,144,73,147,146,149,149,115,115,115,115,115, 116,117,87,87,87,151,151,44,82,82,71,71,71,72,70, 70,48,48,48,48,48,48,76,76,76,76,76,49,49,49, 49,49,49,49,49,49,49,49,55,50,77,56,46,46,46, 46,46,46,46,51,52,78,57,152,152,152,152,153,153,119, 118,118,90,90,53,79,58,54,80,122,122,123,91,91,59, 59,60,60,61,63,62,64,64,155,155,124,157,14,14,19, 19,19,19,19,19,19,19,19,19,18,18,18,69,69,20, 20,20,125,125,92,65,65,21,21,21,17,17,17,17,22, 22,23,23,23,23,15,16,28,28,28,28,28,24,25,26, 26,26,26,27,27,27,31,31,31,31,32,32,32,33,33, 33,33,34,34,34,34,34,34,35,35,35,36,36,37,37, 38,38,39,39,40,40,41,41,42,42,29,30,30,30,158, 158,158,158,158,158,158,158,158,158,158,158,43,154,128,128, 135,135,99,99,100,100,150,150,129,129,130,130,139,139,67, 67,98,98,75,75,68,68,96,96,113,113,136,136,148,148, 120,120,121,121,145,145,156,156,134,81, 167,1749,588,1748,1098,532,1747,1747,1747,1098, 1098,1098,1746,1746,743,637,636,633,630,531, 1750,827,811,774,164,165,3136,3476,3545,163, 383,3614,1896,953,1895,1179,532,1747,1747,1747, 1179,1179,1179,6,1751,50,829,387,1751,1751, 1751,1751,1751,1751,1751,1751,1751,1751,1751,1751, 1751,1751,1751,1751,1751,70,1751,584,15,1548, 979,129,1751,51,1010,3054,51,15,2483,1553, 2482,67,837,3653,1896,953,1895,1179,532,1747, 1747,1747,1179,1179,1179,2610,15,1550,421,564, 94,246,1749,724,1748,1098,532,1747,1747,1747, 1098,1098,1098,1746,1746,1092,637,636,633,630, 531,1750,827,811,774,164,165,3613,51,152, 163,383,3653,1896,953,1895,952,532,1747,1747, 1747,952,952,952,457,1751,50,829,387,1751, 1751,1751,1751,1751,1751,1751,1751,1751,1751,1751, 1751,1751,1751,1751,1751,1751,5,1751,584,1917, 67,979,129,1751,427,346,1961,51,15,681, 681,681,69,837,3707,2166,3653,1896,953,1895, 382,532,1747,1747,1747,382,382,382,205,1054, 246,1749,724,1748,1098,532,1747,1747,1747,1098, 1098,1098,1746,1746,1092,637,636,633,630,531, 1750,827,811,774,164,165,2,173,210,163, 383,50,3635,488,15,1024,1024,1024,597,2379, 483,1211,483,3926,1751,50,829,387,1751,1751, 1751,1751,1751,1751,1751,1751,1751,1751,1751,1751, 1751,1751,1751,1751,1751,3112,1751,584,220,1033, 979,129,1751,111,342,1554,39,421,39,39, 11,910,837,2,220,3653,1896,953,1895,382, 532,1747,1747,1747,382,382,382,1261,421,1, 1749,724,1748,1098,532,1747,1747,1747,1098,1098, 1098,1746,1746,1092,637,636,633,630,531,1750, 827,811,774,164,165,432,203,63,163,383, 50,228,488,4744,1810,953,1809,595,4031,4031, 4031,4031,744,1751,50,829,387,1751,1751,1751, 1751,1751,1751,1751,1751,1751,1751,1751,1751,1751, 1751,1751,1751,1751,4062,1751,584,3490,4761,979, 129,1751,1759,69,93,15,1810,1553,1809,64, 3490,910,15,2485,1553,2484,2486,569,460,182, 84,1749,724,1748,1098,532,1747,1747,1747,1098, 1098,1098,1746,1746,1092,637,636,633,630,531, 1750,827,811,774,164,165,1215,102,993,163, 383,1757,1896,953,1895,936,532,1747,1747,1747, 936,936,936,1261,1751,50,829,387,1751,1751, 1751,1751,1751,1751,1751,1751,1751,1751,1751,1751, 1751,1751,1751,1751,1751,7,1751,584,64,1015, 979,129,1751,1133,1133,97,15,1810,1553,1809, 98,170,910,4,102,227,90,90,193,1697, 182,325,1749,724,1748,1098,532,1747,1747,1747, 1098,1098,1098,1746,1746,1092,637,636,633,630, 531,1750,827,811,774,164,165,1050,1754,1050, 163,383,5080,1896,953,1895,936,532,1747,1747, 1747,936,936,936,1738,130,50,829,387,130, 130,130,130,130,130,130,130,130,130,130, 130,130,130,130,130,130,1817,130,584,98, 1837,979,130,130,404,1749,724,1748,1098,532, 1747,1747,1747,1098,1098,1098,1746,1746,1092,637, 636,633,630,531,1750,827,811,774,164,165, 4325,4000,540,163,383,4744,1973,953,1972,278, 1544,1544,1544,1544,278,278,3136,425,130,50, 829,387,130,130,130,130,130,130,130,130, 130,130,130,130,130,130,130,130,130,251, 130,584,9,314,979,130,130,541,1822,724, 1820,1137,532,1747,1747,1747,1137,1137,1137,1746, 1746,1092,637,636,633,630,531,1750,827,811, 774,164,165,178,1266,723,163,383,178,393, 1054,4376,1261,1082,4067,17,81,3136,249,3020, 95,2410,181,829,1690,170,1614,170,170,170, 170,170,2410,2410,2410,2410,2410,2410,2410,2410, 2410,2410,1171,736,965,178,178,975,164,694, 655,178,207,1613,1613,1613,1613,1613,541,1822, 724,1820,1137,532,1747,1747,1747,1137,1137,1137, 1746,1746,1092,637,636,633,630,531,1750,827, 811,774,164,165,1374,1017,1162,163,383,201, 206,1266,625,204,85,1132,1372,302,399,399, 3862,181,2410,82,829,3862,160,1614,160,160, 160,160,160,2410,2410,2410,2410,2410,2410,2410, 2410,2410,2410,178,430,525,178,17,29,746, 179,1802,1027,81,161,161,161,161,161,541, 1822,724,1820,1137,532,1747,1747,1747,1137,1137, 1137,1746,1746,1092,637,636,633,630,531,1750, 827,811,774,164,165,3490,1266,74,163,383, 101,171,3063,3136,1040,353,2289,140,81,1840, 599,2368,599,2410,813,829,1264,185,1614,185, 185,185,185,185,2410,2410,2410,2410,2410,2410, 2410,2410,2410,2410,2266,2018,852,1352,729,1838, 1872,1694,2077,2131,2185,186,186,186,186,186, 541,1822,724,1820,1137,532,1747,1747,1747,1137, 1137,1137,1746,1746,1092,637,636,633,630,531, 1750,827,811,774,164,165,1380,1266,3707,163, 383,751,2354,473,785,2413,1379,315,1320,81, 472,89,89,4671,2410,3140,829,1376,170,1614, 170,170,170,170,170,2410,2410,2410,2410,2410, 2410,2410,2410,2410,2410,1758,235,1874,797,2020, 2380,1232,2674,3051,1902,3031,1694,1694,1694,1694, 1694,541,1822,724,1820,1137,532,1747,1747,1747, 1137,1137,1137,1746,1746,1092,637,636,633,630, 531,1750,827,811,774,164,165,3071,1374,3707, 163,383,221,3138,3436,3470,3633,3168,85,1157, 1904,3495,3667,3020,1088,2410,2430,829,221,171, 1614,171,171,171,171,171,2410,2410,2410,2410, 2410,2410,2410,2410,2410,2410,985,3194,3195,3668, 3721,2628,2411,3681,3741,3754,503,172,172,172, 172,172,541,1822,724,1820,1137,532,1747,1747, 1747,1137,1137,1137,1746,1746,1092,637,636,633, 630,531,1750,827,811,774,164,165,1374,1261, 88,163,383,222,815,1084,1788,1962,91,2019, 990,1212,1699,2378,4291,4391,2410,1905,829,222, 188,1614,188,188,188,188,188,2410,2410,2410, 2410,2410,2410,2410,2410,2410,2410,1804,991,584, 15,2412,1553,2411,2413,3245,2960,2992,189,189, 189,189,189,754,2340,724,2339,1137,532,1747, 1747,1747,1137,1137,1137,2338,2338,1092,2344,2343, 2341,2342,531,2337,827,811,1138,2336,2336,2336, 2336,2336,2335,383,1177,1139,1180,1178,1182,1181, 1185,1183,1210,1190,2335,2335,2335,88,2547,1383, 3749,484,1822,724,1820,1137,532,1747,1747,1747, 1137,1137,1137,1746,1746,1092,637,636,633,630, 531,1750,827,811,774,164,165,1449,3418,1959, 163,383,3670,66,3684,3634,4141,3052,4142,4143, 2335,4144,4145,4146,3838,1257,1622,829,126,1257, 1257,1257,1257,1257,1257,1257,1257,1257,1257,1257, 1257,1257,1257,1257,1257,1257,484,1822,724,1820, 1137,532,1747,1747,1747,1137,1137,1137,1746,1746, 1092,637,636,633,630,531,1750,827,811,774, 164,165,1381,1211,4492,163,383,1761,3589,3882, 3948,4087,2579,1514,1515,4048,3981,4005,4080,2727, 160,4528,829,4292,160,160,160,160,160,160, 160,160,160,160,160,160,160,160,160,160, 160,484,1822,724,1820,1137,532,1747,1747,1747, 1137,1137,1137,1746,1746,1092,637,636,633,630, 531,1750,827,811,774,164,165,4513,4533,4745, 163,383,2701,4789,2763,2955,4686,4815,4702,4724, 4807,4024,4195,4196,3137,185,4837,829,4061,185, 185,185,185,185,185,185,185,185,185,185, 185,185,185,185,185,185,484,1822,724,1820, 1137,532,1747,1747,1747,1137,1137,1137,1746,1746, 1092,637,636,633,630,531,1750,827,811,774, 164,165,4344,4880,4460,163,383,4886,4901,80, 501,4099,5170,5180,3091,127,153,3062,2271,1884, 171,879,829,936,171,171,171,171,171,171, 171,171,171,171,171,171,171,171,171,171, 171,484,1822,724,1820,1137,532,1747,1747,1747, 1137,1137,1137,1746,1746,1092,637,636,633,630, 531,1750,827,811,774,164,165,1941,1998,2359, 163,383,2393,4762,4921,4539,4124,4152,1677,3119, 3147,1478,1506,3732,1137,188,1192,829,1143,188, 188,188,188,188,188,188,188,188,188,188, 188,188,188,188,188,188,1189,1902,724,1901, 1137,532,1747,1747,1747,1137,1137,1137,1900,1900, 1092,1906,1905,1903,1904,531,1899,827,811,1138, 1898,1898,1898,1898,1898,1897,383,1177,1139,1180, 1178,1182,1181,1185,1183,1210,1190,1897,1897,223, 1198,2548,2580,2697,2728,2759,1832,2612,757,4814, 4840,197,4390,3175,2679,1323,1354,2710,2741,3760, 3791,3202,2427,2454,1295,1296,1189,1902,724,1901, 1137,532,1747,1747,1747,1137,1137,1137,1900,1900, 1092,1906,1905,1903,1904,531,1899,827,811,1138, 1898,1898,1898,1898,1898,1897,383,1177,1139,1180, 1178,1182,1181,1185,1183,1210,1190,1897,1897,223, 2055,2082,2109,665,722,2305,779,2956,3021,3428, 2988,3546,3778,3809,1215,1444,4943,4947,5190,4932, 766,1734,5125,5056,1299,1296,1189,1902,724,1901, 1137,532,1747,1747,1747,1137,1137,1137,1900,1900, 1092,1906,1905,1903,1904,531,1899,827,811,1138, 1898,1898,1898,1898,1898,1897,383,1177,1139,1180, 1178,1182,1181,1185,1183,1210,1190,1897,1897,223, 5135,5148,5160,828,1098,3656,103,265,1149,1204, 1746,1844,4383,544,601,4117,5079,4791,4567,4421, 4444,4589,4611,4633,1343,1296,1189,1902,724,1901, 1137,532,1747,1747,1747,1137,1137,1137,1900,1900, 1092,1906,1905,1903,1904,531,1899,827,811,1138, 1898,1898,1898,1898,1898,1897,383,1177,1139,1180, 1178,1182,1181,1185,1183,1210,1190,1897,1897,223, 4655,4855,4877,14,976,1037,487,864,1244,1561, 1605,328,407,180,4813,913,3822,3229,3252,3844, 3866,3888,3910,2032,1516,1296,1024,2352,724,2351, 1137,532,1747,1747,1747,1137,1137,1137,2350,2350, 1092,2347,2346,2348,2349,531,2353,827,811,1138, 2345,2345,2345,2345,2345,84,383,1177,1139,1180, 1178,1182,1181,1185,1183,1210,1190,84,84,84, 1079,1960,724,1959,1137,532,1747,1747,1747,1137, 1137,1137,1958,1958,1092,1909,1908,1956,1957,531, 1961,827,811,1138,1907,1907,1907,1907,1907,296, 383,1177,1139,1180,1178,1182,1181,1185,1183,1210, 1190,296,296,84,3096,4899,4677,4699,4180,4202, 4224,84,1189,1902,724,1901,1137,532,1747,1747, 1747,1137,1137,1137,1900,1900,1092,1906,1905,1903, 1904,531,1899,827,811,1138,1898,1898,1898,1898, 1898,1897,383,1177,1139,1180,1178,1182,1181,1185, 1183,1210,1190,1897,1897,223,4246,4268,3932,3955, 4467,4489,3275,2772,2481,2505,2796,2820,2844,2868, 3978,4002,4721,1918,1975,3299,3321,3343,3365,3387, 1552,1296,1189,1902,724,1901,1137,532,1747,1747, 1747,1137,1137,1137,1900,1900,1092,1906,1905,1903, 1904,531,1899,827,811,1138,1898,1898,1898,1898, 1898,1897,383,1177,1139,1180,1178,1182,1181,1185, 1183,1210,1190,1897,1897,223,2892,2915,699,447, 4511,3409,2938,1385,1417,2970,3002,4026,4058,4290, 3441,3473,2529,2561,2593,1259,1291,3034,970,4044, 1557,1296,1189,1902,724,1901,1137,532,1747,1747, 1747,1137,1137,1137,1900,1900,1092,1906,1905,1903, 1904,531,1899,827,811,1138,1898,1898,1898,1898, 1898,1897,383,1177,1139,1180,1178,1182,1181,1185, 1183,1210,1190,1897,1897,223,3460,3590,4076,4340, 4350,4529,1574,1618,3589,3491,4375,500,3501,2332, 2136,1622,1649,2163,2190,2217,2244,2625,2652,565, 1558,1296,1189,1902,724,1901,1137,532,1747,1747, 1747,1137,1137,1137,1900,1900,1092,1906,1905,1903, 1904,531,1899,827,811,1138,1898,1898,1898,1898, 1898,1897,383,1177,1139,1180,1178,1182,1181,1185, 1183,1210,1190,1897,1897,223,629,4743,4322,4356, 3528,3572,3616,1534,1578,4090,4434,4557,4580,4602, 641,5177,5177,5177,5177,5177,5177,5177,5177,5177, 1559,1296,1189,1902,724,1901,1137,532,1747,1747, 1747,1137,1137,1137,1900,1900,1092,1906,1905,1903, 1904,531,1899,827,811,1138,1898,1898,1898,1898, 1898,1897,383,1177,1139,1180,1178,1182,1181,1185, 1183,1210,1190,1897,1897,223,5177,5177,5177,5177, 5177,5177,15,2412,1553,2411,2413,5177,5177,5177, 5177,5177,5177,5177,5177,5177,5177,5177,5177,5177, 1610,1296,809,2352,724,2351,1137,532,1747,1747, 1747,1137,1137,1137,2350,2350,1092,2347,2346,2348, 2349,531,2353,827,811,1138,2345,2345,2345,2345, 2345,127,383,1177,1139,1180,1178,1182,1181,1185, 1183,1210,1190,127,127,127,1079,2418,1350,2417, 1137,532,1747,1747,1747,1137,1137,1137,2416,2416, 1092,2424,2423,2420,2422,531,2415,2421,2419,1138, 2414,2414,2414,2414,2414,66,5177,1177,1139,1180, 1178,1182,1181,1185,1183,1210,1190,293,1623,127, 5177,5177,5177,5177,5177,5177,5177,127,1189,1902, 724,1901,1137,532,1747,1747,1747,1137,1137,1137, 1900,1900,1092,1906,1905,1903,1904,531,1899,827, 811,1138,1898,1898,1898,1898,1898,1897,383,1177, 1139,1180,1178,1182,1181,1185,1183,1210,1190,1897, 1897,223,5177,5177,5177,5177,5177,5177,5177,5177, 5177,5177,5177,5177,5177,5177,5177,5177,5177,5177, 5177,5177,5177,5177,5177,5177,1627,1296,1189,1902, 724,1901,1137,532,1747,1747,1747,1137,1137,1137, 1900,1900,1092,1906,1905,1903,1904,531,1899,827, 811,1138,1898,1898,1898,1898,1898,1897,383,1177, 1139,1180,1178,1182,1181,1185,1183,1210,1190,1897, 1897,223,5177,5177,5177,5177,5177,5177,5177,5177, 5177,5177,5177,5177,5177,5177,5177,5177,5177,5177, 5177,5177,5177,5177,5177,5177,1674,1296,1189,1902, 724,1901,1137,532,1747,1747,1747,1137,1137,1137, 1900,1900,1092,1906,1905,1903,1904,531,1899,827, 811,1138,1898,1898,1898,1898,1898,1897,383,1177, 1139,1180,1178,1182,1181,1185,1183,1210,1190,1897, 1897,223,5177,5177,5177,5177,5177,5177,5177,5177, 5177,5177,5177,5177,5177,5177,5177,5177,5177,5177, 5177,5177,5177,5177,5177,5177,1682,1296,1134,1818, 724,1817,1137,532,1747,1747,1747,1137,1137,1137, 1816,1816,1092,1813,1812,1814,1815,531,1819,827, 811,1138,1811,1811,1811,1811,1811,1218,383,1177, 1139,1180,1178,1182,1181,1185,1183,1210,1190,1218, 1218,1218,1134,1818,724,1817,1137,532,1747,1747, 1747,1137,1137,1137,1816,1816,1092,1813,1812,1814, 1815,531,1819,827,811,1138,1811,1811,1811,1811, 1811,1621,383,1177,1139,1180,1178,1182,1181,1185, 1183,1210,1190,1621,1621,1621,5177,5177,5177,5177, 5177,5177,5177,5177,5177,5177,5177,1218,1079,2271, 1350,2270,1137,532,1747,1747,1747,1137,1137,1137, 2269,2269,1092,2277,2276,2273,2275,531,2268,2274, 2272,1138,2267,2267,2267,2267,2267,5177,5177,1177, 1139,1180,1178,1182,1181,1185,1183,1455,5177,5177, 5177,1621,1079,2480,724,2479,1137,532,1747,1747, 1747,1137,1137,1137,2478,2478,1092,2475,2474,2476, 2477,531,2481,827,811,1138,2473,2473,2473,2473, 2473,1681,383,1177,1139,1180,1178,1182,1181,1185, 1183,1210,1190,1681,1681,1681,1134,1818,724,1817, 1137,532,1747,1747,1747,1137,1137,1137,1816,1816, 1092,1813,1812,1814,1815,531,1819,827,811,1138, 1811,1811,1811,1811,1811,1692,383,1177,1139,1180, 1178,1182,1181,1185,1183,1210,1190,1692,1692,1692, 1079,1759,724,1757,1137,532,1747,1747,1747,1137, 1137,1137,1755,1755,1092,1808,1805,1803,1804,531, 1754,827,811,1138,1753,1753,1753,1753,1753,1134, 383,1177,1139,1180,1178,1182,1181,1185,1183,1210, 1190,1134,1134,1134,5177,5177,5177,5177,5177,5177, 5177,5177,5177,5177,5177,1692,5177,5177,5177,5177, 5177,5177,5177,5177,5177,5177,1681,1079,1759,724, 1757,1137,532,1747,1747,1747,1137,1137,1137,1755, 1755,1092,1808,1805,1803,1804,531,1754,827,811, 1138,1753,1753,1753,1753,1753,1217,383,1177,1139, 1180,1178,1182,1181,1185,1183,1210,1190,1217,1217, 1217,1079,1759,1543,1757,1137,1187,1747,1747,1747, 1137,1137,1137,1755,1755,1092,1808,1805,1803,1804, 531,1754,827,811,1138,1753,1753,1753,1753,1753, 1294,383,1177,1139,1180,1178,1182,1181,1185,1183, 1210,1190,1294,1294,1294,1079,1759,724,1757,1137, 532,1747,1747,1747,1137,1137,1137,1755,1755,1092, 1808,1805,1803,1804,531,1754,827,811,1138,1753, 1753,1753,1753,1753,1300,383,1177,1139,1180,1178, 1182,1181,1185,1183,1210,1190,1300,1300,1300,1079, 1759,724,1757,1137,532,1747,1747,1747,1137,1137, 1137,1755,1755,1092,1808,1805,1803,1804,531,1754, 827,811,1138,1753,1753,1753,1753,1753,1339,383, 1177,1139,1180,1178,1182,1181,1185,1183,1210,1190, 1339,1339,1339,967,1759,724,1757,1137,532,1747, 1747,1747,1137,1137,1137,1755,1755,1092,1808,1805, 1803,1804,531,1754,827,811,1138,1753,1753,1753, 1753,1753,1346,383,1177,1139,1180,1178,1182,1181, 1185,1183,1210,1190,1346,1346,1346,1079,1759,724, 1757,1137,532,1747,1747,1747,1137,1137,1137,1755, 1755,1092,1808,1805,1803,1804,531,1754,827,811, 1138,1753,1753,1753,1753,1753,1347,383,1177,1139, 1180,1178,1182,1181,1185,1183,1210,1190,1347,1347, 1347,1079,1759,724,1757,1137,532,1747,1747,1747, 1137,1137,1137,1755,1755,1092,1808,1805,1803,1804, 531,1754,827,811,1138,1753,1753,1753,1753,1753, 1348,383,1177,1139,1180,1178,1182,1181,1185,1183, 1210,1190,1348,1348,1348,1079,1759,724,1757,1137, 532,1747,1747,1747,1137,1137,1137,1755,1755,1092, 1808,1805,1803,1804,531,1754,827,811,1138,1753, 1753,1753,1753,1753,1375,383,1177,1139,1180,1178, 1182,1181,1185,1183,1210,1190,1375,1375,1375,1079, 1759,724,1757,1137,532,1747,1747,1747,1137,1137, 1137,1755,1755,1092,1808,1805,1803,1804,531,1754, 827,811,1138,1753,1753,1753,1753,1753,1454,383, 1177,1139,1180,1178,1182,1181,1185,1183,1210,1190, 1454,1454,1454,1079,1759,724,1757,1137,532,1747, 1747,1747,1137,1137,1137,1755,1755,1092,1808,1805, 1803,1804,531,1754,827,811,1138,1753,1753,1753, 1753,1753,1545,383,1177,1139,1180,1178,1182,1181, 1185,1183,1210,1190,1545,1545,1545,967,1759,724, 1757,1137,532,1747,1747,1747,1137,1137,1137,1755, 1755,1092,1808,1805,1803,1804,531,1754,827,811, 1138,1753,1753,1753,1753,1753,1545,383,1177,1139, 1180,1178,1182,1181,1185,1183,1210,1190,1545,1545, 1545,1079,1759,724,1757,1137,532,1747,1747,1747, 1137,1137,1137,1755,1755,1092,1808,1805,1803,1804, 531,1754,827,811,1138,1753,1753,1753,1753,1753, 224,383,1177,1139,1180,1178,1182,1181,1185,1183, 1210,1190,224,224,224,1079,1759,724,1757,1137, 532,1747,1747,1747,1137,1137,1137,1755,1755,1092, 1808,1805,1803,1804,531,1754,827,811,1138,1753, 1753,1753,1753,1753,1555,383,1177,1139,1180,1178, 1182,1181,1185,1183,1210,1190,1555,1555,1555,1079, 1759,724,1757,1137,532,1747,1747,1747,1137,1137, 1137,1755,1755,1092,1808,1805,1803,1804,531,1754, 827,811,1138,1753,1753,1753,1753,1753,1684,383, 1177,1139,1180,1178,1182,1181,1185,1183,1210,1190, 1684,1684,1684,1079,1759,724,1757,1137,532,1747, 1747,1747,1137,1137,1137,1755,1755,1092,1808,1805, 1803,1804,531,1754,827,811,1138,1753,1753,1753, 1753,1753,1685,383,1177,1139,1180,1178,1182,1181, 1185,1183,1210,1190,1685,1685,1685,1079,2333,1350, 2332,1137,532,1747,1747,1747,1137,1137,1137,2285, 2285,1092,2280,2279,2282,2284,531,2334,2283,2281, 1138,2278,2278,2278,2278,2278,172,5177,1177,1139, 1180,1178,1182,1181,1185,1461,1079,2114,1350,2113, 1137,532,1747,1747,1747,1137,1137,1137,2112,2112, 1092,2210,2119,2116,2118,531,2111,2117,2115,1138, 2110,2110,2110,2110,2110,5177,5177,1177,1139,1180, 1178,1182,1181,1433,598,1749,724,1748,1098,532, 1747,1747,1747,1098,1098,1098,1746,1746,1092,637, 636,633,630,531,1750,827,811,774,164,165, 5177,5177,5177,163,383,5177,5177,5177,5177,5177, 5177,5177,5177,5177,5177,5177,5177,5177,5177,50, 193,439,5177,5177,5177,5177,5177,5177,38,5177, 1745,1745,5177,5177,5177,5177,5177,5177,5177,5177, 5177,5177,5177,5177,191,5177,5177,5177,5177,5177, 5177,5177,5177,5177,5177,5175,5177,530,5177,5177, 5177,5177,5177,5177,5177,1373,1676,2403,1350,2402, 1137,532,1747,1747,1747,1137,1137,1137,2355,2355, 1092,2409,2408,2405,2407,531,2354,2406,2404,1138, 5177,5177,260,260,1352,2381,1352,1079,2265,1350, 2264,1137,532,1747,1747,1747,1137,1137,1137,2263, 2263,1092,2213,2212,2215,2262,531,2266,2216,2214, 1138,2211,2211,2211,2211,2211,3184,3184,1177,1139, 1180,1178,1182,1453,598,1749,724,1748,1098,532, 1747,1747,1747,1098,1098,1098,1746,1746,1092,637, 636,633,630,531,1750,827,811,774,164,165, 1211,5177,5177,163,383,5177,5177,5177,5177,5177, 5177,5177,5177,5177,5177,5177,5177,5177,5177,50, 193,439,5177,5177,5177,5177,5177,228,5177,5177, 5177,1374,1374,5177,5177,5177,5177,5177,5177,5177, 5177,226,225,5177,191,5177,5177,5177,5177,5177, 5177,5177,5177,5177,5177,5177,5177,5177,229,229, 4063,5177,5177,5177,5177,1373,1774,2403,1350,2402, 1137,532,1747,1747,1747,1137,1137,1137,2355,2355, 1092,2409,2408,2405,2407,531,2354,2406,2404,1138, 5177,5177,261,261,1683,5177,1683,1079,2046,1350, 2045,1137,532,1747,1747,1747,1137,1137,1137,2044, 2044,1092,2098,2097,2048,2096,531,2043,2049,2047, 1138,2042,2042,2042,2042,2042,5177,5177,1177,1139, 1180,1178,1429,1079,2108,1350,2107,1137,532,1747, 1747,1747,1137,1137,1137,2106,2106,1092,2101,2100, 2103,2105,531,2109,2104,2102,1138,2099,2099,2099, 2099,2099,5177,5177,1177,1139,1180,1430,1079,2108, 1350,2107,1137,532,1747,1747,1747,1137,1137,1137, 2106,2106,1092,2101,2100,2103,2105,531,2109,2104, 2102,1138,2099,2099,2099,2099,2099,5177,5177,1177, 1139,1180,1431,1079,1978,1350,1977,1137,532,1747, 1747,1747,1137,1137,1137,1976,1976,1092,2030,2029, 2026,2028,531,1975,2027,1979,1138,1974,1974,1974, 1974,1974,5177,5177,1177,1139,1421,1079,1978,1350, 1977,1137,532,1747,1747,1747,1137,1137,1137,1976, 1976,1092,2030,2029,2026,2028,531,1975,2027,1979, 1138,1974,1974,1974,1974,1974,5177,5177,1177,1139, 1422,1079,1978,1350,1977,1137,532,1747,1747,1747, 1137,1137,1137,1976,1976,1092,2030,2029,2026,2028, 531,1975,2027,1979,1138,1974,1974,1974,1974,1974, 5177,5177,1177,1139,1423,1079,1978,1350,1977,1137, 532,1747,1747,1747,1137,1137,1137,1976,1976,1092, 2030,2029,2026,2028,531,1975,2027,1979,1138,1974, 1974,1974,1974,1974,5177,5177,1177,1139,1425,1829, 1822,724,1820,1137,532,1747,1747,1747,1137,1137, 1137,1746,1746,1092,637,636,633,630,531,1750, 827,811,774,164,165,5177,5177,4970,163,383, 5177,5177,5177,5177,5177,5177,5177,5177,5177,5177, 5177,5177,5177,5177,5177,193,1829,1822,724,1820, 1137,532,1747,1747,1747,1137,1137,1137,1746,1746, 1092,637,636,633,630,531,1750,827,811,774, 164,165,50,5177,384,163,383,5177,5177,5177, 5177,5177,5177,5177,5177,5177,5177,5177,5177,5177, 1687,5177,193,41,1019,5177,5177,5177,5177,5177, 41,5177,5177,5177,5177,5177,5177,5177,5177,5177, 5177,5177,5177,5177,5177,5177,5177,5177,5177,5177, 1686,5177,1686,5177,5177,5177,5177,5177,5177,5177, 41,5177,5177,5177,5177,5177,5177,1687,1079,1893, 1350,1892,1137,532,1747,1747,1747,1137,1137,1137, 1891,1891,1092,1886,1824,1888,1890,531,1894,1889, 1887,1138,254,254,254,254,254,1744,5177,1744, 1079,2040,1350,2039,1137,532,1747,1747,1747,1137, 1137,1137,2038,2038,1092,2033,2032,2035,2037,531, 2041,2036,2034,1138,2031,2031,2031,2031,2031,5177, 5177,1177,1426,1079,2040,1350,2039,1137,532,1747, 1747,1747,1137,1137,1137,2038,2038,1092,2033,2032, 2035,2037,531,2041,2036,2034,1138,2031,2031,2031, 2031,2031,5177,5177,1177,1427,1079,2040,1350,2039, 1137,532,1747,1747,1747,1137,1137,1137,2038,2038, 1092,2033,2032,2035,2037,531,2041,2036,2034,1138, 2031,2031,2031,2031,2031,5177,5177,1177,1428,1079, 1965,1350,1964,1137,532,1747,1747,1747,1137,1137, 1137,1963,1963,1092,1971,1970,1967,1969,531,1962, 1968,1966,1138,1382,1382,1382,1382,1382,5177,5177, 1382,1079,1965,1350,1964,1137,532,1747,1747,1747, 1137,1137,1137,1963,1963,1092,1971,1970,1967,1969, 531,1962,1968,1966,1138,1420,1420,1420,1420,1420, 5177,5177,1420,1079,1893,1350,1892,1137,532,1747, 1747,1747,1137,1137,1137,1891,1891,1092,1886,1824, 1888,1890,531,1894,1889,1887,1138,253,253,253, 253,253,1079,1893,1350,1892,1137,532,1747,1747, 1747,1137,1137,1137,1891,1891,1092,1886,1824,1888, 1890,531,1894,1889,1887,1138,257,257,257,257, 257,1079,1893,1350,1892,1137,532,1747,1747,1747, 1137,1137,1137,1891,1891,1092,1886,1824,1888,1890, 531,1894,1889,1887,1138,256,256,256,256,256, 1079,1893,1350,1892,1137,532,1747,1747,1747,1137, 1137,1137,1891,1891,1092,1886,1824,1888,1890,531, 1894,1889,1887,1138,251,251,251,251,251,1079, 1893,1350,1892,1137,532,1747,1747,1747,1137,1137, 1137,1891,1891,1092,1886,1824,1888,1890,531,1894, 1889,1887,1138,250,250,250,250,250,1079,1893, 1350,1892,1137,532,1747,1747,1747,1137,1137,1137, 1891,1891,1092,1886,1824,1888,1890,531,1894,1889, 1887,1138,265,265,265,265,265,1079,1893,1350, 1892,1137,532,1747,1747,1747,1137,1137,1137,1891, 1891,1092,1886,1824,1888,1890,531,1894,1889,1887, 1138,264,264,264,264,264,1079,1893,1350,1892, 1137,532,1747,1747,1747,1137,1137,1137,1891,1891, 1092,1886,1824,1888,1890,531,1894,1889,1887,1138, 263,263,263,263,263,1731,1822,724,1820,1137, 532,1747,1747,1747,1137,1137,1137,1746,1746,1092, 637,636,633,630,531,1750,827,811,774,164, 165,5177,5177,5177,163,383,3665,1896,953,1895, 382,532,1747,1747,1747,382,382,382,5177,5177, 5177,194,1079,1893,1350,1892,1137,532,1747,1747, 1747,1137,1137,1137,1891,1891,1092,1886,1824,1888, 1890,531,1894,1889,1887,1138,259,259,259,259, 259,50,5177,488,3665,1896,953,1895,382,532, 1747,1747,1747,382,382,382,4900,5177,5177,5177, 5177,4922,5177,5177,5177,5177,5177,5177,5177,5177, 5177,5177,5177,5177,5177,5177,5177,5177,5177,5177, 5177,5177,5177,5177,5177,92,5177,5177,5177,50, 5177,488,5177,5177,5177,5177,5177,5177,5177,5177, 5177,50,5177,384,5177,5177,50,5177,384,1739, 1740,5177,5177,5177,4989,5177,5177,5177,5177,5177, 5177,5177,2472,868,5177,5177,5177,70,868,2472, 5177,5012,5177,92,70,5177,5177,1129,5177,4941, 5177,2472,1129,5177,1021,5177,70,5177,5177,1021, 5177,5177,5177,5177,5177,5177,5177,1743,1740,50, 5177,384,5177,69,2472,2472,2472,2472,70,70, 70,70,70,5177,5177,5177,50,5177,384,5177, 2425,777,5177,5177,50,5177,384,2425,5177,5177, 5177,5177,5177,5177,5177,1680,5097,115,777,2425, 5177,5177,1679,5177,115,1752,1019,5177,5177,5177, 5177,5177,1752,5177,5177,5177,115,5177,5177,1679, 5177,5177,5177,5177,5177,5177,5177,5177,5177,114, 2425,2425,5177,5177,5177,5177,5177,5177,5177,5177, 5177,5177,40,5177,5177,5177,115,115,115,5177, 5177,5177,5177,5177,5177,5177,5177,5177,5177,5177, 5177,5177,1678,5167,5177,5177,5177,5177,5177,37, 5177,4463 }; const unsigned short *CLASS_HEADER base_action = lhs; const unsigned char CLASS_HEADER term_check[] = {0, 0,1,2,0,0,0,0,3,0,3,0,1,2,0,0, 9,0,4,5,6,7,8,22,10,11,12,22,27,0,29, 27,31,32,33,34,35,36,37,38,39,40,41,42,29,44, 45,46,47,48,49,50,51,52,53,54,55,28,57,58,59, 60,61,62,63,64,65,66,67,0,0,70,71,72,73,74, 75,76,77,78,0,0,81,82,0,1,2,80,7,8,83, 84,85,86,87,88,89,90,91,92,93,31,96,0,1,2, 22,4,5,6,101,27,103,29,45,31,32,33,34,35,36, 37,38,39,40,41,42,0,44,45,46,47,48,49,50,51, 52,53,54,55,0,57,58,59,60,61,62,63,64,65,66, 67,0,0,70,71,72,73,74,75,76,77,78,23,0,81, 82,0,1,2,0,0,0,3,22,4,5,6,0,9,0, 1,2,3,4,5,6,7,8,22,10,11,12,0,27,31, 29,0,31,32,33,34,35,36,37,38,39,40,41,42,0, 44,45,46,47,48,49,50,51,52,53,54,55,45,57,58, 59,60,61,62,63,64,65,66,67,0,43,70,71,72,73, 74,75,76,77,78,0,1,2,0,80,0,3,83,84,85, 86,87,88,89,90,91,92,93,29,0,1,2,22,4,5, 6,100,27,39,29,27,31,32,33,34,35,36,37,38,39, 40,41,42,79,44,45,46,47,48,49,50,51,52,53,54, 55,0,57,58,59,60,61,62,63,64,65,66,67,0,0, 70,71,72,73,74,75,76,77,78,0,1,2,0,1,2, 3,4,5,6,7,8,9,10,11,12,27,0,1,2,3, 0,22,97,3,22,9,27,0,29,9,31,32,33,34,35, 36,37,38,39,40,41,42,15,44,45,46,47,48,49,50, 51,52,53,54,55,79,57,58,59,60,61,62,63,64,65, 66,67,0,79,70,71,72,73,74,75,76,77,78,0,1, 2,0,1,2,3,4,5,6,7,8,9,10,11,12,27, 0,1,2,3,0,22,0,3,22,9,27,0,29,9,3, 32,33,34,35,36,37,38,39,40,41,42,0,44,45,46, 47,48,49,50,51,52,53,54,55,0,57,58,59,60,61, 62,63,64,65,66,67,0,0,70,71,72,73,74,75,76, 77,78,79,0,1,2,0,1,2,3,4,5,6,7,8, 9,10,11,12,0,0,29,0,3,45,22,4,5,6,9, 27,39,29,41,42,32,33,34,35,36,37,38,39,40,41, 42,100,44,45,46,47,48,49,50,51,52,53,54,55,0, 0,1,2,0,1,2,3,4,5,6,67,80,9,70,71, 72,73,74,75,76,77,78,22,0,0,22,3,27,0,29, 31,3,32,33,34,35,36,37,38,39,40,41,42,0,44, 45,46,47,48,49,50,51,52,53,54,55,0,0,1,2, 0,1,2,3,4,5,6,67,25,9,70,71,72,73,74, 75,76,77,78,22,81,82,22,27,0,29,29,3,0,32, 33,34,35,36,37,38,39,40,41,42,0,44,0,46,47, 48,49,50,51,52,53,54,55,29,57,58,59,60,61,62, 63,64,65,66,0,1,2,3,4,5,6,7,8,9,10, 11,12,13,14,15,16,17,18,19,20,21,22,23,24,25, 26,27,28,0,30,31,3,0,0,1,2,3,4,5,6, 7,8,43,10,11,12,13,14,15,16,17,18,19,20,21, 56,0,1,2,3,4,5,6,7,8,9,10,11,12,13, 14,15,16,17,18,19,20,21,22,23,24,25,26,27,28, 0,30,31,0,1,2,0,1,2,3,7,8,0,0,43, 0,1,2,3,4,5,6,7,8,9,22,0,56,0,1, 2,3,29,30,0,32,33,34,35,36,37,38,39,40,41, 42,0,44,45,46,47,48,49,50,51,52,53,54,0,1, 2,0,0,29,0,7,8,67,4,5,6,68,69,39,28, 41,42,0,1,2,22,4,5,6,7,8,24,29,26,31, 32,33,34,35,36,37,38,39,40,41,42,0,44,45,46, 47,48,49,50,51,52,53,54,0,1,2,3,4,5,6, 7,8,9,10,11,12,68,69,0,1,2,3,4,5,6, 7,8,9,10,11,12,13,14,15,16,17,18,19,20,21, 22,23,24,25,26,27,28,56,30,0,1,2,0,1,2, 3,4,5,6,7,8,43,10,11,12,13,14,15,0,17, 18,19,20,21,56,0,1,2,3,4,5,6,7,8,9, 10,11,12,13,14,15,16,17,18,19,20,21,22,23,24, 25,26,27,28,0,30,0,1,2,0,1,2,3,7,8, 0,1,2,43,4,5,6,7,8,0,10,11,12,22,0, 0,56,0,1,2,29,7,8,32,33,34,35,36,37,38, 39,40,41,42,0,44,27,46,47,48,49,50,51,52,53, 54,0,56,0,1,2,0,1,2,45,7,8,0,43,68, 69,0,1,2,0,4,5,6,7,8,22,10,11,12,10, 11,12,29,0,22,32,33,34,35,36,37,38,39,40,41, 42,102,44,45,46,47,48,49,50,51,52,53,54,0,1, 2,0,29,0,0,7,8,0,1,2,3,68,69,10,11, 12,9,0,1,2,22,4,5,6,7,8,97,29,99,22, 32,33,34,35,36,37,38,39,40,41,42,0,44,0,46, 47,48,49,50,51,52,53,54,0,1,2,0,1,2,3, 7,8,0,1,2,9,68,69,0,1,2,3,4,5,6, 22,0,9,22,3,79,0,29,0,3,32,33,34,35,36, 37,38,39,40,41,42,95,44,22,46,47,48,49,50,51, 52,53,54,0,1,2,0,1,2,3,7,8,0,1,2, 9,68,69,0,1,2,3,4,5,6,22,0,9,22,0, 1,2,29,7,8,32,33,34,35,36,37,38,39,40,41, 42,0,44,0,46,47,48,49,50,51,52,53,54,0,1, 2,3,4,5,6,7,8,9,10,11,12,68,69,0,1, 2,3,4,5,6,7,8,9,10,11,12,13,14,15,16, 17,18,19,20,21,22,23,24,25,26,27,0,56,30,31, 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14, 15,16,17,18,19,20,21,22,23,24,25,26,27,0,0, 30,31,0,1,2,3,4,5,6,7,8,9,10,11,12, 13,14,15,16,17,18,19,20,21,22,23,24,25,26,30, 28,0,30,0,1,2,3,4,5,6,7,8,9,10,11, 12,13,14,15,16,17,18,19,20,21,22,23,24,25,26, 29,28,0,30,0,1,2,3,4,5,6,7,8,9,10, 11,12,13,14,15,16,17,18,19,20,21,22,23,24,25, 26,0,30,31,30,31,0,1,2,3,4,5,6,7,8, 9,10,11,12,13,14,15,16,17,18,19,20,21,22,23, 24,25,26,0,1,2,30,31,0,1,2,3,4,5,6, 7,8,9,10,11,12,13,14,15,16,17,18,19,20,21, 22,23,24,25,26,0,28,0,1,2,3,4,5,6,7, 8,9,10,11,12,13,14,15,16,17,18,19,20,21,22, 23,24,25,26,27,0,1,2,3,4,5,6,7,8,9, 10,11,12,13,14,15,16,17,18,19,20,21,22,23,24, 25,26,27,0,1,2,3,4,5,6,7,8,9,10,11, 12,13,14,15,16,17,18,19,20,21,22,23,24,25,26, 0,1,2,3,4,5,6,7,8,9,10,11,12,0,1, 2,43,0,1,2,3,4,5,6,7,8,9,10,11,12, 13,14,15,16,17,18,19,20,21,22,23,24,25,26,0, 1,2,3,4,5,6,7,8,9,10,11,12,0,1,2, 43,0,1,2,3,4,5,6,7,8,9,10,11,12,13, 14,15,16,17,18,19,20,21,22,23,24,25,26,0,1, 2,3,4,5,6,7,8,9,10,11,12,13,14,15,16, 17,18,19,20,21,22,23,24,25,26,0,0,1,2,3, 4,5,6,7,8,9,10,11,12,13,14,15,16,0,0, 0,0,22,0,23,24,25,26,27,29,7,8,32,33,34, 35,36,37,38,39,40,41,42,22,44,27,46,47,48,49, 50,51,52,53,54,0,1,2,0,1,2,3,4,5,6, 7,8,9,68,69,0,1,2,3,4,5,6,22,0,9, 22,0,0,0,29,0,4,32,33,34,35,36,37,38,39, 40,41,42,0,44,22,46,47,48,49,50,51,52,53,54, 29,29,0,32,33,34,35,36,37,38,22,40,10,11,12, 44,0,29,0,3,32,33,34,35,36,37,38,39,40,41, 42,0,44,15,46,47,48,49,50,51,52,53,54,0,1, 2,0,1,2,3,79,0,0,22,0,9,68,69,0,1, 2,3,4,5,6,22,95,9,22,94,16,98,29,22,22, 32,33,34,35,36,37,38,39,40,41,42,0,44,0,46, 47,48,49,50,51,52,53,54,0,1,2,3,4,5,6, 7,8,9,10,11,12,13,14,15,16,29,0,29,0,0, 0,23,24,25,26,27,28,39,30,41,42,0,0,1,2, 16,4,5,6,7,8,43,10,11,12,13,14,15,16,17, 18,19,20,21,56,0,1,2,3,4,5,6,7,8,9, 10,11,12,13,14,15,16,56,0,56,0,0,0,23,24, 25,26,27,28,9,30,10,11,12,0,1,2,0,4,5, 6,7,8,43,10,11,12,13,14,15,16,17,18,19,20, 21,56,0,1,2,3,4,5,6,7,8,9,10,11,12, 13,14,15,16,56,99,0,0,0,0,23,24,25,26,27, 28,9,30,10,11,12,0,1,2,0,4,5,6,7,8, 43,10,11,12,13,14,15,28,17,18,19,20,21,56,0, 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15, 16,17,18,19,20,21,0,23,24,25,26,0,1,2,3, 4,5,6,7,8,9,10,11,12,13,14,15,16,17,18, 19,20,21,27,23,24,25,26,0,1,2,3,4,5,6, 7,8,9,10,11,12,13,14,15,16,17,18,19,20,21, 0,23,24,25,26,0,1,2,3,4,5,6,7,8,9, 10,11,12,13,14,15,16,17,18,19,20,21,27,23,24, 25,26,0,1,2,3,4,5,6,7,8,9,10,11,12, 13,14,15,16,17,18,19,20,21,0,23,24,25,26,0, 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15, 16,17,18,19,20,21,27,23,24,25,26,0,1,2,3, 4,5,6,7,8,9,10,11,12,13,14,15,16,17,18, 19,20,21,0,23,24,25,26,0,1,2,3,4,5,6, 7,8,9,10,11,12,13,14,15,16,17,18,19,20,21, 0,23,24,25,26,0,1,2,3,4,5,6,7,8,0, 10,11,12,13,14,15,16,0,0,24,25,26,0,23,24, 25,26,27,28,0,30,13,14,0,0,1,2,3,4,5, 6,7,8,43,10,11,12,13,14,15,16,17,18,19,20, 21,56,23,24,25,26,0,1,2,3,4,5,6,7,8, 0,10,11,12,13,14,15,16,17,18,19,20,21,0,23, 24,25,26,0,1,2,0,4,5,6,7,8,0,10,11, 12,13,14,15,16,22,9,0,0,0,0,23,24,25,26, 27,28,9,30,9,13,14,0,1,2,28,4,5,6,7, 8,43,10,11,12,13,14,15,16,30,0,0,0,3,56, 23,24,25,26,27,28,9,30,0,0,0,0,1,2,0, 4,5,6,7,8,43,10,11,12,13,14,15,16,17,18, 19,20,21,56,23,24,25,26,0,1,2,27,4,5,6, 7,8,0,10,11,12,13,14,15,16,17,18,19,20,21, 0,23,24,25,26,0,1,2,3,4,5,6,7,8,9, 10,11,12,13,14,15,16,17,18,19,20,21,22,23,0, 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15, 16,17,18,19,20,21,22,23,0,1,2,3,4,5,6, 7,8,9,10,11,12,13,14,15,16,0,0,0,1,2, 3,23,24,25,26,27,9,0,30,31,0,1,2,3,4, 5,6,7,8,9,10,11,12,13,14,15,16,31,0,0, 1,2,3,23,24,25,26,27,9,0,30,31,0,1,2, 3,4,5,6,7,8,9,10,11,12,13,14,15,16,0, 0,0,1,2,3,23,24,25,26,27,9,43,30,31,0, 1,2,0,4,5,6,7,8,22,10,11,12,13,14,15, 16,17,18,19,20,21,0,23,24,25,26,0,1,2,27, 4,5,6,7,8,0,10,11,12,13,14,15,16,17,18, 19,20,21,0,23,24,25,26,0,1,2,3,4,5,6, 7,8,9,10,11,12,13,14,15,16,22,0,1,2,3, 0,23,24,25,26,9,28,98,30,0,1,2,3,4,5, 6,7,8,9,10,11,12,13,14,15,16,0,0,1,2, 3,31,23,24,25,26,9,28,0,30,0,1,2,3,4, 5,6,7,8,9,10,11,12,13,14,15,16,0,0,1, 2,3,0,23,24,25,26,9,28,43,30,0,1,2,3, 4,5,6,7,8,9,10,11,12,13,14,15,16,17,18, 19,20,21,31,23,0,1,2,3,4,5,6,7,8,9, 10,11,12,13,14,15,16,17,18,19,20,21,0,23,0, 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15, 16,17,18,19,20,21,0,23,0,1,2,3,4,5,6, 7,8,9,10,11,12,13,14,15,16,17,18,19,20,21, 0,23,0,1,2,3,4,5,6,7,8,9,10,11,12, 13,14,15,16,17,18,19,20,21,0,23,0,1,2,3, 4,5,6,7,8,9,10,11,12,13,14,15,16,17,18, 19,20,21,22,0,1,2,3,4,5,6,7,8,9,10, 11,12,13,14,15,16,17,18,19,20,21,22,0,1,2, 3,4,5,6,7,8,9,10,11,12,13,14,15,16,0, 0,1,2,3,0,23,24,25,26,9,0,0,30,31,0, 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15, 16,27,0,1,2,3,0,23,24,25,26,9,43,0,30, 31,0,1,2,3,4,5,6,7,8,9,10,11,12,13, 14,15,16,27,0,0,1,2,3,23,24,25,26,9,9, 0,30,31,0,1,2,3,4,5,6,7,8,22,10,11, 12,13,14,15,16,0,0,22,0,3,0,23,24,25,26, 27,0,0,30,31,4,5,6,7,8,0,10,11,12,13, 14,15,16,28,17,18,19,20,21,23,24,25,26,27,28, 0,30,22,3,0,0,1,2,45,4,5,6,7,8,43, 10,11,12,13,14,15,0,17,18,19,20,21,56,0,1, 2,3,4,5,6,7,8,9,10,11,12,13,14,15,16, 0,0,0,27,0,29,23,24,25,26,27,0,1,2,3, 4,5,6,7,8,9,10,11,12,13,14,15,16,27,29, 28,30,0,29,23,24,25,26,27,0,1,2,3,4,5, 6,7,8,0,10,11,12,13,14,15,16,0,9,0,0, 28,0,23,24,25,26,0,28,9,30,4,5,6,7,8, 0,10,11,12,13,14,15,16,17,18,19,20,21,30,23, 24,25,26,0,1,2,3,4,5,6,7,8,9,10,11, 12,13,14,15,0,17,18,19,20,21,22,0,1,2,3, 4,5,6,7,8,9,10,11,12,13,14,15,23,17,18, 19,20,21,22,0,1,2,3,4,5,6,7,8,0,10, 11,12,13,14,15,16,17,18,19,20,21,0,23,0,1, 2,3,4,5,6,7,8,9,10,11,12,13,14,15,16, 17,18,19,20,21,0,1,2,3,4,5,6,7,8,9, 10,11,12,13,14,15,16,17,18,19,20,21,0,1,2, 3,4,5,6,7,8,9,10,11,12,13,14,15,16,17, 18,19,20,21,0,1,2,3,4,5,6,7,8,9,10, 11,12,13,14,15,16,17,18,19,20,21,0,1,2,3, 4,5,6,7,8,9,10,11,12,13,14,15,16,17,18, 19,20,21,0,1,2,3,4,5,6,7,8,0,10,11, 12,13,14,15,16,0,9,0,1,2,3,23,24,25,26, 0,9,0,30,31,0,1,2,0,4,5,6,7,8,22, 10,11,12,13,14,15,16,22,0,0,1,2,3,23,24, 25,26,27,9,0,30,31,0,1,2,0,4,5,6,7, 8,22,10,11,12,13,14,15,16,0,0,22,0,3,0, 23,24,25,26,27,0,0,30,31,4,5,6,7,8,0, 10,11,12,13,14,15,16,17,18,19,20,21,28,23,24, 25,26,0,1,2,3,4,5,6,7,8,9,10,11,12, 13,14,15,16,0,0,1,2,3,0,23,24,25,26,9, 80,0,56,83,84,85,86,87,88,89,90,91,92,93,0, 43,0,1,2,3,4,5,6,7,8,9,10,11,12,13, 14,15,16,0,0,1,2,3,104,23,24,25,26,9,55, 0,57,58,59,60,61,62,63,64,65,66,22,0,0,43, 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14, 15,16,0,0,0,1,2,3,23,24,25,26,29,9,0, 32,33,34,35,36,37,38,0,40,22,0,22,45,43,4, 5,6,29,29,0,0,0,0,55,0,57,58,59,60,61, 62,63,64,65,66,0,29,94,0,32,33,34,35,36,37, 38,22,40,29,28,28,32,33,34,35,36,37,38,0,40, 22,0,55,28,57,58,59,60,61,62,63,64,65,66,55, 0,57,58,59,60,61,62,63,64,65,66,0,1,2,3, 4,5,6,7,8,0,10,11,12,13,14,15,16,0,9, 30,45,0,0,23,24,25,26,27,0,1,2,9,4,5, 6,7,8,28,10,11,12,13,14,15,16,28,0,1,2, 3,28,23,24,25,26,9,28,0,30,0,1,2,0,4, 5,6,7,8,0,10,11,12,13,14,15,16,0,0,1, 2,3,0,23,24,25,26,9,28,0,30,0,1,2,3, 4,5,6,7,8,9,10,11,12,13,14,15,0,17,18, 19,20,21,0,1,2,3,4,5,6,7,8,9,10,11, 12,13,14,15,22,17,18,19,20,21,0,1,2,3,4, 5,6,7,8,9,10,11,12,13,14,15,0,17,18,19, 20,21,0,1,2,3,4,5,6,7,8,9,10,11,12, 13,14,15,22,17,18,19,20,21,0,1,2,3,4,5, 6,7,8,9,10,11,12,13,14,15,0,17,18,19,20, 21,0,1,2,3,4,5,6,7,8,9,10,11,12,13, 14,0,0,17,18,19,20,21,22,0,1,2,3,4,5, 6,7,8,9,10,11,12,13,14,22,45,17,18,19,20, 21,22,0,1,2,0,4,5,6,7,8,0,10,11,12, 13,14,15,16,17,18,19,20,21,0,23,0,1,2,0, 4,5,6,7,8,30,10,11,12,13,14,15,16,17,18, 19,20,21,0,23,0,1,2,29,4,5,6,7,8,30, 10,11,12,13,14,15,16,0,0,1,2,3,0,23,24, 25,26,9,30,0,30,31,0,1,2,0,4,5,6,7, 8,0,10,11,12,13,14,15,16,27,0,1,2,3,0, 23,24,25,26,9,0,0,30,31,0,1,2,3,4,5, 6,7,8,0,10,11,12,13,14,15,16,27,9,22,0, 0,45,23,24,25,26,0,1,2,3,4,5,6,0,1, 2,28,4,5,6,7,8,43,10,11,12,13,14,15,16, 0,0,0,0,0,0,23,24,25,26,27,0,1,2,94, 4,5,6,7,8,0,10,11,12,13,14,15,16,28,28, 28,28,28,28,23,24,25,26,27,0,1,2,3,4,5, 6,7,8,9,10,11,12,13,14,0,0,17,18,19,20, 21,0,1,2,3,4,5,6,7,8,9,10,11,12,13, 14,22,22,17,18,19,20,21,0,1,2,3,4,5,6, 7,8,9,10,11,12,13,14,0,0,17,18,19,20,21, 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14, 0,0,17,18,19,20,21,0,1,2,3,4,5,6,7, 8,9,10,11,12,13,14,0,0,17,18,19,20,21,0, 0,0,0,4,5,6,7,8,0,10,11,12,13,14,15, 16,0,17,18,19,20,21,23,24,25,26,27,0,27,30, 31,0,1,2,0,4,5,6,7,8,0,10,11,12,13, 14,15,16,0,0,1,2,3,0,23,24,25,26,9,0, 1,2,3,29,0,0,1,2,9,4,5,6,7,8,43, 10,11,12,13,14,15,16,0,30,0,0,0,3,23,24, 25,26,0,1,2,3,4,5,6,0,0,9,0,4,5, 6,7,8,43,10,11,12,13,14,15,16,31,17,18,19, 20,21,23,24,25,26,0,28,0,30,0,1,2,3,4, 5,6,7,8,9,10,11,12,0,0,0,3,17,18,19, 20,21,22,0,1,2,3,4,5,6,7,8,9,10,11, 12,81,82,0,0,17,18,19,20,21,22,0,1,2,3, 4,5,6,7,8,0,10,11,12,13,14,0,0,17,18, 19,20,21,0,30,0,0,4,5,6,7,8,0,10,11, 12,13,14,15,16,17,18,19,20,21,0,23,0,0,4, 5,6,7,8,28,10,11,12,13,14,15,16,0,0,1, 2,3,0,23,24,25,26,9,0,27,30,31,4,5,6, 7,8,0,10,11,12,13,14,15,16,28,0,0,0,3, 28,23,24,25,26,27,0,1,2,3,4,5,6,7,8, 9,10,11,12,0,0,0,3,17,18,19,20,21,0,1, 2,3,4,5,6,7,8,9,10,11,12,0,0,0,3, 17,18,19,20,21,0,1,2,3,4,5,6,7,8,9, 10,11,12,0,0,0,0,17,18,19,20,21,0,1,2, 3,4,5,6,7,8,9,10,11,12,0,0,0,0,17, 18,19,20,21,0,1,2,3,4,5,6,7,8,9,10, 11,12,0,0,0,0,17,18,19,20,21,0,1,2,9, 4,5,6,7,8,0,10,11,12,13,14,0,22,17,18, 19,20,21,0,1,2,0,4,5,6,7,8,0,10,11, 12,13,14,28,0,17,18,19,20,21,0,0,0,0,4, 5,6,7,8,28,10,11,12,13,14,15,16,17,18,19, 20,21,0,0,0,0,4,5,6,7,8,28,10,11,12, 13,14,15,16,0,0,0,0,3,3,23,24,25,26,9, 9,27,29,0,29,32,33,34,35,36,37,38,22,40,39, 43,41,42,0,29,0,1,2,3,4,5,6,7,8,0, 10,11,12,0,0,0,0,17,18,19,20,21,0,0,0, 27,4,5,6,7,8,0,10,11,12,13,14,15,0,17, 18,19,20,21,28,0,0,0,0,0,80,27,29,83,84, 85,86,87,88,89,90,91,92,93,0,1,2,29,4,5, 6,7,8,27,10,11,12,39,29,41,42,17,18,19,20, 21,0,1,2,0,4,5,6,7,8,0,10,11,12,0, 0,0,0,17,18,19,20,21,0,0,0,0,4,5,6, 7,8,28,10,11,12,13,14,28,0,17,18,19,20,21, 0,0,0,3,0,0,27,0,28,9,31,0,1,2,3, 4,5,6,7,8,0,0,0,0,45,3,0,0,27,3, 0,9,31,0,55,9,57,58,59,60,61,62,63,64,65, 66,45,27,0,0,0,0,0,0,0,0,55,0,57,58, 59,60,61,62,63,64,65,66,0,0,0,0,0,0,0, 55,27,57,58,59,60,61,62,63,64,65,66,0,0,0, 0,0,0,0,0,27,0,0,0,31,0,0,0,0,55, 0,57,58,59,60,61,62,63,64,65,66,96,0,27,0, 0,0,31,55,0,57,58,59,60,61,62,63,64,65,66, 0,1,2,3,4,5,6,7,8,9,96,55,0,57,58, 59,60,61,62,63,64,65,66,0,0,0,0,4,5,6, 7,8,0,10,11,12,0,0,0,0,17,18,19,20,21, 0,0,0,0,0,0,0,0,29,0,0,32,33,34,35, 36,37,38,0,40,0,0,0,44,0,1,2,3,4,5, 6,7,8,9,0,1,2,3,4,5,6,7,8,9,0, 0,22,0,1,2,3,4,5,6,7,8,9,0,79,0, 1,2,3,4,5,6,7,8,9,0,1,2,3,0,95, 0,0,0,9,0,1,2,3,0,0,0,0,0,9,0, 0,22,0,4,5,6,7,8,29,0,0,22,0,0,0, 0,0,0,29,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0 }; const unsigned short CLASS_HEADER term_action[] = {0, 330,4769,4574,5177,5177,5177,242,1213,314,208, 167,245,245,273,5177,219,355,262,262,262, 266,266,3106,269,269,269,1912,5336,5177,834, 5339,5353,5193,5196,5200,5202,5201,5198,5199,689, 5197,1055,5388,5212,455,556,5189,5187,5188,5180, 5181,5182,5183,5185,5186,906,5389,5233,5234,5235, 5231,5230,5229,5232,5236,5238,5239,864,5177,5177, 621,594,1517,902,835,2874,625,3173,1009,38, 269,3018,1625,330,4769,4574,299,4737,4705,299, 299,299,299,299,299,299,299,299,299,299, 5305,5176,266,245,245,3106,262,262,262,538, 5336,534,834,356,5354,5193,5196,5200,5202,5201, 5198,5199,689,5197,1055,5388,129,455,556,5189, 5187,5188,5180,5181,5182,5183,5185,5186,906,288, 5233,5234,5235,5231,5230,5229,5232,5236,5238,5239, 864,211,40,621,594,1517,902,835,2874,625, 3173,1009,3872,5177,3018,1625,330,4769,4574,242, 266,324,208,1842,4972,4914,4943,5177,214,273, 242,242,209,262,262,262,266,266,3106,269, 269,269,35,5336,5282,834,223,332,5193,5196, 5200,5202,5201,5198,5199,689,5197,522,485,5177, 455,556,5189,5187,5188,5180,5181,5182,5183,5185, 5186,906,556,5233,5234,5235,5231,5230,5229,5232, 5236,5238,5239,864,5177,1582,621,594,1517,902, 835,2874,625,3173,1009,330,4769,4574,5177,298, 352,1291,298,298,298,298,298,298,298,298, 298,298,298,1340,266,244,244,3106,262,262, 262,590,5336,424,834,5222,332,5193,5196,5200, 5202,5201,5198,5199,689,5197,1055,5388,1216,455, 556,5189,5187,5188,5180,5181,5182,5183,5185,5186, 906,5177,5233,5234,5235,5231,5230,5229,5232,5236, 5238,5239,864,5177,5177,621,594,1517,902,835, 2874,625,3173,1009,330,4769,4574,273,243,243, 34,262,262,262,266,266,34,269,269,269, 5311,169,242,242,208,242,3106,1301,208,34, 213,5336,284,834,3261,333,5193,5196,5200,5202, 5201,5198,5199,689,5197,1055,5388,4193,455,556, 5189,5187,5188,5180,5181,5182,5183,5185,5186,906, 5394,5233,5234,5235,5231,5230,5229,5232,5236,5238, 5239,864,5177,5393,621,594,1517,902,835,2874, 625,3173,1009,180,4769,4574,273,243,243,33, 262,262,262,266,266,33,269,269,269,5219, 168,242,242,208,28,3106,325,1016,33,218, 5336,354,834,9034,1016,5193,5196,5200,5202,5201, 5198,5199,689,5197,1055,5388,126,455,556,5189, 5187,5188,5180,5181,5182,5183,5185,5186,906,5177, 5233,5234,5235,5231,5230,5229,5232,5236,5238,5239, 864,83,5177,621,594,1517,902,835,2874,625, 3173,1009,330,5177,4769,4574,273,242,242,208, 262,262,262,266,266,219,269,269,269,66, 242,1340,268,208,1469,3106,4972,4914,4943,210, 5336,424,834,1341,1342,5193,5196,5200,5202,5201, 5198,5199,689,5197,1055,5388,590,455,556,5189, 5187,5188,5180,5181,5182,5183,5185,5186,1258,5177, 5177,4769,4574,266,243,243,34,262,262,262, 864,2122,34,621,594,1517,902,835,2874,625, 3173,1009,3106,5177,114,34,1103,5336,242,1618, 5351,1259,5193,5196,5200,5202,5201,5198,5199,689, 5197,1055,5388,291,455,556,5189,5187,5188,5180, 5181,5182,5183,5185,5186,1258,5177,346,4769,4574, 266,243,243,33,262,262,262,1616,3833,33, 621,594,1517,1615,1617,2874,625,3173,1009,3106, 3018,1625,33,5374,5177,1219,5212,1263,69,5193, 5196,5200,5202,5201,5198,5199,689,5197,1055,5388, 97,455,5177,5189,5187,5188,5180,5181,5182,5183, 5185,5186,5237,1025,5233,5234,5235,5231,5230,5229, 5232,5236,5238,5239,297,243,243,34,262,262, 262,266,266,34,269,269,269,279,279,282, 284,273,273,273,273,273,34,286,290,288, 290,294,294,5177,294,294,1213,5177,286,242, 242,209,262,262,262,266,266,294,269,269, 269,279,279,282,284,273,273,273,273,273, 294,297,243,243,33,262,262,262,266,266, 33,269,269,269,279,279,282,284,273,273, 273,273,273,33,286,290,288,290,294,294, 5177,294,294,322,4769,4574,252,242,242,209, 4885,4856,5177,5177,294,269,242,242,208,262, 262,262,266,266,210,3217,5177,294,262,242, 242,209,5212,1514,5177,5193,5196,5200,5202,5201, 5198,5199,689,5197,1055,5388,5177,455,1469,5189, 5187,5188,5180,5181,5182,5183,5185,5186,5177,4769, 4574,5177,292,5213,267,4885,4856,1333,4972,4914, 4943,4798,4827,452,4002,1345,5392,269,245,245, 3217,262,262,262,266,266,2974,5212,3525,5302, 5193,5196,5200,5202,5201,5198,5199,689,5197,1055, 5388,5177,455,1469,5189,5187,5188,5180,5181,5182, 5183,5185,5186,273,242,242,208,262,262,262, 266,266,218,269,269,269,4798,4827,297,243, 243,34,262,262,262,266,266,34,269,269, 269,279,279,282,284,273,273,273,273,273, 34,286,290,288,290,312,312,5408,312,166, 244,244,284,242,242,209,262,262,262,266, 266,312,269,269,269,279,279,282,5177,273, 273,273,273,273,312,297,243,243,33,262, 262,262,266,266,33,269,269,269,279,279, 282,284,273,273,273,273,273,33,286,290, 288,290,312,312,342,312,5177,4769,4574,255, 242,242,209,4885,4856,273,245,245,312,262, 262,262,266,266,5177,269,269,269,3217,272, 5177,312,5177,5423,5424,5212,4737,4705,5193,5196, 5200,5202,5201,5198,5199,689,5197,1055,5388,202, 455,5277,5189,5187,5188,5180,5181,5182,5183,5185, 5186,5177,5408,5177,4769,4574,255,5423,5424,556, 4885,4856,5177,2612,4798,4827,273,244,244,273, 262,262,262,266,266,3217,269,269,269,4672, 4639,4606,5212,5177,3305,5193,5196,5200,5202,5201, 5198,5199,689,5197,1055,5388,2548,455,1469,5189, 5187,5188,5180,5181,5182,5183,5185,5186,5177,4769, 4574,5177,5213,277,5177,4885,4856,255,243,243, 10361,4798,4827,4672,4639,4606,3349,269,244,244, 3217,262,262,262,266,266,1301,5212,353,1982, 5193,5196,5200,5202,5201,5198,5199,689,5197,1055, 5388,5177,455,5177,5189,5187,5188,5180,5181,5182, 5183,5185,5186,318,4769,4574,297,243,243,34, 4885,4856,252,245,245,34,4798,4827,266,242, 242,208,262,262,262,3217,5177,219,34,1551, 1216,242,5212,5177,1292,5193,5196,5200,5202,5201, 5198,5199,689,5197,1055,5388,1271,455,2498,5189, 5187,5188,5180,5181,5182,5183,5185,5186,336,4769, 4574,297,243,243,33,4885,4856,252,244,244, 33,4798,4827,266,242,242,208,262,262,262, 3217,271,218,33,262,245,245,5212,4737,4705, 5193,5196,5200,5202,5201,5198,5199,689,5197,1055, 5388,5177,455,5177,5189,5187,5188,5180,5181,5182, 5183,5185,5186,273,242,242,208,262,262,262, 266,266,214,269,269,269,4798,4827,297,243, 243,34,262,262,262,266,266,34,269,269, 269,279,279,282,284,273,273,273,273,273, 34,286,290,288,290,86,5177,5409,86,86, 297,243,243,33,262,262,262,266,266,33, 269,269,269,279,279,282,284,273,273,273, 273,273,33,286,290,288,290,86,5177,135, 86,86,297,243,243,34,262,262,262,266, 266,34,269,269,269,279,279,282,284,273, 273,273,273,273,34,286,290,288,290,1023, 223,5177,223,297,243,243,33,262,262,262, 266,266,33,269,269,269,279,279,282,284, 273,273,273,273,273,33,286,290,288,290, 1298,223,5177,223,297,243,243,34,262,262, 262,266,266,34,269,269,269,279,279,282, 284,273,273,273,273,273,34,286,290,288, 290,5177,2568,5301,126,126,297,243,243,33, 262,262,262,266,266,33,269,269,269,279, 279,282,284,273,273,273,273,273,33,286, 290,288,290,262,244,244,126,126,297,243, 243,10361,262,262,262,266,266,3349,269,269, 269,279,279,282,284,273,273,273,273,273, 1982,286,290,288,290,5177,312,297,243,243, 34,262,262,262,266,266,34,269,269,269, 279,279,282,284,273,273,273,273,273,34, 286,290,288,290,319,297,243,243,33,262, 262,262,266,266,33,269,269,269,279,279, 282,284,273,273,273,273,273,33,286,290, 288,290,319,297,243,243,34,262,262,262, 266,266,34,269,269,269,279,279,282,284, 273,273,273,273,273,34,286,290,288,290, 273,242,242,208,262,262,262,266,266,213, 269,269,269,255,245,245,313,297,243,243, 33,262,262,262,266,266,33,269,269,269, 279,279,282,284,273,273,273,273,273,33, 286,290,288,290,273,242,242,208,262,262, 262,266,266,210,269,269,269,255,244,244, 313,292,243,243,34,262,262,262,266,266, 34,269,269,269,279,279,282,284,273,273, 273,273,273,34,286,290,288,290,292,243, 243,33,262,262,262,266,266,33,269,269, 269,279,279,282,284,273,273,273,273,273, 33,286,290,288,290,212,273,242,242,208, 262,262,262,266,266,218,269,269,269,279, 279,282,284,5177,5177,5177,5177,3217,270,286, 290,288,290,319,5212,4737,4705,5193,5196,5200, 5202,5201,5198,5199,689,5197,1055,5388,3393,455, 5377,5189,5187,5188,5180,5181,5182,5183,5185,5186, 5177,4769,4574,269,243,243,34,262,262,262, 266,266,34,4798,4827,266,242,242,208,262, 262,262,3106,5177,214,34,5177,5177,316,5212, 5177,1377,5193,5196,5200,5202,5201,5198,5199,689, 5197,1055,5388,5177,455,3437,5189,5187,5188,5180, 5181,5182,5183,5185,5186,5212,5213,276,5193,5196, 5200,5202,5201,5198,5199,3217,5197,4672,4639,4606, 937,5177,5212,285,1263,5193,5196,5200,5202,5201, 5198,5199,689,5197,1055,5388,5177,455,4193,5189, 5187,5188,5180,5181,5182,5183,5185,5186,348,4769, 4574,252,243,243,34,1216,60,5177,3910,286, 34,4798,4827,266,242,242,208,262,262,262, 3106,1271,213,34,1712,4033,731,5212,3481,2052, 5193,5196,5200,5202,5201,5198,5199,689,5197,1055, 5388,5177,455,5177,5189,5187,5188,5180,5181,5182, 5183,5185,5186,273,242,242,208,262,262,262, 266,266,210,269,269,269,279,279,282,284, 728,5177,5213,5177,287,5177,286,290,288,290, 312,312,452,312,1378,5392,5177,286,245,245, 4033,262,262,262,266,266,312,269,269,269, 279,279,282,284,273,273,273,273,273,312, 273,242,242,208,262,262,262,266,266,218, 269,269,269,279,279,282,284,5418,5177,5417, 13,275,5177,286,290,288,290,312,312,1212, 312,4672,4639,4606,286,244,244,5177,262,262, 262,266,266,312,269,269,269,279,279,282, 284,273,273,273,273,273,312,273,242,242, 208,262,262,262,266,266,213,269,269,269, 279,279,282,284,5407,1014,5177,29,274,5177, 286,290,288,290,312,312,1297,312,4672,4639, 4606,284,245,245,5177,262,262,262,266,266, 312,269,269,269,279,279,282,1462,273,273, 273,273,273,312,294,242,242,208,262,262, 262,266,266,218,269,269,269,279,279,282, 284,273,273,273,273,273,5177,286,290,288, 290,294,242,242,208,262,262,262,266,266, 213,269,269,269,279,279,282,284,273,273, 273,273,273,5376,286,290,288,290,294,242, 242,208,262,262,262,266,266,210,269,269, 269,279,279,282,284,273,273,273,273,273, 5177,286,290,288,290,292,242,242,208,262, 262,262,266,266,210,269,269,269,279,279, 282,284,273,273,273,273,273,5375,286,290, 288,290,292,242,242,208,262,262,262,266, 266,219,269,269,269,279,279,282,284,273, 273,273,273,273,5177,286,290,288,290,292, 242,242,208,262,262,262,266,266,218,269, 269,269,279,279,282,284,273,273,273,273, 273,5373,286,290,288,290,292,242,242,208, 262,262,262,266,266,214,269,269,269,279, 279,282,284,273,273,273,273,273,5177,286, 290,288,290,292,242,242,208,262,262,262, 266,266,213,269,269,269,279,279,282,284, 273,273,273,273,273,292,286,290,288,290, 273,242,242,209,262,262,262,266,266,5177, 269,269,269,279,279,282,284,5177,282,290, 3833,290,5177,286,290,288,290,312,312,5177, 312,4264,4229,5177,294,242,242,209,262,262, 262,266,266,312,269,269,269,279,279,282, 284,273,273,273,273,273,312,286,290,288, 290,292,242,242,209,262,262,262,266,266, 5177,269,269,269,279,279,282,284,273,273, 273,273,273,5177,286,290,288,290,273,245, 245,5177,262,262,262,266,266,13,269,269, 269,279,279,282,284,3481,1212,283,31,337, 5177,286,290,288,290,312,312,3569,312,3613, 4264,4229,273,244,244,334,262,262,262,266, 266,312,269,269,269,279,279,282,284,3657, 5177,5177,30,1551,312,286,290,288,290,312, 312,1297,312,5177,5177,5177,294,245,245,5177, 262,262,262,266,266,312,269,269,269,279, 279,282,284,273,273,273,273,273,312,286, 290,288,290,294,244,244,2918,262,262,262, 266,266,5177,269,269,269,279,279,282,284, 273,273,273,273,273,5177,286,290,288,290, 288,243,243,34,262,262,262,266,266,34, 269,269,269,279,279,282,284,273,273,273, 273,273,34,286,288,243,243,33,262,262, 262,266,266,33,269,269,269,279,279,282, 284,273,273,273,273,273,33,286,273,242, 242,208,262,262,262,266,266,218,269,269, 269,279,279,282,284,5177,5177,252,242,242, 208,286,290,288,290,86,219,5177,86,86, 273,242,242,208,262,262,262,266,266,213, 269,269,269,279,279,282,284,5300,35,252, 242,242,208,286,290,288,290,86,218,5177, 86,86,273,242,242,208,262,262,262,266, 266,210,269,269,269,279,279,282,284,350, 5177,252,243,243,33,286,290,288,290,86, 33,1064,86,86,292,245,245,5177,262,262, 262,266,266,33,269,269,269,279,279,282, 284,273,273,273,273,273,5177,286,290,288, 290,292,244,244,5223,262,262,262,266,266, 5177,269,269,269,279,279,282,284,273,273, 273,273,273,234,286,290,288,290,273,242, 242,208,262,262,262,266,266,210,269,269, 269,279,279,282,284,2218,252,242,242,208, 5177,286,290,288,290,214,223,1456,223,273, 242,242,208,262,262,262,266,266,218,269, 269,269,279,279,282,284,5177,252,242,242, 208,5290,286,290,288,290,213,223,5177,223, 273,242,242,208,262,262,262,266,266,213, 269,269,269,279,279,282,284,5177,252,242, 242,208,5177,286,290,288,290,210,223,5361, 223,288,242,242,208,262,262,262,266,266, 210,269,269,269,279,279,282,284,273,273, 273,273,273,5245,286,288,242,242,208,262, 262,262,266,266,219,269,269,269,279,279, 282,284,273,273,273,273,273,5177,286,288, 242,242,208,262,262,262,266,266,218,269, 269,269,279,279,282,284,273,273,273,273, 273,5177,286,288,242,242,208,262,262,262, 266,266,214,269,269,269,279,279,282,284, 273,273,273,273,273,5177,286,288,242,242, 208,262,262,262,266,266,213,269,269,269, 279,279,282,284,273,273,273,273,273,5177, 286,286,243,243,34,262,262,262,266,266, 34,269,269,269,279,279,282,284,273,273, 273,273,273,34,286,243,243,33,262,262, 262,266,266,33,269,269,269,279,279,282, 284,273,273,273,273,273,33,273,242,242, 208,262,262,262,266,266,210,269,269,269, 279,279,282,284,5177,262,242,242,208,5177, 286,290,288,290,210,5177,5177,126,126,273, 242,242,208,262,262,262,266,266,218,269, 269,269,279,279,282,284,5283,262,242,242, 208,5177,286,290,288,290,219,5360,5177,126, 126,273,242,242,208,262,262,262,266,266, 213,269,269,269,279,279,282,284,5284,334, 262,243,243,34,286,290,288,290,1212,34, 5177,126,126,273,242,242,209,262,262,262, 266,266,34,269,269,269,279,279,282,284, 5177,28,542,5177,1016,5177,286,290,288,290, 86,273,279,86,86,262,262,262,266,266, 5177,269,269,269,279,279,282,284,1463,941, 4333,4299,4367,4401,286,290,288,290,312,312, 242,312,3701,209,5177,284,244,244,938,262, 262,262,266,266,312,269,269,269,279,279, 282,5177,273,273,273,273,273,312,273,242, 242,208,262,262,262,266,266,213,269,269, 269,279,279,282,284,5177,5177,5177,5372,5177, 1220,286,290,288,290,319,273,242,242,208, 262,262,262,266,266,210,269,269,269,279, 279,282,284,5257,1025,431,1023,5177,451,286, 290,288,290,319,273,242,242,209,262,262, 262,266,266,334,269,269,269,279,279,282, 284,5177,3613,347,335,5413,5177,286,290,288, 290,294,223,1297,223,262,262,262,266,266, 5177,269,269,269,279,279,282,284,273,273, 273,273,273,5001,286,290,288,290,284,243, 243,34,262,262,262,266,266,34,269,269, 269,279,279,282,289,273,273,273,273,273, 34,284,243,243,33,262,262,262,266,266, 33,269,269,269,279,279,282,3872,273,273, 273,273,273,33,288,242,242,209,262,262, 262,266,266,5177,269,269,269,279,279,282, 284,273,273,273,273,273,5177,286,286,242, 242,208,262,262,262,266,266,219,269,269, 269,279,279,282,284,273,273,273,273,273, 286,242,242,208,262,262,262,266,266,218, 269,269,269,279,279,282,284,273,273,273, 273,273,286,242,242,208,262,262,262,266, 266,214,269,269,269,279,279,282,284,273, 273,273,273,273,286,242,242,208,262,262, 262,266,266,213,269,269,269,279,279,282, 284,273,273,273,273,273,286,242,242,208, 262,262,262,266,266,210,269,269,269,279, 279,282,284,273,273,273,273,273,273,242, 242,209,262,262,262,266,266,5177,269,269, 269,279,279,282,284,5177,1212,262,243,243, 33,286,290,288,290,233,33,5177,126,126, 273,245,245,5177,262,262,262,266,266,33, 269,269,269,279,279,282,284,2288,5177,255, 243,243,34,286,290,288,290,86,34,5177, 86,86,273,244,244,5177,262,262,262,266, 266,34,269,269,269,279,279,282,284,338, 66,2358,5177,34,5177,286,290,288,290,86, 292,28,86,86,262,262,262,266,266,5177, 269,269,269,279,279,282,284,273,273,273, 273,273,983,286,290,288,290,273,242,242, 208,262,262,262,266,266,218,269,269,269, 279,279,282,284,331,262,242,242,208,5177, 286,290,288,290,218,5477,5177,1212,5481,5482, 5478,5479,5486,5488,5487,5480,5483,5484,5485,5177, 313,273,242,242,208,262,262,262,266,266, 213,269,269,269,279,279,282,284,137,255, 243,243,33,738,286,290,288,290,33,5237, 5177,5233,5234,5235,5231,5230,5229,5232,5236,5238, 5239,33,5177,331,313,273,242,242,208,262, 262,262,266,266,210,269,269,269,279,279, 282,284,5177,5177,297,243,243,10278,286,290, 288,290,5212,3349,5177,5193,5196,5200,5202,5201, 5198,5199,5177,5197,2428,266,1982,5150,313,262, 262,262,1560,14,340,5177,5177,5177,5237,5177, 5233,5234,5235,5231,5230,5229,5232,5236,5238,5239, 5177,5212,143,5177,5193,5196,5200,5202,5201,5198, 5199,2664,5197,5212,1647,1051,5193,5196,5200,5202, 5201,5198,5199,5177,5197,2734,320,5237,5048,5233, 5234,5235,5231,5230,5229,5232,5236,5238,5239,5237, 136,5233,5234,5235,5231,5230,5229,5232,5236,5238, 5239,273,242,242,209,262,262,262,266,266, 29,269,269,269,279,279,282,284,5177,1297, 1023,5092,5177,30,286,290,288,290,319,273, 245,245,1297,262,262,262,266,266,335,269, 269,269,279,279,282,284,540,262,242,242, 208,4162,286,290,288,290,214,223,5177,223, 273,244,244,5177,262,262,262,266,266,5177, 269,269,269,279,279,282,284,5177,262,242, 242,208,5177,286,290,288,290,213,223,5177, 223,284,242,242,208,262,262,262,266,266, 210,269,269,269,279,279,282,235,273,273, 273,273,273,284,242,242,208,262,262,262, 266,266,219,269,269,269,279,279,282,2804, 273,273,273,273,273,284,242,242,208,262, 262,262,266,266,218,269,269,269,279,279, 282,5177,273,273,273,273,273,284,242,242, 208,262,262,262,266,266,214,269,269,269, 279,279,282,4070,273,273,273,273,273,284, 242,242,208,262,262,262,266,266,213,269, 269,269,279,279,282,5177,273,273,273,273, 273,282,243,243,34,262,262,262,266,266, 34,269,269,269,279,279,5177,5177,273,273, 273,273,273,34,282,243,243,33,262,262, 262,266,266,33,269,269,269,279,279,3745, 5092,273,273,273,273,273,33,288,245,245, 112,262,262,262,266,266,5177,269,269,269, 279,279,282,284,273,273,273,273,273,5177, 286,288,244,244,65,262,262,262,266,266, 433,269,269,269,279,279,282,284,273,273, 273,273,273,349,286,273,245,245,1689,262, 262,262,266,266,433,269,269,269,279,279, 282,284,5177,255,242,242,208,5177,286,290, 288,290,210,5001,5177,126,126,273,244,244, 5177,262,262,262,266,266,55,269,269,269, 279,279,282,284,4435,255,242,242,208,5177, 286,290,288,290,219,5177,5177,126,126,273, 242,242,209,262,262,262,266,266,13,269, 269,269,279,279,282,284,5364,15,3789,5177, 5177,355,286,290,288,290,266,242,242,209, 262,262,262,273,245,245,15,262,262,262, 266,266,313,269,269,269,279,279,282,284, 5177,5177,5177,5177,5177,5177,286,290,288,290, 319,273,244,244,1307,262,262,262,266,266, 5177,269,269,269,279,279,282,284,5415,1052, 1624,5414,1629,1673,286,290,288,290,319,282, 242,242,208,262,262,262,266,266,219,269, 269,269,279,279,35,5177,273,273,273,273, 273,282,242,242,208,262,262,262,266,266, 218,269,269,269,279,279,5032,5080,273,273, 273,273,273,282,242,242,208,262,262,262, 266,266,214,269,269,269,279,279,5177,5177, 273,273,273,273,273,282,242,242,208,262, 262,262,266,266,213,269,269,269,279,279, 5177,5177,273,273,273,273,273,282,242,242, 208,262,262,262,266,266,210,269,269,269, 279,279,5177,5177,273,273,273,273,273,273, 281,5177,5177,262,262,262,266,266,5177,269, 269,269,279,279,282,284,5177,941,4333,4299, 4367,4401,286,290,288,290,86,5177,5286,86, 86,273,245,245,5177,262,262,262,266,266, 5177,269,269,269,279,279,282,284,5177,255, 242,242,208,96,286,290,288,290,218,255, 242,242,208,1269,5177,273,244,244,214,262, 262,262,266,266,313,269,269,269,279,279, 282,284,5177,822,66,5177,5177,33,286,290, 288,290,266,242,242,208,262,262,262,273, 280,210,5177,262,262,262,266,266,313,269, 269,269,279,279,282,284,5352,941,4333,4299, 4367,4401,286,290,288,290,5177,223,5177,223, 279,243,243,34,262,262,262,266,266,34, 269,269,269,32,5177,5177,34,273,273,273, 273,273,34,279,243,243,33,262,262,262, 266,266,33,269,269,269,3018,1625,5177,341, 273,273,273,273,273,33,282,242,242,209, 262,262,262,266,266,5177,269,269,269,279, 279,5177,5177,273,273,273,273,273,288,641, 5177,5177,262,262,262,266,266,5177,269,269, 269,279,279,282,284,273,273,273,273,273, 273,286,5177,5177,262,262,262,266,266,1675, 269,269,269,279,279,282,284,5177,255,242, 242,208,5177,286,290,288,290,213,273,5285, 126,126,262,262,262,266,266,5177,269,269, 269,279,279,282,284,1254,32,5177,5177,33, 1335,286,290,288,290,319,279,242,242,208, 262,262,262,266,266,210,269,269,269,97, 5177,5177,34,273,273,273,273,273,279,242, 242,208,262,262,262,266,266,219,269,269, 269,97,5177,5177,33,273,273,273,273,273, 279,242,242,208,262,262,262,266,266,218, 269,269,269,5177,5177,5177,5177,273,273,273, 273,273,279,242,242,208,262,262,262,266, 266,214,269,269,269,5177,5177,5177,5177,273, 273,273,273,273,279,242,242,208,262,262, 262,266,266,213,269,269,269,5177,5177,5177, 334,273,273,273,273,273,282,245,245,1212, 262,262,262,266,266,5177,269,269,269,279, 279,5177,5080,273,273,273,273,273,282,244, 244,5177,262,262,262,266,266,5177,269,269, 269,279,279,5416,5177,273,273,273,273,273, 286,5177,5177,5177,262,262,262,266,266,1145, 269,269,269,279,279,282,284,273,273,273, 273,273,273,5177,5177,28,262,262,262,266, 266,1226,269,269,269,279,279,282,284,5177, 243,31,5177,10361,34,286,290,288,290,3349, 34,5287,5212,5177,1260,5193,5196,5200,5202,5201, 5198,5199,1982,5197,1260,313,1260,1260,5177,14, 279,242,242,209,262,262,262,266,266,5177, 269,269,269,5177,5177,5177,5177,273,273,273, 273,273,284,34,5177,5299,262,262,262,266, 266,5177,269,269,269,279,279,282,28,273, 273,273,273,273,1777,5177,5177,5177,5177,33, 297,3062,14,297,297,297,297,297,297,297, 297,297,297,297,279,245,245,1293,262,262, 262,266,266,4482,269,269,269,1293,14,1293, 1293,273,273,273,273,273,279,244,244,5177, 262,262,262,266,266,5177,269,269,269,5177, 5177,5177,5177,273,273,273,273,273,282,330, 5177,5177,262,262,262,266,266,5280,269,269, 269,279,279,1349,5177,273,273,273,273,273, 31,330,5177,33,5177,5177,5256,5177,1388,33, 328,269,242,242,209,262,262,262,266,266, 330,5177,26,5177,355,34,26,5177,5256,33, 5177,34,329,5177,5237,33,5233,5234,5235,5231, 5230,5229,1020,5236,5238,5239,355,5226,5177,330, 5177,5177,5177,5177,5177,5177,5237,5177,5233,5234, 5235,5231,5230,5229,1020,5236,5238,5239,330,5177, 5177,5177,5177,5177,5177,5237,5226,5233,5234,5235, 5231,5230,5229,5232,5236,5238,5239,5177,5177,5177, 5177,330,5177,5177,5177,5297,5177,5177,5177,344, 5177,5177,5177,5177,5237,5177,5233,5234,5235,5231, 5230,5229,5232,5236,5238,5239,326,5177,5297,5177, 5177,5177,345,5237,5177,5233,5234,5235,5231,5230, 5229,5232,5236,5238,5239,269,242,242,208,262, 262,262,266,266,219,327,5237,5177,5233,5234, 5235,5231,5230,5229,5232,5236,5238,5239,279,5177, 5177,5177,262,262,262,266,266,5177,269,269, 269,5177,5177,5177,5177,273,273,273,273,273, 5177,5177,5177,5177,5177,5177,5177,5177,1688,5177, 5177,5193,5196,5200,5202,5201,5198,5199,5177,5197, 5177,5177,5177,937,269,243,243,33,262,262, 262,266,266,33,269,242,242,208,262,262, 262,266,266,218,5177,5177,33,269,242,242, 208,262,262,262,266,266,214,5177,1216,269, 242,242,208,262,262,262,266,266,213,297, 243,243,34,5177,1271,5177,5177,5177,34,297, 243,243,33,5177,5177,5177,5177,5177,33,269, 5177,34,5177,262,262,262,266,266,14,5177, 5177,33,5177,5177,5177,5177,5177,5177,14 }; const unsigned short CLASS_HEADER asb[] = {0, 264,281,361,55,266,6,93,267,55,266, 188,6,208,417,204,78,60,47,768,847, 361,417,643,671,671,18,531,85,85,87, 87,206,600,417,417,146,146,63,129,500, 6,190,531,531,531,79,210,827,500,6, 500,55,825,305,267,93,188,208,159,96, 847,798,417,417,208,417,160,417,417,314, 162,319,316,326,324,328,327,330,329,502, 339,703,55,502,361,531,82,237,259,417, 55,261,500,500,500,500,363,531,417,442, 767,502,442,339,674,417,18,417,417,705, 847,411,308,367,417,55,55,371,444,442, 798,257,102,417,417,417,417,417,47,417, 417,417,417,417,417,417,417,417,417,417, 417,417,417,417,798,797,703,97,798,414, 502,768,417,768,674,703,142,262,531,1, 531,798,97,55,531,531,798,55,60,703, 798,798,500,722,411,55,379,416,798,411, 57,500,208,743,798,257,257,162,162,259, 316,316,316,316,314,314,314,324,319,319, 327,326,641,329,328,500,417,502,500,188, 187,798,703,143,55,361,722,417,361,502, 531,502,502,531,55,502,18,18,643,31, 361,361,55,417,421,417,798,415,381,361, 55,456,798,55,722,798,233,798,502,798, 798,502,97,798,447,3,531,531,531,191, 500,823,360,822,360,361,55,500,233,641, 417,4,798,500,500,798,502,500,18,705, 417,417,18,506,188,500,295,823,55,188, 361,283,459,295,822,4,641,4,381,381, 798,500,798,798,798,797,55,55,361,459, 376,77,643,18,18,18,375,531,375,411, 365,361,55,800,500,447,800,361,458,798, 797,506,18,798,55,722,798,374,18,266, 205,449,63,63,206,4,267,773,770,769, 98,98,769,769,771,771,454,454,479,477, 477,475,475,475,462,462,476,124,124,160, 160,768,768,768,768,768,767,767,159,78, 78,797,776,534,533,101,101,533,533,535, 535,162,160,160,768,768,768,97,97,159, 159,768,767,767,768,768,768,768,160,160, 239,239,162,159,768,767,767,768,768,768, 768,160,160,162,160,160,768,768,768,768, 768,767,767,159,162,159,768,767,767,768, 768,768,768,160,160,162,160,160,768,768, 768,768,768,767,767,159,162,159,768,767, 767,768,768,768,768,160,160,162,160,160, 768,768,768,768,768,767,767,159,162,159, 768,767,767,768,768,768,768,160,160,162, 160,160,768,768,768,768,768,767,767,159, 187,166,576,575,562,562,575,575,577,577, 165,387,387,385,385,385,561,561,386,159, 768,767,767,768,768,768,768,160,160,3, 359,359,360,162,159,768,767,767,768,768, 768,768,160,160,823,822,620,618,618,616, 616,616,603,603,617,359,359,358,358,458 }; const unsigned char CLASS_HEADER asr[] = {0, 99,97,94,81,82,79,31,62,61,60, 63,57,58,59,64,65,66,78,77,55, 75,71,70,72,76,27,45,74,67,73, 41,39,49,50,51,52,53,54,47,48, 46,42,22,44,1,2,36,35,33,40, 37,38,34,32,29,0,45,98,0,22, 3,0,2,1,80,93,92,91,90,89, 88,87,86,85,84,83,22,9,29,3, 0,22,9,0,3,9,30,27,28,2, 1,0,27,3,0,29,31,43,27,56, 30,26,28,21,20,6,23,4,15,16, 5,8,7,25,24,12,11,10,14,19, 18,13,17,3,9,22,2,1,80,85, 86,90,83,84,91,92,93,87,89,88, 0,98,45,102,0,9,80,93,92,91, 90,89,88,87,86,85,84,83,3,1, 2,43,56,28,27,26,21,20,6,23, 4,15,16,5,8,7,25,24,12,11, 10,14,19,18,13,17,30,31,0,29, 80,93,92,91,90,89,88,87,86,85, 84,83,43,22,9,2,1,3,0,66, 65,55,64,63,40,62,61,60,59,38, 37,36,58,35,79,34,33,32,57,29, 22,0,81,82,31,0,22,29,30,43, 26,27,56,31,21,20,23,15,16,25, 24,14,19,18,13,17,28,3,9,0, 97,99,0,103,101,100,95,79,62,61, 60,63,57,58,59,64,55,65,66,27, 96,0,45,66,65,55,64,63,62,61, 60,59,58,57,32,33,40,37,38,34, 36,35,29,44,79,95,0,80,30,27, 28,9,0,7,8,10,11,12,21,20, 18,19,17,13,14,15,16,23,25,30, 43,27,56,31,28,24,26,0,43,26, 56,31,28,21,20,23,15,16,25,24, 14,19,18,13,17,29,9,27,3,30, 45,0,67,0,9,22,30,27,80,0, 29,4,0,9,27,45,104,0,80,104, 43,56,28,45,9,3,26,31,21,20, 6,23,4,15,16,5,8,7,25,24, 12,11,10,14,19,18,13,2,1,17, 27,30,0,30,31,45,7,8,2,1, 22,44,32,33,40,37,38,34,36,35, 48,46,49,50,51,52,53,54,47,69, 68,42,41,39,29,0,94,0,3,9, 28,29,0,9,22,102,3,30,27,45, 0,80,22,93,92,91,90,89,88,87, 86,85,84,83,9,3,2,1,26,21, 20,6,23,4,15,16,5,8,7,25, 24,12,11,10,14,19,18,13,17,27, 0,7,8,69,68,28,29,41,39,49, 50,51,52,53,54,47,48,46,36,35, 33,40,37,38,34,32,42,44,1,2, 22,0,9,3,30,26,28,21,20,6, 23,4,15,16,5,8,7,25,24,12, 11,10,14,19,18,13,2,1,17,0, 27,80,22,93,92,91,90,89,88,87, 86,85,84,83,9,3,30,26,31,21, 20,6,23,4,15,16,5,8,7,25, 24,12,11,10,14,19,18,13,17,1, 2,0,80,22,93,92,91,90,89,88, 87,86,85,84,83,9,3,2,1,26, 21,20,6,23,4,15,16,5,8,7, 25,24,12,11,10,14,19,18,13,17, 43,0,7,8,42,22,44,41,32,33, 40,37,38,34,36,35,39,48,46,49, 50,51,52,53,54,47,69,68,2,1, 27,29,0,7,8,42,22,44,41,32, 33,40,37,38,34,36,35,29,39,48, 46,49,50,51,52,53,54,47,69,68, 2,1,56,0,27,2,1,42,22,44, 41,39,48,46,49,50,51,52,53,54, 47,32,33,40,37,38,34,36,35,29, 62,61,60,63,57,58,59,64,55,65, 66,0,42,44,41,32,33,40,37,38, 34,36,35,29,39,48,46,49,50,51, 52,53,54,47,69,68,22,31,9,3, 2,1,43,27,56,26,21,20,6,23, 4,15,16,5,8,7,25,24,12,11, 10,14,19,18,13,17,30,28,0,28, 32,33,40,37,38,34,36,35,29,62, 61,60,63,57,58,59,64,55,65,66, 0,45,31,27,44,95,32,33,40,37, 38,34,36,35,29,62,61,60,63,57, 58,59,64,55,65,66,79,0 }; const unsigned short CLASS_HEADER nasb[] = {0, 94,57,34,56,133,1,58,171,56,32, 57,46,57,53,57,139,57,60,57,57, 106,53,53,57,57,123,57,57,57,57, 57,57,57,144,144,57,57,139,14,57, 46,57,57,57,57,113,57,16,57,70, 57,57,18,57,141,57,57,57,57,139, 57,57,144,144,57,53,57,144,144,57, 57,57,57,57,57,57,57,57,57,53, 57,57,57,53,68,57,136,139,135,53, 57,92,57,57,57,57,57,57,53,57, 139,53,57,57,53,53,123,53,53,48, 57,57,139,57,53,113,57,57,57,57, 57,139,139,144,144,144,144,144,55,144, 144,144,144,144,144,144,144,144,144,144, 144,53,144,144,57,57,57,57,57,117, 53,138,53,138,53,57,66,30,57,22, 57,57,57,20,57,57,57,20,57,57, 57,57,57,16,57,113,57,53,57,57, 26,57,57,144,57,57,57,57,57,139, 57,57,57,57,57,57,57,57,57,57, 57,57,57,57,57,57,53,53,57,57, 57,57,57,111,56,106,38,53,24,53, 57,53,53,57,57,53,96,123,53,49, 106,28,56,144,144,144,57,53,36,43, 56,57,57,113,16,57,89,57,53,57, 57,53,57,57,57,57,57,57,57,57, 57,163,57,153,57,106,113,57,108,57, 53,45,57,57,57,57,53,57,123,48, 53,53,96,49,57,57,55,167,56,57, 106,161,161,82,158,45,57,70,36,36, 57,57,57,57,57,57,87,86,106,115, 64,57,53,96,96,123,64,57,64,57, 139,161,56,148,57,57,148,34,57,57, 57,49,96,57,56,38,57,139,96,57, 57,57,57,57,57,57,57,57,57,57, 57,57,57,57,57,57,57,57,57,57, 57,57,57,57,57,57,57,57,57,57, 57,57,57,57,57,57,57,57,57,57, 57,57,57,57,57,57,57,57,57,57, 57,57,57,57,57,57,57,57,57,57, 57,57,57,57,57,57,57,57,57,57, 57,57,57,57,57,57,57,57,57,57, 57,57,57,57,57,57,57,57,57,57, 57,57,57,57,57,57,57,57,57,57, 57,57,57,57,57,57,57,57,57,57, 57,57,57,57,57,57,57,57,57,57, 57,57,57,57,57,57,57,57,57,57, 57,57,57,57,57,57,57,57,57,57, 57,57,57,57,57,57,57,57,57,57, 57,57,57,57,57,57,57,57,57,57, 57,57,57,57,57,57,57,57,57,57, 57,57,57,57,57,57,57,57,57,57, 57,57,57,57,57,57,57,57,57,57, 57,57,57,57,57,57,57,57,57,57, 57,57,57,57,57,57,57,57,57,57, 57,57,57,57,57,57,57,57,57,57 }; const unsigned short CLASS_HEADER nasr[] = {0, 144,5,18,17,16,15,22,21,2,47, 70,82,0,158,0,2,5,45,0,1, 0,124,0,152,0,145,0,146,0,157, 0,102,0,101,0,100,0,89,47,2, 5,0,84,0,90,70,82,47,16,15, 17,18,22,21,5,2,0,134,0,9, 2,5,0,96,0,135,0,87,0,71, 16,15,22,17,21,18,47,2,5,70, 0,143,2,5,0,74,112,0,153,118, 0,155,0,128,0,5,22,21,2,18, 17,16,15,49,0,44,0,119,118,0, 136,0,74,0,141,0,150,5,22,21, 2,0,48,5,22,21,2,18,17,16, 15,0,131,0,65,125,0,92,65,0, 103,47,0,5,2,19,0,47,2,5, 114,0,81,47,88,140,0,107,47,88, 81,0,88,47,149,0,115,88,47,0, 47,132,0 }; const unsigned short CLASS_HEADER terminal_index[] = {0, 3,4,47,31,28,34,25,26,41,9, 10,11,5,8,30,29,76,6,7,35, 36,37,32,23,24,44,43,38,51,46, 40,53,55,58,64,70,77,79,81,88, 91,94,45,2,39,67,82,98,102,103, 104,105,106,107,93,42,52,68,80,84, 85,86,89,90,97,100,101,27,33,54, 61,63,71,73,87,92,95,99,59,48, 56,62,12,13,14,15,16,17,18,19, 20,21,22,65,78,109,57,66,69,75, 1,74,83,96,60,72,108,110 }; const unsigned short CLASS_HEADER non_terminal_index[] = {0, 128,124,129,122,117,119,120,121,123,118, 116,114,115,182,223,224,225,226,243,244, 245,246,251,221,222,253,254,252,220,267, 255,256,257,258,259,260,261,262,263,264, 265,266,167,159,144,219,143,196,198,199, 200,201,202,203,209,210,211,212,213,214, 215,216,217,218,125,141,145,181,248,197, 194,195,142,164,166,204,205,206,207,208, 158,193,126,148,160,163,168,169,175,231, 237,250,127,162,165,172,176,180,234,247, 113,134,136,139,140,151,154,155,156,157, 161,171,173,174,188,189,190,229,230,233, 235,236,238,242,249,111,112,130,131,132, 133,135,137,138,146,147,149,150,152,153, 170,177,178,179,183,184,185,186,187,191, 192,227,228,232,239,240,241,268,49 }; const char CLASS_HEADER string_buffer[] = {0, '"','c','l','a','s','s',' ','I','d','e', 'n','t','i','f','i','e','r',' ','{',' ', '.','.','.',' ','M','e','t','h','o','d', 'H','e','a','d','e','r',' ','"','R','e', 's','u','l','t','T','y','p','e','+','+', '-','-','=','=','<','=','>','=','!','=', '<','<','>','>','>','>','>','+','=','-', '=','*','=','/','=','&','=','|','=','^', '=','%','=','<','<','=','>','>','=','>', '>','>','=','|','|','&','&','+','-','!', '%','^','&','*','|','~','/','>','<','(', ')','{','}','[',']',';','?',':',',','.', '=','$','e','m','p','t','y','I','d','e', 'n','t','i','f','i','e','r','a','b','s', 't','r','a','c','t','b','o','o','l','e', 'a','n','b','r','e','a','k','b','y','t', 'e','c','a','s','e','c','a','t','c','h', 'c','h','a','r','c','l','a','s','s','c', 'o','n','s','t','c','o','n','t','i','n', 'u','e','d','e','f','a','u','l','t','d', 'o','d','o','u','b','l','e','e','l','s', 'e','e','x','t','e','n','d','s','f','a', 'l','s','e','f','i','n','a','l','f','i', 'n','a','l','l','y','f','l','o','a','t', 'f','o','r','g','o','t','o','i','f','i', 'm','p','l','e','m','e','n','t','s','i', 'm','p','o','r','t','i','n','s','t','a', 'n','c','e','o','f','i','n','t','i','n', 't','e','r','f','a','c','e','l','o','n', 'g','n','a','t','i','v','e','n','e','w', 'n','u','l','l','p','a','c','k','a','g', 'e','p','r','i','v','a','t','e','p','r', 'o','t','e','c','t','e','d','p','u','b', 'l','i','c','r','e','t','u','r','n','s', 'h','o','r','t','s','t','a','t','i','c', 's','t','r','i','c','t','f','p','s','u', 'p','e','r','s','w','i','t','c','h','s', 'y','n','c','h','r','o','n','i','z','e', 'd','t','h','i','s','t','h','r','o','w', 't','h','r','o','w','s','t','r','a','n', 's','i','e','n','t','t','r','u','e','t', 'r','y','v','o','l','a','t','i','l','e', 'w','h','i','l','e','I','n','t','e','g', 'e','r','L','i','t','e','r','a','l','L', 'o','n','g','L','i','t','e','r','a','l', 'F','l','o','a','t','i','n','g','P','o', 'i','n','t','L','i','t','e','r','a','l', 'D','o','u','b','l','e','L','i','t','e', 'r','a','l','C','h','a','r','a','c','t', 'e','r','L','i','t','e','r','a','l','S', 't','r','i','n','g','L','i','t','e','r', 'a','l','E','R','R','O','R','E','O','F', 'E','O','L','G','o','a','l','C','o','m', 'p','i','l','a','t','i','o','n','U','n', 'i','t','C','o','n','s','t','r','u','c', 't','o','r','B','o','d','y','L','i','t', 'e','r','a','l','B','o','o','l','e','a', 'n','L','i','t','e','r','a','l','T','y', 'p','e','P','r','i','m','i','t','i','v', 'e','T','y','p','e','R','e','f','e','r', 'e','n','c','e','T','y','p','e','N','u', 'm','e','r','i','c','T','y','p','e','I', 'n','t','e','g','r','a','l','T','y','p', 'e','F','l','o','a','t','i','n','g','P', 'o','i','n','t','T','y','p','e','C','l', 'a','s','s','O','r','I','n','t','e','r', 'f','a','c','e','T','y','p','e','A','r', 'r','a','y','T','y','p','e','N','a','m', 'e','D','i','m','s','C','l','a','s','s', 'T','y','p','e','I','n','t','e','r','f', 'a','c','e','T','y','p','e','S','i','m', 'p','l','e','N','a','m','e','Q','u','a', 'l','i','f','i','e','d','N','a','m','e', 'P','a','c','k','a','g','e','D','e','c', 'l','a','r','a','t','i','o','n','o','p', 't','I','m','p','o','r','t','D','e','c', 'l','a','r','a','t','i','o','n','s','o', 'p','t','T','y','p','e','D','e','c','l', 'a','r','a','t','i','o','n','s','o','p', 't','I','m','p','o','r','t','D','e','c', 'l','a','r','a','t','i','o','n','s','I', 'm','p','o','r','t','D','e','c','l','a', 'r','a','t','i','o','n','T','y','p','e', 'D','e','c','l','a','r','a','t','i','o', 'n','s','T','y','p','e','D','e','c','l', 'a','r','a','t','i','o','n','P','a','c', 'k','a','g','e','D','e','c','l','a','r', 'a','t','i','o','n','P','a','c','k','a', 'g','e','H','e','a','d','e','r','M','a', 'r','k','e','r','S','i','n','g','l','e', 'T','y','p','e','I','m','p','o','r','t', 'D','e','c','l','a','r','a','t','i','o', 'n','T','y','p','e','I','m','p','o','r', 't','O','n','D','e','m','a','n','d','D', 'e','c','l','a','r','a','t','i','o','n', 'C','l','a','s','s','D','e','c','l','a', 'r','a','t','i','o','n','I','n','t','e', 'r','f','a','c','e','D','e','c','l','a', 'r','a','t','i','o','n','M','o','d','i', 'f','i','e','r','s','M','o','d','i','f', 'i','e','r','M','o','d','i','f','i','e', 'r','s','o','p','t','S','u','p','e','r', 'o','p','t','I','n','t','e','r','f','a', 'c','e','s','o','p','t','C','l','a','s', 's','B','o','d','y','S','u','p','e','r', 'I','n','t','e','r','f','a','c','e','s', 'I','n','t','e','r','f','a','c','e','T', 'y','p','e','L','i','s','t','C','l','a', 's','s','B','o','d','y','D','e','c','l', 'a','r','a','t','i','o','n','s','o','p', 't','C','l','a','s','s','B','o','d','y', 'D','e','c','l','a','r','a','t','i','o', 'n','s','C','l','a','s','s','B','o','d', 'y','D','e','c','l','a','r','a','t','i', 'o','n','C','l','a','s','s','M','e','m', 'b','e','r','D','e','c','l','a','r','a', 't','i','o','n','S','t','a','t','i','c', 'I','n','i','t','i','a','l','i','z','e', 'r','C','o','n','s','t','r','u','c','t', 'o','r','D','e','c','l','a','r','a','t', 'i','o','n','M','e','t','h','o','d','H', 'e','a','d','e','r','M','a','r','k','e', 'r','B','l','o','c','k','F','i','e','l', 'd','D','e','c','l','a','r','a','t','i', 'o','n','M','e','t','h','o','d','D','e', 'c','l','a','r','a','t','i','o','n','V', 'a','r','i','a','b','l','e','D','e','c', 'l','a','r','a','t','o','r','s','V','a', 'r','i','a','b','l','e','D','e','c','l', 'a','r','a','t','o','r','V','a','r','i', 'a','b','l','e','D','e','c','l','a','r', 'a','t','o','r','I','d','V','a','r','i', 'a','b','l','e','I','n','i','t','i','a', 'l','i','z','e','r','D','i','m','s','o', 'p','t','E','x','p','r','e','s','s','i', 'o','n','A','r','r','a','y','I','n','i', 't','i','a','l','i','z','e','r','M','e', 't','h','o','d','H','e','a','d','e','r', 'M','e','t','h','o','d','B','o','d','y', 'M','e','t','h','o','d','D','e','c','l', 'a','r','a','t','o','r','T','h','r','o', 'w','s','o','p','t','F','o','r','m','a', 'l','P','a','r','a','m','e','t','e','r', 'L','i','s','t','o','p','t','F','o','r', 'm','a','l','P','a','r','a','m','e','t', 'e','r','L','i','s','t','F','o','r','m', 'a','l','P','a','r','a','m','e','t','e', 'r','T','h','r','o','w','s','C','l','a', 's','s','T','y','p','e','L','i','s','t', 'C','o','n','s','t','r','u','c','t','o', 'r','D','e','c','l','a','r','a','t','o', 'r','E','x','p','l','i','c','i','t','C', 'o','n','s','t','r','u','c','t','o','r', 'I','n','v','o','c','a','t','i','o','n', 'B','l','o','c','k','S','t','a','t','e', 'm','e','n','t','s','o','p','t','A','r', 'g','u','m','e','n','t','L','i','s','t', 'o','p','t','P','r','i','m','a','r','y', 'E','x','t','e','n','d','s','I','n','t', 'e','r','f','a','c','e','s','o','p','t', 'I','n','t','e','r','f','a','c','e','B', 'o','d','y','E','x','t','e','n','d','s', 'I','n','t','e','r','f','a','c','e','s', 'I','n','t','e','r','f','a','c','e','M', 'e','m','b','e','r','D','e','c','l','a', 'r','a','t','i','o','n','s','o','p','t', 'I','n','t','e','r','f','a','c','e','M', 'e','m','b','e','r','D','e','c','l','a', 'r','a','t','i','o','n','s','I','n','t', 'e','r','f','a','c','e','M','e','m','b', 'e','r','D','e','c','l','a','r','a','t', 'i','o','n','C','o','n','s','t','a','n', 't','D','e','c','l','a','r','a','t','i', 'o','n','A','b','s','t','r','a','c','t', 'M','e','t','h','o','d','D','e','c','l', 'a','r','a','t','i','o','n',',','o','p', 't','V','a','r','i','a','b','l','e','I', 'n','i','t','i','a','l','i','z','e','r', 's','B','l','o','c','k','S','t','a','t', 'e','m','e','n','t','s','B','l','o','c', 'k','S','t','a','t','e','m','e','n','t', 'L','o','c','a','l','V','a','r','i','a', 'b','l','e','D','e','c','l','a','r','a', 't','i','o','n','S','t','a','t','e','m', 'e','n','t','S','t','a','t','e','m','e', 'n','t','L','o','c','a','l','V','a','r', 'i','a','b','l','e','D','e','c','l','a', 'r','a','t','i','o','n','S','t','a','t', 'e','m','e','n','t','W','i','t','h','o', 'u','t','T','r','a','i','l','i','n','g', 'S','u','b','s','t','a','t','e','m','e', 'n','t','L','a','b','e','l','e','d','S', 't','a','t','e','m','e','n','t','I','f', 'T','h','e','n','S','t','a','t','e','m', 'e','n','t','I','f','T','h','e','n','E', 'l','s','e','S','t','a','t','e','m','e', 'n','t','W','h','i','l','e','S','t','a', 't','e','m','e','n','t','F','o','r','S', 't','a','t','e','m','e','n','t','S','t', 'a','t','e','m','e','n','t','N','o','S', 'h','o','r','t','I','f','L','a','b','e', 'l','e','d','S','t','a','t','e','m','e', 'n','t','N','o','S','h','o','r','t','I', 'f','I','f','T','h','e','n','E','l','s', 'e','S','t','a','t','e','m','e','n','t', 'N','o','S','h','o','r','t','I','f','W', 'h','i','l','e','S','t','a','t','e','m', 'e','n','t','N','o','S','h','o','r','t', 'I','f','F','o','r','S','t','a','t','e', 'm','e','n','t','N','o','S','h','o','r', 't','I','f','E','m','p','t','y','S','t', 'a','t','e','m','e','n','t','E','x','p', 'r','e','s','s','i','o','n','S','t','a', 't','e','m','e','n','t','S','w','i','t', 'c','h','S','t','a','t','e','m','e','n', 't','D','o','S','t','a','t','e','m','e', 'n','t','B','r','e','a','k','S','t','a', 't','e','m','e','n','t','C','o','n','t', 'i','n','u','e','S','t','a','t','e','m', 'e','n','t','R','e','t','u','r','n','S', 't','a','t','e','m','e','n','t','S','y', 'n','c','h','r','o','n','i','z','e','d', 'S','t','a','t','e','m','e','n','t','T', 'h','r','o','w','S','t','a','t','e','m', 'e','n','t','T','r','y','S','t','a','t', 'e','m','e','n','t','S','t','a','t','e', 'm','e','n','t','E','x','p','r','e','s', 's','i','o','n','A','s','s','i','g','n', 'm','e','n','t','P','r','e','I','n','c', 'r','e','m','e','n','t','E','x','p','r', 'e','s','s','i','o','n','P','r','e','D', 'e','c','r','e','m','e','n','t','E','x', 'p','r','e','s','s','i','o','n','P','o', 's','t','I','n','c','r','e','m','e','n', 't','E','x','p','r','e','s','s','i','o', 'n','P','o','s','t','D','e','c','r','e', 'm','e','n','t','E','x','p','r','e','s', 's','i','o','n','M','e','t','h','o','d', 'I','n','v','o','c','a','t','i','o','n', 'C','l','a','s','s','I','n','s','t','a', 'n','c','e','C','r','e','a','t','i','o', 'n','E','x','p','r','e','s','s','i','o', 'n','S','w','i','t','c','h','B','l','o', 'c','k','S','w','i','t','c','h','B','l', 'o','c','k','S','t','a','t','e','m','e', 'n','t','s','S','w','i','t','c','h','L', 'a','b','e','l','s','S','w','i','t','c', 'h','B','l','o','c','k','S','t','a','t', 'e','m','e','n','t','S','w','i','t','c', 'h','L','a','b','e','l','C','o','n','s', 't','a','n','t','E','x','p','r','e','s', 's','i','o','n','F','o','r','I','n','i', 't','o','p','t','E','x','p','r','e','s', 's','i','o','n','o','p','t','F','o','r', 'U','p','d','a','t','e','o','p','t','F', 'o','r','I','n','i','t','S','t','a','t', 'e','m','e','n','t','E','x','p','r','e', 's','s','i','o','n','L','i','s','t','F', 'o','r','U','p','d','a','t','e','C','a', 't','c','h','e','s','C','a','t','c','h', 'e','s','o','p','t','F','i','n','a','l', 'l','y','C','a','t','c','h','C','l','a', 'u','s','e','P','r','i','m','a','r','y', 'N','o','N','e','w','A','r','r','a','y', 'A','r','r','a','y','C','r','e','a','t', 'i','o','n','E','x','p','r','e','s','s', 'i','o','n','F','i','e','l','d','A','c', 'c','e','s','s','A','r','r','a','y','A', 'c','c','e','s','s','C','l','a','s','s', 'B','o','d','y','o','p','t','A','r','g', 'u','m','e','n','t','L','i','s','t','D', 'i','m','E','x','p','r','s','D','i','m', 'E','x','p','r','P','o','s','t','f','i', 'x','E','x','p','r','e','s','s','i','o', 'n','U','n','a','r','y','E','x','p','r', 'e','s','s','i','o','n','U','n','a','r', 'y','E','x','p','r','e','s','s','i','o', 'n','N','o','t','P','l','u','s','M','i', 'n','u','s','C','a','s','t','E','x','p', 'r','e','s','s','i','o','n','M','u','l', 't','i','p','l','i','c','a','t','i','v', 'e','E','x','p','r','e','s','s','i','o', 'n','A','d','d','i','t','i','v','e','E', 'x','p','r','e','s','s','i','o','n','S', 'h','i','f','t','E','x','p','r','e','s', 's','i','o','n','R','e','l','a','t','i', 'o','n','a','l','E','x','p','r','e','s', 's','i','o','n','E','q','u','a','l','i', 't','y','E','x','p','r','e','s','s','i', 'o','n','A','n','d','E','x','p','r','e', 's','s','i','o','n','E','x','c','l','u', 's','i','v','e','O','r','E','x','p','r', 'e','s','s','i','o','n','I','n','c','l', 'u','s','i','v','e','O','r','E','x','p', 'r','e','s','s','i','o','n','C','o','n', 'd','i','t','i','o','n','a','l','A','n', 'd','E','x','p','r','e','s','s','i','o', 'n','C','o','n','d','i','t','i','o','n', 'a','l','O','r','E','x','p','r','e','s', 's','i','o','n','C','o','n','d','i','t', 'i','o','n','a','l','E','x','p','r','e', 's','s','i','o','n','A','s','s','i','g', 'n','m','e','n','t','E','x','p','r','e', 's','s','i','o','n','L','e','f','t','H', 'a','n','d','S','i','d','e','A','s','s', 'i','g','n','m','e','n','t','O','p','e', 'r','a','t','o','r' }; const unsigned short CLASS_HEADER name_start[] = {0, 1,39,49,51,53,55,57,59,61,63, 65,68,70,72,74,76,78,80,82,84, 87,90,94,96,98,99,100,101,102,103, 104,105,106,107,108,109,110,111,112,113, 114,115,116,117,118,119,120,121,122,122, 128,138,146,153,158,162,166,171,175,180, 185,193,200,202,208,212,219,224,229,236, 241,244,248,250,260,266,276,279,288,292, 298,301,305,312,319,328,334,340,345,351, 359,364,370,382,386,391,397,406,410,413, 421,426,440,451,471,484,500,513,518,521, 524,528,543,558,565,579,583,596,609,620, 632,649,669,678,682,686,695,708,718,731, 752,773,792,810,827,843,858,876,895,922, 951,967,987,996,1004,1016,1024,1037,1046,1051, 1061,1078,1102,1123,1143,1165,1182,1204,1222,1227, 1243,1260,1279,1297,1317,1336,1343,1353,1369,1381, 1391,1407,1416,1438,1457,1472,1478,1491,1512,1541, 1559,1574,1581,1601,1614,1631,1661,1688,1714,1733, 1758,1762,1782,1797,1811,1844,1853,1877,1913,1929, 1944,1963,1977,1989,2007,2032,2060,2083,2104,2118, 2137,2152,2163,2177,2194,2209,2230,2244,2256,2275, 2285,2307,2329,2352,2375,2391,2422,2433,2454,2466, 2486,2497,2515,2525,2538,2550,2557,2580,2589,2596, 2606,2613,2624,2641,2664,2675,2686,2698,2710,2718, 2725,2742,2757,2784,2798,2822,2840,2855,2875,2893, 2906,2927,2948,2972,2995,3016,3036,3048 }; const unsigned char CLASS_HEADER name_length[] = {0, 38,10,2,2,2,2,2,2,2,2, 3,2,2,2,2,2,2,2,2,3, 3,4,2,2,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,0,6, 10,8,7,5,4,4,5,4,5,5, 8,7,2,6,4,7,5,5,7,5, 3,4,2,10,6,10,3,9,4,6, 3,4,7,7,9,6,6,5,6,8, 5,6,12,4,5,6,9,4,3,8, 5,14,11,20,13,16,13,5,3,3, 4,15,15,7,14,4,13,13,11,12, 17,20,9,4,4,9,13,10,13,21, 21,19,18,17,16,15,18,19,27,29, 16,20,9,8,12,8,13,9,5,10, 17,24,21,20,22,17,22,18,5,16, 17,19,18,20,19,7,10,16,12,10, 16,9,22,19,15,6,13,21,29,18, 15,7,20,13,17,30,27,26,19,25, 4,20,15,14,33,9,24,36,16,15, 19,14,12,18,25,28,23,21,14,19, 15,11,14,17,15,21,14,12,19,10, 22,22,23,23,16,31,11,21,12,20, 11,18,10,13,12,7,23,9,7,10, 7,11,17,23,11,11,12,12,8,7, 17,15,27,14,24,18,15,20,18,13, 21,21,24,23,21,20,12,18 }; const unsigned short CLASS_HEADER scope_prefix[] = { 29,103,103,58,65,39,45,145,198,198, 240,246,260,114,114,72,19,25,51,77, 176,280,284,6,88,163,163,191,207,272, 276,207,207,124,124,55,13,83,95,100, 167,188,182,228,231,237,288,13,182,231, 154,172,224,226,1,252,252 }; const unsigned short CLASS_HEADER scope_suffix[] = { 37,111,133,37,37,37,37,151,204,216, 151,151,151,120,136,37,23,23,37,81, 180,180,98,10,92,111,133,195,133,151, 151,211,219,128,140,23,37,86,98,98, 170,180,180,180,180,180,180,16,185,234, 157,174,98,98,3,254,266 }; const unsigned short CLASS_HEADER scope_lhs[] = { 17,80,54,18,18,17,17,58,78,52, 144,144,144,80,54,18,22,22,17,64, 152,101,85,41,62,79,53,57,51,144, 144,78,52,80,54,92,19,64,63,61, 90,152,152,44,87,146,84,27,152,87, 58,119,56,72,29,144,144 }; const unsigned char CLASS_HEADER scope_la[] = { 28,28,28,28,28,28,28,28,94,94, 28,28,28,27,27,28,56,56,28,99, 31,31,27,43,28,28,28,28,28,28, 28,28,28,27,27,56,28,97,27,27, 43,31,31,31,31,31,31,28,81,30, 67,33,27,27,80,3,3 }; const unsigned char CLASS_HEADER scope_state_set[] = { 30,203,160,30,30,30,30,160,203,160, 177,177,177,203,160,30,30,30,30,160, 18,179,1,81,160,203,160,160,160,177, 177,203,160,203,160,20,30,160,160,160, 6,18,18,182,25,16,11,53,18,25, 160,8,160,171,119,177,177 }; const unsigned short CLASS_HEADER scope_rhs[] = {0, 138,0,268,266,0,151,26,148,0,45, 265,0,151,22,0,38,253,0,151,9, 127,0,42,0,151,9,110,0,176,22, 29,3,41,3,110,0,38,0,176,22, 29,3,41,0,176,22,29,3,122,0, 176,22,110,0,151,9,0,176,22,109, 39,3,110,0,176,22,109,39,3,122, 0,176,22,191,39,0,264,152,78,0, 241,0,152,78,0,239,0,151,22,55, 0,38,159,0,151,77,0,43,0,207, 75,0,229,27,207,27,228,22,73,0, 38,204,0,207,27,228,22,73,0,43, 38,204,0,228,22,73,0,43,43,38, 204,0,38,196,0,43,38,196,0,43, 43,38,196,0,151,22,67,156,72,0, 38,43,0,156,72,0,101,37,167,38, 43,0,151,22,67,0,262,81,0,45, 0,226,0,193,0,226,261,45,0,40, 0,261,45,0,229,40,0,226,45,0, 151,22,76,0,38,227,0,184,28,151, 22,74,0,65,204,0,151,22,74,0, 38,204,65,204,0,65,196,0,38,204, 65,196,0,154,0,178,0,206,45,0, 259,45,0,46,40,0,256,45,0,176, 22,41,3,110,0,176,22,41,3,122, 0,122,0,47,91,37,38,43,0,176, 22,42,3,122,0,47,94,37,38,43, 0,176,22,41,0,176,22,42,0,206, 252,45,0,202,119,175,0,247,45,0 }; const unsigned short CLASS_HEADER scope_state[] = {0, 5150,5092,5167,5097,0,655,746,938,1017,0, 540,599,1254,1335,0,483,0,431,0,595, 4031,4062,4063,0,744,1469,2122,2568,0,356, 457,1517,556,837,1582,3910,983,1647,5001,655, 1712,4070,1064,4435,746,910,1145,1226,1777,4482, 1307,1388,4574,4769,4798,4827,4856,4885,4705,4737, 4914,4943,4972,4299,4333,4367,4401,4606,4639,4672, 4193,4229,4264,3872,4033,2974,3833,4002,5048,4162, 3106,3173,2874,3217,1842,1912,3261,3305,1982,3349, 2166,3393,3437,3481,3525,1469,2052,3569,3613,2122, 3657,2218,3701,2288,2358,2428,2498,2918,2612,2568, 2664,2734,3018,2804,3745,3789,3062,0,3106,3173, 2874,3217,1842,1912,3261,3305,1982,3349,2166,3393, 3437,3910,3481,3525,1469,2052,3569,3613,2122,3657, 2218,3701,2288,2358,2428,2498,2918,5001,2568,2664, 2734,3018,2804,4070,3745,3789,4435,3062,4482,1517, 1582,983,1647,1712,1064,1145,1226,1777,1307,1388, 457,556,837,655,746,910,356,0,538,729, 0,538,356,457,1009,1517,556,837,1582,1014, 1647,1051,1052,655,1712,1129,746,910,1132,1372, 1777,729,983,1064,1145,1226,1307,1388,0 }; const unsigned short CLASS_HEADER in_symb[] = {0, 0,234,101,103,236,45,110,237,100,239, 206,252,44,22,42,113,41,39,127,175, 78,77,75,71,70,72,76,126,125,124, 123,122,131,2,1,130,129,110,138,154, 45,29,74,67,73,119,55,155,178,190, 242,3,155,175,240,110,206,41,122,110, 3,151,68,69,119,22,131,8,7,140, 139,142,141,144,143,146,145,148,147,22, 173,9,3,22,117,191,112,110,113,9, 79,152,151,207,29,29,156,55,22,3, 110,22,3,173,9,266,43,22,22,22, 3,202,29,182,22,119,95,3,3,3, 151,113,110,8,7,5,6,4,17,19, 18,20,21,12,11,10,15,14,13,23, 16,26,24,25,176,177,9,29,176,45, 22,233,9,233,9,151,29,264,97,263, 67,151,29,39,41,42,176,39,41,151, 151,151,228,155,199,30,173,80,151,202, 29,4,41,28,183,173,173,139,139,113, 141,141,141,141,140,140,140,143,142,142, 145,144,151,147,146,28,30,22,28,258, 259,176,151,243,98,99,22,22,28,22, 109,22,22,109,3,22,28,28,27,30, 28,253,98,28,28,43,176,30,28,244, 102,110,197,119,155,151,45,176,22,176, 176,22,29,176,184,157,73,67,74,29, 207,45,214,45,214,28,119,28,261,82, 81,226,176,28,28,176,22,28,94,22, 22,22,43,27,256,196,175,257,30,247, 189,63,196,175,248,226,262,190,28,28, 176,228,151,151,229,199,44,119,189,189, 251,29,27,28,28,28,220,29,220,202, 29,204,104,22,207,184,22,189,250,221, 222,27,94,221,30,30,229,28,28,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0 }; #endif /* javadcl_INCLUDED */