/[svn]/linuxsampler/trunk/src/network/lscpparser.cpp
ViewVC logotype

Diff of /linuxsampler/trunk/src/network/lscpparser.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 973 by schoenebeck, Fri Dec 15 21:40:27 2006 UTC revision 1109 by iliev, Thu Mar 22 20:55:17 2007 UTC
# Line 1  Line 1 
1  /* A Bison parser, made by GNU Bison 2.2.  */  /* A Bison parser, made by GNU Bison 2.3.  */
2    
3  /* Skeleton implementation for Bison's Yacc-like parsers in C  /* Skeleton implementation for Bison's Yacc-like parsers in C
4    
# Line 47  Line 47 
47  #define YYBISON 1  #define YYBISON 1
48    
49  /* Bison version.  */  /* Bison version.  */
50  #define YYBISON_VERSION "2.2"  #define YYBISON_VERSION "2.3"
51    
52  /* Skeleton name.  */  /* Skeleton name.  */
53  #define YYSKELETON_NAME "yacc.c"  #define YYSKELETON_NAME "yacc.c"
# Line 351  union yyalloc Line 351  union yyalloc
351  /* YYFINAL -- State number of the termination state.  */  /* YYFINAL -- State number of the termination state.  */
352  #define YYFINAL  46  #define YYFINAL  46
353  /* YYLAST -- Last index in YYTABLE.  */  /* YYLAST -- Last index in YYTABLE.  */
354  #define YYLAST   4282  #define YYLAST   4543
355    
356  /* YYNTOKENS -- Number of terminals.  */  /* YYNTOKENS -- Number of terminals.  */
357  #define YYNTOKENS  227  #define YYNTOKENS  227
358  /* YYNNTS -- Number of nonterminals.  */  /* YYNNTS -- Number of nonterminals.  */
359  #define YYNNTS  124  #define YYNNTS  143
360  /* YYNRULES -- Number of rules.  */  /* YYNRULES -- Number of rules.  */
361  #define YYNRULES  486  #define YYNRULES  539
362  /* YYNRULES -- Number of states.  */  /* YYNRULES -- Number of states.  */
363  #define YYNSTATES  1455  #define YYNSTATES  1705
364    
365  /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */  /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
366  #define YYUNDEFTOK  2  #define YYUNDEFTOK  2
# Line 409  static const yytype_uint16 yyprhs[] = Line 409  static const yytype_uint16 yyprhs[] =
409        22,    25,    28,    31,    35,    39,    43,    47,    51,    55,        22,    25,    28,    31,    35,    39,    43,    47,    51,    55,
410        59,    63,    67,    71,    75,    79,    83,    87,    91,    93,        59,    63,    67,    71,    75,    79,    83,    87,    91,    93,
411        95,    97,    99,   103,   105,   107,   109,   111,   113,   115,        95,    97,    99,   103,   105,   107,   109,   111,   113,   115,
412       117,   119,   121,   123,   125,   127,   129,   131,   147,   165,       117,   119,   121,   123,   125,   127,   129,   131,   133,   135,
413       183,   203,   211,   215,   219,   223,   225,   227,   233,   241,       137,   139,   141,   143,   145,   147,   149,   151,   153,   155,
414       251,   253,   259,   267,   277,   279,   281,   287,   293,   301,       157,   159,   161,   163,   165,   167,   169,   171,   173,   175,
415       311,   319,   329,   331,   337,   345,   351,   357,   363,   367,       192,   211,   230,   251,   259,   263,   267,   271,   273,   275,
416       369,   371,   375,   379,   389,   391,   397,   405,   415,   423,       281,   289,   299,   301,   307,   315,   325,   327,   329,   335,
417       433,   437,   445,   449,   455,   459,   465,   469,   473,   477,       341,   349,   359,   367,   377,   379,   385,   393,   399,   405,
418       481,   485,   489,   493,   497,   503,   511,   517,   527,   533,       411,   415,   417,   419,   423,   427,   437,   439,   445,   449,
419       539,   545,   551,   557,   563,   569,   575,   581,   587,   591,       457,   459,   467,   477,   485,   495,   499,   507,   519,   529,
420       597,   599,   601,   603,   605,   607,   609,   611,   613,   617,       539,   543,   547,   553,   557,   563,   567,   573,   581,   585,
421       621,   623,   629,   637,   641,   643,   645,   647,   649,   651,       589,   593,   597,   601,   607,   611,   615,   621,   629,   635,
422       653,   655,   657,   659,   661,   663,   665,   667,   669,   671,       645,   651,   657,   663,   669,   675,   681,   687,   693,   699,
423       673,   675,   677,   679,   681,   683,   685,   689,   691,   693,       705,   706,   709,   713,   719,   721,   723,   725,   727,   729,
424       695,   697,   699,   701,   703,   706,   710,   715,   720,   722,       731,   733,   735,   739,   743,   745,   749,   755,   763,   767,
425       725,   727,   729,   731,   733,   735,   737,   739,   741,   743,       769,   771,   773,   775,   777,   779,   781,   783,   785,   787,
426       745,   747,   750,   753,   756,   759,   762,   765,   768,   771,       789,   791,   793,   795,   797,   799,   801,   803,   805,   807,
427       774,   776,   778,   780,   782,   784,   786,   788,   790,   792,       809,   811,   813,   815,   817,   821,   823,   825,   827,   829,
428       794,   796,   798,   800,   802,   804,   806,   808,   810,   812,       831,   833,   835,   838,   842,   847,   852,   854,   857,   859,
429       814,   816,   818,   820,   822,   824,   826,   828,   830,   832,       861,   863,   865,   867,   869,   871,   873,   875,   877,   879,
430       834,   836,   838,   840,   842,   844,   846,   848,   850,   852,       882,   885,   888,   891,   894,   897,   900,   903,   906,   908,
431       854,   856,   858,   860,   862,   864,   866,   868,   870,   872,       910,   912,   914,   916,   918,   920,   922,   924,   926,   928,
432       874,   876,   878,   880,   882,   884,   886,   888,   890,   892,       930,   932,   934,   936,   938,   940,   942,   944,   946,   948,
433       894,   896,   898,   900,   902,   904,   906,   908,   910,   912,       950,   952,   954,   956,   958,   960,   962,   964,   966,   968,
434       914,   916,   918,   920,   922,   924,   926,   928,   930,   932,       970,   972,   974,   976,   978,   980,   982,   984,   986,   988,
435       934,   936,   938,   940,   942,   944,   946,   948,   950,   952,       990,   992,   994,   996,   998,  1000,  1002,  1004,  1006,  1008,
436       954,   956,   958,   960,   962,   964,   966,   968,   970,   972,      1010,  1012,  1014,  1016,  1018,  1020,  1022,  1024,  1026,  1028,
437       974,   976,   978,   980,   982,   984,   986,   988,   990,   992,      1030,  1032,  1034,  1036,  1038,  1040,  1042,  1044,  1046,  1048,
438       994,   996,   998,  1000,  1002,  1004,  1006,  1008,  1010,  1012,      1050,  1052,  1054,  1056,  1058,  1060,  1062,  1064,  1066,  1068,
439      1014,  1016,  1018,  1020,  1022,  1024,  1026,  1028,  1030,  1032,      1070,  1072,  1074,  1076,  1078,  1080,  1082,  1084,  1086,  1088,
440      1034,  1036,  1038,  1040,  1042,  1044,  1046,  1048,  1050,  1052,      1090,  1092,  1094,  1096,  1098,  1100,  1102,  1104,  1106,  1108,
441      1054,  1056,  1058,  1060,  1062,  1064,  1066,  1068,  1070,  1072,      1110,  1112,  1114,  1116,  1118,  1120,  1122,  1124,  1126,  1128,
442      1074,  1076,  1078,  1080,  1082,  1084,  1086,  1088,  1090,  1092,      1130,  1132,  1134,  1136,  1138,  1140,  1142,  1144,  1146,  1148,
443      1094,  1096,  1098,  1100,  1102,  1104,  1106,  1108,  1110,  1112,      1150,  1152,  1154,  1156,  1158,  1160,  1162,  1164,  1166,  1168,
444      1114,  1116,  1118,  1120,  1122,  1124,  1126,  1128,  1130,  1132,      1170,  1172,  1174,  1176,  1178,  1180,  1182,  1184,  1186,  1188,
445      1134,  1136,  1138,  1140,  1142,  1144,  1146,  1148,  1150,  1152,      1190,  1192,  1194,  1196,  1198,  1200,  1202,  1204,  1206,  1208,
446      1154,  1156,  1158,  1160,  1162,  1164,  1166,  1168,  1170,  1172,      1210,  1212,  1214,  1216,  1218,  1220,  1222,  1224,  1226,  1228,
447      1174,  1176,  1178,  1180,  1182,  1184,  1186,  1188,  1190,  1192,      1230,  1232,  1234,  1236,  1238,  1240,  1242,  1244,  1246,  1248,
448      1194,  1196,  1198,  1200,  1202,  1204,  1206,  1208,  1210,  1212,      1250,  1252,  1254,  1256,  1258,  1260,  1262,  1264,  1266,  1268,
449      1214,  1216,  1219,  1222,  1226,  1230,  1232,  1234,  1236,  1240,      1270,  1272,  1274,  1276,  1278,  1280,  1282,  1284,  1286,  1288,
450      1244,  1248,  1254,  1260,  1267,  1275,  1280,  1285,  1289,  1294,      1290,  1292,  1294,  1296,  1298,  1300,  1302,  1304,  1306,  1308,
451      1302,  1312,  1319,  1323,  1333,  1345,  1352,  1360,  1378,  1409,      1310,  1312,  1314,  1316,  1318,  1320,  1322,  1324,  1326,  1328,
452      1418,  1423,  1437,  1450,  1462,  1475,  1487,  1505,  1527,  1538,      1330,  1332,  1334,  1336,  1338,  1340,  1342,  1344,  1346,  1348,
453      1545,  1555,  1570,  1581,  1611,  1632,  1652,  1682,  1702,  1733,      1351,  1354,  1358,  1362,  1364,  1366,  1368,  1372,  1376,  1380,
454      1754,  1772,  1801,  1829,  1855,  1874,  1892,  1920,  1936,  1953,      1386,  1392,  1399,  1407,  1412,  1417,  1421,  1426,  1434,  1444,
455      1973,  1994,  2012,  2028,  2047,  2063,  2074,  2081,  2088,  2093,      1451,  1455,  1465,  1477,  1484,  1492,  1510,  1541,  1550,  1555,
456      2098,  2104,  2115,  2121,  2135,  2140,  2145      1581,  1606,  1630,  1653,  1679,  1704,  1726,  1747,  1761,  1774,
457        1788,  1801,  1813,  1826,  1838,  1856,  1878,  1890,  1901,  1908,
458        1918,  1933,  1944,  1974,  1995,  2015,  2045,  2065,  2096,  2117,
459        2135,  2164,  2192,  2218,  2237,  2255,  2283,  2299,  2316,  2336,
460        2357,  2375,  2391,  2410,  2426,  2437,  2453,  2461,  2470,  2477,
461        2484,  2490,  2495,  2500,  2506,  2517,  2523,  2537,  2542,  2547
462  };  };
463    
464  /* YYRHS -- A `-1'-separated list of the rules' RHS.  */  /* YYRHS -- A `-1'-separated list of the rules' RHS.  */
465  static const yytype_int16 yyrhs[] =  static const yytype_int16 yyrhs[] =
466  {  {
467       228,     0,    -1,   229,   280,    -1,   229,   281,   280,    -1,       228,     0,    -1,   229,   284,    -1,   229,   285,   284,    -1,
468        -1,   230,    -1,   231,    -1,     1,    -1,     3,    -1,   230,        -1,   230,    -1,   231,    -1,     1,    -1,     3,    -1,   230,
469         3,    -1,   230,   279,    -1,   230,   275,    -1,   230,   271,         3,    -1,   230,   283,    -1,   230,   279,    -1,   230,   275,
470        -1,   282,   279,   232,    -1,   284,   279,   235,    -1,   285,        -1,   286,   283,   232,    -1,   288,   283,   235,    -1,   289,
471       279,   236,    -1,   283,   279,   238,    -1,   287,   279,   240,       283,   236,    -1,   287,   283,   238,    -1,   291,   283,   240,
472        -1,   288,   279,   243,    -1,   289,   279,   248,    -1,   290,        -1,   292,   283,   243,    -1,   293,   283,   249,    -1,   294,
473       279,   244,    -1,   295,   279,   237,    -1,   296,   279,   239,       283,   244,    -1,   299,   283,   237,    -1,   300,   283,   239,
474        -1,   297,   279,   233,    -1,   298,   279,   234,    -1,   299,        -1,   301,   283,   233,    -1,   302,   283,   234,    -1,   303,
475       279,   277,    -1,   346,   279,   241,    -1,   286,   279,   242,       283,   281,    -1,   365,   283,   241,    -1,   290,   283,   242,
476        -1,   346,    -1,   350,    -1,   300,    -1,   333,    -1,   333,        -1,   365,    -1,   369,    -1,   304,    -1,   348,    -1,   348,
477       279,   266,    -1,   305,    -1,   309,    -1,   308,    -1,   307,       283,   269,    -1,   309,    -1,   310,    -1,   311,    -1,   312,
478        -1,   306,    -1,   347,    -1,   310,    -1,   305,    -1,   309,        -1,   317,    -1,   323,    -1,   322,    -1,   321,    -1,   318,
479        -1,   308,    -1,   307,    -1,   306,    -1,   347,    -1,   310,        -1,   319,    -1,   320,    -1,   313,    -1,   314,    -1,   315,
480        -1,   331,   279,   258,   279,   259,   279,   260,   279,   264,        -1,   316,    -1,   366,    -1,   324,    -1,   326,    -1,   309,
481       279,   265,   279,   263,   279,   261,    -1,   331,   279,   258,        -1,   310,    -1,   311,    -1,   312,    -1,   317,    -1,   323,
482       279,   259,   279,   260,   279,   264,   279,   265,   279,   263,        -1,   322,    -1,   321,    -1,   318,    -1,   319,    -1,   320,
483       279,   261,   279,   251,    -1,   331,   279,   258,   279,   259,        -1,   313,    -1,   314,    -1,   315,    -1,   316,    -1,   366,
484       279,   260,   279,   264,   279,   265,   279,   263,   279,   261,        -1,   324,    -1,   326,    -1,   346,   283,   246,   259,   283,
485       279,   267,    -1,   331,   279,   258,   279,   259,   279,   260,       260,   283,   261,   283,   267,   283,   268,   283,   265,   283,
486       279,   264,   279,   265,   279,   263,   279,   261,   279,   251,       263,    -1,   346,   283,   246,   259,   283,   260,   283,   261,
487       279,   267,    -1,   331,   279,   258,   279,   259,   279,   260,       283,   267,   283,   268,   283,   265,   283,   263,   283,   252,
488        -1,   300,   279,   262,    -1,   333,   279,   258,    -1,   333,        -1,   346,   283,   246,   259,   283,   260,   283,   261,   283,
489       279,   291,    -1,   301,    -1,   325,    -1,   335,   279,   304,       267,   283,   268,   283,   265,   283,   263,   283,   270,    -1,
490       279,   271,    -1,   330,   279,   304,   279,   271,   279,   271,       346,   283,   246,   259,   283,   260,   283,   261,   283,   267,
491        -1,   330,   279,   304,   279,   271,   279,   271,   279,   246,       283,   268,   283,   265,   283,   263,   283,   252,   283,   270,
492        -1,   302,    -1,   321,   279,   304,   279,   271,    -1,   320,        -1,   346,   283,   259,   283,   260,   283,   261,    -1,   304,
493       279,   304,   279,   271,   279,   271,    -1,   320,   279,   304,       283,   264,    -1,   348,   283,   259,    -1,   348,   283,   295,
494       279,   271,   279,   271,   279,   246,    -1,   318,    -1,   328,        -1,   305,    -1,   340,    -1,   350,   283,   308,   283,   275,
495        -1,   319,   279,   304,   279,   275,    -1,   329,   279,   304,        -1,   345,   283,   308,   283,   275,   283,   275,    -1,   345,
496       279,   275,    -1,   336,   279,   304,   279,   275,   279,   275,       283,   308,   283,   275,   283,   275,   283,   247,    -1,   306,
497        -1,   327,   279,   304,   279,   275,   279,   275,   279,   271,        -1,   336,   283,   308,   283,   275,    -1,   335,   283,   308,
498        -1,   323,   279,   304,   279,   275,   279,   275,    -1,   322,       283,   275,   283,   275,    -1,   335,   283,   308,   283,   275,
499       279,   304,   279,   275,   279,   275,   279,   271,    -1,   303,       283,   275,   283,   247,    -1,   333,    -1,   343,    -1,   334,
500        -1,   300,   279,   304,   279,   262,    -1,   300,   279,   307,       283,   308,   283,   279,    -1,   344,   283,   308,   283,   279,
501       279,   247,   279,   262,    -1,   300,   279,   308,   279,   262,        -1,   351,   283,   308,   283,   279,   283,   279,    -1,   342,
502        -1,   300,   279,   309,   279,   262,    -1,   313,   279,   304,       283,   308,   283,   279,   283,   279,   283,   275,    -1,   338,
503       279,   264,    -1,   340,   279,   304,    -1,   310,    -1,   311,       283,   308,   283,   279,   283,   279,    -1,   337,   283,   308,
504        -1,   332,   279,   258,    -1,   332,   279,   291,    -1,   331,       283,   279,   283,   279,   283,   275,    -1,   307,    -1,   304,
505       279,   304,   279,   258,   279,   259,   279,   260,    -1,   334,       283,   308,   283,   264,    -1,   304,   283,   321,   283,   248,
506        -1,   333,   279,   304,   279,   258,    -1,   317,   279,   275,       283,   264,    -1,   304,   283,   322,   283,   264,    -1,   304,
507       279,   271,     4,   268,    -1,   322,   279,   275,   279,   275,       283,   323,   283,   264,    -1,   328,   283,   308,   283,   267,
508       279,   271,     4,   268,    -1,   326,   279,   275,   279,   271,        -1,   358,   283,   308,    -1,   324,    -1,   325,    -1,   347,
509         4,   268,    -1,   327,   279,   275,   279,   275,   279,   271,       283,   259,    -1,   347,   283,   295,    -1,   346,   283,   308,
510         4,   268,    -1,   300,   279,   245,    -1,   333,   279,   348,       283,   259,   283,   260,   283,   261,    -1,   349,    -1,   348,
511       279,   258,   279,   266,    -1,   349,   279,   270,    -1,   319,       283,   308,   283,   259,    -1,   357,   283,   264,    -1,   356,
512       279,   271,   279,   246,    -1,   319,   279,   271,    -1,   329,       283,   308,   283,   264,   283,   266,    -1,   359,    -1,   332,
513       279,   271,   279,   246,    -1,   329,   279,   271,    -1,   300,       283,   279,   283,   275,     4,   272,    -1,   337,   283,   279,
514       279,   262,    -1,   332,   279,   258,    -1,   332,   279,   291,       283,   279,   283,   275,     4,   272,    -1,   341,   283,   279,
515        -1,   319,   279,   275,    -1,   329,   279,   275,    -1,   312,       283,   275,     4,   272,    -1,   342,   283,   279,   283,   279,
516       279,   249,    -1,   313,   279,   250,    -1,   319,   279,   262,       283,   275,     4,   272,    -1,   304,   283,   245,    -1,   348,
517       279,   252,    -1,   323,   279,   262,   279,   253,   279,   253,       283,   367,   283,   259,   283,   269,    -1,   356,   283,   338,
518        -1,   324,   279,   262,   279,   254,    -1,   339,   279,   262,       283,   264,   283,   266,   283,   254,   283,   254,    -1,   356,
519       279,   252,   279,   255,   279,   256,    -1,   329,   279,   262,       283,   355,   283,   264,   283,   266,   283,   262,    -1,   356,
520       279,   252,    -1,   336,   279,   262,   279,   255,    -1,   337,       283,   360,   283,   264,   283,   266,   283,   263,    -1,   368,
521       279,   262,   279,   256,    -1,   338,   279,   262,   279,   257,       283,   274,    -1,   359,   283,   263,    -1,   334,   283,   275,
522        -1,   341,   279,   262,   279,   261,    -1,   342,   279,   262,       283,   247,    -1,   334,   283,   275,    -1,   344,   283,   275,
523       279,   270,    -1,   343,   279,   262,   279,   270,    -1,   333,       283,   247,    -1,   344,   283,   275,    -1,   356,   283,   264,
524       279,   262,   279,   258,    -1,   333,   279,   262,   279,   292,       283,   262,    -1,   356,   283,   264,   283,   262,   283,   271,
525        -1,   333,   279,   262,   279,   293,    -1,   271,     4,   268,        -1,   304,   283,   264,    -1,   347,   283,   259,    -1,   347,
526        -1,   246,   279,   271,     4,   268,    -1,   344,    -1,   345,       283,   295,    -1,   334,   283,   279,    -1,   344,   283,   279,
527        -1,   318,    -1,   328,    -1,   303,    -1,   301,    -1,   325,        -1,   356,   283,   264,   283,   266,    -1,   327,   283,   250,
528        -1,   302,    -1,   332,   279,   258,    -1,   332,   279,   291,        -1,   328,   283,   251,    -1,   334,   283,   264,   283,   253,
529        -1,   334,    -1,   265,   279,   263,   279,   262,    -1,   294,        -1,   338,   283,   264,   283,   254,   283,   254,    -1,   339,
530       279,   265,   279,   263,   279,   262,    -1,   264,   279,   262,       283,   264,   283,   255,    -1,   354,   283,   264,   283,   253,
531        -1,   314,    -1,   315,    -1,   316,    -1,   275,    -1,   275,       283,   256,   283,   257,    -1,   344,   283,   264,   283,   253,
532        -1,   271,    -1,   275,    -1,   275,    -1,   291,    -1,   271,        -1,   351,   283,   264,   283,   256,    -1,   352,   283,   264,
533        -1,   275,    -1,   275,    -1,   275,    -1,   272,    -1,   275,       283,   257,    -1,   353,   283,   264,   283,   258,    -1,   359,
534        -1,   275,    -1,   275,    -1,   271,    -1,   278,    -1,   278,       283,   264,   283,   263,    -1,   361,   283,   264,   283,   274,
535        -1,   278,    -1,   269,    -1,   268,     5,   269,    -1,   271,        -1,   362,   283,   264,   283,   274,    -1,   348,   283,   264,
536        -1,   278,    -1,   275,    -1,   272,    -1,   275,    -1,   271,       283,   259,    -1,   348,   283,   264,   283,   296,    -1,   348,
537        -1,   276,    -1,   271,   276,    -1,   273,     6,   273,    -1,       283,   264,   283,   297,    -1,    -1,   298,   283,    -1,   275,
538         7,   273,     6,   273,    -1,     8,   273,     6,   273,    -1,         4,   272,    -1,   247,   283,   275,     4,   272,    -1,   363,
539       274,    -1,   273,   274,    -1,     9,    -1,    10,    -1,    11,        -1,   364,    -1,   333,    -1,   343,    -1,   307,    -1,   305,
540        -1,    12,    -1,    13,    -1,    14,    -1,    15,    -1,    16,        -1,   340,    -1,   306,    -1,   347,   283,   259,    -1,   347,
541        -1,    17,    -1,    18,    -1,   274,    -1,    10,   273,    -1,       283,   295,    -1,   349,    -1,   357,   283,   264,    -1,   268,
542        11,   273,    -1,    12,   273,    -1,    13,   273,    -1,    14,       283,   265,   283,   264,    -1,   298,   283,   268,   283,   265,
543       273,    -1,    15,   273,    -1,    16,   273,    -1,    17,   273,       283,   264,    -1,   267,   283,   264,    -1,   329,    -1,   330,
544        -1,    18,   273,    -1,    19,    -1,    20,    -1,    21,    -1,        -1,   331,    -1,   279,    -1,   279,    -1,   275,    -1,   279,
545        22,    -1,    23,    -1,    24,    -1,    25,    -1,    26,    -1,        -1,   279,    -1,   295,    -1,   275,    -1,   279,    -1,   279,
546        27,    -1,    28,    -1,    29,    -1,    30,    -1,    31,    -1,        -1,   279,    -1,   279,    -1,   276,    -1,   279,    -1,   279,
547        32,    -1,    33,    -1,    34,    -1,    35,    -1,    36,    -1,        -1,   279,    -1,   279,    -1,   275,    -1,   282,    -1,   282,
548        37,    -1,    38,    -1,    39,    -1,    40,    -1,    41,    -1,        -1,   282,    -1,   282,    -1,   273,    -1,   272,     5,   273,
549        42,    -1,    43,    -1,    44,    -1,    45,    -1,    46,    -1,        -1,   275,    -1,   282,    -1,   279,    -1,   276,    -1,   279,
550        47,    -1,    48,    -1,    49,    -1,    50,    -1,    51,    -1,        -1,   275,    -1,   280,    -1,   275,   280,    -1,   277,     6,
551        52,    -1,    53,    -1,    54,    -1,    55,    -1,    56,    -1,       277,    -1,     7,   277,     6,   277,    -1,     8,   277,     6,
552        57,    -1,    58,    -1,    59,    -1,    60,    -1,    61,    -1,       277,    -1,   278,    -1,   277,   278,    -1,     9,    -1,    10,
553        62,    -1,    63,    -1,    64,    -1,    65,    -1,    66,    -1,        -1,    11,    -1,    12,    -1,    13,    -1,    14,    -1,    15,
554        67,    -1,    68,    -1,    69,    -1,    70,    -1,     9,    -1,        -1,    16,    -1,    17,    -1,    18,    -1,   278,    -1,    10,
555        10,    -1,    11,    -1,    12,    -1,    13,    -1,    14,    -1,       277,    -1,    11,   277,    -1,    12,   277,    -1,    13,   277,
556        15,    -1,    16,    -1,    17,    -1,    18,    -1,    71,    -1,        -1,    14,   277,    -1,    15,   277,    -1,    16,   277,    -1,
557         3,    -1,    72,    -1,    73,    -1,    74,    -1,    75,    -1,        17,   277,    -1,    18,   277,    -1,    19,    -1,    20,    -1,
558        76,    -1,    77,    -1,     7,    -1,     8,    -1,     6,    -1,        21,    -1,    22,    -1,    23,    -1,    24,    -1,    25,    -1,
559         5,    -1,    78,    -1,    79,    -1,    80,    -1,    81,    -1,        26,    -1,    27,    -1,    28,    -1,    29,    -1,    30,    -1,
560         4,    -1,    82,    -1,    83,    -1,    84,    -1,    85,    -1,        31,    -1,    32,    -1,    33,    -1,    34,    -1,    35,    -1,
561        86,    -1,    87,    -1,    88,    -1,    89,    -1,    90,    -1,        36,    -1,    37,    -1,    38,    -1,    39,    -1,    40,    -1,
562        91,    -1,    92,    -1,    93,    -1,    94,    -1,    95,    -1,        41,    -1,    42,    -1,    43,    -1,    44,    -1,    45,    -1,
563        96,    -1,    97,    -1,    98,    -1,    99,    -1,   100,    -1,        46,    -1,    47,    -1,    48,    -1,    49,    -1,    50,    -1,
564       101,    -1,   102,    -1,   103,    -1,   104,    -1,   105,    -1,        51,    -1,    52,    -1,    53,    -1,    54,    -1,    55,    -1,
565       106,    -1,   107,    -1,   108,    -1,   109,    -1,   110,    -1,        56,    -1,    57,    -1,    58,    -1,    59,    -1,    60,    -1,
566       111,    -1,   112,    -1,   113,    -1,   114,    -1,   115,    -1,        61,    -1,    62,    -1,    63,    -1,    64,    -1,    65,    -1,
567       116,    -1,   117,    -1,   118,    -1,   119,    -1,   120,    -1,        66,    -1,    67,    -1,    68,    -1,    69,    -1,    70,    -1,
568       121,    -1,   122,    -1,   123,    -1,   124,    -1,   125,    -1,         9,    -1,    10,    -1,    11,    -1,    12,    -1,    13,    -1,
569       126,    -1,   127,    -1,   128,    -1,   129,    -1,   130,    -1,        14,    -1,    15,    -1,    16,    -1,    17,    -1,    18,    -1,
570       131,    -1,   132,    -1,   133,    -1,   134,    -1,   135,    -1,        71,    -1,     3,    -1,    72,    -1,    73,    -1,    74,    -1,
571       136,    -1,   137,    -1,   138,    -1,   139,    -1,   140,    -1,        75,    -1,    76,    -1,    77,    -1,     7,    -1,     8,    -1,
572       141,    -1,   142,    -1,   143,    -1,   144,    -1,   145,    -1,         6,    -1,     5,    -1,    78,    -1,    79,    -1,    80,    -1,
573       146,    -1,   147,    -1,   148,    -1,   149,    -1,   150,    -1,        81,    -1,     4,    -1,    82,    -1,    83,    -1,    84,    -1,
574       151,    -1,   152,    -1,   153,    -1,   154,    -1,   155,    -1,        85,    -1,    86,    -1,    87,    -1,    88,    -1,    89,    -1,
575       156,    -1,   157,    -1,   158,    -1,   159,    -1,   160,    -1,        90,    -1,    91,    -1,    92,    -1,    93,    -1,    94,    -1,
576       161,    -1,   162,    -1,   163,    -1,   164,    -1,   165,    -1,        95,    -1,    96,    -1,    97,    -1,    98,    -1,    99,    -1,
577       166,    -1,   167,    -1,   168,    -1,   169,    -1,   170,    -1,       100,    -1,   101,    -1,   102,    -1,   103,    -1,   104,    -1,
578       171,    -1,   172,    -1,   173,    -1,   174,    -1,   175,    -1,       105,    -1,   106,    -1,   107,    -1,   108,    -1,   109,    -1,
579       176,    -1,   177,    -1,   178,    -1,   179,    -1,   180,    -1,       110,    -1,   111,    -1,   112,    -1,   113,    -1,   114,    -1,
580       181,    -1,   182,    -1,   183,    -1,   184,    -1,   185,    -1,       115,    -1,   116,    -1,   117,    -1,   118,    -1,   119,    -1,
581       186,    -1,   187,    -1,   188,    -1,   189,    -1,   190,    -1,       120,    -1,   121,    -1,   122,    -1,   123,    -1,   124,    -1,
582       191,    -1,   192,    -1,   193,    -1,   194,    -1,   195,    -1,       125,    -1,   126,    -1,   127,    -1,   128,    -1,   129,    -1,
583       196,    -1,   197,    -1,   198,    -1,   199,    -1,   200,    -1,       130,    -1,   131,    -1,   132,    -1,   133,    -1,   134,    -1,
584       201,    -1,   202,    -1,   203,    -1,   204,    -1,   205,    -1,       135,    -1,   136,    -1,   137,    -1,   138,    -1,   139,    -1,
585       206,    -1,   207,    -1,   208,    -1,   209,    -1,   210,    -1,       140,    -1,   141,    -1,   142,    -1,   143,    -1,   144,    -1,
586       211,    -1,   212,    -1,   213,    -1,   214,    -1,   215,    -1,       145,    -1,   146,    -1,   147,    -1,   148,    -1,   149,    -1,
587       216,    -1,   217,    -1,   218,    -1,   219,    -1,   220,    -1,       150,    -1,   151,    -1,   152,    -1,   153,    -1,   154,    -1,
588       221,    -1,   279,    -1,   271,    -1,   277,   279,    -1,   277,       155,    -1,   156,    -1,   157,    -1,   158,    -1,   159,    -1,
589       271,    -1,   222,   277,   222,    -1,   223,   277,   223,    -1,       160,    -1,   161,    -1,   162,    -1,   163,    -1,   164,    -1,
590       224,    -1,   225,    -1,   226,    -1,    19,    22,    22,    -1,       165,    -1,   166,    -1,   167,    -1,   168,    -1,   169,    -1,
591        25,    23,    38,    -1,    31,    19,    34,    -1,    39,    32,       170,    -1,   171,    -1,   172,    -1,   173,    -1,   174,    -1,
592        31,    19,    34,    -1,    21,    30,    23,    19,    36,    -1,       175,    -1,   176,    -1,   177,    -1,   178,    -1,   179,    -1,
593        21,    36,    23,    19,    38,    23,    -1,    22,    23,    37,       180,    -1,   181,    -1,   182,    -1,   183,    -1,   184,    -1,
594        38,    36,    33,    43,    -1,    30,    27,    37,    38,    -1,       185,    -1,   186,    -1,   187,    -1,   188,    -1,   189,    -1,
595        30,    33,    19,    22,    -1,    19,    30,    30,    -1,    32,       190,    -1,   191,    -1,   192,    -1,   193,    -1,   194,    -1,
596        33,    32,    23,    -1,    22,    23,    24,    19,    39,    30,       195,    -1,   196,    -1,   197,    -1,   198,    -1,   199,    -1,
597        38,    -1,    32,    33,    32,    89,    31,    33,    22,    19,       200,    -1,   201,    -1,   202,    -1,   203,    -1,   204,    -1,
598        30,    -1,    36,    23,    31,    33,    40,    23,    -1,    37,       205,    -1,   206,    -1,   207,    -1,   208,    -1,   209,    -1,
599        23,    38,    -1,    37,    39,    20,    37,    21,    36,    27,       210,    -1,   211,    -1,   212,    -1,   213,    -1,   214,    -1,
600        20,    23,    -1,    39,    32,    37,    39,    20,    37,    21,       215,    -1,   216,    -1,   217,    -1,   218,    -1,   219,    -1,
601        36,    27,    20,    23,    -1,    37,    23,    30,    23,    21,       220,    -1,   221,    -1,   283,    -1,   275,    -1,   281,   283,
602        38,    -1,    21,    26,    19,    32,    32,    23,    30,    -1,        -1,   281,   275,    -1,   222,   281,   222,    -1,   223,   281,
603         223,    -1,   224,    -1,   225,    -1,   226,    -1,    19,    22,
604          22,    -1,    25,    23,    38,    -1,    31,    19,    34,    -1,
605          39,    32,    31,    19,    34,    -1,    21,    30,    23,    19,
606          36,    -1,    21,    36,    23,    19,    38,    23,    -1,    22,
607          23,    37,    38,    36,    33,    43,    -1,    30,    27,    37,
608          38,    -1,    30,    33,    19,    22,    -1,    19,    30,    30,
609          -1,    32,    33,    32,    23,    -1,    22,    23,    24,    19,
610          39,    30,    38,    -1,    32,    33,    32,    89,    31,    33,
611          22,    19,    30,    -1,    36,    23,    31,    33,    40,    23,
612          -1,    37,    23,    38,    -1,    37,    39,    20,    37,    21,
613          36,    27,    20,    23,    -1,    39,    32,    37,    39,    20,
614          37,    21,    36,    27,    20,    23,    -1,    37,    23,    30,
615          23,    21,    38,    -1,    21,    26,    19,    32,    32,    23,
616          30,    -1,    19,    40,    19,    27,    30,    19,    20,    30,
617          23,    89,    23,    32,    25,    27,    32,    23,    37,    -1,
618        19,    40,    19,    27,    30,    19,    20,    30,    23,    89,        19,    40,    19,    27,    30,    19,    20,    30,    23,    89,
619        23,    32,    25,    27,    32,    23,    37,    -1,    19,    40,        19,    39,    22,    27,    33,    89,    33,    39,    38,    34,
620        19,    27,    30,    19,    20,    30,    23,    89,    19,    39,        39,    38,    89,    22,    36,    27,    40,    23,    36,    37,
621        22,    27,    33,    89,    33,    39,    38,    34,    39,    38,        -1,    21,    26,    19,    32,    32,    23,    30,    37,    -1,
622        89,    22,    36,    27,    40,    23,    36,    37,    -1,    21,        27,    32,    24,    33,    -1,    19,    39,    22,    27,    33,
623        26,    19,    32,    32,    23,    30,    37,    -1,    27,    32,        89,    33,    39,    38,    34,    39,    38,    89,    22,    23,
624        24,    33,    -1,    21,    26,    19,    32,    32,    23,    30,        40,    27,    21,    23,    89,    21,    33,    39,    32,    38,
       89,    21,    33,    39,    32,    38,    -1,    21,    26,    19,  
       32,    32,    23,    30,    89,    27,    32,    24,    33,    -1,  
       20,    39,    24,    24,    23,    36,    89,    24,    27,    30,  
       30,    -1,    37,    38,    36,    23,    19,    31,    89,    21,  
       33,    39,    32,    38,    -1,    40,    33,    27,    21,    23,  
       89,    21,    33,    39,    32,    38,    -1,    38,    33,    38,  
       19,    30,    89,    40,    33,    27,    21,    23,    89,    21,  
       33,    39,    32,    38,    -1,    38,    33,    38,    19,    30,  
       89,    40,    33,    27,    21,    23,    89,    21,    33,    39,  
       32,    38,    89,    31,    19,    42,    -1,    27,    32,    37,  
       38,    36,    39,    31,    23,    32,    38,    -1,    23,    32,  
       25,    27,    32,    23,    -1,    33,    32,    89,    22,    23,  
       31,    19,    32,    22,    -1,    33,    32,    89,    22,    23,  
       31,    19,    32,    22,    89,    26,    33,    30,    22,    -1,  
       34,    23,    36,    37,    27,    37,    38,    23,    32,    38,  
       -1,    19,    39,    22,    27,    33,    89,    33,    39,    38,  
       34,    39,    38,    89,    22,    23,    40,    27,    21,    23,  
       89,    34,    19,    36,    19,    31,    23,    38,    23,    36,  
625        -1,    19,    39,    22,    27,    33,    89,    33,    39,    38,        -1,    19,    39,    22,    27,    33,    89,    33,    39,    38,
626        34,    39,    38,    89,    22,    23,    40,    27,    21,    23,        34,    39,    38,    89,    22,    23,    40,    27,    21,    23,
627        37,    -1,    19,    39,    22,    27,    33,    89,    33,    39,        89,    27,    32,    24,    33,    -1,    31,    27,    22,    27,
628        38,    34,    39,    38,    89,    22,    23,    40,    27,    21,        89,    27,    32,    34,    39,    38,    89,    22,    23,    40,
629        23,    -1,    19,    39,    22,    27,    33,    89,    33,    39,        27,    21,    23,    89,    21,    33,    39,    32,    38,    -1,
630        38,    34,    39,    38,    89,    22,    36,    27,    40,    23,        31,    27,    22,    27,    89,    27,    32,    34,    39,    38,
631        36,    89,    34,    19,    36,    19,    31,    23,    38,    23,        89,    22,    23,    40,    27,    21,    23,    89,    27,    32,
632        36,    -1,    19,    39,    22,    27,    33,    89,    33,    39,        24,    33,    -1,    31,    27,    22,    27,    89,    27,    32,
       38,    34,    39,    38,    89,    22,    36,    27,    40,    23,  
       36,    -1,    19,    39,    22,    27,    33,    89,    33,    39,  
       38,    34,    39,    38,    89,    21,    26,    19,    32,    32,  
       23,    30,    89,    34,    19,    36,    19,    31,    23,    38,  
       23,    36,    -1,    19,    39,    22,    27,    33,    89,    33,  
       39,    38,    34,    39,    38,    89,    21,    26,    19,    32,  
       32,    23,    30,    -1,    19,    39,    22,    27,    33,    89,  
       33,    39,    38,    34,    39,    38,    89,    38,    43,    34,  
       23,    -1,    19,    40,    19,    27,    30,    19,    20,    30,  
       23,    89,    31,    27,    22,    27,    89,    27,    32,    34,  
       39,    38,    89,    22,    36,    27,    40,    23,    36,    37,  
       -1,    31,    27,    22,    27,    89,    27,    32,    34,    39,  
       38,    89,    22,    23,    40,    27,    21,    23,    89,    34,  
       19,    36,    19,    31,    23,    38,    23,    36,    -1,    31,  
       27,    22,    27,    89,    27,    32,    34,    39,    38,    89,  
       34,    33,    36,    38,    89,    34,    19,    36,    19,    31,  
       23,    38,    23,    36,    -1,    31,    27,    22,    27,    89,  
       27,    32,    34,    39,    38,    89,    22,    23,    40,    27,  
       21,    23,    37,    -1,    31,    27,    22,    27,    89,    27,  
       32,    34,    39,    38,    89,    22,    23,    40,    27,    21,  
       23,    -1,    31,    27,    22,    27,    89,    27,    32,    34,  
       39,    38,    89,    22,    36,    27,    40,    23,    36,    89,  
       34,    19,    36,    19,    31,    23,    38,    23,    36,    -1,  
       31,    27,    22,    27,    89,    27,    32,    37,    38,    36,  
       39,    31,    23,    32,    38,    -1,    31,    27,    22,    27,  
       89,    27,    32,    37,    38,    36,    39,    31,    23,    32,  
       38,    37,    -1,    31,    27,    22,    27,    89,    27,    32,  
633        37,    38,    36,    39,    31,    23,    32,    38,    89,    31,        37,    38,    36,    39,    31,    23,    32,    38,    89,    31,
634        19,    34,    -1,    31,    27,    22,    27,    89,    27,    32,        19,    34,    89,    21,    33,    39,    32,    38,    -1,    31,
635        37,    38,    36,    39,    31,    23,    32,    38,    89,    31,        27,    22,    27,    89,    27,    32,    37,    38,    36,    39,
636        19,    34,    37,    -1,    31,    27,    22,    27,    89,    27,        31,    23,    32,    38,    89,    31,    19,    34,    89,    27,
637        32,    34,    39,    38,    89,    22,    36,    27,    40,    23,        32,    24,    33,    -1,    31,    27,    22,    27,    89,    27,
638          32,    37,    38,    36,    39,    31,    23,    32,    38,    89,
639          21,    33,    39,    32,    38,    -1,    31,    27,    22,    27,
640          89,    27,    32,    37,    38,    36,    39,    31,    23,    32,
641          38,    89,    27,    32,    24,    33,    -1,    21,    26,    19,
642          32,    32,    23,    30,    89,    21,    33,    39,    32,    38,
643          -1,    21,    26,    19,    32,    32,    23,    30,    89,    27,
644          32,    24,    33,    -1,    24,    42,    89,    37,    23,    32,
645          22,    89,    21,    33,    39,    32,    38,    -1,    24,    42,
646          89,    37,    23,    32,    22,    89,    27,    32,    24,    33,
647          -1,    20,    39,    24,    24,    23,    36,    89,    24,    27,
648          30,    30,    -1,    37,    38,    36,    23,    19,    31,    89,
649          21,    33,    39,    32,    38,    -1,    40,    33,    27,    21,
650          23,    89,    21,    33,    39,    32,    38,    -1,    38,    33,
651          38,    19,    30,    89,    40,    33,    27,    21,    23,    89,
652          21,    33,    39,    32,    38,    -1,    38,    33,    38,    19,
653          30,    89,    40,    33,    27,    21,    23,    89,    21,    33,
654          39,    32,    38,    89,    31,    19,    42,    -1,    25,    30,
655          33,    20,    19,    30,    89,    27,    32,    24,    33,    -1,
656          27,    32,    37,    38,    36,    39,    31,    23,    32,    38,
657          -1,    23,    32,    25,    27,    32,    23,    -1,    33,    32,
658          89,    22,    23,    31,    19,    32,    22,    -1,    33,    32,
659          89,    22,    23,    31,    19,    32,    22,    89,    26,    33,
660          30,    22,    -1,    34,    23,    36,    37,    27,    37,    38,
661          23,    32,    38,    -1,    19,    39,    22,    27,    33,    89,
662          33,    39,    38,    34,    39,    38,    89,    22,    23,    40,
663          27,    21,    23,    89,    34,    19,    36,    19,    31,    23,
664          38,    23,    36,    -1,    19,    39,    22,    27,    33,    89,
665          33,    39,    38,    34,    39,    38,    89,    22,    23,    40,
666          27,    21,    23,    37,    -1,    19,    39,    22,    27,    33,
667          89,    33,    39,    38,    34,    39,    38,    89,    22,    23,
668          40,    27,    21,    23,    -1,    19,    39,    22,    27,    33,
669          89,    33,    39,    38,    34,    39,    38,    89,    22,    36,
670          27,    40,    23,    36,    89,    34,    19,    36,    19,    31,
671          23,    38,    23,    36,    -1,    19,    39,    22,    27,    33,
672          89,    33,    39,    38,    34,    39,    38,    89,    22,    36,
673          27,    40,    23,    36,    -1,    19,    39,    22,    27,    33,
674          89,    33,    39,    38,    34,    39,    38,    89,    21,    26,
675          19,    32,    32,    23,    30,    89,    34,    19,    36,    19,
676          31,    23,    38,    23,    36,    -1,    19,    39,    22,    27,
677          33,    89,    33,    39,    38,    34,    39,    38,    89,    21,
678          26,    19,    32,    32,    23,    30,    -1,    19,    39,    22,
679          27,    33,    89,    33,    39,    38,    34,    39,    38,    89,
680          38,    43,    34,    23,    -1,    19,    40,    19,    27,    30,
681          19,    20,    30,    23,    89,    31,    27,    22,    27,    89,
682          27,    32,    34,    39,    38,    89,    22,    36,    27,    40,
683          23,    36,    37,    -1,    31,    27,    22,    27,    89,    27,
684          32,    34,    39,    38,    89,    22,    23,    40,    27,    21,
685          23,    89,    34,    19,    36,    19,    31,    23,    38,    23,
686        36,    -1,    31,    27,    22,    27,    89,    27,    32,    34,        36,    -1,    31,    27,    22,    27,    89,    27,    32,    34,
687        39,    38,    89,    34,    33,    36,    38,    -1,    31,    27,        39,    38,    89,    34,    33,    36,    38,    89,    34,    19,
688        22,    27,    89,    27,    32,    34,    39,    38,    89,    21,        36,    19,    31,    23,    38,    23,    36,    -1,    31,    27,
689        26,    19,    32,    32,    23,    30,    -1,    31,    27,    22,        22,    27,    89,    27,    32,    34,    39,    38,    89,    22,
690        27,    89,    27,    32,    34,    39,    38,    89,    38,    43,        23,    40,    27,    21,    23,    37,    -1,    31,    27,    22,
691        34,    23,    -1,    31,    27,    22,    27,    89,    27,    32,        27,    89,    27,    32,    34,    39,    38,    89,    22,    23,
692        34,    39,    38,    -1,    37,    23,    36,    40,    23,    36,        40,    27,    21,    23,    -1,    31,    27,    22,    27,    89,
693        -1,    40,    33,    30,    39,    31,    23,    -1,    31,    39,        27,    32,    34,    39,    38,    89,    22,    36,    27,    40,
694        38,    23,    -1,    37,    33,    30,    33,    -1,    20,    43,        23,    36,    89,    34,    19,    36,    19,    31,    23,    38,
695        38,    23,    37,    -1,    34,    23,    36,    21,    23,    32,        23,    36,    -1,    31,    27,    22,    27,    89,    27,    32,
696        38,    19,    25,    23,    -1,    36,    23,    37,    23,    38,        37,    38,    36,    39,    31,    23,    32,    38,    -1,    31,
697        -1,    31,    27,    37,    21,    23,    30,    30,    19,    32,        27,    22,    27,    89,    27,    32,    37,    38,    36,    39,
698        23,    33,    39,    37,    -1,    32,    19,    31,    23,    -1,        31,    23,    32,    38,    37,    -1,    31,    27,    22,    27,
699        23,    21,    26,    33,    -1,    35,    39,    27,    38,    -1        89,    27,    32,    37,    38,    36,    39,    31,    23,    32,
700          38,    89,    31,    19,    34,    -1,    31,    27,    22,    27,
701          89,    27,    32,    37,    38,    36,    39,    31,    23,    32,
702          38,    89,    31,    19,    34,    37,    -1,    31,    27,    22,
703          27,    89,    27,    32,    34,    39,    38,    89,    22,    36,
704          27,    40,    23,    36,    -1,    31,    27,    22,    27,    89,
705          27,    32,    34,    39,    38,    89,    34,    33,    36,    38,
706          -1,    31,    27,    22,    27,    89,    27,    32,    34,    39,
707          38,    89,    21,    26,    19,    32,    32,    23,    30,    -1,
708          31,    27,    22,    27,    89,    27,    32,    34,    39,    38,
709          89,    38,    43,    34,    23,    -1,    31,    27,    22,    27,
710          89,    27,    32,    34,    39,    38,    -1,    31,    27,    22,
711          27,    89,    21,    33,    32,    38,    36,    33,    30,    30,
712          23,    36,    -1,    24,    42,    89,    37,    23,    32,    22,
713          -1,    24,    42,    89,    37,    23,    32,    22,    37,    -1,
714          37,    23,    36,    40,    23,    36,    -1,    40,    33,    30,
715          39,    31,    23,    -1,    30,    23,    40,    23,    30,    -1,
716          31,    39,    38,    23,    -1,    37,    33,    30,    33,    -1,
717          20,    43,    38,    23,    37,    -1,    34,    23,    36,    21,
718          23,    32,    38,    19,    25,    23,    -1,    36,    23,    37,
719          23,    38,    -1,    31,    27,    37,    21,    23,    30,    30,
720          19,    32,    23,    33,    39,    37,    -1,    32,    19,    31,
721          23,    -1,    23,    21,    26,    33,    -1,    35,    39,    27,
722          38,    -1
723  };  };
724    
725  /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */  /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
726  static const yytype_uint16 yyrline[] =  static const yytype_uint16 yyrline[] =
727  {  {
728         0,    96,    96,    97,   100,   101,   102,   103,   106,   107,         0,    97,    97,    98,   101,   102,   103,   104,   107,   108,
729       108,   109,   110,   113,   114,   115,   116,   117,   118,   119,       109,   110,   111,   114,   115,   116,   117,   118,   119,   120,
730       120,   121,   122,   123,   124,   125,   126,   127,   128,   129,       121,   122,   123,   124,   125,   126,   127,   128,   129,   130,
731       132,   133,   134,   137,   138,   139,   140,   141,   142,   143,       133,   134,   135,   138,   139,   140,   141,   142,   143,   144,
732       146,   147,   148,   149,   150,   151,   152,   155,   156,   157,       145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
733       158,   161,   164,   165,   166,   169,   170,   171,   172,   173,       155,   158,   159,   160,   161,   162,   163,   164,   165,   166,
734       174,   175,   176,   177,   178,   179,   180,   181,   182,   183,       167,   168,   169,   170,   171,   172,   173,   174,   175,   178,
735       184,   185,   186,   187,   188,   189,   190,   191,   192,   193,       179,   180,   181,   184,   187,   188,   189,   192,   193,   194,
736       194,   195,   196,   197,   198,   199,   202,   203,   204,   205,       195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
737       206,   207,   208,   211,   212,   213,   214,   217,   220,   221,       205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
738       224,   225,   228,   229,   232,   233,   234,   235,   236,   237,       215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
739       238,   239,   240,   241,   242,   243,   244,   245,   248,   249,       225,   228,   229,   230,   231,   232,   233,   234,   235,   236,
740       252,   253,   256,   257,   258,   259,   260,   261,   262,   263,       237,   238,   241,   242,   243,   244,   245,   246,   249,   252,
741       264,   267,   268,   271,   274,   275,   276,   279,   282,   285,       253,   256,   257,   258,   261,   262,   265,   266,   267,   268,
742       288,   291,   292,   295,   298,   301,   304,   307,   308,   311,       269,   270,   271,   272,   273,   274,   275,   276,   277,   278,
743       314,   317,   320,   323,   326,   329,   330,   333,   334,   335,       281,   282,   285,   286,   289,   290,   293,   294,   295,   296,
744       336,   344,   345,   348,   349,   352,   353,   354,   358,   359,       297,   298,   299,   300,   301,   302,   305,   306,   309,   312,
745       362,   363,   364,   365,   366,   367,   368,   369,   370,   371,       313,   314,   317,   320,   323,   326,   329,   330,   333,   336,
746       374,   375,   376,   377,   378,   379,   380,   381,   382,   383,       339,   342,   345,   348,   349,   352,   355,   358,   361,   364,
747       385,   385,   385,   385,   385,   385,   385,   385,   385,   385,       367,   370,   373,   376,   377,   380,   381,   382,   383,   391,
748       385,   385,   385,   385,   385,   385,   385,   385,   385,   385,       392,   395,   396,   399,   400,   401,   405,   406,   409,   410,
749       385,   385,   385,   385,   385,   385,   386,   386,   386,   386,       411,   412,   413,   414,   415,   416,   417,   418,   421,   422,
750       386,   386,   386,   386,   386,   386,   386,   386,   386,   386,       423,   424,   425,   426,   427,   428,   429,   430,   432,   432,
751       386,   386,   386,   386,   386,   386,   386,   386,   386,   386,       432,   432,   432,   432,   432,   432,   432,   432,   432,   432,
752       386,   386,   387,   387,   387,   387,   387,   387,   387,   387,       432,   432,   432,   432,   432,   432,   432,   432,   432,   432,
753       387,   387,   388,   388,   388,   388,   388,   388,   388,   388,       432,   432,   432,   432,   433,   433,   433,   433,   433,   433,
754       388,   388,   388,   388,   388,   389,   389,   389,   389,   389,       433,   433,   433,   433,   433,   433,   433,   433,   433,   433,
755       389,   389,   390,   390,   390,   390,   390,   391,   391,   391,       433,   433,   433,   433,   433,   433,   433,   433,   433,   433,
756       391,   392,   392,   392,   393,   393,   393,   394,   394,   394,       434,   434,   434,   434,   434,   434,   434,   434,   434,   434,
757       395,   395,   395,   396,   396,   396,   397,   397,   397,   398,       435,   435,   435,   435,   435,   435,   435,   435,   435,   435,
758       398,   398,   399,   399,   399,   400,   400,   400,   401,   401,       435,   435,   435,   436,   436,   436,   436,   436,   436,   436,
759       401,   402,   402,   402,   403,   403,   403,   404,   404,   404,       437,   437,   437,   437,   437,   438,   438,   438,   438,   439,
760       405,   405,   405,   406,   406,   406,   407,   407,   407,   408,       439,   439,   440,   440,   440,   441,   441,   441,   442,   442,
761       408,   408,   409,   409,   409,   410,   410,   410,   411,   411,       442,   443,   443,   443,   444,   444,   444,   445,   445,   445,
762       411,   412,   412,   412,   413,   413,   413,   414,   414,   414,       446,   446,   446,   447,   447,   447,   448,   448,   448,   449,
763       415,   415,   415,   416,   416,   416,   417,   417,   417,   418,       449,   449,   450,   450,   450,   451,   451,   451,   452,   452,
764       418,   418,   419,   419,   419,   420,   420,   420,   421,   421,       452,   453,   453,   453,   454,   454,   454,   455,   455,   455,
765       421,   422,   422,   422,   423,   423,   423,   424,   424,   424,       456,   456,   456,   457,   457,   457,   458,   458,   458,   459,
766       425,   425,   425,   426,   426,   426,   427,   427,   427,   428,       459,   459,   460,   460,   460,   461,   461,   461,   462,   462,
767       428,   428,   429,   429,   429,   430,   430,   430,   431,   431,       462,   463,   463,   463,   464,   464,   464,   465,   465,   465,
768       431,   432,   432,   432,   433,   433,   433,   434,   434,   437,       466,   466,   466,   467,   467,   467,   468,   468,   468,   469,
769       438,   439,   440,   443,   444,   450,   453,   456,   459,   462,       469,   469,   470,   470,   470,   471,   471,   471,   472,   472,
770       465,   468,   471,   474,   477,   480,   483,   486,   489,   492,       472,   473,   473,   473,   474,   474,   474,   475,   475,   475,
771       495,   498,   501,   504,   507,   510,   513,   516,   519,   522,       476,   476,   476,   477,   477,   477,   478,   478,   478,   479,
772       525,   528,   531,   534,   537,   540,   543,   546,   549,   552,       479,   479,   480,   480,   480,   481,   481,   484,   485,   486,
773       555,   558,   561,   564,   567,   570,   573,   576,   579,   582,       487,   490,   491,   497,   500,   503,   506,   509,   512,   515,
774       585,   588,   591,   594,   597,   600,   603,   606,   609,   612,       518,   521,   524,   527,   530,   533,   536,   539,   542,   545,
775       615,   618,   621,   624,   627,   630,   633,   636,   639,   642,       548,   551,   554,   557,   560,   563,   566,   569,   572,   575,
776       645,   648,   651,   654,   657,   660,   663       578,   581,   584,   587,   590,   593,   596,   599,   602,   605,
777         608,   611,   614,   617,   620,   623,   626,   629,   632,   635,
778         638,   641,   644,   647,   650,   653,   656,   659,   662,   665,
779         668,   671,   674,   677,   680,   683,   686,   689,   692,   695,
780         698,   701,   704,   707,   710,   713,   716,   719,   722,   725,
781         728,   731,   734,   737,   740,   743,   746,   749,   752,   755
782  };  };
783  #endif  #endif
784    
# Line 772  static const char *const yytname[] = Line 823  static const char *const yytname[] =
823    "map_instruction", "unmap_instruction", "remove_instruction",    "map_instruction", "unmap_instruction", "remove_instruction",
824    "get_instruction", "set_instruction", "create_instruction",    "get_instruction", "set_instruction", "create_instruction",
825    "reset_instruction", "clear_instruction", "destroy_instruction",    "reset_instruction", "clear_instruction", "destroy_instruction",
826    "load_instruction", "set_chan_instruction", "key_val_list",    "load_instruction", "set_chan_instruction", "modal_arg", "key_val_list",
827    "buffer_size_type", "list_instruction", "load_instr_args",    "buffer_size_type", "list_instruction", "load_instr_args",
828    "load_engine_args", "instr_load_mode", "device_index",    "load_engine_args", "instr_load_mode", "device_index",
829    "audio_channel_index", "audio_output_type_name", "midi_input_port_index",    "audio_channel_index", "audio_output_type_name", "midi_input_port_index",
830    "midi_input_channel_index", "midi_input_type_name", "midi_map",    "midi_input_channel_index", "midi_input_type_name", "midi_map",
831    "midi_bank", "midi_prog", "volume_value", "sampler_channel",    "midi_bank", "midi_prog", "midi_ctrl", "volume_value", "sampler_channel",
832    "instrument_index", "engine_name", "filename", "map_name", "entry_name",    "instrument_index", "fx_send_id", "engine_name", "filename", "map_name",
833    "param_val_list", "param_val", "boolean", "string", "dotnum", "digits",    "entry_name", "fx_send_name", "param_val_list", "param_val", "boolean",
834    "digit", "number", "char", "text", "stringval", "SP", "LF", "CR", "ADD",    "string", "dotnum", "digits", "digit", "number", "char", "text",
835    "GET", "MAP", "UNMAP", "CLEAR", "CREATE", "DESTROY", "LIST", "LOAD",    "stringval", "SP", "LF", "CR", "ADD", "GET", "MAP", "UNMAP", "CLEAR",
836    "ALL", "NONE", "DEFAULT", "NON_MODAL", "REMOVE", "SET", "SUBSCRIBE",    "CREATE", "DESTROY", "LIST", "LOAD", "ALL", "NONE", "DEFAULT",
837    "UNSUBSCRIBE", "SELECT", "CHANNEL", "AVAILABLE_ENGINES",    "NON_MODAL", "REMOVE", "SET", "SUBSCRIBE", "UNSUBSCRIBE", "SELECT",
838    "AVAILABLE_AUDIO_OUTPUT_DRIVERS", "CHANNELS", "INFO", "CHANNEL_COUNT",    "CHANNEL", "AVAILABLE_ENGINES", "AVAILABLE_AUDIO_OUTPUT_DRIVERS",
839    "CHANNEL_INFO", "BUFFER_FILL", "STREAM_COUNT", "VOICE_COUNT",    "CHANNELS", "INFO", "AUDIO_OUTPUT_DEVICE_COUNT",
840    "TOTAL_VOICE_COUNT", "TOTAL_VOICE_COUNT_MAX", "INSTRUMENT", "ENGINE",    "AUDIO_OUTPUT_DEVICE_INFO", "MIDI_INPUT_DEVICE_COUNT",
841    "ON_DEMAND", "ON_DEMAND_HOLD", "PERSISTENT",    "MIDI_INPUT_DEVICE_INFO", "MIDI_INSTRUMENT_MAP_COUNT",
842      "MIDI_INSTRUMENT_MAP_INFO", "MIDI_INSTRUMENT_COUNT",
843      "MIDI_INSTRUMENT_INFO", "CHANNEL_COUNT", "CHANNEL_INFO", "FX_SEND_COUNT",
844      "FX_SEND_INFO", "BUFFER_FILL", "STREAM_COUNT", "VOICE_COUNT",
845      "TOTAL_VOICE_COUNT", "TOTAL_VOICE_COUNT_MAX", "GLOBAL_INFO",
846      "INSTRUMENT", "ENGINE", "ON_DEMAND", "ON_DEMAND_HOLD", "PERSISTENT",
847    "AUDIO_OUTPUT_DEVICE_PARAMETER", "AUDIO_OUTPUT_DEVICES",    "AUDIO_OUTPUT_DEVICE_PARAMETER", "AUDIO_OUTPUT_DEVICES",
848    "AUDIO_OUTPUT_DEVICE", "AUDIO_OUTPUT_DRIVER_PARAMETER",    "AUDIO_OUTPUT_DEVICE", "AUDIO_OUTPUT_DRIVER_PARAMETER",
849    "AUDIO_OUTPUT_DRIVER", "AUDIO_OUTPUT_CHANNEL_PARAMETER",    "AUDIO_OUTPUT_DRIVER", "AUDIO_OUTPUT_CHANNEL_PARAMETER",
# Line 797  static const char *const yytname[] = Line 853  static const char *const yytname[] =
853    "MIDI_INPUT_DRIVER_PARAMETER", "MIDI_INSTRUMENT", "MIDI_INSTRUMENTS",    "MIDI_INPUT_DRIVER_PARAMETER", "MIDI_INSTRUMENT", "MIDI_INSTRUMENTS",
854    "MIDI_INSTRUMENT_MAP", "MIDI_INSTRUMENT_MAPS", "MIDI_INPUT_DRIVER",    "MIDI_INSTRUMENT_MAP", "MIDI_INSTRUMENT_MAPS", "MIDI_INPUT_DRIVER",
855    "MIDI_INPUT_PORT", "MIDI_INPUT_CHANNEL", "MIDI_INPUT_TYPE", "MIDI_INPUT",    "MIDI_INPUT_PORT", "MIDI_INPUT_CHANNEL", "MIDI_INPUT_TYPE", "MIDI_INPUT",
856    "SERVER", "VOLUME", "MUTE", "SOLO", "BYTES", "PERCENTAGE", "RESET",    "MIDI_CONTROLLER", "FX_SEND", "FX_SENDS", "SERVER", "VOLUME", "LEVEL",
857    "MISCELLANEOUS", "NAME", "ECHO", "QUIT", 0    "MUTE", "SOLO", "BYTES", "PERCENTAGE", "RESET", "MISCELLANEOUS", "NAME",
858      "ECHO", "QUIT", 0
859  };  };
860  #endif  #endif
861    
# Line 840  static const yytype_uint16 yyr1[] = Line 897  static const yytype_uint16 yyr1[] =
897       230,   230,   230,   231,   231,   231,   231,   231,   231,   231,       230,   230,   230,   231,   231,   231,   231,   231,   231,   231,
898       231,   231,   231,   231,   231,   231,   231,   231,   231,   231,       231,   231,   231,   231,   231,   231,   231,   231,   231,   231,
899       232,   232,   232,   233,   233,   233,   233,   233,   233,   233,       232,   232,   232,   233,   233,   233,   233,   233,   233,   233,
900       234,   234,   234,   234,   234,   234,   234,   235,   235,   235,       233,   233,   233,   233,   233,   233,   233,   233,   233,   233,
901       235,   236,   237,   237,   237,   238,   238,   238,   238,   238,       233,   234,   234,   234,   234,   234,   234,   234,   234,   234,
902         234,   234,   234,   234,   234,   234,   234,   234,   234,   235,
903         235,   235,   235,   236,   237,   237,   237,   238,   238,   238,
904       238,   238,   238,   238,   238,   238,   238,   238,   238,   238,       238,   238,   238,   238,   238,   238,   238,   238,   238,   238,
905       238,   238,   238,   238,   238,   238,   238,   238,   238,   238,       238,   238,   238,   238,   238,   238,   238,   238,   238,   238,
906       238,   238,   238,   238,   238,   238,   239,   239,   239,   239,       238,   238,   238,   238,   238,   238,   238,   238,   238,   238,
907       239,   239,   239,   240,   240,   240,   240,   241,   242,   242,       238,   239,   239,   239,   239,   239,   239,   239,   239,   239,
908       243,   243,   244,   244,   245,   245,   245,   245,   245,   245,       239,   239,   240,   240,   240,   240,   240,   240,   241,   242,
909       245,   245,   245,   245,   245,   245,   245,   245,   246,   246,       242,   243,   243,   243,   244,   244,   245,   245,   245,   245,
910       247,   247,   248,   248,   248,   248,   248,   248,   248,   248,       245,   245,   245,   245,   245,   245,   245,   245,   245,   245,
911       248,   249,   249,   250,   251,   251,   251,   252,   253,   254,       246,   246,   247,   247,   248,   248,   249,   249,   249,   249,
912       255,   256,   256,   257,   258,   259,   260,   261,   261,   262,       249,   249,   249,   249,   249,   249,   250,   250,   251,   252,
913       263,   264,   265,   266,   267,   268,   268,   269,   269,   269,       252,   252,   253,   254,   255,   256,   257,   257,   258,   259,
914       269,   270,   270,   271,   271,   272,   272,   272,   273,   273,       260,   261,   262,   263,   263,   264,   265,   266,   267,   268,
915       274,   274,   274,   274,   274,   274,   274,   274,   274,   274,       269,   270,   271,   272,   272,   273,   273,   273,   273,   274,
916       275,   275,   275,   275,   275,   275,   275,   275,   275,   275,       274,   275,   275,   276,   276,   276,   277,   277,   278,   278,
917       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,       278,   278,   278,   278,   278,   278,   278,   278,   279,   279,
918       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,       279,   279,   279,   279,   279,   279,   279,   279,   280,   280,
919       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,       280,   280,   280,   280,   280,   280,   280,   280,   280,   280,
920       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,       280,   280,   280,   280,   280,   280,   280,   280,   280,   280,
921       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,       280,   280,   280,   280,   280,   280,   280,   280,   280,   280,
922       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,       280,   280,   280,   280,   280,   280,   280,   280,   280,   280,
923       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,       280,   280,   280,   280,   280,   280,   280,   280,   280,   280,
924       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,       280,   280,   280,   280,   280,   280,   280,   280,   280,   280,
925       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,       280,   280,   280,   280,   280,   280,   280,   280,   280,   280,
926       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,       280,   280,   280,   280,   280,   280,   280,   280,   280,   280,
927       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,       280,   280,   280,   280,   280,   280,   280,   280,   280,   280,
928       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,       280,   280,   280,   280,   280,   280,   280,   280,   280,   280,
929       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,       280,   280,   280,   280,   280,   280,   280,   280,   280,   280,
930       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,       280,   280,   280,   280,   280,   280,   280,   280,   280,   280,
931       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,       280,   280,   280,   280,   280,   280,   280,   280,   280,   280,
932       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,       280,   280,   280,   280,   280,   280,   280,   280,   280,   280,
933       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,       280,   280,   280,   280,   280,   280,   280,   280,   280,   280,
934       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,       280,   280,   280,   280,   280,   280,   280,   280,   280,   280,
935       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,       280,   280,   280,   280,   280,   280,   280,   280,   280,   280,
936       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,       280,   280,   280,   280,   280,   280,   280,   280,   280,   280,
937       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,       280,   280,   280,   280,   280,   280,   280,   280,   280,   280,
938       276,   276,   276,   276,   276,   276,   276,   276,   276,   277,       280,   280,   280,   280,   280,   280,   280,   280,   280,   280,
939       277,   277,   277,   278,   278,   279,   280,   281,   282,   283,       280,   280,   280,   280,   280,   280,   280,   280,   280,   280,
940       284,   285,   286,   287,   288,   289,   290,   291,   292,   293,       280,   280,   280,   280,   280,   280,   280,   281,   281,   281,
941       294,   295,   296,   297,   298,   299,   300,   301,   302,   303,       281,   282,   282,   283,   284,   285,   286,   287,   288,   289,
942       304,   305,   306,   307,   308,   309,   310,   311,   312,   313,       290,   291,   292,   293,   294,   295,   296,   297,   298,   299,
943       314,   315,   316,   317,   318,   319,   320,   321,   322,   323,       300,   301,   302,   303,   304,   305,   306,   307,   308,   309,
944       324,   325,   326,   327,   328,   329,   330,   331,   332,   333,       310,   311,   312,   313,   314,   315,   316,   317,   318,   319,
945       334,   335,   336,   337,   338,   339,   340,   341,   342,   343,       320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
946       344,   345,   346,   347,   348,   349,   350       330,   331,   332,   333,   334,   335,   336,   337,   338,   339,
947         340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
948         350,   351,   352,   353,   354,   355,   356,   357,   358,   359,
949         360,   361,   362,   363,   364,   365,   366,   367,   368,   369
950  };  };
951    
952  /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */  /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
# Line 894  static const yytype_uint8 yyr2[] = Line 956  static const yytype_uint8 yyr2[] =
956         2,     2,     2,     3,     3,     3,     3,     3,     3,     3,         2,     2,     2,     3,     3,     3,     3,     3,     3,     3,
957         3,     3,     3,     3,     3,     3,     3,     3,     1,     1,         3,     3,     3,     3,     3,     3,     3,     3,     1,     1,
958         1,     1,     3,     1,     1,     1,     1,     1,     1,     1,         1,     1,     3,     1,     1,     1,     1,     1,     1,     1,
        1,     1,     1,     1,     1,     1,     1,    15,    17,    17,  
       19,     7,     3,     3,     3,     1,     1,     5,     7,     9,  
        1,     5,     7,     9,     1,     1,     5,     5,     7,     9,  
        7,     9,     1,     5,     7,     5,     5,     5,     3,     1,  
        1,     3,     3,     9,     1,     5,     7,     9,     7,     9,  
        3,     7,     3,     5,     3,     5,     3,     3,     3,     3,  
        3,     3,     3,     3,     5,     7,     5,     9,     5,     5,  
        5,     5,     5,     5,     5,     5,     5,     5,     3,     5,  
        1,     1,     1,     1,     1,     1,     1,     1,     3,     3,  
        1,     5,     7,     3,     1,     1,     1,     1,     1,     1,  
959         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,     3,     1,     1,     1,  
        1,     1,     1,     1,     2,     3,     4,     4,     1,     2,  
960         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
961         1,     2,     2,     2,     2,     2,     2,     2,     2,     2,         1,     1,     1,     1,     1,     1,     1,     1,     1,    16,
962          18,    18,    20,     7,     3,     3,     3,     1,     1,     5,
963           7,     9,     1,     5,     7,     9,     1,     1,     5,     5,
964           7,     9,     7,     9,     1,     5,     7,     5,     5,     5,
965           3,     1,     1,     3,     3,     9,     1,     5,     3,     7,
966           1,     7,     9,     7,     9,     3,     7,    11,     9,     9,
967           3,     3,     5,     3,     5,     3,     5,     7,     3,     3,
968           3,     3,     3,     5,     3,     3,     5,     7,     5,     9,
969           5,     5,     5,     5,     5,     5,     5,     5,     5,     5,
970           0,     2,     3,     5,     1,     1,     1,     1,     1,     1,
971           1,     1,     3,     3,     1,     3,     5,     7,     3,     1,
972           1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
973         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
974           1,     1,     1,     1,     3,     1,     1,     1,     1,     1,
975           1,     1,     2,     3,     4,     4,     1,     2,     1,     1,
976           1,     1,     1,     1,     1,     1,     1,     1,     1,     2,
977           2,     2,     2,     2,     2,     2,     2,     2,     1,     1,
978         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
979         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
980         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
# Line 931  static const yytype_uint8 yyr2[] = Line 996  static const yytype_uint8 yyr2[] =
996         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
997         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
998         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
999         1,     2,     2,     3,     3,     1,     1,     1,     3,     3,         1,     1,     1,     1,     1,     1,     1,     1,     1,     2,
1000         3,     5,     5,     6,     7,     4,     4,     3,     4,     7,         2,     3,     3,     1,     1,     1,     3,     3,     3,     5,
1001         9,     6,     3,     9,    11,     6,     7,    17,    30,     8,         5,     6,     7,     4,     4,     3,     4,     7,     9,     6,
1002         4,    13,    12,    11,    12,    11,    17,    21,    10,     6,         3,     9,    11,     6,     7,    17,    30,     8,     4,    25,
1003         9,    14,    10,    29,    20,    19,    29,    19,    30,    20,        24,    23,    22,    25,    24,    21,    20,    13,    12,    13,
1004        17,    28,    27,    25,    18,    17,    27,    15,    16,    19,        12,    11,    12,    11,    17,    21,    11,    10,     6,     9,
1005        20,    17,    15,    18,    15,    10,     6,     6,     4,     4,        14,    10,    29,    20,    19,    29,    19,    30,    20,    17,
1006         5,    10,     5,    13,     4,     4,     4        28,    27,    25,    18,    17,    27,    15,    16,    19,    20,
1007          17,    15,    18,    15,    10,    15,     7,     8,     6,     6,
1008           5,     4,     4,     5,    10,     5,    13,     4,     4,     4
1009  };  };
1010    
1011  /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state  /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
# Line 950  static const yytype_uint16 yydefact[] = Line 1017  static const yytype_uint16 yydefact[] =
1017         0,     0,     0,     0,     0,     5,     6,     0,     0,     0,         0,     0,     0,     0,     0,     5,     6,     0,     0,     0,
1018         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1019         0,    28,    29,     0,     0,     0,     0,     0,     0,     0,         0,    28,    29,     0,     0,     0,     0,     0,     0,     0,
1020         0,     0,     0,     0,     0,     0,     1,   416,   417,     2,         0,     0,     0,     0,     0,     0,     1,   454,   455,     2,
1021         0,     9,   268,   263,   262,   260,   261,   170,   171,   172,         0,     9,   306,   301,   300,   298,   299,   208,   209,   210,
1022       173,   174,   175,   176,   177,   178,   179,   190,   191,   192,       211,   212,   213,   214,   215,   216,   217,   228,   229,   230,
1023       193,   194,   195,   196,   197,   198,   199,   200,   201,   202,       231,   232,   233,   234,   235,   236,   237,   238,   239,   240,
1024       203,   204,   205,   206,   207,   208,   209,   210,   211,   212,       241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
1025       213,   214,   215,   216,   217,   218,   219,   220,   221,   222,       251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
1026       223,   224,   225,   226,   227,   228,   229,   230,   231,   232,       261,   262,   263,   264,   265,   266,   267,   268,   269,   270,
1027       233,   234,   235,   236,   237,   238,   239,   240,   241,   252,       271,   272,   273,   274,   275,   276,   277,   278,   279,   290,
1028       254,   255,   256,   257,   258,   259,   264,   265,   266,   267,       292,   293,   294,   295,   296,   297,   302,   303,   304,   305,
1029       269,   270,   271,   272,   273,   274,   275,   276,   277,   278,       307,   308,   309,   310,   311,   312,   313,   314,   315,   316,
1030       279,   280,   281,   282,   283,   284,   285,   286,   287,   288,       317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
1031       289,   290,   291,   292,   293,   294,   295,   296,   297,   298,       327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
1032       299,   300,   301,   302,   303,   304,   305,   306,   307,   308,       337,   338,   339,   340,   341,   342,   343,   344,   345,   346,
1033       309,   310,   311,   312,   313,   314,   315,   316,   317,   318,       347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
1034       319,   320,   321,   322,   323,   324,   325,   326,   327,   328,       357,   358,   359,   360,   361,   362,   363,   364,   365,   366,
1035       329,   330,   331,   332,   333,   334,   335,   336,   337,   338,       367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
1036       339,   340,   341,   342,   343,   344,   345,   346,   347,   348,       377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
1037       349,   350,   351,   352,   353,   354,   355,   356,   357,   358,       387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
1038       359,   360,   361,   362,   363,   364,   365,   366,   367,   368,       397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
1039       369,   370,   371,   372,   373,   374,   375,   376,   377,   378,       407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
1040       379,   380,   381,   382,   383,   384,   385,   386,   387,   388,       417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
1041       389,   390,   391,   392,   393,   394,   395,   396,   397,   398,       427,   428,   429,   430,   431,   432,   433,   434,   435,   436,
1042       399,   400,   401,   402,   403,   404,   405,   406,   407,   408,       437,   438,   439,   440,   441,   442,   443,   444,   445,   446,
1043       415,    12,   180,    11,   163,    10,     0,     0,     0,     0,       453,    12,   218,    11,   201,    10,     0,     0,     0,     0,
1044         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1045         0,   418,     0,     0,     0,   419,     0,     0,   420,     0,         0,   456,     0,     0,     0,   457,     0,     0,   458,     0,
1046         0,     0,     0,   432,     0,     0,     0,     3,   170,   171,         0,     0,     0,   470,     0,     0,     0,     3,   208,   209,
1047       172,   173,   174,   175,   176,   177,   178,   179,   181,   168,       210,   211,   212,   213,   214,   215,   216,   217,   219,   206,
1048       182,   183,   184,   185,   186,   187,   188,   189,   253,   242,       220,   221,   222,   223,   224,   225,   226,   227,   291,   280,
1049       243,   244,   245,   246,   247,   248,   249,   250,   251,   164,       281,   282,   283,   284,   285,   286,   287,   288,   289,   202,
1050         0,     0,    13,    30,    31,     0,     0,     0,     0,     0,         0,     0,    13,    30,    31,     0,     0,     0,     0,     0,
1051         0,    16,     0,    55,    60,    72,    79,    80,     0,    64,         0,     0,     0,    16,     0,    77,    82,    94,   101,   102,
1052         0,     0,     0,     0,     0,    56,     0,    65,     0,     0,         0,    86,     0,     0,     0,     0,     0,    78,     0,    87,
1053         0,     0,     0,    84,     0,     0,     0,     0,    14,     0,         0,     0,     0,     0,     0,   106,     0,     0,     0,     0,
1054        15,     0,     0,    27,     0,     0,     0,    17,     0,     0,         0,   110,     0,    14,     0,    15,     0,     0,    27,     0,
1055        18,     0,     0,     0,     0,     0,    19,   125,   127,   124,         0,     0,     0,    17,     0,     0,     0,    18,     0,     0,
1056       122,   126,   123,     0,   130,     0,    20,     0,     0,    21,         0,     0,     0,     0,     0,    19,   159,   161,   158,   156,
1057         160,   157,     0,   164,     0,     0,    20,     0,     0,    21,
1058         0,     0,     0,     0,     0,    22,     0,     0,     0,     0,         0,     0,     0,     0,     0,    22,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,    23,  
       33,    37,    36,    35,    34,    39,    38,    24,    40,    44,  
       43,    42,    41,    46,    45,   410,    25,   409,    26,     0,  
        0,     0,     0,   425,   426,   486,     0,     0,     0,     0,  
        0,     0,   169,     0,     0,     0,     0,     0,     0,     0,  
1059         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1060           0,     0,     0,     0,    23,    33,    34,    35,    36,    44,
1061          45,    46,    47,    37,    41,    42,    43,    40,    39,    38,
1062          49,    50,    48,    24,    51,    52,    53,    54,    62,    63,
1063          64,    65,    55,    59,    60,    61,    58,    57,    56,    67,
1064          68,    66,   448,    25,   447,    26,     0,     0,     0,     0,
1065         463,   464,   539,     0,     0,     0,     0,     0,     0,   207,
1066         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1067         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1068         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1069           0,   150,     0,     0,     0,     0,     0,     0,     0,     0,
1070         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,   412,   411,     0,   422,     0,  
        0,     0,   482,     0,     0,   421,     0,     0,     0,     0,  
        0,    32,   153,     0,     0,     0,     0,     0,     0,     0,  
1071         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,   171,   172,   173,   174,   175,  
      176,   177,   178,   179,     0,    81,   144,    82,     0,     0,  
        0,    78,     0,     0,     0,     0,    98,    99,     0,     0,  
       94,    96,   100,   101,     0,     0,     0,   128,   129,     0,  
        0,   102,     0,   152,     0,   103,     0,   151,    52,   149,  
       53,    54,     0,     0,     0,     0,     0,     0,     0,    90,  
1072         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1073         0,     0,     0,     0,     0,     0,     0,     0,    92,   162,         0,     0,     0,     0,     0,     0,   450,   449,     0,   460,
1074       161,     0,     0,     0,     0,     0,     0,    97,   423,     0,         0,     0,     0,   535,     0,     0,   459,     0,     0,     0,
1075       431,   435,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,    32,   190,     0,     0,     0,     0,     0,     0,
1076         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1077           0,     0,     0,     0,     0,     0,     0,     0,   209,   210,
1078         211,   212,   213,   214,   215,   216,   217,     0,   103,   179,
1079         104,     0,     0,     0,     0,   108,   185,   100,     0,     0,
1080           0,     0,     0,     0,   129,   130,     0,     0,     0,   123,
1081         125,     0,   131,   132,     0,     0,     0,     0,     0,   162,
1082         163,   165,     0,   134,     0,   189,     0,   135,     0,   188,
1083          74,    75,    76,     0,     0,     0,     0,     0,     0,   115,
1084         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1085         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1086           0,     0,     0,     0,     0,     0,   121,   183,     0,   206,
1087         184,   120,   200,   199,     0,     0,     0,     0,     0,     0,
1088           0,     0,     0,     0,   128,   461,     0,   469,   473,     0,
1089           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1090         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,   485,     0,     0,     0,     0,     0,     0,     0,     0,  
1091         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1092           0,     0,     0,     0,     0,     0,     0,   151,     0,     0,
1093         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1094         0,     0,   424,     0,     0,     0,     0,   413,   414,     0,         0,     0,     0,     0,     0,     0,   538,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,    73,     0,     0,  
        0,   120,   121,    75,    76,    77,    66,     0,    61,     0,  
        0,     0,    67,     0,     0,   427,    85,    57,     0,     0,  
        0,   145,     0,     0,     0,     0,    93,     0,    95,     0,  
        0,     0,     0,     0,     0,   150,     0,   133,     0,     0,  
1095         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1096         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1097         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1098         0,     0,     0,     0,     0,     0,   449,     0,   476,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,   462,
1099       440,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,   451,   452,     0,     0,     0,     0,
1100           0,     0,     0,     0,     0,     0,    95,     0,     0,     0,
1101         154,   155,    97,    98,    99,    88,     0,    83,     0,     0,
1102           0,    89,     0,     0,   465,   107,    79,     0,     0,     0,
1103           0,     0,     0,   180,     0,     0,     0,     0,   122,     0,
1104         124,   126,   182,   133,   187,     0,     0,     0,     0,     0,
1105           0,   186,     0,   168,     0,     0,     0,     0,     0,     0,
1106         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1107         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1108       478,   479,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,   203,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,   484,  
        0,     0,     0,     0,     0,     0,     0,   433,     0,   436,  
        0,     0,     0,   436,     0,     0,     0,     0,    74,    62,  
        0,    70,     0,    58,     0,    68,     0,     0,   146,    51,  
        0,     0,     0,     0,   260,   261,   118,   155,   157,   160,  
        0,   168,   159,   158,     0,     0,     0,     0,     0,   131,  
        0,     0,     0,     0,     0,     0,   104,   137,     0,   138,  
      106,   139,   108,     0,     0,   115,   116,   117,   109,   140,  
      110,   141,   142,   111,   143,     0,     0,     0,   112,   147,  
      148,   113,   114,    86,     0,    88,     0,    91,     0,     0,  
        0,     0,     0,     0,     0,     0,     0,     0,   439,     0,  
1109         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1110           0,     0,     0,     0,   498,     0,     0,   528,     0,   529,
1111         478,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1112         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,   477,  
1113         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1114         0,     0,   434,     0,     0,     0,     0,     0,     0,   480,         0,     0,     0,     0,   531,   532,     0,     0,     0,     0,
        0,    63,    71,    69,    59,    83,     0,     0,     0,     0,  
        0,   119,     0,     0,   156,   165,     0,     0,     0,     0,  
        0,   132,     0,     0,     0,     0,   105,     0,     0,     0,  
       87,    89,     0,     0,     0,     0,     0,     0,     0,     0,  
1115         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1116         0,   166,   167,     0,     0,     0,   448,     0,     0,     0,         0,     0,   537,     0,     0,     0,     0,     0,     0,     0,
1117         0,     0,     0,   428,     0,     0,     0,     0,     0,     0,       204,   205,     0,     0,     0,     0,     0,     0,     0,     0,
1118           0,     0,   471,     0,   474,     0,     0,     0,   474,   526,
1119           0,     0,     0,     0,    96,    84,     0,    92,     0,    80,
1120           0,    90,   109,     0,     0,     0,    73,   181,     0,     0,
1121         526,     0,     0,   298,   299,   152,   193,   195,   198,   197,
1122         196,   127,   192,     0,     0,     0,     0,     0,   166,     0,
1123           0,     0,     0,     0,   136,   172,     0,   173,   138,   174,
1124         140,     0,     0,   147,   148,   149,   141,   175,   142,   176,
1125         177,   143,   178,     0,   144,   145,   146,   111,     0,   113,
1126           0,   116,     0,   530,     0,     0,     0,     0,     0,     0,
1127         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1128         0,     0,     0,     0,     0,     0,     0,     0,     0,   430,         0,     0,   477,   527,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,   107,   443,     0,     0,     0,  
        0,     0,   445,     0,     0,     0,     0,     0,     0,     0,  
1129         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,   475,     0,     0,   442,     0,  
      444,     0,     0,     0,     0,     0,     0,     0,     0,     0,  
1130         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,   429,   441,   483,     0,  
1131         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,   481,     0,     0,     0,     0,     0,     0,     0,     0,  
1132         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1133         0,     0,     0,     0,     0,     0,     0,     0,   472,   467,         0,     0,     0,   472,     0,     0,     0,     0,     0,     0,
1134         0,   467,    47,     0,     0,     0,     0,     0,     0,     0,       533,     0,    85,    93,    91,    81,   105,     0,     0,     0,
1135           0,     0,     0,   153,   194,     0,     0,     0,     0,   167,
1136           0,     0,     0,     0,   137,     0,     0,     0,   112,   114,
1137           0,     0,     0,   118,   119,     0,     0,     0,     0,     0,
1138           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1139           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1140           0,     0,     0,     0,   497,     0,     0,     0,     0,     0,
1141         466,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1142         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1143         0,     0,     0,     0,     0,     0,     0,     0,   468,     0,         0,     0,     0,     0,     0,     0,     0,     0,   468,     0,
1144         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1145           0,   139,     0,     0,   117,     0,   491,     0,     0,     0,
1146           0,   496,     0,     0,     0,     0,     0,   493,     0,     0,
1147           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1148         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1149         0,   437,     0,   465,   471,     0,     0,   446,     0,     0,       524,     0,     0,     0,     0,     0,   488,     0,   490,     0,
1150        48,    49,   154,   134,   135,   136,     0,   465,     0,     0,         0,     0,   492,     0,     0,     0,     0,     0,     0,     0,
1151         0,     0,     0,     0,     0,     0,     0,   472,   474,   446,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1152         0,     0,     0,     0,     0,     0,   464,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,   467,     0,
1153         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,   487,   489,     0,     0,   536,     0,     0,     0,
1154         0,     0,     0,   469,     0,   455,   457,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,   534,
1155         0,   469,     0,     0,     0,    50,   455,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1156         0,     0,     0,   460,     0,   459,   454,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1157         0,     0,   470,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1158       473,     0,     0,     0,     0,     0,     0,   447,     0,     0,         0,   521,   516,     0,   516,     0,     0,     0,     0,     0,
1159         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1160         0,     0,     0,   459,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1161         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,   517,     0,     0,    69,
1162         0,     0,     0,     0,     0,     0,     0,     0,     0,   463,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1163       450,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1164       452,     0,     0,     0,     0,     0,     0,   466,     0,     0,         0,     0,     0,   475,     0,   514,   520,     0,     0,   494,
1165       462,     0,     0,     0,   461,     0,     0,     0,   456,     0,         0,     0,   514,     0,     0,     0,     0,     0,     0,     0,
1166         0,   453,   458,   438,   451         0,     0,   521,   523,   525,     0,     0,     0,     0,     0,
1167         494,     0,     0,     0,     0,     0,     0,   513,     0,     0,
1168           0,     0,     0,     0,    70,    71,   191,   169,   170,   171,
1169           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1170           0,     0,     0,     0,   518,     0,   504,   506,     0,     0,
1171           0,     0,   518,     0,     0,     0,     0,   504,     0,     0,
1172           0,     0,     0,     0,   509,     0,     0,     0,     0,     0,
1173           0,     0,   508,   503,     0,     0,     0,     0,     0,   519,
1174           0,     0,     0,    72,     0,     0,     0,     0,   522,     0,
1175           0,     0,     0,   486,     0,     0,     0,     0,     0,     0,
1176           0,   495,     0,     0,     0,     0,     0,     0,     0,     0,
1177           0,   485,     0,     0,     0,     0,     0,     0,     0,     0,
1178           0,     0,     0,     0,   508,     0,     0,     0,   482,     0,
1179           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1180           0,     0,     0,   481,     0,     0,     0,     0,     0,     0,
1181           0,     0,     0,     0,     0,     0,     0,   480,     0,   484,
1182           0,     0,     0,     0,     0,   512,     0,     0,     0,     0,
1183         479,   483,     0,     0,     0,     0,     0,   499,     0,     0,
1184           0,     0,     0,     0,     0,   515,     0,   501,     0,   511,
1185           0,     0,     0,   510,     0,     0,     0,   505,     0,     0,
1186         502,   507,   476,     0,   500
1187  };  };
1188    
1189  /* YYDEFGOTO[NTERM-NUM].  */  /* YYDEFGOTO[NTERM-NUM].  */
1190  static const yytype_int16 yydefgoto[] =  static const yytype_int16 yydefgoto[] =
1191  {  {
1192        -1,    13,    14,    15,    16,   342,   429,   437,   378,   380,        -1,    13,    14,    15,    16,   342,   444,   463,   383,   385,
1193       409,   351,   415,   387,   448,   383,   390,   406,   619,   776,       419,   353,   425,   393,   485,   388,   397,   416,   679,   640,
1194       750,   396,   601,   605,  1290,   936,   938,   940,   948,   950,       878,   849,   405,   663,   667,  1524,  1074,  1076,  1078,  1086,
1195       953,   575,   770,   907,   958,   608,   784,   606,   602,   541,      1088,  1091,   628,   872,  1046,   881,   706,   635,   890,   883,
1196      1291,   916,   917,   638,   918,   919,   920,   272,   609,   274,       668,   664,   592,  1525,  1061,  1055,  1056,   711,  1057,  1058,
1197       446,   923,   847,    49,    50,    17,    18,    19,    20,    21,       708,   272,   636,   274,   483,  1060,   970,    49,    50,    17,
1198        22,    23,    24,    25,   952,   946,   947,   604,    26,    27,        18,    19,    20,    21,    22,    23,    24,    25,  1090,  1084,
1199        28,    29,    30,   343,   353,   354,   355,   551,   430,   431,      1085,   641,    26,    27,    28,    29,    30,   343,   355,   356,
1200       432,   433,   434,   356,   357,   407,   358,  1293,  1294,  1295,       357,   604,   445,   446,   447,   448,   449,   450,   451,   452,
1201       417,   359,   360,   361,   362,   363,   364,   622,   365,   419,       453,   454,   455,   456,   457,   458,   459,   358,   359,   461,
1202       366,   367,   368,   369,   370,   371,   344,   373,   374,   375,       417,   360,  1527,  1528,  1529,   427,   361,   362,   363,   364,
1203       626,   627,   628,   376,   629,   630,   631,   751,   752,    31,       365,   366,   682,   367,   429,   368,   369,   370,   371,   372,
1204       436,   637,   422,    32       373,   344,   375,   376,   377,   686,   687,   688,   702,   378,
1205         379,   380,   381,   703,   690,   691,   850,   851,    31,   462,
1206         697,   434,    32
1207  };  };
1208    
1209  /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing  /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1210     STATE-NUM.  */     STATE-NUM.  */
1211  #define YYPACT_NINF -841  #define YYPACT_NINF -1118
1212  static const yytype_int16 yypact[] =  static const yytype_int16 yypact[] =
1213  {  {
1214        64,  -841,  -841,    52,   167,    92,   120,   177,   126,   132,        57, -1118, -1118,    19,   165,    48,    74,   223,   115,   126,
1215       189,    59,   168,   228,    37,  1863,  -841,    16,    16,    16,       132,    60,   178,   172,   -34,  2124, -1118,    16,    16,    16,
1216          16,    16,    16,    16,    16,    16,    16,    16,    16,    16,
1217          16,    16, -1118,   233,   280,   299,   242,   306,   309,   333,
1218         320,   339,   263,   164,   340,   286, -1118, -1118, -1118, -1118,
1219         145, -1118, -1118, -1118, -1118, -1118, -1118, -1118,   489,   489,
1220         489,   489,   489,   489,   489,   489,   489, -1118, -1118, -1118,
1221       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1222       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1223       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1224       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1225       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1226       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1227       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1228       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1229       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1230       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1231       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1232       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1233       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1234       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1235       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1236       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1237       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1238       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1239       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1240       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1241       -1118,  2789, -1118, -1118, -1118, -1118,   140,   166,   342,   342,
1242         351,   109,   109,   138,   184,   140,    79,    87,    87,  2346,
1243         375, -1118,   379,   381,   366, -1118,   369,   386, -1118,   371,
1244         377,   398,   410, -1118,   397,   416,   407, -1118, -1118, -1118,
1245       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,   489, -1118,
1246         489,   489,   489,   489,   489,   489,   489,   489, -1118, -1118,
1247       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1248         411,   420, -1118, -1118,    16,   256,   422,   418,   409,   426,
1249         431,   423,   424, -1118,    16, -1118, -1118, -1118, -1118, -1118,
1250          16, -1118,    16,    16,    16,    16,    16, -1118,    16, -1118,
1251          16,    16,    16,    16,    16, -1118,    16,    16,    16,    16,
1252          16, -1118,   428, -1118,    16, -1118,    16,   432, -1118,    16,
1253         419,   421,   434, -1118,    16,    16,    16, -1118,    16,    16,
1254          16,   281,   436,   425,   437, -1118, -1118, -1118, -1118, -1118,
1255       -1118, -1118,    16, -1118,    16,   433, -1118,    16,    16, -1118,
1256          16,    16,   430,   449,   445, -1118,    16,    16,    16,    16,
1257          16,    16,    16,    16,    16,   435,   438,   447,   439,   446,
1258         448,   440,   450,   451, -1118, -1118, -1118, -1118, -1118, -1118,
1259       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1260       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1261       -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1262       -1118, -1118,  2789,  2346, -1118, -1118,    16,   444,   452,   453,
1263       -1118, -1118, -1118,   442,   454,   464,   465,   459,   467, -1118,
1264         475,   473,   120,   474,   501,   502,   497,   441,   504,   487,
1265         486,   498,   133,   505,   505,   505,   505,   505,   505,   505,
1266         505,   505,   505,   568,   505,   505,   505,   505,   500,   505,
1267         507,   495,   500,   509,   568,   511,   456,   513,  2789,  2789,
1268         500,   500,   500,   500,   515,   519,   457,   517,   568,   500,
1269         503,     4,  2789,   500,   568,   520,   521,   526,   101,   500,
1270         500,   500,   500,   522,   144,   255,  3008,   527,   528,   532,
1271         466,   508,    47,   523,   531,   530,  2789, -1118,   500, -1118,
1272         535,   533,   537, -1118,   534,   529, -1118,   516,   538,   544,
1273        2346,  2346, -1118, -1118,   546,   547,   556,   576,   577,   586,
1274         580,   602,   583,   591,    16,    16,    16,    16,    16,    16,
1275          16,    16,    16,    16,    16,    16,    16,    16,   489,   489,
1276         489,   489,   489,   489,   489,   489,   489,   594, -1118, -1118,
1277       -1118,    16,    16,    16,    16, -1118, -1118, -1118,   598,   595,
1278         500,    16,    16,   603, -1118, -1118,   604,   592,   605,  2346,
1279        2346,    16, -1118, -1118,    16,   610,   606,   607,   613, -1118,
1280       -1118, -1118,   608, -1118,    16, -1118,    16, -1118,    16,  2789,
1281       -1118, -1118, -1118,   614,   612,   616,   609,   159,   617, -1118,
1282        16,    16,    16,    16,    16,    16,    16,    16,    16,    16,        16,    16,    16,    16,    16,    16,    16,    16,    16,    16,
1283        16,    16,  -841,   243,   237,   252,   274,   242,   275,   298,        16,    16,    16,    16,    16,    16,   628,    16,   615,   629,
1284       296,   304,   178,   137,   312,   198,  -841,  -841,  -841,  -841,       630,    16,    16,    16,   489,   489, -1118, -1118,   207,    27,
1285       108,  -841,  -841,  -841,  -841,  -841,  -841,  -841,   238,   238,     -1118, -1118,  2789, -1118,   631,   632,   623,   624,   640,   635,
1286       238,   238,   238,   238,   238,   238,   238,  -841,  -841,  -841,       642,   641,   662,   663, -1118, -1118,   646, -1118, -1118,   658,
1287      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,       671,   661,   611,  1680,  1902,   664,   665,   666,   667,   673,
1288      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,       618,   678,   672,   674,   670,   500,    89,   500,   500,  2789,
1289      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,       500,  2789,  2789,   500,   500,   500,   500,  2789,   500,   676,
1290      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,       500,  2789,   500,   500,   619,   677,    16, -1118,   500,   621,
1291      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,       679,   680,   622,  2789,  2789,   500,   500,   681,   683,   690,
1292      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,       627,   668,   500,   120,   500,   684, -1118,   633,   698,   699,
1293      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,       685,   694,   500,   500,   500,   500,   500,   500,   500,   500,
1294      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,       500,   500,   500,   500,  2789,   500,  2789,   500,   695,   500,
1295      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,       703,   688,   707,   500,   500,   500,   275,   414,   489,   697,
1296      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,       708,   700,   710,   715,   656,   712,   727,   717,   725, -1118,
1297      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,       729,   714,   730,   732, -1118, -1118,   682,   735,   738,   740,
1298      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,       733,   739,   731,   686,   745,   736, -1118,   737,   749,    16,
1299      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,     -1118, -1118, -1118, -1118, -1118, -1118,  2346,  2789,    16,    16,
1300      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,        16, -1118,  2346,    16, -1118, -1118,  2789,    16,    16,   746,
1301      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,       687,   500,    16, -1118,   747,   692,   751,   752,    16,  3227,
1302      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,        16,    16, -1118, -1118, -1118,   696,   763,   755,   761,   750,
1303      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,        16, -1118,    16, -1118,   701,   764,   765,   766,   771,   769,
     -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  
     -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  
     -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  
     -841,  2528,  -841,  -841,  -841,  -841,   117,   109,   303,   303,  
      305,   100,   100,   174,    70,   117,   147,   104,   104,  2085,  
      314,  -841,   319,   320,   302,  -841,   306,   330,  -841,   327,  
      309,   335,   344,  -841,   331,   351,   332,  -841,  -841,  -841,  
     -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,   238,  -841,  
      238,   238,   238,   238,   238,   238,   238,   238,  -841,  -841,  
     -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  
      346,   348,  -841,  -841,    16,   229,   363,   358,   364,   371,  
      365,  -841,    16,  -841,  -841,  -841,  -841,  -841,    16,  -841,  
       16,    16,    16,    16,    16,  -841,    16,  -841,    16,    16,  
       16,    16,    16,  -841,    16,    16,    16,   372,  -841,    16,  
     -841,    16,   373,  -841,    16,   370,   381,  -841,    16,    16,  
     -841,    16,    16,   231,   384,   385,  -841,  -841,  -841,  -841,  
     -841,  -841,  -841,    16,  -841,   379,  -841,    16,    16,  -841,  
       16,    16,   374,   393,   388,  -841,    16,    16,    16,    16,  
       16,    16,    16,   377,   391,   405,   395,   402,   403,  -841,  
     -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  
     -841,  -841,  -841,  -841,  -841,  2528,  2085,  -841,  -841,    16,  
      401,   400,   404,  -841,  -841,  -841,   399,   406,   420,   421,  
      411,   439,  -841,   441,   436,    55,   440,   442,   444,   443,  
      445,   428,   427,    50,   446,   446,   446,   446,   446,   446,  
      446,   446,   446,   446,   438,   446,   446,   446,   446,   447,  
      369,   369,   449,   438,   450,   452,  2528,  2528,   369,   369,  
      453,   459,   458,   438,   429,    11,  2528,   369,   438,   460,  
      455,   461,    83,   369,   369,   369,   369,   454,  2747,   463,  
      469,   456,   462,   457,   464,  2528,  -841,   369,  -841,   467,  
      470,   473,  -841,   468,   471,  -841,   472,   465,   478,  2085,  
     2085,  -841,  -841,   481,   483,   479,   486,   487,   475,   497,  
      485,    16,    16,    16,    16,    16,    16,    16,    16,    16,  
       16,    16,    16,    16,    16,   238,   238,   238,   238,   238,  
      238,   238,   238,   238,   488,  -841,  -841,  -841,    16,    16,  
       16,  -841,   492,    16,    16,   493,  -841,  -841,   494,   495,  
     2085,  2085,  -841,  -841,   496,   503,   523,  -841,  -841,   513,  
      528,  -841,    16,  -841,    16,  -841,    16,  2528,  -841,  -841,  
     -841,  -841,   535,   533,   540,   531,   110,   538,   539,  -841,  
1304        16,    16,    16,    16,    16,    16,    16,    16,    16,    16,        16,    16,    16,    16,    16,    16,    16,    16,    16,    16,
1305        16,    16,    16,    16,    16,    16,   554,    16,  -841,  2528,        16,    16,  3446,    16,  3665,    16,   773,    16,   770,   775,
1306      -841,   550,   545,   558,   557,   562,   561,  -841,  -841,   541,       772,    16,    16,    16,   489,   489,   489,   716,   767,   783,
1307      -841,  -841,   556,   564,   560,   499,  1419,  1641,   553,   563,       776,   780,   785,   784,   782,   726,   728,   793,   791,   789,
1308       565,   566,   501,   571,   569,   572,   369,   102,   369,   369,       792,   788,   805,   797, -1118,   806,   798, -1118,   795, -1118,
1309      2528,   369,  2528,  2528,   369,   369,   369,   369,  2528,   369,     -1118,   794,   800,   500,  2789,   500,   500,   500,  2789,   500,
1310       570,   369,  2528,   369,   506,   369,   369,   512,   588,   514,       500,   500,   799,   802,    16,   500,   807,   796,   815,   808,
1311      2528,  2528,   590,   592,   515,   589,   594,   369,    55,   369,      2789,  2568,   120,   809,   816,   827,   818,   820,   500,   500,
1312       595,  -841,   542,   580,   605,   591,   600,   602,   369,   369,       821,   823,   825,   778, -1118, -1118,   500,   500,  2789,   500,
1313       369,   369,   369,   369,   369,   369,   369,   369,   369,   369,       134,   500,   568,  2789,   500,   255,  3008,  3008,  2568,  2789,
1314      2528,   369,  2528,   369,   603,   369,   610,   604,   612,   618,      2568,  2789, -1118,   120,   826,   830,   779,   500,   500,   500,
1315       608,   616,  -841,   623,   609,   621,   619,  -841,  -841,   559,       489,   489,   828,   781,   832,   834,   787,   833,   839,   810,
1316       628,   626,   627,   624,   617,   567,   622,  -841,   611,   629,       824,   817, -1118,   851, -1118,   835,   841,   844,   845,   846,
1317        16,  -841,  -841,  -841,  -841,  -841,  -841,  2085,  2528,    16,       102,   848,   855,   863, -1118,  2346,    16, -1118,    16,  2346,
1318        16,    16,  -841,  2085,    16,  -841,  -841,  2528,    16,   631,        16, -1118, -1118,   860,   868,   500, -1118, -1118,   866,   865,
1319        16,  -841,    16,   632,   575,   639,    16,  2966,    16,   579,     -1118,   871,  3884,   489,   489,   904, -1118,  2789, -1118, -1118,
1320       647,   646,   635,   586,    16,  -841,    16,  -841,   587,   650,     -1118, -1118, -1118,   873,   845,   846,   175,   890, -1118,    16,
1321       651,   652,   657,   648,   643,    16,    16,    16,    16,    16,       875,   211,   829,   888, -1118, -1118,    16, -1118, -1118,  2789,
1322        16,    16,    16,    16,    16,    16,    16,  3185,    16,  3404,     -1118,   893,   884, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1323        16,   661,    16,   649,   663,   658,   656,   601,   606,   666,     -1118, -1118,  2789,    16, -1118, -1118, -1118,   904,  4103,   904,
1324       664,   662,   665,   660,   674,   668,  -841,   667,  -841,   670,      4322, -1118,   831, -1118,   898,    16,    16,    16,   882,   899,
1325      -841,   675,   669,   369,  2528,   369,   369,   369,  2528,   369,       836,   837,   895,   241,   905,   906,   896,   897,   908,   894,
1326       369,   671,   369,   369,   672,   673,   676,  2528,  2307,   679,       900,   910, -1118, -1118,   889,   901,   913,   907,   914,  2789,
1327       684,   683,   685,   686,   369,   369,   688,   687,   689,   607,      2789,  2789,  2789,   500,   903,   920,    16,   909,   912,   915,
1328      -841,  -841,   692,   369,   369,  2528,   369,    95,   369,   438,      2568,  2568,   917,   921,   918,   911,   500,   926,   927,   919,
1329      2528,   369,   412,  2747,  2747,  2307,  2528,  2307,  2528,  -841,       916,   500,   922,   933,   500,  2568,  2568,   935,   936,   500,
1330        55,   613,   694,   695,   637,   678,   680,  -841,   707,  -841,       500,   255,   932,   924,   297,   298,   939,   938,   934,   942,
1331       691,   690,   700,   696,   135,   698,   677,   711,  -841,  2085,       945,   948,   940, -1118,   944,   949,   856,   946,   950,   961,
1332        16,  -841,    16,  2085,    16,  -841,   697,    16,  -841,  -841,     -1118,   953,    16,  2789,  2789,    16, -1118,   951,   971,  2789,
1333       699,   701,   703,  3623,   238,   238,   733,  -841,  2528,  -841,       959,   967,   965,   904, -1118,   970,   974,   969,   976, -1118,
1334       173,    33,  -841,  -841,   702,   696,   162,   716,   710,  -841,       981,   978,   979,   243, -1118,  1000,   930,    16,   904,   904,
1335        16,   708,   202,   681,   723,   728,  -841,  -841,    16,  -841,       983,   994,    16, -1118, -1118,   993,   998,   996,  1001,  1002,
1336      -841,  2528,  -841,   731,   725,  -841,  -841,  -841,  -841,  -841,      1004,  1010,   999,  1005,  1015,  1007,  1027,  1017,  1011,  1012,
1337      -841,  -841,  -841,  -841,  2528,    16,   238,   238,  -841,  -841,       177,   963,  1014,  1032,  1018,  1019,  1030,    16,  1023,  1025,
1338      -841,  -841,  -841,   733,  3842,   733,  4061,  -841,   732,   705,       968,  1028,   977,  1029, -1118,  1031,   980,  1033,  1034,  1035,
1339       740,   739,   729,   730,   738,   726,   727,   743,  -841,   734,     -1118,   568,  1037,  1038,   500,  1040,  1047,  1041,  1057,  1043,
1340       736,   741,   735,   744,  2528,  2528,  2528,  2528,   369,   737,      1061,  1053,  1006,  1048,  1055,  1062,  1070,  1058,  1066,  1060,
1341      2528,   754,   758,   759,  2307,   285,   310,  2307,   238,   761,      1063,  1067,  1073,    52,  1072,  1016,  1082,  1075, -1118,   120,
1342       762,   764,   745,   756,   369,   765,   766,   746,   768,  -841,      1076,  1071,  1086,  1074,  1088,  1080,  1077,   171,  1083,  1081,
1343       369,   752,   772,   369,  2307,  2307,   779,   210,   775,   777,      1084, -1118,  1089,  1068, -1118,  1087, -1118,  1090,  1091,  1094,
1344       781,   773,  -841,   778,   782,   722,   780,   783,   792,  -841,      1097, -1118,  1098,  1096,  1092,  1095,  1045, -1118,  1109,  1049,
1345       785,    16,  2528,  2528,    16,  -841,   784,    16,   791,   796,      1114,  1112,  1117,    54,  1107,  1118,  1123,  1120,  1124,    16,
1346       793,   733,   238,   238,  -841,   238,   801,   799,   803,   802,      1125,  1065,  1126,  1078,  1127,  1128,  1079,  1129,  1113,  1116,
1347       823,  -841,   809,   806,   776,   204,  -841,   826,   824,    16,      1085,  1121,  1130,  1131,  1093,  1122, -1118,  1132, -1118,  1142,
1348       733,   733,   816,   815,   819,   833,   825,   841,   834,   828,      1143,  1136, -1118,  1154,  1144,   354,  1150,  1151,  1152,  1140,
1349       829,   175,   789,   830,   842,   832,   835,    55,   840,   843,      1156,  1145,  1153,  1155,  1161,  1157,   500,  1159,  1165,  1158,
1350       794,   238,   238,   851,   804,   852,  -841,   850,   855,   807,      1171,  1160,  1162,   356,  1164,  1163,  1167,    51, -1118,  1168,
1351       857,   860,   861,  -841,   438,   873,   865,   847,   839,   874,      1166,  1173, -1118, -1118,  1169,  1170, -1118,  1174,  1172,  1175,
1352       882,   869,   877,   871,   872,   878,   846,   139,   881,   827,       131,  1178,  1180,  1134,  1186,  1176,  1177,  1179,  1181, -1118,
1353       894,   888,    16,   889,   883,   900,   886,   903,   895,  -841,      1183,    16,  1187,  1191,  1192,  1195,  1197,  1190,  1203,  1208,
1354       891,   158,   896,   893,   902,  -841,  -841,   901,   905,   897,      1205,  1196,  1146,  1207,  1204,  1193,  1149,  1209,  1217,  1214,
1355       904,   845,  -841,   912,   856,   917,   916,   925,    93,   915,      1210,  1213,  1182,  1227,  1215,  1220,  1188,  1234,  1233,  1240,
1356       927,   930,   928,   929,   369,   931,   875,   937,   876,   938,      1239,  1189,    24,  1231, -1118,   255,  1228,  1224,  1247,  1229,
1357       939,   879,   940,   933,   934,   880,   941,   943,  -841,   935,      1249,    28,  1253,  1235,  1255,  1189,    83,  1261,  1245,  1248,
1358      -841,   946,   945,   251,   951,   955,   957,   947,   959,   952,      1262,  1263,  1244,  1264,  1198,  1256,  1258,  1259,  1265,  1250,
1359       958,   956,   968,   960,    16,   961,   972,   962,   973,   965,      1260,  1257,  1266,  1272,  1267,  1268, -1118,  1269,  1270,    16,
1360       966,   271,   967,   974,   970,    54,  -841,  -841,  -841,   964,      1274,  1273,  1278,  1283,  1276,  1277,  1284,  1287,  1286,  1271,
1361       971,   466,   103,   978,   980,   924,   987,   975,   979,   981,      1281,  1279,  1292,  1280,  1291,  1296,   137,  1282,  1302,  1290,
1362       977,  -841,   982,   412,   983,   995,   996,  1001,   998,   988,      1303,  1300,  1288, -1118,  1294,  1289,  1236,  1310,  1311,  1242,
1363      1002,  1004,  1005,   993,   944,  1008,  1003,   992,   999,   948,         6,  1312, -1118,  1315,  1289,  1313,  1305,  1317,  1251,  1320,
1364      1020,  1000,  1014,   963,  1022,  1019,  1026,  1025,   969,    29,      1307,  1314, -1118, -1118, -1118,  1321,  1254,  1316,  1318,  1325,
1365      1017,  -841,    16,  1013,  1011,  1032,  1015,  1033,    32,  1037,     -1118,  1319,  1322,  1324,  1323,  1326,  1309, -1118,  1327,  1329,
1366      1021,  1036,   969,   112,  1040,  1024,  1028,  1031,  1035,  1039,      1328,  1332,  1334,  1331,    16, -1118, -1118, -1118, -1118, -1118,
1367      1041,  1027,  1042,  1044,  1045,  1046,  1043,  1038,  -841,  1047,      1333,  1337,  1335,  1344,  1345,  1336,  1339,  1349,  1350,  1351,
1368      1048,    22,  1049,  1050,  1055,  1060,  1054,  1057,  1063,  1068,       310,  1338,  1354,  1341, -1118,  1352,  1342,  1295,  1346,  1343,
1369      1066,  1051,  1061,  1058,  1072,  1062,  1079,  1067,  1081,  1082,      1364,  1366,  1353,  1367,  1298,  1355,   120, -1118,  1342,  1353,
1370      1069,  -841,  1073,  1074,  1023,  1087,  1091,  1029,  1083,  1094,      1358,  1304,  1370,  1360, -1118,  1365,  1308,  1361,  1368,  1369,
1371        16,  -841,  -841,  -841,  -841,  -841,  1098,  -841,  1099,  1074,      1363,  1330,  1340, -1118,  1371,  1359,  1347,  1372,  1373, -1118,
1372      1104,  1092,  1105,  1052,  1106,  1093,  1096,  -841,  -841,  -841,      1357,  1380,  1374, -1118,  1340,  1375,  1376,  1383, -1118,   311,
1373      1095,  1108,  1109,  1097,  1100,  1101,  -841,  1102,  1103,  1110,      1377,  1379,  1382, -1118,   313,  1381,  1388,  1384,  1391,  1395,
1374      1111,  1056,  1107,    55,  1112,  1114,  1113,  1123,  1125,  1115,      1387, -1118,  1394,  1396,  1399,  1402,  1398,  1392,  1400,  1401,
1375      1118,  1129,  1131,  -841,  1126,  1120,  1071,  1121,  1124,  1139,      1393, -1118,  1397,  1403,  1405,  1404,  1348,  1406,  1407,  1408,
1376      1142,  1128,  1144,  1145,  1132,  -841,  -841,  1120,  1128,  1136,      1410,  1411,  1409,  1412, -1118,  1413,  1415,  1416, -1118,  1414,
1377      1084,  1149,  1138,  -841,  1141,  1085,  -841,  1143,  1133,  1086,      1425,  1419,  1431,  1434,  1430,  1435,  1436,  1441,  1423,  1443,
1378      1140,  1147,  -841,  1137,  1157,  1154,  1085,  1148,  1150,  1160,      1442,  1432,  1433, -1118,  1437,  1438,  1448,  1439,  1440,  1428,
1379      -841,  1151,  1165,  1152,  1166,  1168,  1169,  -841,  1162,  1158,      1444,  1447,  1445,  1449,  1453,  1450,  1455, -1118,  1457, -1118,
1380      1172,  1175,  1167,  1177,  1163,  1116,  1164,  1170,  1171,  1179,      1454,  1451,  1446,  1452,  1456, -1118,  1458,  1459,  1464,  1473,
1381      1173,  1176,  1182,  -841,  1178,  1183,  1181,  1180,  1185,  1192,     -1118, -1118,  1474,  1460,  1461,  1463,  1466,  1389,  1462,  1465,
1382      1184,  1195,  1200,  1198,  1203,  1193,  1187,  1186,  1189,  1194,      1468,  1467,  1483,  1484,  1471, -1118,  1485, -1118,  1487, -1118,
1383      1206,  1197,  1201,  1196,  1202,  1208,  1209,  1212,  1214,  -841,      1489,  1477,  1478, -1118,  1482,  1480,  1481, -1118,  1486,  1488,
1384      1153,  1205,  1215,  1216,  1217,  1207,  1204,  1210,  1211,  1223,     -1118, -1118, -1118,  1497, -1118
     -841,  1213,  1218,  1219,  1227,  1229,  1221,  -841,  1220,  1232,  
     -841,  1233,  1224,  1226,  -841,  1174,  1228,  1230,  -841,  1222,  
     1241,  -841,  -841,  -841,  -841  
1385  };  };
1386    
1387  /* YYPGOTO[NTERM-NUM].  */  /* YYPGOTO[NTERM-NUM].  */
1388  static const yytype_int16 yypgoto[] =  static const yytype_int16 yypgoto[] =
1389  {  {
1390      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,     -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1391      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -674,     -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,
1392      -841,  -841,  -841,  -841,  -841,  -793,   124,  -841,   254,   176,      -743, -1118, -1118, -1118, -1118, -1118,  -914, -1117, -1118,   197,
1393      -841,  -449,  -626,  -780,    38,  -492,  -826,  -640,  -680,   392,       104, -1118,  -511,  -833,  -991,   192,  -973,  -487,  -955,  -893,
1394       -55,  -813,   277,  -569,   431,  -840,   -13,   -39,   -14,   307,      -729,  -782,   518,  -199, -1118,  -941,   290,  -609,   493,  -546,
1395      -233,  -437,   -15,  1231,  -841,  -841,  -841,  -841,  -841,  -841,       -14,   118,     2,   151,  -200,  -484,   -15,  1470, -1118, -1118,
1396      -841,  -841,  -841,  -841,  -412,  -841,  -841,  -841,  -841,  -841,     -1118, -1118, -1118, -1118, -1118, -1118, -1118, -1118,  -453, -1118,
1397      -841,  -841,  -841,  -206,   994,   997,  1006,  -323,   991,  1007,     -1118,   883, -1118, -1118, -1118, -1118, -1118,  -155,  1241,  1243,
1398      -231,  -230,  -227,    21,  -841,  -841,  1009,  -841,  -841,  -841,      1246,  -283,  1237,  1252,  1275,  1285,  1293,  1297,  1299,  1301,
1399      -841,  1016,  -248,  -841,  -841,   990,   770,  -841,  1030,  -841,      1306,  1356,  1362,  1378,  -258,  -255,  -253,   105, -1118,  1385,
1400      1012,  1034,  -245,  -841,    36,   -69,  -246,  1053,  -841,   771,     -1118,  1238, -1118, -1118, -1118, -1118,  1386,  -256, -1118, -1118,
1401      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,      1390,  -223, -1118,  1620, -1118,  1838,  2063,  -254, -1118,   116,
1402      1018,  -841,  -841,  -841        50,  -222,  2064, -1118,   972, -1118, -1118, -1118, -1118,    86,
1403        2285, -1118,  -257, -1118, -1118, -1118, -1118, -1118, -1118,  2281,
1404       -1118, -1118, -1118
1405  };  };
1406    
1407  /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If  /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
1408     positive, shift that token.  If negative, reduce the rule which     positive, shift that token.  If negative, reduce the rule which
1409     number is the opposite.  If zero, do what YYDEFACT says.     number is the opposite.  If zero, do what YYDEFACT says.
1410     If YYTABLE_NINF, syntax error.  */     If YYTABLE_NINF, syntax error.  */
1411  #define YYTABLE_NINF -181  #define YYTABLE_NINF -219
1412  static const yytype_int16 yytable[] =  static const yytype_int16 yytable[] =
1413  {  {
1414       275,   273,   276,   277,   278,   279,   280,   281,   282,   283,       275,   892,   276,   277,   278,   279,   280,   281,   282,   283,
1415       284,   285,   286,   287,   288,   289,   290,   778,   786,   319,       284,   285,   286,   287,   288,   289,   290,   273,   593,   707,
1416       319,   319,   319,   319,   319,   319,   319,   319,   542,   930,       854,   642,  1094,   644,  1069,   394,   398,   395,   399,   433,
1417       755,   372,   959,   388,   391,   647,   389,   392,  -180,   411,       476,   880,  -218,   477,  1204,   478,   639,   659,   964,  1522,
1418       421,   583,   584,   600,   586,   318,   320,   321,   322,   323,      1523,    33,  1212,   671,   318,   320,   321,   322,   323,   324,
1419       324,   325,   326,   327,   597,  1288,  1289,   440,   441,   610,       325,   326,   327,   651,  1136,   374,   654,  1097,     1,  1099,
1420       772,   442,   963,   909,   965,     1,  1258,     2,   603,  1258,         2,  1456,   661,   421,   431,  1456,   670,   665,  1042,   719,
1421       423,   352,   577,   942,    33,  1215,  1147,   550,   955,   410,       630,    36,  1403,  1322,  1313,  1080,     3,  1349,     4,     5,
1422       416,   587,    43,     3,   449,     4,     5,   426,  1216,     6,      1093,   645,     6,    43,   720,  1404,  1314,     7,     8,  1405,
1423       428,   598,  1217,   347,     7,     8,   611,   405,    44,     9,      1350,   724,     9,    10,    11,   660,    12,    37,   422,    44,
1424        10,    11,   615,    12,   308,   565,   566,   567,   568,   569,       340,   672,   423,   391,  1468,  1393,   435,   436,   437,   847,
1425       570,   571,   572,   573,   616,    36,  1167,   943,  1259,   385,       424,   438,   439,  1457,  1105,  1106,  1107,  1464,   440,   352,
1426       617,  1266,   748,   618,   423,   424,  1221,   944,   345,  1168,       676,  1469,   354,   848,   441,   442,  1040,   443,   390,   766,
1427       346,   386,   347,  1270,  1205,   425,   749,   704,   340,  1222,       420,   426,   677,   391,    40,   486,  1124,  1294,   678,  1125,
1428       348,   426,   427,    37,   428,    40,   349,   350,   341,   705,       392,   352,  1186,   308,   618,   619,   620,   621,   622,   623,
1429      1271,   555,   556,   557,   558,   559,   560,   561,   562,   563,       624,   625,   626,   436,  1414,    42,  1081,   401,  1507,   402,
1430       564,  1138,   578,   579,   580,   581,   412,   302,   340,   979,       603,   340,   403,   698,  1508,    41,  1082,  1415,  1509,   404,
1431       413,    41,   980,  1139,   747,   303,   753,   754,   414,   998,       441,   341,    46,   443,   699,   700,   319,   319,   319,   319,
1432      1152,  1041,   308,   309,   310,   311,   312,   313,   314,   315,       319,   319,   319,   319,   319,   345,   789,   346,  1214,   347,
1433       316,   317,  1153,   393,  1104,   394,  1000,    34,  1105,  1001,       348,    47,    48,  1327,   302,    34,  1270,   349,   790,  1193,
1434        45,  1060,  1061,    35,    38,   395,  1106,   787,  1035,   300,      1271,    35,   303,   350,   351,  1328,   352,   347,  1272,  1143,
1435        39,   384,    42,   904,   403,   301,   795,   796,   797,   798,        45,   415,  1144,   818,  1208,  1209,   308,   309,   310,   311,
1436       799,   800,   801,   802,   803,   804,   805,   806,    46,   305,       312,   313,   314,   315,   316,   317,   590,   591,   590,   591,
1437       764,  1063,   766,   539,   540,   306,  1006,  1064,  1091,   975,       608,   609,   610,   611,   612,   613,   614,   615,   616,   617,
1438       270,   975,   552,   553,   539,   540,   554,   308,   309,   310,       270,   631,   632,   633,   634,  1148,   637,   863,  1119,   865,
1439       311,   312,   313,   314,   315,   316,   317,  -180,  -180,  -180,        38,  -218,  -218,  -218,   605,   291,    39,   606,   846,   607,
1440       292,   603,    47,    48,   620,   291,   624,   623,   466,   467,       852,   853,   704,   705,   308,   618,   619,   620,   621,   622,
1441       500,   467,  1191,  1192,   447,   293,   812,   539,   540,   462,       623,   624,   625,   626,   484,  1167,   868,  1248,  1168,   294,
1442       295,   462,   462,   462,   462,   462,   462,   462,   462,    -4,      1119,   924,    -4,    -4,   308,   309,   310,   311,   312,   313,
1443        -4,  1042,  1210,  1211,   308,   309,   310,   311,   312,   313,       314,   315,   316,   317,   300,   503,   504,   893,   917,   665,
1444       314,   315,   316,   317,   961,   962,   656,   657,   435,   443,       301,   689,   680,   292,   683,   900,   901,   902,   903,   904,
1445      1031,   294,   296,  1034,   379,   381,  1043,   297,  1174,   308,       905,   906,   907,   908,   909,   910,   911,   305,  1217,  1219,
1446       309,   310,   311,   312,   313,   314,   315,   316,   317,   465,       544,   504,   293,   306,  1218,  1220,   921,   922,   923,   502,
1447       298,   299,   304,    47,   377,   340,   382,   473,   450,   451,       389,  1567,  1607,   412,  1612,   681,   684,  1568,  1608,   512,
1448       452,   898,   456,   474,   453,   475,   476,   477,   478,   479,      1613,   701,   590,   591,   295,   513,   296,   514,   515,   516,
1449      1037,   480,   454,   481,   482,   483,   484,   485,   457,   486,       517,   518,   297,   519,   298,   520,   521,   522,   523,   524,
1450       487,   488,   929,   959,   490,   455,   491,   458,   459,   493,       304,   525,   526,   527,   528,   529,   299,   396,   400,   531,
1451       460,   461,   463,   496,   497,   464,   498,   499,   308,   565,        47,   532,   432,   382,   534,  1379,  1380,  1398,  1399,   538,
1452       566,   567,   568,   569,   570,   571,   572,   573,   503,   468,       539,   540,   387,   541,   542,   543,  1182,  1095,  1096,  1185,
1453       469,   470,   505,   506,   471,   507,   508,  1112,   472,   489,       733,   734,   460,   479,   384,   386,   340,   548,   487,   549,
1454       492,   512,   513,   514,   515,   516,   517,   518,   495,   494,       488,  1391,   551,   552,   489,   553,   554,   490,   491,   492,
1455       501,   504,   502,   509,   510,   511,   519,   520,   945,   956,       493,   558,   559,   560,   561,   562,   563,   564,   565,   566,
1456       957,   308,   565,   566,   567,   568,   569,   570,   571,   572,       925,   494,   339,   308,   309,   310,   311,   312,   313,   314,
1457       573,   526,   521,   522,   527,   523,   524,   528,   529,   531,       315,   316,   317,   495,   496,   497,   499,   500,   499,   499,
1458       530,   533,   534,   542,   532,   535,   271,   308,   565,   566,       499,   499,   499,   499,   499,   499,   498,   501,   505,   707,
1459       567,   568,   569,   570,   571,   572,   573,   574,   538,   536,       506,   507,  1459,   508,   509,   530,   510,   511,   535,   533,
1460       537,   544,   543,   545,   548,   549,   599,   547,   546,   582,      1237,   537,   545,   536,   547,   550,  1034,   546,   577,   555,
1461       576,   585,   588,   550,   589,   594,   576,   576,   595,   576,       556,   578,   557,   569,   567,   572,   571,   568,   573,  1083,
1462       596,   613,   612,   614,   592,   593,   636,   641,   642,   576,       579,   570,   582,   574,   575,   584,   585,   587,  1062,   581,
1463       648,   646,  1220,   643,   576,   645,   650,   654,   644,   632,       580,  1068,   583,   586,   588,   589,   594,  1319,   308,   309,
1464       633,   634,   635,   649,   640,   655,   651,   652,   658,   653,       310,   311,   312,   313,   314,   315,   316,   317,   271,   308,
1465       659,   660,  1051,   661,   662,   663,   664,   665,   680,   684,       618,   619,   620,   621,   622,   623,   624,   625,   626,   593,
1466       687,   688,   689,   692,   447,   447,   319,   319,   319,   319,       595,   596,   597,   600,   601,   629,   599,   639,   602,   638,
1467       319,   319,   319,   319,   319,   693,   666,   667,   668,   669,       598,   643,   603,   646,   629,   648,   629,   655,   656,   658,
1468       670,   671,   672,   673,   674,   675,   676,   677,   678,   679,       662,   718,   673,   652,   653,   647,   657,   674,   675,   714,
1469       694,   695,   318,   320,   321,   322,   323,   324,   325,   326,       629,   716,   715,   730,   696,   717,   629,   723,   725,   721,
1470       327,   696,   700,   681,   682,   683,   701,   702,   685,   686,       727,   692,   693,   694,   695,   729,   726,   710,   713,   722,
1471       703,   706,   707,   724,   726,   690,   691,   727,   339,   728,       731,   732,   728,   735,   736,   484,   484,   308,   618,   619,
1472       729,   730,   731,   733,   732,   734,   739,   697,   736,   698,       620,   621,   622,   623,   624,   625,   626,   627,   737,   745,
1473       743,   699,   735,   740,   744,   769,   746,   741,   742,   745,       746,   747,   748,   749,   750,   751,   752,   753,   754,   755,
1474       765,   773,   790,   775,   781,   708,   709,   710,   711,   712,       756,   757,   758,   738,   318,   320,   321,   322,   323,   324,
1475       713,   714,   715,   716,   717,   718,   719,   720,   721,   722,       325,   326,   327,   740,   739,   707,   760,   761,   762,   763,
1476       723,   774,   725,   779,   780,   782,   783,   791,   788,   792,       741,   742,   743,   744,   759,   764,   767,   768,   765,   771,
1477       793,   789,   794,   813,   811,   815,   814,   816,   817,   818,       769,   770,   772,   339,   773,   774,   775,   777,   778,   776,
1478       603,   526,   526,   819,   821,   820,   822,   824,   823,   825,       780,   785,   629,   787,   779,   786,   781,   808,   788,   782,
1479       826,   827,   832,   828,   831,   830,   829,   756,   841,   844,       791,   783,   811,   784,   810,   821,   820,   812,   819,  1199,
1480       759,   760,   761,   762,   845,   576,   846,   576,   849,   768,       823,   822,   824,   825,   826,   792,   793,   794,   795,   796,
1481       850,   771,   771,   851,   852,   853,   856,   857,   858,   859,       797,   798,   799,   800,   801,   802,   803,   804,   805,   806,
1482       860,   861,   862,   785,   879,   881,   882,   884,   883,   887,       807,   827,   809,   709,   828,   830,   813,   814,   815,   829,
1483       885,   888,   889,   891,   892,   886,   934,   890,   893,   894,       816,   817,   831,   832,   845,   837,   840,   836,   838,   839,
1484       982,   973,   968,   906,   910,   897,   911,   808,   912,   810,       833,   842,   843,   876,   889,   844,   864,   841,   869,   870,
1485       895,   576,   924,   896,   925,   926,   927,   928,   972,   932,       874,   877,   875,   887,   885,   886,   888,   894,   577,   577,
1486       445,   931,   933,   935,   969,   970,   971,   974,   975,   976,       896,   897,   895,   898,   899,   918,   916,   339,   919,   920,
1487       977,   981,   983,   978,   989,   833,   991,   993,   997,  1002,       927,   928,   929,   930,   931,   933,   319,   319,   319,   319,
1488       992,   999,   834,  1003,   835,   836,   837,  1005,   838,   839,       319,   319,   319,   319,   319,   932,   934,   935,   936,   937,
1489      1008,  1009,   339,   840,  1011,   842,  1016,   843,  1012,  1018,       938,   871,   855,   939,   942,   858,   859,   860,   861,   940,
1490      1019,  1022,  1020,  1021,  1023,  1024,  1025,  1030,  1028,   854,       629,   943,   629,   944,   867,   945,   946,   947,   949,   950,
1491      1007,   855,  1029,  1026,  1027,  1036,  1057,  1049,  1050,  1054,       873,   941,   952,   962,   966,   948,   963,   882,   884,   969,
1492       863,   864,   865,   866,   867,   868,   869,   870,   871,   872,       951,   967,   482,   968,   891,   973,   974,   975,   976,   977,
1493       873,   874,  1038,   876,  1017,   878,  1039,   880,  1040,  1046,       980,   981,   982,   983,   984,   665,  1002,  1004,  1005,  1006,
1494      1055,  1047,  1048,  1052,  1058,  1053,  1062,  1065,  1067,   921,       339,   339,   985,  1013,   926,  1012,  1014,   913,  1015,   915,
1495      1066,  1071,  1068,  1074,  1069,  1090,  1070,  1075,  1072,  1073,      1016,   629,  1017,  1019,  1018,  1020,  1022,  1021,  1023,  1024,
1496      1076,   900,   901,   902,  1292,   771,   905,  1078,   908,   908,       339,  1026,   319,   319,  1025,  1027,   499,  1028,  1029,  1049,
1497      1079,  1080,   339,   921,   922,  1083,   921,  1084,   921,  1085,      1030,  1043,  1032,  1044,   953,  1031,  1033,  1050,  1117,  1048,
1498      1086,   785,  1087,  1088,  1089,  1092,  1095,  1093,  1096,   937,      1051,   954,  1063,   955,   956,   957,  1064,   958,   959,  1065,
1499       939,  1097,   937,   576,   949,   951,  1098,   937,   960,   640,      1066,  1067,   960,   961,  1070,  1071,  1111,   965,  1072,  1102,
1500       640,   922,  1100,   922,  1099,  1109,  1101,  1102,  1103,  1108,      1103,  1108,  1110,   339,  1116,  1113,   972,  1073,  1104,  1114,
1501      1110,  1128,  1129,  1137,  1111,   319,   319,   525,  1107,  1113,      1109,  1118,  1119,   873,  1121,   978,  1112,   979,  1127,   707,
1502      1119,   462,  1114,  1115,   984,   985,  1292,   986,   987,   988,      1120,  1126,  1122,  1123,  1128,   986,   987,   988,   989,   990,
1503      1116,  1118,   990,  1117,  1120,  1122,  1121,   339,   339,  1123,       991,   992,   993,   994,   995,   996,   997,  1134,   999,  1115,
1504      1124,   995,   996,  1126,  1127,  1131,  1130,  1132,  1133,  1134,      1001,  1135,  1003,  1137,  1138,  1139,  1007,  1008,  1009,  1141,
1505      1136,  1135,  1140,  1142,   339,  1004,  1141,   319,   319,  1143,      1010,  1011,  1142,  1145,  1147,  1150,  1152,  1153,  1149,  1158,
1506      1145,  1146,  1147,  1010,  1148,  1149,  1150,   590,   591,  1151,      1157,  1162,  1166,  1163,  1169,  1164,  1165,  1170,  1177,  1171,
1507      1154,  1155,  1156,  1157,  1161,  1162,  1159,   607,  1158,  1164,      1172,  1173,  1174,  1176,   499,   499,   319,  1181,  1175,  1178,
1508      1013,  1165,  1160,   995,   996,  1163,   339,  1166,  1169,   639,      1179,  1187,  1188,  1198,  1180,  1230,  1205,  1190,  1203,  1045,
1509      1170,  1171,  1173,  1172,  1175,   921,   462,   462,   921,   319,      1191,  1216,  1202,  1250,  1192,  1195,  1197,  1036,  1037,  1038,
1510      1177,  1179,  1180,  1182,  1176,  1178,  1183,  1189,  1181,  1185,      1196,   873,  1041,   884,  1200,  1206,  1201,  1047,  1210,  1211,
1511       445,   445,  1188,  1184,   908,   921,   921,  1190,  1193,  1186,      1215,  1221,  1223,  1059,  1224,  1226,   576,  1222,  1225,  1227,
1512       922,  1187,  1194,   922,  1195,  1045,  1197,  1196,  1198,  1200,      1228,   891,  1233,  1229,  1231,  1234,  1232,  1235,  1075,  1077,
1513      1199,  1201,  1202,  1204,  1205,  1207,   939,  1218,  1209,   949,      1236,  1075,   629,  1087,  1089,  1238,  1075,   710,   713,   713,
1514       922,   922,  1206,   319,   319,  1208,   462,  1212,  1214,  1219,      1059,  1239,  1059,  1240,  1241,  1243,  1526,   339,   339,   884,
1515      1213,  1223,  1224,  1225,  1226,  1227,  1230,  1228,  1234,  1229,       884,   884,  1242,   339,  1244,  1245,  1246,   339,  1247,  1249,
1516      1231,  1233,  1077,  1235,  1236,  1237,  1238,  1240,  1239,  1081,      1129,  1130,  1252,  1131,  1132,  1133,  1253,  1255,  1256,  1257,
1517      1082,  1242,  1241,  1243,  1244,  1246,  1245,  1248,  1247,  1249,       339,   649,   650,  1258,  1261,  1259,  1260,  1262,  1264,   816,
1518      1250,  1251,   462,   462,  1094,  1253,  1254,  1255,  1256,  1260,       817,  1263,   319,   319,   499,   669,  1265,  1047,  1266,  1267,
1519      1258,  1262,  1252,  1263,  1265,  1264,  1267,  1269,  1257,  1272,      1268,  1269,  1273,  1274,  1146,  1275,  1276,  1282,  1277,   712,
1520      1273,  1268,  1274,  1275,   339,   339,  1276,  1279,  1278,  1283,      1278,  1151,  1280,   339,  1281,   339,  1284,  1283,  1285,  1287,
1521       339,  1277,  1285,  1297,   339,  1280,  1296,  1282,  1286,  1284,      1286,  1288,  1526,  1289,  1290,  1292,  1293,  1296,  1154,  1295,
1522       951,  1281,  1298,  1299,   339,  1300,  1287,   525,   525,  1301,      1297,  1298,  1299,   482,   482,  1300,  1301,  1303,  1304,   709,
1523      1302,  1303,  1304,  1306,  1305,  1308,  1307,  1144,  1310,  1311,      1159,  1160,  1161,  1306,  1305,  1302,  1307,  1308,  1309,  1311,
1524      1309,   607,  1312,   757,   758,  1313,  1318,  1315,  1314,   763,      1312,  1317,  1310,  1315,  1333,  1316,  1318,  1320,  1322,  1321,
1525      1319,  1316,  1317,   767,   339,  1321,   339,  1322,  1320,  1324,      1324,  1325,  1323,   709,  1331,  1326,   709,  1329,   709,  1330,
1526      1325,   777,   777,  1326,  1327,  1330,  1328,  1331,  1332,  1333,      1339,  1189,  1335,  1332,  1336,  1334,  1337,  1340,   499,   499,
1527       785,  1334,  1335,  1336,  1056,  1346,  1339,  1347,  1337,  1340,      1338,  1341,  1344,  1342,  1343,  1047,  1346,  1347,  1345,  1348,
1528      1338,  1329,  1342,  1344,  1341,  1343,  1349,  1348,  1350,  1351,      1351,  1352,  1059,  1059,  1353,  1354,  1365,  1355,  1357,  1359,
1529      1352,   807,  1353,   809,  1354,  1358,  1355,  1356,  1360,  1203,      1361,  1362,  1364,  1077,  1358,  1366,  1087,  1059,  1059,  1368,
1530      1357,  1361,  1359,  1363,   921,  1362,  1366,  1364,  1368,  1365,      1372,  1077,   882,   710,  1370,  1374,  1375,  1360,  1363,  1369,
1531      1369,  1370,  1373,  1367,  1371,  1374,  1375,  1372,  1376,  1377,      1373,   319,   319,  1376,  1367,  1377,  1378,  1381,  1382,  1383,
1532      1378,  1379,  1380,  1382,  1384,  1383,  1381,  1387,  1386,   960,      1384,  1386,  1371,  1385,  1389,  1387,   339,  1393,  1388,  1390,
1533      1385,  1391,  1388,  1389,  1392,  1390,  1394,  1393,  1400,  1395,       339,  1392,  1251,  1395,  1397,  1408,  1407,  1254,  1394,  1401,
1534      1397,  1398,  1405,  1406,  1450,  1396,   339,  1407,  1408,  1399,      1396,  1413,  1410,   339,  1400,  1402,  1406,  1411,   339,  1409,
1535       339,  1401,  1402,  1403,  1404,  1409,  1410,  1261,  1411,  1412,      1412,  1416,  1417,  1419,  1427,  1421,  1420,  1422,  1429,  1428,
1536       339,  1413,  1414,  1416,  1415,   339,  1417,  1418,  1420,  1421,      1423,  1424,  1279,  1418,  1430,  1426,   576,   576,  1431,  1432,
1537      1419,  1425,  1422,  1424,  1423,  1427,  1426,  1428,  1431,  1432,       339,  1433,  1434,  1437,  1435,  1436,  1439,  1438,  1440,  1441,
1538      1433,  1232,  1429,  1430,  1435,  1434,  1436,  1437,   339,  1438,      1442,  1443,   669,   339,   856,   857,  1447,  1449,  1444,   339,
1539      1442,  1439,  1443,  1445,  1440,  1446,  1447,  1441,  1444,  1453,       862,   339,  1445,  1089,   866,  1448,  1077,  1451,   709,   709,
1540      1448,   339,  1449,  1454,  1451,   899,  1452,  1059,  1345,   903,      1452,  1453,  1454,  1458,  1460,  1456,   879,   879,  1461,  1462,
1541      1125,   339,   967,   339,  1044,  1323,   418,   397,   913,   438,      1463,  1446,  1465,   709,   709,  1466,  1467,  1450,  1455,   709,
1542       398,   307,   621,   625,     0,     0,     0,     0,     0,   399,      1470,  1471,  1472,  1468,  1474,  1475,  1473,  1476,  1477,  1478,
1543         0,     0,     0,   408,     0,   439,   941,     0,   420,   400,      1481,  1479,  1480,  1482,  1483,  1485,  1492,   912,  1484,   914,
1544         0,   954,     0,     0,   639,   639,   444,   964,     0,   966,      1488,  1491,  1487,  1486,  1356,  1493,  1494,  1495,  1489,  1496,
1545         0,     0,     0,   401,     0,     0,     0,   402,     0,     0,      1498,  1497,  1499,  1501,  1500,  1503,  1504,  1502,  1505,  1506,
1546         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1510,  1511,  1512,  1514,  1513,  1518,  1517,  1515,  1516,  1519,
1547         0,     0,     0,     0,     0,     0,   404,     0,     0,   339,      1520,  1521,  1532,  1530,   339,   339,  1531,  1533,  1534,  1536,
1548       339,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1535,  1537,  1539,  1540,  1543,  1545,  1538,  1546,  1549,  1541,
1549         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1542,  1207,  1213,  1544,  1555,  1291,  1557,  1583,   891,  1547,
1550         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1558,  1550,  1552,  1553,  1548,  1551,  1554,  1560,  1561,  1559,
1551         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1562,  1563,  1564,  1565,  1566,  1571,  1425,  1569,  1570,  1573,
1552         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1575,  1576,  1572,  1577,  1574,  1578,  1580,  1581,  1584,  1586,
1553         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1579,  1582,  1587,  1585,  1590,  1588,  1593,  1589,  1597,  1601,
1554         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1591,  1592,  1602,  1610,  1600,  1596,  1606,  1615,  1599,  1604,
1555         0,     0,     0,     0,     0,   777,  1032,  1033,   777,     0,      1619,  1603,  1605,  1617,  1618,  1614,  1609,  1620,  1622,  1594,
1556         0,   607,   328,    52,    53,    54,    55,    56,   329,   330,      1611,  1623,  1616,  1621,  1631,  1625,  1628,   710,  1624,  1595,
1557        1629,  1194,  1626,  1627,   666,  1630,  1598,  1633,  1635,  1642,
1558        1632,  1637,  1634,  1640,  1490,  1639,  1636,  1035,  1638,  1645,
1559        1647,  1039,  1641,  1644,  1643,  1646,  1648,  1649,  1650,  1651,
1560        1652,  1653,  1654,  1052,  1656,  1655,  1657,  1660,  1663,  1658,
1561        1661,  1659,  1667,  1674,  1673,  1675,  1662,  1666,  1686,  1676,
1562        1677,  1079,  1664,  1665,  1668,  1672,  1092,  1679,  1669,   712,
1563         712,  1678,  1098,  1670,  1100,  1671,  1680,  1681,  1682,  1684,
1564        1687,  1683,  1685,  1688,  1689,  1690,  1691,  1692,  1693,  1556,
1565        1695,  1694,  1696,  1697,  1698,  1699,  1700,  1701,  1703,  1704,
1566         307,  1101,   418,  1702,   406,   464,   407,     0,     0,   408,
1567         685,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1568         465,     0,     0,   709,     0,     0,     0,     0,     0,     0,
1569           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1570           0,     0,     0,   466,     0,     0,     0,     0,     0,     0,
1571           0,     0,     0,   467,     0,     0,     0,     0,     0,     0,
1572           0,   468,     0,     0,     0,   469,     0,   470,     0,   471,
1573           0,     0,     0,     0,   472,     0,     0,     0,     0,     0,
1574           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1575           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1576           0,     0,   879,  1183,  1184,   879,     0,     0,     0,     0,
1577           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1578           0,     0,     0,     0,   473,     0,     0,     0,     0,     0,
1579         474,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1580           0,     0,     0,     0,     0,     0,   475,     0,     0,   409,
1581           0,     0,     0,   480,     0,     0,   428,     0,     0,     0,
1582           0,     0,   669,   328,    52,    53,    54,    55,    56,   329,
1583         330,   331,   332,   333,   334,   335,   336,   337,   338,    67,
1584          68,    69,    70,    71,    72,    73,    74,    75,    76,    77,
1585          78,    79,    80,    81,    82,    83,    84,    85,    86,    87,
1586          88,    89,    90,    91,    92,    93,    94,    95,    96,    97,
1587          98,    99,   100,   101,   102,   103,   104,   105,   106,   107,
1588         108,   109,   110,   111,   112,   113,   114,   115,   116,   117,
1589         118,   119,   120,   121,   122,   123,   124,   125,   126,   127,
1590         128,   129,   130,   131,   132,   133,   134,   135,   136,   137,
1591         138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
1592         148,   149,   150,   151,   152,   153,   154,   155,   156,   157,
1593         158,   159,   160,   161,   162,   163,   164,   165,   166,   167,
1594         168,   169,   170,   171,   172,   173,   174,   175,   176,   177,
1595         178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
1596         188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
1597         198,   199,   200,   201,   202,   203,   204,   205,   206,   207,
1598         208,   209,   210,   211,   212,   213,   214,   215,   216,   217,
1599         218,   219,   220,   221,   222,   223,   224,   225,   226,   227,
1600         228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
1601         238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
1602         248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
1603         258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
1604         268,   269,   834,   410,   270,   328,    52,    53,    54,    55,
1605          56,   329,   330,   331,   332,   333,   334,   335,   336,   337,
1606         338,    67,    68,    69,    70,    71,    72,    73,    74,    75,
1607          76,    77,    78,    79,    80,    81,    82,    83,    84,    85,
1608          86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
1609          96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
1610         106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
1611         116,   117,   118,   119,   120,   121,   122,   123,   124,   125,
1612         126,   127,   128,   129,   130,   131,   132,   133,   134,   135,
1613         136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
1614         146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
1615         156,   157,   158,   159,   160,   161,   162,   163,   164,   165,
1616         166,   167,   168,   169,   170,   171,   172,   173,   174,   175,
1617         176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
1618         186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
1619         196,   197,   198,   199,   200,   201,   202,   203,   204,   205,
1620         206,   207,   208,   209,   210,   211,   212,   213,   214,   215,
1621         216,   217,   218,   219,   220,   221,   222,   223,   224,   225,
1622         226,   227,   228,   229,   230,   231,   232,   233,   234,   235,
1623         236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
1624         246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
1625         256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
1626         266,   267,   268,   269,   430,   835,   270,    51,    52,    53,
1627          54,    55,    56,    57,    58,    59,    60,    61,    62,    63,
1628          64,    65,    66,    67,    68,    69,    70,    71,    72,    73,
1629          74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
1630          84,    85,    86,    87,    88,    89,    90,    91,    92,    93,
1631          94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
1632         104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
1633         114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
1634         124,   125,   126,   127,   128,   129,   130,   131,   132,   133,
1635         134,   135,   136,   137,   138,   139,   140,   141,   142,   143,
1636         144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
1637         154,   155,   156,   157,   158,   159,   160,   161,   162,   163,
1638         164,   165,   166,   167,   168,   169,   170,   171,   172,   173,
1639         174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
1640         184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
1641         194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
1642         204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
1643         214,   215,   216,   217,   218,   219,   220,   221,   222,   223,
1644         224,   225,   226,   227,   228,   229,   230,   231,   232,   233,
1645         234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
1646         244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
1647         254,   255,   256,   257,   258,   259,   260,   261,   262,   263,
1648         264,   265,   266,   267,   268,   269,   411,   413,   270,   328,
1649          52,    53,    54,    55,    56,   329,   330,   331,   332,   333,
1650         334,   335,   336,   337,   338,    67,    68,    69,    70,    71,
1651          72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1652          82,    83,    84,    85,    86,    87,    88,    89,    90,    91,
1653          92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
1654         102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
1655         112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
1656         122,   123,   124,   125,   126,   127,   128,   129,   130,   131,
1657         132,   133,   134,   135,   136,   137,   138,   139,   140,   141,
1658         142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
1659         152,   153,   154,   155,   156,   157,   158,   159,   160,   161,
1660         162,   163,   164,   165,   166,   167,   168,   169,   170,   171,
1661         172,   173,   174,   175,   176,   177,   178,   179,   180,   181,
1662         182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
1663         192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
1664         202,   203,   204,   205,   206,   207,   208,   209,   210,   211,
1665         212,   213,   214,   215,   216,   217,   218,   219,   220,   221,
1666         222,   223,   224,   225,   226,   227,   228,   229,   230,   231,
1667         232,   233,   234,   235,   236,   237,   238,   239,   240,   241,
1668         242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
1669         252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
1670         262,   263,   264,   265,   266,   267,   268,   269,   414,   481,
1671         270,   328,    52,    53,    54,  1053,  1054,    57,    58,    59,
1672          60,    61,    62,    63,    64,    65,    66,    67,    68,    69,
1673          70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1674          80,    81,    82,    83,    84,    85,    86,    87,    88,    89,
1675          90,    91,    92,    93,    94,    95,    96,    97,    98,    99,
1676         100,   101,   102,   103,   104,   105,   106,   107,   108,   109,
1677         110,   111,   112,   113,   114,   115,   116,   117,   118,   119,
1678         120,   121,   122,   123,   124,   125,   126,   127,   128,   129,
1679         130,   131,   132,   133,   134,   135,   136,   137,   138,   139,
1680         140,   141,   142,   143,   144,   145,   146,   147,   148,   149,
1681         150,   151,   152,   153,   154,   155,   156,   157,   158,   159,
1682         160,   161,   162,   163,   164,   165,   166,   167,   168,   169,
1683         170,   171,   172,   173,   174,   175,   176,   177,   178,   179,
1684         180,   181,   182,   183,   184,   185,   186,   187,   188,   189,
1685         190,   191,   192,   193,   194,   195,   196,   197,   198,   199,
1686         200,   201,   202,   203,   204,   205,   206,   207,   208,   209,
1687         210,   211,   212,   213,   214,   215,   216,   217,   218,   219,
1688         220,   221,   222,   223,   224,   225,   226,   227,   228,   229,
1689         230,   231,   232,   233,   234,   235,   236,   237,   238,   239,
1690         240,   241,   242,   243,   244,   245,   246,   247,   248,   249,
1691         250,   251,   252,   253,   254,   255,   256,   257,   258,   259,
1692         260,   261,   262,   263,   264,   265,   266,   267,   268,   269,
1693         590,   591,   328,    52,    53,    54,    55,    56,   329,   330,
1694       331,   332,   333,   334,   335,   336,   337,   338,    67,    68,       331,   332,   333,   334,   335,   336,   337,   338,    67,    68,
1695        69,    70,    71,    72,    73,    74,    75,    76,    77,    78,        69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
1696        79,    80,    81,    82,    83,    84,    85,    86,    87,    88,        79,    80,    81,    82,    83,    84,    85,    86,    87,    88,
# Line 1454  static const yytype_int16 yytable[] = Line 1712  static const yytype_int16 yytable[] =
1712       239,   240,   241,   242,   243,   244,   245,   246,   247,   248,       239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
1713       249,   250,   251,   252,   253,   254,   255,   256,   257,   258,       249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
1714       259,   260,   261,   262,   263,   264,   265,   266,   267,   268,       259,   260,   261,   262,   263,   264,   265,   266,   267,   268,
1715       269,   737,     0,   270,   328,    52,    53,    54,    55,    56,       269,   328,    52,    53,    54,    55,    56,    57,    58,    59,
1716       329,   330,   331,   332,   333,   334,   335,   336,   337,   338,        60,    61,    62,    63,    64,    65,    66,    67,    68,    69,
       67,    68,    69,    70,    71,    72,    73,    74,    75,    76,  
       77,    78,    79,    80,    81,    82,    83,    84,    85,    86,  
       87,    88,    89,    90,    91,    92,    93,    94,    95,    96,  
       97,    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,   123,   124,   125,   126,  
      127,   128,   129,   130,   131,   132,   133,   134,   135,   136,  
      137,   138,   139,   140,   141,   142,   143,   144,   145,   146,  
      147,   148,   149,   150,   151,   152,   153,   154,   155,   156,  
      157,   158,   159,   160,   161,   162,   163,   164,   165,   166,  
      167,   168,   169,   170,   171,   172,   173,   174,   175,   176,  
      177,   178,   179,   180,   181,   182,   183,   184,   185,   186,  
      187,   188,   189,   190,   191,   192,   193,   194,   195,   196,  
      197,   198,   199,   200,   201,   202,   203,   204,   205,   206,  
      207,   208,   209,   210,   211,   212,   213,   214,   215,   216,  
      217,   218,   219,   220,   221,   222,   223,   224,   225,   226,  
      227,   228,   229,   230,   231,   232,   233,   234,   235,   236,  
      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,  
      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,  
      257,   258,   259,   260,   261,   262,   263,   264,   265,   266,  
      267,   268,   269,     0,   738,   270,    51,    52,    53,    54,  
       55,    56,    57,    58,    59,    60,    61,    62,    63,    64,  
       65,    66,    67,    68,    69,    70,    71,    72,    73,    74,  
       75,    76,    77,    78,    79,    80,    81,    82,    83,    84,  
       85,    86,    87,    88,    89,    90,    91,    92,    93,    94,  
       95,    96,    97,    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,   123,   124,  
      125,   126,   127,   128,   129,   130,   131,   132,   133,   134,  
      135,   136,   137,   138,   139,   140,   141,   142,   143,   144,  
      145,   146,   147,   148,   149,   150,   151,   152,   153,   154,  
      155,   156,   157,   158,   159,   160,   161,   162,   163,   164,  
      165,   166,   167,   168,   169,   170,   171,   172,   173,   174,  
      175,   176,   177,   178,   179,   180,   181,   182,   183,   184,  
      185,   186,   187,   188,   189,   190,   191,   192,   193,   194,  
      195,   196,   197,   198,   199,   200,   201,   202,   203,   204,  
      205,   206,   207,   208,   209,   210,   211,   212,   213,   214,  
      215,   216,   217,   218,   219,   220,   221,   222,   223,   224,  
      225,   226,   227,   228,   229,   230,   231,   232,   233,   234,  
      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,  
      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,  
      255,   256,   257,   258,   259,   260,   261,   262,   263,   264,  
      265,   266,   267,   268,   269,     0,     0,   270,   328,    52,  
       53,    54,    55,    56,   329,   330,   331,   332,   333,   334,  
      335,   336,   337,   338,    67,    68,    69,    70,    71,    72,  
       73,    74,    75,    76,    77,    78,    79,    80,    81,    82,  
       83,    84,    85,    86,    87,    88,    89,    90,    91,    92,  
       93,    94,    95,    96,    97,    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,  
      123,   124,   125,   126,   127,   128,   129,   130,   131,   132,  
      133,   134,   135,   136,   137,   138,   139,   140,   141,   142,  
      143,   144,   145,   146,   147,   148,   149,   150,   151,   152,  
      153,   154,   155,   156,   157,   158,   159,   160,   161,   162,  
      163,   164,   165,   166,   167,   168,   169,   170,   171,   172,  
      173,   174,   175,   176,   177,   178,   179,   180,   181,   182,  
      183,   184,   185,   186,   187,   188,   189,   190,   191,   192,  
      193,   194,   195,   196,   197,   198,   199,   200,   201,   202,  
      203,   204,   205,   206,   207,   208,   209,   210,   211,   212,  
      213,   214,   215,   216,   217,   218,   219,   220,   221,   222,  
      223,   224,   225,   226,   227,   228,   229,   230,   231,   232,  
      233,   234,   235,   236,   237,   238,   239,   240,   241,   242,  
      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,  
      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,  
      263,   264,   265,   266,   267,   268,   269,     0,     0,   270,  
      328,    52,    53,    54,   914,   915,    57,    58,    59,    60,  
       61,    62,    63,    64,    65,    66,    67,    68,    69,    70,  
       71,    72,    73,    74,    75,    76,    77,    78,    79,    80,  
       81,    82,    83,    84,    85,    86,    87,    88,    89,    90,  
       91,    92,    93,    94,    95,    96,    97,    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,   123,   124,   125,   126,   127,   128,   129,   130,  
      131,   132,   133,   134,   135,   136,   137,   138,   139,   140,  
      141,   142,   143,   144,   145,   146,   147,   148,   149,   150,  
      151,   152,   153,   154,   155,   156,   157,   158,   159,   160,  
      161,   162,   163,   164,   165,   166,   167,   168,   169,   170,  
      171,   172,   173,   174,   175,   176,   177,   178,   179,   180,  
      181,   182,   183,   184,   185,   186,   187,   188,   189,   190,  
      191,   192,   193,   194,   195,   196,   197,   198,   199,   200,  
      201,   202,   203,   204,   205,   206,   207,   208,   209,   210,  
      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,  
      221,   222,   223,   224,   225,   226,   227,   228,   229,   230,  
      231,   232,   233,   234,   235,   236,   237,   238,   239,   240,  
      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,  
      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,  
      261,   262,   263,   264,   265,   266,   267,   268,   269,   539,  
      540,   328,    52,    53,    54,    55,    56,   329,   330,   331,  
      332,   333,   334,   335,   336,   337,   338,    67,    68,    69,  
1717        70,    71,    72,    73,    74,    75,    76,    77,    78,    79,        70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1718        80,    81,    82,    83,    84,    85,    86,    87,    88,    89,        80,    81,    82,    83,    84,    85,    86,    87,    88,    89,
1719        90,    91,    92,    93,    94,    95,    96,    97,    98,    99,        90,    91,    92,    93,    94,    95,    96,    97,    98,    99,
# Line 1565  static const yytype_int16 yytable[] = Line 1734  static const yytype_int16 yytable[] =
1734       240,   241,   242,   243,   244,   245,   246,   247,   248,   249,       240,   241,   242,   243,   244,   245,   246,   247,   248,   249,
1735       250,   251,   252,   253,   254,   255,   256,   257,   258,   259,       250,   251,   252,   253,   254,   255,   256,   257,   258,   259,
1736       260,   261,   262,   263,   264,   265,   266,   267,   268,   269,       260,   261,   262,   263,   264,   265,   266,   267,   268,   269,
1737       328,    52,    53,    54,    55,    56,    57,    58,    59,    60,       328,   971,    53,    54,    55,    56,   329,   330,   331,   332,
1738        61,    62,    63,    64,    65,    66,    67,    68,    69,    70,       333,   334,   335,   336,   337,   338,    67,    68,    69,    70,
1739        71,    72,    73,    74,    75,    76,    77,    78,    79,    80,        71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1740        81,    82,    83,    84,    85,    86,    87,    88,    89,    90,        81,    82,    83,    84,    85,    86,    87,    88,    89,    90,
1741        91,    92,    93,    94,    95,    96,    97,    98,    99,   100,        91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
# Line 1587  static const yytype_int16 yytable[] = Line 1756  static const yytype_int16 yytable[] =
1756       241,   242,   243,   244,   245,   246,   247,   248,   249,   250,       241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
1757       251,   252,   253,   254,   255,   256,   257,   258,   259,   260,       251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
1758       261,   262,   263,   264,   265,   266,   267,   268,   269,   328,       261,   262,   263,   264,   265,   266,   267,   268,   269,   328,
1759       848,    53,    54,    55,    56,   329,   330,   331,   332,   333,       998,    53,    54,    55,    56,   329,   330,   331,   332,   333,
1760       334,   335,   336,   337,   338,    67,    68,    69,    70,    71,       334,   335,   336,   337,   338,    67,    68,    69,    70,    71,
1761        72,    73,    74,    75,    76,    77,    78,    79,    80,    81,        72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1762        82,    83,    84,    85,    86,    87,    88,    89,    90,    91,        82,    83,    84,    85,    86,    87,    88,    89,    90,    91,
# Line 1608  static const yytype_int16 yytable[] = Line 1777  static const yytype_int16 yytable[] =
1777       232,   233,   234,   235,   236,   237,   238,   239,   240,   241,       232,   233,   234,   235,   236,   237,   238,   239,   240,   241,
1778       242,   243,   244,   245,   246,   247,   248,   249,   250,   251,       242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
1779       252,   253,   254,   255,   256,   257,   258,   259,   260,   261,       252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
1780       262,   263,   264,   265,   266,   267,   268,   269,   328,   875,       262,   263,   264,   265,   266,   267,   268,   269,   328,  1000,
1781        53,    54,    55,    56,   329,   330,   331,   332,   333,   334,        53,    54,    55,    56,   329,   330,   331,   332,   333,   334,
1782       335,   336,   337,   338,    67,    68,    69,    70,    71,    72,       335,   336,   337,   338,    67,    68,    69,    70,    71,    72,
1783        73,    74,    75,    76,    77,    78,    79,    80,    81,    82,        73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
# Line 1630  static const yytype_int16 yytable[] = Line 1799  static const yytype_int16 yytable[] =
1799       233,   234,   235,   236,   237,   238,   239,   240,   241,   242,       233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
1800       243,   244,   245,   246,   247,   248,   249,   250,   251,   252,       243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
1801       253,   254,   255,   256,   257,   258,   259,   260,   261,   262,       253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
1802       263,   264,   265,   266,   267,   268,   269,   328,   877,    53,       263,   264,   265,   266,   267,   268,   269,   328,  1140,    53,
1803        54,    55,    56,   329,   330,   331,   332,   333,   334,   335,        54,    55,    56,   329,   330,   331,   332,   333,   334,   335,
1804       336,   337,   338,    67,    68,    69,    70,    71,    72,    73,       336,   337,   338,    67,    68,    69,    70,    71,    72,    73,
1805        74,    75,    76,    77,    78,    79,    80,    81,    82,    83,        74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
# Line 1652  static const yytype_int16 yytable[] = Line 1821  static const yytype_int16 yytable[] =
1821       234,   235,   236,   237,   238,   239,   240,   241,   242,   243,       234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
1822       244,   245,   246,   247,   248,   249,   250,   251,   252,   253,       244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
1823       254,   255,   256,   257,   258,   259,   260,   261,   262,   263,       254,   255,   256,   257,   258,   259,   260,   261,   262,   263,
1824       264,   265,   266,   267,   268,   269,   328,   994,    53,    54,       264,   265,   266,   267,   268,   269,   328,  1155,    53,    54,
1825        55,    56,   329,   330,   331,   332,   333,   334,   335,   336,        55,    56,   329,   330,   331,   332,   333,   334,   335,   336,
1826       337,   338,    67,    68,    69,    70,    71,    72,    73,    74,       337,   338,    67,    68,    69,    70,    71,    72,    73,    74,
1827        75,    76,    77,    78,    79,    80,    81,    82,    83,    84,        75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
# Line 1674  static const yytype_int16 yytable[] = Line 1843  static const yytype_int16 yytable[] =
1843       235,   236,   237,   238,   239,   240,   241,   242,   243,   244,       235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
1844       245,   246,   247,   248,   249,   250,   251,   252,   253,   254,       245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
1845       255,   256,   257,   258,   259,   260,   261,   262,   263,   264,       255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
1846       265,   266,   267,   268,   269,   328,  1014,    53,    54,    55,       265,   266,   267,   268,   269,   328,  1156,    53,    54,    55,
1847        56,   329,   330,   331,   332,   333,   334,   335,   336,   337,        56,   329,   330,   331,   332,   333,   334,   335,   336,   337,
1848       338,    67,    68,    69,    70,    71,    72,    73,    74,    75,       338,    67,    68,    69,    70,    71,    72,    73,    74,    75,
1849        76,    77,    78,    79,    80,    81,    82,    83,    84,    85,        76,    77,    78,    79,    80,    81,    82,    83,    84,    85,
# Line 1696  static const yytype_int16 yytable[] = Line 1865  static const yytype_int16 yytable[] =
1865       236,   237,   238,   239,   240,   241,   242,   243,   244,   245,       236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
1866       246,   247,   248,   249,   250,   251,   252,   253,   254,   255,       246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
1867       256,   257,   258,   259,   260,   261,   262,   263,   264,   265,       256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
1868       266,   267,   268,   269,   328,  1015,    53,    54,    55,    56,       266,   267,   268,   269
      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,  
       67,    68,    69,    70,    71,    72,    73,    74,    75,    76,  
       77,    78,    79,    80,    81,    82,    83,    84,    85,    86,  
       87,    88,    89,    90,    91,    92,    93,    94,    95,    96,  
       97,    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,   123,   124,   125,   126,  
      127,   128,   129,   130,   131,   132,   133,   134,   135,   136,  
      137,   138,   139,   140,   141,   142,   143,   144,   145,   146,  
      147,   148,   149,   150,   151,   152,   153,   154,   155,   156,  
      157,   158,   159,   160,   161,   162,   163,   164,   165,   166,  
      167,   168,   169,   170,   171,   172,   173,   174,   175,   176,  
      177,   178,   179,   180,   181,   182,   183,   184,   185,   186,  
      187,   188,   189,   190,   191,   192,   193,   194,   195,   196,  
      197,   198,   199,   200,   201,   202,   203,   204,   205,   206,  
      207,   208,   209,   210,   211,   212,   213,   214,   215,   216,  
      217,   218,   219,   220,   221,   222,   223,   224,   225,   226,  
      227,   228,   229,   230,   231,   232,   233,   234,   235,   236,  
      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,  
      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,  
      257,   258,   259,   260,   261,   262,   263,   264,   265,   266,  
      267,   268,   269  
1869  };  };
1870    
1871  static const yytype_int16 yycheck[] =  static const yytype_int16 yycheck[] =
1872  {  {
1873        15,    15,    17,    18,    19,    20,    21,    22,    23,    24,        15,   783,    17,    18,    19,    20,    21,    22,    23,    24,
1874        25,    26,    27,    28,    29,    30,    31,   691,   698,    58,        25,    26,    27,    28,    29,    30,    31,    15,   502,   565,
1875        59,    60,    61,    62,    63,    64,    65,    66,   465,   855,       749,   532,   995,   534,   979,   281,   282,   281,   282,   286,
1876       670,   277,   872,   281,   282,   527,   281,   282,     5,   285,       288,   774,     5,   288,  1151,   288,    32,   548,   871,    33,
1877       286,   490,   491,    32,   493,    58,    59,    60,    61,    62,        34,    22,  1159,   554,    58,    59,    60,    61,    62,    63,
1878        63,    64,    65,    66,   503,    33,    34,   288,   288,   508,        64,    65,    66,   540,  1045,   277,   543,   998,     1,  1000,
1879       686,   288,   875,   843,   877,     1,    37,     3,   505,    37,         3,    37,   549,   285,   286,    37,   553,   551,   961,    22,
1880        20,   277,   484,   866,    22,    21,    22,    27,   871,   285,       523,    23,    21,    22,    22,   989,    19,    23,    21,    22,
1881       286,   493,    23,    19,   290,    21,    22,    37,    34,    25,       994,   534,    25,    23,    37,    34,    34,    30,    31,    38,
1882        40,   503,    38,    23,    30,    31,   508,    27,    39,    35,        36,   578,    35,    36,    37,   548,    39,    23,    19,    39,
1883        36,    37,    19,    39,     9,    10,    11,    12,    13,    14,        21,   554,    23,    24,    21,    22,    19,    20,    21,    20,
1884        15,    16,    17,    18,    31,    23,    23,    22,    89,    19,        31,    24,    25,    89,  1007,  1008,  1009,    89,    31,    40,
1885        37,    89,    20,    40,    20,    21,    23,    32,    19,    36,        19,    38,   277,    34,    37,    38,   959,    40,    19,   640,
1886        21,    31,    23,    21,    22,    31,    34,    27,    21,    36,       285,   286,    31,    24,    19,   290,    34,  1254,    37,    37,
1887        31,    37,    38,    23,    40,    19,    37,    38,    31,    39,        31,    40,  1133,     9,    10,    11,    12,    13,    14,    15,
1888        38,   474,   475,   476,   477,   478,   479,   480,   481,   482,        16,    17,    18,    20,    23,    23,    22,    19,    21,    21,
1889       483,    22,   485,   486,   487,   488,    19,    30,    21,    34,        27,    21,    24,    19,    27,    39,    32,    36,    31,    31,
1890        23,    39,    37,    34,   666,    38,   668,   669,    31,     6,        37,    31,     0,    40,    30,    31,    58,    59,    60,    61,
1891        22,   994,     9,    10,    11,    12,    13,    14,    15,    16,        62,    63,    64,    65,    66,    19,    27,    21,  1161,    23,
1892        17,    18,    34,    19,    19,    21,    34,    30,    23,    37,        24,   225,   226,    22,    30,    30,    19,    31,    39,  1140,
1893        32,  1014,  1015,    36,    27,    31,    31,   699,   988,    31,        23,    36,    38,    37,    38,    34,    40,    23,    31,    34,
1894        33,   280,    23,   839,   283,    37,   708,   709,   710,   711,        32,    27,    37,     6,  1155,  1156,     9,    10,    11,    12,
1895       712,   713,   714,   715,   716,   717,   718,   719,     0,    31,        13,    14,    15,    16,    17,    18,   222,   223,   222,   223,
1896       679,    21,   681,   222,   223,    37,    34,    27,    34,    37,       513,   514,   515,   516,   517,   518,   519,   520,   521,   522,
1897       224,    37,   473,   473,   222,   223,   473,     9,    10,    11,       224,   524,   525,   526,   527,    34,   529,   758,    37,   760,
1898        12,    13,    14,    15,    16,    17,    18,   224,   225,   226,        27,   224,   225,   226,   512,    22,    33,   512,   745,   512,
1899        23,   698,   225,   226,   512,    22,   512,   512,    39,    40,       747,   748,     7,     8,     9,    10,    11,    12,    13,    14,
1900        39,    40,    21,    22,   289,    23,   725,   222,   223,   318,        15,    16,    17,    18,   289,    34,   763,    34,    37,    37,
1901        38,   320,   321,   322,   323,   324,   325,   326,   327,   225,        37,     6,   225,   226,     9,    10,    11,    12,    13,    14,
1902       226,     6,    21,    22,     9,    10,    11,    12,    13,    14,        15,    16,    17,    18,    31,    39,    40,   784,   809,   783,
1903        15,    16,    17,    18,   873,   874,   539,   540,   287,   288,        37,   558,   558,    23,   558,   792,   793,   794,   795,   796,
1904       984,    37,    37,   987,   278,   279,     6,    19,  1144,     9,       797,   798,   799,   800,   801,   802,   803,    31,    21,    21,
1905        10,    11,    12,    13,    14,    15,    16,    17,    18,   344,        39,    40,    23,    37,    27,    27,   813,   814,   815,   344,
1906        34,    27,    20,   225,    31,    21,    31,   352,    19,    19,       280,    21,    21,   283,    21,   558,   558,    27,    27,   354,
1907        38,   833,    33,   358,    38,   360,   361,   362,   363,   364,        27,   564,   222,   223,    38,   360,    37,   362,   363,   364,
1908       990,   366,    22,   368,   369,   370,   371,   372,    23,   374,       365,   366,    19,   368,    34,   370,   371,   372,   373,   374,
1909       375,   376,   854,  1203,   379,    38,   381,    23,    37,   384,        20,   376,   377,   378,   379,   380,    27,   281,   282,   384,
1910        19,    39,    26,   388,   389,    27,   391,   392,     9,    10,       225,   386,   286,    31,   389,    21,    22,    21,    22,   394,
1911        11,    12,    13,    14,    15,    16,    17,    18,   403,    26,       395,   396,    31,   398,   399,   400,  1129,   996,   997,  1132,
1912        32,    27,   407,   408,    23,   410,   411,  1077,    33,    27,       590,   591,   287,   288,   278,   279,    21,   412,    19,   414,
1913        27,   416,   417,   418,   419,   420,   421,   422,    27,    39,        19,  1356,   417,   418,    38,   420,   421,    38,    22,    38,
1914        26,    32,    27,    39,    21,    27,    39,    26,   867,     7,        33,   426,   427,   428,   429,   430,   431,   432,   433,   434,
1915         8,     9,    10,    11,    12,    13,    14,    15,    16,    17,         6,    23,   271,     9,    10,    11,    12,    13,    14,    15,
1916        18,   446,    27,    38,   449,    33,    33,    36,    38,    40,        16,    17,    18,    23,    37,    19,   318,    26,   320,   321,
1917        36,    21,    21,   880,    38,    34,    15,     9,    10,    11,       322,   323,   324,   325,   326,   327,    39,    27,    26,   995,
1918        12,    13,    14,    15,    16,    17,    18,    19,    22,    20,        32,    42,  1425,    27,    23,    27,    33,    33,    39,    27,
1919        19,    19,    22,    19,    36,    38,    37,    22,    25,    22,      1189,    27,    26,    42,    27,    32,   953,    42,   483,    39,
1920       484,    22,    22,    27,    22,    22,   490,   491,    19,   493,        21,   486,    27,    26,    39,    27,    30,    39,    38,   990,
1921        22,    26,    22,    22,   498,   499,    32,    24,    19,   503,        36,    42,    40,    33,    33,    21,    21,    20,   972,    36,
1922        23,    27,    26,    37,   508,    38,    23,    32,    36,   513,        38,   978,    38,    34,    19,    22,    22,  1279,     9,    10,
1923       514,   515,   516,    33,   518,    27,    38,    36,    27,    37,        11,    12,    13,    14,    15,    16,    17,    18,    15,     9,
1924        27,    32,  1004,    27,    27,    40,    19,    32,    30,    27,        10,    11,    12,    13,    14,    15,    16,    17,    18,  1003,
1925        27,    27,    27,    27,   539,   540,   565,   566,   567,   568,        19,    19,    25,    36,    38,   523,    22,    32,    30,    22,
1926       569,   570,   571,   572,   573,    32,   551,   552,   553,   554,        89,    22,    27,    22,   532,    22,   534,    22,    19,    22,
1927       555,   556,   557,   558,   559,   560,   561,   562,   563,   564,        37,    33,    22,   541,   542,    89,    89,    26,    22,    22,
1928        27,    38,   565,   566,   567,   568,   569,   570,   571,   572,       548,    19,    24,    37,    32,    89,   554,    27,    23,    36,
1929       573,    33,    27,   578,   579,   580,    33,    27,   583,   584,        23,   559,   560,   561,   562,    36,    33,   565,   566,    38,
1930        39,    33,    33,    19,    24,   590,   591,    32,   271,    21,        32,    27,    38,    27,    27,   590,   591,     9,    10,    11,
1931        23,    19,    21,    27,    43,    21,    33,   602,    89,   604,        12,    13,    14,    15,    16,    17,    18,    19,    32,   604,
1932        89,   606,    32,    30,    23,    89,    24,    32,    32,    30,       605,   606,   607,   608,   609,   610,   611,   612,   613,   614,
1933        30,    89,    22,    89,    89,   620,   621,   622,   623,   624,       615,   616,   617,    27,   618,   619,   620,   621,   622,   623,
1934       625,   626,   627,   628,   629,   630,   631,   632,   633,   634,       624,   625,   626,    27,    37,  1161,   631,   632,   633,   634,
1935       635,    33,   637,    33,    32,    36,    32,    22,    33,    38,        40,    19,    39,    32,    30,    27,   641,   642,    33,    37,
1936        30,    89,    30,    23,    31,    23,    32,    19,    30,    23,        27,    27,    27,   482,   649,   650,   651,    27,    32,   654,
1937      1077,   656,   657,    20,    23,    36,    27,    19,    89,    23,        27,    27,   640,    27,    37,    33,    38,    19,    39,   664,
1938        23,    27,    23,    36,    43,    33,    89,   671,    27,    27,        33,   666,    23,   668,    39,    32,    24,    27,    27,  1146,
1939       674,   675,   676,   677,    89,   679,    27,   681,    89,   683,        20,    37,    27,    21,    23,   680,   681,   682,   683,   684,
1940        23,   685,   686,    27,    39,    89,    89,    27,    27,    27,       685,   686,   687,   688,   689,   690,   691,   692,   693,   694,
1941        23,    33,    39,   697,    23,    36,    23,    31,    30,    23,       695,    19,   697,   565,    21,    27,   701,   702,   703,    43,
1942        89,    27,    30,    33,    20,    89,    89,    32,    30,    32,       704,   705,    21,    32,    24,    30,    23,    33,    32,    32,
1943        23,    21,    89,    32,    32,    36,    33,   721,    32,   723,        89,    23,    30,    23,    36,    31,    30,    89,    89,    32,
1944        40,   725,    33,    38,    30,    32,    31,    31,    40,    32,        89,    89,    33,    23,    33,    32,    89,    33,   733,   734,
1945       289,    33,    33,    31,    30,    30,    89,    20,    37,    39,        22,    22,    89,    38,    30,    22,    31,   576,    40,    22,
1946        30,    33,    21,    37,    37,   750,    37,    34,     5,    23,        33,    23,    32,    23,    19,    23,   618,   619,   620,   621,
1947        39,    39,   757,    33,   759,   760,   761,    39,   763,   764,       622,   623,   624,   625,   626,    89,    19,    30,    23,    20,
1948        27,    23,   445,   768,    23,   770,    24,   772,    33,    19,        36,   766,   750,    23,    19,   753,   754,   755,   756,    27,
1949        21,    23,    33,    33,    38,    38,    23,    23,    27,   784,       758,    23,   760,    23,   762,    32,    27,    36,    23,    33,
1950        89,   786,    37,    39,    38,    38,    24,    32,    22,    33,       768,    89,    23,    27,    27,    89,    89,   775,   776,    27,
1951       795,   796,   797,   798,   799,   800,   801,   802,   803,   804,        43,    89,   289,    32,   782,    89,    23,    32,    27,    39,
1952       805,   806,    38,   808,    89,   810,    38,   812,    39,    38,        89,    27,    27,    27,    23,  1279,    23,    27,    23,    27,
1953        32,    39,    38,    38,    32,    39,    27,    32,    27,   848,       649,   650,    33,    36,   818,    89,    23,   805,    32,   807,
1954        33,    89,    39,    21,    36,    39,    34,    32,    38,    36,        30,   809,    27,    31,    30,    89,    23,    89,    27,    30,
1955        36,   835,   836,   837,  1261,   839,   840,    36,   842,   843,       669,    33,   704,   705,    32,    20,   708,    30,    22,    33,
1956        34,    38,   525,   872,   848,    34,   875,    38,   877,    36,        32,    32,    38,    31,   849,    40,    36,    22,    21,    32,
1957        38,   855,    19,    34,    38,    19,    30,    23,    33,   863,        32,   856,    33,   858,   859,   860,    30,   862,   863,    22,
1958       864,    32,   866,   867,   868,   869,    23,   871,   872,   873,        32,    31,   867,   868,    33,    32,    22,   872,    33,    33,
1959       874,   875,    21,   877,    39,    23,    32,    39,    39,    39,        30,    33,    30,   712,    40,    32,   881,    89,    89,    30,
1960        38,    24,    33,    27,    39,   914,   915,   446,    89,    39,        89,    20,    37,   871,    30,   890,    89,   892,    23,  1425,
1961        30,   920,    39,    89,   899,   900,  1323,   902,   903,   904,        39,    33,    37,    37,    21,   900,   901,   902,   903,   904,
1962        39,    39,   907,    89,    39,    38,    89,   590,   591,    39,       905,   906,   907,   908,   909,   910,   911,    37,   913,    89,
1963        39,   914,   915,    30,    39,    23,    32,    38,    31,    38,       915,    33,   917,    37,    39,    34,   921,   922,   923,     5,
1964        32,    39,    31,    19,   607,   930,    89,   956,   957,    31,       924,   925,    39,    23,    39,    27,    23,    33,    89,    21,
1965        31,    38,    22,   938,    38,    22,    31,   496,   497,    38,        89,    39,    27,    24,    19,    89,    89,    21,    39,    33,
1966        34,    38,    30,    32,    89,    23,    39,   506,    33,    22,        33,    23,    38,    23,   816,   817,   818,    23,    38,    38,
1967       955,    25,    38,   956,   957,    89,   639,    22,    33,   518,        27,    38,    22,    32,    37,    89,    24,    38,    32,   964,
1968        23,    21,    23,    25,    23,   994,   995,   996,   997,   998,        38,    27,    33,    23,    39,    38,    38,   955,   956,   957,
1969        23,    23,    23,    23,    89,    89,    33,    21,    89,    89,        39,   959,   960,   961,    38,    32,    39,   965,    33,    33,
1970       539,   540,    37,    39,   988,  1014,  1015,    32,    27,    38,        38,    32,    38,   971,    32,    27,   483,    39,    33,    39,
1971       994,    38,    27,   997,    27,   998,    27,    40,    36,    33,        36,   979,    21,    34,    38,    32,    36,    36,   986,   987,
1972        32,    23,    32,    32,    22,    22,  1010,    33,    32,  1013,        19,   989,   990,   991,   992,    36,   994,   995,   996,   997,
1973      1014,  1015,    40,  1042,  1043,    40,  1045,    40,    38,    38,       998,    34,  1000,    38,    34,    36,  1490,   856,   857,  1007,
1974        36,    33,    32,    89,    27,    40,    39,    38,    23,    38,      1008,  1009,    38,   862,    38,    34,    38,   866,    39,    19,
1975        38,    38,  1037,    27,    23,    27,    38,    23,    26,  1042,      1035,  1036,    39,  1038,  1039,  1040,    32,    34,    30,    33,
1976      1043,    38,    27,    89,    26,    43,    33,    89,    39,    19,       879,   538,   539,    32,    24,    33,    32,    38,    23,  1053,
1977        40,    27,  1081,  1082,  1059,    23,    27,    21,    23,    32,      1054,    36,   924,   925,   926,   552,    39,  1045,    21,    32,
1978        37,    40,    89,    21,    21,    40,    19,    21,    89,    19,        39,    39,    89,    39,  1069,    23,    38,    89,    39,   566,
1979        36,    40,    34,    32,   757,   758,    31,    40,    27,    23,        30,  1076,    39,   912,    39,   914,    89,    39,    39,    89,
1980       763,    32,    34,    23,   767,    33,    27,    32,    31,    36,        39,    38,  1556,    39,    39,    38,    38,    30,  1093,    39,
1981      1094,    37,    27,    23,   777,    31,    38,   656,   657,    32,        39,    24,    39,   590,   591,    24,    33,    39,    33,   971,
1982        27,    23,    26,    32,    43,    23,    38,  1112,    19,    32,      1105,  1106,  1107,    23,    32,    89,    38,    31,    38,    32,
1983        38,   670,    21,   672,   673,    23,    19,    34,    39,   678,        27,    19,    39,    31,    36,    89,    31,    31,    22,    38,
1984        19,    37,    89,   682,   807,    32,   809,    23,    89,    21,        22,    31,    38,   995,    30,    38,   998,    34,  1000,    38,
1985        21,   690,   691,    19,    32,    19,    21,    34,    32,    34,        22,  1136,    32,    34,    33,    38,    32,    31,  1010,  1011,
1986      1144,    23,    23,    36,  1010,    23,    34,    23,    38,    36,        33,    39,    23,    38,    89,  1133,    22,    25,    89,    22,
1987        39,    89,    31,    36,    34,    89,    23,    34,    23,    34,        33,    23,  1140,  1141,    21,    25,    33,    23,    23,    23,
1988        32,   720,    23,   722,    23,    34,    30,    37,    19,  1174,        23,    23,    23,  1151,    89,    39,  1154,  1155,  1156,    38,
1989        89,    19,    38,    19,  1203,    37,    30,    22,    19,    37,        38,  1159,  1160,  1161,    33,    23,    23,    89,    89,    39,
1990        32,    30,    39,    89,    89,    89,    36,    34,    31,    42,        38,  1053,  1054,    37,    89,    21,    32,    27,    27,    27,
1991        23,    27,    34,    23,    19,    34,    36,    19,    22,  1203,        40,    36,    89,    27,    23,    32,  1035,    22,    33,    32,
1992        38,    19,    23,    31,    19,    37,    19,    30,    19,    36,      1039,    32,  1207,    22,    32,    22,    30,  1212,    40,    36,
1993        36,    31,    19,    22,    30,    89,   899,    27,    23,    38,        40,    26,    32,  1052,    40,    38,    38,    33,  1057,    40,
1994       903,    38,    36,    31,    36,    23,    32,  1232,    23,    19,        38,    33,    32,    27,    23,    38,    40,    38,    23,    27,
1995       913,    23,    19,    36,    31,   918,    40,    38,    22,    32,        39,    38,  1237,    89,    27,    38,   733,   734,    38,    26,
1996        36,    23,    31,    31,    38,    23,    27,    23,    23,    23,      1079,    23,    27,    26,    38,    89,    43,    33,    89,    30,
1997        23,  1203,    89,    38,    40,    38,    36,    36,   941,    26,        23,    27,   749,  1092,   751,   752,    19,    27,    38,  1098,
1998        23,    38,    23,    33,    36,    23,    23,    38,    37,    37,       757,  1100,    39,  1251,   761,    40,  1254,    23,  1140,  1141,
1999        36,   954,    36,    22,    36,   834,    36,  1013,  1323,   838,        27,    21,    23,    32,    40,    37,   773,   774,    21,    40,
2000      1094,   964,   880,   966,   997,  1290,   286,   283,   847,   288,        21,    89,    19,  1155,  1156,    40,    21,    89,    89,  1161,
2001       283,    50,   512,   512,    -1,    -1,    -1,    -1,    -1,   283,        19,    36,    34,    21,    40,    21,    23,    89,    32,    31,
2002        -1,    -1,    -1,   284,    -1,   288,   865,    -1,   286,   283,        40,    32,    27,    33,    37,    23,    23,   804,    32,   806,
2003        -1,   870,    -1,    -1,   873,   874,   288,   876,    -1,   878,        31,    27,    34,    36,  1319,    27,    23,    31,    38,    32,
2004        -1,    -1,    -1,   283,    -1,    -1,    -1,   283,    -1,    -1,        23,    27,    26,    32,    43,    23,    36,    38,    27,    23,
2005        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,        38,    19,    32,    23,    21,    89,    37,    39,    34,    19,
2006        -1,    -1,    -1,    -1,    -1,    -1,   283,    -1,    -1,  1032,        19,    89,    19,    21,  1183,  1184,    21,    32,    21,    19,
2007      1033,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,        89,    34,    21,    89,    19,    23,    32,    23,    39,    33,
2008        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,        32,  1154,  1160,    34,    23,  1251,    23,  1556,  1356,    36,
2009          23,    34,    34,    31,    38,    36,    32,    23,    23,    34,
2010          34,    32,    23,    23,    23,    34,  1391,    39,    24,    37,
2011          34,    38,    30,    19,    89,    19,    19,    89,    30,    19,
2012          37,    36,    32,    89,    33,    30,    33,    89,    39,    42,
2013          32,    32,    22,    24,    31,    34,    23,    19,    36,    34,
2014          23,    37,    36,    22,    19,    34,    39,    23,    19,    89,
2015          38,    19,    38,    27,    19,    33,    33,  1425,    30,    89,
2016          33,  1141,    32,    32,   551,    32,    89,    89,    31,    24,
2017          36,    31,    36,    31,  1459,    36,    38,   954,    37,    24,
2018          19,   958,    39,    39,    38,    36,    22,    27,    23,    23,
2019          19,    38,    19,   970,    32,    23,    33,    19,    40,    32,
2020          31,    33,    23,    27,    23,    23,    36,    32,    89,    23,
2021          22,   988,    38,    36,    31,    31,   993,    23,    38,   996,
2022         997,    32,   999,    38,  1001,    38,    23,    23,    38,    36,
2023          38,    40,    36,    38,    36,    38,    23,    23,    37,  1524,
2024          23,    26,    23,    36,    36,    33,    36,    36,    30,    22,
2025          50,  1003,   284,    37,   283,   288,   283,    -1,    -1,   283,
2026         558,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2027         288,    -1,    -1,  1425,    -1,    -1,    -1,    -1,    -1,    -1,
2028        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2029          -1,    -1,    -1,   288,    -1,    -1,    -1,    -1,    -1,    -1,
2030          -1,    -1,    -1,   288,    -1,    -1,    -1,    -1,    -1,    -1,
2031          -1,   288,    -1,    -1,    -1,   288,    -1,   288,    -1,   288,
2032          -1,    -1,    -1,    -1,   288,    -1,    -1,    -1,    -1,    -1,
2033        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2034        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2035          -1,    -1,  1129,  1130,  1131,  1132,    -1,    -1,    -1,    -1,
2036        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2037        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,        -1,    -1,    -1,    -1,   288,    -1,    -1,    -1,    -1,    -1,
2038        -1,    -1,    -1,    -1,    -1,   984,   985,   986,   987,    -1,       288,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2039        -1,   990,     3,     4,     5,     6,     7,     8,     9,    10,        -1,    -1,    -1,    -1,    -1,    -1,   288,    -1,    -1,   283,
2040          -1,    -1,    -1,   288,    -1,    -1,   286,    -1,    -1,    -1,
2041          -1,    -1,  1189,     3,     4,     5,     6,     7,     8,     9,
2042          10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
2043          20,    21,    22,    23,    24,    25,    26,    27,    28,    29,
2044          30,    31,    32,    33,    34,    35,    36,    37,    38,    39,
2045          40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
2046          50,    51,    52,    53,    54,    55,    56,    57,    58,    59,
2047          60,    61,    62,    63,    64,    65,    66,    67,    68,    69,
2048          70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
2049          80,    81,    82,    83,    84,    85,    86,    87,    88,    89,
2050          90,    91,    92,    93,    94,    95,    96,    97,    98,    99,
2051         100,   101,   102,   103,   104,   105,   106,   107,   108,   109,
2052         110,   111,   112,   113,   114,   115,   116,   117,   118,   119,
2053         120,   121,   122,   123,   124,   125,   126,   127,   128,   129,
2054         130,   131,   132,   133,   134,   135,   136,   137,   138,   139,
2055         140,   141,   142,   143,   144,   145,   146,   147,   148,   149,
2056         150,   151,   152,   153,   154,   155,   156,   157,   158,   159,
2057         160,   161,   162,   163,   164,   165,   166,   167,   168,   169,
2058         170,   171,   172,   173,   174,   175,   176,   177,   178,   179,
2059         180,   181,   182,   183,   184,   185,   186,   187,   188,   189,
2060         190,   191,   192,   193,   194,   195,   196,   197,   198,   199,
2061         200,   201,   202,   203,   204,   205,   206,   207,   208,   209,
2062         210,   211,   212,   213,   214,   215,   216,   217,   218,   219,
2063         220,   221,   222,   283,   224,     3,     4,     5,     6,     7,
2064           8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
2065          18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
2066          28,    29,    30,    31,    32,    33,    34,    35,    36,    37,
2067          38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
2068          48,    49,    50,    51,    52,    53,    54,    55,    56,    57,
2069          58,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2070          68,    69,    70,    71,    72,    73,    74,    75,    76,    77,
2071          78,    79,    80,    81,    82,    83,    84,    85,    86,    87,
2072          88,    89,    90,    91,    92,    93,    94,    95,    96,    97,
2073          98,    99,   100,   101,   102,   103,   104,   105,   106,   107,
2074         108,   109,   110,   111,   112,   113,   114,   115,   116,   117,
2075         118,   119,   120,   121,   122,   123,   124,   125,   126,   127,
2076         128,   129,   130,   131,   132,   133,   134,   135,   136,   137,
2077         138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
2078         148,   149,   150,   151,   152,   153,   154,   155,   156,   157,
2079         158,   159,   160,   161,   162,   163,   164,   165,   166,   167,
2080         168,   169,   170,   171,   172,   173,   174,   175,   176,   177,
2081         178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
2082         188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
2083         198,   199,   200,   201,   202,   203,   204,   205,   206,   207,
2084         208,   209,   210,   211,   212,   213,   214,   215,   216,   217,
2085         218,   219,   220,   221,   286,   223,   224,     3,     4,     5,
2086           6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
2087          16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
2088          26,    27,    28,    29,    30,    31,    32,    33,    34,    35,
2089          36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
2090          46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
2091          56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
2092          66,    67,    68,    69,    70,    71,    72,    73,    74,    75,
2093          76,    77,    78,    79,    80,    81,    82,    83,    84,    85,
2094          86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
2095          96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
2096         106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
2097         116,   117,   118,   119,   120,   121,   122,   123,   124,   125,
2098         126,   127,   128,   129,   130,   131,   132,   133,   134,   135,
2099         136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
2100         146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2101         156,   157,   158,   159,   160,   161,   162,   163,   164,   165,
2102         166,   167,   168,   169,   170,   171,   172,   173,   174,   175,
2103         176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
2104         186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
2105         196,   197,   198,   199,   200,   201,   202,   203,   204,   205,
2106         206,   207,   208,   209,   210,   211,   212,   213,   214,   215,
2107         216,   217,   218,   219,   220,   221,   283,   283,   224,     3,
2108           4,     5,     6,     7,     8,     9,    10,    11,    12,    13,
2109          14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
2110          24,    25,    26,    27,    28,    29,    30,    31,    32,    33,
2111          34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
2112          44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
2113          54,    55,    56,    57,    58,    59,    60,    61,    62,    63,
2114          64,    65,    66,    67,    68,    69,    70,    71,    72,    73,
2115          74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
2116          84,    85,    86,    87,    88,    89,    90,    91,    92,    93,
2117          94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
2118         104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
2119         114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
2120         124,   125,   126,   127,   128,   129,   130,   131,   132,   133,
2121         134,   135,   136,   137,   138,   139,   140,   141,   142,   143,
2122         144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2123         154,   155,   156,   157,   158,   159,   160,   161,   162,   163,
2124         164,   165,   166,   167,   168,   169,   170,   171,   172,   173,
2125         174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
2126         184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
2127         194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
2128         204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
2129         214,   215,   216,   217,   218,   219,   220,   221,   283,   288,
2130         224,     3,     4,     5,     6,     7,     8,     9,    10,    11,
2131          12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
2132          22,    23,    24,    25,    26,    27,    28,    29,    30,    31,
2133          32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
2134          42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
2135          52,    53,    54,    55,    56,    57,    58,    59,    60,    61,
2136          62,    63,    64,    65,    66,    67,    68,    69,    70,    71,
2137          72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
2138          82,    83,    84,    85,    86,    87,    88,    89,    90,    91,
2139          92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
2140         102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
2141         112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
2142         122,   123,   124,   125,   126,   127,   128,   129,   130,   131,
2143         132,   133,   134,   135,   136,   137,   138,   139,   140,   141,
2144         142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
2145         152,   153,   154,   155,   156,   157,   158,   159,   160,   161,
2146         162,   163,   164,   165,   166,   167,   168,   169,   170,   171,
2147         172,   173,   174,   175,   176,   177,   178,   179,   180,   181,
2148         182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
2149         192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
2150         202,   203,   204,   205,   206,   207,   208,   209,   210,   211,
2151         212,   213,   214,   215,   216,   217,   218,   219,   220,   221,
2152         222,   223,     3,     4,     5,     6,     7,     8,     9,    10,
2153        11,    12,    13,    14,    15,    16,    17,    18,    19,    20,        11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
2154        21,    22,    23,    24,    25,    26,    27,    28,    29,    30,        21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
2155        31,    32,    33,    34,    35,    36,    37,    38,    39,    40,        31,    32,    33,    34,    35,    36,    37,    38,    39,    40,
# Line 1887  static const yytype_int16 yycheck[] = Line 2171  static const yytype_int16 yycheck[] =
2171       191,   192,   193,   194,   195,   196,   197,   198,   199,   200,       191,   192,   193,   194,   195,   196,   197,   198,   199,   200,
2172       201,   202,   203,   204,   205,   206,   207,   208,   209,   210,       201,   202,   203,   204,   205,   206,   207,   208,   209,   210,
2173       211,   212,   213,   214,   215,   216,   217,   218,   219,   220,       211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
2174       221,   222,    -1,   224,     3,     4,     5,     6,     7,     8,       221,     3,     4,     5,     6,     7,     8,     9,    10,    11,
        9,    10,    11,    12,    13,    14,    15,    16,    17,    18,  
       19,    20,    21,    22,    23,    24,    25,    26,    27,    28,  
       29,    30,    31,    32,    33,    34,    35,    36,    37,    38,  
       39,    40,    41,    42,    43,    44,    45,    46,    47,    48,  
       49,    50,    51,    52,    53,    54,    55,    56,    57,    58,  
       59,    60,    61,    62,    63,    64,    65,    66,    67,    68,  
       69,    70,    71,    72,    73,    74,    75,    76,    77,    78,  
       79,    80,    81,    82,    83,    84,    85,    86,    87,    88,  
       89,    90,    91,    92,    93,    94,    95,    96,    97,    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,   123,   124,   125,   126,   127,   128,  
      129,   130,   131,   132,   133,   134,   135,   136,   137,   138,  
      139,   140,   141,   142,   143,   144,   145,   146,   147,   148,  
      149,   150,   151,   152,   153,   154,   155,   156,   157,   158,  
      159,   160,   161,   162,   163,   164,   165,   166,   167,   168,  
      169,   170,   171,   172,   173,   174,   175,   176,   177,   178,  
      179,   180,   181,   182,   183,   184,   185,   186,   187,   188,  
      189,   190,   191,   192,   193,   194,   195,   196,   197,   198,  
      199,   200,   201,   202,   203,   204,   205,   206,   207,   208,  
      209,   210,   211,   212,   213,   214,   215,   216,   217,   218,  
      219,   220,   221,    -1,   223,   224,     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,    29,    30,    31,    32,    33,    34,    35,    36,  
       37,    38,    39,    40,    41,    42,    43,    44,    45,    46,  
       47,    48,    49,    50,    51,    52,    53,    54,    55,    56,  
       57,    58,    59,    60,    61,    62,    63,    64,    65,    66,  
       67,    68,    69,    70,    71,    72,    73,    74,    75,    76,  
       77,    78,    79,    80,    81,    82,    83,    84,    85,    86,  
       87,    88,    89,    90,    91,    92,    93,    94,    95,    96,  
       97,    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,   123,   124,   125,   126,  
      127,   128,   129,   130,   131,   132,   133,   134,   135,   136,  
      137,   138,   139,   140,   141,   142,   143,   144,   145,   146,  
      147,   148,   149,   150,   151,   152,   153,   154,   155,   156,  
      157,   158,   159,   160,   161,   162,   163,   164,   165,   166,  
      167,   168,   169,   170,   171,   172,   173,   174,   175,   176,  
      177,   178,   179,   180,   181,   182,   183,   184,   185,   186,  
      187,   188,   189,   190,   191,   192,   193,   194,   195,   196,  
      197,   198,   199,   200,   201,   202,   203,   204,   205,   206,  
      207,   208,   209,   210,   211,   212,   213,   214,   215,   216,  
      217,   218,   219,   220,   221,    -1,    -1,   224,     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,    29,    30,    31,    32,    33,    34,  
       35,    36,    37,    38,    39,    40,    41,    42,    43,    44,  
       45,    46,    47,    48,    49,    50,    51,    52,    53,    54,  
       55,    56,    57,    58,    59,    60,    61,    62,    63,    64,  
       65,    66,    67,    68,    69,    70,    71,    72,    73,    74,  
       75,    76,    77,    78,    79,    80,    81,    82,    83,    84,  
       85,    86,    87,    88,    89,    90,    91,    92,    93,    94,  
       95,    96,    97,    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,   123,   124,  
      125,   126,   127,   128,   129,   130,   131,   132,   133,   134,  
      135,   136,   137,   138,   139,   140,   141,   142,   143,   144,  
      145,   146,   147,   148,   149,   150,   151,   152,   153,   154,  
      155,   156,   157,   158,   159,   160,   161,   162,   163,   164,  
      165,   166,   167,   168,   169,   170,   171,   172,   173,   174,  
      175,   176,   177,   178,   179,   180,   181,   182,   183,   184,  
      185,   186,   187,   188,   189,   190,   191,   192,   193,   194,  
      195,   196,   197,   198,   199,   200,   201,   202,   203,   204,  
      205,   206,   207,   208,   209,   210,   211,   212,   213,   214,  
      215,   216,   217,   218,   219,   220,   221,    -1,    -1,   224,  
        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,    29,    30,    31,    32,  
       33,    34,    35,    36,    37,    38,    39,    40,    41,    42,  
       43,    44,    45,    46,    47,    48,    49,    50,    51,    52,  
       53,    54,    55,    56,    57,    58,    59,    60,    61,    62,  
       63,    64,    65,    66,    67,    68,    69,    70,    71,    72,  
       73,    74,    75,    76,    77,    78,    79,    80,    81,    82,  
       83,    84,    85,    86,    87,    88,    89,    90,    91,    92,  
       93,    94,    95,    96,    97,    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,  
      123,   124,   125,   126,   127,   128,   129,   130,   131,   132,  
      133,   134,   135,   136,   137,   138,   139,   140,   141,   142,  
      143,   144,   145,   146,   147,   148,   149,   150,   151,   152,  
      153,   154,   155,   156,   157,   158,   159,   160,   161,   162,  
      163,   164,   165,   166,   167,   168,   169,   170,   171,   172,  
      173,   174,   175,   176,   177,   178,   179,   180,   181,   182,  
      183,   184,   185,   186,   187,   188,   189,   190,   191,   192,  
      193,   194,   195,   196,   197,   198,   199,   200,   201,   202,  
      203,   204,   205,   206,   207,   208,   209,   210,   211,   212,  
      213,   214,   215,   216,   217,   218,   219,   220,   221,   222,  
      223,     3,     4,     5,     6,     7,     8,     9,    10,    11,  
2175        12,    13,    14,    15,    16,    17,    18,    19,    20,    21,        12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
2176        22,    23,    24,    25,    26,    27,    28,    29,    30,    31,        22,    23,    24,    25,    26,    27,    28,    29,    30,    31,
2177        32,    33,    34,    35,    36,    37,    38,    39,    40,    41,        32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
# Line 2129  static const yytype_int16 yycheck[] = Line 2324  static const yytype_int16 yycheck[] =
2324       188,   189,   190,   191,   192,   193,   194,   195,   196,   197,       188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
2325       198,   199,   200,   201,   202,   203,   204,   205,   206,   207,       198,   199,   200,   201,   202,   203,   204,   205,   206,   207,
2326       208,   209,   210,   211,   212,   213,   214,   215,   216,   217,       208,   209,   210,   211,   212,   213,   214,   215,   216,   217,
2327       218,   219,   220,   221,     3,     4,     5,     6,     7,     8,       218,   219,   220,   221
        9,    10,    11,    12,    13,    14,    15,    16,    17,    18,  
       19,    20,    21,    22,    23,    24,    25,    26,    27,    28,  
       29,    30,    31,    32,    33,    34,    35,    36,    37,    38,  
       39,    40,    41,    42,    43,    44,    45,    46,    47,    48,  
       49,    50,    51,    52,    53,    54,    55,    56,    57,    58,  
       59,    60,    61,    62,    63,    64,    65,    66,    67,    68,  
       69,    70,    71,    72,    73,    74,    75,    76,    77,    78,  
       79,    80,    81,    82,    83,    84,    85,    86,    87,    88,  
       89,    90,    91,    92,    93,    94,    95,    96,    97,    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,   123,   124,   125,   126,   127,   128,  
      129,   130,   131,   132,   133,   134,   135,   136,   137,   138,  
      139,   140,   141,   142,   143,   144,   145,   146,   147,   148,  
      149,   150,   151,   152,   153,   154,   155,   156,   157,   158,  
      159,   160,   161,   162,   163,   164,   165,   166,   167,   168,  
      169,   170,   171,   172,   173,   174,   175,   176,   177,   178,  
      179,   180,   181,   182,   183,   184,   185,   186,   187,   188,  
      189,   190,   191,   192,   193,   194,   195,   196,   197,   198,  
      199,   200,   201,   202,   203,   204,   205,   206,   207,   208,  
      209,   210,   211,   212,   213,   214,   215,   216,   217,   218,  
      219,   220,   221  
2328  };  };
2329    
2330  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
# Line 2159  static const yytype_int16 yycheck[] = Line 2332  static const yytype_int16 yycheck[] =
2332  static const yytype_uint16 yystos[] =  static const yytype_uint16 yystos[] =
2333  {  {
2334         0,     1,     3,    19,    21,    22,    25,    30,    31,    35,         0,     1,     3,    19,    21,    22,    25,    30,    31,    35,
2335        36,    37,    39,   228,   229,   230,   231,   282,   283,   284,        36,    37,    39,   228,   229,   230,   231,   286,   287,   288,
2336       285,   286,   287,   288,   289,   290,   295,   296,   297,   298,       289,   290,   291,   292,   293,   294,   299,   300,   301,   302,
2337       299,   346,   350,    22,    30,    36,    23,    23,    27,    33,       303,   365,   369,    22,    30,    36,    23,    23,    27,    33,
2338        19,    39,    23,    23,    39,    32,     0,   225,   226,   280,        19,    39,    23,    23,    39,    32,     0,   225,   226,   284,
2339       281,     3,     4,     5,     6,     7,     8,     9,    10,    11,       285,     3,     4,     5,     6,     7,     8,     9,    10,    11,
2340        12,    13,    14,    15,    16,    17,    18,    19,    20,    21,        12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
2341        22,    23,    24,    25,    26,    27,    28,    29,    30,    31,        22,    23,    24,    25,    26,    27,    28,    29,    30,    31,
2342        32,    33,    34,    35,    36,    37,    38,    39,    40,    41,        32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
# Line 2185  static const yytype_uint16 yystos[] = Line 2358  static const yytype_uint16 yystos[] =
2358       192,   193,   194,   195,   196,   197,   198,   199,   200,   201,       192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
2359       202,   203,   204,   205,   206,   207,   208,   209,   210,   211,       202,   203,   204,   205,   206,   207,   208,   209,   210,   211,
2360       212,   213,   214,   215,   216,   217,   218,   219,   220,   221,       212,   213,   214,   215,   216,   217,   218,   219,   220,   221,
2361       224,   271,   274,   275,   276,   279,   279,   279,   279,   279,       224,   275,   278,   279,   280,   283,   283,   283,   283,   283,
2362       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,       283,   283,   283,   283,   283,   283,   283,   283,   283,   283,
2363       279,    22,    23,    23,    37,    38,    37,    19,    34,    27,       283,    22,    23,    23,    37,    38,    37,    19,    34,    27,
2364        31,    37,    30,    38,    20,    31,    37,   280,     9,    10,        31,    37,    30,    38,    20,    31,    37,   284,     9,    10,
2365        11,    12,    13,    14,    15,    16,    17,    18,   273,   274,        11,    12,    13,    14,    15,    16,    17,    18,   277,   278,
2366       273,   273,   273,   273,   273,   273,   273,   273,     3,     9,       277,   277,   277,   277,   277,   277,   277,   277,     3,     9,
2367        10,    11,    12,    13,    14,    15,    16,    17,    18,   276,        10,    11,    12,    13,    14,    15,    16,    17,    18,   280,
2368        21,    31,   232,   300,   333,    19,    21,    23,    31,    37,        21,    31,   232,   304,   348,    19,    21,    23,    24,    31,
2369        38,   238,   300,   301,   302,   303,   310,   311,   313,   318,        37,    38,    40,   238,   304,   305,   306,   307,   324,   325,
2370       319,   320,   321,   322,   323,   325,   327,   328,   329,   330,       328,   333,   334,   335,   336,   337,   338,   340,   342,   343,
2371       331,   332,   333,   334,   335,   336,   340,    31,   235,   331,       344,   345,   346,   347,   348,   349,   350,   351,   356,   357,
2372       236,   331,    31,   242,   332,    19,    31,   240,   319,   329,       358,   359,    31,   235,   346,   236,   346,    31,   242,   347,
2373       243,   319,   329,    19,    21,    31,   248,   301,   302,   303,        19,    24,    31,   240,   334,   344,   356,   243,   334,   344,
2374       318,   325,   328,   332,   334,    27,   244,   312,   313,   237,       356,    19,    21,    24,    31,   249,   305,   306,   307,   333,
2375       300,   333,    19,    23,    31,   239,   300,   317,   322,   326,       340,   343,   347,   349,   357,    27,   244,   327,   328,   237,
2376       327,   333,   349,    20,    21,    31,    37,    38,    40,   233,       304,   348,    19,    23,    31,   239,   304,   332,   337,   341,
2377       305,   306,   307,   308,   309,   310,   347,   234,   305,   306,       342,   348,   356,   359,   368,    19,    20,    21,    24,    25,
2378       307,   308,   309,   310,   347,   271,   277,   279,   241,   300,        31,    37,    38,    40,   233,   309,   310,   311,   312,   313,
2379        19,    19,    38,    38,    22,    38,    33,    23,    23,    37,       314,   315,   316,   317,   318,   319,   320,   321,   322,   323,
2380        19,    39,   274,    26,    27,   279,    39,    40,    26,    32,       324,   326,   366,   234,   309,   310,   311,   312,   313,   314,
2381        27,    23,    33,   279,   279,   279,   279,   279,   279,   279,       315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
2382       279,   279,   279,   279,   279,   279,   279,   279,   279,    27,       326,   366,   275,   281,   283,   241,   304,    19,    19,    38,
2383       279,   279,    27,   279,    39,    27,   279,   279,   279,   279,        38,    22,    38,    33,    23,    23,    37,    19,    39,   278,
2384        39,    26,    27,   279,    32,   279,   279,   279,   279,    39,        26,    27,   283,    39,    40,    26,    32,    42,    27,    23,
2385        21,    27,   279,   279,   279,   279,   279,   279,   279,    39,        33,    33,   283,   283,   283,   283,   283,   283,   283,   283,
2386        26,    27,    38,    33,    33,   271,   279,   279,    36,    38,       283,   283,   283,   283,   283,   283,   283,   283,   283,   283,
2387        36,    40,    38,    21,    21,    34,    20,    19,    22,   222,        27,   283,   283,    27,   283,    39,    42,    27,   283,   283,
2388       223,   266,   278,    22,    19,    19,    25,    22,    36,    38,       283,   283,   283,   283,    39,    26,    42,    27,   283,   283,
2389        27,   304,   307,   308,   309,   304,   304,   304,   304,   304,        32,   283,   283,   283,   283,    39,    21,    27,   283,   283,
2390       304,   304,   304,   304,   304,    10,    11,    12,    13,    14,       283,   283,   283,   283,   283,   283,   283,    39,    39,    26,
2391        15,    16,    17,    18,    19,   258,   275,   291,   304,   304,        42,    30,    27,    38,    33,    33,   275,   283,   283,    36,
2392       304,   304,    22,   258,   258,    22,   258,   291,    22,    22,        38,    36,    40,    38,    21,    21,    34,    20,    19,    22,
2393       271,   271,   275,   275,    22,    19,    22,   258,   291,    37,       222,   223,   269,   282,    22,    19,    19,    25,    89,    22,
2394        32,   249,   265,   278,   294,   250,   264,   271,   262,   275,        36,    38,    30,    27,   308,   321,   322,   323,   308,   308,
2395       258,   291,    22,    26,    22,    19,    31,    37,    40,   245,       308,   308,   308,   308,   308,   308,   308,   308,    10,    11,
2396       319,   323,   324,   329,   333,   336,   337,   338,   339,   341,        12,    13,    14,    15,    16,    17,    18,    19,   259,   279,
2397       342,   343,   275,   275,   275,   275,    32,   348,   270,   271,       295,   308,   308,   308,   308,   264,   279,   308,    22,    32,
2398       275,    24,    19,    37,    36,    38,    27,   262,    23,    33,       246,   298,   259,    22,   259,   295,    22,    89,    22,   275,
2399        23,    38,    36,    37,    32,    27,   277,   277,    27,    27,       275,   264,   279,   279,   264,    22,    19,    89,    22,   259,
2400        32,    27,    27,    40,    19,    32,   279,   279,   279,   279,       295,   264,    37,   250,   268,   282,   298,   251,   267,   275,
2401       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,       264,   259,   295,    22,    26,    22,    19,    31,    37,   245,
2402        30,   279,   279,   279,    27,   279,   279,    27,    27,    27,       334,   338,   339,   344,   348,   351,   352,   353,   354,   359,
2403       279,   279,    27,    32,    27,    38,    33,   279,   279,   279,       361,   362,   279,   279,   279,   279,    32,   367,    19,    30,
2404        27,    33,    27,    39,    27,    39,    33,    33,   279,   279,        31,   338,   355,   360,     7,     8,   263,   276,   277,   278,
2405       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,       279,   274,   275,   279,    22,    24,    19,    89,    33,    22,
2406       279,   279,   279,   279,    19,   279,    24,    32,    21,    23,        37,    36,    38,    27,   264,    23,    33,    23,    38,    36,
2407        19,    21,    43,    27,    21,    32,    89,   222,   223,    33,        37,    32,    27,   281,   281,    27,    27,    32,    27,    37,
2408        30,    32,    32,    89,    23,    30,    24,   262,    20,    34,        27,    40,    19,    39,    32,   283,   283,   283,   283,   283,
2409       247,   344,   345,   262,   262,   264,   275,   271,   271,   275,       283,   283,   283,   283,   283,   283,   283,   283,   283,    30,
2410       275,   275,   275,   271,   258,    30,   258,   271,   275,    89,       283,   283,   283,   283,    27,    33,   259,   283,   283,    27,
2411       259,   275,   259,    89,    33,    89,   246,   271,   246,    33,        27,    37,    27,   283,   283,   283,   283,    27,    32,    37,
2412        32,    89,    36,    32,   263,   275,   265,   262,    33,    89,        27,    38,   283,   283,   283,    27,    33,    27,    39,    27,
2413        22,    22,    38,    30,    30,   262,   262,   262,   262,   262,        39,    33,   283,   283,   283,   283,   283,   283,   283,   283,
2414       262,   262,   262,   262,   262,   262,   262,   271,   275,   271,       283,   283,   283,   283,   283,   283,   283,   283,    19,   283,
2415       275,    31,   258,    23,    32,    23,    19,    30,    23,    20,        39,    23,    27,   283,   283,   283,   277,   277,     6,    27,
2416        36,    23,    27,    89,    19,    23,    23,    27,    36,    89,        24,    32,    37,    20,    27,    21,    23,    19,    21,    43,
2417        33,    43,    23,   279,   279,   279,   279,   279,   279,   279,        27,    21,    32,    89,   222,   223,    33,    30,    32,    32,
2418       279,    27,   279,   279,    27,    89,    27,   279,     4,    89,        23,    89,    23,    30,    31,    24,   264,    20,    34,   248,
2419        23,    27,    39,    89,   279,   279,    89,    27,    27,    27,       363,   364,   264,   264,   267,   279,   275,   275,   279,   279,
2420        23,    33,    39,   279,   279,   279,   279,   279,   279,   279,       279,   279,   275,   259,    30,   259,   275,   279,   264,    89,
2421       279,   279,   279,   279,   279,     4,   279,     4,   279,    23,        32,   283,   260,   279,    89,    33,    23,    89,   247,   275,
2422       279,    36,    23,    30,    31,    89,    89,    23,    27,    30,       247,   262,   279,   266,   279,    33,    32,    23,    89,    36,
2423        32,    33,    20,    30,    32,    40,    38,    36,   262,   271,       265,   279,   268,   264,    33,    89,    22,    22,    38,    30,
2424       275,   275,   275,   271,   259,   275,    32,   260,   275,   260,       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
2425        32,    33,    32,   271,     7,     8,   268,   269,   271,   272,       264,   264,   275,   279,   275,   279,    31,   259,    22,    40,
2426       273,   274,   275,   278,    33,    30,    32,    31,    31,   262,        22,   264,   264,   264,     6,     6,   277,    33,    23,    32,
2427       263,    33,    32,    33,    89,    31,   252,   275,   253,   275,        23,    19,    89,    23,    19,    30,    23,    20,    36,    23,
2428       254,   271,   252,    22,    32,   258,   292,   293,   255,   275,        27,    89,    19,    23,    23,    32,    27,    36,    89,    23,
2429       256,   275,   291,   257,   271,   252,     7,     8,   261,   272,        33,    43,    23,   283,   283,   283,   283,   283,   283,   283,
2430       275,   270,   270,   268,   271,   268,   271,   266,    89,    30,       283,   283,    27,    89,   260,   283,    27,    89,    32,    27,
2431        30,    89,    40,    21,    20,    37,    39,    30,    37,    34,       283,     4,   283,    89,    23,    32,    27,    39,   283,   283,
2432        37,    33,    23,    21,   279,   279,   279,   279,   279,    37,        89,    27,    27,    27,    23,    33,   283,   283,   283,   283,
2433       279,    37,    39,    34,     4,   273,   273,     5,     6,    39,       283,   283,   283,   283,   283,   283,   283,   283,     4,   283,
2434        34,    37,    23,    33,   279,    39,    34,    89,    27,    23,         4,   283,    23,   283,    27,    23,    27,   283,   283,   283,
2435       279,    23,    33,   279,     4,     4,    24,    89,    19,    21,       277,   277,    89,    36,    23,    32,    30,    27,    30,    31,
2436        33,    33,    23,    38,    38,    23,    39,    38,    27,    37,        89,    89,    23,    27,    30,    32,    33,    20,    30,    22,
2437        23,   246,   271,   271,   246,   260,    38,   264,    38,    38,        32,    40,    38,    36,   264,   275,   279,   279,   279,   275,
2438        39,   268,     6,     6,   269,   273,    38,    39,    38,    32,       260,   279,   266,    32,    31,   283,   261,   279,    32,    33,
2439        22,   262,    38,    39,    33,    32,   253,    24,    32,   255,        22,    32,   275,     7,     8,   272,   273,   275,   276,   279,
2440       268,   268,    27,    21,    27,    32,    33,    27,    39,    36,       282,   271,   282,    33,    30,    22,    32,    31,   264,   265,
2441        34,    89,    38,    36,    21,    32,    36,   279,    36,    34,        33,    32,    33,    89,   253,   279,   254,   279,   255,   275,
2442        38,   273,   273,    34,    38,    36,    38,    19,    34,    38,       253,    22,    32,   259,   296,   297,   256,   279,   257,   279,
2443        39,    34,    19,    23,   279,    30,    33,    32,    23,    39,       295,   258,   275,   253,   263,   274,   274,   272,   275,   272,
2444        21,    32,    39,    39,    19,    23,    31,    89,    39,    23,       275,   269,    33,    30,    89,   266,   266,   266,    33,    89,
2445        38,    39,   265,    39,    39,    89,    39,    89,    39,    30,        30,    22,    89,    32,    30,    89,    40,    21,    20,    37,
2446        39,    89,    38,    39,    39,   256,    30,    39,    24,    33,        39,    30,    37,    37,    34,    37,    33,    23,    21,   283,
2447        32,    23,    38,    31,    38,    39,    32,    27,    22,    34,       283,   283,   283,   283,    37,    33,   261,    37,    39,    34,
2448        31,    89,    19,    31,   279,    31,    38,    22,    38,    22,         4,     5,    39,    34,    37,    23,   283,    39,    34,    89,
2449        31,    38,    22,    34,    34,    38,    30,    32,    33,    39,        27,   283,    23,    33,   283,     4,     4,    89,    21,   283,
2450        38,    89,    23,    89,    22,    25,    22,    23,    36,    33,       283,   283,    39,    24,    89,    89,    27,    34,    37,    19,
2451        23,    21,    25,    23,   263,    23,    89,    23,    89,    23,        21,    33,    33,    23,    38,    38,    23,    39,    38,    27,
2452        23,    89,    23,    33,    39,    89,    38,    38,    37,    21,        37,    23,   247,   275,   275,   247,   261,    38,    22,   283,
2453        32,    21,    22,    27,    27,    27,    40,    27,    36,    32,        38,    38,    39,   272,   273,    38,    39,    38,    32,   264,
2454        33,    23,    32,   279,    32,    22,    40,    22,    40,    32,        38,    39,    33,    32,   254,    24,    32,   256,   272,   272,
2455        21,    22,    40,    36,    38,    21,    34,    38,    33,    38,        33,    33,   254,   262,   263,    38,    27,    21,    27,    21,
2456        26,    23,    36,    33,    32,    89,    27,    40,    38,    38,        27,    32,    39,    38,    32,    33,    27,    39,    36,    34,
2457        39,    38,   261,    38,    23,    27,    23,    27,    38,    26,        89,    38,    36,    21,    32,    36,    19,   267,    36,    34,
2458        23,    27,    38,    89,    26,    33,    43,    39,    89,    19,        38,    34,    38,    36,    38,    34,    38,    39,    34,    19,
2459        40,    27,    89,    23,    27,    21,    23,    89,    37,    89,        23,   283,    39,    32,   283,    34,    30,    33,    32,    33,
2460        32,   279,    40,    21,    40,    21,    89,    19,    40,    21,        32,    24,    38,    36,    23,    39,    21,    32,    39,    39,
2461        21,    38,    19,    36,    34,    32,    31,    32,    27,    40,        19,    23,    31,    89,    39,    23,    38,    39,    30,   283,
2462        33,    37,    32,    23,    36,    34,    31,    38,    33,    34,        39,    39,    89,    39,    89,    39,    39,    89,    38,    39,
2463       251,   267,   278,   314,   315,   316,    27,    23,    27,    23,        39,   257,    38,    38,   254,    39,    30,    39,    24,    39,
2464        31,    32,    27,    23,    26,    43,    32,    38,    23,    38,        24,    33,    89,    39,    33,    32,    23,    38,    31,    38,
2465        19,    32,    21,    23,    39,    34,    37,    89,    19,    19,        39,    32,    27,    22,    34,    31,    89,    19,    31,   268,
2466        89,    32,    23,   279,    21,    21,    19,    32,    21,    89,        31,    38,    22,    38,    22,    31,    38,    22,    34,    34,
2467        19,    34,    32,    34,    23,    23,    36,    38,    39,    34,        38,    30,    34,    36,    38,    32,    33,    32,    33,    22,
2468        36,    34,    31,    89,    36,   267,    23,    23,    34,    23,        31,    39,    38,    89,    23,    89,    22,    25,    22,    23,
2469        23,    34,    32,    23,    23,    30,    37,    89,    34,    38,        36,    33,    23,    21,    25,    23,   283,    23,    89,    23,
2470        19,    19,    37,    19,    22,    37,    30,    89,    19,    32,        89,    23,    23,    89,    23,    33,    39,    89,    38,    39,
2471        30,    89,    34,    39,    89,    36,    31,    42,    23,    27,        33,    89,    38,    38,    23,    23,    37,    21,    32,    21,
2472        34,    36,    23,    34,    19,    38,    22,    19,    23,    31,        22,    27,    27,    27,    40,    27,    36,    32,    33,    23,
2473        37,    19,    19,    30,    19,    36,    89,    36,    31,    38,        32,   265,    32,    22,    40,    22,    40,    32,    21,    22,
2474        19,    38,    36,    31,    36,    19,    22,    27,    23,    23,        40,    36,    38,    21,    34,    38,    38,    30,    22,    40,
2475        32,    23,    19,    23,    19,    31,    36,    40,    38,    36,        32,    33,    38,    26,    23,    36,    33,    32,    89,    27,
2476        22,    32,    31,    38,    31,    23,    27,    23,    23,    89,        40,    38,    38,    39,    38,   283,    38,    23,    27,    23,
2477        38,    23,    23,    23,    38,    40,    36,    36,    26,    38,        27,    38,    26,    23,    27,    38,    89,    26,    33,    43,
2478        36,    38,    23,    23,    37,    33,    23,    23,    36,    36,        89,    30,    23,    27,    38,    39,    89,    19,    40,    27,
2479        30,    36,    36,    37,    22        89,    23,    27,    21,    23,    89,    37,    89,    32,   263,
2480          40,    21,    40,    21,    89,    19,    40,    21,    21,    38,
2481          19,    36,    34,    23,    40,    21,    89,    32,    31,    32,
2482          27,    40,    33,    37,    32,    23,    36,    34,    31,    38,
2483         283,    27,    23,    27,    23,    31,    32,    27,    23,    26,
2484          43,    32,    38,    23,    36,    27,    23,    21,    27,    31,
2485          38,    19,    32,    21,    23,    39,    34,    37,    89,    19,
2486          19,    89,    33,    34,   252,   270,   282,   329,   330,   331,
2487          21,    21,    19,    32,    21,    89,    19,    34,    32,    21,
2488          89,    33,    32,    19,    34,    23,    23,    36,    38,    39,
2489          34,    36,    34,    31,    32,    23,   283,    23,    23,    34,
2490          23,    23,    34,    32,    23,    23,    23,    21,    27,    39,
2491          24,    34,    30,    37,    89,    34,    38,    19,    19,    37,
2492          19,    89,    36,   270,    30,    89,    19,    32,    30,    89,
2493          33,    32,    32,    33,    89,    89,    34,    39,    89,    36,
2494          31,    42,    22,    37,    34,    36,    23,    21,    27,    39,
2495          24,    38,    21,    27,    34,    19,    38,    22,    19,    23,
2496          23,    27,    19,    19,    30,    33,    32,    32,    33,    33,
2497          32,    19,    36,    89,    36,    31,    38,    31,    37,    36,
2498          31,    39,    24,    38,    39,    24,    36,    19,    22,    27,
2499          23,    23,    19,    38,    19,    23,    32,    33,    32,    33,
2500          19,    31,    36,    40,    38,    36,    32,    23,    31,    38,
2501          38,    38,    31,    23,    27,    23,    23,    22,    32,    23,
2502          23,    23,    38,    40,    36,    36,    89,    38,    38,    36,
2503          38,    23,    23,    37,    26,    23,    23,    36,    36,    33,
2504          36,    36,    37,    30,    22
2505  };  };
2506    
2507  #define yyerrok         (yyerrstatus = 0)  #define yyerrok         (yyerrstatus = 0)
# Line 2430  do {                                                                     \ Line 2628  do {                                                                     \
2628  #if (defined __STDC__ || defined __C99__FUNC__ \  #if (defined __STDC__ || defined __C99__FUNC__ \
2629       || defined __cplusplus || defined _MSC_VER)       || defined __cplusplus || defined _MSC_VER)
2630  static void  static void
2631  yy_symbol_value_print (FILE *yyoutput, int yytype, const YYSTYPE * const yyvaluep)  yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
2632  #else  #else
2633  static void  static void
2634  yy_symbol_value_print (yyoutput, yytype, yyvaluep)  yy_symbol_value_print (yyoutput, yytype, yyvaluep)
2635      FILE *yyoutput;      FILE *yyoutput;
2636      int yytype;      int yytype;
2637      const YYSTYPE * const yyvaluep;      YYSTYPE const * const yyvaluep;
2638  #endif  #endif
2639  {  {
2640    if (!yyvaluep)    if (!yyvaluep)
# Line 2462  yy_symbol_value_print (yyoutput, yytype, Line 2660  yy_symbol_value_print (yyoutput, yytype,
2660  #if (defined __STDC__ || defined __C99__FUNC__ \  #if (defined __STDC__ || defined __C99__FUNC__ \
2661       || defined __cplusplus || defined _MSC_VER)       || defined __cplusplus || defined _MSC_VER)
2662  static void  static void
2663  yy_symbol_print (FILE *yyoutput, int yytype, const YYSTYPE * const yyvaluep)  yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
2664  #else  #else
2665  static void  static void
2666  yy_symbol_print (yyoutput, yytype, yyvaluep)  yy_symbol_print (yyoutput, yytype, yyvaluep)
2667      FILE *yyoutput;      FILE *yyoutput;
2668      int yytype;      int yytype;
2669      const YYSTYPE * const yyvaluep;      YYSTYPE const * const yyvaluep;
2670  #endif  #endif
2671  {  {
2672    if (yytype < YYNTOKENS)    if (yytype < YYNTOKENS)
# Line 2516  do {                                                           \ Line 2714  do {                                                           \
2714  #if (defined __STDC__ || defined __C99__FUNC__ \  #if (defined __STDC__ || defined __C99__FUNC__ \
2715       || defined __cplusplus || defined _MSC_VER)       || defined __cplusplus || defined _MSC_VER)
2716  static void  static void
2717  yy_reduce_print (YYSTYPE *yyvsp,  yy_reduce_print (YYSTYPE *yyvsp, int yyrule)
                    int yyrule)  
2718  #else  #else
2719  static void  static void
2720  yy_reduce_print (yyvsp, yyrule  yy_reduce_print (yyvsp, yyrule)
                    )  
2721      YYSTYPE *yyvsp;      YYSTYPE *yyvsp;
2722            int yyrule;
                    int yyrule;  
2723  #endif  #endif
2724  {  {
2725    int yynrhs = yyr2[yyrule];    int yynrhs = yyr2[yyrule];
# Line 3121  yyreduce: Line 3316  yyreduce:
3316    switch (yyn)    switch (yyn)
3317      {      {
3318          case 4:          case 4:
3319  #line 100 "lscp.y"  #line 101 "lscp.y"
3320      { return LSCP_DONE; }      { return LSCP_DONE; }
3321      break;      break;
3322    
3323    case 5:    case 5:
3324  #line 101 "lscp.y"  #line 102 "lscp.y"
3325      { return LSCP_DONE; }      { return LSCP_DONE; }
3326      break;      break;
3327    
3328    case 6:    case 6:
3329  #line 102 "lscp.y"  #line 103 "lscp.y"
3330      { LSCPSERVER->AnswerClient((yyvsp[(1) - (1)].String)); return LSCP_DONE; }      { LSCPSERVER->AnswerClient((yyvsp[(1) - (1)].String)); return LSCP_DONE; }
3331      break;      break;
3332    
3333    case 7:    case 7:
3334  #line 103 "lscp.y"  #line 104 "lscp.y"
3335      { LSCPSERVER->AnswerClient("ERR:0:Unknown command.\r\n"); RESTART; return LSCP_SYNTAX_ERROR; }      { LSCPSERVER->AnswerClient("ERR:0:Unknown command.\r\n"); RESTART; return LSCP_SYNTAX_ERROR; }
3336      break;      break;
3337    
3338    case 13:    case 13:
3339  #line 113 "lscp.y"  #line 114 "lscp.y"
3340      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3341      break;      break;
3342    
3343    case 14:    case 14:
3344  #line 114 "lscp.y"  #line 115 "lscp.y"
3345      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3346      break;      break;
3347    
3348    case 15:    case 15:
3349  #line 115 "lscp.y"  #line 116 "lscp.y"
3350      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3351      break;      break;
3352    
3353    case 16:    case 16:
3354  #line 116 "lscp.y"  #line 117 "lscp.y"
3355      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3356      break;      break;
3357    
3358    case 17:    case 17:
3359  #line 117 "lscp.y"  #line 118 "lscp.y"
3360      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3361      break;      break;
3362    
3363    case 18:    case 18:
3364  #line 118 "lscp.y"  #line 119 "lscp.y"
3365      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3366      break;      break;
3367    
3368    case 19:    case 19:
3369  #line 119 "lscp.y"  #line 120 "lscp.y"
3370      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3371      break;      break;
3372    
3373    case 20:    case 20:
3374  #line 120 "lscp.y"  #line 121 "lscp.y"
3375      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3376      break;      break;
3377    
3378    case 21:    case 21:
3379  #line 121 "lscp.y"  #line 122 "lscp.y"
3380      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3381      break;      break;
3382    
3383    case 22:    case 22:
3384  #line 122 "lscp.y"  #line 123 "lscp.y"
3385      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3386      break;      break;
3387    
3388    case 23:    case 23:
3389  #line 123 "lscp.y"  #line 124 "lscp.y"
3390      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3391      break;      break;
3392    
3393    case 24:    case 24:
3394  #line 124 "lscp.y"  #line 125 "lscp.y"
3395      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3396      break;      break;
3397    
3398    case 25:    case 25:
3399  #line 125 "lscp.y"  #line 126 "lscp.y"
3400      { (yyval.String) = LSCPSERVER->QueryDatabase((yyvsp[(3) - (3)].String));                     }      { (yyval.String) = LSCPSERVER->QueryDatabase((yyvsp[(3) - (3)].String));                     }
3401      break;      break;
3402    
3403    case 26:    case 26:
3404  #line 126 "lscp.y"  #line 127 "lscp.y"
3405      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3406      break;      break;
3407    
3408    case 27:    case 27:
3409  #line 127 "lscp.y"  #line 128 "lscp.y"
3410      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3411      break;      break;
3412    
3413    case 28:    case 28:
3414  #line 128 "lscp.y"  #line 129 "lscp.y"
3415      { (yyval.String) = LSCPSERVER->ResetSampler();                        }      { (yyval.String) = LSCPSERVER->ResetSampler();                        }
3416      break;      break;
3417    
3418    case 29:    case 29:
3419  #line 129 "lscp.y"  #line 130 "lscp.y"
3420      { LSCPSERVER->AnswerClient("Bye!\r\n"); return LSCP_QUIT; }      { LSCPSERVER->AnswerClient("Bye!\r\n"); return LSCP_QUIT; }
3421      break;      break;
3422    
3423    case 30:    case 30:
3424  #line 132 "lscp.y"  #line 133 "lscp.y"
3425      { (yyval.String) = LSCPSERVER->AddChannel();                          }      { (yyval.String) = LSCPSERVER->AddChannel();                          }
3426      break;      break;
3427    
3428    case 31:    case 31:
3429  #line 133 "lscp.y"  #line 134 "lscp.y"
3430      { (yyval.String) = LSCPSERVER->AddMidiInstrumentMap();                }      { (yyval.String) = LSCPSERVER->AddMidiInstrumentMap();                }
3431      break;      break;
3432    
3433    case 32:    case 32:
3434  #line 134 "lscp.y"  #line 135 "lscp.y"
3435      { (yyval.String) = LSCPSERVER->AddMidiInstrumentMap((yyvsp[(3) - (3)].String));              }      { (yyval.String) = LSCPSERVER->AddMidiInstrumentMap((yyvsp[(3) - (3)].String));              }
3436      break;      break;
3437    
3438    case 33:    case 33:
3439  #line 137 "lscp.y"  #line 138 "lscp.y"
3440      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channel_count);     }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_audio_device_count);   }
3441      break;      break;
3442    
3443    case 34:    case 34:
3444  #line 138 "lscp.y"  #line 139 "lscp.y"
3445      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_voice_count);       }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_audio_device_info);    }
3446      break;      break;
3447    
3448    case 35:    case 35:
3449  #line 139 "lscp.y"  #line 140 "lscp.y"
3450      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_stream_count);      }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_midi_device_count);    }
3451      break;      break;
3452    
3453    case 36:    case 36:
3454  #line 140 "lscp.y"  #line 141 "lscp.y"
3455      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_buffer_fill);       }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_midi_device_info);     }
3456      break;      break;
3457    
3458    case 37:    case 37:
3459  #line 141 "lscp.y"  #line 142 "lscp.y"
3460      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channel_info);      }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channel_count);        }
3461      break;      break;
3462    
3463    case 38:    case 38:
3464  #line 142 "lscp.y"  #line 143 "lscp.y"
3465      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_misc);              }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_voice_count);          }
3466      break;      break;
3467    
3468    case 39:    case 39:
3469  #line 143 "lscp.y"  #line 144 "lscp.y"
3470      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_total_voice_count); }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_stream_count);         }
3471      break;      break;
3472    
3473    case 40:    case 40:
3474  #line 146 "lscp.y"  #line 145 "lscp.y"
3475      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_channel_count);     }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_buffer_fill);          }
3476      break;      break;
3477    
3478    case 41:    case 41:
3479  #line 147 "lscp.y"  #line 146 "lscp.y"
3480      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_voice_count);       }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channel_info);         }
3481      break;      break;
3482    
3483    case 42:    case 42:
3484  #line 148 "lscp.y"  #line 147 "lscp.y"
3485      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_stream_count);      }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_fx_send_count);        }
3486      break;      break;
3487    
3488    case 43:    case 43:
3489  #line 149 "lscp.y"  #line 148 "lscp.y"
3490      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_buffer_fill);       }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_fx_send_info);         }
3491      break;      break;
3492    
3493    case 44:    case 44:
3494  #line 150 "lscp.y"  #line 149 "lscp.y"
3495      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_channel_info);      }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_midi_instr_map_count); }
3496      break;      break;
3497    
3498    case 45:    case 45:
3499  #line 151 "lscp.y"  #line 150 "lscp.y"
3500      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_misc);              }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_midi_instr_map_info);  }
3501      break;      break;
3502    
3503    case 46:    case 46:
3504  #line 152 "lscp.y"  #line 151 "lscp.y"
3505      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_total_voice_count); }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_midi_instr_count);     }
3506      break;      break;
3507    
3508    case 47:    case 47:
3509  #line 155 "lscp.y"  #line 152 "lscp.y"
3510      { (yyval.String) = LSCPSERVER->AddOrReplaceMIDIInstrumentMapping((yyvsp[(3) - (15)].Number),(yyvsp[(5) - (15)].Number),(yyvsp[(7) - (15)].Number),(yyvsp[(9) - (15)].String),(yyvsp[(11) - (15)].String),(yyvsp[(13) - (15)].Number),(yyvsp[(15) - (15)].Dotnum),MidiInstrumentMapper::VOID,""); }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_midi_instr_info);      }
3511      break;      break;
3512    
3513    case 48:    case 48:
3514  #line 156 "lscp.y"  #line 153 "lscp.y"
3515      { (yyval.String) = LSCPSERVER->AddOrReplaceMIDIInstrumentMapping((yyvsp[(3) - (17)].Number),(yyvsp[(5) - (17)].Number),(yyvsp[(7) - (17)].Number),(yyvsp[(9) - (17)].String),(yyvsp[(11) - (17)].String),(yyvsp[(13) - (17)].Number),(yyvsp[(15) - (17)].Dotnum),(yyvsp[(17) - (17)].LoadMode),""); }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_misc);                 }
3516      break;      break;
3517    
3518    case 49:    case 49:
3519  #line 157 "lscp.y"  #line 154 "lscp.y"
3520      { (yyval.String) = LSCPSERVER->AddOrReplaceMIDIInstrumentMapping((yyvsp[(3) - (17)].Number),(yyvsp[(5) - (17)].Number),(yyvsp[(7) - (17)].Number),(yyvsp[(9) - (17)].String),(yyvsp[(11) - (17)].String),(yyvsp[(13) - (17)].Number),(yyvsp[(15) - (17)].Dotnum),MidiInstrumentMapper::VOID,(yyvsp[(17) - (17)].String)); }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_total_voice_count);    }
3521      break;      break;
3522    
3523    case 50:    case 50:
3524  #line 158 "lscp.y"  #line 155 "lscp.y"
3525      { (yyval.String) = LSCPSERVER->AddOrReplaceMIDIInstrumentMapping((yyvsp[(3) - (19)].Number),(yyvsp[(5) - (19)].Number),(yyvsp[(7) - (19)].Number),(yyvsp[(9) - (19)].String),(yyvsp[(11) - (19)].String),(yyvsp[(13) - (19)].Number),(yyvsp[(15) - (19)].Dotnum),(yyvsp[(17) - (19)].LoadMode),(yyvsp[(19) - (19)].String)); }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_global_info);          }
3526      break;      break;
3527    
3528    case 51:    case 51:
3529  #line 161 "lscp.y"  #line 158 "lscp.y"
3530      { (yyval.String) = LSCPSERVER->RemoveMIDIInstrumentMapping((yyvsp[(3) - (7)].Number),(yyvsp[(5) - (7)].Number),(yyvsp[(7) - (7)].Number)); }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_audio_device_count);   }
3531      break;      break;
3532    
3533    case 52:    case 52:
3534  #line 164 "lscp.y"  #line 159 "lscp.y"
3535      { (yyval.String) = LSCPSERVER->RemoveChannel((yyvsp[(3) - (3)].Number));             }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_audio_device_info);    }
3536      break;      break;
3537    
3538    case 53:    case 53:
3539  #line 165 "lscp.y"  #line 160 "lscp.y"
3540      { (yyval.String) = LSCPSERVER->RemoveMidiInstrumentMap((yyvsp[(3) - (3)].Number));   }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_midi_device_count);    }
3541      break;      break;
3542    
3543    case 54:    case 54:
3544  #line 166 "lscp.y"  #line 161 "lscp.y"
3545      { (yyval.String) = LSCPSERVER->RemoveAllMidiInstrumentMaps(); }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_midi_device_info);     }
3546      break;      break;
3547    
3548    case 55:    case 55:
3549  #line 169 "lscp.y"  #line 162 "lscp.y"
3550      { (yyval.String) = LSCPSERVER->GetAvailableEngines();                          }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_channel_count);        }
3551      break;      break;
3552    
3553    case 56:    case 56:
3554  #line 170 "lscp.y"  #line 163 "lscp.y"
3555      { (yyval.String) = LSCPSERVER->GetAvailableMidiInputDrivers();                 }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_voice_count);          }
3556      break;      break;
3557    
3558    case 57:    case 57:
3559  #line 171 "lscp.y"  #line 164 "lscp.y"
3560      { (yyval.String) = LSCPSERVER->GetMidiInputDriverInfo((yyvsp[(5) - (5)].String));                     }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_stream_count);         }
3561      break;      break;
3562    
3563    case 58:    case 58:
3564  #line 172 "lscp.y"  #line 165 "lscp.y"
3565      { (yyval.String) = LSCPSERVER->GetMidiInputDriverParameterInfo((yyvsp[(5) - (7)].String), (yyvsp[(7) - (7)].String));        }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_buffer_fill);          }
3566      break;      break;
3567    
3568    case 59:    case 59:
3569  #line 173 "lscp.y"  #line 166 "lscp.y"
3570      { (yyval.String) = LSCPSERVER->GetMidiInputDriverParameterInfo((yyvsp[(5) - (9)].String), (yyvsp[(7) - (9)].String), (yyvsp[(9) - (9)].KeyValList));    }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_channel_info);         }
3571      break;      break;
3572    
3573    case 60:    case 60:
3574  #line 174 "lscp.y"  #line 167 "lscp.y"
3575      { (yyval.String) = LSCPSERVER->GetAvailableAudioOutputDrivers();               }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_fx_send_count);        }
3576      break;      break;
3577    
3578    case 61:    case 61:
3579  #line 175 "lscp.y"  #line 168 "lscp.y"
3580      { (yyval.String) = LSCPSERVER->GetAudioOutputDriverInfo((yyvsp[(5) - (5)].String));                   }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_fx_send_info);         }
3581      break;      break;
3582    
3583    case 62:    case 62:
3584  #line 176 "lscp.y"  #line 169 "lscp.y"
3585      { (yyval.String) = LSCPSERVER->GetAudioOutputDriverParameterInfo((yyvsp[(5) - (7)].String), (yyvsp[(7) - (7)].String));      }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_midi_instr_map_count); }
3586      break;      break;
3587    
3588    case 63:    case 63:
3589  #line 177 "lscp.y"  #line 170 "lscp.y"
3590      { (yyval.String) = LSCPSERVER->GetAudioOutputDriverParameterInfo((yyvsp[(5) - (9)].String), (yyvsp[(7) - (9)].String), (yyvsp[(9) - (9)].KeyValList));  }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_midi_instr_map_info);  }
3591      break;      break;
3592    
3593    case 64:    case 64:
3594  #line 178 "lscp.y"  #line 171 "lscp.y"
3595      { (yyval.String) = LSCPSERVER->GetAudioOutputDeviceCount();                    }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_midi_instr_count);     }
3596      break;      break;
3597    
3598    case 65:    case 65:
3599  #line 179 "lscp.y"  #line 172 "lscp.y"
3600      { (yyval.String) = LSCPSERVER->GetMidiInputDeviceCount();                      }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_midi_instr_info);      }
3601      break;      break;
3602    
3603    case 66:    case 66:
3604  #line 180 "lscp.y"  #line 173 "lscp.y"
3605      { (yyval.String) = LSCPSERVER->GetAudioOutputDeviceInfo((yyvsp[(5) - (5)].Number));                   }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_misc);                 }
3606      break;      break;
3607    
3608    case 67:    case 67:
3609  #line 181 "lscp.y"  #line 174 "lscp.y"
3610      { (yyval.String) = LSCPSERVER->GetMidiInputDeviceInfo((yyvsp[(5) - (5)].Number));                     }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_total_voice_count);    }
3611      break;      break;
3612    
3613    case 68:    case 68:
3614  #line 182 "lscp.y"  #line 175 "lscp.y"
3615      { (yyval.String) = LSCPSERVER->GetMidiInputPortInfo((yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].Number));                   }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_global_info);          }
3616      break;      break;
3617    
3618    case 69:    case 69:
3619  #line 183 "lscp.y"  #line 178 "lscp.y"
3620      { (yyval.String) = LSCPSERVER->GetMidiInputPortParameterInfo((yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].Number), (yyvsp[(9) - (9)].String));      }      { (yyval.String) = LSCPSERVER->AddOrReplaceMIDIInstrumentMapping((yyvsp[(4) - (16)].Number),(yyvsp[(6) - (16)].Number),(yyvsp[(8) - (16)].Number),(yyvsp[(10) - (16)].String),(yyvsp[(12) - (16)].String),(yyvsp[(14) - (16)].Number),(yyvsp[(16) - (16)].Dotnum),MidiInstrumentMapper::VOID,"",(yyvsp[(3) - (16)].Bool)); }
3621      break;      break;
3622    
3623    case 70:    case 70:
3624  #line 184 "lscp.y"  #line 179 "lscp.y"
3625      { (yyval.String) = LSCPSERVER->GetAudioOutputChannelInfo((yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].Number));              }      { (yyval.String) = LSCPSERVER->AddOrReplaceMIDIInstrumentMapping((yyvsp[(4) - (18)].Number),(yyvsp[(6) - (18)].Number),(yyvsp[(8) - (18)].Number),(yyvsp[(10) - (18)].String),(yyvsp[(12) - (18)].String),(yyvsp[(14) - (18)].Number),(yyvsp[(16) - (18)].Dotnum),(yyvsp[(18) - (18)].LoadMode),"",(yyvsp[(3) - (18)].Bool)); }
3626      break;      break;
3627    
3628    case 71:    case 71:
3629  #line 185 "lscp.y"  #line 180 "lscp.y"
3630      { (yyval.String) = LSCPSERVER->GetAudioOutputChannelParameterInfo((yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].Number), (yyvsp[(9) - (9)].String)); }      { (yyval.String) = LSCPSERVER->AddOrReplaceMIDIInstrumentMapping((yyvsp[(4) - (18)].Number),(yyvsp[(6) - (18)].Number),(yyvsp[(8) - (18)].Number),(yyvsp[(10) - (18)].String),(yyvsp[(12) - (18)].String),(yyvsp[(14) - (18)].Number),(yyvsp[(16) - (18)].Dotnum),MidiInstrumentMapper::VOID,(yyvsp[(18) - (18)].String),(yyvsp[(3) - (18)].Bool)); }
3631      break;      break;
3632    
3633    case 72:    case 72:
3634  #line 186 "lscp.y"  #line 181 "lscp.y"
3635      { (yyval.String) = LSCPSERVER->GetChannels();                                  }      { (yyval.String) = LSCPSERVER->AddOrReplaceMIDIInstrumentMapping((yyvsp[(4) - (20)].Number),(yyvsp[(6) - (20)].Number),(yyvsp[(8) - (20)].Number),(yyvsp[(10) - (20)].String),(yyvsp[(12) - (20)].String),(yyvsp[(14) - (20)].Number),(yyvsp[(16) - (20)].Dotnum),(yyvsp[(18) - (20)].LoadMode),(yyvsp[(20) - (20)].String),(yyvsp[(3) - (20)].Bool)); }
3636      break;      break;
3637    
3638    case 73:    case 73:
3639  #line 187 "lscp.y"  #line 184 "lscp.y"
3640      { (yyval.String) = LSCPSERVER->GetChannelInfo((yyvsp[(5) - (5)].Number));                             }      { (yyval.String) = LSCPSERVER->RemoveMIDIInstrumentMapping((yyvsp[(3) - (7)].Number),(yyvsp[(5) - (7)].Number),(yyvsp[(7) - (7)].Number)); }
3641      break;      break;
3642    
3643    case 74:    case 74:
3644  #line 188 "lscp.y"  #line 187 "lscp.y"
3645      { (yyval.String) = LSCPSERVER->GetBufferFill((yyvsp[(5) - (7)].FillResponse), (yyvsp[(7) - (7)].Number));                          }      { (yyval.String) = LSCPSERVER->RemoveChannel((yyvsp[(3) - (3)].Number));             }
3646      break;      break;
3647    
3648    case 75:    case 75:
3649  #line 189 "lscp.y"  #line 188 "lscp.y"
3650      { (yyval.String) = LSCPSERVER->GetStreamCount((yyvsp[(5) - (5)].Number));                             }      { (yyval.String) = LSCPSERVER->RemoveMidiInstrumentMap((yyvsp[(3) - (3)].Number));   }
3651      break;      break;
3652    
3653    case 76:    case 76:
3654  #line 190 "lscp.y"  #line 189 "lscp.y"
3655      { (yyval.String) = LSCPSERVER->GetVoiceCount((yyvsp[(5) - (5)].Number));                              }      { (yyval.String) = LSCPSERVER->RemoveAllMidiInstrumentMaps(); }
3656      break;      break;
3657    
3658    case 77:    case 77:
3659  #line 191 "lscp.y"  #line 192 "lscp.y"
3660      { (yyval.String) = LSCPSERVER->GetEngineInfo((yyvsp[(5) - (5)].String));                              }      { (yyval.String) = LSCPSERVER->GetAvailableEngines();                          }
3661      break;      break;
3662    
3663    case 78:    case 78:
3664  #line 192 "lscp.y"  #line 193 "lscp.y"
3665      { (yyval.String) = LSCPSERVER->GetServerInfo();                                }      { (yyval.String) = LSCPSERVER->GetAvailableMidiInputDrivers();                 }
3666      break;      break;
3667    
3668    case 79:    case 79:
3669  #line 193 "lscp.y"  #line 194 "lscp.y"
3670      { (yyval.String) = LSCPSERVER->GetTotalVoiceCount();                                }      { (yyval.String) = LSCPSERVER->GetMidiInputDriverInfo((yyvsp[(5) - (5)].String));                     }
3671      break;      break;
3672    
3673    case 80:    case 80:
3674  #line 194 "lscp.y"  #line 195 "lscp.y"
3675      { (yyval.String) = LSCPSERVER->GetTotalVoiceCountMax();                        }      { (yyval.String) = LSCPSERVER->GetMidiInputDriverParameterInfo((yyvsp[(5) - (7)].String), (yyvsp[(7) - (7)].String));        }
3676      break;      break;
3677    
3678    case 81:    case 81:
3679  #line 195 "lscp.y"  #line 196 "lscp.y"
3680      { (yyval.String) = LSCPSERVER->GetMidiInstrumentMappings((yyvsp[(3) - (3)].Number));                  }      { (yyval.String) = LSCPSERVER->GetMidiInputDriverParameterInfo((yyvsp[(5) - (9)].String), (yyvsp[(7) - (9)].String), (yyvsp[(9) - (9)].KeyValList));    }
3681      break;      break;
3682    
3683    case 82:    case 82:
3684  #line 196 "lscp.y"  #line 197 "lscp.y"
3685      { (yyval.String) = LSCPSERVER->GetAllMidiInstrumentMappings();                 }      { (yyval.String) = LSCPSERVER->GetAvailableAudioOutputDrivers();               }
3686      break;      break;
3687    
3688    case 83:    case 83:
3689  #line 197 "lscp.y"  #line 198 "lscp.y"
3690      { (yyval.String) = LSCPSERVER->GetMidiInstrumentMapping((yyvsp[(5) - (9)].Number),(yyvsp[(7) - (9)].Number),(yyvsp[(9) - (9)].Number));             }      { (yyval.String) = LSCPSERVER->GetAudioOutputDriverInfo((yyvsp[(5) - (5)].String));                   }
3691      break;      break;
3692    
3693    case 84:    case 84:
3694  #line 198 "lscp.y"  #line 199 "lscp.y"
3695      { (yyval.String) = LSCPSERVER->GetMidiInstrumentMaps();                        }      { (yyval.String) = LSCPSERVER->GetAudioOutputDriverParameterInfo((yyvsp[(5) - (7)].String), (yyvsp[(7) - (7)].String));      }
3696      break;      break;
3697    
3698    case 85:    case 85:
3699  #line 199 "lscp.y"  #line 200 "lscp.y"
3700      { (yyval.String) = LSCPSERVER->GetMidiInstrumentMap((yyvsp[(5) - (5)].Number));                       }      { (yyval.String) = LSCPSERVER->GetAudioOutputDriverParameterInfo((yyvsp[(5) - (9)].String), (yyvsp[(7) - (9)].String), (yyvsp[(9) - (9)].KeyValList));  }
3701      break;      break;
3702    
3703    case 86:    case 86:
3704  #line 202 "lscp.y"  #line 201 "lscp.y"
3705      { (yyval.String) = LSCPSERVER->SetAudioOutputDeviceParameter((yyvsp[(3) - (7)].Number), (yyvsp[(5) - (7)].String), (yyvsp[(7) - (7)].String));      }      { (yyval.String) = LSCPSERVER->GetAudioOutputDeviceCount();                    }
3706      break;      break;
3707    
3708    case 87:    case 87:
3709  #line 203 "lscp.y"  #line 202 "lscp.y"
3710      { (yyval.String) = LSCPSERVER->SetAudioOutputChannelParameter((yyvsp[(3) - (9)].Number), (yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].String), (yyvsp[(9) - (9)].String)); }      { (yyval.String) = LSCPSERVER->GetMidiInputDeviceCount();                      }
3711      break;      break;
3712    
3713    case 88:    case 88:
3714  #line 204 "lscp.y"  #line 203 "lscp.y"
3715      { (yyval.String) = LSCPSERVER->SetMidiInputDeviceParameter((yyvsp[(3) - (7)].Number), (yyvsp[(5) - (7)].String), (yyvsp[(7) - (7)].String));        }      { (yyval.String) = LSCPSERVER->GetAudioOutputDeviceInfo((yyvsp[(5) - (5)].Number));                   }
3716      break;      break;
3717    
3718    case 89:    case 89:
3719  #line 205 "lscp.y"  #line 204 "lscp.y"
3720      { (yyval.String) = LSCPSERVER->SetMidiInputPortParameter((yyvsp[(3) - (9)].Number), (yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].String), (yyvsp[(9) - (9)].String));      }      { (yyval.String) = LSCPSERVER->GetMidiInputDeviceInfo((yyvsp[(5) - (5)].Number));                     }
3721      break;      break;
3722    
3723    case 90:    case 90:
3724  #line 206 "lscp.y"  #line 205 "lscp.y"
3725      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                         }      { (yyval.String) = LSCPSERVER->GetMidiInputPortInfo((yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].Number));                   }
3726      break;      break;
3727    
3728    case 91:    case 91:
3729  #line 207 "lscp.y"  #line 206 "lscp.y"
3730      { (yyval.String) = LSCPSERVER->SetMidiInstrumentMapName((yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].String));               }      { (yyval.String) = LSCPSERVER->GetMidiInputPortParameterInfo((yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].Number), (yyvsp[(9) - (9)].String));      }
3731      break;      break;
3732    
3733    case 92:    case 92:
3734  #line 208 "lscp.y"  #line 207 "lscp.y"
3735      { (yyval.String) = LSCPSERVER->SetEcho((yyparse_param_t*) yyparse_param, (yyvsp[(3) - (3)].Dotnum));  }      { (yyval.String) = LSCPSERVER->GetAudioOutputChannelInfo((yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].Number));              }
3736      break;      break;
3737    
3738    case 93:    case 93:
3739  #line 211 "lscp.y"  #line 208 "lscp.y"
3740      { (yyval.String) = LSCPSERVER->CreateAudioOutputDevice((yyvsp[(3) - (5)].String),(yyvsp[(5) - (5)].KeyValList)); }      { (yyval.String) = LSCPSERVER->GetAudioOutputChannelParameterInfo((yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].Number), (yyvsp[(9) - (9)].String)); }
3741      break;      break;
3742    
3743    case 94:    case 94:
3744  #line 212 "lscp.y"  #line 209 "lscp.y"
3745      { (yyval.String) = LSCPSERVER->CreateAudioOutputDevice((yyvsp[(3) - (3)].String));    }      { (yyval.String) = LSCPSERVER->GetChannels();                                  }
3746      break;      break;
3747    
3748    case 95:    case 95:
3749  #line 213 "lscp.y"  #line 210 "lscp.y"
3750      { (yyval.String) = LSCPSERVER->CreateMidiInputDevice((yyvsp[(3) - (5)].String),(yyvsp[(5) - (5)].KeyValList));   }      { (yyval.String) = LSCPSERVER->GetChannelInfo((yyvsp[(5) - (5)].Number));                             }
3751      break;      break;
3752    
3753    case 96:    case 96:
3754  #line 214 "lscp.y"  #line 211 "lscp.y"
3755      { (yyval.String) = LSCPSERVER->CreateMidiInputDevice((yyvsp[(3) - (3)].String));      }      { (yyval.String) = LSCPSERVER->GetBufferFill((yyvsp[(5) - (7)].FillResponse), (yyvsp[(7) - (7)].Number));                          }
3756      break;      break;
3757    
3758    case 97:    case 97:
3759  #line 217 "lscp.y"  #line 212 "lscp.y"
3760      { (yyval.String) = LSCPSERVER->ResetChannel((yyvsp[(3) - (3)].Number)); }      { (yyval.String) = LSCPSERVER->GetStreamCount((yyvsp[(5) - (5)].Number));                             }
3761      break;      break;
3762    
3763    case 98:    case 98:
3764  #line 220 "lscp.y"  #line 213 "lscp.y"
3765      { (yyval.String) = LSCPSERVER->ClearMidiInstrumentMappings((yyvsp[(3) - (3)].Number));  }      { (yyval.String) = LSCPSERVER->GetVoiceCount((yyvsp[(5) - (5)].Number));                              }
3766      break;      break;
3767    
3768    case 99:    case 99:
3769  #line 221 "lscp.y"  #line 214 "lscp.y"
3770      { (yyval.String) = LSCPSERVER->ClearAllMidiInstrumentMappings(); }      { (yyval.String) = LSCPSERVER->GetEngineInfo((yyvsp[(5) - (5)].String));                              }
3771      break;      break;
3772    
3773    case 100:    case 100:
3774  #line 224 "lscp.y"  #line 215 "lscp.y"
3775      { (yyval.String) = LSCPSERVER->DestroyAudioOutputDevice((yyvsp[(3) - (3)].Number)); }      { (yyval.String) = LSCPSERVER->GetServerInfo();                                }
3776      break;      break;
3777    
3778    case 101:    case 101:
3779  #line 225 "lscp.y"  #line 216 "lscp.y"
3780      { (yyval.String) = LSCPSERVER->DestroyMidiInputDevice((yyvsp[(3) - (3)].Number));   }      { (yyval.String) = LSCPSERVER->GetTotalVoiceCount();                                }
3781      break;      break;
3782    
3783    case 102:    case 102:
3784  #line 228 "lscp.y"  #line 217 "lscp.y"
3785      { (yyval.String) = (yyvsp[(3) - (3)].String); }      { (yyval.String) = LSCPSERVER->GetTotalVoiceCountMax();                        }
3786      break;      break;
3787    
3788    case 103:    case 103:
3789  #line 229 "lscp.y"  #line 218 "lscp.y"
3790      { (yyval.String) = (yyvsp[(3) - (3)].String); }      { (yyval.String) = LSCPSERVER->GetMidiInstrumentMappings((yyvsp[(3) - (3)].Number));                  }
3791      break;      break;
3792    
3793    case 104:    case 104:
3794  #line 232 "lscp.y"  #line 219 "lscp.y"
3795      { (yyval.String) = LSCPSERVER->SetAudioOutputDevice((yyvsp[(5) - (5)].Number), (yyvsp[(3) - (5)].Number));      }      { (yyval.String) = LSCPSERVER->GetAllMidiInstrumentMappings();                 }
3796      break;      break;
3797    
3798    case 105:    case 105:
3799  #line 233 "lscp.y"  #line 220 "lscp.y"
3800      { (yyval.String) = LSCPSERVER->SetAudioOutputChannel((yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].Number), (yyvsp[(3) - (7)].Number)); }      { (yyval.String) = LSCPSERVER->GetMidiInstrumentMapping((yyvsp[(5) - (9)].Number),(yyvsp[(7) - (9)].Number),(yyvsp[(9) - (9)].Number));             }
3801      break;      break;
3802    
3803    case 106:    case 106:
3804  #line 234 "lscp.y"  #line 221 "lscp.y"
3805      { (yyval.String) = LSCPSERVER->SetAudioOutputType((yyvsp[(5) - (5)].String), (yyvsp[(3) - (5)].Number));        }      { (yyval.String) = LSCPSERVER->GetMidiInstrumentMaps();                        }
3806      break;      break;
3807    
3808    case 107:    case 107:
3809  #line 235 "lscp.y"  #line 222 "lscp.y"
3810      { (yyval.String) = LSCPSERVER->SetMIDIInput((yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].Number), (yyvsp[(9) - (9)].Number), (yyvsp[(3) - (9)].Number));      }      { (yyval.String) = LSCPSERVER->GetMidiInstrumentMap((yyvsp[(5) - (5)].Number));                       }
3811      break;      break;
3812    
3813    case 108:    case 108:
3814  #line 236 "lscp.y"  #line 223 "lscp.y"
3815      { (yyval.String) = LSCPSERVER->SetMIDIInputDevice((yyvsp[(5) - (5)].Number), (yyvsp[(3) - (5)].Number));        }      { (yyval.String) = LSCPSERVER->GetFxSends((yyvsp[(3) - (3)].Number));                                 }
3816      break;      break;
3817    
3818    case 109:    case 109:
3819  #line 237 "lscp.y"  #line 224 "lscp.y"
3820      { (yyval.String) = LSCPSERVER->SetMIDIInputPort((yyvsp[(5) - (5)].Number), (yyvsp[(3) - (5)].Number));          }      { (yyval.String) = LSCPSERVER->GetFxSendInfo((yyvsp[(5) - (7)].Number),(yyvsp[(7) - (7)].Number));                           }
3821      break;      break;
3822    
3823    case 110:    case 110:
3824  #line 238 "lscp.y"  #line 225 "lscp.y"
3825      { (yyval.String) = LSCPSERVER->SetMIDIInputChannel((yyvsp[(5) - (5)].Number), (yyvsp[(3) - (5)].Number));       }      { (yyval.String) = LSCPSERVER->GetGlobalVolume();                              }
3826      break;      break;
3827    
3828    case 111:    case 111:
3829  #line 239 "lscp.y"  #line 228 "lscp.y"
3830      { (yyval.String) = LSCPSERVER->SetMIDIInputType((yyvsp[(5) - (5)].String), (yyvsp[(3) - (5)].Number));          }      { (yyval.String) = LSCPSERVER->SetAudioOutputDeviceParameter((yyvsp[(3) - (7)].Number), (yyvsp[(5) - (7)].String), (yyvsp[(7) - (7)].String));      }
3831      break;      break;
3832    
3833    case 112:    case 112:
3834  #line 240 "lscp.y"  #line 229 "lscp.y"
3835      { (yyval.String) = LSCPSERVER->SetVolume((yyvsp[(5) - (5)].Dotnum), (yyvsp[(3) - (5)].Number));                 }      { (yyval.String) = LSCPSERVER->SetAudioOutputChannelParameter((yyvsp[(3) - (9)].Number), (yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].String), (yyvsp[(9) - (9)].String)); }
3836      break;      break;
3837    
3838    case 113:    case 113:
3839  #line 241 "lscp.y"  #line 230 "lscp.y"
3840      { (yyval.String) = LSCPSERVER->SetChannelMute((yyvsp[(5) - (5)].Dotnum), (yyvsp[(3) - (5)].Number));            }      { (yyval.String) = LSCPSERVER->SetMidiInputDeviceParameter((yyvsp[(3) - (7)].Number), (yyvsp[(5) - (7)].String), (yyvsp[(7) - (7)].String));        }
3841      break;      break;
3842    
3843    case 114:    case 114:
3844  #line 242 "lscp.y"  #line 231 "lscp.y"
3845      { (yyval.String) = LSCPSERVER->SetChannelSolo((yyvsp[(5) - (5)].Dotnum), (yyvsp[(3) - (5)].Number));            }      { (yyval.String) = LSCPSERVER->SetMidiInputPortParameter((yyvsp[(3) - (9)].Number), (yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].String), (yyvsp[(9) - (9)].String));      }
3846      break;      break;
3847    
3848    case 115:    case 115:
3849  #line 243 "lscp.y"  #line 232 "lscp.y"
3850      { (yyval.String) = LSCPSERVER->SetChannelMap((yyvsp[(3) - (5)].Number), (yyvsp[(5) - (5)].Number));             }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                         }
3851      break;      break;
3852    
3853    case 116:    case 116:
3854  #line 244 "lscp.y"  #line 233 "lscp.y"
3855      { (yyval.String) = LSCPSERVER->SetChannelMap((yyvsp[(3) - (5)].Number), -1);             }      { (yyval.String) = LSCPSERVER->SetMidiInstrumentMapName((yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].String));               }
3856      break;      break;
3857    
3858    case 117:    case 117:
3859  #line 245 "lscp.y"  #line 234 "lscp.y"
3860      { (yyval.String) = LSCPSERVER->SetChannelMap((yyvsp[(3) - (5)].Number), -2);             }      { (yyval.String) = LSCPSERVER->SetFxSendAudioOutputChannel((yyvsp[(5) - (11)].Number),(yyvsp[(7) - (11)].Number),(yyvsp[(9) - (11)].Number),(yyvsp[(11) - (11)].Number)); }
3861      break;      break;
3862    
3863    case 118:    case 118:
3864  #line 248 "lscp.y"  #line 235 "lscp.y"
3865      { (yyval.KeyValList)[(yyvsp[(1) - (3)].String)] = (yyvsp[(3) - (3)].String);          }      { (yyval.String) = LSCPSERVER->SetFxSendMidiController((yyvsp[(5) - (9)].Number),(yyvsp[(7) - (9)].Number),(yyvsp[(9) - (9)].Number));              }
3866      break;      break;
3867    
3868    case 119:    case 119:
3869  #line 249 "lscp.y"  #line 236 "lscp.y"
3870      { (yyval.KeyValList) = (yyvsp[(1) - (5)].KeyValList); (yyval.KeyValList)[(yyvsp[(3) - (5)].String)] = (yyvsp[(5) - (5)].String); }      { (yyval.String) = LSCPSERVER->SetFxSendLevel((yyvsp[(5) - (9)].Number),(yyvsp[(7) - (9)].Number),(yyvsp[(9) - (9)].Dotnum));                       }
3871      break;      break;
3872    
3873    case 120:    case 120:
3874  #line 252 "lscp.y"  #line 237 "lscp.y"
3875      { (yyval.FillResponse) = fill_response_bytes;      }      { (yyval.String) = LSCPSERVER->SetEcho((yyparse_param_t*) yyparse_param, (yyvsp[(3) - (3)].Dotnum));  }
3876      break;      break;
3877    
3878    case 121:    case 121:
3879  #line 253 "lscp.y"  #line 238 "lscp.y"
3880      { (yyval.FillResponse) = fill_response_percentage; }      { (yyval.String) = LSCPSERVER->SetGlobalVolume((yyvsp[(3) - (3)].Dotnum));                            }
3881      break;      break;
3882    
3883    case 122:    case 122:
3884  #line 256 "lscp.y"  #line 241 "lscp.y"
3885      { (yyval.String) = LSCPSERVER->GetAudioOutputDevices();           }      { (yyval.String) = LSCPSERVER->CreateAudioOutputDevice((yyvsp[(3) - (5)].String),(yyvsp[(5) - (5)].KeyValList)); }
3886      break;      break;
3887    
3888    case 123:    case 123:
3889  #line 257 "lscp.y"  #line 242 "lscp.y"
3890      { (yyval.String) = LSCPSERVER->GetMidiInputDevices();             }      { (yyval.String) = LSCPSERVER->CreateAudioOutputDevice((yyvsp[(3) - (3)].String));    }
3891      break;      break;
3892    
3893    case 124:    case 124:
3894  #line 258 "lscp.y"  #line 243 "lscp.y"
3895      { (yyval.String) = LSCPSERVER->ListChannels();                    }      { (yyval.String) = LSCPSERVER->CreateMidiInputDevice((yyvsp[(3) - (5)].String),(yyvsp[(5) - (5)].KeyValList));   }
3896      break;      break;
3897    
3898    case 125:    case 125:
3899  #line 259 "lscp.y"  #line 244 "lscp.y"
3900      { (yyval.String) = LSCPSERVER->ListAvailableEngines();            }      { (yyval.String) = LSCPSERVER->CreateMidiInputDevice((yyvsp[(3) - (3)].String));      }
3901      break;      break;
3902    
3903    case 126:    case 126:
3904  #line 260 "lscp.y"  #line 245 "lscp.y"
3905      { (yyval.String) = LSCPSERVER->ListAvailableMidiInputDrivers();   }      { (yyval.String) = LSCPSERVER->CreateFxSend((yyvsp[(3) - (5)].Number),(yyvsp[(5) - (5)].Number));            }
3906      break;      break;
3907    
3908    case 127:    case 127:
3909  #line 261 "lscp.y"  #line 246 "lscp.y"
3910      { (yyval.String) = LSCPSERVER->ListAvailableAudioOutputDrivers(); }      { (yyval.String) = LSCPSERVER->CreateFxSend((yyvsp[(3) - (7)].Number),(yyvsp[(5) - (7)].Number),(yyvsp[(7) - (7)].String)); }
3911      break;      break;
3912    
3913    case 128:    case 128:
3914  #line 262 "lscp.y"  #line 249 "lscp.y"
3915      { (yyval.String) = LSCPSERVER->ListMidiInstrumentMappings((yyvsp[(3) - (3)].Number));    }      { (yyval.String) = LSCPSERVER->ResetChannel((yyvsp[(3) - (3)].Number)); }
3916      break;      break;
3917    
3918    case 129:    case 129:
3919  #line 263 "lscp.y"  #line 252 "lscp.y"
3920      { (yyval.String) = LSCPSERVER->ListAllMidiInstrumentMappings();   }      { (yyval.String) = LSCPSERVER->ClearMidiInstrumentMappings((yyvsp[(3) - (3)].Number));  }
3921      break;      break;
3922    
3923    case 130:    case 130:
3924  #line 264 "lscp.y"  #line 253 "lscp.y"
3925      { (yyval.String) = LSCPSERVER->ListMidiInstrumentMaps();          }      { (yyval.String) = LSCPSERVER->ClearAllMidiInstrumentMappings(); }
3926      break;      break;
3927    
3928    case 131:    case 131:
3929  #line 267 "lscp.y"  #line 256 "lscp.y"
3930      { (yyval.String) = LSCPSERVER->LoadInstrument((yyvsp[(1) - (5)].String), (yyvsp[(3) - (5)].Number), (yyvsp[(5) - (5)].Number));       }      { (yyval.String) = LSCPSERVER->DestroyAudioOutputDevice((yyvsp[(3) - (3)].Number)); }
3931      break;      break;
3932    
3933    case 132:    case 132:
3934  #line 268 "lscp.y"  #line 257 "lscp.y"
3935      { (yyval.String) = LSCPSERVER->LoadInstrument((yyvsp[(3) - (7)].String), (yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].Number), true); }      { (yyval.String) = LSCPSERVER->DestroyMidiInputDevice((yyvsp[(3) - (3)].Number));   }
3936      break;      break;
3937    
3938    case 133:    case 133:
3939  #line 271 "lscp.y"  #line 258 "lscp.y"
3940      { (yyval.String) = LSCPSERVER->SetEngineType((yyvsp[(1) - (3)].String), (yyvsp[(3) - (3)].Number)); }      { (yyval.String) = LSCPSERVER->DestroyFxSend((yyvsp[(3) - (5)].Number),(yyvsp[(5) - (5)].Number)); }
3941      break;      break;
3942    
3943    case 134:    case 134:
3944  #line 274 "lscp.y"  #line 261 "lscp.y"
3945      { (yyval.LoadMode) = MidiInstrumentMapper::ON_DEMAND;      }      { (yyval.String) = (yyvsp[(3) - (3)].String); }
3946      break;      break;
3947    
3948    case 135:    case 135:
3949  #line 275 "lscp.y"  #line 262 "lscp.y"
3950      { (yyval.LoadMode) = MidiInstrumentMapper::ON_DEMAND_HOLD; }      { (yyval.String) = (yyvsp[(3) - (3)].String); }
3951      break;      break;
3952    
3953    case 136:    case 136:
3954  #line 276 "lscp.y"  #line 265 "lscp.y"
3955      { (yyval.LoadMode) = MidiInstrumentMapper::PERSISTENT;     }      { (yyval.String) = LSCPSERVER->SetAudioOutputDevice((yyvsp[(5) - (5)].Number), (yyvsp[(3) - (5)].Number));      }
3956        break;
3957    
3958      case 137:
3959    #line 266 "lscp.y"
3960        { (yyval.String) = LSCPSERVER->SetAudioOutputChannel((yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].Number), (yyvsp[(3) - (7)].Number)); }
3961        break;
3962    
3963      case 138:
3964    #line 267 "lscp.y"
3965        { (yyval.String) = LSCPSERVER->SetAudioOutputType((yyvsp[(5) - (5)].String), (yyvsp[(3) - (5)].Number));        }
3966        break;
3967    
3968      case 139:
3969    #line 268 "lscp.y"
3970        { (yyval.String) = LSCPSERVER->SetMIDIInput((yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].Number), (yyvsp[(9) - (9)].Number), (yyvsp[(3) - (9)].Number));      }
3971        break;
3972    
3973      case 140:
3974    #line 269 "lscp.y"
3975        { (yyval.String) = LSCPSERVER->SetMIDIInputDevice((yyvsp[(5) - (5)].Number), (yyvsp[(3) - (5)].Number));        }
3976        break;
3977    
3978      case 141:
3979    #line 270 "lscp.y"
3980        { (yyval.String) = LSCPSERVER->SetMIDIInputPort((yyvsp[(5) - (5)].Number), (yyvsp[(3) - (5)].Number));          }
3981      break;      break;
3982    
3983    case 142:    case 142:
3984  #line 292 "lscp.y"  #line 271 "lscp.y"
3985      { (yyval.Number) = 16; }      { (yyval.String) = LSCPSERVER->SetMIDIInputChannel((yyvsp[(5) - (5)].Number), (yyvsp[(3) - (5)].Number));       }
3986        break;
3987    
3988      case 143:
3989    #line 272 "lscp.y"
3990        { (yyval.String) = LSCPSERVER->SetMIDIInputType((yyvsp[(5) - (5)].String), (yyvsp[(3) - (5)].Number));          }
3991        break;
3992    
3993      case 144:
3994    #line 273 "lscp.y"
3995        { (yyval.String) = LSCPSERVER->SetVolume((yyvsp[(5) - (5)].Dotnum), (yyvsp[(3) - (5)].Number));                 }
3996        break;
3997    
3998      case 145:
3999    #line 274 "lscp.y"
4000        { (yyval.String) = LSCPSERVER->SetChannelMute((yyvsp[(5) - (5)].Dotnum), (yyvsp[(3) - (5)].Number));            }
4001        break;
4002    
4003      case 146:
4004    #line 275 "lscp.y"
4005        { (yyval.String) = LSCPSERVER->SetChannelSolo((yyvsp[(5) - (5)].Dotnum), (yyvsp[(3) - (5)].Number));            }
4006        break;
4007    
4008      case 147:
4009    #line 276 "lscp.y"
4010        { (yyval.String) = LSCPSERVER->SetChannelMap((yyvsp[(3) - (5)].Number), (yyvsp[(5) - (5)].Number));             }
4011      break;      break;
4012    
4013    case 148:    case 148:
4014  #line 308 "lscp.y"  #line 277 "lscp.y"
4015      { (yyval.Dotnum) = (yyvsp[(1) - (1)].Number); }      { (yyval.String) = LSCPSERVER->SetChannelMap((yyvsp[(3) - (5)].Number), -1);             }
4016        break;
4017    
4018      case 149:
4019    #line 278 "lscp.y"
4020        { (yyval.String) = LSCPSERVER->SetChannelMap((yyvsp[(3) - (5)].Number), -2);             }
4021        break;
4022    
4023      case 150:
4024    #line 281 "lscp.y"
4025        { (yyval.Bool) = true;  }
4026        break;
4027    
4028      case 151:
4029    #line 282 "lscp.y"
4030        { (yyval.Bool) = false; }
4031        break;
4032    
4033      case 152:
4034    #line 285 "lscp.y"
4035        { (yyval.KeyValList)[(yyvsp[(1) - (3)].String)] = (yyvsp[(3) - (3)].String);          }
4036        break;
4037    
4038      case 153:
4039    #line 286 "lscp.y"
4040        { (yyval.KeyValList) = (yyvsp[(1) - (5)].KeyValList); (yyval.KeyValList)[(yyvsp[(3) - (5)].String)] = (yyvsp[(5) - (5)].String); }
4041        break;
4042    
4043      case 154:
4044    #line 289 "lscp.y"
4045        { (yyval.FillResponse) = fill_response_bytes;      }
4046        break;
4047    
4048      case 155:
4049    #line 290 "lscp.y"
4050        { (yyval.FillResponse) = fill_response_percentage; }
4051      break;      break;
4052    
4053    case 156:    case 156:
4054  #line 330 "lscp.y"  #line 293 "lscp.y"
4055      { (yyval.String) = (yyvsp[(1) - (3)].String) + "," + (yyvsp[(3) - (3)].String); }      { (yyval.String) = LSCPSERVER->GetAudioOutputDevices();           }
4056        break;
4057    
4058      case 157:
4059    #line 294 "lscp.y"
4060        { (yyval.String) = LSCPSERVER->GetMidiInputDevices();             }
4061        break;
4062    
4063      case 158:
4064    #line 295 "lscp.y"
4065        { (yyval.String) = LSCPSERVER->ListChannels();                    }
4066      break;      break;
4067    
4068    case 159:    case 159:
4069  #line 335 "lscp.y"  #line 296 "lscp.y"
4070      { std::stringstream ss; ss << "\'" << (yyvsp[(1) - (1)].Number) << "\'"; (yyval.String) = ss.str(); }      { (yyval.String) = LSCPSERVER->ListAvailableEngines();            }
4071      break;      break;
4072    
4073    case 160:    case 160:
4074  #line 336 "lscp.y"  #line 297 "lscp.y"
4075      { std::stringstream ss; ss << "\'" << (yyvsp[(1) - (1)].Dotnum) << "\'"; (yyval.String) = ss.str(); }      { (yyval.String) = LSCPSERVER->ListAvailableMidiInputDrivers();   }
4076      break;      break;
4077    
4078    case 161:    case 161:
4079  #line 344 "lscp.y"  #line 298 "lscp.y"
4080      { (yyval.Dotnum) = (yyvsp[(1) - (1)].Number); }      { (yyval.String) = LSCPSERVER->ListAvailableAudioOutputDrivers(); }
4081      break;      break;
4082    
4083    case 162:    case 162:
4084  #line 345 "lscp.y"  #line 299 "lscp.y"
4085      { (yyval.Dotnum) = -1; }      { (yyval.String) = LSCPSERVER->ListMidiInstrumentMappings((yyvsp[(3) - (3)].Number));    }
4086      break;      break;
4087    
4088    case 163:    case 163:
4089  #line 348 "lscp.y"  #line 300 "lscp.y"
4090      { std::string s; s = (yyvsp[(1) - (1)].Char); (yyval.String) = s; }      { (yyval.String) = LSCPSERVER->ListAllMidiInstrumentMappings();   }
4091      break;      break;
4092    
4093    case 164:    case 164:
4094    #line 301 "lscp.y"
4095        { (yyval.String) = LSCPSERVER->ListMidiInstrumentMaps();          }
4096        break;
4097    
4098      case 165:
4099    #line 302 "lscp.y"
4100        { (yyval.String) = LSCPSERVER->ListFxSends((yyvsp[(3) - (3)].Number));                   }
4101        break;
4102    
4103      case 166:
4104    #line 305 "lscp.y"
4105        { (yyval.String) = LSCPSERVER->LoadInstrument((yyvsp[(1) - (5)].String), (yyvsp[(3) - (5)].Number), (yyvsp[(5) - (5)].Number));       }
4106        break;
4107    
4108      case 167:
4109    #line 306 "lscp.y"
4110        { (yyval.String) = LSCPSERVER->LoadInstrument((yyvsp[(3) - (7)].String), (yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].Number), true); }
4111        break;
4112    
4113      case 168:
4114    #line 309 "lscp.y"
4115        { (yyval.String) = LSCPSERVER->SetEngineType((yyvsp[(1) - (3)].String), (yyvsp[(3) - (3)].Number)); }
4116        break;
4117    
4118      case 169:
4119    #line 312 "lscp.y"
4120        { (yyval.LoadMode) = MidiInstrumentMapper::ON_DEMAND;      }
4121        break;
4122    
4123      case 170:
4124    #line 313 "lscp.y"
4125        { (yyval.LoadMode) = MidiInstrumentMapper::ON_DEMAND_HOLD; }
4126        break;
4127    
4128      case 171:
4129    #line 314 "lscp.y"
4130        { (yyval.LoadMode) = MidiInstrumentMapper::PERSISTENT;     }
4131        break;
4132    
4133      case 177:
4134    #line 330 "lscp.y"
4135        { (yyval.Number) = 16; }
4136        break;
4137    
4138      case 184:
4139  #line 349 "lscp.y"  #line 349 "lscp.y"
4140        { (yyval.Dotnum) = (yyvsp[(1) - (1)].Number); }
4141        break;
4142    
4143      case 194:
4144    #line 377 "lscp.y"
4145        { (yyval.String) = (yyvsp[(1) - (3)].String) + "," + (yyvsp[(3) - (3)].String); }
4146        break;
4147    
4148      case 197:
4149    #line 382 "lscp.y"
4150        { std::stringstream ss; ss << "\'" << (yyvsp[(1) - (1)].Number) << "\'"; (yyval.String) = ss.str(); }
4151        break;
4152    
4153      case 198:
4154    #line 383 "lscp.y"
4155        { std::stringstream ss; ss << "\'" << (yyvsp[(1) - (1)].Dotnum) << "\'"; (yyval.String) = ss.str(); }
4156        break;
4157    
4158      case 199:
4159    #line 391 "lscp.y"
4160        { (yyval.Dotnum) = (yyvsp[(1) - (1)].Number); }
4161        break;
4162    
4163      case 200:
4164    #line 392 "lscp.y"
4165        { (yyval.Dotnum) = -1; }
4166        break;
4167    
4168      case 201:
4169    #line 395 "lscp.y"
4170        { std::string s; s = (yyvsp[(1) - (1)].Char); (yyval.String) = s; }
4171        break;
4172    
4173      case 202:
4174    #line 396 "lscp.y"
4175      { (yyval.String) = (yyvsp[(1) - (2)].String) + (yyvsp[(2) - (2)].Char);                  }      { (yyval.String) = (yyvsp[(1) - (2)].String) + (yyvsp[(2) - (2)].Char);                  }
4176      break;      break;
4177    
4178    case 165:    case 203:
4179  #line 352 "lscp.y"  #line 399 "lscp.y"
4180      { (yyval.Dotnum) = atof(String((yyvsp[(1) - (3)].String) + "." + (yyvsp[(3) - (3)].String)).c_str());                         }      { (yyval.Dotnum) = atof(String((yyvsp[(1) - (3)].String) + "." + (yyvsp[(3) - (3)].String)).c_str());                         }
4181      break;      break;
4182    
4183    case 166:    case 204:
4184  #line 353 "lscp.y"  #line 400 "lscp.y"
4185      { String s = "+"; s += (yyvsp[(2) - (4)].String); s += "."; s += (yyvsp[(4) - (4)].String); (yyval.Dotnum) = atof(s.c_str()); }      { String s = "+"; s += (yyvsp[(2) - (4)].String); s += "."; s += (yyvsp[(4) - (4)].String); (yyval.Dotnum) = atof(s.c_str()); }
4186      break;      break;
4187    
4188    case 167:    case 205:
4189  #line 354 "lscp.y"  #line 401 "lscp.y"
4190      { (yyval.Dotnum) = atof(String("-" + (yyvsp[(2) - (4)].String) + "." + (yyvsp[(4) - (4)].String)).c_str());                   }      { (yyval.Dotnum) = atof(String("-" + (yyvsp[(2) - (4)].String) + "." + (yyvsp[(4) - (4)].String)).c_str());                   }
4191      break;      break;
4192    
4193    case 168:    case 206:
4194  #line 358 "lscp.y"  #line 405 "lscp.y"
4195      { (yyval.String) = (yyvsp[(1) - (1)].Char);      }      { (yyval.String) = (yyvsp[(1) - (1)].Char);      }
4196      break;      break;
4197    
4198    case 169:    case 207:
4199  #line 359 "lscp.y"  #line 406 "lscp.y"
4200      { (yyval.String) = (yyvsp[(1) - (2)].String) + (yyvsp[(2) - (2)].Char); }      { (yyval.String) = (yyvsp[(1) - (2)].String) + (yyvsp[(2) - (2)].Char); }
4201      break;      break;
4202    
4203    case 170:    case 208:
4204  #line 362 "lscp.y"  #line 409 "lscp.y"
4205      { (yyval.Char) = '0'; }      { (yyval.Char) = '0'; }
4206      break;      break;
4207    
4208    case 171:    case 209:
4209  #line 363 "lscp.y"  #line 410 "lscp.y"
4210      { (yyval.Char) = '1'; }      { (yyval.Char) = '1'; }
4211      break;      break;
4212    
4213    case 172:    case 210:
4214  #line 364 "lscp.y"  #line 411 "lscp.y"
4215      { (yyval.Char) = '2'; }      { (yyval.Char) = '2'; }
4216      break;      break;
4217    
4218    case 173:    case 211:
4219  #line 365 "lscp.y"  #line 412 "lscp.y"
4220      { (yyval.Char) = '3'; }      { (yyval.Char) = '3'; }
4221      break;      break;
4222    
4223    case 174:    case 212:
4224  #line 366 "lscp.y"  #line 413 "lscp.y"
4225      { (yyval.Char) = '4'; }      { (yyval.Char) = '4'; }
4226      break;      break;
4227    
4228    case 175:    case 213:
4229  #line 367 "lscp.y"  #line 414 "lscp.y"
4230      { (yyval.Char) = '5'; }      { (yyval.Char) = '5'; }
4231      break;      break;
4232    
4233    case 176:    case 214:
4234  #line 368 "lscp.y"  #line 415 "lscp.y"
4235      { (yyval.Char) = '6'; }      { (yyval.Char) = '6'; }
4236      break;      break;
4237    
4238    case 177:    case 215:
4239  #line 369 "lscp.y"  #line 416 "lscp.y"
4240      { (yyval.Char) = '7'; }      { (yyval.Char) = '7'; }
4241      break;      break;
4242    
4243    case 178:    case 216:
4244  #line 370 "lscp.y"  #line 417 "lscp.y"
4245      { (yyval.Char) = '8'; }      { (yyval.Char) = '8'; }
4246      break;      break;
4247    
4248    case 179:    case 217:
4249  #line 371 "lscp.y"  #line 418 "lscp.y"
4250      { (yyval.Char) = '9'; }      { (yyval.Char) = '9'; }
4251      break;      break;
4252    
4253    case 180:    case 218:
4254  #line 374 "lscp.y"  #line 421 "lscp.y"
4255      { (yyval.Number) = atoi(String(1, (yyvsp[(1) - (1)].Char)).c_str());      }      { (yyval.Number) = atoi(String(1, (yyvsp[(1) - (1)].Char)).c_str());      }
4256      break;      break;
4257    
4258    case 181:    case 219:
4259  #line 375 "lscp.y"  #line 422 "lscp.y"
4260      { (yyval.Number) = atoi(String(String("1") + (yyvsp[(2) - (2)].String)).c_str()); }      { (yyval.Number) = atoi(String(String("1") + (yyvsp[(2) - (2)].String)).c_str()); }
4261      break;      break;
4262    
4263    case 182:    case 220:
4264  #line 376 "lscp.y"  #line 423 "lscp.y"
4265      { (yyval.Number) = atoi(String(String("2") + (yyvsp[(2) - (2)].String)).c_str()); }      { (yyval.Number) = atoi(String(String("2") + (yyvsp[(2) - (2)].String)).c_str()); }
4266      break;      break;
4267    
4268    case 183:    case 221:
4269  #line 377 "lscp.y"  #line 424 "lscp.y"
4270      { (yyval.Number) = atoi(String(String("3") + (yyvsp[(2) - (2)].String)).c_str()); }      { (yyval.Number) = atoi(String(String("3") + (yyvsp[(2) - (2)].String)).c_str()); }
4271      break;      break;
4272    
4273    case 184:    case 222:
4274  #line 378 "lscp.y"  #line 425 "lscp.y"
4275      { (yyval.Number) = atoi(String(String("4") + (yyvsp[(2) - (2)].String)).c_str()); }      { (yyval.Number) = atoi(String(String("4") + (yyvsp[(2) - (2)].String)).c_str()); }
4276      break;      break;
4277    
4278    case 185:    case 223:
4279  #line 379 "lscp.y"  #line 426 "lscp.y"
4280      { (yyval.Number) = atoi(String(String("5") + (yyvsp[(2) - (2)].String)).c_str()); }      { (yyval.Number) = atoi(String(String("5") + (yyvsp[(2) - (2)].String)).c_str()); }
4281      break;      break;
4282    
4283    case 186:    case 224:
4284  #line 380 "lscp.y"  #line 427 "lscp.y"
4285      { (yyval.Number) = atoi(String(String("6") + (yyvsp[(2) - (2)].String)).c_str()); }      { (yyval.Number) = atoi(String(String("6") + (yyvsp[(2) - (2)].String)).c_str()); }
4286      break;      break;
4287    
4288    case 187:    case 225:
4289  #line 381 "lscp.y"  #line 428 "lscp.y"
4290      { (yyval.Number) = atoi(String(String("7") + (yyvsp[(2) - (2)].String)).c_str()); }      { (yyval.Number) = atoi(String(String("7") + (yyvsp[(2) - (2)].String)).c_str()); }
4291      break;      break;
4292    
4293    case 188:    case 226:
4294  #line 382 "lscp.y"  #line 429 "lscp.y"
4295      { (yyval.Number) = atoi(String(String("8") + (yyvsp[(2) - (2)].String)).c_str()); }      { (yyval.Number) = atoi(String(String("8") + (yyvsp[(2) - (2)].String)).c_str()); }
4296      break;      break;
4297    
4298    case 189:    case 227:
4299  #line 383 "lscp.y"  #line 430 "lscp.y"
4300      { (yyval.Number) = atoi(String(String("9") + (yyvsp[(2) - (2)].String)).c_str()); }      { (yyval.Number) = atoi(String(String("9") + (yyvsp[(2) - (2)].String)).c_str()); }
4301      break;      break;
4302    
4303    case 190:    case 228:
4304  #line 385 "lscp.y"  #line 432 "lscp.y"
4305      { (yyval.Char) = 'A'; }      { (yyval.Char) = 'A'; }
4306      break;      break;
4307    
4308    case 191:    case 229:
4309  #line 385 "lscp.y"  #line 432 "lscp.y"
4310      { (yyval.Char) = 'B'; }      { (yyval.Char) = 'B'; }
4311      break;      break;
4312    
4313    case 192:    case 230:
4314  #line 385 "lscp.y"  #line 432 "lscp.y"
4315      { (yyval.Char) = 'C'; }      { (yyval.Char) = 'C'; }
4316      break;      break;
4317    
4318    case 193:    case 231:
4319  #line 385 "lscp.y"  #line 432 "lscp.y"
4320      { (yyval.Char) = 'D'; }      { (yyval.Char) = 'D'; }
4321      break;      break;
4322    
4323    case 194:    case 232:
4324  #line 385 "lscp.y"  #line 432 "lscp.y"
4325      { (yyval.Char) = 'E'; }      { (yyval.Char) = 'E'; }
4326      break;      break;
4327    
4328    case 195:    case 233:
4329  #line 385 "lscp.y"  #line 432 "lscp.y"
4330      { (yyval.Char) = 'F'; }      { (yyval.Char) = 'F'; }
4331      break;      break;
4332    
4333    case 196:    case 234:
4334  #line 385 "lscp.y"  #line 432 "lscp.y"
4335      { (yyval.Char) = 'G'; }      { (yyval.Char) = 'G'; }
4336      break;      break;
4337    
4338    case 197:    case 235:
4339  #line 385 "lscp.y"  #line 432 "lscp.y"
4340      { (yyval.Char) = 'H'; }      { (yyval.Char) = 'H'; }
4341      break;      break;
4342    
4343    case 198:    case 236:
4344  #line 385 "lscp.y"  #line 432 "lscp.y"
4345      { (yyval.Char) = 'I'; }      { (yyval.Char) = 'I'; }
4346      break;      break;
4347    
4348    case 199:    case 237:
4349  #line 385 "lscp.y"  #line 432 "lscp.y"
4350      { (yyval.Char) = 'J'; }      { (yyval.Char) = 'J'; }
4351      break;      break;
4352    
4353    case 200:    case 238:
4354  #line 385 "lscp.y"  #line 432 "lscp.y"
4355      { (yyval.Char) = 'K'; }      { (yyval.Char) = 'K'; }
4356      break;      break;
4357    
4358    case 201:    case 239:
4359  #line 385 "lscp.y"  #line 432 "lscp.y"
4360      { (yyval.Char) = 'L'; }      { (yyval.Char) = 'L'; }
4361      break;      break;
4362    
4363    case 202:    case 240:
4364  #line 385 "lscp.y"  #line 432 "lscp.y"
4365      { (yyval.Char) = 'M'; }      { (yyval.Char) = 'M'; }
4366      break;      break;
4367    
4368    case 203:    case 241:
4369  #line 385 "lscp.y"  #line 432 "lscp.y"
4370      { (yyval.Char) = 'N'; }      { (yyval.Char) = 'N'; }
4371      break;      break;
4372    
4373    case 204:    case 242:
4374  #line 385 "lscp.y"  #line 432 "lscp.y"
4375      { (yyval.Char) = 'O'; }      { (yyval.Char) = 'O'; }
4376      break;      break;
4377    
4378    case 205:    case 243:
4379  #line 385 "lscp.y"  #line 432 "lscp.y"
4380      { (yyval.Char) = 'P'; }      { (yyval.Char) = 'P'; }
4381      break;      break;
4382    
4383    case 206:    case 244:
4384  #line 385 "lscp.y"  #line 432 "lscp.y"
4385      { (yyval.Char) = 'Q'; }      { (yyval.Char) = 'Q'; }
4386      break;      break;
4387    
4388    case 207:    case 245:
4389  #line 385 "lscp.y"  #line 432 "lscp.y"
4390      { (yyval.Char) = 'R'; }      { (yyval.Char) = 'R'; }
4391      break;      break;
4392    
4393    case 208:    case 246:
4394  #line 385 "lscp.y"  #line 432 "lscp.y"
4395      { (yyval.Char) = 'S'; }      { (yyval.Char) = 'S'; }
4396      break;      break;
4397    
4398    case 209:    case 247:
4399  #line 385 "lscp.y"  #line 432 "lscp.y"
4400      { (yyval.Char) = 'T'; }      { (yyval.Char) = 'T'; }
4401      break;      break;
4402    
4403    case 210:    case 248:
4404  #line 385 "lscp.y"  #line 432 "lscp.y"
4405      { (yyval.Char) = 'U'; }      { (yyval.Char) = 'U'; }
4406      break;      break;
4407    
4408    case 211:    case 249:
4409  #line 385 "lscp.y"  #line 432 "lscp.y"
4410      { (yyval.Char) = 'V'; }      { (yyval.Char) = 'V'; }
4411      break;      break;
4412    
4413    case 212:    case 250:
4414  #line 385 "lscp.y"  #line 432 "lscp.y"
4415      { (yyval.Char) = 'W'; }      { (yyval.Char) = 'W'; }
4416      break;      break;
4417    
4418    case 213:    case 251:
4419  #line 385 "lscp.y"  #line 432 "lscp.y"
4420      { (yyval.Char) = 'X'; }      { (yyval.Char) = 'X'; }
4421      break;      break;
4422    
4423    case 214:    case 252:
4424  #line 385 "lscp.y"  #line 432 "lscp.y"
4425      { (yyval.Char) = 'Y'; }      { (yyval.Char) = 'Y'; }
4426      break;      break;
4427    
4428    case 215:    case 253:
4429  #line 385 "lscp.y"  #line 432 "lscp.y"
4430      { (yyval.Char) = 'Z'; }      { (yyval.Char) = 'Z'; }
4431      break;      break;
4432    
4433    case 216:    case 254:
4434  #line 386 "lscp.y"  #line 433 "lscp.y"
4435      { (yyval.Char) = 'a'; }      { (yyval.Char) = 'a'; }
4436      break;      break;
4437    
4438    case 217:    case 255:
4439  #line 386 "lscp.y"  #line 433 "lscp.y"
4440      { (yyval.Char) = 'b'; }      { (yyval.Char) = 'b'; }
4441      break;      break;
4442    
4443    case 218:    case 256:
4444  #line 386 "lscp.y"  #line 433 "lscp.y"
4445      { (yyval.Char) = 'c'; }      { (yyval.Char) = 'c'; }
4446      break;      break;
4447    
4448    case 219:    case 257:
4449  #line 386 "lscp.y"  #line 433 "lscp.y"
4450      { (yyval.Char) = 'd'; }      { (yyval.Char) = 'd'; }
4451      break;      break;
4452    
4453    case 220:    case 258:
4454  #line 386 "lscp.y"  #line 433 "lscp.y"
4455      { (yyval.Char) = 'e'; }      { (yyval.Char) = 'e'; }
4456      break;      break;
4457    
4458    case 221:    case 259:
4459  #line 386 "lscp.y"  #line 433 "lscp.y"
4460      { (yyval.Char) = 'f'; }      { (yyval.Char) = 'f'; }
4461      break;      break;
4462    
4463    case 222:    case 260:
4464  #line 386 "lscp.y"  #line 433 "lscp.y"
4465      { (yyval.Char) = 'g'; }      { (yyval.Char) = 'g'; }
4466      break;      break;
4467    
4468    case 223:    case 261:
4469  #line 386 "lscp.y"  #line 433 "lscp.y"
4470      { (yyval.Char) = 'h'; }      { (yyval.Char) = 'h'; }
4471      break;      break;
4472    
4473    case 224:    case 262:
4474  #line 386 "lscp.y"  #line 433 "lscp.y"
4475      { (yyval.Char) = 'i'; }      { (yyval.Char) = 'i'; }
4476      break;      break;
4477    
4478    case 225:    case 263:
4479  #line 386 "lscp.y"  #line 433 "lscp.y"
4480      { (yyval.Char) = 'j'; }      { (yyval.Char) = 'j'; }
4481      break;      break;
4482    
4483    case 226:    case 264:
4484  #line 386 "lscp.y"  #line 433 "lscp.y"
4485      { (yyval.Char) = 'k'; }      { (yyval.Char) = 'k'; }
4486      break;      break;
4487    
4488    case 227:    case 265:
4489  #line 386 "lscp.y"  #line 433 "lscp.y"
4490      { (yyval.Char) = 'l'; }      { (yyval.Char) = 'l'; }
4491      break;      break;
4492    
4493    case 228:    case 266:
4494  #line 386 "lscp.y"  #line 433 "lscp.y"
4495      { (yyval.Char) = 'm'; }      { (yyval.Char) = 'm'; }
4496      break;      break;
4497    
4498    case 229:    case 267:
4499  #line 386 "lscp.y"  #line 433 "lscp.y"
4500      { (yyval.Char) = 'n'; }      { (yyval.Char) = 'n'; }
4501      break;      break;
4502    
4503    case 230:    case 268:
4504  #line 386 "lscp.y"  #line 433 "lscp.y"
4505      { (yyval.Char) = 'o'; }      { (yyval.Char) = 'o'; }
4506      break;      break;
4507    
4508    case 231:    case 269:
4509  #line 386 "lscp.y"  #line 433 "lscp.y"
4510      { (yyval.Char) = 'p'; }      { (yyval.Char) = 'p'; }
4511      break;      break;
4512    
4513    case 232:    case 270:
4514  #line 386 "lscp.y"  #line 433 "lscp.y"
4515      { (yyval.Char) = 'q'; }      { (yyval.Char) = 'q'; }
4516      break;      break;
4517    
4518    case 233:    case 271:
4519  #line 386 "lscp.y"  #line 433 "lscp.y"
4520      { (yyval.Char) = 'r'; }      { (yyval.Char) = 'r'; }
4521      break;      break;
4522    
4523    case 234:    case 272:
4524  #line 386 "lscp.y"  #line 433 "lscp.y"
4525      { (yyval.Char) = 's'; }      { (yyval.Char) = 's'; }
4526      break;      break;
4527    
4528    case 235:    case 273:
4529  #line 386 "lscp.y"  #line 433 "lscp.y"
4530      { (yyval.Char) = 't'; }      { (yyval.Char) = 't'; }
4531      break;      break;
4532    
4533    case 236:    case 274:
4534  #line 386 "lscp.y"  #line 433 "lscp.y"
4535      { (yyval.Char) = 'u'; }      { (yyval.Char) = 'u'; }
4536      break;      break;
4537    
4538    case 237:    case 275:
4539  #line 386 "lscp.y"  #line 433 "lscp.y"
4540      { (yyval.Char) = 'v'; }      { (yyval.Char) = 'v'; }
4541      break;      break;
4542    
4543    case 238:    case 276:
4544  #line 386 "lscp.y"  #line 433 "lscp.y"
4545      { (yyval.Char) = 'w'; }      { (yyval.Char) = 'w'; }
4546      break;      break;
4547    
4548    case 239:    case 277:
4549  #line 386 "lscp.y"  #line 433 "lscp.y"
4550      { (yyval.Char) = 'x'; }      { (yyval.Char) = 'x'; }
4551      break;      break;
4552    
4553    case 240:    case 278:
4554  #line 386 "lscp.y"  #line 433 "lscp.y"
4555      { (yyval.Char) = 'y'; }      { (yyval.Char) = 'y'; }
4556      break;      break;
4557    
4558    case 241:    case 279:
4559  #line 386 "lscp.y"  #line 433 "lscp.y"
4560      { (yyval.Char) = 'z'; }      { (yyval.Char) = 'z'; }
4561      break;      break;
4562    
4563    case 242:    case 280:
4564  #line 387 "lscp.y"  #line 434 "lscp.y"
4565      { (yyval.Char) = '0'; }      { (yyval.Char) = '0'; }
4566      break;      break;
4567    
4568    case 243:    case 281:
4569  #line 387 "lscp.y"  #line 434 "lscp.y"
4570      { (yyval.Char) = '1'; }      { (yyval.Char) = '1'; }
4571      break;      break;
4572    
4573    case 244:    case 282:
4574  #line 387 "lscp.y"  #line 434 "lscp.y"
4575      { (yyval.Char) = '2'; }      { (yyval.Char) = '2'; }
4576      break;      break;
4577    
4578    case 245:    case 283:
4579  #line 387 "lscp.y"  #line 434 "lscp.y"
4580      { (yyval.Char) = '3'; }      { (yyval.Char) = '3'; }
4581      break;      break;
4582    
4583    case 246:    case 284:
4584  #line 387 "lscp.y"  #line 434 "lscp.y"
4585      { (yyval.Char) = '4'; }      { (yyval.Char) = '4'; }
4586      break;      break;
4587    
4588    case 247:    case 285:
4589  #line 387 "lscp.y"  #line 434 "lscp.y"
4590      { (yyval.Char) = '5'; }      { (yyval.Char) = '5'; }
4591      break;      break;
4592    
4593    case 248:    case 286:
4594  #line 387 "lscp.y"  #line 434 "lscp.y"
4595      { (yyval.Char) = '6'; }      { (yyval.Char) = '6'; }
4596      break;      break;
4597    
4598    case 249:    case 287:
4599  #line 387 "lscp.y"  #line 434 "lscp.y"
4600      { (yyval.Char) = '7'; }      { (yyval.Char) = '7'; }
4601      break;      break;
4602    
4603    case 250:    case 288:
4604  #line 387 "lscp.y"  #line 434 "lscp.y"
4605      { (yyval.Char) = '8'; }      { (yyval.Char) = '8'; }
4606      break;      break;
4607    
4608    case 251:    case 289:
4609  #line 387 "lscp.y"  #line 434 "lscp.y"
4610      { (yyval.Char) = '9'; }      { (yyval.Char) = '9'; }
4611      break;      break;
4612    
4613    case 252:    case 290:
4614  #line 388 "lscp.y"  #line 435 "lscp.y"
4615      { (yyval.Char) = '!'; }      { (yyval.Char) = '!'; }
4616      break;      break;
4617    
4618    case 253:    case 291:
4619  #line 388 "lscp.y"  #line 435 "lscp.y"
4620      { (yyval.Char) = '#'; }      { (yyval.Char) = '#'; }
4621      break;      break;
4622    
4623    case 254:    case 292:
4624  #line 388 "lscp.y"  #line 435 "lscp.y"
4625      { (yyval.Char) = '$'; }      { (yyval.Char) = '$'; }
4626      break;      break;
4627    
4628    case 255:    case 293:
4629  #line 388 "lscp.y"  #line 435 "lscp.y"
4630      { (yyval.Char) = '%'; }      { (yyval.Char) = '%'; }
4631      break;      break;
4632    
4633    case 256:    case 294:
4634  #line 388 "lscp.y"  #line 435 "lscp.y"
4635      { (yyval.Char) = '&'; }      { (yyval.Char) = '&'; }
4636      break;      break;
4637    
4638    case 257:    case 295:
4639  #line 388 "lscp.y"  #line 435 "lscp.y"
4640      { (yyval.Char) = '('; }      { (yyval.Char) = '('; }
4641      break;      break;
4642    
4643    case 258:    case 296:
4644  #line 388 "lscp.y"  #line 435 "lscp.y"
4645      { (yyval.Char) = ')'; }      { (yyval.Char) = ')'; }
4646      break;      break;
4647    
4648    case 259:    case 297:
4649  #line 388 "lscp.y"  #line 435 "lscp.y"
4650      { (yyval.Char) = '*'; }      { (yyval.Char) = '*'; }
4651      break;      break;
4652    
4653    case 260:    case 298:
4654  #line 388 "lscp.y"  #line 435 "lscp.y"
4655      { (yyval.Char) = '+'; }      { (yyval.Char) = '+'; }
4656      break;      break;
4657    
4658    case 261:    case 299:
4659  #line 388 "lscp.y"  #line 435 "lscp.y"
4660      { (yyval.Char) = '-'; }      { (yyval.Char) = '-'; }
4661      break;      break;
4662    
4663    case 262:    case 300:
4664  #line 388 "lscp.y"  #line 435 "lscp.y"
4665      { (yyval.Char) = '.'; }      { (yyval.Char) = '.'; }
4666      break;      break;
4667    
4668    case 263:    case 301:
4669  #line 388 "lscp.y"  #line 435 "lscp.y"
4670      { (yyval.Char) = ','; }      { (yyval.Char) = ','; }
4671      break;      break;
4672    
4673    case 264:    case 302:
4674  #line 388 "lscp.y"  #line 435 "lscp.y"
4675      { (yyval.Char) = '/'; }      { (yyval.Char) = '/'; }
4676      break;      break;
4677    
4678    case 265:    case 303:
4679  #line 389 "lscp.y"  #line 436 "lscp.y"
4680      { (yyval.Char) = ':'; }      { (yyval.Char) = ':'; }
4681      break;      break;
4682    
4683    case 266:    case 304:
4684  #line 389 "lscp.y"  #line 436 "lscp.y"
4685      { (yyval.Char) = ';'; }      { (yyval.Char) = ';'; }
4686      break;      break;
4687    
4688    case 267:    case 305:
4689  #line 389 "lscp.y"  #line 436 "lscp.y"
4690      { (yyval.Char) = '<'; }      { (yyval.Char) = '<'; }
4691      break;      break;
4692    
4693    case 268:    case 306:
4694  #line 389 "lscp.y"  #line 436 "lscp.y"
4695      { (yyval.Char) = '='; }      { (yyval.Char) = '='; }
4696      break;      break;
4697    
4698    case 269:    case 307:
4699  #line 389 "lscp.y"  #line 436 "lscp.y"
4700      { (yyval.Char) = '>'; }      { (yyval.Char) = '>'; }
4701      break;      break;
4702    
4703    case 270:    case 308:
4704  #line 389 "lscp.y"  #line 436 "lscp.y"
4705      { (yyval.Char) = '?'; }      { (yyval.Char) = '?'; }
4706      break;      break;
4707    
4708    case 271:    case 309:
4709  #line 389 "lscp.y"  #line 436 "lscp.y"
4710      { (yyval.Char) = '@'; }      { (yyval.Char) = '@'; }
4711      break;      break;
4712    
4713    case 272:    case 310:
4714  #line 390 "lscp.y"  #line 437 "lscp.y"
4715      { (yyval.Char) = '['; }      { (yyval.Char) = '['; }
4716      break;      break;
4717    
4718    case 273:    case 311:
4719  #line 390 "lscp.y"  #line 437 "lscp.y"
4720      { (yyval.Char) = '\\'; }      { (yyval.Char) = '\\'; }
4721      break;      break;
4722    
4723    case 274:    case 312:
4724  #line 390 "lscp.y"  #line 437 "lscp.y"
4725      { (yyval.Char) = ']'; }      { (yyval.Char) = ']'; }
4726      break;      break;
4727    
4728    case 275:    case 313:
4729  #line 390 "lscp.y"  #line 437 "lscp.y"
4730      { (yyval.Char) = '^'; }      { (yyval.Char) = '^'; }
4731      break;      break;
4732    
4733    case 276:    case 314:
4734  #line 390 "lscp.y"  #line 437 "lscp.y"
4735      { (yyval.Char) = '_'; }      { (yyval.Char) = '_'; }
4736      break;      break;
4737    
4738    case 277:    case 315:
4739  #line 391 "lscp.y"  #line 438 "lscp.y"
4740      { (yyval.Char) = '{'; }      { (yyval.Char) = '{'; }
4741      break;      break;
4742    
4743    case 278:    case 316:
4744  #line 391 "lscp.y"  #line 438 "lscp.y"
4745      { (yyval.Char) = '|'; }      { (yyval.Char) = '|'; }
4746      break;      break;
4747    
4748    case 279:    case 317:
4749  #line 391 "lscp.y"  #line 438 "lscp.y"
4750      { (yyval.Char) = '}'; }      { (yyval.Char) = '}'; }
4751      break;      break;
4752    
4753    case 280:    case 318:
4754  #line 391 "lscp.y"  #line 438 "lscp.y"
4755      { (yyval.Char) = '~'; }      { (yyval.Char) = '~'; }
4756      break;      break;
4757    
4758    case 281:    case 319:
4759  #line 392 "lscp.y"  #line 439 "lscp.y"
4760      { (yyval.Char) = '\200'; }      { (yyval.Char) = '\200'; }
4761      break;      break;
4762    
4763    case 282:    case 320:
4764  #line 392 "lscp.y"  #line 439 "lscp.y"
4765      { (yyval.Char) = '\201'; }      { (yyval.Char) = '\201'; }
4766      break;      break;
4767    
4768    case 283:    case 321:
4769  #line 392 "lscp.y"  #line 439 "lscp.y"
4770      { (yyval.Char) = '\202'; }      { (yyval.Char) = '\202'; }
4771      break;      break;
4772    
4773    case 284:    case 322:
4774  #line 393 "lscp.y"  #line 440 "lscp.y"
4775      { (yyval.Char) = '\203'; }      { (yyval.Char) = '\203'; }
4776      break;      break;
4777    
4778    case 285:    case 323:
4779  #line 393 "lscp.y"  #line 440 "lscp.y"
4780      { (yyval.Char) = '\204'; }      { (yyval.Char) = '\204'; }
4781      break;      break;
4782    
4783    case 286:    case 324:
4784  #line 393 "lscp.y"  #line 440 "lscp.y"
4785      { (yyval.Char) = '\205'; }      { (yyval.Char) = '\205'; }
4786      break;      break;
4787    
4788    case 287:    case 325:
4789  #line 394 "lscp.y"  #line 441 "lscp.y"
4790      { (yyval.Char) = '\206'; }      { (yyval.Char) = '\206'; }
4791      break;      break;
4792    
4793    case 288:    case 326:
4794  #line 394 "lscp.y"  #line 441 "lscp.y"
4795      { (yyval.Char) = '\207'; }      { (yyval.Char) = '\207'; }
4796      break;      break;
4797    
4798    case 289:    case 327:
4799  #line 394 "lscp.y"  #line 441 "lscp.y"
4800      { (yyval.Char) = '\210'; }      { (yyval.Char) = '\210'; }
4801      break;      break;
4802    
4803    case 290:    case 328:
4804  #line 395 "lscp.y"  #line 442 "lscp.y"
4805      { (yyval.Char) = '\211'; }      { (yyval.Char) = '\211'; }
4806      break;      break;
4807    
4808    case 291:    case 329:
4809  #line 395 "lscp.y"  #line 442 "lscp.y"
4810      { (yyval.Char) = '\212'; }      { (yyval.Char) = '\212'; }
4811      break;      break;
4812    
4813    case 292:    case 330:
4814  #line 395 "lscp.y"  #line 442 "lscp.y"
4815      { (yyval.Char) = '\213'; }      { (yyval.Char) = '\213'; }
4816      break;      break;
4817    
4818    case 293:    case 331:
4819  #line 396 "lscp.y"  #line 443 "lscp.y"
4820      { (yyval.Char) = '\214'; }      { (yyval.Char) = '\214'; }
4821      break;      break;
4822    
4823    case 294:    case 332:
4824  #line 396 "lscp.y"  #line 443 "lscp.y"
4825      { (yyval.Char) = '\215'; }      { (yyval.Char) = '\215'; }
4826      break;      break;
4827    
4828    case 295:    case 333:
4829  #line 396 "lscp.y"  #line 443 "lscp.y"
4830      { (yyval.Char) = '\216'; }      { (yyval.Char) = '\216'; }
4831      break;      break;
4832    
4833    case 296:    case 334:
4834  #line 397 "lscp.y"  #line 444 "lscp.y"
4835      { (yyval.Char) = '\217'; }      { (yyval.Char) = '\217'; }
4836      break;      break;
4837    
4838    case 297:    case 335:
4839  #line 397 "lscp.y"  #line 444 "lscp.y"
4840      { (yyval.Char) = '\220'; }      { (yyval.Char) = '\220'; }
4841      break;      break;
4842    
4843    case 298:    case 336:
4844  #line 397 "lscp.y"  #line 444 "lscp.y"
4845      { (yyval.Char) = '\221'; }      { (yyval.Char) = '\221'; }
4846      break;      break;
4847    
4848    case 299:    case 337:
4849  #line 398 "lscp.y"  #line 445 "lscp.y"
4850      { (yyval.Char) = '\222'; }      { (yyval.Char) = '\222'; }
4851      break;      break;
4852    
4853    case 300:    case 338:
4854  #line 398 "lscp.y"  #line 445 "lscp.y"
4855      { (yyval.Char) = '\223'; }      { (yyval.Char) = '\223'; }
4856      break;      break;
4857    
4858    case 301:    case 339:
4859  #line 398 "lscp.y"  #line 445 "lscp.y"
4860      { (yyval.Char) = '\224'; }      { (yyval.Char) = '\224'; }
4861      break;      break;
4862    
4863    case 302:    case 340:
4864  #line 399 "lscp.y"  #line 446 "lscp.y"
4865      { (yyval.Char) = '\225'; }      { (yyval.Char) = '\225'; }
4866      break;      break;
4867    
4868    case 303:    case 341:
4869  #line 399 "lscp.y"  #line 446 "lscp.y"
4870      { (yyval.Char) = '\226'; }      { (yyval.Char) = '\226'; }
4871      break;      break;
4872    
4873    case 304:    case 342:
4874  #line 399 "lscp.y"  #line 446 "lscp.y"
4875      { (yyval.Char) = '\227'; }      { (yyval.Char) = '\227'; }
4876      break;      break;
4877    
4878    case 305:    case 343:
4879  #line 400 "lscp.y"  #line 447 "lscp.y"
4880      { (yyval.Char) = '\230'; }      { (yyval.Char) = '\230'; }
4881      break;      break;
4882    
4883    case 306:    case 344:
4884  #line 400 "lscp.y"  #line 447 "lscp.y"
4885      { (yyval.Char) = '\231'; }      { (yyval.Char) = '\231'; }
4886      break;      break;
4887    
4888    case 307:    case 345:
4889  #line 400 "lscp.y"  #line 447 "lscp.y"
4890      { (yyval.Char) = '\232'; }      { (yyval.Char) = '\232'; }
4891      break;      break;
4892    
4893    case 308:    case 346:
4894  #line 401 "lscp.y"  #line 448 "lscp.y"
4895      { (yyval.Char) = '\233'; }      { (yyval.Char) = '\233'; }
4896      break;      break;
4897    
4898    case 309:    case 347:
4899  #line 401 "lscp.y"  #line 448 "lscp.y"
4900      { (yyval.Char) = '\234'; }      { (yyval.Char) = '\234'; }
4901      break;      break;
4902    
4903    case 310:    case 348:
4904  #line 401 "lscp.y"  #line 448 "lscp.y"
4905      { (yyval.Char) = '\235'; }      { (yyval.Char) = '\235'; }
4906      break;      break;
4907    
4908    case 311:    case 349:
4909  #line 402 "lscp.y"  #line 449 "lscp.y"
4910      { (yyval.Char) = '\236'; }      { (yyval.Char) = '\236'; }
4911      break;      break;
4912    
4913    case 312:    case 350:
4914  #line 402 "lscp.y"  #line 449 "lscp.y"
4915      { (yyval.Char) = '\237'; }      { (yyval.Char) = '\237'; }
4916      break;      break;
4917    
4918    case 313:    case 351:
4919  #line 402 "lscp.y"  #line 449 "lscp.y"
4920      { (yyval.Char) = '\240'; }      { (yyval.Char) = '\240'; }
4921      break;      break;
4922    
4923    case 314:    case 352:
4924  #line 403 "lscp.y"  #line 450 "lscp.y"
4925      { (yyval.Char) = '\241'; }      { (yyval.Char) = '\241'; }
4926      break;      break;
4927    
4928    case 315:    case 353:
4929  #line 403 "lscp.y"  #line 450 "lscp.y"
4930      { (yyval.Char) = '\242'; }      { (yyval.Char) = '\242'; }
4931      break;      break;
4932    
4933    case 316:    case 354:
4934  #line 403 "lscp.y"  #line 450 "lscp.y"
4935      { (yyval.Char) = '\243'; }      { (yyval.Char) = '\243'; }
4936      break;      break;
4937    
4938    case 317:    case 355:
4939  #line 404 "lscp.y"  #line 451 "lscp.y"
4940      { (yyval.Char) = '\244'; }      { (yyval.Char) = '\244'; }
4941      break;      break;
4942    
4943    case 318:    case 356:
4944  #line 404 "lscp.y"  #line 451 "lscp.y"
4945      { (yyval.Char) = '\245'; }      { (yyval.Char) = '\245'; }
4946      break;      break;
4947    
4948    case 319:    case 357:
4949  #line 404 "lscp.y"  #line 451 "lscp.y"
4950      { (yyval.Char) = '\246'; }      { (yyval.Char) = '\246'; }
4951      break;      break;
4952    
4953    case 320:    case 358:
4954  #line 405 "lscp.y"  #line 452 "lscp.y"
4955      { (yyval.Char) = '\247'; }      { (yyval.Char) = '\247'; }
4956      break;      break;
4957    
4958    case 321:    case 359:
4959  #line 405 "lscp.y"  #line 452 "lscp.y"
4960      { (yyval.Char) = '\250'; }      { (yyval.Char) = '\250'; }
4961      break;      break;
4962    
4963    case 322:    case 360:
4964  #line 405 "lscp.y"  #line 452 "lscp.y"
4965      { (yyval.Char) = '\251'; }      { (yyval.Char) = '\251'; }
4966      break;      break;
4967    
4968    case 323:    case 361:
4969  #line 406 "lscp.y"  #line 453 "lscp.y"
4970      { (yyval.Char) = '\252'; }      { (yyval.Char) = '\252'; }
4971      break;      break;
4972    
4973    case 324:    case 362:
4974  #line 406 "lscp.y"  #line 453 "lscp.y"
4975      { (yyval.Char) = '\253'; }      { (yyval.Char) = '\253'; }
4976      break;      break;
4977    
4978    case 325:    case 363:
4979  #line 406 "lscp.y"  #line 453 "lscp.y"
4980      { (yyval.Char) = '\254'; }      { (yyval.Char) = '\254'; }
4981      break;      break;
4982    
4983    case 326:    case 364:
4984  #line 407 "lscp.y"  #line 454 "lscp.y"
4985      { (yyval.Char) = '\255'; }      { (yyval.Char) = '\255'; }
4986      break;      break;
4987    
4988    case 327:    case 365:
4989  #line 407 "lscp.y"  #line 454 "lscp.y"
4990      { (yyval.Char) = '\256'; }      { (yyval.Char) = '\256'; }
4991      break;      break;
4992    
4993    case 328:    case 366:
4994  #line 407 "lscp.y"  #line 454 "lscp.y"
4995      { (yyval.Char) = '\257'; }      { (yyval.Char) = '\257'; }
4996      break;      break;
4997    
4998    case 329:    case 367:
4999  #line 408 "lscp.y"  #line 455 "lscp.y"
5000      { (yyval.Char) = '\260'; }      { (yyval.Char) = '\260'; }
5001      break;      break;
5002    
5003    case 330:    case 368:
5004  #line 408 "lscp.y"  #line 455 "lscp.y"
5005      { (yyval.Char) = '\261'; }      { (yyval.Char) = '\261'; }
5006      break;      break;
5007    
5008    case 331:    case 369:
5009  #line 408 "lscp.y"  #line 455 "lscp.y"
5010      { (yyval.Char) = '\262'; }      { (yyval.Char) = '\262'; }
5011      break;      break;
5012    
5013    case 332:    case 370:
5014  #line 409 "lscp.y"  #line 456 "lscp.y"
5015      { (yyval.Char) = '\263'; }      { (yyval.Char) = '\263'; }
5016      break;      break;
5017    
5018    case 333:    case 371:
5019  #line 409 "lscp.y"  #line 456 "lscp.y"
5020      { (yyval.Char) = '\264'; }      { (yyval.Char) = '\264'; }
5021      break;      break;
5022    
5023    case 334:    case 372:
5024  #line 409 "lscp.y"  #line 456 "lscp.y"
5025      { (yyval.Char) = '\265'; }      { (yyval.Char) = '\265'; }
5026      break;      break;
5027    
5028    case 335:    case 373:
5029  #line 410 "lscp.y"  #line 457 "lscp.y"
5030      { (yyval.Char) = '\266'; }      { (yyval.Char) = '\266'; }
5031      break;      break;
5032    
5033    case 336:    case 374:
5034  #line 410 "lscp.y"  #line 457 "lscp.y"
5035      { (yyval.Char) = '\267'; }      { (yyval.Char) = '\267'; }
5036      break;      break;
5037    
5038    case 337:    case 375:
5039  #line 410 "lscp.y"  #line 457 "lscp.y"
5040      { (yyval.Char) = '\270'; }      { (yyval.Char) = '\270'; }
5041      break;      break;
5042    
5043    case 338:    case 376:
5044  #line 411 "lscp.y"  #line 458 "lscp.y"
5045      { (yyval.Char) = '\271'; }      { (yyval.Char) = '\271'; }
5046      break;      break;
5047    
5048    case 339:    case 377:
5049  #line 411 "lscp.y"  #line 458 "lscp.y"
5050      { (yyval.Char) = '\272'; }      { (yyval.Char) = '\272'; }
5051      break;      break;
5052    
5053    case 340:    case 378:
5054  #line 411 "lscp.y"  #line 458 "lscp.y"
5055      { (yyval.Char) = '\273'; }      { (yyval.Char) = '\273'; }
5056      break;      break;
5057    
5058    case 341:    case 379:
5059  #line 412 "lscp.y"  #line 459 "lscp.y"
5060      { (yyval.Char) = '\274'; }      { (yyval.Char) = '\274'; }
5061      break;      break;
5062    
5063    case 342:    case 380:
5064  #line 412 "lscp.y"  #line 459 "lscp.y"
5065      { (yyval.Char) = '\275'; }      { (yyval.Char) = '\275'; }
5066      break;      break;
5067    
5068    case 343:    case 381:
5069  #line 412 "lscp.y"  #line 459 "lscp.y"
5070      { (yyval.Char) = '\276'; }      { (yyval.Char) = '\276'; }
5071      break;      break;
5072    
5073    case 344:    case 382:
5074  #line 413 "lscp.y"  #line 460 "lscp.y"
5075      { (yyval.Char) = '\277'; }      { (yyval.Char) = '\277'; }
5076      break;      break;
5077    
5078    case 345:    case 383:
5079  #line 413 "lscp.y"  #line 460 "lscp.y"
5080      { (yyval.Char) = '\300'; }      { (yyval.Char) = '\300'; }
5081      break;      break;
5082    
5083    case 346:    case 384:
5084  #line 413 "lscp.y"  #line 460 "lscp.y"
5085      { (yyval.Char) = '\301'; }      { (yyval.Char) = '\301'; }
5086      break;      break;
5087    
5088    case 347:    case 385:
5089  #line 414 "lscp.y"  #line 461 "lscp.y"
5090      { (yyval.Char) = '\302'; }      { (yyval.Char) = '\302'; }
5091      break;      break;
5092    
5093    case 348:    case 386:
5094  #line 414 "lscp.y"  #line 461 "lscp.y"
5095      { (yyval.Char) = '\303'; }      { (yyval.Char) = '\303'; }
5096      break;      break;
5097    
5098    case 349:    case 387:
5099  #line 414 "lscp.y"  #line 461 "lscp.y"
5100      { (yyval.Char) = '\304'; }      { (yyval.Char) = '\304'; }
5101      break;      break;
5102    
5103    case 350:    case 388:
5104  #line 415 "lscp.y"  #line 462 "lscp.y"
5105      { (yyval.Char) = '\305'; }      { (yyval.Char) = '\305'; }
5106      break;      break;
5107    
5108    case 351:    case 389:
5109  #line 415 "lscp.y"  #line 462 "lscp.y"
5110      { (yyval.Char) = '\306'; }      { (yyval.Char) = '\306'; }
5111      break;      break;
5112    
5113    case 352:    case 390:
5114  #line 415 "lscp.y"  #line 462 "lscp.y"
5115      { (yyval.Char) = '\307'; }      { (yyval.Char) = '\307'; }
5116      break;      break;
5117    
5118    case 353:    case 391:
5119  #line 416 "lscp.y"  #line 463 "lscp.y"
5120      { (yyval.Char) = '\310'; }      { (yyval.Char) = '\310'; }
5121      break;      break;
5122    
5123    case 354:    case 392:
5124  #line 416 "lscp.y"  #line 463 "lscp.y"
5125      { (yyval.Char) = '\311'; }      { (yyval.Char) = '\311'; }
5126      break;      break;
5127    
5128    case 355:    case 393:
5129  #line 416 "lscp.y"  #line 463 "lscp.y"
5130      { (yyval.Char) = '\312'; }      { (yyval.Char) = '\312'; }
5131      break;      break;
5132    
5133    case 356:    case 394:
5134  #line 417 "lscp.y"  #line 464 "lscp.y"
5135      { (yyval.Char) = '\313'; }      { (yyval.Char) = '\313'; }
5136      break;      break;
5137    
5138    case 357:    case 395:
5139  #line 417 "lscp.y"  #line 464 "lscp.y"
5140      { (yyval.Char) = '\314'; }      { (yyval.Char) = '\314'; }
5141      break;      break;
5142    
5143    case 358:    case 396:
5144  #line 417 "lscp.y"  #line 464 "lscp.y"
5145      { (yyval.Char) = '\315'; }      { (yyval.Char) = '\315'; }
5146      break;      break;
5147    
5148    case 359:    case 397:
5149  #line 418 "lscp.y"  #line 465 "lscp.y"
5150      { (yyval.Char) = '\316'; }      { (yyval.Char) = '\316'; }
5151      break;      break;
5152    
5153    case 360:    case 398:
5154  #line 418 "lscp.y"  #line 465 "lscp.y"
5155      { (yyval.Char) = '\317'; }      { (yyval.Char) = '\317'; }
5156      break;      break;
5157    
5158    case 361:    case 399:
5159  #line 418 "lscp.y"  #line 465 "lscp.y"
5160      { (yyval.Char) = '\320'; }      { (yyval.Char) = '\320'; }
5161      break;      break;
5162    
5163    case 362:    case 400:
5164  #line 419 "lscp.y"  #line 466 "lscp.y"
5165      { (yyval.Char) = '\321'; }      { (yyval.Char) = '\321'; }
5166      break;      break;
5167    
5168    case 363:    case 401:
5169  #line 419 "lscp.y"  #line 466 "lscp.y"
5170      { (yyval.Char) = '\322'; }      { (yyval.Char) = '\322'; }
5171      break;      break;
5172    
5173    case 364:    case 402:
5174  #line 419 "lscp.y"  #line 466 "lscp.y"
5175      { (yyval.Char) = '\323'; }      { (yyval.Char) = '\323'; }
5176      break;      break;
5177    
5178    case 365:    case 403:
5179  #line 420 "lscp.y"  #line 467 "lscp.y"
5180      { (yyval.Char) = '\324'; }      { (yyval.Char) = '\324'; }
5181      break;      break;
5182    
5183    case 366:    case 404:
5184  #line 420 "lscp.y"  #line 467 "lscp.y"
5185      { (yyval.Char) = '\325'; }      { (yyval.Char) = '\325'; }
5186      break;      break;
5187    
5188    case 367:    case 405:
5189  #line 420 "lscp.y"  #line 467 "lscp.y"
5190      { (yyval.Char) = '\326'; }      { (yyval.Char) = '\326'; }
5191      break;      break;
5192    
5193    case 368:    case 406:
5194  #line 421 "lscp.y"  #line 468 "lscp.y"
5195      { (yyval.Char) = '\327'; }      { (yyval.Char) = '\327'; }
5196      break;      break;
5197    
5198    case 369:    case 407:
5199  #line 421 "lscp.y"  #line 468 "lscp.y"
5200      { (yyval.Char) = '\330'; }      { (yyval.Char) = '\330'; }
5201      break;      break;
5202    
5203    case 370:    case 408:
5204  #line 421 "lscp.y"  #line 468 "lscp.y"
5205      { (yyval.Char) = '\331'; }      { (yyval.Char) = '\331'; }
5206      break;      break;
5207    
5208    case 371:    case 409:
5209  #line 422 "lscp.y"  #line 469 "lscp.y"
5210      { (yyval.Char) = '\332'; }      { (yyval.Char) = '\332'; }
5211      break;      break;
5212    
5213    case 372:    case 410:
5214  #line 422 "lscp.y"  #line 469 "lscp.y"
5215      { (yyval.Char) = '\333'; }      { (yyval.Char) = '\333'; }
5216      break;      break;
5217    
5218    case 373:    case 411:
5219  #line 422 "lscp.y"  #line 469 "lscp.y"
5220      { (yyval.Char) = '\334'; }      { (yyval.Char) = '\334'; }
5221      break;      break;
5222    
5223    case 374:    case 412:
5224  #line 423 "lscp.y"  #line 470 "lscp.y"
5225      { (yyval.Char) = '\335'; }      { (yyval.Char) = '\335'; }
5226      break;      break;
5227    
5228    case 375:    case 413:
5229  #line 423 "lscp.y"  #line 470 "lscp.y"
5230      { (yyval.Char) = '\336'; }      { (yyval.Char) = '\336'; }
5231      break;      break;
5232    
5233    case 376:    case 414:
5234  #line 423 "lscp.y"  #line 470 "lscp.y"
5235      { (yyval.Char) = '\337'; }      { (yyval.Char) = '\337'; }
5236      break;      break;
5237    
5238    case 377:    case 415:
5239  #line 424 "lscp.y"  #line 471 "lscp.y"
5240      { (yyval.Char) = '\340'; }      { (yyval.Char) = '\340'; }
5241      break;      break;
5242    
5243    case 378:    case 416:
5244  #line 424 "lscp.y"  #line 471 "lscp.y"
5245      { (yyval.Char) = '\341'; }      { (yyval.Char) = '\341'; }
5246      break;      break;
5247    
5248    case 379:    case 417:
5249  #line 424 "lscp.y"  #line 471 "lscp.y"
5250      { (yyval.Char) = '\342'; }      { (yyval.Char) = '\342'; }
5251      break;      break;
5252    
5253    case 380:    case 418:
5254  #line 425 "lscp.y"  #line 472 "lscp.y"
5255      { (yyval.Char) = '\343'; }      { (yyval.Char) = '\343'; }
5256      break;      break;
5257    
5258    case 381:    case 419:
5259  #line 425 "lscp.y"  #line 472 "lscp.y"
5260      { (yyval.Char) = '\344'; }      { (yyval.Char) = '\344'; }
5261      break;      break;
5262    
5263    case 382:    case 420:
5264  #line 425 "lscp.y"  #line 472 "lscp.y"
5265      { (yyval.Char) = '\345'; }      { (yyval.Char) = '\345'; }
5266      break;      break;
5267    
5268    case 383:    case 421:
5269  #line 426 "lscp.y"  #line 473 "lscp.y"
5270      { (yyval.Char) = '\346'; }      { (yyval.Char) = '\346'; }
5271      break;      break;
5272    
5273    case 384:    case 422:
5274  #line 426 "lscp.y"  #line 473 "lscp.y"
5275      { (yyval.Char) = '\347'; }      { (yyval.Char) = '\347'; }
5276      break;      break;
5277    
5278    case 385:    case 423:
5279  #line 426 "lscp.y"  #line 473 "lscp.y"
5280      { (yyval.Char) = '\350'; }      { (yyval.Char) = '\350'; }
5281      break;      break;
5282    
5283    case 386:    case 424:
5284  #line 427 "lscp.y"  #line 474 "lscp.y"
5285      { (yyval.Char) = '\351'; }      { (yyval.Char) = '\351'; }
5286      break;      break;
5287    
5288    case 387:    case 425:
5289  #line 427 "lscp.y"  #line 474 "lscp.y"
5290      { (yyval.Char) = '\352'; }      { (yyval.Char) = '\352'; }
5291      break;      break;
5292    
5293    case 388:    case 426:
5294  #line 427 "lscp.y"  #line 474 "lscp.y"
5295      { (yyval.Char) = '\353'; }      { (yyval.Char) = '\353'; }
5296      break;      break;
5297    
5298    case 389:    case 427:
5299  #line 428 "lscp.y"  #line 475 "lscp.y"
5300      { (yyval.Char) = '\354'; }      { (yyval.Char) = '\354'; }
5301      break;      break;
5302    
5303    case 390:    case 428:
5304  #line 428 "lscp.y"  #line 475 "lscp.y"
5305      { (yyval.Char) = '\355'; }      { (yyval.Char) = '\355'; }
5306      break;      break;
5307    
5308    case 391:    case 429:
5309  #line 428 "lscp.y"  #line 475 "lscp.y"
5310      { (yyval.Char) = '\356'; }      { (yyval.Char) = '\356'; }
5311      break;      break;
5312    
5313    case 392:    case 430:
5314  #line 429 "lscp.y"  #line 476 "lscp.y"
5315      { (yyval.Char) = '\357'; }      { (yyval.Char) = '\357'; }
5316      break;      break;
5317    
5318    case 393:    case 431:
5319  #line 429 "lscp.y"  #line 476 "lscp.y"
5320      { (yyval.Char) = '\360'; }      { (yyval.Char) = '\360'; }
5321      break;      break;
5322    
5323    case 394:    case 432:
5324  #line 429 "lscp.y"  #line 476 "lscp.y"
5325      { (yyval.Char) = '\361'; }      { (yyval.Char) = '\361'; }
5326      break;      break;
5327    
5328    case 395:    case 433:
5329  #line 430 "lscp.y"  #line 477 "lscp.y"
5330      { (yyval.Char) = '\362'; }      { (yyval.Char) = '\362'; }
5331      break;      break;
5332    
5333    case 396:    case 434:
5334  #line 430 "lscp.y"  #line 477 "lscp.y"
5335      { (yyval.Char) = '\363'; }      { (yyval.Char) = '\363'; }
5336      break;      break;
5337    
5338    case 397:    case 435:
5339  #line 430 "lscp.y"  #line 477 "lscp.y"
5340      { (yyval.Char) = '\364'; }      { (yyval.Char) = '\364'; }
5341      break;      break;
5342    
5343    case 398:    case 436:
5344  #line 431 "lscp.y"  #line 478 "lscp.y"
5345      { (yyval.Char) = '\365'; }      { (yyval.Char) = '\365'; }
5346      break;      break;
5347    
5348    case 399:    case 437:
5349  #line 431 "lscp.y"  #line 478 "lscp.y"
5350      { (yyval.Char) = '\366'; }      { (yyval.Char) = '\366'; }
5351      break;      break;
5352    
5353    case 400:    case 438:
5354  #line 431 "lscp.y"  #line 478 "lscp.y"
5355      { (yyval.Char) = '\367'; }      { (yyval.Char) = '\367'; }
5356      break;      break;
5357    
5358    case 401:    case 439:
5359  #line 432 "lscp.y"  #line 479 "lscp.y"
5360      { (yyval.Char) = '\370'; }      { (yyval.Char) = '\370'; }
5361      break;      break;
5362    
5363    case 402:    case 440:
5364  #line 432 "lscp.y"  #line 479 "lscp.y"
5365      { (yyval.Char) = '\371'; }      { (yyval.Char) = '\371'; }
5366      break;      break;
5367    
5368    case 403:    case 441:
5369  #line 432 "lscp.y"  #line 479 "lscp.y"
5370      { (yyval.Char) = '\372'; }      { (yyval.Char) = '\372'; }
5371      break;      break;
5372    
5373    case 404:    case 442:
5374  #line 433 "lscp.y"  #line 480 "lscp.y"
5375      { (yyval.Char) = '\373'; }      { (yyval.Char) = '\373'; }
5376      break;      break;
5377    
5378    case 405:    case 443:
5379  #line 433 "lscp.y"  #line 480 "lscp.y"
5380      { (yyval.Char) = '\374'; }      { (yyval.Char) = '\374'; }
5381      break;      break;
5382    
5383    case 406:    case 444:
5384  #line 433 "lscp.y"  #line 480 "lscp.y"
5385      { (yyval.Char) = '\375'; }      { (yyval.Char) = '\375'; }
5386      break;      break;
5387    
5388    case 407:    case 445:
5389  #line 434 "lscp.y"  #line 481 "lscp.y"
5390      { (yyval.Char) = '\376'; }      { (yyval.Char) = '\376'; }
5391      break;      break;
5392    
5393    case 408:    case 446:
5394  #line 434 "lscp.y"  #line 481 "lscp.y"
5395      { (yyval.Char) = '\377'; }      { (yyval.Char) = '\377'; }
5396      break;      break;
5397    
5398    case 409:    case 447:
5399  #line 437 "lscp.y"  #line 484 "lscp.y"
5400      { (yyval.String) = " ";      }      { (yyval.String) = " ";      }
5401      break;      break;
5402    
5403    case 411:    case 449:
5404  #line 439 "lscp.y"  #line 486 "lscp.y"
5405      { (yyval.String) = (yyvsp[(1) - (2)].String) + " "; }      { (yyval.String) = (yyvsp[(1) - (2)].String) + " "; }
5406      break;      break;
5407    
5408    case 412:    case 450:
5409  #line 440 "lscp.y"  #line 487 "lscp.y"
5410      { (yyval.String) = (yyvsp[(1) - (2)].String) + (yyvsp[(2) - (2)].String);  }      { (yyval.String) = (yyvsp[(1) - (2)].String) + (yyvsp[(2) - (2)].String);  }
5411      break;      break;
5412    
5413    case 413:    case 451:
5414  #line 443 "lscp.y"  #line 490 "lscp.y"
5415      { (yyval.String) = (yyvsp[(2) - (3)].String); }      { (yyval.String) = (yyvsp[(2) - (3)].String); }
5416      break;      break;
5417    
5418    case 414:    case 452:
5419  #line 444 "lscp.y"  #line 491 "lscp.y"
5420      { (yyval.String) = (yyvsp[(2) - (3)].String); }      { (yyval.String) = (yyvsp[(2) - (3)].String); }
5421      break;      break;
5422    
5423    
5424  /* Line 1267 of yacc.c.  */  /* Line 1267 of yacc.c.  */
5425  #line 5056 "y.tab.c"  #line 5426 "y.tab.c"
5426        default: break;        default: break;
5427      }      }
5428    YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);    YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
# Line 5261  yyreturn: Line 5631  yyreturn:
5631    if (yymsg != yymsgbuf)    if (yymsg != yymsgbuf)
5632      YYSTACK_FREE (yymsg);      YYSTACK_FREE (yymsg);
5633  #endif  #endif
5634    return yyresult;    /* Make sure YYID is used.  */
5635      return YYID (yyresult);
5636  }  }
5637    
5638    
5639  #line 666 "lscp.y"  #line 758 "lscp.y"
5640    
5641    
5642  /**  /**

Legend:
Removed from v.973  
changed lines
  Added in v.1109

  ViewVC Help
Powered by ViewVC