ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/trunk/src/conf_parser.c
(Generate patch)

Comparing ircd-hybrid/trunk/src/conf_parser.c (file contents):
Revision 2196 by michael, Tue Jun 4 18:30:12 2013 UTC vs.
Revision 2228 by michael, Thu Jun 13 19:46:30 2013 UTC

# Line 119 | Line 119 | static struct
119      bind,
120      file,
121      ciph,
122 +    cert,
123      rpass,
124      spass,
125      class;
# Line 178 | Line 179 | reset_block_state(void)
179  
180  
181   /* Line 371 of yacc.c  */
182 < #line 182 "conf_parser.c"
182 > #line 183 "conf_parser.c"
183  
184   # ifndef YY_NULL
185   #  if defined __cplusplus && 201103L <= __cplusplus
# Line 378 | Line 379 | extern int yydebug;
379       T_EXTERNAL = 419,
380       T_FARCONNECT = 420,
381       T_FILE = 421,
382 <     T_FULL = 422,
383 <     T_GLOBOPS = 423,
384 <     T_INVISIBLE = 424,
385 <     T_IPV4 = 425,
386 <     T_IPV6 = 426,
387 <     T_LOCOPS = 427,
388 <     T_LOG = 428,
389 <     T_MAX_CLIENTS = 429,
390 <     T_NCHANGE = 430,
391 <     T_NONONREG = 431,
392 <     T_OPERWALL = 432,
393 <     T_RECVQ = 433,
394 <     T_REJ = 434,
395 <     T_RESTART = 435,
396 <     T_SERVER = 436,
397 <     T_SERVICE = 437,
398 <     T_SERVICES_NAME = 438,
399 <     T_SERVNOTICE = 439,
400 <     T_SET = 440,
401 <     T_SHARED = 441,
402 <     T_SIZE = 442,
403 <     T_SKILL = 443,
404 <     T_SOFTCALLERID = 444,
405 <     T_SPY = 445,
406 <     T_SSL = 446,
407 <     T_SSL_CIPHER_LIST = 447,
408 <     T_SSL_CLIENT_METHOD = 448,
409 <     T_SSL_SERVER_METHOD = 449,
410 <     T_SSLV3 = 450,
411 <     T_TLSV1 = 451,
412 <     T_UMODES = 452,
413 <     T_UNAUTH = 453,
414 <     T_UNDLINE = 454,
415 <     T_UNLIMITED = 455,
416 <     T_UNRESV = 456,
417 <     T_UNXLINE = 457,
418 <     T_WALLOP = 458,
419 <     T_WALLOPS = 459,
420 <     T_WEBIRC = 460,
421 <     TBOOL = 461,
422 <     THROTTLE_TIME = 462,
423 <     TKLINE_EXPIRE_NOTICES = 463,
424 <     TMASKED = 464,
425 <     TRUE_NO_OPER_FLOOD = 465,
426 <     TS_MAX_DELTA = 466,
427 <     TS_WARN_DELTA = 467,
428 <     TWODOTS = 468,
429 <     TYPE = 469,
430 <     UNKLINE = 470,
431 <     USE_EGD = 471,
432 <     USE_LOGGING = 472,
433 <     USER = 473,
434 <     VHOST = 474,
435 <     VHOST6 = 475,
436 <     WARN_NO_NLINE = 476,
437 <     XLINE = 477
382 >     T_FINGERPRINT = 422,
383 >     T_FULL = 423,
384 >     T_GLOBOPS = 424,
385 >     T_INVISIBLE = 425,
386 >     T_IPV4 = 426,
387 >     T_IPV6 = 427,
388 >     T_LOCOPS = 428,
389 >     T_LOG = 429,
390 >     T_MAX_CLIENTS = 430,
391 >     T_NCHANGE = 431,
392 >     T_NONONREG = 432,
393 >     T_OPERWALL = 433,
394 >     T_RECVQ = 434,
395 >     T_REJ = 435,
396 >     T_RESTART = 436,
397 >     T_SERVER = 437,
398 >     T_SERVICE = 438,
399 >     T_SERVICES_NAME = 439,
400 >     T_SERVNOTICE = 440,
401 >     T_SET = 441,
402 >     T_SHARED = 442,
403 >     T_SIZE = 443,
404 >     T_SKILL = 444,
405 >     T_SOFTCALLERID = 445,
406 >     T_SPY = 446,
407 >     T_SSL = 447,
408 >     T_SSL_CIPHER_LIST = 448,
409 >     T_SSL_CLIENT_METHOD = 449,
410 >     T_SSL_SERVER_METHOD = 450,
411 >     T_SSLV3 = 451,
412 >     T_TLSV1 = 452,
413 >     T_UMODES = 453,
414 >     T_UNAUTH = 454,
415 >     T_UNDLINE = 455,
416 >     T_UNLIMITED = 456,
417 >     T_UNRESV = 457,
418 >     T_UNXLINE = 458,
419 >     T_WALLOP = 459,
420 >     T_WALLOPS = 460,
421 >     T_WEBIRC = 461,
422 >     TBOOL = 462,
423 >     THROTTLE_TIME = 463,
424 >     TKLINE_EXPIRE_NOTICES = 464,
425 >     TMASKED = 465,
426 >     TRUE_NO_OPER_FLOOD = 466,
427 >     TS_MAX_DELTA = 467,
428 >     TS_WARN_DELTA = 468,
429 >     TWODOTS = 469,
430 >     TYPE = 470,
431 >     UNKLINE = 471,
432 >     USE_EGD = 472,
433 >     USE_LOGGING = 473,
434 >     USER = 474,
435 >     VHOST = 475,
436 >     VHOST6 = 476,
437 >     WARN_NO_NLINE = 477,
438 >     XLINE = 478
439     };
440   #endif
441   /* Tokens.  */
# Line 601 | Line 603 | extern int yydebug;
603   #define T_EXTERNAL 419
604   #define T_FARCONNECT 420
605   #define T_FILE 421
606 < #define T_FULL 422
607 < #define T_GLOBOPS 423
608 < #define T_INVISIBLE 424
609 < #define T_IPV4 425
610 < #define T_IPV6 426
611 < #define T_LOCOPS 427
612 < #define T_LOG 428
613 < #define T_MAX_CLIENTS 429
614 < #define T_NCHANGE 430
615 < #define T_NONONREG 431
616 < #define T_OPERWALL 432
617 < #define T_RECVQ 433
618 < #define T_REJ 434
619 < #define T_RESTART 435
620 < #define T_SERVER 436
621 < #define T_SERVICE 437
622 < #define T_SERVICES_NAME 438
623 < #define T_SERVNOTICE 439
624 < #define T_SET 440
625 < #define T_SHARED 441
626 < #define T_SIZE 442
627 < #define T_SKILL 443
628 < #define T_SOFTCALLERID 444
629 < #define T_SPY 445
630 < #define T_SSL 446
631 < #define T_SSL_CIPHER_LIST 447
632 < #define T_SSL_CLIENT_METHOD 448
633 < #define T_SSL_SERVER_METHOD 449
634 < #define T_SSLV3 450
635 < #define T_TLSV1 451
636 < #define T_UMODES 452
637 < #define T_UNAUTH 453
638 < #define T_UNDLINE 454
639 < #define T_UNLIMITED 455
640 < #define T_UNRESV 456
641 < #define T_UNXLINE 457
642 < #define T_WALLOP 458
643 < #define T_WALLOPS 459
644 < #define T_WEBIRC 460
645 < #define TBOOL 461
646 < #define THROTTLE_TIME 462
647 < #define TKLINE_EXPIRE_NOTICES 463
648 < #define TMASKED 464
649 < #define TRUE_NO_OPER_FLOOD 465
650 < #define TS_MAX_DELTA 466
651 < #define TS_WARN_DELTA 467
652 < #define TWODOTS 468
653 < #define TYPE 469
654 < #define UNKLINE 470
655 < #define USE_EGD 471
656 < #define USE_LOGGING 472
657 < #define USER 473
658 < #define VHOST 474
659 < #define VHOST6 475
660 < #define WARN_NO_NLINE 476
661 < #define XLINE 477
606 > #define T_FINGERPRINT 422
607 > #define T_FULL 423
608 > #define T_GLOBOPS 424
609 > #define T_INVISIBLE 425
610 > #define T_IPV4 426
611 > #define T_IPV6 427
612 > #define T_LOCOPS 428
613 > #define T_LOG 429
614 > #define T_MAX_CLIENTS 430
615 > #define T_NCHANGE 431
616 > #define T_NONONREG 432
617 > #define T_OPERWALL 433
618 > #define T_RECVQ 434
619 > #define T_REJ 435
620 > #define T_RESTART 436
621 > #define T_SERVER 437
622 > #define T_SERVICE 438
623 > #define T_SERVICES_NAME 439
624 > #define T_SERVNOTICE 440
625 > #define T_SET 441
626 > #define T_SHARED 442
627 > #define T_SIZE 443
628 > #define T_SKILL 444
629 > #define T_SOFTCALLERID 445
630 > #define T_SPY 446
631 > #define T_SSL 447
632 > #define T_SSL_CIPHER_LIST 448
633 > #define T_SSL_CLIENT_METHOD 449
634 > #define T_SSL_SERVER_METHOD 450
635 > #define T_SSLV3 451
636 > #define T_TLSV1 452
637 > #define T_UMODES 453
638 > #define T_UNAUTH 454
639 > #define T_UNDLINE 455
640 > #define T_UNLIMITED 456
641 > #define T_UNRESV 457
642 > #define T_UNXLINE 458
643 > #define T_WALLOP 459
644 > #define T_WALLOPS 460
645 > #define T_WEBIRC 461
646 > #define TBOOL 462
647 > #define THROTTLE_TIME 463
648 > #define TKLINE_EXPIRE_NOTICES 464
649 > #define TMASKED 465
650 > #define TRUE_NO_OPER_FLOOD 466
651 > #define TS_MAX_DELTA 467
652 > #define TS_WARN_DELTA 468
653 > #define TWODOTS 469
654 > #define TYPE 470
655 > #define UNKLINE 471
656 > #define USE_EGD 472
657 > #define USE_LOGGING 473
658 > #define USER 474
659 > #define VHOST 475
660 > #define VHOST6 476
661 > #define WARN_NO_NLINE 477
662 > #define XLINE 478
663  
664  
665  
# Line 664 | Line 667 | extern int yydebug;
667   typedef union YYSTYPE
668   {
669   /* Line 387 of yacc.c  */
670 < #line 139 "conf_parser.y"
670 > #line 140 "conf_parser.y"
671  
672    int number;
673    char *string;
674  
675  
676   /* Line 387 of yacc.c  */
677 < #line 675 "conf_parser.c"
677 > #line 678 "conf_parser.c"
678   } YYSTYPE;
679   # define YYSTYPE_IS_TRIVIAL 1
680   # define yystype YYSTYPE /* obsolescent; will be withdrawn */
# Line 699 | Line 702 | int yyparse ();
702   /* Copy the second part of user declarations.  */
703  
704   /* Line 390 of yacc.c  */
705 < #line 703 "conf_parser.c"
705 > #line 706 "conf_parser.c"
706  
707   #ifdef short
708   # undef short
# Line 928 | Line 931 | union yyalloc
931   /* YYFINAL -- State number of the termination state.  */
932   #define YYFINAL  2
933   /* YYLAST -- Last index in YYTABLE.  */
934 < #define YYLAST   1225
934 > #define YYLAST   1221
935  
936   /* YYNTOKENS -- Number of terminals.  */
937 < #define YYNTOKENS  229
937 > #define YYNTOKENS  230
938   /* YYNNTS -- Number of nonterminals.  */
939 < #define YYNNTS  286
939 > #define YYNNTS  288
940   /* YYNRULES -- Number of rules.  */
941 < #define YYNRULES  644
941 > #define YYNRULES  648
942   /* YYNRULES -- Number of states.  */
943 < #define YYNSTATES  1260
943 > #define YYNSTATES  1270
944  
945   /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
946   #define YYUNDEFTOK  2
947 < #define YYMAXUTOK   477
947 > #define YYMAXUTOK   478
948  
949   #define YYTRANSLATE(YYX)                                                \
950    ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
# Line 953 | Line 956 | static const yytype_uint8 yytranslate[]
956         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
957         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
958         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
959 <       2,     2,     2,     2,   227,     2,     2,     2,     2,     2,
960 <       2,     2,     2,     2,     2,     2,     2,     2,   228,   223,
961 <       2,   226,     2,     2,     2,     2,     2,     2,     2,     2,
959 >       2,     2,     2,     2,   228,     2,     2,     2,     2,     2,
960 >       2,     2,     2,     2,     2,     2,     2,     2,   229,   224,
961 >       2,   227,     2,     2,     2,     2,     2,     2,     2,     2,
962         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
963         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
964         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
965         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
966         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
967 <       2,     2,     2,   225,     2,   224,     2,     2,     2,     2,
967 >       2,     2,     2,   226,     2,   225,     2,     2,     2,     2,
968         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
969         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
970         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
# Line 996 | Line 999 | static const yytype_uint8 yytranslate[]
999       185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
1000       195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
1001       205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
1002 <     215,   216,   217,   218,   219,   220,   221,   222
1002 >     215,   216,   217,   218,   219,   220,   221,   222,   223
1003   };
1004  
1005   #if YYDEBUG
# Line 1019 | Line 1022 | static const yytype_uint16 yyprhs[] =
1022       366,   368,   371,   376,   377,   384,   387,   389,   391,   393,
1023       395,   398,   403,   408,   413,   414,   420,   424,   426,   428,
1024       430,   432,   434,   436,   438,   440,   441,   448,   451,   453,
1025 <     455,   457,   459,   461,   463,   465,   467,   469,   472,   477,
1026 <     482,   487,   492,   497,   502,   503,   509,   513,   515,   517,
1027 <     519,   521,   523,   525,   527,   529,   531,   533,   535,   537,
1028 <     539,   541,   543,   545,   547,   549,   551,   553,   555,   557,
1029 <     558,   564,   568,   570,   574,   576,   580,   582,   586,   588,
1030 <     590,   592,   594,   596,   598,   600,   602,   604,   606,   608,
1031 <     610,   612,   614,   616,   618,   620,   622,   623,   630,   633,
1032 <     635,   637,   639,   641,   643,   645,   647,   649,   651,   653,
1033 <     655,   657,   659,   661,   663,   665,   667,   670,   675,   680,
1034 <     685,   690,   695,   700,   705,   710,   715,   720,   725,   730,
1035 <     735,   740,   745,   746,   752,   756,   758,   760,   762,   763,
1036 <     770,   771,   777,   781,   783,   785,   787,   789,   792,   794,
1037 <     796,   798,   800,   802,   805,   806,   812,   816,   818,   820,
1038 <     824,   829,   834,   835,   842,   845,   847,   849,   851,   853,
1039 <     855,   857,   859,   861,   863,   866,   871,   876,   881,   886,
1040 <     887,   893,   897,   899,   901,   903,   905,   907,   909,   911,
1041 <     913,   915,   917,   919,   924,   929,   934,   935,   942,   945,
1042 <     947,   949,   951,   953,   956,   961,   966,   971,   977,   980,
1043 <     982,   984,   986,   991,   992,   999,  1002,  1004,  1006,  1008,
1044 <    1010,  1013,  1018,  1023,  1024,  1030,  1034,  1036,  1038,  1040,
1045 <    1042,  1044,  1046,  1048,  1050,  1052,  1054,  1056,  1057,  1064,
1046 <    1067,  1069,  1071,  1073,  1076,  1081,  1082,  1088,  1092,  1094,
1047 <    1096,  1098,  1100,  1102,  1104,  1106,  1108,  1110,  1112,  1114,
1048 <    1115,  1122,  1125,  1127,  1129,  1131,  1133,  1135,  1137,  1139,
1049 <    1141,  1143,  1145,  1147,  1149,  1151,  1153,  1156,  1161,  1166,
1050 <    1171,  1176,  1181,  1186,  1191,  1196,  1197,  1203,  1207,  1209,
1051 <    1211,  1213,  1218,  1223,  1228,  1233,  1238,  1239,  1246,  1249,
1052 <    1251,  1253,  1255,  1257,  1262,  1267,  1268,  1275,  1278,  1280,
1053 <    1282,  1284,  1286,  1291,  1296,  1302,  1305,  1307,  1309,  1311,
1054 <    1316,  1317,  1324,  1327,  1329,  1331,  1333,  1335,  1340,  1345,
1055 <    1351,  1354,  1356,  1358,  1360,  1362,  1364,  1366,  1368,  1370,
1056 <    1372,  1374,  1376,  1378,  1380,  1382,  1384,  1386,  1388,  1390,
1057 <    1392,  1394,  1396,  1398,  1400,  1402,  1404,  1406,  1408,  1410,
1058 <    1412,  1414,  1416,  1418,  1420,  1422,  1424,  1426,  1428,  1430,
1059 <    1432,  1434,  1436,  1438,  1440,  1442,  1444,  1446,  1448,  1450,
1060 <    1452,  1457,  1462,  1467,  1472,  1477,  1482,  1487,  1492,  1497,
1061 <    1502,  1507,  1512,  1517,  1522,  1527,  1532,  1537,  1542,  1547,
1062 <    1552,  1557,  1562,  1567,  1572,  1577,  1582,  1587,  1592,  1597,
1063 <    1602,  1607,  1612,  1617,  1622,  1627,  1632,  1637,  1642,  1647,
1064 <    1652,  1657,  1662,  1667,  1672,  1673,  1679,  1683,  1685,  1687,
1065 <    1689,  1691,  1693,  1695,  1697,  1699,  1701,  1703,  1705,  1707,
1066 <    1709,  1711,  1713,  1715,  1717,  1719,  1721,  1723,  1725,  1727,
1067 <    1728,  1734,  1738,  1740,  1742,  1744,  1746,  1748,  1750,  1752,
1068 <    1754,  1756,  1758,  1760,  1762,  1764,  1766,  1768,  1770,  1772,
1069 <    1774,  1776,  1778,  1780,  1782,  1787,  1792,  1797,  1803,  1806,
1070 <    1808,  1810,  1812,  1814,  1816,  1818,  1820,  1822,  1824,  1826,
1071 <    1828,  1830,  1832,  1834,  1839,  1844,  1849,  1854,  1859,  1864,
1072 <    1869,  1874,  1879,  1884,  1889,  1894,  1900,  1903,  1905,  1907,
1073 <    1909,  1911,  1913,  1915,  1917,  1919,  1921,  1923,  1928,  1933,
1074 <    1938,  1943,  1948,  1953,  1958
1025 >     455,   457,   459,   461,   463,   465,   467,   469,   471,   474,
1026 >     479,   484,   489,   494,   499,   504,   509,   510,   516,   520,
1027 >     522,   524,   526,   528,   530,   532,   534,   536,   538,   540,
1028 >     542,   544,   546,   548,   550,   552,   554,   556,   558,   560,
1029 >     562,   564,   565,   571,   575,   577,   581,   583,   587,   589,
1030 >     593,   595,   597,   599,   601,   603,   605,   607,   609,   611,
1031 >     613,   615,   617,   619,   621,   623,   625,   627,   629,   630,
1032 >     637,   640,   642,   644,   646,   648,   650,   652,   654,   656,
1033 >     658,   660,   662,   664,   666,   668,   670,   672,   674,   677,
1034 >     682,   687,   692,   697,   702,   707,   712,   717,   722,   727,
1035 >     732,   737,   742,   747,   752,   753,   759,   763,   765,   767,
1036 >     769,   770,   777,   778,   784,   788,   790,   792,   794,   796,
1037 >     799,   801,   803,   805,   807,   809,   812,   813,   819,   823,
1038 >     825,   827,   831,   836,   841,   842,   849,   852,   854,   856,
1039 >     858,   860,   862,   864,   866,   868,   870,   873,   878,   883,
1040 >     888,   893,   894,   900,   904,   906,   908,   910,   912,   914,
1041 >     916,   918,   920,   922,   924,   926,   931,   936,   941,   942,
1042 >     949,   952,   954,   956,   958,   960,   963,   968,   973,   978,
1043 >     984,   987,   989,   991,   993,   998,   999,  1006,  1009,  1011,
1044 >    1013,  1015,  1017,  1020,  1025,  1030,  1031,  1037,  1041,  1043,
1045 >    1045,  1047,  1049,  1051,  1053,  1055,  1057,  1059,  1061,  1063,
1046 >    1064,  1071,  1074,  1076,  1078,  1080,  1083,  1088,  1089,  1095,
1047 >    1099,  1101,  1103,  1105,  1107,  1109,  1111,  1113,  1115,  1117,
1048 >    1119,  1121,  1122,  1129,  1132,  1134,  1136,  1138,  1140,  1142,
1049 >    1144,  1146,  1148,  1150,  1152,  1154,  1156,  1158,  1160,  1162,
1050 >    1165,  1170,  1175,  1180,  1185,  1190,  1195,  1200,  1205,  1210,
1051 >    1211,  1217,  1221,  1223,  1225,  1227,  1232,  1237,  1242,  1247,
1052 >    1252,  1253,  1260,  1263,  1265,  1267,  1269,  1271,  1276,  1281,
1053 >    1282,  1289,  1292,  1294,  1296,  1298,  1300,  1305,  1310,  1316,
1054 >    1319,  1321,  1323,  1325,  1330,  1331,  1338,  1341,  1343,  1345,
1055 >    1347,  1349,  1354,  1359,  1365,  1368,  1370,  1372,  1374,  1376,
1056 >    1378,  1380,  1382,  1384,  1386,  1388,  1390,  1392,  1394,  1396,
1057 >    1398,  1400,  1402,  1404,  1406,  1408,  1410,  1412,  1414,  1416,
1058 >    1418,  1420,  1422,  1424,  1426,  1428,  1430,  1432,  1434,  1436,
1059 >    1438,  1440,  1442,  1444,  1446,  1448,  1450,  1452,  1454,  1456,
1060 >    1458,  1460,  1462,  1464,  1466,  1471,  1476,  1481,  1486,  1491,
1061 >    1496,  1501,  1506,  1511,  1516,  1521,  1526,  1531,  1536,  1541,
1062 >    1546,  1551,  1556,  1561,  1566,  1571,  1576,  1581,  1586,  1591,
1063 >    1596,  1601,  1606,  1611,  1616,  1621,  1626,  1631,  1636,  1641,
1064 >    1646,  1651,  1656,  1661,  1666,  1671,  1676,  1681,  1686,  1687,
1065 >    1693,  1697,  1699,  1701,  1703,  1705,  1707,  1709,  1711,  1713,
1066 >    1715,  1717,  1719,  1721,  1723,  1725,  1727,  1729,  1731,  1733,
1067 >    1735,  1737,  1739,  1741,  1742,  1748,  1752,  1754,  1756,  1758,
1068 >    1760,  1762,  1764,  1766,  1768,  1770,  1772,  1774,  1776,  1778,
1069 >    1780,  1782,  1784,  1786,  1788,  1790,  1792,  1794,  1796,  1801,
1070 >    1806,  1811,  1817,  1820,  1822,  1824,  1826,  1828,  1830,  1832,
1071 >    1834,  1836,  1838,  1840,  1842,  1844,  1846,  1848,  1853,  1858,
1072 >    1863,  1868,  1873,  1878,  1883,  1888,  1893,  1898,  1903,  1908,
1073 >    1914,  1917,  1919,  1921,  1923,  1925,  1927,  1929,  1931,  1933,
1074 >    1935,  1937,  1942,  1947,  1952,  1957,  1962,  1967,  1972
1075   };
1076  
1077   /* YYRHS -- A `-1'-separated list of the rules' RHS.  */
1078   static const yytype_int16 yyrhs[] =
1079   {
1080 <     230,     0,    -1,    -1,   230,   231,    -1,   265,    -1,   277,
1081 <      -1,   291,    -1,   489,    -1,   309,    -1,   332,    -1,   346,
1082 <      -1,   241,    -1,   504,    -1,   361,    -1,   368,    -1,   372,
1083 <      -1,   382,    -1,   391,    -1,   411,    -1,   417,    -1,   423,
1084 <      -1,   433,    -1,   427,    -1,   236,    -1,   271,    -1,     1,
1085 <     223,    -1,     1,   224,    -1,    -1,   233,    -1,   107,   232,
1086 <      -1,   107,   134,   232,    -1,   107,   135,   232,    -1,   107,
1087 <     136,   232,    -1,   107,   137,   232,    -1,   107,   138,   232,
1088 <      -1,   107,   139,   232,    -1,   107,   140,   232,    -1,    -1,
1089 <     235,    -1,   107,   234,    -1,   107,     9,   234,    -1,   107,
1090 <      10,   234,    -1,   107,    11,   234,    -1,    95,   225,   237,
1091 <     224,   223,    -1,   237,   238,    -1,   238,    -1,   239,    -1,
1092 <     240,    -1,     1,   223,    -1,    94,   226,   122,   223,    -1,
1093 <     118,   226,   122,   223,    -1,   144,   225,   242,   224,   223,
1094 <      -1,   242,   243,    -1,   243,    -1,   254,    -1,   259,    -1,
1095 <     264,    -1,   256,    -1,   257,    -1,   258,    -1,   261,    -1,
1096 <     262,    -1,   263,    -1,   252,    -1,   251,    -1,   260,    -1,
1097 <     255,    -1,   250,    -1,   244,    -1,   245,    -1,   253,    -1,
1098 <       1,   223,    -1,   193,   226,   246,   223,    -1,   194,   226,
1099 <     248,   223,    -1,   246,   227,   247,    -1,   247,    -1,   195,
1100 <      -1,   196,    -1,   248,   227,   249,    -1,   249,    -1,   195,
1101 <      -1,   196,    -1,   149,   226,   122,   223,    -1,   132,   226,
1102 <     122,   223,    -1,   150,   226,   122,   223,    -1,   192,   226,
1103 <     122,   223,    -1,    97,   226,   122,   223,    -1,    63,   226,
1104 <     122,   223,    -1,    24,   226,   122,   223,    -1,   101,   226,
1105 <     122,   223,    -1,   100,   226,   122,   223,    -1,   219,   226,
1106 <     122,   223,    -1,   220,   226,   122,   223,    -1,   174,   226,
1107 <     107,   223,    -1,    85,   226,   107,   223,    -1,    89,   226,
1108 <     107,   223,    -1,    56,   226,   206,   223,    -1,     4,   225,
1109 <     266,   224,   223,    -1,   266,   267,    -1,   267,    -1,   268,
1110 <      -1,   270,    -1,   269,    -1,     1,   223,    -1,    97,   226,
1111 <     122,   223,    -1,    31,   226,   122,   223,    -1,    24,   226,
1112 <     122,   223,    -1,    -1,    96,   272,   225,   273,   224,   223,
1113 <      -1,   273,   274,    -1,   274,    -1,   275,    -1,   276,    -1,
1114 <       1,   223,    -1,    75,   226,   122,   223,    -1,   166,   226,
1115 <     122,   223,    -1,   173,   225,   278,   224,   223,    -1,   278,
1116 <     279,    -1,   279,    -1,   280,    -1,   281,    -1,     1,   223,
1117 <      -1,   217,   226,   206,   223,    -1,    -1,   282,   166,   225,
1118 <     283,   224,   223,    -1,   283,   284,    -1,   284,    -1,   285,
1119 <      -1,   287,    -1,   286,    -1,     1,   223,    -1,    97,   226,
1120 <     122,   223,    -1,   187,   226,   235,   223,    -1,   187,   226,
1121 <     200,   223,    -1,    -1,   214,   288,   226,   289,   223,    -1,
1122 <     289,   227,   290,    -1,   290,    -1,   218,    -1,   113,    -1,
1080 >     231,     0,    -1,    -1,   231,   232,    -1,   266,    -1,   278,
1081 >      -1,   292,    -1,   492,    -1,   311,    -1,   334,    -1,   348,
1082 >      -1,   242,    -1,   507,    -1,   363,    -1,   370,    -1,   374,
1083 >      -1,   384,    -1,   393,    -1,   414,    -1,   420,    -1,   426,
1084 >      -1,   436,    -1,   430,    -1,   237,    -1,   272,    -1,     1,
1085 >     224,    -1,     1,   225,    -1,    -1,   234,    -1,   107,   233,
1086 >      -1,   107,   134,   233,    -1,   107,   135,   233,    -1,   107,
1087 >     136,   233,    -1,   107,   137,   233,    -1,   107,   138,   233,
1088 >      -1,   107,   139,   233,    -1,   107,   140,   233,    -1,    -1,
1089 >     236,    -1,   107,   235,    -1,   107,     9,   235,    -1,   107,
1090 >      10,   235,    -1,   107,    11,   235,    -1,    95,   226,   238,
1091 >     225,   224,    -1,   238,   239,    -1,   239,    -1,   240,    -1,
1092 >     241,    -1,     1,   224,    -1,    94,   227,   122,   224,    -1,
1093 >     118,   227,   122,   224,    -1,   144,   226,   243,   225,   224,
1094 >      -1,   243,   244,    -1,   244,    -1,   255,    -1,   260,    -1,
1095 >     265,    -1,   257,    -1,   258,    -1,   259,    -1,   262,    -1,
1096 >     263,    -1,   264,    -1,   253,    -1,   252,    -1,   261,    -1,
1097 >     256,    -1,   251,    -1,   245,    -1,   246,    -1,   254,    -1,
1098 >       1,   224,    -1,   194,   227,   247,   224,    -1,   195,   227,
1099 >     249,   224,    -1,   247,   228,   248,    -1,   248,    -1,   196,
1100 >      -1,   197,    -1,   249,   228,   250,    -1,   250,    -1,   196,
1101 >      -1,   197,    -1,   149,   227,   122,   224,    -1,   132,   227,
1102 >     122,   224,    -1,   150,   227,   122,   224,    -1,   193,   227,
1103 >     122,   224,    -1,    97,   227,   122,   224,    -1,    63,   227,
1104 >     122,   224,    -1,    24,   227,   122,   224,    -1,   101,   227,
1105 >     122,   224,    -1,   100,   227,   122,   224,    -1,   220,   227,
1106 >     122,   224,    -1,   221,   227,   122,   224,    -1,   175,   227,
1107 >     107,   224,    -1,    85,   227,   107,   224,    -1,    89,   227,
1108 >     107,   224,    -1,    56,   227,   207,   224,    -1,     4,   226,
1109 >     267,   225,   224,    -1,   267,   268,    -1,   268,    -1,   269,
1110 >      -1,   271,    -1,   270,    -1,     1,   224,    -1,    97,   227,
1111 >     122,   224,    -1,    31,   227,   122,   224,    -1,    24,   227,
1112 >     122,   224,    -1,    -1,    96,   273,   226,   274,   225,   224,
1113 >      -1,   274,   275,    -1,   275,    -1,   276,    -1,   277,    -1,
1114 >       1,   224,    -1,    75,   227,   122,   224,    -1,   166,   227,
1115 >     122,   224,    -1,   174,   226,   279,   225,   224,    -1,   279,
1116 >     280,    -1,   280,    -1,   281,    -1,   282,    -1,     1,   224,
1117 >      -1,   218,   227,   207,   224,    -1,    -1,   283,   166,   226,
1118 >     284,   225,   224,    -1,   284,   285,    -1,   285,    -1,   286,
1119 >      -1,   288,    -1,   287,    -1,     1,   224,    -1,    97,   227,
1120 >     122,   224,    -1,   188,   227,   236,   224,    -1,   188,   227,
1121 >     201,   224,    -1,    -1,   215,   289,   227,   290,   224,    -1,
1122 >     290,   228,   291,    -1,   291,    -1,   219,    -1,   113,    -1,
1123        39,    -1,   163,    -1,    68,    -1,    66,    -1,   162,    -1,
1124 <      -1,   113,   292,   225,   293,   224,   223,    -1,   293,   294,
1125 <      -1,   294,    -1,   295,    -1,   296,    -1,   297,    -1,   301,
1126 <      -1,   300,    -1,   298,    -1,   299,    -1,   305,    -1,     1,
1127 <     223,    -1,    97,   226,   122,   223,    -1,   218,   226,   122,
1128 <     223,    -1,   117,   226,   122,   223,    -1,    32,   226,   206,
1129 <     223,    -1,   133,   226,   122,   223,    -1,    17,   226,   122,
1130 <     223,    -1,    -1,   197,   302,   226,   303,   223,    -1,   303,
1131 <     227,   304,    -1,   304,    -1,   157,    -1,   159,    -1,   161,
1132 <      -1,   162,    -1,   167,    -1,    48,    -1,   188,    -1,   175,
1133 <      -1,   179,    -1,   198,    -1,   190,    -1,   164,    -1,   177,
1134 <      -1,   184,    -1,   169,    -1,   203,    -1,   189,    -1,   158,
1135 <      -1,   172,    -1,   176,    -1,   165,    -1,    -1,    62,   306,
1136 <     226,   307,   223,    -1,   307,   227,   308,    -1,   308,    -1,
1137 <      66,   228,   128,    -1,    66,    -1,    18,   228,   128,    -1,
1138 <      18,    -1,   148,   228,   128,    -1,   148,    -1,    68,    -1,
1139 <     215,    -1,   163,    -1,   199,    -1,   222,    -1,    39,    -1,
1140 <      25,    -1,   180,    -1,   127,    -1,     4,    -1,   177,    -1,
1141 <     168,    -1,   204,    -1,   172,    -1,   129,    -1,   185,    -1,
1142 <      94,    -1,    -1,    17,   310,   225,   311,   224,   223,    -1,
1143 <     311,   312,    -1,   312,    -1,   313,    -1,   323,    -1,   324,
1144 <      -1,   314,    -1,   325,    -1,   315,    -1,   316,    -1,   317,
1145 <      -1,   318,    -1,   319,    -1,   320,    -1,   321,    -1,   322,
1146 <      -1,   326,    -1,   327,    -1,   328,    -1,     1,   223,    -1,
1147 <      97,   226,   122,   223,    -1,   120,   226,   233,   223,    -1,
1148 <     109,   226,   107,   223,    -1,    19,   226,   233,   223,    -1,
1149 <      87,   226,   107,   223,    -1,    80,   226,   107,   223,    -1,
1150 <      83,   226,   107,   223,    -1,    81,   226,   107,   223,    -1,
1151 <     142,   226,   235,   223,    -1,   178,   226,   235,   223,    -1,
1152 <      15,   226,   107,   223,    -1,    16,   226,   107,   223,    -1,
1153 <     108,   226,   107,   223,    -1,    91,   226,   233,   223,    -1,
1154 <      82,   226,   233,   223,    -1,    -1,    62,   329,   226,   330,
1155 <     223,    -1,   330,   227,   331,    -1,   331,    -1,   123,    -1,
1156 <      50,    -1,    -1,    74,   333,   225,   338,   224,   223,    -1,
1157 <      -1,    62,   335,   226,   336,   223,    -1,   336,   227,   337,
1158 <      -1,   337,    -1,   191,    -1,    48,    -1,   181,    -1,   338,
1159 <     339,    -1,   339,    -1,   340,    -1,   334,    -1,   344,    -1,
1160 <     345,    -1,     1,   223,    -1,    -1,   121,   226,   342,   341,
1161 <     223,    -1,   342,   227,   343,    -1,   343,    -1,   107,    -1,
1162 <     107,   213,   107,    -1,    60,   226,   122,   223,    -1,    55,
1163 <     226,   122,   223,    -1,    -1,    61,   347,   225,   348,   224,
1164 <     223,    -1,   348,   349,    -1,   349,    -1,   350,    -1,   351,
1165 <      -1,   352,    -1,   354,    -1,   358,    -1,   359,    -1,   360,
1166 <      -1,   353,    -1,     1,   223,    -1,   218,   226,   122,   223,
1167 <      -1,   117,   226,   122,   223,    -1,    17,   226,   122,   223,
1168 <      -1,    32,   226,   206,   223,    -1,    -1,    62,   355,   226,
1169 <     356,   223,    -1,   356,   227,   357,    -1,   357,    -1,   147,
1170 <      -1,    33,    -1,    69,    -1,    98,    -1,    13,    -1,   106,
1171 <      -1,    42,    -1,   131,    -1,   205,    -1,    99,    -1,   146,
1172 <     226,   122,   223,    -1,   126,   226,   122,   223,    -1,   125,
1173 <     226,   107,   223,    -1,    -1,   130,   362,   225,   363,   224,
1174 <     223,    -1,   363,   364,    -1,   364,    -1,   365,    -1,   366,
1175 <      -1,   367,    -1,     1,   223,    -1,    75,   226,   122,   223,
1176 <      -1,   124,   226,   122,   223,    -1,    34,   226,   122,   223,
1177 <      -1,   182,   225,   369,   224,   223,    -1,   369,   370,    -1,
1178 <     370,    -1,   371,    -1,     1,    -1,    97,   226,   122,   223,
1179 <      -1,    -1,   186,   373,   225,   374,   224,   223,    -1,   374,
1180 <     375,    -1,   375,    -1,   376,    -1,   377,    -1,   378,    -1,
1181 <       1,   223,    -1,    97,   226,   122,   223,    -1,   218,   226,
1182 <     122,   223,    -1,    -1,   214,   379,   226,   380,   223,    -1,
1183 <     380,   227,   381,    -1,   381,    -1,    68,    -1,   215,    -1,
1184 <     163,    -1,   199,    -1,   222,    -1,   202,    -1,   130,    -1,
1185 <     201,    -1,   172,    -1,   156,    -1,    -1,   160,   383,   225,
1186 <     384,   224,   223,    -1,   384,   385,    -1,   385,    -1,   386,
1187 <      -1,   387,    -1,     1,   223,    -1,    97,   226,   122,   223,
1188 <      -1,    -1,   214,   388,   226,   389,   223,    -1,   389,   227,
1189 <     390,    -1,   390,    -1,    68,    -1,   215,    -1,   163,    -1,
1190 <     199,    -1,   222,    -1,   202,    -1,   130,    -1,   201,    -1,
1191 <     172,    -1,   156,    -1,    -1,    18,   392,   225,   393,   224,
1192 <     223,    -1,   393,   394,    -1,   394,    -1,   395,    -1,   396,
1193 <      -1,   397,    -1,   398,    -1,   399,    -1,   401,    -1,   400,
1194 <      -1,   410,    -1,   402,    -1,   407,    -1,   408,    -1,   409,
1195 <      -1,   406,    -1,     1,   223,    -1,    97,   226,   122,   223,
1196 <      -1,    55,   226,   122,   223,    -1,   219,   226,   122,   223,
1197 <      -1,   141,   226,   122,   223,    -1,     3,   226,   122,   223,
1198 <      -1,   121,   226,   107,   223,    -1,     5,   226,   170,   223,
1199 <      -1,     5,   226,   171,   223,    -1,    -1,    62,   403,   226,
1200 <     404,   223,    -1,   404,   227,   405,    -1,   405,    -1,     8,
1201 <      -1,   191,    -1,    32,   226,   206,   223,    -1,    57,   226,
1202 <     122,   223,    -1,    72,   226,   122,   223,    -1,    17,   226,
1203 <     122,   223,    -1,   192,   226,   122,   223,    -1,    -1,    66,
1204 <     412,   225,   413,   224,   223,    -1,   413,   414,    -1,   414,
1205 <      -1,   415,    -1,   416,    -1,     1,    -1,   218,   226,   122,
1206 <     223,    -1,   124,   226,   122,   223,    -1,    -1,    23,   418,
1207 <     225,   419,   224,   223,    -1,   419,   420,    -1,   420,    -1,
1208 <     421,    -1,   422,    -1,     1,    -1,    60,   226,   122,   223,
1209 <      -1,   124,   226,   122,   223,    -1,    34,   225,   424,   224,
1210 <     223,    -1,   424,   425,    -1,   425,    -1,   426,    -1,     1,
1211 <      -1,    60,   226,   122,   223,    -1,    -1,    37,   428,   225,
1212 <     429,   224,   223,    -1,   429,   430,    -1,   430,    -1,   431,
1213 <      -1,   432,    -1,     1,    -1,    97,   226,   122,   223,    -1,
1214 <     124,   226,   122,   223,    -1,    38,   225,   434,   224,   223,
1215 <      -1,   434,   435,    -1,   435,    -1,   444,    -1,   445,    -1,
1216 <     446,    -1,   447,    -1,   448,    -1,   449,    -1,   450,    -1,
1217 <     451,    -1,   452,    -1,   453,    -1,   443,    -1,   455,    -1,
1218 <     456,    -1,   470,    -1,   458,    -1,   460,    -1,   462,    -1,
1219 <     461,    -1,   465,    -1,   459,    -1,   466,    -1,   467,    -1,
1220 <     468,    -1,   469,    -1,   482,    -1,   471,    -1,   472,    -1,
1221 <     473,    -1,   478,    -1,   463,    -1,   464,    -1,   488,    -1,
1222 <     486,    -1,   487,    -1,   477,    -1,   454,    -1,   475,    -1,
1223 <     476,    -1,   442,    -1,   437,    -1,   438,    -1,   439,    -1,
1224 <     440,    -1,   441,    -1,   457,    -1,   436,    -1,   474,    -1,
1225 <       1,    -1,    90,   226,   107,   223,    -1,    41,   226,   206,
1226 <     223,    -1,    40,   226,   233,   223,    -1,    45,   226,   233,
1227 <     223,    -1,    43,   226,   107,   223,    -1,    44,   226,   107,
1228 <     223,    -1,   208,   226,   206,   223,    -1,    67,   226,   233,
1229 <     223,    -1,    54,   226,   206,   223,    -1,    58,   226,   206,
1230 <     223,    -1,    35,   226,   206,   223,    -1,     6,   226,   206,
1231 <     223,    -1,    86,   226,   233,   223,    -1,    84,   226,   107,
1232 <     223,    -1,    76,   226,   107,   223,    -1,     7,   226,   233,
1233 <     223,    -1,   212,   226,   233,   223,    -1,   211,   226,   233,
1234 <     223,    -1,    47,   226,   107,   223,    -1,    59,   226,   206,
1235 <     223,    -1,   221,   226,   206,   223,    -1,   151,   226,   206,
1236 <     223,    -1,   154,   226,   206,   223,    -1,   155,   226,   206,
1237 <     223,    -1,   153,   226,   206,   223,    -1,   153,   226,   209,
1238 <     223,    -1,   152,   226,   206,   223,    -1,   152,   226,   209,
1239 <     223,    -1,   115,   226,   233,   223,    -1,    12,   226,   233,
1240 <     223,    -1,   114,   226,   206,   223,    -1,   116,   226,   233,
1241 <     223,    -1,   145,   226,   206,   223,    -1,   105,   226,   206,
1242 <     223,    -1,   210,   226,   206,   223,    -1,   111,   226,   206,
1243 <     223,    -1,    29,   226,   107,   223,    -1,    88,   226,   107,
1244 <     223,    -1,   216,   226,   206,   223,    -1,    30,   226,   122,
1245 <     223,    -1,   183,   226,   122,   223,    -1,   119,   226,   206,
1246 <     223,    -1,    26,   226,   206,   223,    -1,   207,   226,   233,
1247 <     223,    -1,    -1,   112,   479,   226,   480,   223,    -1,   480,
1248 <     227,   481,    -1,   481,    -1,   157,    -1,   159,    -1,   161,
1249 <      -1,   162,    -1,   167,    -1,    48,    -1,   188,    -1,   175,
1250 <      -1,   179,    -1,   198,    -1,   190,    -1,   164,    -1,   177,
1251 <      -1,   184,    -1,   169,    -1,   203,    -1,   189,    -1,   158,
1252 <      -1,   172,    -1,   176,    -1,   165,    -1,    -1,   110,   483,
1253 <     226,   484,   223,    -1,   484,   227,   485,    -1,   485,    -1,
1254 <     157,    -1,   159,    -1,   161,    -1,   162,    -1,   167,    -1,
1255 <     188,    -1,    48,    -1,   175,    -1,   179,    -1,   198,    -1,
1256 <     190,    -1,   164,    -1,   177,    -1,   184,    -1,   169,    -1,
1257 <     203,    -1,   189,    -1,   158,    -1,   172,    -1,   176,    -1,
1258 <     165,    -1,    92,   226,   107,   223,    -1,    93,   226,   107,
1259 <     223,    -1,    20,   226,   107,   223,    -1,    14,   225,   490,
1260 <     224,   223,    -1,   490,   491,    -1,   491,    -1,   497,    -1,
1261 <     493,    -1,   494,    -1,   495,    -1,   496,    -1,   498,    -1,
1262 <     499,    -1,   500,    -1,   501,    -1,   502,    -1,   503,    -1,
1263 <     492,    -1,     1,    -1,    27,   226,   206,   223,    -1,    70,
1264 <     226,   233,   223,    -1,    71,   226,   233,   223,    -1,    79,
1265 <     226,   107,   223,    -1,    78,   226,   107,   223,    -1,    77,
1266 <     226,   107,   223,    -1,    22,   226,   107,   223,    -1,    21,
1267 <     226,   107,   223,    -1,   103,   226,   206,   223,    -1,   104,
1268 <     226,   206,   223,    -1,    64,   226,   107,   223,    -1,    65,
1269 <     226,   233,   223,    -1,   143,   225,   505,   224,   223,    -1,
1270 <     505,   506,    -1,   506,    -1,   507,    -1,   508,    -1,   509,
1271 <      -1,   510,    -1,   512,    -1,   513,    -1,   511,    -1,   514,
1272 <      -1,     1,    -1,    36,   226,   206,   223,    -1,    28,   226,
1273 <     206,   223,    -1,    52,   226,   206,   223,    -1,    53,   226,
1274 <     206,   223,    -1,    49,   226,   122,   223,    -1,    73,   226,
1275 <     233,   223,    -1,    48,   226,   206,   223,    -1,    51,   226,
1276 <     206,   223,    -1
1124 >      -1,   113,   293,   226,   294,   225,   224,    -1,   294,   295,
1125 >      -1,   295,    -1,   296,    -1,   297,    -1,   298,    -1,   303,
1126 >      -1,   302,    -1,   299,    -1,   300,    -1,   301,    -1,   307,
1127 >      -1,     1,   224,    -1,    97,   227,   122,   224,    -1,   219,
1128 >     227,   122,   224,    -1,   117,   227,   122,   224,    -1,    32,
1129 >     227,   207,   224,    -1,   133,   227,   122,   224,    -1,   167,
1130 >     227,   122,   224,    -1,    17,   227,   122,   224,    -1,    -1,
1131 >     198,   304,   227,   305,   224,    -1,   305,   228,   306,    -1,
1132 >     306,    -1,   157,    -1,   159,    -1,   161,    -1,   162,    -1,
1133 >     168,    -1,    48,    -1,   189,    -1,   176,    -1,   180,    -1,
1134 >     199,    -1,   191,    -1,   164,    -1,   178,    -1,   185,    -1,
1135 >     170,    -1,   204,    -1,   190,    -1,   158,    -1,   173,    -1,
1136 >     177,    -1,   165,    -1,    -1,    62,   308,   227,   309,   224,
1137 >      -1,   309,   228,   310,    -1,   310,    -1,    66,   229,   128,
1138 >      -1,    66,    -1,    18,   229,   128,    -1,    18,    -1,   148,
1139 >     229,   128,    -1,   148,    -1,    68,    -1,   216,    -1,   163,
1140 >      -1,   200,    -1,   223,    -1,    39,    -1,    25,    -1,   181,
1141 >      -1,   127,    -1,     4,    -1,   178,    -1,   169,    -1,   205,
1142 >      -1,   173,    -1,   129,    -1,   186,    -1,    94,    -1,    -1,
1143 >      17,   312,   226,   313,   225,   224,    -1,   313,   314,    -1,
1144 >     314,    -1,   315,    -1,   325,    -1,   326,    -1,   316,    -1,
1145 >     327,    -1,   317,    -1,   318,    -1,   319,    -1,   320,    -1,
1146 >     321,    -1,   322,    -1,   323,    -1,   324,    -1,   328,    -1,
1147 >     329,    -1,   330,    -1,     1,   224,    -1,    97,   227,   122,
1148 >     224,    -1,   120,   227,   234,   224,    -1,   109,   227,   107,
1149 >     224,    -1,    19,   227,   234,   224,    -1,    87,   227,   107,
1150 >     224,    -1,    80,   227,   107,   224,    -1,    83,   227,   107,
1151 >     224,    -1,    81,   227,   107,   224,    -1,   142,   227,   236,
1152 >     224,    -1,   179,   227,   236,   224,    -1,    15,   227,   107,
1153 >     224,    -1,    16,   227,   107,   224,    -1,   108,   227,   107,
1154 >     224,    -1,    91,   227,   234,   224,    -1,    82,   227,   234,
1155 >     224,    -1,    -1,    62,   331,   227,   332,   224,    -1,   332,
1156 >     228,   333,    -1,   333,    -1,   123,    -1,    50,    -1,    -1,
1157 >      74,   335,   226,   340,   225,   224,    -1,    -1,    62,   337,
1158 >     227,   338,   224,    -1,   338,   228,   339,    -1,   339,    -1,
1159 >     192,    -1,    48,    -1,   182,    -1,   340,   341,    -1,   341,
1160 >      -1,   342,    -1,   336,    -1,   346,    -1,   347,    -1,     1,
1161 >     224,    -1,    -1,   121,   227,   344,   343,   224,    -1,   344,
1162 >     228,   345,    -1,   345,    -1,   107,    -1,   107,   214,   107,
1163 >      -1,    60,   227,   122,   224,    -1,    55,   227,   122,   224,
1164 >      -1,    -1,    61,   349,   226,   350,   225,   224,    -1,   350,
1165 >     351,    -1,   351,    -1,   352,    -1,   353,    -1,   354,    -1,
1166 >     356,    -1,   360,    -1,   361,    -1,   362,    -1,   355,    -1,
1167 >       1,   224,    -1,   219,   227,   122,   224,    -1,   117,   227,
1168 >     122,   224,    -1,    17,   227,   122,   224,    -1,    32,   227,
1169 >     207,   224,    -1,    -1,    62,   357,   227,   358,   224,    -1,
1170 >     358,   228,   359,    -1,   359,    -1,   147,    -1,    33,    -1,
1171 >      69,    -1,    98,    -1,    13,    -1,   106,    -1,    42,    -1,
1172 >     131,    -1,   206,    -1,    99,    -1,   146,   227,   122,   224,
1173 >      -1,   126,   227,   122,   224,    -1,   125,   227,   107,   224,
1174 >      -1,    -1,   130,   364,   226,   365,   225,   224,    -1,   365,
1175 >     366,    -1,   366,    -1,   367,    -1,   368,    -1,   369,    -1,
1176 >       1,   224,    -1,    75,   227,   122,   224,    -1,   124,   227,
1177 >     122,   224,    -1,    34,   227,   122,   224,    -1,   183,   226,
1178 >     371,   225,   224,    -1,   371,   372,    -1,   372,    -1,   373,
1179 >      -1,     1,    -1,    97,   227,   122,   224,    -1,    -1,   187,
1180 >     375,   226,   376,   225,   224,    -1,   376,   377,    -1,   377,
1181 >      -1,   378,    -1,   379,    -1,   380,    -1,     1,   224,    -1,
1182 >      97,   227,   122,   224,    -1,   219,   227,   122,   224,    -1,
1183 >      -1,   215,   381,   227,   382,   224,    -1,   382,   228,   383,
1184 >      -1,   383,    -1,    68,    -1,   216,    -1,   163,    -1,   200,
1185 >      -1,   223,    -1,   203,    -1,   130,    -1,   202,    -1,   173,
1186 >      -1,   156,    -1,    -1,   160,   385,   226,   386,   225,   224,
1187 >      -1,   386,   387,    -1,   387,    -1,   388,    -1,   389,    -1,
1188 >       1,   224,    -1,    97,   227,   122,   224,    -1,    -1,   215,
1189 >     390,   227,   391,   224,    -1,   391,   228,   392,    -1,   392,
1190 >      -1,    68,    -1,   216,    -1,   163,    -1,   200,    -1,   223,
1191 >      -1,   203,    -1,   130,    -1,   202,    -1,   173,    -1,   156,
1192 >      -1,    -1,    18,   394,   226,   395,   225,   224,    -1,   395,
1193 >     396,    -1,   396,    -1,   397,    -1,   398,    -1,   399,    -1,
1194 >     400,    -1,   401,    -1,   402,    -1,   404,    -1,   403,    -1,
1195 >     413,    -1,   405,    -1,   410,    -1,   411,    -1,   412,    -1,
1196 >     409,    -1,     1,   224,    -1,    97,   227,   122,   224,    -1,
1197 >      55,   227,   122,   224,    -1,   220,   227,   122,   224,    -1,
1198 >     141,   227,   122,   224,    -1,     3,   227,   122,   224,    -1,
1199 >     167,   227,   122,   224,    -1,   121,   227,   107,   224,    -1,
1200 >       5,   227,   171,   224,    -1,     5,   227,   172,   224,    -1,
1201 >      -1,    62,   406,   227,   407,   224,    -1,   407,   228,   408,
1202 >      -1,   408,    -1,     8,    -1,   192,    -1,    32,   227,   207,
1203 >     224,    -1,    57,   227,   122,   224,    -1,    72,   227,   122,
1204 >     224,    -1,    17,   227,   122,   224,    -1,   193,   227,   122,
1205 >     224,    -1,    -1,    66,   415,   226,   416,   225,   224,    -1,
1206 >     416,   417,    -1,   417,    -1,   418,    -1,   419,    -1,     1,
1207 >      -1,   219,   227,   122,   224,    -1,   124,   227,   122,   224,
1208 >      -1,    -1,    23,   421,   226,   422,   225,   224,    -1,   422,
1209 >     423,    -1,   423,    -1,   424,    -1,   425,    -1,     1,    -1,
1210 >      60,   227,   122,   224,    -1,   124,   227,   122,   224,    -1,
1211 >      34,   226,   427,   225,   224,    -1,   427,   428,    -1,   428,
1212 >      -1,   429,    -1,     1,    -1,    60,   227,   122,   224,    -1,
1213 >      -1,    37,   431,   226,   432,   225,   224,    -1,   432,   433,
1214 >      -1,   433,    -1,   434,    -1,   435,    -1,     1,    -1,    97,
1215 >     227,   122,   224,    -1,   124,   227,   122,   224,    -1,    38,
1216 >     226,   437,   225,   224,    -1,   437,   438,    -1,   438,    -1,
1217 >     447,    -1,   448,    -1,   449,    -1,   450,    -1,   451,    -1,
1218 >     452,    -1,   453,    -1,   454,    -1,   455,    -1,   456,    -1,
1219 >     446,    -1,   458,    -1,   459,    -1,   473,    -1,   461,    -1,
1220 >     463,    -1,   465,    -1,   464,    -1,   468,    -1,   462,    -1,
1221 >     469,    -1,   470,    -1,   471,    -1,   472,    -1,   485,    -1,
1222 >     474,    -1,   475,    -1,   476,    -1,   481,    -1,   466,    -1,
1223 >     467,    -1,   491,    -1,   489,    -1,   490,    -1,   480,    -1,
1224 >     457,    -1,   478,    -1,   479,    -1,   445,    -1,   440,    -1,
1225 >     441,    -1,   442,    -1,   443,    -1,   444,    -1,   460,    -1,
1226 >     439,    -1,   477,    -1,     1,    -1,    90,   227,   107,   224,
1227 >      -1,    41,   227,   207,   224,    -1,    40,   227,   234,   224,
1228 >      -1,    45,   227,   234,   224,    -1,    43,   227,   107,   224,
1229 >      -1,    44,   227,   107,   224,    -1,   209,   227,   207,   224,
1230 >      -1,    67,   227,   234,   224,    -1,    54,   227,   207,   224,
1231 >      -1,    58,   227,   207,   224,    -1,    35,   227,   207,   224,
1232 >      -1,     6,   227,   207,   224,    -1,    86,   227,   234,   224,
1233 >      -1,    84,   227,   107,   224,    -1,    76,   227,   107,   224,
1234 >      -1,     7,   227,   234,   224,    -1,   213,   227,   234,   224,
1235 >      -1,   212,   227,   234,   224,    -1,    47,   227,   107,   224,
1236 >      -1,    59,   227,   207,   224,    -1,   222,   227,   207,   224,
1237 >      -1,   151,   227,   207,   224,    -1,   154,   227,   207,   224,
1238 >      -1,   155,   227,   207,   224,    -1,   153,   227,   207,   224,
1239 >      -1,   153,   227,   210,   224,    -1,   152,   227,   207,   224,
1240 >      -1,   152,   227,   210,   224,    -1,   115,   227,   234,   224,
1241 >      -1,    12,   227,   234,   224,    -1,   114,   227,   207,   224,
1242 >      -1,   116,   227,   234,   224,    -1,   145,   227,   207,   224,
1243 >      -1,   105,   227,   207,   224,    -1,   211,   227,   207,   224,
1244 >      -1,   111,   227,   207,   224,    -1,    29,   227,   107,   224,
1245 >      -1,    88,   227,   107,   224,    -1,   217,   227,   207,   224,
1246 >      -1,    30,   227,   122,   224,    -1,   184,   227,   122,   224,
1247 >      -1,   119,   227,   207,   224,    -1,    26,   227,   207,   224,
1248 >      -1,   208,   227,   234,   224,    -1,    -1,   112,   482,   227,
1249 >     483,   224,    -1,   483,   228,   484,    -1,   484,    -1,   157,
1250 >      -1,   159,    -1,   161,    -1,   162,    -1,   168,    -1,    48,
1251 >      -1,   189,    -1,   176,    -1,   180,    -1,   199,    -1,   191,
1252 >      -1,   164,    -1,   178,    -1,   185,    -1,   170,    -1,   204,
1253 >      -1,   190,    -1,   158,    -1,   173,    -1,   177,    -1,   165,
1254 >      -1,    -1,   110,   486,   227,   487,   224,    -1,   487,   228,
1255 >     488,    -1,   488,    -1,   157,    -1,   159,    -1,   161,    -1,
1256 >     162,    -1,   168,    -1,   189,    -1,    48,    -1,   176,    -1,
1257 >     180,    -1,   199,    -1,   191,    -1,   164,    -1,   178,    -1,
1258 >     185,    -1,   170,    -1,   204,    -1,   190,    -1,   158,    -1,
1259 >     173,    -1,   177,    -1,   165,    -1,    92,   227,   107,   224,
1260 >      -1,    93,   227,   107,   224,    -1,    20,   227,   107,   224,
1261 >      -1,    14,   226,   493,   225,   224,    -1,   493,   494,    -1,
1262 >     494,    -1,   500,    -1,   496,    -1,   497,    -1,   498,    -1,
1263 >     499,    -1,   501,    -1,   502,    -1,   503,    -1,   504,    -1,
1264 >     505,    -1,   506,    -1,   495,    -1,     1,    -1,    27,   227,
1265 >     207,   224,    -1,    70,   227,   234,   224,    -1,    71,   227,
1266 >     234,   224,    -1,    79,   227,   107,   224,    -1,    78,   227,
1267 >     107,   224,    -1,    77,   227,   107,   224,    -1,    22,   227,
1268 >     107,   224,    -1,    21,   227,   107,   224,    -1,   103,   227,
1269 >     207,   224,    -1,   104,   227,   207,   224,    -1,    64,   227,
1270 >     107,   224,    -1,    65,   227,   234,   224,    -1,   143,   226,
1271 >     508,   225,   224,    -1,   508,   509,    -1,   509,    -1,   510,
1272 >      -1,   511,    -1,   512,    -1,   513,    -1,   515,    -1,   516,
1273 >      -1,   514,    -1,   517,    -1,     1,    -1,    36,   227,   207,
1274 >     224,    -1,    28,   227,   207,   224,    -1,    52,   227,   207,
1275 >     224,    -1,    53,   227,   207,   224,    -1,    49,   227,   122,
1276 >     224,    -1,    73,   227,   234,   224,    -1,    48,   227,   207,
1277 >     224,    -1,    51,   227,   207,   224,    -1
1278   };
1279  
1280   /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
1281   static const yytype_uint16 yyrline[] =
1282   {
1283 <       0,   365,   365,   366,   369,   370,   371,   372,   373,   374,
1284 <     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
1285 <     385,   386,   387,   388,   389,   390,   391,   395,   395,   396,
1286 <     400,   404,   408,   412,   416,   420,   424,   430,   430,   431,
1287 <     432,   433,   434,   441,   444,   444,   445,   445,   445,   447,
1288 <     453,   460,   462,   462,   463,   463,   464,   464,   465,   465,
1289 <     466,   466,   467,   467,   468,   468,   469,   469,   470,   470,
1290 <     471,   472,   475,   476,   478,   478,   479,   485,   493,   493,
1291 <     494,   500,   508,   550,   609,   637,   645,   660,   675,   684,
1292 <     698,   707,   735,   765,   790,   812,   834,   843,   845,   845,
1293 <     846,   846,   847,   847,   849,   858,   867,   880,   879,   897,
1294 <     897,   898,   898,   898,   900,   906,   915,   916,   916,   918,
1295 <     918,   919,   921,   928,   928,   941,   942,   944,   944,   945,
1296 <     945,   947,   955,   958,   964,   963,   969,   969,   970,   974,
1297 <     978,   982,   986,   990,   994,  1005,  1004,  1081,  1081,  1082,
1298 <    1082,  1082,  1083,  1083,  1083,  1084,  1084,  1084,  1086,  1092,
1299 <    1098,  1104,  1115,  1121,  1128,  1127,  1133,  1133,  1134,  1138,
1300 <    1142,  1146,  1150,  1154,  1158,  1162,  1166,  1170,  1174,  1178,
1301 <    1182,  1186,  1190,  1194,  1198,  1202,  1206,  1210,  1214,  1221,
1302 <    1220,  1226,  1226,  1227,  1231,  1235,  1239,  1243,  1247,  1251,
1303 <    1255,  1259,  1263,  1267,  1271,  1275,  1279,  1283,  1287,  1291,
1304 <    1295,  1299,  1303,  1307,  1311,  1315,  1326,  1325,  1386,  1386,
1305 <    1387,  1388,  1388,  1389,  1390,  1391,  1392,  1393,  1394,  1395,
1306 <    1396,  1397,  1397,  1398,  1399,  1400,  1401,  1403,  1409,  1415,
1307 <    1421,  1427,  1433,  1439,  1445,  1451,  1457,  1464,  1470,  1476,
1308 <    1482,  1491,  1501,  1500,  1506,  1506,  1507,  1511,  1522,  1521,
1309 <    1528,  1527,  1532,  1532,  1533,  1537,  1541,  1547,  1547,  1548,
1310 <    1548,  1548,  1548,  1548,  1550,  1550,  1552,  1552,  1554,  1568,
1311 <    1588,  1594,  1604,  1603,  1645,  1645,  1646,  1646,  1646,  1646,
1312 <    1647,  1647,  1647,  1648,  1648,  1650,  1656,  1662,  1668,  1680,
1313 <    1679,  1685,  1685,  1686,  1690,  1694,  1698,  1702,  1706,  1710,
1314 <    1714,  1718,  1722,  1728,  1742,  1751,  1765,  1764,  1779,  1779,
1315 <    1780,  1780,  1780,  1780,  1782,  1788,  1794,  1804,  1806,  1806,
1316 <    1807,  1807,  1809,  1825,  1824,  1849,  1849,  1850,  1850,  1850,
1317 <    1850,  1852,  1858,  1878,  1877,  1883,  1883,  1884,  1888,  1892,
1318 <    1896,  1900,  1904,  1908,  1912,  1916,  1920,  1930,  1929,  1950,
1319 <    1950,  1951,  1951,  1951,  1953,  1960,  1959,  1965,  1965,  1966,
1320 <    1970,  1974,  1978,  1982,  1986,  1990,  1994,  1998,  2002,  2012,
1321 <    2011,  2077,  2077,  2078,  2078,  2078,  2079,  2079,  2080,  2080,
1322 <    2080,  2081,  2081,  2081,  2082,  2082,  2083,  2085,  2091,  2097,
1323 <    2103,  2116,  2129,  2135,  2139,  2148,  2147,  2152,  2152,  2153,
1324 <    2157,  2163,  2174,  2180,  2186,  2192,  2208,  2207,  2233,  2233,
1325 <    2234,  2234,  2234,  2236,  2256,  2266,  2265,  2292,  2292,  2293,
1326 <    2293,  2293,  2295,  2301,  2310,  2312,  2312,  2313,  2313,  2315,
1327 <    2333,  2332,  2355,  2355,  2356,  2356,  2356,  2358,  2364,  2373,
1328 <    2376,  2376,  2377,  2377,  2378,  2378,  2379,  2379,  2380,  2380,
1329 <    2381,  2381,  2382,  2383,  2384,  2384,  2385,  2385,  2386,  2386,
1330 <    2387,  2387,  2388,  2388,  2389,  2389,  2390,  2390,  2391,  2391,
1331 <    2392,  2392,  2393,  2393,  2394,  2394,  2395,  2395,  2396,  2397,
1332 <    2398,  2398,  2399,  2399,  2400,  2401,  2402,  2403,  2403,  2404,
1333 <    2407,  2412,  2418,  2424,  2430,  2435,  2440,  2445,  2450,  2455,
1334 <    2460,  2465,  2470,  2475,  2480,  2485,  2490,  2495,  2501,  2512,
1335 <    2517,  2522,  2527,  2532,  2537,  2540,  2545,  2548,  2553,  2558,
1336 <    2563,  2568,  2573,  2578,  2583,  2588,  2593,  2598,  2603,  2608,
1337 <    2617,  2626,  2631,  2636,  2642,  2641,  2646,  2646,  2647,  2650,
1338 <    2653,  2656,  2659,  2662,  2665,  2668,  2671,  2674,  2677,  2680,
1339 <    2683,  2686,  2689,  2692,  2695,  2698,  2701,  2704,  2707,  2713,
1340 <    2712,  2717,  2717,  2718,  2721,  2724,  2727,  2730,  2733,  2736,
1341 <    2739,  2742,  2745,  2748,  2751,  2754,  2757,  2760,  2763,  2766,
1342 <    2769,  2772,  2775,  2778,  2783,  2788,  2793,  2802,  2805,  2805,
1343 <    2806,  2807,  2807,  2808,  2808,  2809,  2810,  2811,  2812,  2813,
1344 <    2813,  2814,  2814,  2816,  2821,  2826,  2831,  2836,  2841,  2846,
1345 <    2851,  2856,  2861,  2866,  2871,  2879,  2882,  2882,  2883,  2883,
1346 <    2884,  2885,  2886,  2887,  2887,  2888,  2889,  2891,  2897,  2903,
1347 <    2909,  2915,  2924,  2938,  2944
1283 >       0,   367,   367,   368,   371,   372,   373,   374,   375,   376,
1284 >     377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
1285 >     387,   388,   389,   390,   391,   392,   393,   397,   397,   398,
1286 >     402,   406,   410,   414,   418,   422,   426,   432,   432,   433,
1287 >     434,   435,   436,   443,   446,   446,   447,   447,   447,   449,
1288 >     455,   462,   464,   464,   465,   465,   466,   466,   467,   467,
1289 >     468,   468,   469,   469,   470,   470,   471,   471,   472,   472,
1290 >     473,   474,   477,   478,   480,   480,   481,   487,   495,   495,
1291 >     496,   502,   510,   552,   611,   639,   647,   662,   677,   686,
1292 >     700,   709,   737,   767,   792,   814,   836,   845,   847,   847,
1293 >     848,   848,   849,   849,   851,   860,   869,   882,   881,   899,
1294 >     899,   900,   900,   900,   902,   908,   917,   918,   918,   920,
1295 >     920,   921,   923,   930,   930,   943,   944,   946,   946,   947,
1296 >     947,   949,   957,   960,   966,   965,   971,   971,   972,   976,
1297 >     980,   984,   988,   992,   996,  1007,  1006,  1086,  1086,  1087,
1298 >    1087,  1087,  1088,  1088,  1088,  1089,  1089,  1090,  1090,  1092,
1299 >    1098,  1104,  1110,  1121,  1127,  1134,  1141,  1140,  1146,  1146,
1300 >    1147,  1151,  1155,  1159,  1163,  1167,  1171,  1175,  1179,  1183,
1301 >    1187,  1191,  1195,  1199,  1203,  1207,  1211,  1215,  1219,  1223,
1302 >    1227,  1234,  1233,  1239,  1239,  1240,  1244,  1248,  1252,  1256,
1303 >    1260,  1264,  1268,  1272,  1276,  1280,  1284,  1288,  1292,  1296,
1304 >    1300,  1304,  1308,  1312,  1316,  1320,  1324,  1328,  1339,  1338,
1305 >    1399,  1399,  1400,  1401,  1401,  1402,  1403,  1404,  1405,  1406,
1306 >    1407,  1408,  1409,  1410,  1410,  1411,  1412,  1413,  1414,  1416,
1307 >    1422,  1428,  1434,  1440,  1446,  1452,  1458,  1464,  1470,  1477,
1308 >    1483,  1489,  1495,  1504,  1514,  1513,  1519,  1519,  1520,  1524,
1309 >    1535,  1534,  1541,  1540,  1545,  1545,  1546,  1550,  1554,  1560,
1310 >    1560,  1561,  1561,  1561,  1561,  1561,  1563,  1563,  1565,  1565,
1311 >    1567,  1581,  1601,  1607,  1617,  1616,  1658,  1658,  1659,  1659,
1312 >    1659,  1659,  1660,  1660,  1660,  1661,  1661,  1663,  1669,  1675,
1313 >    1681,  1693,  1692,  1698,  1698,  1699,  1703,  1707,  1711,  1715,
1314 >    1719,  1723,  1727,  1731,  1735,  1741,  1755,  1764,  1778,  1777,
1315 >    1792,  1792,  1793,  1793,  1793,  1793,  1795,  1801,  1807,  1817,
1316 >    1819,  1819,  1820,  1820,  1822,  1838,  1837,  1862,  1862,  1863,
1317 >    1863,  1863,  1863,  1865,  1871,  1891,  1890,  1896,  1896,  1897,
1318 >    1901,  1905,  1909,  1913,  1917,  1921,  1925,  1929,  1933,  1943,
1319 >    1942,  1963,  1963,  1964,  1964,  1964,  1966,  1973,  1972,  1978,
1320 >    1978,  1979,  1983,  1987,  1991,  1995,  1999,  2003,  2007,  2011,
1321 >    2015,  2025,  2024,  2094,  2094,  2095,  2095,  2095,  2096,  2096,
1322 >    2096,  2097,  2097,  2097,  2098,  2098,  2098,  2099,  2099,  2100,
1323 >    2102,  2108,  2114,  2120,  2133,  2146,  2153,  2159,  2163,  2172,
1324 >    2171,  2176,  2176,  2177,  2181,  2187,  2198,  2204,  2210,  2216,
1325 >    2232,  2231,  2257,  2257,  2258,  2258,  2258,  2260,  2280,  2290,
1326 >    2289,  2316,  2316,  2317,  2317,  2317,  2319,  2325,  2334,  2336,
1327 >    2336,  2337,  2337,  2339,  2357,  2356,  2379,  2379,  2380,  2380,
1328 >    2380,  2382,  2388,  2397,  2400,  2400,  2401,  2401,  2402,  2402,
1329 >    2403,  2403,  2404,  2404,  2405,  2405,  2406,  2407,  2408,  2408,
1330 >    2409,  2409,  2410,  2410,  2411,  2411,  2412,  2412,  2413,  2413,
1331 >    2414,  2414,  2415,  2415,  2416,  2416,  2417,  2417,  2418,  2418,
1332 >    2419,  2419,  2420,  2421,  2422,  2422,  2423,  2423,  2424,  2425,
1333 >    2426,  2427,  2427,  2428,  2431,  2436,  2442,  2448,  2454,  2459,
1334 >    2464,  2469,  2474,  2479,  2484,  2489,  2494,  2499,  2504,  2509,
1335 >    2514,  2519,  2525,  2536,  2541,  2546,  2551,  2556,  2561,  2564,
1336 >    2569,  2572,  2577,  2582,  2587,  2592,  2597,  2602,  2607,  2612,
1337 >    2617,  2622,  2627,  2632,  2641,  2650,  2655,  2660,  2666,  2665,
1338 >    2670,  2670,  2671,  2674,  2677,  2680,  2683,  2686,  2689,  2692,
1339 >    2695,  2698,  2701,  2704,  2707,  2710,  2713,  2716,  2719,  2722,
1340 >    2725,  2728,  2731,  2737,  2736,  2741,  2741,  2742,  2745,  2748,
1341 >    2751,  2754,  2757,  2760,  2763,  2766,  2769,  2772,  2775,  2778,
1342 >    2781,  2784,  2787,  2790,  2793,  2796,  2799,  2802,  2807,  2812,
1343 >    2817,  2826,  2829,  2829,  2830,  2831,  2831,  2832,  2832,  2833,
1344 >    2834,  2835,  2836,  2837,  2837,  2838,  2838,  2840,  2845,  2850,
1345 >    2855,  2860,  2865,  2870,  2875,  2880,  2885,  2890,  2895,  2903,
1346 >    2906,  2906,  2907,  2907,  2908,  2909,  2910,  2911,  2911,  2912,
1347 >    2913,  2915,  2921,  2927,  2933,  2939,  2948,  2962,  2968
1348   };
1349   #endif
1350  
# Line 1386 | Line 1390 | static const char *const yytname[] =
1390    "STATS_I_OPER_ONLY", "STATS_K_OPER_ONLY", "STATS_O_OPER_ONLY",
1391    "STATS_P_OPER_ONLY", "T_ALL", "T_BOTS", "T_CALLERID", "T_CCONN",
1392    "T_CLUSTER", "T_DEAF", "T_DEBUG", "T_DLINE", "T_EXTERNAL",
1393 <  "T_FARCONNECT", "T_FILE", "T_FULL", "T_GLOBOPS", "T_INVISIBLE", "T_IPV4",
1394 <  "T_IPV6", "T_LOCOPS", "T_LOG", "T_MAX_CLIENTS", "T_NCHANGE",
1395 <  "T_NONONREG", "T_OPERWALL", "T_RECVQ", "T_REJ", "T_RESTART", "T_SERVER",
1396 <  "T_SERVICE", "T_SERVICES_NAME", "T_SERVNOTICE", "T_SET", "T_SHARED",
1397 <  "T_SIZE", "T_SKILL", "T_SOFTCALLERID", "T_SPY", "T_SSL",
1393 >  "T_FARCONNECT", "T_FILE", "T_FINGERPRINT", "T_FULL", "T_GLOBOPS",
1394 >  "T_INVISIBLE", "T_IPV4", "T_IPV6", "T_LOCOPS", "T_LOG", "T_MAX_CLIENTS",
1395 >  "T_NCHANGE", "T_NONONREG", "T_OPERWALL", "T_RECVQ", "T_REJ", "T_RESTART",
1396 >  "T_SERVER", "T_SERVICE", "T_SERVICES_NAME", "T_SERVNOTICE", "T_SET",
1397 >  "T_SHARED", "T_SIZE", "T_SKILL", "T_SOFTCALLERID", "T_SPY", "T_SSL",
1398    "T_SSL_CIPHER_LIST", "T_SSL_CLIENT_METHOD", "T_SSL_SERVER_METHOD",
1399    "T_SSLV3", "T_TLSV1", "T_UMODES", "T_UNAUTH", "T_UNDLINE", "T_UNLIMITED",
1400    "T_UNRESV", "T_UNXLINE", "T_WALLOP", "T_WALLOPS", "T_WEBIRC", "TBOOL",
# Line 1419 | Line 1423 | static const char *const yytname[] =
1423    "logging_file_size", "logging_file_type", "$@3",
1424    "logging_file_type_items", "logging_file_type_item", "oper_entry", "$@4",
1425    "oper_items", "oper_item", "oper_name", "oper_user", "oper_password",
1426 <  "oper_encrypted", "oper_rsa_public_key_file", "oper_class",
1427 <  "oper_umodes", "$@5", "oper_umodes_items", "oper_umodes_item",
1428 <  "oper_flags", "$@6", "oper_flags_items", "oper_flags_item",
1429 <  "class_entry", "$@7", "class_items", "class_item", "class_name",
1430 <  "class_ping_time", "class_number_per_ip", "class_connectfreq",
1431 <  "class_max_number", "class_max_global", "class_max_local",
1432 <  "class_max_ident", "class_sendq", "class_recvq",
1426 >  "oper_encrypted", "oper_rsa_public_key_file", "oper_fingerprint",
1427 >  "oper_class", "oper_umodes", "$@5", "oper_umodes_items",
1428 >  "oper_umodes_item", "oper_flags", "$@6", "oper_flags_items",
1429 >  "oper_flags_item", "class_entry", "$@7", "class_items", "class_item",
1430 >  "class_name", "class_ping_time", "class_number_per_ip",
1431 >  "class_connectfreq", "class_max_number", "class_max_global",
1432 >  "class_max_local", "class_max_ident", "class_sendq", "class_recvq",
1433    "class_cidr_bitlen_ipv4", "class_cidr_bitlen_ipv6",
1434    "class_number_per_cidr", "class_min_idle", "class_max_idle",
1435    "class_flags", "$@8", "class_flags_items", "class_flags_item",
# Line 1444 | Line 1448 | static const char *const yytname[] =
1448    "cluster_type", "$@18", "cluster_types", "cluster_type_item",
1449    "connect_entry", "$@19", "connect_items", "connect_item", "connect_name",
1450    "connect_host", "connect_vhost", "connect_send_password",
1451 <  "connect_accept_password", "connect_port", "connect_aftype",
1452 <  "connect_flags", "$@20", "connect_flags_items", "connect_flags_item",
1453 <  "connect_encrypted", "connect_hub_mask", "connect_leaf_mask",
1454 <  "connect_class", "connect_ssl_cipher_list", "kill_entry", "$@21",
1455 <  "kill_items", "kill_item", "kill_user", "kill_reason", "deny_entry",
1456 <  "$@22", "deny_items", "deny_item", "deny_ip", "deny_reason",
1457 <  "exempt_entry", "exempt_items", "exempt_item", "exempt_ip",
1458 <  "gecos_entry", "$@23", "gecos_items", "gecos_item", "gecos_name",
1459 <  "gecos_reason", "general_entry", "general_items", "general_item",
1460 <  "general_max_watch", "general_gline_enable", "general_gline_duration",
1461 <  "general_gline_request_duration", "general_gline_min_cidr",
1462 <  "general_gline_min_cidr6", "general_tkline_expire_notices",
1463 <  "general_kill_chase_time_limit", "general_hide_spoof_ips",
1464 <  "general_ignore_bogus_ts", "general_failed_oper_notice",
1465 <  "general_anti_nick_flood", "general_max_nick_time",
1466 <  "general_max_nick_changes", "general_max_accept",
1467 <  "general_anti_spam_exit_message_time", "general_ts_warn_delta",
1468 <  "general_ts_max_delta", "general_havent_read_conf",
1469 <  "general_invisible_on_connect", "general_warn_no_nline",
1470 <  "general_stats_e_disabled", "general_stats_o_oper_only",
1471 <  "general_stats_P_oper_only", "general_stats_k_oper_only",
1472 <  "general_stats_i_oper_only", "general_pace_wait",
1473 <  "general_caller_id_wait", "general_opers_bypass_callerid",
1474 <  "general_pace_wait_simple", "general_short_motd",
1475 <  "general_no_oper_flood", "general_true_no_oper_flood",
1476 <  "general_oper_pass_resv", "general_dots_in_ident", "general_max_targets",
1477 <  "general_use_egd", "general_egdpool_path", "general_services_name",
1478 <  "general_ping_cookie", "general_disable_auth", "general_throttle_time",
1479 <  "general_oper_umodes", "$@24", "umode_oitems", "umode_oitem",
1480 <  "general_oper_only_umodes", "$@25", "umode_items", "umode_item",
1481 <  "general_min_nonwildcard", "general_min_nonwildcard_simple",
1482 <  "general_default_floodcount", "channel_entry", "channel_items",
1483 <  "channel_item", "channel_disable_fake_channels", "channel_knock_delay",
1451 >  "connect_accept_password", "connect_fingerprint", "connect_port",
1452 >  "connect_aftype", "connect_flags", "$@20", "connect_flags_items",
1453 >  "connect_flags_item", "connect_encrypted", "connect_hub_mask",
1454 >  "connect_leaf_mask", "connect_class", "connect_ssl_cipher_list",
1455 >  "kill_entry", "$@21", "kill_items", "kill_item", "kill_user",
1456 >  "kill_reason", "deny_entry", "$@22", "deny_items", "deny_item",
1457 >  "deny_ip", "deny_reason", "exempt_entry", "exempt_items", "exempt_item",
1458 >  "exempt_ip", "gecos_entry", "$@23", "gecos_items", "gecos_item",
1459 >  "gecos_name", "gecos_reason", "general_entry", "general_items",
1460 >  "general_item", "general_max_watch", "general_gline_enable",
1461 >  "general_gline_duration", "general_gline_request_duration",
1462 >  "general_gline_min_cidr", "general_gline_min_cidr6",
1463 >  "general_tkline_expire_notices", "general_kill_chase_time_limit",
1464 >  "general_hide_spoof_ips", "general_ignore_bogus_ts",
1465 >  "general_failed_oper_notice", "general_anti_nick_flood",
1466 >  "general_max_nick_time", "general_max_nick_changes",
1467 >  "general_max_accept", "general_anti_spam_exit_message_time",
1468 >  "general_ts_warn_delta", "general_ts_max_delta",
1469 >  "general_havent_read_conf", "general_invisible_on_connect",
1470 >  "general_warn_no_nline", "general_stats_e_disabled",
1471 >  "general_stats_o_oper_only", "general_stats_P_oper_only",
1472 >  "general_stats_k_oper_only", "general_stats_i_oper_only",
1473 >  "general_pace_wait", "general_caller_id_wait",
1474 >  "general_opers_bypass_callerid", "general_pace_wait_simple",
1475 >  "general_short_motd", "general_no_oper_flood",
1476 >  "general_true_no_oper_flood", "general_oper_pass_resv",
1477 >  "general_dots_in_ident", "general_max_targets", "general_use_egd",
1478 >  "general_egdpool_path", "general_services_name", "general_ping_cookie",
1479 >  "general_disable_auth", "general_throttle_time", "general_oper_umodes",
1480 >  "$@24", "umode_oitems", "umode_oitem", "general_oper_only_umodes",
1481 >  "$@25", "umode_items", "umode_item", "general_min_nonwildcard",
1482 >  "general_min_nonwildcard_simple", "general_default_floodcount",
1483 >  "channel_entry", "channel_items", "channel_item",
1484 >  "channel_disable_fake_channels", "channel_knock_delay",
1485    "channel_knock_delay_channel", "channel_max_chans_per_user",
1486    "channel_max_chans_per_oper", "channel_max_bans",
1487    "channel_default_split_user_count", "channel_default_split_server_count",
# Line 1517 | Line 1522 | static const yytype_uint16 yytoknum[] =
1522       445,   446,   447,   448,   449,   450,   451,   452,   453,   454,
1523       455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
1524       465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
1525 <     475,   476,   477,    59,   125,   123,    61,    44,    58
1525 >     475,   476,   477,   478,    59,   125,   123,    61,    44,    58
1526   };
1527   # endif
1528  
1529   /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
1530   static const yytype_uint16 yyr1[] =
1531   {
1532 <       0,   229,   230,   230,   231,   231,   231,   231,   231,   231,
1533 <     231,   231,   231,   231,   231,   231,   231,   231,   231,   231,
1534 <     231,   231,   231,   231,   231,   231,   231,   232,   232,   233,
1535 <     233,   233,   233,   233,   233,   233,   233,   234,   234,   235,
1536 <     235,   235,   235,   236,   237,   237,   238,   238,   238,   239,
1537 <     240,   241,   242,   242,   243,   243,   243,   243,   243,   243,
1538 <     243,   243,   243,   243,   243,   243,   243,   243,   243,   243,
1539 <     243,   243,   244,   245,   246,   246,   247,   247,   248,   248,
1540 <     249,   249,   250,   251,   252,   253,   254,   255,   256,   257,
1541 <     258,   259,   260,   261,   262,   263,   264,   265,   266,   266,
1542 <     267,   267,   267,   267,   268,   269,   270,   272,   271,   273,
1543 <     273,   274,   274,   274,   275,   276,   277,   278,   278,   279,
1544 <     279,   279,   280,   282,   281,   283,   283,   284,   284,   284,
1545 <     284,   285,   286,   286,   288,   287,   289,   289,   290,   290,
1546 <     290,   290,   290,   290,   290,   292,   291,   293,   293,   294,
1547 <     294,   294,   294,   294,   294,   294,   294,   294,   295,   296,
1548 <     297,   298,   299,   300,   302,   301,   303,   303,   304,   304,
1549 <     304,   304,   304,   304,   304,   304,   304,   304,   304,   304,
1550 <     304,   304,   304,   304,   304,   304,   304,   304,   304,   306,
1551 <     305,   307,   307,   308,   308,   308,   308,   308,   308,   308,
1552 <     308,   308,   308,   308,   308,   308,   308,   308,   308,   308,
1553 <     308,   308,   308,   308,   308,   308,   310,   309,   311,   311,
1554 <     312,   312,   312,   312,   312,   312,   312,   312,   312,   312,
1555 <     312,   312,   312,   312,   312,   312,   312,   313,   314,   315,
1532 >       0,   230,   231,   231,   232,   232,   232,   232,   232,   232,
1533 >     232,   232,   232,   232,   232,   232,   232,   232,   232,   232,
1534 >     232,   232,   232,   232,   232,   232,   232,   233,   233,   234,
1535 >     234,   234,   234,   234,   234,   234,   234,   235,   235,   236,
1536 >     236,   236,   236,   237,   238,   238,   239,   239,   239,   240,
1537 >     241,   242,   243,   243,   244,   244,   244,   244,   244,   244,
1538 >     244,   244,   244,   244,   244,   244,   244,   244,   244,   244,
1539 >     244,   244,   245,   246,   247,   247,   248,   248,   249,   249,
1540 >     250,   250,   251,   252,   253,   254,   255,   256,   257,   258,
1541 >     259,   260,   261,   262,   263,   264,   265,   266,   267,   267,
1542 >     268,   268,   268,   268,   269,   270,   271,   273,   272,   274,
1543 >     274,   275,   275,   275,   276,   277,   278,   279,   279,   280,
1544 >     280,   280,   281,   283,   282,   284,   284,   285,   285,   285,
1545 >     285,   286,   287,   287,   289,   288,   290,   290,   291,   291,
1546 >     291,   291,   291,   291,   291,   293,   292,   294,   294,   295,
1547 >     295,   295,   295,   295,   295,   295,   295,   295,   295,   296,
1548 >     297,   298,   299,   300,   301,   302,   304,   303,   305,   305,
1549 >     306,   306,   306,   306,   306,   306,   306,   306,   306,   306,
1550 >     306,   306,   306,   306,   306,   306,   306,   306,   306,   306,
1551 >     306,   308,   307,   309,   309,   310,   310,   310,   310,   310,
1552 >     310,   310,   310,   310,   310,   310,   310,   310,   310,   310,
1553 >     310,   310,   310,   310,   310,   310,   310,   310,   312,   311,
1554 >     313,   313,   314,   314,   314,   314,   314,   314,   314,   314,
1555 >     314,   314,   314,   314,   314,   314,   314,   314,   314,   315,
1556       316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
1557 <     326,   327,   329,   328,   330,   330,   331,   331,   333,   332,
1558 <     335,   334,   336,   336,   337,   337,   337,   338,   338,   339,
1559 <     339,   339,   339,   339,   341,   340,   342,   342,   343,   343,
1560 <     344,   345,   347,   346,   348,   348,   349,   349,   349,   349,
1561 <     349,   349,   349,   349,   349,   350,   351,   352,   353,   355,
1562 <     354,   356,   356,   357,   357,   357,   357,   357,   357,   357,
1563 <     357,   357,   357,   358,   359,   360,   362,   361,   363,   363,
1564 <     364,   364,   364,   364,   365,   366,   367,   368,   369,   369,
1565 <     370,   370,   371,   373,   372,   374,   374,   375,   375,   375,
1566 <     375,   376,   377,   379,   378,   380,   380,   381,   381,   381,
1567 <     381,   381,   381,   381,   381,   381,   381,   383,   382,   384,
1568 <     384,   385,   385,   385,   386,   388,   387,   389,   389,   390,
1569 <     390,   390,   390,   390,   390,   390,   390,   390,   390,   392,
1570 <     391,   393,   393,   394,   394,   394,   394,   394,   394,   394,
1571 <     394,   394,   394,   394,   394,   394,   394,   395,   396,   397,
1572 <     398,   399,   400,   401,   401,   403,   402,   404,   404,   405,
1573 <     405,   406,   407,   408,   409,   410,   412,   411,   413,   413,
1574 <     414,   414,   414,   415,   416,   418,   417,   419,   419,   420,
1575 <     420,   420,   421,   422,   423,   424,   424,   425,   425,   426,
1576 <     428,   427,   429,   429,   430,   430,   430,   431,   432,   433,
1577 <     434,   434,   435,   435,   435,   435,   435,   435,   435,   435,
1578 <     435,   435,   435,   435,   435,   435,   435,   435,   435,   435,
1579 <     435,   435,   435,   435,   435,   435,   435,   435,   435,   435,
1580 <     435,   435,   435,   435,   435,   435,   435,   435,   435,   435,
1581 <     435,   435,   435,   435,   435,   435,   435,   435,   435,   435,
1582 <     436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
1583 <     446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
1584 <     456,   457,   458,   459,   460,   460,   461,   461,   462,   463,
1585 <     464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
1586 <     474,   475,   476,   477,   479,   478,   480,   480,   481,   481,
1587 <     481,   481,   481,   481,   481,   481,   481,   481,   481,   481,
1588 <     481,   481,   481,   481,   481,   481,   481,   481,   481,   483,
1589 <     482,   484,   484,   485,   485,   485,   485,   485,   485,   485,
1590 <     485,   485,   485,   485,   485,   485,   485,   485,   485,   485,
1591 <     485,   485,   485,   485,   486,   487,   488,   489,   490,   490,
1592 <     491,   491,   491,   491,   491,   491,   491,   491,   491,   491,
1593 <     491,   491,   491,   492,   493,   494,   495,   496,   497,   498,
1594 <     499,   500,   501,   502,   503,   504,   505,   505,   506,   506,
1595 <     506,   506,   506,   506,   506,   506,   506,   507,   508,   509,
1596 <     510,   511,   512,   513,   514
1557 >     326,   327,   328,   329,   331,   330,   332,   332,   333,   333,
1558 >     335,   334,   337,   336,   338,   338,   339,   339,   339,   340,
1559 >     340,   341,   341,   341,   341,   341,   343,   342,   344,   344,
1560 >     345,   345,   346,   347,   349,   348,   350,   350,   351,   351,
1561 >     351,   351,   351,   351,   351,   351,   351,   352,   353,   354,
1562 >     355,   357,   356,   358,   358,   359,   359,   359,   359,   359,
1563 >     359,   359,   359,   359,   359,   360,   361,   362,   364,   363,
1564 >     365,   365,   366,   366,   366,   366,   367,   368,   369,   370,
1565 >     371,   371,   372,   372,   373,   375,   374,   376,   376,   377,
1566 >     377,   377,   377,   378,   379,   381,   380,   382,   382,   383,
1567 >     383,   383,   383,   383,   383,   383,   383,   383,   383,   385,
1568 >     384,   386,   386,   387,   387,   387,   388,   390,   389,   391,
1569 >     391,   392,   392,   392,   392,   392,   392,   392,   392,   392,
1570 >     392,   394,   393,   395,   395,   396,   396,   396,   396,   396,
1571 >     396,   396,   396,   396,   396,   396,   396,   396,   396,   396,
1572 >     397,   398,   399,   400,   401,   402,   403,   404,   404,   406,
1573 >     405,   407,   407,   408,   408,   409,   410,   411,   412,   413,
1574 >     415,   414,   416,   416,   417,   417,   417,   418,   419,   421,
1575 >     420,   422,   422,   423,   423,   423,   424,   425,   426,   427,
1576 >     427,   428,   428,   429,   431,   430,   432,   432,   433,   433,
1577 >     433,   434,   435,   436,   437,   437,   438,   438,   438,   438,
1578 >     438,   438,   438,   438,   438,   438,   438,   438,   438,   438,
1579 >     438,   438,   438,   438,   438,   438,   438,   438,   438,   438,
1580 >     438,   438,   438,   438,   438,   438,   438,   438,   438,   438,
1581 >     438,   438,   438,   438,   438,   438,   438,   438,   438,   438,
1582 >     438,   438,   438,   438,   439,   440,   441,   442,   443,   444,
1583 >     445,   446,   447,   448,   449,   450,   451,   452,   453,   454,
1584 >     455,   456,   457,   458,   459,   460,   461,   462,   463,   463,
1585 >     464,   464,   465,   466,   467,   468,   469,   470,   471,   472,
1586 >     473,   474,   475,   476,   477,   478,   479,   480,   482,   481,
1587 >     483,   483,   484,   484,   484,   484,   484,   484,   484,   484,
1588 >     484,   484,   484,   484,   484,   484,   484,   484,   484,   484,
1589 >     484,   484,   484,   486,   485,   487,   487,   488,   488,   488,
1590 >     488,   488,   488,   488,   488,   488,   488,   488,   488,   488,
1591 >     488,   488,   488,   488,   488,   488,   488,   488,   489,   490,
1592 >     491,   492,   493,   493,   494,   494,   494,   494,   494,   494,
1593 >     494,   494,   494,   494,   494,   494,   494,   495,   496,   497,
1594 >     498,   499,   500,   501,   502,   503,   504,   505,   506,   507,
1595 >     508,   508,   509,   509,   509,   509,   509,   509,   509,   509,
1596 >     509,   510,   511,   512,   513,   514,   515,   516,   517
1597   };
1598  
1599   /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
# Line 1609 | Line 1614 | static const yytype_uint8 yyr2[] =
1614         1,     2,     4,     0,     6,     2,     1,     1,     1,     1,
1615         2,     4,     4,     4,     0,     5,     3,     1,     1,     1,
1616         1,     1,     1,     1,     1,     0,     6,     2,     1,     1,
1617 <       1,     1,     1,     1,     1,     1,     1,     2,     4,     4,
1618 <       4,     4,     4,     4,     0,     5,     3,     1,     1,     1,
1617 >       1,     1,     1,     1,     1,     1,     1,     1,     2,     4,
1618 >       4,     4,     4,     4,     4,     4,     0,     5,     3,     1,
1619         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1615       1,     1,     1,     1,     1,     1,     1,     1,     1,     0,
1616       5,     3,     1,     3,     1,     3,     1,     3,     1,     1,
1620         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1621 <       1,     1,     1,     1,     1,     1,     0,     6,     2,     1,
1621 >       1,     0,     5,     3,     1,     3,     1,     3,     1,     3,
1622         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1623 <       1,     1,     1,     1,     1,     1,     2,     4,     4,     4,
1623 >       1,     1,     1,     1,     1,     1,     1,     1,     0,     6,
1624 >       2,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1625 >       1,     1,     1,     1,     1,     1,     1,     1,     2,     4,
1626         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1627 <       4,     4,     0,     5,     3,     1,     1,     1,     0,     6,
1628 <       0,     5,     3,     1,     1,     1,     1,     2,     1,     1,
1629 <       1,     1,     1,     2,     0,     5,     3,     1,     1,     3,
1630 <       4,     4,     0,     6,     2,     1,     1,     1,     1,     1,
1626 <       1,     1,     1,     1,     2,     4,     4,     4,     4,     0,
1627 <       5,     3,     1,     1,     1,     1,     1,     1,     1,     1,
1628 <       1,     1,     1,     4,     4,     4,     0,     6,     2,     1,
1629 <       1,     1,     1,     2,     4,     4,     4,     5,     2,     1,
1630 <       1,     1,     4,     0,     6,     2,     1,     1,     1,     1,
1631 <       2,     4,     4,     0,     5,     3,     1,     1,     1,     1,
1632 <       1,     1,     1,     1,     1,     1,     1,     0,     6,     2,
1633 <       1,     1,     1,     2,     4,     0,     5,     3,     1,     1,
1634 <       1,     1,     1,     1,     1,     1,     1,     1,     1,     0,
1635 <       6,     2,     1,     1,     1,     1,     1,     1,     1,     1,
1627 >       4,     4,     4,     4,     0,     5,     3,     1,     1,     1,
1628 >       0,     6,     0,     5,     3,     1,     1,     1,     1,     2,
1629 >       1,     1,     1,     1,     1,     2,     0,     5,     3,     1,
1630 >       1,     3,     4,     4,     0,     6,     2,     1,     1,     1,
1631         1,     1,     1,     1,     1,     1,     2,     4,     4,     4,
1632 <       4,     4,     4,     4,     4,     0,     5,     3,     1,     1,
1633 <       1,     4,     4,     4,     4,     4,     0,     6,     2,     1,
1634 <       1,     1,     1,     4,     4,     0,     6,     2,     1,     1,
1635 <       1,     1,     4,     4,     5,     2,     1,     1,     1,     4,
1636 <       0,     6,     2,     1,     1,     1,     1,     4,     4,     5,
1637 <       2,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1632 >       4,     0,     5,     3,     1,     1,     1,     1,     1,     1,
1633 >       1,     1,     1,     1,     1,     4,     4,     4,     0,     6,
1634 >       2,     1,     1,     1,     1,     2,     4,     4,     4,     5,
1635 >       2,     1,     1,     1,     4,     0,     6,     2,     1,     1,
1636 >       1,     1,     2,     4,     4,     0,     5,     3,     1,     1,
1637 >       1,     1,     1,     1,     1,     1,     1,     1,     1,     0,
1638 >       6,     2,     1,     1,     1,     2,     4,     0,     5,     3,
1639         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1640 +       1,     0,     6,     2,     1,     1,     1,     1,     1,     1,
1641 +       1,     1,     1,     1,     1,     1,     1,     1,     1,     2,
1642 +       4,     4,     4,     4,     4,     4,     4,     4,     4,     0,
1643 +       5,     3,     1,     1,     1,     4,     4,     4,     4,     4,
1644 +       0,     6,     2,     1,     1,     1,     1,     4,     4,     0,
1645 +       6,     2,     1,     1,     1,     1,     4,     4,     5,     2,
1646 +       1,     1,     1,     4,     0,     6,     2,     1,     1,     1,
1647 +       1,     4,     4,     5,     2,     1,     1,     1,     1,     1,
1648         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1649         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1650         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1651 +       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1652 +       1,     1,     1,     1,     4,     4,     4,     4,     4,     4,
1653         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1654         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1655         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1656 <       4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1657 <       4,     4,     4,     4,     0,     5,     3,     1,     1,     1,
1656 >       4,     4,     4,     4,     4,     4,     4,     4,     0,     5,
1657 >       3,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1658         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1659 <       1,     1,     1,     1,     1,     1,     1,     1,     1,     0,
1654 <       5,     3,     1,     1,     1,     1,     1,     1,     1,     1,
1655 <       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1656 <       1,     1,     1,     1,     4,     4,     4,     5,     2,     1,
1659 >       1,     1,     1,     0,     5,     3,     1,     1,     1,     1,
1660         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1661 <       1,     1,     1,     4,     4,     4,     4,     4,     4,     4,
1662 <       4,     4,     4,     4,     4,     5,     2,     1,     1,     1,
1661 >       1,     1,     1,     1,     1,     1,     1,     1,     4,     4,
1662 >       4,     5,     2,     1,     1,     1,     1,     1,     1,     1,
1663         1,     1,     1,     1,     1,     1,     1,     4,     4,     4,
1664 <       4,     4,     4,     4,     4
1664 >       4,     4,     4,     4,     4,     4,     4,     4,     4,     5,
1665 >       2,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1666 >       1,     4,     4,     4,     4,     4,     4,     4,     4
1667   };
1668  
1669   /* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM.
# Line 1666 | Line 1671 | static const yytype_uint8 yyr2[] =
1671     means the default is an error.  */
1672   static const yytype_uint16 yydefact[] =
1673   {
1674 <       2,     0,     1,     0,     0,     0,   216,   379,   425,     0,
1675 <     440,     0,   282,   416,   258,     0,   107,   145,   316,     0,
1676 <       0,   357,     0,     0,   333,     3,    23,    11,     4,    24,
1674 >       2,     0,     1,     0,     0,     0,   218,   381,   429,     0,
1675 >     444,     0,   284,   420,   260,     0,   107,   145,   318,     0,
1676 >       0,   359,     0,     0,   335,     3,    23,    11,     4,    24,
1677         5,     6,     8,     9,    10,    13,    14,    15,    16,    17,
1678        18,    19,    20,    22,    21,     7,    12,    25,    26,     0,
1679         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1680         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1681 <       0,     0,     0,     0,     0,    99,   100,   102,   101,   612,
1681 >       0,     0,     0,     0,     0,    99,   100,   102,   101,   616,
1682         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1683 <       0,     0,     0,   599,   611,   601,   602,   603,   604,   600,
1684 <     605,   606,   607,   608,   609,   610,     0,     0,     0,   438,
1685 <       0,     0,   436,   437,     0,   499,     0,     0,     0,     0,
1683 >       0,     0,     0,   603,   615,   605,   606,   607,   608,   604,
1684 >     609,   610,   611,   612,   613,   614,     0,     0,     0,   442,
1685 >       0,     0,   440,   441,     0,   503,     0,     0,     0,     0,
1686         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1687         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1688 <       0,     0,   569,     0,   544,     0,     0,     0,     0,     0,
1688 >       0,     0,   573,     0,   548,     0,     0,     0,     0,     0,
1689         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1690 <       0,     0,     0,     0,   451,   497,   491,   492,   493,   494,
1691 <     495,   490,   462,   452,   453,   454,   455,   456,   457,   458,
1692 <     459,   460,   461,   487,   463,   464,   496,   466,   471,   467,
1693 <     469,   468,   481,   482,   470,   472,   473,   474,   475,   465,
1694 <     477,   478,   479,   498,   488,   489,   486,   480,   476,   484,
1695 <     485,   483,     0,     0,     0,     0,     0,     0,     0,    45,
1696 <      46,    47,     0,     0,     0,   636,     0,     0,     0,     0,
1697 <       0,     0,     0,     0,     0,   627,   628,   629,   630,   631,
1698 <     634,   632,   633,   635,     0,     0,     0,     0,     0,     0,
1690 >       0,     0,     0,     0,   455,   501,   495,   496,   497,   498,
1691 >     499,   494,   466,   456,   457,   458,   459,   460,   461,   462,
1692 >     463,   464,   465,   491,   467,   468,   500,   470,   475,   471,
1693 >     473,   472,   485,   486,   474,   476,   477,   478,   479,   469,
1694 >     481,   482,   483,   502,   492,   493,   490,   484,   480,   488,
1695 >     489,   487,     0,     0,     0,     0,     0,     0,     0,    45,
1696 >      46,    47,     0,     0,     0,   640,     0,     0,     0,     0,
1697 >       0,     0,     0,     0,     0,   631,   632,   633,   634,   635,
1698 >     638,   636,   637,   639,     0,     0,     0,     0,     0,     0,
1699         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1700         0,     0,     0,    53,    68,    69,    67,    64,    63,    70,
1701        54,    66,    57,    58,    59,    55,    65,    60,    61,    62,
1702 <      56,     0,     0,     0,     0,   118,   119,   120,     0,   331,
1703 <       0,     0,   329,   330,     0,   103,     0,     0,     0,     0,
1702 >      56,     0,     0,     0,     0,   118,   119,   120,     0,   333,
1703 >       0,     0,   331,   332,     0,   103,     0,     0,     0,     0,
1704        98,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1705 <       0,     0,     0,     0,   598,     0,     0,     0,     0,   252,
1705 >       0,     0,     0,     0,   602,     0,     0,     0,     0,   254,
1706         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1707 <       0,     0,     0,   219,   220,   223,   225,   226,   227,   228,
1708 <     229,   230,   231,   232,   221,   222,   224,   233,   234,   235,
1709 <       0,     0,     0,     0,     0,     0,     0,   405,     0,     0,
1710 <       0,     0,     0,     0,     0,   382,   383,   384,   385,   386,
1711 <     387,   389,   388,   391,   395,   392,   393,   394,   390,   431,
1712 <       0,     0,     0,   428,   429,   430,     0,     0,   435,   446,
1713 <       0,     0,     0,   443,   444,   445,     0,     0,     0,     0,
1707 >       0,     0,     0,   221,   222,   225,   227,   228,   229,   230,
1708 >     231,   232,   233,   234,   223,   224,   226,   235,   236,   237,
1709 >       0,     0,     0,     0,     0,     0,     0,   409,     0,     0,
1710 >       0,     0,     0,     0,     0,     0,   384,   385,   386,   387,
1711 >     388,   389,   390,   392,   391,   394,   398,   395,   396,   397,
1712 >     393,   435,     0,     0,     0,   432,   433,   434,     0,     0,
1713 >     439,   450,     0,     0,     0,   447,   448,   449,     0,     0,
1714         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1715         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1716         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1717         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1718 <       0,     0,     0,     0,   450,     0,     0,     0,   299,     0,
1719 <       0,     0,     0,     0,     0,   285,   286,   287,   288,   293,
1720 <     289,   290,   291,   292,   422,     0,     0,     0,   419,   420,
1721 <     421,     0,     0,     0,   260,     0,   270,     0,   268,   269,
1722 <     271,   272,    48,     0,     0,     0,    44,     0,     0,     0,
1723 <       0,   110,   111,   112,     0,     0,     0,   189,     0,     0,
1724 <       0,   164,     0,     0,   148,   149,   150,   151,   154,   155,
1725 <     153,   152,   156,     0,     0,     0,     0,     0,   319,   320,
1726 <     321,   322,     0,     0,     0,     0,     0,     0,     0,     0,
1727 <       0,   626,    71,     0,     0,     0,     0,     0,     0,     0,
1718 >       0,     0,     0,     0,     0,     0,   454,     0,     0,     0,
1719 >     301,     0,     0,     0,     0,     0,     0,   287,   288,   289,
1720 >     290,   295,   291,   292,   293,   294,   426,     0,     0,     0,
1721 >     423,   424,   425,     0,     0,     0,   262,     0,   272,     0,
1722 >     270,   271,   273,   274,    48,     0,     0,     0,    44,     0,
1723 >       0,     0,     0,   110,   111,   112,     0,     0,     0,   191,
1724 >       0,     0,     0,     0,   166,     0,     0,   148,   149,   150,
1725 >     151,   154,   155,   156,   153,   152,   157,     0,     0,     0,
1726 >       0,     0,   321,   322,   323,   324,     0,     0,     0,     0,
1727 >       0,     0,     0,     0,     0,   630,    71,     0,     0,     0,
1728         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1729 <       0,    52,     0,     0,   365,     0,   360,   361,   362,   121,
1730 <       0,     0,   117,     0,     0,     0,   328,     0,     0,   343,
1731 <       0,     0,   336,   337,   338,   339,     0,     0,     0,    97,
1732 <       0,     0,     0,     0,    27,     0,     0,     0,     0,     0,
1733 <       0,     0,     0,   597,   236,     0,     0,     0,     0,     0,
1729 >       0,     0,     0,     0,     0,    52,     0,     0,   367,     0,
1730 >     362,   363,   364,   121,     0,     0,   117,     0,     0,     0,
1731 >     330,     0,     0,   345,     0,     0,   338,   339,   340,   341,
1732 >       0,     0,     0,    97,     0,     0,     0,     0,    27,     0,
1733 >       0,     0,     0,     0,     0,     0,     0,   601,   238,     0,
1734         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1735 <       0,     0,   218,   396,     0,     0,     0,     0,     0,     0,
1731 <       0,     0,     0,     0,     0,     0,     0,     0,   381,     0,
1732 <       0,     0,   427,     0,   434,     0,     0,     0,   442,     0,
1735 >       0,     0,     0,     0,     0,     0,   220,   399,     0,     0,
1736         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1737 +       0,     0,     0,   383,     0,     0,     0,   431,     0,   438,
1738 +       0,     0,     0,   446,     0,     0,     0,     0,     0,     0,
1739         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1740         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1741         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1737       0,     0,     0,     0,     0,     0,     0,     0,   449,   294,
1738       0,     0,     0,     0,     0,     0,     0,     0,     0,   284,
1739       0,     0,     0,   418,   273,     0,     0,     0,     0,     0,
1740     267,     0,     0,    43,   113,     0,     0,     0,   109,   157,
1741       0,     0,     0,     0,     0,     0,     0,     0,     0,   147,
1742     323,     0,     0,     0,     0,   318,     0,     0,     0,     0,
1743       0,     0,     0,     0,   625,     0,     0,     0,     0,     0,
1744       0,     0,     0,     0,     0,     0,     0,     0,    76,    77,
1745       0,    75,    80,    81,     0,    79,     0,     0,    51,   363,
1746       0,     0,     0,   359,     0,   116,     0,     0,   327,   340,
1747       0,     0,     0,     0,   335,   106,   105,   104,   620,   619,
1748     613,   623,    27,    27,    27,    27,    27,    27,    27,    29,
1749      28,   624,   614,   615,   618,   617,   616,   621,   622,     0,
1742         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1743 <       0,     0,     0,    37,     0,     0,   217,     0,     0,     0,
1744 <       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1745 <       0,   380,     0,     0,   426,   439,     0,     0,   441,   511,
1746 <     515,   529,   596,   542,   536,   539,   510,   502,   501,   504,
1747 <     505,   503,   518,   508,   509,   519,   507,   514,   513,   512,
1748 <     537,   500,   594,   595,   533,   579,   573,   590,   574,   575,
1749 <     576,   584,   593,   577,   587,   591,   580,   592,   585,   581,
1750 <     586,   578,   589,   583,   582,   588,     0,   572,   535,   553,
1751 <     548,   565,   549,   550,   551,   559,   568,   552,   562,   566,
1752 <     555,   567,   560,   556,   561,   554,   564,   558,   557,   563,
1753 <       0,   547,   530,   528,   531,   541,   532,   521,   526,   527,
1754 <     524,   525,   522,   523,   540,   543,   506,   534,   517,   516,
1755 <     538,   520,     0,     0,     0,     0,     0,     0,     0,     0,
1756 <     283,     0,     0,   417,     0,     0,     0,   278,   274,   277,
1757 <     259,    49,    50,     0,     0,   108,     0,     0,     0,     0,
1758 <       0,     0,     0,     0,   146,     0,     0,     0,   317,   638,
1759 <     637,   643,   641,   644,   639,   640,   642,    88,    96,    87,
1760 <      94,    95,    86,    90,    89,    83,    82,    84,    93,    85,
1761 <      72,     0,    73,     0,    91,    92,     0,     0,   358,   122,
1762 <       0,     0,     0,   134,     0,   126,   127,   129,   128,   332,
1763 <       0,     0,     0,   334,    30,    31,    32,    33,    34,    35,
1764 <      36,   247,   248,   240,   257,   256,     0,   255,   242,   244,
1765 <     251,   243,   241,   250,   237,   249,   239,   238,    37,    37,
1766 <      37,    39,    38,   245,   246,   401,   403,   404,   414,   411,
1767 <     398,   412,   409,   410,     0,   408,   413,   397,   402,   400,
1768 <     415,   399,   432,   433,   447,   448,   570,     0,   545,     0,
1769 <     297,   298,   307,   304,   309,   305,   306,   312,   308,   310,
1770 <     303,   311,     0,   302,   296,   315,   314,   313,   295,   424,
1771 <     423,   281,   280,   265,   266,   264,     0,   263,     0,     0,
1772 <       0,   114,   115,   163,   161,   208,   196,   205,   204,   194,
1773 <     199,   215,   207,   213,   198,   201,   210,   212,   209,   206,
1774 <     214,   202,   211,   200,   203,     0,   192,   158,   160,   162,
1775 <     173,   168,   185,   169,   170,   171,   179,   188,   172,   182,
1776 <     186,   175,   187,   180,   176,   181,   174,   184,   178,   177,
1777 <     183,     0,   167,   159,   326,   324,   325,    74,    78,   364,
1778 <     369,   375,   378,   371,   377,   372,   376,   374,   370,   373,
1779 <       0,   368,   130,     0,     0,     0,     0,   125,   341,   347,
1780 <     353,   356,   349,   355,   350,   354,   352,   348,   351,     0,
1781 <     346,   342,   253,     0,    40,    41,    42,   406,     0,   571,
1782 <     546,   300,     0,   261,     0,   279,   276,   275,     0,     0,
1783 <       0,   190,     0,   165,     0,   366,     0,     0,     0,     0,
1784 <       0,   124,   344,     0,   254,   407,   301,   262,   195,   193,
1785 <     197,   191,   166,   367,   131,   133,   132,   140,   143,   142,
1786 <     139,   144,   141,   138,     0,   137,   345,   135,     0,   136
1743 >       0,     0,     0,   453,   296,     0,     0,     0,     0,     0,
1744 >       0,     0,     0,     0,   286,     0,     0,     0,   422,   275,
1745 >       0,     0,     0,     0,     0,   269,     0,     0,    43,   113,
1746 >       0,     0,     0,   109,   158,     0,     0,     0,     0,     0,
1747 >       0,     0,     0,     0,     0,   147,   325,     0,     0,     0,
1748 >       0,   320,     0,     0,     0,     0,     0,     0,     0,     0,
1749 >     629,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1750 >       0,     0,     0,     0,    76,    77,     0,    75,    80,    81,
1751 >       0,    79,     0,     0,    51,   365,     0,     0,     0,   361,
1752 >       0,   116,     0,     0,   329,   342,     0,     0,     0,     0,
1753 >     337,   106,   105,   104,   624,   623,   617,   627,    27,    27,
1754 >      27,    27,    27,    27,    27,    29,    28,   628,   618,   619,
1755 >     622,   621,   620,   625,   626,     0,     0,     0,     0,     0,
1756 >       0,     0,     0,     0,     0,     0,     0,     0,     0,    37,
1757 >       0,     0,   219,     0,     0,     0,     0,     0,     0,     0,
1758 >       0,     0,     0,     0,     0,     0,     0,     0,   382,     0,
1759 >       0,   430,   443,     0,     0,   445,   515,   519,   533,   600,
1760 >     546,   540,   543,   514,   506,   505,   508,   509,   507,   522,
1761 >     512,   513,   523,   511,   518,   517,   516,   541,   504,   598,
1762 >     599,   537,   583,   577,   594,   578,   579,   580,   588,   597,
1763 >     581,   591,   595,   584,   596,   589,   585,   590,   582,   593,
1764 >     587,   586,   592,     0,   576,   539,   557,   552,   569,   553,
1765 >     554,   555,   563,   572,   556,   566,   570,   559,   571,   564,
1766 >     560,   565,   558,   568,   562,   561,   567,     0,   551,   534,
1767 >     532,   535,   545,   536,   525,   530,   531,   528,   529,   526,
1768 >     527,   544,   547,   510,   538,   521,   520,   542,   524,     0,
1769 >       0,     0,     0,     0,     0,     0,     0,   285,     0,     0,
1770 >     421,     0,     0,     0,   280,   276,   279,   261,    49,    50,
1771 >       0,     0,   108,     0,     0,     0,     0,     0,     0,     0,
1772 >       0,     0,   146,     0,     0,     0,   319,   642,   641,   647,
1773 >     645,   648,   643,   644,   646,    88,    96,    87,    94,    95,
1774 >      86,    90,    89,    83,    82,    84,    93,    85,    72,     0,
1775 >      73,     0,    91,    92,     0,     0,   360,   122,     0,     0,
1776 >       0,   134,     0,   126,   127,   129,   128,   334,     0,     0,
1777 >       0,   336,    30,    31,    32,    33,    34,    35,    36,   249,
1778 >     250,   242,   259,   258,     0,   257,   244,   246,   253,   245,
1779 >     243,   252,   239,   251,   241,   240,    37,    37,    37,    39,
1780 >      38,   247,   248,   404,   407,   408,   418,   415,   401,   416,
1781 >     413,   414,     0,   412,   417,   400,   406,   403,   405,   419,
1782 >     402,   436,   437,   451,   452,   574,     0,   549,     0,   299,
1783 >     300,   309,   306,   311,   307,   308,   314,   310,   312,   305,
1784 >     313,     0,   304,   298,   317,   316,   315,   297,   428,   427,
1785 >     283,   282,   267,   268,   266,     0,   265,     0,     0,     0,
1786 >     114,   115,   165,   162,   210,   198,   207,   206,   196,   201,
1787 >     217,   209,   215,   200,   203,   212,   214,   211,   208,   216,
1788 >     204,   213,   202,   205,     0,   194,   159,   161,   163,   164,
1789 >     175,   170,   187,   171,   172,   173,   181,   190,   174,   184,
1790 >     188,   177,   189,   182,   178,   183,   176,   186,   180,   179,
1791 >     185,     0,   169,   160,   328,   326,   327,    74,    78,   366,
1792 >     371,   377,   380,   373,   379,   374,   378,   376,   372,   375,
1793 >       0,   370,   130,     0,     0,     0,     0,   125,   343,   349,
1794 >     355,   358,   351,   357,   352,   356,   354,   350,   353,     0,
1795 >     348,   344,   255,     0,    40,    41,    42,   410,     0,   575,
1796 >     550,   302,     0,   263,     0,   281,   278,   277,     0,     0,
1797 >       0,   192,     0,   167,     0,   368,     0,     0,     0,     0,
1798 >       0,   124,   346,     0,   256,   411,   303,   264,   197,   195,
1799 >     199,   193,   168,   369,   131,   133,   132,   140,   143,   142,
1800 >     139,   144,   141,   138,     0,   137,   347,   135,     0,   136
1801   };
1802  
1803   /* YYDEFGOTO[NTERM-NUM].  */
1804   static const yytype_int16 yydefgoto[] =
1805   {
1806 <      -1,     1,    25,   799,   800,  1051,  1052,    26,   218,   219,
1807 <     220,   221,    27,   262,   263,   264,   265,   760,   761,   764,
1808 <     765,   266,   267,   268,   269,   270,   271,   272,   273,   274,
1806 >      -1,     1,    25,   805,   806,  1059,  1060,    26,   218,   219,
1807 >     220,   221,    27,   262,   263,   264,   265,   766,   767,   770,
1808 >     771,   266,   267,   268,   269,   270,   271,   272,   273,   274,
1809       275,   276,   277,   278,   279,   280,    28,    74,    75,    76,
1810 <      77,    78,    29,    61,   490,   491,   492,   493,    30,   284,
1811 <     285,   286,   287,   288,  1014,  1015,  1016,  1017,  1018,  1185,
1812 <    1254,  1255,    31,    62,   503,   504,   505,   506,   507,   508,
1813 <     509,   510,   511,   726,  1161,  1162,   512,   722,  1135,  1136,
1814 <      32,    51,   332,   333,   334,   335,   336,   337,   338,   339,
1815 <     340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
1816 <     598,  1036,  1037,    33,    59,   476,   707,  1106,  1107,   477,
1817 <     478,   479,  1110,   958,   959,   480,   481,    34,    57,   454,
1818 <     455,   456,   457,   458,   459,   460,   692,  1092,  1093,   461,
1819 <     462,   463,    35,    63,   517,   518,   519,   520,   521,    36,
1820 <     291,   292,   293,    37,    69,   571,   572,   573,   574,   575,
1821 <     781,  1199,  1200,    38,    66,   555,   556,   557,   558,   771,
1822 <    1180,  1181,    39,    52,   364,   365,   366,   367,   368,   369,
1823 <     370,   371,   372,   373,   620,  1064,  1065,   374,   375,   376,
1824 <     377,   378,    40,    58,   467,   468,   469,   470,    41,    53,
1825 <     382,   383,   384,   385,    42,   111,   112,   113,    43,    55,
1826 <     392,   393,   394,   395,    44,   163,   164,   165,   166,   167,
1827 <     168,   169,   170,   171,   172,   173,   174,   175,   176,   177,
1828 <     178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
1829 <     188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
1830 <     198,   199,   200,   201,   202,   203,   204,   205,   206,   207,
1831 <     424,   920,   921,   208,   422,   896,   897,   209,   210,   211,
1832 <      45,    92,    93,    94,    95,    96,    97,    98,    99,   100,
1833 <     101,   102,   103,   104,   105,    46,   234,   235,   236,   237,
1834 <     238,   239,   240,   241,   242,   243
1810 >      77,    78,    29,    61,   492,   493,   494,   495,    30,   284,
1811 >     285,   286,   287,   288,  1022,  1023,  1024,  1025,  1026,  1195,
1812 >    1264,  1265,    31,    62,   506,   507,   508,   509,   510,   511,
1813 >     512,   513,   514,   515,   732,  1171,  1172,   516,   727,  1144,
1814 >    1145,    32,    51,   332,   333,   334,   335,   336,   337,   338,
1815 >     339,   340,   341,   342,   343,   344,   345,   346,   347,   348,
1816 >     349,   602,  1044,  1045,    33,    59,   478,   712,  1115,  1116,
1817 >     479,   480,   481,  1119,   965,   966,   482,   483,    34,    57,
1818 >     456,   457,   458,   459,   460,   461,   462,   697,  1101,  1102,
1819 >     463,   464,   465,    35,    63,   521,   522,   523,   524,   525,
1820 >      36,   291,   292,   293,    37,    69,   575,   576,   577,   578,
1821 >     579,   787,  1209,  1210,    38,    66,   559,   560,   561,   562,
1822 >     777,  1190,  1191,    39,    52,   365,   366,   367,   368,   369,
1823 >     370,   371,   372,   373,   374,   375,   624,  1072,  1073,   376,
1824 >     377,   378,   379,   380,    40,    58,   469,   470,   471,   472,
1825 >      41,    53,   384,   385,   386,   387,    42,   111,   112,   113,
1826 >      43,    55,   394,   395,   396,   397,    44,   163,   164,   165,
1827 >     166,   167,   168,   169,   170,   171,   172,   173,   174,   175,
1828 >     176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
1829 >     186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
1830 >     196,   197,   198,   199,   200,   201,   202,   203,   204,   205,
1831 >     206,   207,   426,   927,   928,   208,   424,   903,   904,   209,
1832 >     210,   211,    45,    92,    93,    94,    95,    96,    97,    98,
1833 >      99,   100,   101,   102,   103,   104,   105,    46,   234,   235,
1834 >     236,   237,   238,   239,   240,   241,   242,   243
1835   };
1836  
1837   /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1838     STATE-NUM.  */
1839 < #define YYPACT_NINF -984
1839 > #define YYPACT_NINF -736
1840   static const yytype_int16 yypact[] =
1841   {
1842 <    -984,   637,  -984,  -186,  -182,  -165,  -984,  -984,  -984,  -148,
1843 <    -984,  -135,  -984,  -984,  -984,  -127,  -984,  -984,  -984,  -118,
1844 <     -64,  -984,   -56,   -50,  -984,  -984,  -984,  -984,  -984,  -984,
1845 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1846 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,   331,
1847 <     826,   -48,   -45,   -11,    28,    36,   366,    39,    40,    41,
1848 <      60,    46,    58,    62,   721,   334,    65,    35,    24,    72,
1849 <    -195,   -66,   -21,    66,    17,  -984,  -984,  -984,  -984,  -984,
1850 <      92,    96,    97,    99,   108,   110,   111,   118,   119,   124,
1851 <     125,   133,     5,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1852 <    -984,  -984,  -984,  -984,  -984,  -984,   657,   440,    14,  -984,
1853 <     134,    12,  -984,  -984,    29,  -984,   135,   137,   138,   143,
1854 <     145,   149,   150,   153,   155,   157,   158,   162,   163,   174,
1855 <     176,   177,   178,   182,   186,   189,   190,   192,   195,   196,
1856 <     200,   201,  -984,   203,  -984,   204,   206,   210,   211,   214,
1857 <     221,   222,   225,   235,   236,   237,   238,   239,   242,   243,
1858 <     244,   249,   253,   105,  -984,  -984,  -984,  -984,  -984,  -984,
1859 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1860 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1861 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1862 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1863 <    -984,  -984,   268,    19,   212,    16,   261,   262,    38,  -984,
1864 <    -984,  -984,   165,   472,   274,  -984,   264,   266,   270,   272,
1865 <     273,   279,   280,   281,     6,  -984,  -984,  -984,  -984,  -984,
1866 <    -984,  -984,  -984,  -984,    32,   284,   287,   288,   290,   296,
1867 <     297,   298,   299,   304,   305,   306,   307,   316,   317,   319,
1868 <     320,   321,   146,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1869 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1870 <    -984,    70,    87,   322,    10,  -984,  -984,  -984,   180,  -984,
1871 <     324,    95,  -984,  -984,   173,  -984,   232,   260,   277,   215,
1872 <    -984,   387,   444,   349,   449,   450,   450,   450,   451,   453,
1873 <     456,   359,   360,   344,  -984,   347,   346,   353,   354,  -984,
1874 <     358,   362,   364,   365,   367,   369,   371,   373,   376,   380,
1875 <     383,   384,   103,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1876 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1877 <     363,   385,   388,   390,   391,   392,   393,  -984,   402,   403,
1878 <     404,   405,   409,   410,    30,  -984,  -984,  -984,  -984,  -984,
1879 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1880 <     414,   426,     4,  -984,  -984,  -984,   463,   381,  -984,  -984,
1881 <     427,   430,    44,  -984,  -984,  -984,   386,   450,   450,   506,
1882 <     455,   555,   541,   458,   450,   459,   559,   561,   450,   563,
1883 <     474,   477,   480,   450,   581,   584,   450,   586,   587,   593,
1884 <     594,   496,   479,   500,   486,   507,   450,   450,   508,   510,
1885 <     511,  -197,  -192,   514,   515,   602,   450,   519,   521,   450,
1886 <     450,   522,   524,   503,  -984,   512,   505,   516,  -984,   517,
1887 <     525,   526,   527,   530,   231,  -984,  -984,  -984,  -984,  -984,
1888 <    -984,  -984,  -984,  -984,  -984,   533,   534,    20,  -984,  -984,
1889 <    -984,   513,   535,   537,  -984,   538,  -984,    18,  -984,  -984,
1890 <    -984,  -984,  -984,   612,   619,   523,  -984,   545,   549,   550,
1891 <      67,  -984,  -984,  -984,   556,   552,   557,  -984,   558,   560,
1892 <     562,  -984,   564,   156,  -984,  -984,  -984,  -984,  -984,  -984,
1893 <    -984,  -984,  -984,   566,   565,   567,   569,    55,  -984,  -984,
1894 <    -984,  -984,   539,   576,   579,   625,   590,   596,   597,   450,
1895 <     582,  -984,  -984,   665,   598,   670,   699,   700,   686,   687,
1896 <     689,   690,   691,   693,   709,   695,  -144,   -96,   696,   698,
1897 <     607,  -984,   610,   611,  -984,   128,  -984,  -984,  -984,  -984,
1898 <     616,   615,  -984,   620,   718,   618,  -984,   626,   624,  -984,
1899 <     628,    85,  -984,  -984,  -984,  -984,   629,   635,   636,  -984,
1900 <     638,   639,   640,   641,   487,   643,   650,   653,   655,   658,
1901 <     660,   661,   669,  -984,  -984,   753,   773,   450,   662,   786,
1902 <     788,   450,   794,   795,   450,   784,   800,   802,   450,   803,
1903 <     803,   688,  -984,  -984,   790,   -55,   792,   711,   793,   796,
1904 <     694,   797,   799,   809,   801,   804,   805,   701,  -984,   806,
1905 <     810,   702,  -984,   708,  -984,   811,   812,   712,  -984,   713,
1906 <     714,   715,   716,   717,   719,   720,   722,   723,   724,   725,
1907 <     726,   727,   728,   729,   730,   731,   732,   733,   734,   735,
1908 <     736,   737,   738,   739,   740,   520,   741,   667,   742,   743,
1909 <     744,   745,   746,   747,   748,   749,   750,   751,   752,   754,
1910 <     755,   756,   757,   758,   759,   760,   761,   762,  -984,  -984,
1911 <     819,   770,   763,   822,   815,   864,   865,   866,   767,  -984,
1912 <     869,   870,   771,  -984,  -984,   871,   873,   772,   889,   774,
1913 <    -984,   776,   777,  -984,  -984,   879,   880,   780,  -984,  -984,
1914 <     882,   807,   779,   884,   885,   886,   783,   888,   789,  -984,
1915 <    -984,   892,   893,   894,   798,  -984,   808,   813,   814,   816,
1916 <     817,   818,   820,   821,  -984,   823,   824,   825,   827,   828,
1917 <     829,   830,   831,   832,   833,   834,   835,   836,  -984,  -984,
1918 <    -183,  -984,  -984,  -984,  -177,  -984,   837,   838,  -984,  -984,
1919 <     895,   785,   839,  -984,   840,  -984,   154,   841,  -984,  -984,
1920 <     896,   842,   897,   843,  -984,  -984,  -984,  -984,  -984,  -984,
1921 <    -984,  -984,   450,   450,   450,   450,   450,   450,   450,  -984,
1922 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,   844,
1923 <     846,   847,   -42,   848,   849,   850,   851,   852,   853,   854,
1924 <     855,   856,   857,    13,   858,   859,  -984,   860,   861,   862,
1925 <     863,   867,   868,   872,     8,   874,   875,   876,   877,   878,
1926 <     881,  -984,   883,   887,  -984,  -984,   890,   891,  -984,  -984,
1927 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1928 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1929 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1930 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1931 <    -984,  -984,  -984,  -984,  -984,  -984,  -174,  -984,  -984,  -984,
1932 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1933 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1934 <    -130,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1935 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1936 <    -984,  -984,   898,   899,   502,   900,   901,   902,   903,   904,
1937 <    -984,   905,   906,  -984,   907,   908,    15,   919,   909,  -984,
1938 <    -984,  -984,  -984,   910,   911,  -984,   912,   914,   435,   915,
1939 <     916,   917,   710,   918,  -984,   920,   921,   922,  -984,  -984,
1940 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1941 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1942 <    -984,  -144,  -984,   -96,  -984,  -984,   923,   337,  -984,  -984,
1943 <     924,   925,   926,  -984,    90,  -984,  -984,  -984,  -984,  -984,
1944 <     927,   599,   930,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1945 <    -984,  -984,  -984,  -984,  -984,  -984,   -65,  -984,  -984,  -984,
1946 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,   803,   803,
1947 <     803,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1948 <    -984,  -984,  -984,  -984,   -20,  -984,  -984,  -984,  -984,  -984,
1949 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,   520,  -984,   667,
1950 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1951 <    -984,  -984,   -19,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1952 <    -984,  -984,  -984,  -984,  -984,  -984,    53,  -984,   913,   889,
1953 <     931,  -984,  -984,  -984,  -984,  -984,   928,  -984,  -984,   929,
1954 <    -984,  -984,  -984,  -984,   932,  -984,  -984,  -984,  -984,  -984,
1955 <    -984,  -984,  -984,  -984,  -984,    59,  -984,  -984,  -984,  -984,
1956 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1957 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1958 <    -984,    79,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1959 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1960 <      84,  -984,  -984,   943,   -97,   933,   935,  -984,  -984,  -984,
1961 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,   101,
1962 <    -984,  -984,  -984,   -42,  -984,  -984,  -984,  -984,     8,  -984,
1963 <    -984,  -984,   502,  -984,    15,  -984,  -984,  -984,   959,   960,
1964 <     961,  -984,   435,  -984,   710,  -984,   337,   938,   939,   940,
1965 <     378,  -984,  -984,   599,  -984,  -984,  -984,  -984,  -984,  -984,
1966 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1967 <    -984,  -984,  -984,  -984,   120,  -984,  -984,  -984,   378,  -984
1842 >    -736,   630,  -736,  -163,  -195,  -186,  -736,  -736,  -736,  -184,
1843 >    -736,  -174,  -736,  -736,  -736,  -172,  -736,  -736,  -736,  -148,
1844 >    -145,  -736,  -143,  -138,  -736,  -736,  -736,  -736,  -736,  -736,
1845 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1846 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,   311,
1847 >     925,  -125,   -92,   -71,    25,   -58,   424,   -53,   -50,   -38,
1848 >      49,   -22,   -20,     2,   622,   338,    27,     9,    26,    39,
1849 >    -131,   -16,    51,    70,     8,  -736,  -736,  -736,  -736,  -736,
1850 >      72,    74,    76,    80,    83,    98,   100,   103,   104,   110,
1851 >     116,   118,   325,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1852 >    -736,  -736,  -736,  -736,  -736,  -736,   650,   352,   189,  -736,
1853 >     122,    15,  -736,  -736,    65,  -736,   123,   127,   129,   131,
1854 >     132,   133,   134,   136,   137,   139,   140,   141,   143,   144,
1855 >     148,   150,   151,   152,   153,   155,   156,   158,   159,   160,
1856 >     161,   164,  -736,   165,  -736,   166,   170,   171,   178,   183,
1857 >     185,   188,   190,   191,   192,   194,   199,   205,   206,   207,
1858 >     210,   213,   214,   107,  -736,  -736,  -736,  -736,  -736,  -736,
1859 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1860 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1861 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1862 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1863 >    -736,  -736,   475,     6,   278,    48,   215,   216,    46,  -736,
1864 >    -736,  -736,    11,   489,    17,  -736,   218,   220,   221,   224,
1865 >     225,   228,   229,   230,     7,  -736,  -736,  -736,  -736,  -736,
1866 >    -736,  -736,  -736,  -736,   124,   231,   233,   235,   236,   239,
1867 >     247,   248,   250,   252,   257,   258,   259,   262,   268,   269,
1868 >     270,   271,    21,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1869 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1870 >    -736,    35,   281,   276,    18,  -736,  -736,  -736,   120,  -736,
1871 >     282,    62,  -736,  -736,     5,  -736,   291,   294,   380,   287,
1872 >    -736,   411,   413,   315,   417,   418,   418,   418,   419,   420,
1873 >     421,   323,   334,   322,  -736,   324,   320,   326,   327,  -736,
1874 >     330,   333,   335,   336,   337,   340,   341,   344,   346,   347,
1875 >     353,   356,   186,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1876 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1877 >     328,   358,   360,   361,   362,   363,   364,  -736,   367,   370,
1878 >     371,   372,   375,   377,   383,   279,  -736,  -736,  -736,  -736,
1879 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1880 >    -736,  -736,   384,   385,    22,  -736,  -736,  -736,   439,   389,
1881 >    -736,  -736,   387,   388,    20,  -736,  -736,  -736,   400,   418,
1882 >     418,   458,   410,   511,   497,   431,   418,   433,   513,   518,
1883 >     418,   519,   435,   436,   445,   418,   520,   521,   418,   548,
1884 >     552,   553,   554,   456,   450,   465,   453,   477,   418,   418,
1885 >     478,   481,   482,  -182,  -139,   483,   486,   560,   418,   490,
1886 >     491,   418,   418,   493,   494,   459,  -736,   479,   480,   484,
1887 >    -736,   495,   496,   500,   501,   502,    32,  -736,  -736,  -736,
1888 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,   507,   509,    45,
1889 >    -736,  -736,  -736,   485,   512,   515,  -736,   517,  -736,    10,
1890 >    -736,  -736,  -736,  -736,  -736,   580,   584,   514,  -736,   522,
1891 >     530,   534,    14,  -736,  -736,  -736,   524,   535,   536,  -736,
1892 >     537,   538,   539,   540,  -736,   541,    12,  -736,  -736,  -736,
1893 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,   545,   544,   549,
1894 >     550,     4,  -736,  -736,  -736,  -736,   503,   533,   565,   598,
1895 >     568,   571,   572,   418,   556,  -736,  -736,   599,   574,   602,
1896 >     638,   675,   661,   662,   663,   664,   665,   666,   682,   669,
1897 >     -98,    59,   672,   673,   573,  -736,   575,   569,  -736,    89,
1898 >    -736,  -736,  -736,  -736,   591,   576,  -736,   577,   679,   578,
1899 >    -736,   581,   582,  -736,   583,    19,  -736,  -736,  -736,  -736,
1900 >     587,   588,   596,  -736,   600,   604,   607,   608,   579,   612,
1901 >     614,   615,   616,   617,   619,   620,   621,  -736,  -736,   700,
1902 >     716,   418,   623,   719,   742,   418,   744,   746,   418,   686,
1903 >     747,   748,   418,   750,   750,   628,  -736,  -736,   751,   121,
1904 >     753,   660,   754,   758,   637,   760,   761,   763,   762,   765,
1905 >     766,   767,   648,  -736,   771,   773,   674,  -736,   684,  -736,
1906 >     774,   775,   688,  -736,   690,   692,   693,   695,   696,   703,
1907 >     704,   705,   707,   708,   709,   713,   715,   718,   721,   724,
1908 >     726,   727,   729,   731,   732,   733,   734,   735,   736,   739,
1909 >     657,   740,   701,   741,   743,   749,   752,   755,   756,   757,
1910 >     759,   764,   768,   769,   770,   776,   777,   781,   782,   783,
1911 >     784,   785,   786,  -736,  -736,   802,   678,   772,   821,   792,
1912 >     840,   844,   846,   787,  -736,   847,   848,   788,  -736,  -736,
1913 >     849,   850,   789,   867,   790,  -736,   791,   793,  -736,  -736,
1914 >     853,   855,   794,  -736,  -736,   856,   778,   795,   860,   862,
1915 >     864,   865,   796,   869,   797,  -736,  -736,   875,   876,   891,
1916 >     800,  -736,   801,   803,   806,   807,   808,   809,   810,   811,
1917 >    -736,   812,   813,   814,   815,   816,   817,   818,   819,   820,
1918 >     822,   823,   824,   825,  -736,  -736,  -194,  -736,  -736,  -736,
1919 >    -187,  -736,   826,   827,  -736,  -736,   897,   799,   828,  -736,
1920 >     829,  -736,    66,   830,  -736,  -736,   898,   831,   923,   832,
1921 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,   418,   418,
1922 >     418,   418,   418,   418,   418,  -736,  -736,  -736,  -736,  -736,
1923 >    -736,  -736,  -736,  -736,  -736,   833,   835,   836,   -36,   837,
1924 >     838,   839,   841,   842,   843,   845,   851,   852,   854,   265,
1925 >     857,   858,  -736,   859,   861,   863,   866,   868,   870,   871,
1926 >      16,   872,   873,   874,   877,   878,   879,   880,  -736,   881,
1927 >     882,  -736,  -736,   883,   884,  -736,  -736,  -736,  -736,  -736,
1928 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1929 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1930 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1931 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1932 >    -736,  -736,  -736,  -171,  -736,  -736,  -736,  -736,  -736,  -736,
1933 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1934 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -155,  -736,  -736,
1935 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1936 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,   885,
1937 >     886,   275,   887,   888,   889,   890,   892,  -736,   893,   894,
1938 >    -736,   895,   896,     0,   901,   899,  -736,  -736,  -736,  -736,
1939 >     900,   902,  -736,   904,   905,   476,   906,   907,   908,   909,
1940 >     745,   910,  -736,   911,   912,   913,  -736,  -736,  -736,  -736,
1941 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1942 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,   -98,
1943 >    -736,    59,  -736,  -736,   914,   393,  -736,  -736,   915,   916,
1944 >     917,  -736,    75,  -736,  -736,  -736,  -736,  -736,   918,   738,
1945 >     921,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1946 >    -736,  -736,  -736,  -736,  -133,  -736,  -736,  -736,  -736,  -736,
1947 >    -736,  -736,  -736,  -736,  -736,  -736,   750,   750,   750,  -736,
1948 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1949 >    -736,  -736,  -124,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1950 >    -736,  -736,  -736,  -736,  -736,  -736,   657,  -736,   701,  -736,
1951 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1952 >    -736,  -104,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1953 >    -736,  -736,  -736,  -736,  -736,   -68,  -736,   948,   867,   922,
1954 >    -736,  -736,  -736,  -736,  -736,   919,  -736,  -736,   920,  -736,
1955 >    -736,  -736,  -736,   924,  -736,  -736,  -736,  -736,  -736,  -736,
1956 >    -736,  -736,  -736,  -736,   -43,  -736,  -736,  -736,  -736,  -736,
1957 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1958 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1959 >    -736,   -30,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1960 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1961 >     -21,  -736,  -736,   942,   -90,   927,   926,  -736,  -736,  -736,
1962 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,   -15,
1963 >    -736,  -736,  -736,   -36,  -736,  -736,  -736,  -736,    16,  -736,
1964 >    -736,  -736,   275,  -736,     0,  -736,  -736,  -736,   940,   943,
1965 >     944,  -736,   476,  -736,   745,  -736,   393,   928,   931,   932,
1966 >     516,  -736,  -736,   738,  -736,  -736,  -736,  -736,  -736,  -736,
1967 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1968 >    -736,  -736,  -736,  -736,    61,  -736,  -736,  -736,   516,  -736
1969   };
1970  
1971   /* YYPGOTO[NTERM-NUM].  */
1972   static const yytype_int16 yypgoto[] =
1973   {
1974 <    -984,  -984,  -984,  -150,  -303,  -983,  -609,  -984,  -984,   937,
1975 <    -984,  -984,  -984,  -984,   764,  -984,  -984,  -984,    21,  -984,
1976 <      22,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1977 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,   949,  -984,
1978 <    -984,  -984,  -984,  -984,  -984,   540,  -984,  -984,  -984,  -984,
1979 <     765,  -984,  -984,  -984,  -984,    31,  -984,  -984,  -984,  -984,
1980 <    -984,  -234,  -984,  -984,  -984,   529,  -984,  -984,  -984,  -984,
1981 <    -984,  -984,  -984,  -984,  -984,  -196,  -984,  -984,  -984,  -193,
1982 <    -984,  -984,  -984,   703,  -984,  -984,  -984,  -984,  -984,  -984,
1983 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1984 <    -984,  -984,  -176,  -984,  -984,  -984,  -984,  -984,  -181,  -984,
1985 <     617,  -984,  -984,  -984,   -75,  -984,  -984,  -984,  -984,  -984,
1986 <     588,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -120,  -984,
1987 <    -984,  -984,  -984,  -984,  -984,   585,  -984,  -984,  -984,  -984,
1988 <    -984,   934,  -984,  -984,  -984,  -984,   467,  -984,  -984,  -984,
1989 <    -984,  -984,  -140,  -984,  -984,  -984,   548,  -984,  -984,  -984,
1990 <    -984,  -121,  -984,  -984,  -984,   778,  -984,  -984,  -984,  -984,
1991 <    -984,  -984,  -984,  -984,  -984,  -984,  -112,  -984,  -984,  -984,
1992 <    -984,  -984,  -984,  -984,  -984,   642,  -984,  -984,  -984,  -984,
1993 <    -984,   766,  -984,  -984,  -984,  -984,   996,  -984,  -984,  -984,
1994 <    -984,   775,  -984,  -984,  -984,  -984,   945,  -984,  -984,  -984,
1995 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1996 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1997 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1998 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
1999 <    -984,  -984,    33,  -984,  -984,  -984,    34,  -984,  -984,  -984,
2000 <    -984,  -984,  1023,  -984,  -984,  -984,  -984,  -984,  -984,  -984,
2001 <    -984,  -984,  -984,  -984,  -984,  -984,  -984,   936,  -984,  -984,
2002 <    -984,  -984,  -984,  -984,  -984,  -984
1974 >    -736,  -736,  -736,   -48,  -303,  -735,  -613,  -736,  -736,   903,
1975 >    -736,  -736,  -736,  -736,   929,  -736,  -736,  -736,    64,  -736,
1976 >      63,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1977 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,   996,  -736,
1978 >    -736,  -736,  -736,  -736,  -736,   585,  -736,  -736,  -736,  -736,
1979 >     804,  -736,  -736,  -736,  -736,    57,  -736,  -736,  -736,  -736,
1980 >    -736,  -188,  -736,  -736,  -736,   593,  -736,  -736,  -736,  -736,
1981 >    -736,  -736,  -736,  -736,  -736,  -736,  -150,  -736,  -736,  -736,
1982 >    -146,  -736,  -736,  -736,   834,  -736,  -736,  -736,  -736,  -736,
1983 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1984 >    -736,  -736,  -736,  -122,  -736,  -736,  -736,  -736,  -736,  -135,
1985 >    -736,   643,  -736,  -736,  -736,   -25,  -736,  -736,  -736,  -736,
1986 >    -736,   644,  -736,  -736,  -736,  -736,  -736,  -736,  -736,   -99,
1987 >    -736,  -736,  -736,  -736,  -736,  -736,   626,  -736,  -736,  -736,
1988 >    -736,  -736,   930,  -736,  -736,  -736,  -736,   566,  -736,  -736,
1989 >    -736,  -736,  -736,  -118,  -736,  -736,  -736,   592,  -736,  -736,
1990 >    -736,  -736,   -96,  -736,  -736,  -736,   798,  -736,  -736,  -736,
1991 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,   -61,  -736,
1992 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,   689,  -736,  -736,
1993 >    -736,  -736,  -736,   780,  -736,  -736,  -736,  -736,  1048,  -736,
1994 >    -736,  -736,  -736,   779,  -736,  -736,  -736,  -736,   997,  -736,
1995 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1996 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1997 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1998 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,
1999 >    -736,  -736,  -736,  -736,    73,  -736,  -736,  -736,    79,  -736,
2000 >    -736,  -736,  -736,  -736,  1070,  -736,  -736,  -736,  -736,  -736,
2001 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736,   933,
2002 >    -736,  -736,  -736,  -736,  -736,  -736,  -736,  -736
2003   };
2004  
2005   /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
# Line 2001 | Line 2008 | static const yytype_int16 yypgoto[] =
2008   #define YYTABLE_NINF -124
2009   static const yytype_int16 yytable[] =
2010   {
2011 <     824,   825,   585,   586,   587,   379,    79,   225,  1034,   674,
2012 <     823,   282,   675,   109,   676,   379,  1062,   677,    70,   471,
2013 <     464,   464,  1048,  1049,  1050,   289,    80,    81,   295,   109,
2014 <     389,   350,    82,   351,   226,   352,   282,    47,    48,   215,
2015 <    1000,    71,   227,    49,  1001,   389,  1002,   353,    72,  1076,
2016 <    1003,   758,   759,  1077,   228,   229,   513,   230,   231,   232,
2017 <      50,   215,   354,  1103,   380,  1204,  1205,  1206,   487,    83,
2018 <      84,   552,   110,   472,   380,    85,    86,    54,   473,   233,
2019 <     474,  1035,    87,    88,    89,   355,   567,   356,   110,   514,
2020 <      56,  1010,   357,  1078,   640,   641,   289,  1079,    60,   762,
2021 <     763,   647,   358,  1228,   315,   651,   115,    64,    90,    91,
2022 <     656,   116,   117,   659,    73,   828,   829,   118,   316,   317,
2023 <     823,   290,   318,   669,   670,   119,   390,   359,   381,   552,
2024 <     515,   120,   216,   681,   121,   122,   684,   685,   381,   475,
2025 <     123,   390,   488,   465,   465,   124,   125,   244,   126,   127,
2026 <     128,   360,   129,   391,   216,  1010,   217,   494,  1202,   130,
2027 <     296,    65,  1203,   131,   132,   319,   487,   553,   391,    67,
2028 <     245,   361,   133,   495,   567,    68,  -123,   106,   217,   516,
2029 <     107,   134,   568,   320,   321,   322,   323,  1011,   496,   135,
2030 <     324,   136,   290,   137,   325,   138,  1104,   139,   140,  1063,
2031 <     326,  -123,   246,  1207,  1211,   297,  1105,  1208,  1212,   247,
2032 <     141,   327,   328,   471,   108,   142,   143,   144,   497,   145,
2033 <     146,   147,   362,   329,   148,   553,   743,   283,   631,   313,
2034 <     530,   248,   445,   489,   561,   249,   387,   466,   466,   482,
2035 <     488,   299,   709,   250,   702,   330,   251,   252,   446,   363,
2036 <     149,  1011,   283,   498,   627,   532,   150,   151,   152,   153,
2037 <     154,   114,   485,   447,   212,   213,   214,   472,   637,   445,
2038 <     568,   222,   473,   499,   474,   513,  1213,  1012,   253,   734,
2039 <    1214,   331,  1221,   223,   554,   446,  1222,   224,   155,   500,
2040 <     281,   717,   298,   448,   811,   254,   255,   294,   815,   569,
2041 <     447,   818,  1223,   570,  1013,   822,  1224,  1225,   514,   783,
2042 <     559,  1226,   156,   157,  1186,   158,   159,   160,   301,   565,
2043 <     256,   161,   302,   303,  1232,   304,   162,   611,  1233,   443,
2044 <     448,   489,    70,   475,   305,   244,   306,   307,   257,   258,
2045 <     259,  1012,   554,  1257,   308,   309,   563,  1258,   449,   515,
2046 <     310,   311,   772,   501,   576,    71,   450,   451,   245,   312,
2047 <     386,   396,    72,   397,   398,   260,   261,   115,  1013,   399,
2048 <     550,   400,   116,   117,   502,   401,   402,   452,   118,   403,
2049 <     728,   404,   577,   405,   406,   449,   119,   569,   407,   408,
2050 <     246,   570,   120,   450,   451,   121,   122,   247,   516,   578,
2051 <     409,   123,   410,   411,   412,  1170,   124,   125,   413,   126,
2052 <     127,   128,   414,   129,   452,   415,   416,  1247,   417,   248,
2053 <     130,   418,   419,   249,   131,   132,   420,   421,    73,   423,
2054 <     425,   250,   426,   133,   251,   252,   427,   428,   579,  1115,
2055 <     429,   350,   134,   351,  1248,   352,  1249,   430,   431,   453,
2056 <     135,   432,   136,  1116,   137,   698,   138,   353,   139,   140,
2057 <    1117,   433,   434,   435,   436,   437,   253,  1171,   438,   439,
2058 <     440,   141,   354,   494,  1118,   441,   142,   143,   144,   442,
2059 <     145,   146,   147,   254,   255,   148,   453,   483,   484,   495,
2060 <     522,  1250,   523,  1172,   580,   355,   524,   356,   525,   526,
2061 <    1173,  1119,   357,  1120,   496,   527,   528,   529,   256,  1174,
2062 <     533,   149,   358,   534,   535,  1082,   536,   150,   151,   152,
2063 <     153,   154,   537,   538,   539,   540,   257,   258,   259,  1121,
2064 <     541,   542,   543,   544,   497,  1083,  1175,   359,  1176,  1177,
2065 <    1251,  1252,   545,   546,  1084,   547,   548,   549,   560,   155,
2066 <     564,   581,  1178,   260,   261,   582,   583,   584,   588,  1179,
2067 <     589,   360,  1122,   590,  1123,   591,   592,   593,   875,   498,
2068 <     594,  1085,   595,   156,   157,  1229,   158,   159,   160,   596,
2069 <     597,   361,   161,  1124,   599,   633,   613,   162,   600,   499,
2070 <     601,   602,   639,   603,   584,   604,  1253,   605,  1125,   606,
2071 <    1086,  1087,   607,  1126,   634,   500,   608,  1127,  1088,   609,
2072 <     610,   614,  1128,   642,   615,  1129,   616,   617,   618,   619,
2073 <    1130,   792,   793,   794,   795,   796,   797,   798,   621,   622,
2074 <     623,   624,   362,  1089,  1131,   625,   626,     2,     3,  1132,
2075 <     629,     4,  1024,  1025,  1026,  1027,  1028,  1029,  1030,  1090,
2076 <    1133,     5,   630,   635,     6,     7,   636,  1134,   315,   363,
2077 <       8,   643,   644,   645,   646,   648,   649,  1189,   650,   501,
2078 <     652,     9,   316,   317,    10,    11,   318,   876,   877,   878,
2079 <     653,   879,   880,   654,   881,   882,   655,   883,   657,   884,
2080 <     502,   658,   885,   660,   661,   886,   887,   888,    12,   889,
2081 <     662,   663,   664,    13,   890,   665,   666,  1091,   891,   892,
2082 <     893,    14,   667,   668,   671,   899,   672,   673,   894,   319,
2083 <     678,   679,   225,   895,   680,   682,   688,   683,   686,  1190,
2084 <     687,   690,    15,    16,   711,   689,   704,   320,   321,   322,
2085 <     323,   712,   691,   693,   324,   736,   713,   739,   325,   226,
2086 <      17,   694,   695,   696,   326,  1191,   697,   227,  1140,   700,
2087 <     701,   705,  1192,   706,   708,   327,   328,    18,   714,   228,
2088 <     229,  1193,   230,   231,   232,   715,   716,   329,   720,   719,
2089 <      19,    20,   737,   721,   723,   738,   724,   745,   725,   730,
2090 <     727,   731,   747,   732,   233,   733,   740,    21,  1194,   330,
2091 <    1195,  1196,   741,   742,   746,   744,   748,   749,   750,   751,
2092 <      22,   752,   753,   754,  1197,   755,   756,   757,   766,    23,
2093 <     767,  1198,   774,    24,   900,   901,   902,    79,   903,   904,
2094 <     768,   905,   906,   769,   907,   331,   908,   770,   775,   909,
2095 <     777,   778,   910,   911,   912,   776,   913,    80,    81,   779,
2096 <     780,   914,   785,    82,   782,   915,   916,   917,   786,   787,
2097 <     809,   788,   789,   790,   791,   918,   801,  1141,  1142,  1143,
2098 <     919,  1144,  1145,   802,  1146,  1147,   803,  1148,   804,  1149,
2099 <     810,   805,  1150,   806,   807,  1151,  1152,  1153,   812,  1154,
2100 <      83,    84,   808,   813,  1155,   814,    85,    86,  1156,  1157,
2101 <    1158,   816,   817,    87,    88,    89,   819,   820,  1159,   821,
2102 <     823,   826,   827,  1160,   830,   832,   837,   831,   833,   835,
2103 <     834,   836,   946,   838,   841,   844,   839,   840,   842,    90,
2104 <      91,   845,   843,   846,   847,   848,   849,   850,   851,   852,
2105 <     853,   942,   854,   855,   945,   856,   857,   858,   859,   860,
2106 <     861,   862,   863,   864,   865,   866,   867,   868,   869,   870,
2107 <     871,   872,   873,   874,   898,   922,   923,   924,   925,   926,
2108 <     927,   928,   929,   930,   931,   932,   943,   933,   934,   935,
2109 <     936,   937,   938,   939,   940,   941,   947,   948,   949,   944,
2110 <     950,   951,   952,   954,   953,   955,   957,   960,   956,   961,
2111 <     962,   963,   964,   965,   966,   968,   969,   970,   971,   972,
2112 <     973,  1007,   974,   967,   975,   976,   977,  1006,  1020,  1022,
2113 <    1215,   978,  1167,   300,  1259,  1168,   551,  1234,  1242,  1241,
2114 <     718,   979,   729,  1237,  1216,   612,   980,   981,   784,   982,
2115 <     983,   984,   699,   985,   986,  1187,   987,   988,   989,   562,
2116 <     990,   991,   992,   993,   994,   995,   996,   997,   998,   999,
2117 <    1004,  1005,  1008,  1009,  1019,  1227,  1023,  1031,  1021,  1032,
2118 <    1033,  1038,  1039,  1040,  1041,  1042,  1043,  1044,  1045,  1046,
2119 <    1047,  1053,  1054,  1055,  1056,  1057,  1058,  1238,  1239,  1240,
2120 <    1059,  1060,  1236,  1256,   710,  1061,  1235,  1066,  1067,  1068,
2121 <    1069,  1070,   735,   773,  1071,  1243,  1072,   388,   444,   703,
2122 <    1073,  1209,  1210,  1074,  1075,   314,     0,     0,     0,     0,
2123 <       0,  1080,  1081,  1094,  1095,  1096,  1097,  1098,  1099,  1100,
2124 <    1101,  1102,  1108,  1111,  1112,  1113,  1109,  1114,  1137,  1138,
2125 <    1139,  1163,   628,  1164,  1165,  1166,  1169,  1182,   632,     0,
2126 <    1188,  1183,  1184,  1201,  1217,   486,  1218,  1219,  1231,  1230,
2127 <    1220,  1244,  1245,  1246,     0,     0,     0,   638,     0,     0,
2128 <     531,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2122 <       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2011 >     830,   831,   589,   590,   591,   517,   571,   466,   225,    70,
2012 >     282,   473,   489,   496,  1042,   489,   109,   829,   517,   282,
2013 >     571,   391,   244,   381,  1070,   679,   109,   289,   680,   497,
2014 >    1008,    49,    71,   447,  1009,   226,   556,  1010,   518,    72,
2015 >      50,  1011,    54,   227,   498,   245,   466,   215,  1112,   448,
2016 >     215,   518,    56,  1085,    60,   228,   229,  1086,   230,   231,
2017 >     232,    47,    48,   289,   449,   474,   391,  1018,   681,  1087,
2018 >     475,   682,   476,  1088,   499,   110,  1018,   246,    64,   519,
2019 >     233,    65,   382,    67,   247,   110,   490,  1043,    68,   490,
2020 >     556,  1212,   519,   295,   450,  1213,   645,   646,   764,   765,
2021 >    1217,   106,   572,   652,  1218,    73,   248,   656,   115,   500,
2022 >     249,  1238,   661,   116,   117,   664,   572,   392,   250,   118,
2023 >    1221,   251,   252,   290,  1222,   674,   675,   119,   520,   501,
2024 >     467,   477,   557,   120,   107,   686,   121,   122,   689,   690,
2025 >     216,   520,   123,   216,   393,   502,   383,   124,   125,   451,
2026 >     126,   127,   128,   253,   129,   108,  1223,   452,   453,   290,
2027 >    1224,   130,   392,  1019,   217,   131,   132,   217,   114,   467,
2028 >     254,   255,  1019,   212,   133,  -123,   213,   491,   454,   503,
2029 >     491,  1231,  1113,   134,  -123,  1232,   557,   315,   214,   393,
2030 >     381,   135,  1114,   136,  1233,   137,   256,   138,  1234,   139,
2031 >     140,   316,   317,  1235,   222,   318,   223,  1236,  1071,  1242,
2032 >     504,   296,   141,  1243,   257,   258,   259,   142,   143,   144,
2033 >     573,   145,   146,   147,   574,   468,   148,   283,   224,   740,
2034 >     749,   505,   534,   299,   573,   714,   283,   734,   574,   722,
2035 >     389,   260,   261,   565,   789,   642,   554,   636,   319,   382,
2036 >     558,   455,   149,   281,  1020,   768,   769,   703,   150,   151,
2037 >     152,   153,   154,  1020,   468,   294,   320,   321,   322,   323,
2038 >     707,   487,   484,   324,  1056,  1057,  1058,   325,   297,   473,
2039 >     350,  1021,   351,   326,   352,  1267,   567,   569,  1091,  1268,
2040 >    1021,   155,   834,   835,   327,   328,   353,   298,   817,   301,
2041 >    1196,   302,   821,   303,   558,   824,   329,   304,  1092,   828,
2042 >     305,   354,    70,   383,   778,   156,   157,  1093,   158,   159,
2043 >     160,  1214,  1215,  1216,   161,   306,    79,   307,   330,   162,
2044 >     308,   309,   445,   474,   355,    71,   356,   310,   475,   244,
2045 >     476,   357,    72,   311,  1094,   312,    80,    81,   536,   388,
2046 >     398,   358,    82,   350,   399,   351,   400,   352,   401,   402,
2047 >     403,   404,   245,   405,   406,   331,   407,   408,   409,   353,
2048 >     410,   411,   829,  1095,  1096,   412,   359,   413,   414,   415,
2049 >     416,  1097,   417,   418,   354,   419,   420,   421,   422,    83,
2050 >      84,   423,   425,   427,   246,    85,    86,   428,   429,   477,
2051 >     360,   247,    87,    88,    89,   430,  1098,   355,    73,   356,
2052 >     431,   615,   432,   580,   357,   433,   581,   434,   435,   436,
2053 >     361,   437,  1099,   248,   358,   115,   438,   249,    90,    91,
2054 >     116,   117,   439,   440,   441,   250,   118,   442,   251,   252,
2055 >     443,   444,   485,   486,   119,   526,   362,   527,   528,   359,
2056 >     120,   529,   530,   121,   122,   531,   532,   533,   537,   123,
2057 >     538,  1180,   539,   540,   124,   125,   541,   126,   127,   128,
2058 >     253,   129,   363,   360,   542,   543,   447,   544,   130,   545,
2059 >    1124,  1100,   131,   132,   546,   547,   548,   254,   255,   549,
2060 >     496,   133,   448,   361,  1125,   550,   551,   552,   553,   364,
2061 >     134,  1126,   582,   564,   632,   563,   497,   449,   135,   568,
2062 >     136,   583,   137,   256,   138,  1127,   139,   140,   584,   362,
2063 >     585,   498,   586,  1181,   587,   588,   592,   593,   594,   141,
2064 >     595,   257,   258,   259,   142,   143,   144,   450,   145,   146,
2065 >     147,   596,  1128,   148,  1129,   363,   597,   599,   598,  1182,
2066 >     313,   499,   617,   600,   601,  1257,  1183,   603,   260,   261,
2067 >     604,   638,   605,   606,   607,   647,  1184,   608,   609,   149,
2068 >    1130,   610,   364,   611,   612,   150,   151,   152,   153,   154,
2069 >     613,  1239,  1258,   614,  1259,   618,   500,   619,   620,   621,
2070 >     622,   623,   451,  1185,   625,  1186,  1187,   626,   627,   628,
2071 >     452,   453,   629,  1131,   630,  1132,   501,   644,   155,  1188,
2072 >     631,   634,   635,   639,   640,   641,  1189,   648,   649,   650,
2073 >     654,   454,   502,   225,  1133,   655,   657,   662,   663,  1260,
2074 >       2,     3,   156,   157,     4,   158,   159,   160,   651,  1134,
2075 >     653,   161,   658,   659,     5,  1135,   162,     6,     7,  1136,
2076 >     226,   315,   660,     8,  1137,   665,   503,  1138,   227,   666,
2077 >     667,   668,  1139,   669,     9,   316,   317,    10,    11,   318,
2078 >     228,   229,   671,   230,   231,   232,  1140,   670,  1261,  1262,
2079 >     672,  1141,   685,   693,   673,   676,   588,   504,   677,   678,
2080 >     683,    12,  1142,   684,   455,   233,    13,   687,   688,  1143,
2081 >     691,   692,   716,   694,    14,   882,   717,   695,   505,   709,
2082 >     742,   696,   319,   798,   799,   800,   801,   802,   803,   804,
2083 >     745,   751,   698,   699,   753,    15,    16,   700,   701,   702,
2084 >     320,   321,   322,   323,   705,  1263,   706,   324,   718,   710,
2085 >     743,   325,   711,    17,   713,   754,   719,   326,   724,   906,
2086 >    1032,  1033,  1034,  1035,  1036,  1037,  1038,   720,   327,   328,
2087 >      18,   721,   725,   726,   728,   729,   730,   731,   733,   736,
2088 >     329,   737,   744,    19,    20,   746,   738,   739,   747,   748,
2089 >     750,   752,   755,   756,   757,   758,   759,   760,   761,   762,
2090 >      21,   763,   330,  1150,   772,   773,   776,   774,   780,   775,
2091 >     781,   783,   784,   782,    22,   785,  1199,   815,   825,   786,
2092 >     788,   791,   792,    23,   883,   884,   885,    24,   886,   887,
2093 >     793,   888,   889,   816,   794,   890,   819,   891,   795,   331,
2094 >     892,   796,   797,   893,   894,   895,   807,   896,   808,   809,
2095 >     810,   811,   897,   812,   813,   814,   898,   899,   900,   820,
2096 >     818,   822,   832,   823,   826,   827,   901,   829,   907,   908,
2097 >     909,   902,   910,   911,   840,   912,   913,   837,  1200,   914,
2098 >     843,   915,   848,   833,   916,   836,   838,   917,   918,   919,
2099 >     839,   920,   841,   842,   844,   950,   921,   845,   846,   847,
2100 >     922,   923,   924,   849,  1201,   850,   853,   854,   851,   953,
2101 >     925,  1202,  1151,  1152,  1153,   926,  1154,  1155,   852,  1156,
2102 >    1157,  1203,   855,  1158,   856,  1159,   857,   858,  1160,   859,
2103 >     860,  1161,  1162,  1163,   949,  1164,    79,   861,   862,   863,
2104 >    1165,   864,   865,   866,  1166,  1167,  1168,   867,  1204,   868,
2105 >    1205,  1206,   869,   952,  1169,   870,    80,    81,   871,  1170,
2106 >     872,   873,    82,   874,  1207,   875,   876,   877,   878,   879,
2107 >     880,  1208,   954,   881,   905,   929,   955,   930,   956,   958,
2108 >     959,   961,   962,   931,   964,   970,   932,   971,   973,   933,
2109 >     934,   935,   976,   936,   977,   974,   978,   979,   937,    83,
2110 >      84,   981,   938,   939,   940,    85,    86,   983,   984,   951,
2111 >     941,   942,    87,    88,    89,   943,   944,   945,   946,   947,
2112 >     948,   957,   960,   985,   967,   968,   963,   969,   972,  1014,
2113 >    1028,   982,   975,   980,   986,   987,  1015,   988,    90,    91,
2114 >     989,   990,   991,   992,   993,   994,   995,   996,   997,   998,
2115 >     999,  1000,  1001,  1002,  1003,  1030,  1004,  1005,  1006,  1007,
2116 >    1012,  1013,  1016,  1017,  1027,  1225,  1031,  1039,  1029,  1040,
2117 >    1041,  1046,  1047,  1048,  1237,  1049,  1050,  1051,  1248,  1052,
2118 >     300,  1249,  1250,  1177,  1178,  1053,  1054,   723,  1055,  1197,
2119 >    1269,  1061,  1062,  1063,  1252,  1064,  1251,  1065,   566,  1247,
2120 >    1066,  1244,  1067,  1226,  1068,  1069,  1074,  1075,  1076,   735,
2121 >     704,  1077,  1078,  1079,  1080,  1081,  1082,  1083,  1084,  1089,
2122 >    1090,  1103,  1104,  1105,  1106,  1117,  1107,  1108,  1109,  1110,
2123 >    1111,   488,   715,  1246,  1120,  1266,  1121,  1118,  1122,  1123,
2124 >    1146,  1147,  1148,  1149,  1173,  1174,  1175,  1176,  1179,  1192,
2125 >    1253,   790,  1198,  1193,  1194,  1211,  1227,   741,  1228,  1229,
2126 >    1241,   779,  1254,  1230,  1240,  1255,  1256,  1245,   708,   390,
2127 >     446,  1220,   314,   633,   637,  1219,   616,   535,     0,     0,
2128 >       0,     0,     0,   643,     0,     0,     0,     0,     0,     0,
2129         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2130 +       0,   555,     0,     0,     0,     0,     0,     0,     0,     0,
2131         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2132         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2133 <       0,     0,     0,     0,     0,   566
2133 >       0,   570
2134   };
2135  
2136   #define yypact_value_is_default(Yystate) \
2137 <  (!!((Yystate) == (-984)))
2137 >  (!!((Yystate) == (-736)))
2138  
2139   #define yytable_value_is_error(Yytable_value) \
2140    YYID (0)
2141  
2142   static const yytype_int16 yycheck[] =
2143   {
2144 <     609,   610,   305,   306,   307,     1,     1,     1,    50,   206,
2145 <     107,     1,   209,     1,   206,     1,     8,   209,     1,     1,
2146 <       1,     1,     9,    10,    11,     1,    21,    22,   223,     1,
2147 <       1,     1,    27,     3,    28,     5,     1,   223,   224,     1,
2148 <     223,    24,    36,   225,   227,     1,   223,    17,    31,   223,
2149 <     227,   195,   196,   227,    48,    49,     1,    51,    52,    53,
2150 <     225,     1,    32,    48,    60,  1048,  1049,  1050,     1,    64,
2151 <      65,     1,    60,    55,    60,    70,    71,   225,    60,    73,
2152 <      62,   123,    77,    78,    79,    55,     1,    57,    60,    34,
2153 <     225,     1,    62,   223,   397,   398,     1,   227,   225,   195,
2154 <     196,   404,    72,   200,     1,   408,     1,   225,   103,   104,
2155 <     413,     6,     7,   416,    97,   170,   171,    12,    15,    16,
2156 <     107,    97,    19,   426,   427,    20,    97,    97,   124,     1,
2157 <      75,    26,    94,   436,    29,    30,   439,   440,   124,   121,
2158 <      35,    97,    75,   124,   124,    40,    41,     1,    43,    44,
2159 <      45,   121,    47,   124,    94,     1,   118,     1,   223,    54,
2160 <     226,   225,   227,    58,    59,    62,     1,    97,   124,   225,
2161 <      24,   141,    67,    17,     1,   225,   166,   225,   118,   124,
2162 <     225,    76,    97,    80,    81,    82,    83,    97,    32,    84,
2163 <      87,    86,    97,    88,    91,    90,   181,    92,    93,   191,
2164 <      97,   166,    56,   223,   223,   226,   191,   227,   227,    63,
2165 <     105,   108,   109,     1,   225,   110,   111,   112,    62,   114,
2166 <     115,   116,   192,   120,   119,    97,   529,   217,   224,   224,
2167 <     224,    85,     1,   166,   224,    89,   224,   218,   218,   223,
2168 <      75,   224,   224,    97,   224,   142,   100,   101,    17,   219,
2169 <     145,    97,   217,    97,   224,   223,   151,   152,   153,   154,
2170 <     155,   225,   224,    32,   225,   225,   225,    55,   224,     1,
2171 <      97,   225,    60,   117,    62,     1,   223,   187,   132,   224,
2172 <     227,   178,   223,   225,   214,    17,   227,   225,   183,   133,
2173 <     225,   224,   226,    62,   597,   149,   150,   225,   601,   214,
2174 <      32,   604,   223,   218,   214,   608,   227,   223,    34,   224,
2175 <     223,   227,   207,   208,   224,   210,   211,   212,   226,   224,
2176 <     174,   216,   226,   226,   223,   226,   221,   224,   227,   224,
2177 <      62,   166,     1,   121,   226,     1,   226,   226,   192,   193,
2178 <     194,   187,   214,   223,   226,   226,   166,   227,   117,    75,
2179 <     226,   226,   224,   197,   122,    24,   125,   126,    24,   226,
2180 <     226,   226,    31,   226,   226,   219,   220,     1,   214,   226,
2181 <     224,   226,     6,     7,   218,   226,   226,   146,    12,   226,
2182 <     224,   226,   122,   226,   226,   117,    20,   214,   226,   226,
2183 <      56,   218,    26,   125,   126,    29,    30,    63,   124,   122,
2184 <     226,    35,   226,   226,   226,    68,    40,    41,   226,    43,
2185 <      44,    45,   226,    47,   146,   226,   226,    39,   226,    85,
2186 <      54,   226,   226,    89,    58,    59,   226,   226,    97,   226,
2187 <     226,    97,   226,    67,   100,   101,   226,   226,   223,     4,
2188 <     226,     1,    76,     3,    66,     5,    68,   226,   226,   218,
2189 <      84,   226,    86,    18,    88,   224,    90,    17,    92,    93,
2190 <      25,   226,   226,   226,   226,   226,   132,   130,   226,   226,
2191 <     226,   105,    32,     1,    39,   226,   110,   111,   112,   226,
2192 <     114,   115,   116,   149,   150,   119,   218,   226,   226,    17,
2193 <     226,   113,   226,   156,   107,    55,   226,    57,   226,   226,
2194 <     163,    66,    62,    68,    32,   226,   226,   226,   174,   172,
2195 <     226,   145,    72,   226,   226,    13,   226,   151,   152,   153,
2196 <     154,   155,   226,   226,   226,   226,   192,   193,   194,    94,
2197 <     226,   226,   226,   226,    62,    33,   199,    97,   201,   202,
2198 <     162,   163,   226,   226,    42,   226,   226,   226,   226,   183,
2199 <     226,   107,   215,   219,   220,   206,   107,   107,   107,   222,
2200 <     107,   121,   127,   107,   129,   206,   206,   223,    48,    97,
2201 <     223,    69,   226,   207,   208,  1184,   210,   211,   212,   226,
2202 <     226,   141,   216,   148,   226,   122,   223,   221,   226,   117,
2203 <     226,   226,   206,   226,   107,   226,   218,   226,   163,   226,
2204 <      98,    99,   226,   168,   223,   133,   226,   172,   106,   226,
2205 <     226,   226,   177,   107,   226,   180,   226,   226,   226,   226,
2206 <     185,   134,   135,   136,   137,   138,   139,   140,   226,   226,
2207 <     226,   226,   192,   131,   199,   226,   226,     0,     1,   204,
2208 <     226,     4,   792,   793,   794,   795,   796,   797,   798,   147,
2209 <     215,    14,   226,   226,    17,    18,   226,   222,     1,   219,
2210 <      23,   206,   107,   122,   206,   206,   107,    68,   107,   197,
2211 <     107,    34,    15,    16,    37,    38,    19,   157,   158,   159,
2212 <     206,   161,   162,   206,   164,   165,   206,   167,   107,   169,
2213 <     218,   107,   172,   107,   107,   175,   176,   177,    61,   179,
2214 <     107,   107,   206,    66,   184,   226,   206,   205,   188,   189,
2215 <     190,    74,   226,   206,   206,    48,   206,   206,   198,    62,
2216 <     206,   206,     1,   203,   122,   206,   223,   206,   206,   130,
2217 <     206,   226,    95,    96,   122,   223,   223,    80,    81,    82,
2218 <      83,   122,   226,   226,    87,   206,   223,   122,    91,    28,
2219 <     113,   226,   226,   226,    97,   156,   226,    36,    48,   226,
2220 <     226,   226,   163,   226,   226,   108,   109,   130,   223,    48,
2221 <      49,   172,    51,    52,    53,   226,   226,   120,   226,   223,
2222 <     143,   144,   206,   226,   226,   206,   226,   122,   226,   223,
2223 <     226,   226,   122,   226,    73,   226,   206,   160,   199,   142,
2224 <     201,   202,   206,   206,   206,   223,   107,   107,   122,   122,
2225 <     173,   122,   122,   122,   215,   122,   107,   122,   122,   182,
2226 <     122,   222,   206,   186,   157,   158,   159,     1,   161,   162,
2227 <     223,   164,   165,   223,   167,   178,   169,   226,   223,   172,
2228 <     122,   223,   175,   176,   177,   225,   179,    21,    22,   223,
2229 <     226,   184,   223,    27,   226,   188,   189,   190,   223,   223,
2230 <     107,   223,   223,   223,   223,   198,   223,   157,   158,   159,
2231 <     203,   161,   162,   223,   164,   165,   223,   167,   223,   169,
2232 <     107,   223,   172,   223,   223,   175,   176,   177,   226,   179,
2233 <      64,    65,   223,   107,   184,   107,    70,    71,   188,   189,
2234 <     190,   107,   107,    77,    78,    79,   122,   107,   198,   107,
2235 <     107,   223,   122,   203,   122,   122,   107,   206,   122,   122,
2236 <     226,   122,   107,   122,   223,   223,   122,   122,   122,   103,
2237 <     104,   223,   122,   122,   122,   223,   223,   223,   223,   223,
2238 <     223,   122,   223,   223,   122,   223,   223,   223,   223,   223,
2239 <     223,   223,   223,   223,   223,   223,   223,   223,   223,   223,
2240 <     223,   223,   223,   223,   223,   223,   223,   223,   223,   223,
2241 <     223,   223,   223,   223,   223,   223,   206,   223,   223,   223,
2242 <     223,   223,   223,   223,   223,   223,   122,   122,   122,   226,
2243 <     223,   122,   122,   122,   223,   122,   107,   223,   226,   223,
2244 <     223,   122,   122,   223,   122,   226,   122,   122,   122,   226,
2245 <     122,   226,   223,   206,   122,   122,   122,   122,   122,   122,
2246 <     107,   223,  1001,    74,  1258,  1003,   262,  1203,  1224,  1222,
2247 <     490,   223,   503,  1214,  1109,   332,   223,   223,   571,   223,
2248 <     223,   223,   454,   223,   223,  1014,   223,   223,   223,   284,
2249 <     223,   223,   223,   223,   223,   223,   223,   223,   223,   223,
2250 <     223,   223,   223,   223,   223,   122,   223,   223,   226,   223,
2251 <     223,   223,   223,   223,   223,   223,   223,   223,   223,   223,
2252 <     223,   223,   223,   223,   223,   223,   223,   128,   128,   128,
2253 <     223,   223,  1212,  1233,   477,   223,  1208,   223,   223,   223,
2254 <     223,   223,   517,   555,   223,  1226,   223,   111,   163,   467,
2255 <     223,  1077,  1079,   223,   223,    92,    -1,    -1,    -1,    -1,
2256 <      -1,   223,   223,   223,   223,   223,   223,   223,   223,   223,
2257 <     223,   223,   213,   223,   223,   223,   227,   223,   223,   223,
2258 <     223,   223,   364,   223,   223,   223,   223,   223,   382,    -1,
2259 <     223,   226,   226,   223,   223,   218,   228,   228,   223,   226,
2260 <     228,   223,   223,   223,    -1,    -1,    -1,   392,    -1,    -1,
2261 <     234,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2255 <      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2144 >     613,   614,   305,   306,   307,     1,     1,     1,     1,     1,
2145 >       1,     1,     1,     1,    50,     1,     1,   107,     1,     1,
2146 >       1,     1,     1,     1,     8,   207,     1,     1,   210,    17,
2147 >     224,   226,    24,     1,   228,    28,     1,   224,    34,    31,
2148 >     226,   228,   226,    36,    32,    24,     1,     1,    48,    17,
2149 >       1,    34,   226,   224,   226,    48,    49,   228,    51,    52,
2150 >      53,   224,   225,     1,    32,    55,     1,     1,   207,   224,
2151 >      60,   210,    62,   228,    62,    60,     1,    56,   226,    75,
2152 >      73,   226,    60,   226,    63,    60,    75,   123,   226,    75,
2153 >       1,   224,    75,   224,    62,   228,   399,   400,   196,   197,
2154 >     224,   226,    97,   406,   228,    97,    85,   410,     1,    97,
2155 >      89,   201,   415,     6,     7,   418,    97,    97,    97,    12,
2156 >     224,   100,   101,    97,   228,   428,   429,    20,   124,   117,
2157 >     124,   121,    97,    26,   226,   438,    29,    30,   441,   442,
2158 >      94,   124,    35,    94,   124,   133,   124,    40,    41,   117,
2159 >      43,    44,    45,   132,    47,   226,   224,   125,   126,    97,
2160 >     228,    54,    97,    97,   118,    58,    59,   118,   226,   124,
2161 >     149,   150,    97,   226,    67,   166,   226,   166,   146,   167,
2162 >     166,   224,   182,    76,   166,   228,    97,     1,   226,   124,
2163 >       1,    84,   192,    86,   224,    88,   175,    90,   228,    92,
2164 >      93,    15,    16,   224,   226,    19,   226,   228,   192,   224,
2165 >     198,   227,   105,   228,   193,   194,   195,   110,   111,   112,
2166 >     215,   114,   115,   116,   219,   219,   119,   218,   226,   225,
2167 >     533,   219,   225,   225,   215,   225,   218,   225,   219,   225,
2168 >     225,   220,   221,   225,   225,   225,   225,   225,    62,    60,
2169 >     215,   219,   145,   226,   188,   196,   197,   225,   151,   152,
2170 >     153,   154,   155,   188,   219,   226,    80,    81,    82,    83,
2171 >     225,   225,   224,    87,     9,    10,    11,    91,   227,     1,
2172 >       1,   215,     3,    97,     5,   224,   166,   225,    13,   228,
2173 >     215,   184,   171,   172,   108,   109,    17,   227,   601,   227,
2174 >     225,   227,   605,   227,   215,   608,   120,   227,    33,   612,
2175 >     227,    32,     1,   124,   225,   208,   209,    42,   211,   212,
2176 >     213,  1056,  1057,  1058,   217,   227,     1,   227,   142,   222,
2177 >     227,   227,   225,    55,    55,    24,    57,   227,    60,     1,
2178 >      62,    62,    31,   227,    69,   227,    21,    22,   224,   227,
2179 >     227,    72,    27,     1,   227,     3,   227,     5,   227,   227,
2180 >     227,   227,    24,   227,   227,   179,   227,   227,   227,    17,
2181 >     227,   227,   107,    98,    99,   227,    97,   227,   227,   227,
2182 >     227,   106,   227,   227,    32,   227,   227,   227,   227,    64,
2183 >      65,   227,   227,   227,    56,    70,    71,   227,   227,   121,
2184 >     121,    63,    77,    78,    79,   227,   131,    55,    97,    57,
2185 >     227,   225,   227,   122,    62,   227,   122,   227,   227,   227,
2186 >     141,   227,   147,    85,    72,     1,   227,    89,   103,   104,
2187 >       6,     7,   227,   227,   227,    97,    12,   227,   100,   101,
2188 >     227,   227,   227,   227,    20,   227,   167,   227,   227,    97,
2189 >      26,   227,   227,    29,    30,   227,   227,   227,   227,    35,
2190 >     227,    68,   227,   227,    40,    41,   227,    43,    44,    45,
2191 >     132,    47,   193,   121,   227,   227,     1,   227,    54,   227,
2192 >       4,   206,    58,    59,   227,   227,   227,   149,   150,   227,
2193 >       1,    67,    17,   141,    18,   227,   227,   227,   227,   220,
2194 >      76,    25,   122,   227,   225,   224,    17,    32,    84,   227,
2195 >      86,   224,    88,   175,    90,    39,    92,    93,   107,   167,
2196 >     107,    32,   207,   130,   107,   107,   107,   107,   107,   105,
2197 >     207,   193,   194,   195,   110,   111,   112,    62,   114,   115,
2198 >     116,   207,    66,   119,    68,   193,   224,   227,   224,   156,
2199 >     225,    62,   224,   227,   227,    39,   163,   227,   220,   221,
2200 >     227,   122,   227,   227,   227,   107,   173,   227,   227,   145,
2201 >      94,   227,   220,   227,   227,   151,   152,   153,   154,   155,
2202 >     227,  1194,    66,   227,    68,   227,    97,   227,   227,   227,
2203 >     227,   227,   117,   200,   227,   202,   203,   227,   227,   227,
2204 >     125,   126,   227,   127,   227,   129,   117,   207,   184,   216,
2205 >     227,   227,   227,   224,   227,   227,   223,   207,   107,   122,
2206 >     107,   146,   133,     1,   148,   107,   107,   107,   107,   113,
2207 >       0,     1,   208,   209,     4,   211,   212,   213,   207,   163,
2208 >     207,   217,   207,   207,    14,   169,   222,    17,    18,   173,
2209 >      28,     1,   207,    23,   178,   107,   167,   181,    36,   107,
2210 >     107,   107,   186,   207,    34,    15,    16,    37,    38,    19,
2211 >      48,    49,   207,    51,    52,    53,   200,   227,   162,   163,
2212 >     227,   205,   122,   224,   207,   207,   107,   198,   207,   207,
2213 >     207,    61,   216,   207,   219,    73,    66,   207,   207,   223,
2214 >     207,   207,   122,   224,    74,    48,   122,   227,   219,   224,
2215 >     207,   227,    62,   134,   135,   136,   137,   138,   139,   140,
2216 >     122,   122,   227,   227,   122,    95,    96,   227,   227,   227,
2217 >      80,    81,    82,    83,   227,   219,   227,    87,   224,   227,
2218 >     207,    91,   227,   113,   227,   107,   224,    97,   224,    48,
2219 >     798,   799,   800,   801,   802,   803,   804,   227,   108,   109,
2220 >     130,   227,   227,   227,   227,   227,   227,   227,   227,   224,
2221 >     120,   227,   207,   143,   144,   207,   227,   227,   207,   207,
2222 >     224,   207,   107,   122,   122,   122,   122,   122,   122,   107,
2223 >     160,   122,   142,    48,   122,   122,   227,   224,   207,   224,
2224 >     224,   122,   224,   226,   174,   224,    68,   107,   122,   227,
2225 >     227,   224,   224,   183,   157,   158,   159,   187,   161,   162,
2226 >     224,   164,   165,   107,   224,   168,   107,   170,   224,   179,
2227 >     173,   224,   224,   176,   177,   178,   224,   180,   224,   224,
2228 >     224,   224,   185,   224,   224,   224,   189,   190,   191,   107,
2229 >     227,   107,   224,   107,   107,   107,   199,   107,   157,   158,
2230 >     159,   204,   161,   162,   227,   164,   165,   207,   130,   168,
2231 >     107,   170,   224,   122,   173,   122,   122,   176,   177,   178,
2232 >     122,   180,   122,   122,   122,   207,   185,   122,   122,   122,
2233 >     189,   190,   191,   122,   156,   122,   122,   122,   224,   107,
2234 >     199,   163,   157,   158,   159,   204,   161,   162,   224,   164,
2235 >     165,   173,   224,   168,   224,   170,   224,   224,   173,   224,
2236 >     224,   176,   177,   178,   122,   180,     1,   224,   224,   224,
2237 >     185,   224,   224,   224,   189,   190,   191,   224,   200,   224,
2238 >     202,   203,   224,   122,   199,   224,    21,    22,   224,   204,
2239 >     224,   224,    27,   224,   216,   224,   224,   224,   224,   224,
2240 >     224,   223,   122,   224,   224,   224,   122,   224,   122,   122,
2241 >     122,   122,   122,   224,   107,   122,   224,   122,   122,   224,
2242 >     224,   224,   122,   224,   122,   207,   122,   122,   224,    64,
2243 >      65,   122,   224,   224,   224,    70,    71,   122,   122,   227,
2244 >     224,   224,    77,    78,    79,   224,   224,   224,   224,   224,
2245 >     224,   224,   224,   122,   224,   224,   227,   224,   224,   122,
2246 >     122,   224,   227,   227,   224,   224,   227,   224,   103,   104,
2247 >     224,   224,   224,   224,   224,   224,   224,   224,   224,   224,
2248 >     224,   224,   224,   224,   224,   122,   224,   224,   224,   224,
2249 >     224,   224,   224,   224,   224,   107,   224,   224,   227,   224,
2250 >     224,   224,   224,   224,   122,   224,   224,   224,   128,   224,
2251 >      74,   128,   128,  1009,  1011,   224,   224,   492,   224,  1022,
2252 >    1268,   224,   224,   224,  1234,   224,  1232,   224,   284,  1224,
2253 >     224,  1213,   224,  1118,   224,   224,   224,   224,   224,   506,
2254 >     456,   224,   224,   224,   224,   224,   224,   224,   224,   224,
2255 >     224,   224,   224,   224,   224,   214,   224,   224,   224,   224,
2256 >     224,   218,   479,  1222,   224,  1243,   224,   228,   224,   224,
2257 >     224,   224,   224,   224,   224,   224,   224,   224,   224,   224,
2258 >    1236,   575,   224,   227,   227,   224,   224,   521,   229,   229,
2259 >     224,   559,   224,   229,   227,   224,   224,  1218,   469,   111,
2260 >     163,  1088,    92,   365,   384,  1086,   332,   234,    -1,    -1,
2261 >      -1,    -1,    -1,   394,    -1,    -1,    -1,    -1,    -1,    -1,
2262        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2263 +      -1,   262,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2264        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2265        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2266 <      -1,    -1,    -1,    -1,    -1,   291
2266 >      -1,   291
2267   };
2268  
2269   /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
2270     symbol of state STATE-NUM.  */
2271   static const yytype_uint16 yystos[] =
2272   {
2273 <       0,   230,     0,     1,     4,    14,    17,    18,    23,    34,
2273 >       0,   231,     0,     1,     4,    14,    17,    18,    23,    34,
2274        37,    38,    61,    66,    74,    95,    96,   113,   130,   143,
2275 <     144,   160,   173,   182,   186,   231,   236,   241,   265,   271,
2276 <     277,   291,   309,   332,   346,   361,   368,   372,   382,   391,
2277 <     411,   417,   423,   427,   433,   489,   504,   223,   224,   225,
2278 <     225,   310,   392,   418,   225,   428,   225,   347,   412,   333,
2279 <     225,   272,   292,   362,   225,   225,   383,   225,   225,   373,
2280 <       1,    24,    31,    97,   266,   267,   268,   269,   270,     1,
2275 >     144,   160,   174,   183,   187,   232,   237,   242,   266,   272,
2276 >     278,   292,   311,   334,   348,   363,   370,   374,   384,   393,
2277 >     414,   420,   426,   430,   436,   492,   507,   224,   225,   226,
2278 >     226,   312,   394,   421,   226,   431,   226,   349,   415,   335,
2279 >     226,   273,   293,   364,   226,   226,   385,   226,   226,   375,
2280 >       1,    24,    31,    97,   267,   268,   269,   270,   271,     1,
2281        21,    22,    27,    64,    65,    70,    71,    77,    78,    79,
2282 <     103,   104,   490,   491,   492,   493,   494,   495,   496,   497,
2283 <     498,   499,   500,   501,   502,   503,   225,   225,   225,     1,
2284 <      60,   424,   425,   426,   225,     1,     6,     7,    12,    20,
2282 >     103,   104,   493,   494,   495,   496,   497,   498,   499,   500,
2283 >     501,   502,   503,   504,   505,   506,   226,   226,   226,     1,
2284 >      60,   427,   428,   429,   226,     1,     6,     7,    12,    20,
2285        26,    29,    30,    35,    40,    41,    43,    44,    45,    47,
2286        54,    58,    59,    67,    76,    84,    86,    88,    90,    92,
2287        93,   105,   110,   111,   112,   114,   115,   116,   119,   145,
2288 <     151,   152,   153,   154,   155,   183,   207,   208,   210,   211,
2289 <     212,   216,   221,   434,   435,   436,   437,   438,   439,   440,
2290 <     441,   442,   443,   444,   445,   446,   447,   448,   449,   450,
2291 <     451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
2292 <     461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
2293 <     471,   472,   473,   474,   475,   476,   477,   478,   482,   486,
2294 <     487,   488,   225,   225,   225,     1,    94,   118,   237,   238,
2295 <     239,   240,   225,   225,   225,     1,    28,    36,    48,    49,
2296 <      51,    52,    53,    73,   505,   506,   507,   508,   509,   510,
2297 <     511,   512,   513,   514,     1,    24,    56,    63,    85,    89,
2298 <      97,   100,   101,   132,   149,   150,   174,   192,   193,   194,
2299 <     219,   220,   242,   243,   244,   245,   250,   251,   252,   253,
2300 <     254,   255,   256,   257,   258,   259,   260,   261,   262,   263,
2301 <     264,   225,     1,   217,   278,   279,   280,   281,   282,     1,
2302 <      97,   369,   370,   371,   225,   223,   226,   226,   226,   224,
2303 <     267,   226,   226,   226,   226,   226,   226,   226,   226,   226,
2304 <     226,   226,   226,   224,   491,     1,    15,    16,    19,    62,
2288 >     151,   152,   153,   154,   155,   184,   208,   209,   211,   212,
2289 >     213,   217,   222,   437,   438,   439,   440,   441,   442,   443,
2290 >     444,   445,   446,   447,   448,   449,   450,   451,   452,   453,
2291 >     454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
2292 >     464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
2293 >     474,   475,   476,   477,   478,   479,   480,   481,   485,   489,
2294 >     490,   491,   226,   226,   226,     1,    94,   118,   238,   239,
2295 >     240,   241,   226,   226,   226,     1,    28,    36,    48,    49,
2296 >      51,    52,    53,    73,   508,   509,   510,   511,   512,   513,
2297 >     514,   515,   516,   517,     1,    24,    56,    63,    85,    89,
2298 >      97,   100,   101,   132,   149,   150,   175,   193,   194,   195,
2299 >     220,   221,   243,   244,   245,   246,   251,   252,   253,   254,
2300 >     255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
2301 >     265,   226,     1,   218,   279,   280,   281,   282,   283,     1,
2302 >      97,   371,   372,   373,   226,   224,   227,   227,   227,   225,
2303 >     268,   227,   227,   227,   227,   227,   227,   227,   227,   227,
2304 >     227,   227,   227,   225,   494,     1,    15,    16,    19,    62,
2305        80,    81,    82,    83,    87,    91,    97,   108,   109,   120,
2306 <     142,   178,   311,   312,   313,   314,   315,   316,   317,   318,
2307 <     319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
2306 >     142,   179,   313,   314,   315,   316,   317,   318,   319,   320,
2307 >     321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
2308         1,     3,     5,    17,    32,    55,    57,    62,    72,    97,
2309 <     121,   141,   192,   219,   393,   394,   395,   396,   397,   398,
2310 <     399,   400,   401,   402,   406,   407,   408,   409,   410,     1,
2311 <      60,   124,   419,   420,   421,   422,   226,   224,   425,     1,
2312 <      97,   124,   429,   430,   431,   432,   226,   226,   226,   226,
2313 <     226,   226,   226,   226,   226,   226,   226,   226,   226,   226,
2314 <     226,   226,   226,   226,   226,   226,   226,   226,   226,   226,
2315 <     226,   226,   483,   226,   479,   226,   226,   226,   226,   226,
2316 <     226,   226,   226,   226,   226,   226,   226,   226,   226,   226,
2317 <     226,   226,   226,   224,   435,     1,    17,    32,    62,   117,
2318 <     125,   126,   146,   218,   348,   349,   350,   351,   352,   353,
2319 <     354,   358,   359,   360,     1,   124,   218,   413,   414,   415,
2320 <     416,     1,    55,    60,    62,   121,   334,   338,   339,   340,
2321 <     344,   345,   223,   226,   226,   224,   238,     1,    75,   166,
2322 <     273,   274,   275,   276,     1,    17,    32,    62,    97,   117,
2323 <     133,   197,   218,   293,   294,   295,   296,   297,   298,   299,
2324 <     300,   301,   305,     1,    34,    75,   124,   363,   364,   365,
2325 <     366,   367,   226,   226,   226,   226,   226,   226,   226,   226,
2326 <     224,   506,   223,   226,   226,   226,   226,   226,   226,   226,
2327 <     226,   226,   226,   226,   226,   226,   226,   226,   226,   226,
2328 <     224,   243,     1,    97,   214,   384,   385,   386,   387,   223,
2329 <     226,   224,   279,   166,   226,   224,   370,     1,    97,   214,
2330 <     218,   374,   375,   376,   377,   378,   122,   122,   122,   223,
2331 <     107,   107,   206,   107,   107,   233,   233,   233,   107,   107,
2332 <     107,   206,   206,   223,   223,   226,   226,   226,   329,   226,
2333 <     226,   226,   226,   226,   226,   226,   226,   226,   226,   226,
2334 <     226,   224,   312,   223,   226,   226,   226,   226,   226,   226,
2335 <     403,   226,   226,   226,   226,   226,   226,   224,   394,   226,
2336 <     226,   224,   420,   122,   223,   226,   226,   224,   430,   206,
2337 <     233,   233,   107,   206,   107,   122,   206,   233,   206,   107,
2338 <     107,   233,   107,   206,   206,   206,   233,   107,   107,   233,
2339 <     107,   107,   107,   107,   206,   226,   206,   226,   206,   233,
2340 <     233,   206,   206,   206,   206,   209,   206,   209,   206,   206,
2341 <     122,   233,   206,   206,   233,   233,   206,   206,   223,   223,
2342 <     226,   226,   355,   226,   226,   226,   226,   226,   224,   349,
2343 <     226,   226,   224,   414,   223,   226,   226,   335,   226,   224,
2344 <     339,   122,   122,   223,   223,   226,   226,   224,   274,   223,
2345 <     226,   226,   306,   226,   226,   226,   302,   226,   224,   294,
2346 <     223,   226,   226,   226,   224,   364,   206,   206,   206,   122,
2347 <     206,   206,   206,   233,   223,   122,   206,   122,   107,   107,
2348 <     122,   122,   122,   122,   122,   122,   107,   122,   195,   196,
2349 <     246,   247,   195,   196,   248,   249,   122,   122,   223,   223,
2350 <     226,   388,   224,   385,   206,   223,   225,   122,   223,   223,
2351 <     226,   379,   226,   224,   375,   223,   223,   223,   223,   223,
2352 <     223,   223,   134,   135,   136,   137,   138,   139,   140,   232,
2353 <     233,   223,   223,   223,   223,   223,   223,   223,   223,   107,
2354 <     107,   233,   226,   107,   107,   233,   107,   107,   233,   122,
2355 <     107,   107,   233,   107,   235,   235,   223,   122,   170,   171,
2356 <     122,   206,   122,   122,   226,   122,   122,   107,   122,   122,
2357 <     122,   223,   122,   122,   223,   223,   122,   122,   223,   223,
2358 <     223,   223,   223,   223,   223,   223,   223,   223,   223,   223,
2359 <     223,   223,   223,   223,   223,   223,   223,   223,   223,   223,
2360 <     223,   223,   223,   223,   223,    48,   157,   158,   159,   161,
2361 <     162,   164,   165,   167,   169,   172,   175,   176,   177,   179,
2362 <     184,   188,   189,   190,   198,   203,   484,   485,   223,    48,
2363 <     157,   158,   159,   161,   162,   164,   165,   167,   169,   172,
2364 <     175,   176,   177,   179,   184,   188,   189,   190,   198,   203,
2365 <     480,   481,   223,   223,   223,   223,   223,   223,   223,   223,
2366 <     223,   223,   223,   223,   223,   223,   223,   223,   223,   223,
2367 <     223,   223,   122,   206,   226,   122,   107,   122,   122,   122,
2368 <     223,   122,   122,   223,   122,   122,   226,   107,   342,   343,
2369 <     223,   223,   223,   122,   122,   223,   122,   206,   226,   122,
2370 <     122,   122,   226,   122,   223,   122,   122,   122,   223,   223,
2371 <     223,   223,   223,   223,   223,   223,   223,   223,   223,   223,
2372 <     223,   223,   223,   223,   223,   223,   223,   223,   223,   223,
2373 <     223,   227,   223,   227,   223,   223,   122,   226,   223,   223,
2374 <       1,    97,   187,   214,   283,   284,   285,   286,   287,   223,
2375 <     122,   226,   122,   223,   232,   232,   232,   232,   232,   232,
2376 <     232,   223,   223,   223,    50,   123,   330,   331,   223,   223,
2377 <     223,   223,   223,   223,   223,   223,   223,   223,     9,    10,
2378 <      11,   234,   235,   223,   223,   223,   223,   223,   223,   223,
2379 <     223,   223,     8,   191,   404,   405,   223,   223,   223,   223,
2380 <     223,   223,   223,   223,   223,   223,   223,   227,   223,   227,
2381 <     223,   223,    13,    33,    42,    69,    98,    99,   106,   131,
2382 <     147,   205,   356,   357,   223,   223,   223,   223,   223,   223,
2383 <     223,   223,   223,    48,   181,   191,   336,   337,   213,   227,
2384 <     341,   223,   223,   223,   223,     4,    18,    25,    39,    66,
2385 <      68,    94,   127,   129,   148,   163,   168,   172,   177,   180,
2386 <     185,   199,   204,   215,   222,   307,   308,   223,   223,   223,
2387 <      48,   157,   158,   159,   161,   162,   164,   165,   167,   169,
2388 <     172,   175,   176,   177,   179,   184,   188,   189,   190,   198,
2389 <     203,   303,   304,   223,   223,   223,   223,   247,   249,   223,
2390 <      68,   130,   156,   163,   172,   199,   201,   202,   215,   222,
2391 <     389,   390,   223,   226,   226,   288,   224,   284,   223,    68,
2392 <     130,   156,   163,   172,   199,   201,   202,   215,   222,   380,
2393 <     381,   223,   223,   227,   234,   234,   234,   223,   227,   485,
2394 <     481,   223,   227,   223,   227,   107,   343,   223,   228,   228,
2395 <     228,   223,   227,   223,   227,   223,   227,   122,   200,   235,
2396 <     226,   223,   223,   227,   331,   405,   357,   337,   128,   128,
2397 <     128,   308,   304,   390,   223,   223,   223,    39,    66,    68,
2398 <     113,   162,   163,   218,   289,   290,   381,   223,   227,   290
2309 >     121,   141,   167,   193,   220,   395,   396,   397,   398,   399,
2310 >     400,   401,   402,   403,   404,   405,   409,   410,   411,   412,
2311 >     413,     1,    60,   124,   422,   423,   424,   425,   227,   225,
2312 >     428,     1,    97,   124,   432,   433,   434,   435,   227,   227,
2313 >     227,   227,   227,   227,   227,   227,   227,   227,   227,   227,
2314 >     227,   227,   227,   227,   227,   227,   227,   227,   227,   227,
2315 >     227,   227,   227,   227,   486,   227,   482,   227,   227,   227,
2316 >     227,   227,   227,   227,   227,   227,   227,   227,   227,   227,
2317 >     227,   227,   227,   227,   227,   225,   438,     1,    17,    32,
2318 >      62,   117,   125,   126,   146,   219,   350,   351,   352,   353,
2319 >     354,   355,   356,   360,   361,   362,     1,   124,   219,   416,
2320 >     417,   418,   419,     1,    55,    60,    62,   121,   336,   340,
2321 >     341,   342,   346,   347,   224,   227,   227,   225,   239,     1,
2322 >      75,   166,   274,   275,   276,   277,     1,    17,    32,    62,
2323 >      97,   117,   133,   167,   198,   219,   294,   295,   296,   297,
2324 >     298,   299,   300,   301,   302,   303,   307,     1,    34,    75,
2325 >     124,   365,   366,   367,   368,   369,   227,   227,   227,   227,
2326 >     227,   227,   227,   227,   225,   509,   224,   227,   227,   227,
2327 >     227,   227,   227,   227,   227,   227,   227,   227,   227,   227,
2328 >     227,   227,   227,   227,   225,   244,     1,    97,   215,   386,
2329 >     387,   388,   389,   224,   227,   225,   280,   166,   227,   225,
2330 >     372,     1,    97,   215,   219,   376,   377,   378,   379,   380,
2331 >     122,   122,   122,   224,   107,   107,   207,   107,   107,   234,
2332 >     234,   234,   107,   107,   107,   207,   207,   224,   224,   227,
2333 >     227,   227,   331,   227,   227,   227,   227,   227,   227,   227,
2334 >     227,   227,   227,   227,   227,   225,   314,   224,   227,   227,
2335 >     227,   227,   227,   227,   406,   227,   227,   227,   227,   227,
2336 >     227,   227,   225,   396,   227,   227,   225,   423,   122,   224,
2337 >     227,   227,   225,   433,   207,   234,   234,   107,   207,   107,
2338 >     122,   207,   234,   207,   107,   107,   234,   107,   207,   207,
2339 >     207,   234,   107,   107,   234,   107,   107,   107,   107,   207,
2340 >     227,   207,   227,   207,   234,   234,   207,   207,   207,   207,
2341 >     210,   207,   210,   207,   207,   122,   234,   207,   207,   234,
2342 >     234,   207,   207,   224,   224,   227,   227,   357,   227,   227,
2343 >     227,   227,   227,   225,   351,   227,   227,   225,   417,   224,
2344 >     227,   227,   337,   227,   225,   341,   122,   122,   224,   224,
2345 >     227,   227,   225,   275,   224,   227,   227,   308,   227,   227,
2346 >     227,   227,   304,   227,   225,   295,   224,   227,   227,   227,
2347 >     225,   366,   207,   207,   207,   122,   207,   207,   207,   234,
2348 >     224,   122,   207,   122,   107,   107,   122,   122,   122,   122,
2349 >     122,   122,   107,   122,   196,   197,   247,   248,   196,   197,
2350 >     249,   250,   122,   122,   224,   224,   227,   390,   225,   387,
2351 >     207,   224,   226,   122,   224,   224,   227,   381,   227,   225,
2352 >     377,   224,   224,   224,   224,   224,   224,   224,   134,   135,
2353 >     136,   137,   138,   139,   140,   233,   234,   224,   224,   224,
2354 >     224,   224,   224,   224,   224,   107,   107,   234,   227,   107,
2355 >     107,   234,   107,   107,   234,   122,   107,   107,   234,   107,
2356 >     236,   236,   224,   122,   171,   172,   122,   207,   122,   122,
2357 >     227,   122,   122,   107,   122,   122,   122,   122,   224,   122,
2358 >     122,   224,   224,   122,   122,   224,   224,   224,   224,   224,
2359 >     224,   224,   224,   224,   224,   224,   224,   224,   224,   224,
2360 >     224,   224,   224,   224,   224,   224,   224,   224,   224,   224,
2361 >     224,   224,    48,   157,   158,   159,   161,   162,   164,   165,
2362 >     168,   170,   173,   176,   177,   178,   180,   185,   189,   190,
2363 >     191,   199,   204,   487,   488,   224,    48,   157,   158,   159,
2364 >     161,   162,   164,   165,   168,   170,   173,   176,   177,   178,
2365 >     180,   185,   189,   190,   191,   199,   204,   483,   484,   224,
2366 >     224,   224,   224,   224,   224,   224,   224,   224,   224,   224,
2367 >     224,   224,   224,   224,   224,   224,   224,   224,   224,   122,
2368 >     207,   227,   122,   107,   122,   122,   122,   224,   122,   122,
2369 >     224,   122,   122,   227,   107,   344,   345,   224,   224,   224,
2370 >     122,   122,   224,   122,   207,   227,   122,   122,   122,   122,
2371 >     227,   122,   224,   122,   122,   122,   224,   224,   224,   224,
2372 >     224,   224,   224,   224,   224,   224,   224,   224,   224,   224,
2373 >     224,   224,   224,   224,   224,   224,   224,   224,   224,   228,
2374 >     224,   228,   224,   224,   122,   227,   224,   224,     1,    97,
2375 >     188,   215,   284,   285,   286,   287,   288,   224,   122,   227,
2376 >     122,   224,   233,   233,   233,   233,   233,   233,   233,   224,
2377 >     224,   224,    50,   123,   332,   333,   224,   224,   224,   224,
2378 >     224,   224,   224,   224,   224,   224,     9,    10,    11,   235,
2379 >     236,   224,   224,   224,   224,   224,   224,   224,   224,   224,
2380 >       8,   192,   407,   408,   224,   224,   224,   224,   224,   224,
2381 >     224,   224,   224,   224,   224,   224,   228,   224,   228,   224,
2382 >     224,    13,    33,    42,    69,    98,    99,   106,   131,   147,
2383 >     206,   358,   359,   224,   224,   224,   224,   224,   224,   224,
2384 >     224,   224,    48,   182,   192,   338,   339,   214,   228,   343,
2385 >     224,   224,   224,   224,     4,    18,    25,    39,    66,    68,
2386 >      94,   127,   129,   148,   163,   169,   173,   178,   181,   186,
2387 >     200,   205,   216,   223,   309,   310,   224,   224,   224,   224,
2388 >      48,   157,   158,   159,   161,   162,   164,   165,   168,   170,
2389 >     173,   176,   177,   178,   180,   185,   189,   190,   191,   199,
2390 >     204,   305,   306,   224,   224,   224,   224,   248,   250,   224,
2391 >      68,   130,   156,   163,   173,   200,   202,   203,   216,   223,
2392 >     391,   392,   224,   227,   227,   289,   225,   285,   224,    68,
2393 >     130,   156,   163,   173,   200,   202,   203,   216,   223,   382,
2394 >     383,   224,   224,   228,   235,   235,   235,   224,   228,   488,
2395 >     484,   224,   228,   224,   228,   107,   345,   224,   229,   229,
2396 >     229,   224,   228,   224,   228,   224,   228,   122,   201,   236,
2397 >     227,   224,   224,   228,   333,   408,   359,   339,   128,   128,
2398 >     128,   310,   306,   392,   224,   224,   224,    39,    66,    68,
2399 >     113,   162,   163,   219,   290,   291,   383,   224,   228,   291
2400   };
2401  
2402   #define yyerrok         (yyerrstatus = 0)
# Line 3181 | Line 3189 | yyreduce:
3189      {
3190          case 27:
3191   /* Line 1787 of yacc.c  */
3192 < #line 395 "conf_parser.y"
3192 > #line 397 "conf_parser.y"
3193      { (yyval.number) = 0; }
3194      break;
3195  
3196    case 29:
3197   /* Line 1787 of yacc.c  */
3198 < #line 397 "conf_parser.y"
3198 > #line 399 "conf_parser.y"
3199      {
3200                          (yyval.number) = (yyvsp[(1) - (2)].number) + (yyvsp[(2) - (2)].number);
3201                  }
# Line 3195 | Line 3203 | yyreduce:
3203  
3204    case 30:
3205   /* Line 1787 of yacc.c  */
3206 < #line 401 "conf_parser.y"
3206 > #line 403 "conf_parser.y"
3207      {
3208                          (yyval.number) = (yyvsp[(1) - (3)].number) + (yyvsp[(3) - (3)].number);
3209                  }
# Line 3203 | Line 3211 | yyreduce:
3211  
3212    case 31:
3213   /* Line 1787 of yacc.c  */
3214 < #line 405 "conf_parser.y"
3214 > #line 407 "conf_parser.y"
3215      {
3216                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 + (yyvsp[(3) - (3)].number);
3217                  }
# Line 3211 | Line 3219 | yyreduce:
3219  
3220    case 32:
3221   /* Line 1787 of yacc.c  */
3222 < #line 409 "conf_parser.y"
3222 > #line 411 "conf_parser.y"
3223      {
3224                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 * 60 + (yyvsp[(3) - (3)].number);
3225                  }
# Line 3219 | Line 3227 | yyreduce:
3227  
3228    case 33:
3229   /* Line 1787 of yacc.c  */
3230 < #line 413 "conf_parser.y"
3230 > #line 415 "conf_parser.y"
3231      {
3232                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 * 60 * 24 + (yyvsp[(3) - (3)].number);
3233                  }
# Line 3227 | Line 3235 | yyreduce:
3235  
3236    case 34:
3237   /* Line 1787 of yacc.c  */
3238 < #line 417 "conf_parser.y"
3238 > #line 419 "conf_parser.y"
3239      {
3240                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 * 60 * 24 * 7 + (yyvsp[(3) - (3)].number);
3241                  }
# Line 3235 | Line 3243 | yyreduce:
3243  
3244    case 35:
3245   /* Line 1787 of yacc.c  */
3246 < #line 421 "conf_parser.y"
3246 > #line 423 "conf_parser.y"
3247      {
3248                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 * 60 * 24 * 7 * 4 + (yyvsp[(3) - (3)].number);
3249                  }
# Line 3243 | Line 3251 | yyreduce:
3251  
3252    case 36:
3253   /* Line 1787 of yacc.c  */
3254 < #line 425 "conf_parser.y"
3254 > #line 427 "conf_parser.y"
3255      {
3256                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 * 60 * 24 * 365 + (yyvsp[(3) - (3)].number);
3257                  }
# Line 3251 | Line 3259 | yyreduce:
3259  
3260    case 37:
3261   /* Line 1787 of yacc.c  */
3262 < #line 430 "conf_parser.y"
3262 > #line 432 "conf_parser.y"
3263      { (yyval.number) = 0; }
3264      break;
3265  
3266    case 39:
3267   /* Line 1787 of yacc.c  */
3268 < #line 431 "conf_parser.y"
3268 > #line 433 "conf_parser.y"
3269      { (yyval.number) = (yyvsp[(1) - (2)].number) + (yyvsp[(2) - (2)].number); }
3270      break;
3271  
3272    case 40:
3273   /* Line 1787 of yacc.c  */
3274 < #line 432 "conf_parser.y"
3274 > #line 434 "conf_parser.y"
3275      { (yyval.number) = (yyvsp[(1) - (3)].number) + (yyvsp[(3) - (3)].number); }
3276      break;
3277  
3278    case 41:
3279   /* Line 1787 of yacc.c  */
3280 < #line 433 "conf_parser.y"
3280 > #line 435 "conf_parser.y"
3281      { (yyval.number) = (yyvsp[(1) - (3)].number) * 1024 + (yyvsp[(3) - (3)].number); }
3282      break;
3283  
3284    case 42:
3285   /* Line 1787 of yacc.c  */
3286 < #line 434 "conf_parser.y"
3286 > #line 436 "conf_parser.y"
3287      { (yyval.number) = (yyvsp[(1) - (3)].number) * 1024 * 1024 + (yyvsp[(3) - (3)].number); }
3288      break;
3289  
3290    case 49:
3291   /* Line 1787 of yacc.c  */
3292 < #line 448 "conf_parser.y"
3292 > #line 450 "conf_parser.y"
3293      {
3294    if (conf_parser_ctx.pass == 2)
3295      add_conf_module(libio_basename(yylval.string));
# Line 3290 | Line 3298 | yyreduce:
3298  
3299    case 50:
3300   /* Line 1787 of yacc.c  */
3301 < #line 454 "conf_parser.y"
3301 > #line 456 "conf_parser.y"
3302      {
3303    if (conf_parser_ctx.pass == 2)
3304      mod_add_path(yylval.string);
# Line 3299 | Line 3307 | yyreduce:
3307  
3308    case 76:
3309   /* Line 1787 of yacc.c  */
3310 < #line 480 "conf_parser.y"
3310 > #line 482 "conf_parser.y"
3311      {
3312   #ifdef HAVE_LIBCRYPTO
3313    if (conf_parser_ctx.pass == 2 && ServerInfo.client_ctx)
# Line 3310 | Line 3318 | yyreduce:
3318  
3319    case 77:
3320   /* Line 1787 of yacc.c  */
3321 < #line 486 "conf_parser.y"
3321 > #line 488 "conf_parser.y"
3322      {
3323   #ifdef HAVE_LIBCRYPTO
3324    if (conf_parser_ctx.pass == 2 && ServerInfo.client_ctx)
# Line 3321 | Line 3329 | yyreduce:
3329  
3330    case 80:
3331   /* Line 1787 of yacc.c  */
3332 < #line 495 "conf_parser.y"
3332 > #line 497 "conf_parser.y"
3333      {
3334   #ifdef HAVE_LIBCRYPTO
3335    if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
# Line 3332 | Line 3340 | yyreduce:
3340  
3341    case 81:
3342   /* Line 1787 of yacc.c  */
3343 < #line 501 "conf_parser.y"
3343 > #line 503 "conf_parser.y"
3344      {
3345   #ifdef HAVE_LIBCRYPTO
3346    if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
# Line 3343 | Line 3351 | yyreduce:
3351  
3352    case 82:
3353   /* Line 1787 of yacc.c  */
3354 < #line 509 "conf_parser.y"
3354 > #line 511 "conf_parser.y"
3355      {
3356   #ifdef HAVE_LIBCRYPTO
3357    if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
# Line 3388 | Line 3396 | yyreduce:
3396  
3397    case 83:
3398   /* Line 1787 of yacc.c  */
3399 < #line 551 "conf_parser.y"
3399 > #line 553 "conf_parser.y"
3400      {
3401   #ifdef HAVE_LIBCRYPTO
3402    BIO *file = NULL;
# Line 3450 | Line 3458 | yyreduce:
3458  
3459    case 84:
3460   /* Line 1787 of yacc.c  */
3461 < #line 610 "conf_parser.y"
3461 > #line 612 "conf_parser.y"
3462      {
3463   /* TBD - XXX: error reporting */
3464   #ifdef HAVE_LIBCRYPTO
# Line 3481 | Line 3489 | yyreduce:
3489  
3490    case 85:
3491   /* Line 1787 of yacc.c  */
3492 < #line 638 "conf_parser.y"
3492 > #line 640 "conf_parser.y"
3493      {
3494   #ifdef HAVE_LIBCRYPTO
3495    if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
# Line 3492 | Line 3500 | yyreduce:
3500  
3501    case 86:
3502   /* Line 1787 of yacc.c  */
3503 < #line 646 "conf_parser.y"
3503 > #line 648 "conf_parser.y"
3504      {
3505    /* this isn't rehashable */
3506    if (conf_parser_ctx.pass == 2 && !ServerInfo.name)
# Line 3510 | Line 3518 | yyreduce:
3518  
3519    case 87:
3520   /* Line 1787 of yacc.c  */
3521 < #line 661 "conf_parser.y"
3521 > #line 663 "conf_parser.y"
3522      {
3523    /* this isn't rehashable */
3524    if (conf_parser_ctx.pass == 2 && !ServerInfo.sid)
# Line 3528 | Line 3536 | yyreduce:
3536  
3537    case 88:
3538   /* Line 1787 of yacc.c  */
3539 < #line 676 "conf_parser.y"
3539 > #line 678 "conf_parser.y"
3540      {
3541    if (conf_parser_ctx.pass == 2)
3542    {
# Line 3540 | Line 3548 | yyreduce:
3548  
3549    case 89:
3550   /* Line 1787 of yacc.c  */
3551 < #line 685 "conf_parser.y"
3551 > #line 687 "conf_parser.y"
3552      {
3553    if (conf_parser_ctx.pass == 2)
3554    {
# Line 3557 | Line 3565 | yyreduce:
3565  
3566    case 90:
3567   /* Line 1787 of yacc.c  */
3568 < #line 699 "conf_parser.y"
3568 > #line 701 "conf_parser.y"
3569      {
3570    if (conf_parser_ctx.pass != 2)
3571      break;
# Line 3569 | Line 3577 | yyreduce:
3577  
3578    case 91:
3579   /* Line 1787 of yacc.c  */
3580 < #line 708 "conf_parser.y"
3580 > #line 710 "conf_parser.y"
3581      {
3582    if (conf_parser_ctx.pass == 2 && *yylval.string != '*')
3583    {
# Line 3600 | Line 3608 | yyreduce:
3608  
3609    case 92:
3610   /* Line 1787 of yacc.c  */
3611 < #line 736 "conf_parser.y"
3611 > #line 738 "conf_parser.y"
3612      {
3613   #ifdef IPV6
3614    if (conf_parser_ctx.pass == 2 && *yylval.string != '*')
# Line 3633 | Line 3641 | yyreduce:
3641  
3642    case 93:
3643   /* Line 1787 of yacc.c  */
3644 < #line 766 "conf_parser.y"
3644 > #line 768 "conf_parser.y"
3645      {
3646    if (conf_parser_ctx.pass != 2)
3647      break;
# Line 3661 | Line 3669 | yyreduce:
3669  
3670    case 94:
3671   /* Line 1787 of yacc.c  */
3672 < #line 791 "conf_parser.y"
3672 > #line 793 "conf_parser.y"
3673      {
3674    if (conf_parser_ctx.pass != 2)
3675      break;
# Line 3686 | Line 3694 | yyreduce:
3694  
3695    case 95:
3696   /* Line 1787 of yacc.c  */
3697 < #line 813 "conf_parser.y"
3697 > #line 815 "conf_parser.y"
3698      {
3699    if (conf_parser_ctx.pass != 2)
3700      break;
# Line 3711 | Line 3719 | yyreduce:
3719  
3720    case 96:
3721   /* Line 1787 of yacc.c  */
3722 < #line 835 "conf_parser.y"
3722 > #line 837 "conf_parser.y"
3723      {
3724    if (conf_parser_ctx.pass == 2)
3725      ServerInfo.hub = yylval.number;
# Line 3720 | Line 3728 | yyreduce:
3728  
3729    case 104:
3730   /* Line 1787 of yacc.c  */
3731 < #line 850 "conf_parser.y"
3731 > #line 852 "conf_parser.y"
3732      {
3733    if (conf_parser_ctx.pass != 2)
3734      break;
# Line 3732 | Line 3740 | yyreduce:
3740  
3741    case 105:
3742   /* Line 1787 of yacc.c  */
3743 < #line 859 "conf_parser.y"
3743 > #line 861 "conf_parser.y"
3744      {
3745    if (conf_parser_ctx.pass != 2)
3746      break;
# Line 3744 | Line 3752 | yyreduce:
3752  
3753    case 106:
3754   /* Line 1787 of yacc.c  */
3755 < #line 868 "conf_parser.y"
3755 > #line 870 "conf_parser.y"
3756      {
3757    if (conf_parser_ctx.pass != 2)
3758      break;
# Line 3756 | Line 3764 | yyreduce:
3764  
3765    case 107:
3766   /* Line 1787 of yacc.c  */
3767 < #line 880 "conf_parser.y"
3767 > #line 882 "conf_parser.y"
3768      {
3769    if (conf_parser_ctx.pass == 2)
3770      reset_block_state();
# Line 3765 | Line 3773 | yyreduce:
3773  
3774    case 108:
3775   /* Line 1787 of yacc.c  */
3776 < #line 884 "conf_parser.y"
3776 > #line 886 "conf_parser.y"
3777      {
3778    dlink_node *ptr = NULL;
3779  
# Line 3782 | Line 3790 | yyreduce:
3790  
3791    case 114:
3792   /* Line 1787 of yacc.c  */
3793 < #line 901 "conf_parser.y"
3793 > #line 903 "conf_parser.y"
3794      {
3795    if (conf_parser_ctx.pass == 2)
3796      dlinkAdd(xstrdup(yylval.string), make_dlink_node(), &block_state.mask.list);
# Line 3791 | Line 3799 | yyreduce:
3799  
3800    case 115:
3801   /* Line 1787 of yacc.c  */
3802 < #line 907 "conf_parser.y"
3802 > #line 909 "conf_parser.y"
3803      {
3804    if (conf_parser_ctx.pass == 2)
3805      strlcpy(block_state.file.buf, yylval.string, sizeof(block_state.file.buf));
# Line 3800 | Line 3808 | yyreduce:
3808  
3809    case 122:
3810   /* Line 1787 of yacc.c  */
3811 < #line 922 "conf_parser.y"
3811 > #line 924 "conf_parser.y"
3812      {
3813    if (conf_parser_ctx.pass == 2)
3814      ConfigLoggingEntry.use_logging = yylval.number;
# Line 3809 | Line 3817 | yyreduce:
3817  
3818    case 123:
3819   /* Line 1787 of yacc.c  */
3820 < #line 928 "conf_parser.y"
3820 > #line 930 "conf_parser.y"
3821      {
3822    if (conf_parser_ctx.pass == 2)
3823      reset_block_state();
# Line 3818 | Line 3826 | yyreduce:
3826  
3827    case 124:
3828   /* Line 1787 of yacc.c  */
3829 < #line 932 "conf_parser.y"
3829 > #line 934 "conf_parser.y"
3830      {
3831    if (conf_parser_ctx.pass != 2)
3832      break;
# Line 3831 | Line 3839 | yyreduce:
3839  
3840    case 131:
3841   /* Line 1787 of yacc.c  */
3842 < #line 948 "conf_parser.y"
3842 > #line 950 "conf_parser.y"
3843      {
3844    if (conf_parser_ctx.pass != 2)
3845      break;
# Line 3842 | Line 3850 | yyreduce:
3850  
3851    case 132:
3852   /* Line 1787 of yacc.c  */
3853 < #line 956 "conf_parser.y"
3853 > #line 958 "conf_parser.y"
3854      {
3855    block_state.size.value = (yyvsp[(3) - (4)].number);
3856   }
# Line 3850 | Line 3858 | yyreduce:
3858  
3859    case 133:
3860   /* Line 1787 of yacc.c  */
3861 < #line 959 "conf_parser.y"
3861 > #line 961 "conf_parser.y"
3862      {
3863    block_state.size.value = 0;
3864   }
# Line 3858 | Line 3866 | yyreduce:
3866  
3867    case 134:
3868   /* Line 1787 of yacc.c  */
3869 < #line 964 "conf_parser.y"
3869 > #line 966 "conf_parser.y"
3870      {
3871    if (conf_parser_ctx.pass == 2)
3872      block_state.type.value = 0;
# Line 3867 | Line 3875 | yyreduce:
3875  
3876    case 138:
3877   /* Line 1787 of yacc.c  */
3878 < #line 971 "conf_parser.y"
3878 > #line 973 "conf_parser.y"
3879      {
3880    if (conf_parser_ctx.pass == 2)
3881      block_state.type.value = LOG_TYPE_USER;
# Line 3876 | Line 3884 | yyreduce:
3884  
3885    case 139:
3886   /* Line 1787 of yacc.c  */
3887 < #line 975 "conf_parser.y"
3887 > #line 977 "conf_parser.y"
3888      {
3889    if (conf_parser_ctx.pass == 2)
3890      block_state.type.value = LOG_TYPE_OPER;
# Line 3885 | Line 3893 | yyreduce:
3893  
3894    case 140:
3895   /* Line 1787 of yacc.c  */
3896 < #line 979 "conf_parser.y"
3896 > #line 981 "conf_parser.y"
3897      {
3898    if (conf_parser_ctx.pass == 2)
3899      block_state.type.value = LOG_TYPE_GLINE;
# Line 3894 | Line 3902 | yyreduce:
3902  
3903    case 141:
3904   /* Line 1787 of yacc.c  */
3905 < #line 983 "conf_parser.y"
3905 > #line 985 "conf_parser.y"
3906      {
3907    if (conf_parser_ctx.pass == 2)
3908      block_state.type.value = LOG_TYPE_DLINE;
# Line 3903 | Line 3911 | yyreduce:
3911  
3912    case 142:
3913   /* Line 1787 of yacc.c  */
3914 < #line 987 "conf_parser.y"
3914 > #line 989 "conf_parser.y"
3915      {
3916    if (conf_parser_ctx.pass == 2)
3917      block_state.type.value = LOG_TYPE_KLINE;
# Line 3912 | Line 3920 | yyreduce:
3920  
3921    case 143:
3922   /* Line 1787 of yacc.c  */
3923 < #line 991 "conf_parser.y"
3923 > #line 993 "conf_parser.y"
3924      {
3925    if (conf_parser_ctx.pass == 2)
3926      block_state.type.value = LOG_TYPE_KILL;
# Line 3921 | Line 3929 | yyreduce:
3929  
3930    case 144:
3931   /* Line 1787 of yacc.c  */
3932 < #line 995 "conf_parser.y"
3932 > #line 997 "conf_parser.y"
3933      {
3934    if (conf_parser_ctx.pass == 2)
3935      block_state.type.value = LOG_TYPE_DEBUG;
# Line 3930 | Line 3938 | yyreduce:
3938  
3939    case 145:
3940   /* Line 1787 of yacc.c  */
3941 < #line 1005 "conf_parser.y"
3941 > #line 1007 "conf_parser.y"
3942      {
3943    if (conf_parser_ctx.pass != 2)
3944      break;
# Line 3942 | Line 3950 | yyreduce:
3950  
3951    case 146:
3952   /* Line 1787 of yacc.c  */
3953 < #line 1012 "conf_parser.y"
3953 > #line 1014 "conf_parser.y"
3954      {
3955    dlink_node *ptr = NULL;
3956  
# Line 3974 | Line 3982 | yyreduce:
3982      nuh.hostsize = sizeof(block_state.host.buf);
3983      split_nuh(&nuh);
3984  
3985 <    conf        = conf_make(CONF_OPER);
3986 <    conf->name  = xstrdup(block_state.name.buf);
3987 <    conf->user  = xstrdup(block_state.user.buf);
3988 <    conf->host  = xstrdup(block_state.host.buf);
3985 >    conf         = conf_make(CONF_OPER);
3986 >    conf->name   = xstrdup(block_state.name.buf);
3987 >    conf->user   = xstrdup(block_state.user.buf);
3988 >    conf->host   = xstrdup(block_state.host.buf);
3989 >
3990 >    if (block_state.cert.buf[0])
3991 >      conf->certfp = xstrdup(block_state.cert.buf);
3992  
3993      if (block_state.rpass.buf[0])
3994        conf->passwd = xstrdup(block_state.rpass.buf);
# Line 4013 | Line 4024 | yyreduce:
4024   }
4025      break;
4026  
4027 <  case 158:
4027 >  case 159:
4028   /* Line 1787 of yacc.c  */
4029 < #line 1087 "conf_parser.y"
4029 > #line 1093 "conf_parser.y"
4030      {
4031    if (conf_parser_ctx.pass == 2)
4032      strlcpy(block_state.name.buf, yylval.string, sizeof(block_state.name.buf));
4033   }
4034      break;
4035  
4036 <  case 159:
4036 >  case 160:
4037   /* Line 1787 of yacc.c  */
4038 < #line 1093 "conf_parser.y"
4038 > #line 1099 "conf_parser.y"
4039      {
4040    if (conf_parser_ctx.pass == 2)
4041      dlinkAdd(xstrdup(yylval.string), make_dlink_node(), &block_state.mask.list);
4042   }
4043      break;
4044  
4045 <  case 160:
4045 >  case 161:
4046   /* Line 1787 of yacc.c  */
4047 < #line 1099 "conf_parser.y"
4047 > #line 1105 "conf_parser.y"
4048      {
4049    if (conf_parser_ctx.pass == 2)
4050      strlcpy(block_state.rpass.buf, yylval.string, sizeof(block_state.rpass.buf));
4051   }
4052      break;
4053  
4054 <  case 161:
4054 >  case 162:
4055   /* Line 1787 of yacc.c  */
4056 < #line 1105 "conf_parser.y"
4056 > #line 1111 "conf_parser.y"
4057      {
4058    if (conf_parser_ctx.pass != 2)
4059      break;
# Line 4054 | Line 4065 | yyreduce:
4065   }
4066      break;
4067  
4068 <  case 162:
4068 >  case 163:
4069   /* Line 1787 of yacc.c  */
4070 < #line 1116 "conf_parser.y"
4070 > #line 1122 "conf_parser.y"
4071      {
4072    if (conf_parser_ctx.pass == 2)
4073      strlcpy(block_state.file.buf, yylval.string, sizeof(block_state.file.buf));
4074   }
4075      break;
4076  
4077 <  case 163:
4077 >  case 164:
4078   /* Line 1787 of yacc.c  */
4079 < #line 1122 "conf_parser.y"
4079 > #line 1128 "conf_parser.y"
4080 >    {
4081 >  if (conf_parser_ctx.pass == 2)
4082 >    if (strlen(yylval.string) == SHA_DIGEST_LENGTH * 2)
4083 >      strlcpy(block_state.cert.buf, yylval.string, sizeof(block_state.cert.buf));
4084 > }
4085 >    break;
4086 >
4087 >  case 165:
4088 > /* Line 1787 of yacc.c  */
4089 > #line 1135 "conf_parser.y"
4090      {
4091    if (conf_parser_ctx.pass == 2)
4092      strlcpy(block_state.class.buf, yylval.string, sizeof(block_state.class.buf));
4093   }
4094      break;
4095  
4096 <  case 164:
4096 >  case 166:
4097   /* Line 1787 of yacc.c  */
4098 < #line 1128 "conf_parser.y"
4098 > #line 1141 "conf_parser.y"
4099      {
4100    if (conf_parser_ctx.pass == 2)
4101      block_state.modes.value = 0;
4102   }
4103      break;
4104  
4105 <  case 168:
4105 >  case 170:
4106   /* Line 1787 of yacc.c  */
4107 < #line 1135 "conf_parser.y"
4107 > #line 1148 "conf_parser.y"
4108      {
4109    if (conf_parser_ctx.pass == 2)
4110      block_state.modes.value |= UMODE_BOTS;
4111   }
4112      break;
4113  
4114 <  case 169:
4114 >  case 171:
4115   /* Line 1787 of yacc.c  */
4116 < #line 1139 "conf_parser.y"
4116 > #line 1152 "conf_parser.y"
4117      {
4118    if (conf_parser_ctx.pass == 2)
4119      block_state.modes.value |= UMODE_CCONN;
4120   }
4121      break;
4122  
4123 <  case 170:
4123 >  case 172:
4124   /* Line 1787 of yacc.c  */
4125 < #line 1143 "conf_parser.y"
4125 > #line 1156 "conf_parser.y"
4126      {
4127    if (conf_parser_ctx.pass == 2)
4128      block_state.modes.value |= UMODE_DEAF;
4129   }
4130      break;
4131  
4132 <  case 171:
4132 >  case 173:
4133   /* Line 1787 of yacc.c  */
4134 < #line 1147 "conf_parser.y"
4134 > #line 1160 "conf_parser.y"
4135      {
4136    if (conf_parser_ctx.pass == 2)
4137      block_state.modes.value |= UMODE_DEBUG;
4138   }
4139      break;
4140  
4141 <  case 172:
4141 >  case 174:
4142   /* Line 1787 of yacc.c  */
4143 < #line 1151 "conf_parser.y"
4143 > #line 1164 "conf_parser.y"
4144      {
4145    if (conf_parser_ctx.pass == 2)
4146      block_state.modes.value |= UMODE_FULL;
4147   }
4148      break;
4149  
4150 <  case 173:
4150 >  case 175:
4151   /* Line 1787 of yacc.c  */
4152 < #line 1155 "conf_parser.y"
4152 > #line 1168 "conf_parser.y"
4153      {
4154    if (conf_parser_ctx.pass == 2)
4155      block_state.modes.value |= UMODE_HIDDEN;
4156   }
4157      break;
4158  
4159 <  case 174:
4159 >  case 176:
4160   /* Line 1787 of yacc.c  */
4161 < #line 1159 "conf_parser.y"
4161 > #line 1172 "conf_parser.y"
4162      {
4163    if (conf_parser_ctx.pass == 2)
4164      block_state.modes.value |= UMODE_SKILL;
4165   }
4166      break;
4167  
4168 <  case 175:
4168 >  case 177:
4169   /* Line 1787 of yacc.c  */
4170 < #line 1163 "conf_parser.y"
4170 > #line 1176 "conf_parser.y"
4171      {
4172    if (conf_parser_ctx.pass == 2)
4173      block_state.modes.value |= UMODE_NCHANGE;
4174   }
4175      break;
4176  
4177 <  case 176:
4177 >  case 178:
4178   /* Line 1787 of yacc.c  */
4179 < #line 1167 "conf_parser.y"
4179 > #line 1180 "conf_parser.y"
4180      {
4181    if (conf_parser_ctx.pass == 2)
4182      block_state.modes.value |= UMODE_REJ;
4183   }
4184      break;
4185  
4186 <  case 177:
4186 >  case 179:
4187   /* Line 1787 of yacc.c  */
4188 < #line 1171 "conf_parser.y"
4188 > #line 1184 "conf_parser.y"
4189      {
4190    if (conf_parser_ctx.pass == 2)
4191      block_state.modes.value |= UMODE_UNAUTH;
4192   }
4193      break;
4194  
4195 <  case 178:
4195 >  case 180:
4196   /* Line 1787 of yacc.c  */
4197 < #line 1175 "conf_parser.y"
4197 > #line 1188 "conf_parser.y"
4198      {
4199    if (conf_parser_ctx.pass == 2)
4200      block_state.modes.value |= UMODE_SPY;
4201   }
4202      break;
4203  
4204 <  case 179:
4204 >  case 181:
4205   /* Line 1787 of yacc.c  */
4206 < #line 1179 "conf_parser.y"
4206 > #line 1192 "conf_parser.y"
4207      {
4208    if (conf_parser_ctx.pass == 2)
4209      block_state.modes.value |= UMODE_EXTERNAL;
4210   }
4211      break;
4212  
4213 <  case 180:
4213 >  case 182:
4214   /* Line 1787 of yacc.c  */
4215 < #line 1183 "conf_parser.y"
4215 > #line 1196 "conf_parser.y"
4216      {
4217    if (conf_parser_ctx.pass == 2)
4218      block_state.modes.value |= UMODE_OPERWALL;
4219   }
4220      break;
4221  
4222 <  case 181:
4222 >  case 183:
4223   /* Line 1787 of yacc.c  */
4224 < #line 1187 "conf_parser.y"
4224 > #line 1200 "conf_parser.y"
4225      {
4226    if (conf_parser_ctx.pass == 2)
4227      block_state.modes.value |= UMODE_SERVNOTICE;
4228   }
4229      break;
4230  
4231 <  case 182:
4231 >  case 184:
4232   /* Line 1787 of yacc.c  */
4233 < #line 1191 "conf_parser.y"
4233 > #line 1204 "conf_parser.y"
4234      {
4235    if (conf_parser_ctx.pass == 2)
4236      block_state.modes.value |= UMODE_INVISIBLE;
4237   }
4238      break;
4239  
4240 <  case 183:
4240 >  case 185:
4241   /* Line 1787 of yacc.c  */
4242 < #line 1195 "conf_parser.y"
4242 > #line 1208 "conf_parser.y"
4243      {
4244    if (conf_parser_ctx.pass == 2)
4245      block_state.modes.value |= UMODE_WALLOP;
4246   }
4247      break;
4248  
4249 <  case 184:
4249 >  case 186:
4250   /* Line 1787 of yacc.c  */
4251 < #line 1199 "conf_parser.y"
4251 > #line 1212 "conf_parser.y"
4252      {
4253    if (conf_parser_ctx.pass == 2)
4254      block_state.modes.value |= UMODE_SOFTCALLERID;
4255   }
4256      break;
4257  
4258 <  case 185:
4258 >  case 187:
4259   /* Line 1787 of yacc.c  */
4260 < #line 1203 "conf_parser.y"
4260 > #line 1216 "conf_parser.y"
4261      {
4262    if (conf_parser_ctx.pass == 2)
4263      block_state.modes.value |= UMODE_CALLERID;
4264   }
4265      break;
4266  
4267 <  case 186:
4267 >  case 188:
4268   /* Line 1787 of yacc.c  */
4269 < #line 1207 "conf_parser.y"
4269 > #line 1220 "conf_parser.y"
4270      {
4271    if (conf_parser_ctx.pass == 2)
4272      block_state.modes.value |= UMODE_LOCOPS;
4273   }
4274      break;
4275  
4276 <  case 187:
4276 >  case 189:
4277   /* Line 1787 of yacc.c  */
4278 < #line 1211 "conf_parser.y"
4278 > #line 1224 "conf_parser.y"
4279      {
4280    if (conf_parser_ctx.pass == 2)
4281      block_state.modes.value |= UMODE_REGONLY;
4282   }
4283      break;
4284  
4285 <  case 188:
4285 >  case 190:
4286   /* Line 1787 of yacc.c  */
4287 < #line 1215 "conf_parser.y"
4287 > #line 1228 "conf_parser.y"
4288      {
4289    if (conf_parser_ctx.pass == 2)
4290      block_state.modes.value |= UMODE_FARCONNECT;
4291   }
4292      break;
4293  
4294 <  case 189:
4294 >  case 191:
4295   /* Line 1787 of yacc.c  */
4296 < #line 1221 "conf_parser.y"
4296 > #line 1234 "conf_parser.y"
4297      {
4298    if (conf_parser_ctx.pass == 2)
4299      block_state.port.value = 0;
4300   }
4301      break;
4302  
4303 <  case 193:
4303 >  case 195:
4304   /* Line 1787 of yacc.c  */
4305 < #line 1228 "conf_parser.y"
4305 > #line 1241 "conf_parser.y"
4306      {
4307    if (conf_parser_ctx.pass == 2)
4308      block_state.port.value |= OPER_FLAG_KILL_REMOTE;
4309   }
4310      break;
4311  
4312 <  case 194:
4312 >  case 196:
4313   /* Line 1787 of yacc.c  */
4314 < #line 1232 "conf_parser.y"
4314 > #line 1245 "conf_parser.y"
4315      {
4316    if (conf_parser_ctx.pass == 2)
4317      block_state.port.value |= OPER_FLAG_KILL;
4318   }
4319      break;
4320  
4321 <  case 195:
4321 >  case 197:
4322   /* Line 1787 of yacc.c  */
4323 < #line 1236 "conf_parser.y"
4323 > #line 1249 "conf_parser.y"
4324      {
4325    if (conf_parser_ctx.pass == 2)
4326      block_state.port.value |= OPER_FLAG_CONNECT_REMOTE;
4327   }
4328      break;
4329  
4330 <  case 196:
4330 >  case 198:
4331   /* Line 1787 of yacc.c  */
4332 < #line 1240 "conf_parser.y"
4332 > #line 1253 "conf_parser.y"
4333      {
4334    if (conf_parser_ctx.pass == 2)
4335      block_state.port.value |= OPER_FLAG_CONNECT;
4336   }
4337      break;
4338  
4339 <  case 197:
4339 >  case 199:
4340   /* Line 1787 of yacc.c  */
4341 < #line 1244 "conf_parser.y"
4341 > #line 1257 "conf_parser.y"
4342      {
4343    if (conf_parser_ctx.pass == 2)
4344      block_state.port.value |= OPER_FLAG_SQUIT_REMOTE;
4345   }
4346      break;
4347  
4348 <  case 198:
4348 >  case 200:
4349   /* Line 1787 of yacc.c  */
4350 < #line 1248 "conf_parser.y"
4350 > #line 1261 "conf_parser.y"
4351      {
4352    if (conf_parser_ctx.pass == 2)
4353      block_state.port.value |= OPER_FLAG_SQUIT;
4354   }
4355      break;
4356  
4357 <  case 199:
4357 >  case 201:
4358   /* Line 1787 of yacc.c  */
4359 < #line 1252 "conf_parser.y"
4359 > #line 1265 "conf_parser.y"
4360      {
4361    if (conf_parser_ctx.pass == 2)
4362      block_state.port.value |= OPER_FLAG_K;
4363   }
4364      break;
4365  
4366 <  case 200:
4366 >  case 202:
4367   /* Line 1787 of yacc.c  */
4368 < #line 1256 "conf_parser.y"
4368 > #line 1269 "conf_parser.y"
4369      {
4370    if (conf_parser_ctx.pass == 2)
4371      block_state.port.value |= OPER_FLAG_UNKLINE;
4372   }
4373      break;
4374  
4375 <  case 201:
4375 >  case 203:
4376   /* Line 1787 of yacc.c  */
4377 < #line 1260 "conf_parser.y"
4377 > #line 1273 "conf_parser.y"
4378      {
4379    if (conf_parser_ctx.pass == 2)
4380      block_state.port.value |= OPER_FLAG_DLINE;
4381   }
4382      break;
4383  
4384 <  case 202:
4384 >  case 204:
4385   /* Line 1787 of yacc.c  */
4386 < #line 1264 "conf_parser.y"
4386 > #line 1277 "conf_parser.y"
4387      {
4388    if (conf_parser_ctx.pass == 2)
4389      block_state.port.value |= OPER_FLAG_UNDLINE;
4390   }
4391      break;
4392  
4393 <  case 203:
4393 >  case 205:
4394   /* Line 1787 of yacc.c  */
4395 < #line 1268 "conf_parser.y"
4395 > #line 1281 "conf_parser.y"
4396      {
4397    if (conf_parser_ctx.pass == 2)
4398      block_state.port.value |= OPER_FLAG_X;
4399   }
4400      break;
4401  
4402 <  case 204:
4402 >  case 206:
4403   /* Line 1787 of yacc.c  */
4404 < #line 1272 "conf_parser.y"
4404 > #line 1285 "conf_parser.y"
4405      {
4406    if (conf_parser_ctx.pass == 2)
4407      block_state.port.value |= OPER_FLAG_GLINE;
4408   }
4409      break;
4410  
4411 <  case 205:
4411 >  case 207:
4412   /* Line 1787 of yacc.c  */
4413 < #line 1276 "conf_parser.y"
4413 > #line 1289 "conf_parser.y"
4414      {
4415    if (conf_parser_ctx.pass == 2)
4416      block_state.port.value |= OPER_FLAG_DIE;
4417   }
4418      break;
4419  
4420 <  case 206:
4420 >  case 208:
4421   /* Line 1787 of yacc.c  */
4422 < #line 1280 "conf_parser.y"
4422 > #line 1293 "conf_parser.y"
4423      {
4424    if (conf_parser_ctx.pass == 2)
4425      block_state.port.value |= OPER_FLAG_RESTART;
4426   }
4427      break;
4428  
4429 <  case 207:
4429 >  case 209:
4430   /* Line 1787 of yacc.c  */
4431 < #line 1284 "conf_parser.y"
4431 > #line 1297 "conf_parser.y"
4432      {
4433    if (conf_parser_ctx.pass == 2)
4434      block_state.port.value |= OPER_FLAG_REHASH;
4435   }
4436      break;
4437  
4438 <  case 208:
4438 >  case 210:
4439   /* Line 1787 of yacc.c  */
4440 < #line 1288 "conf_parser.y"
4440 > #line 1301 "conf_parser.y"
4441      {
4442    if (conf_parser_ctx.pass == 2)
4443      block_state.port.value |= OPER_FLAG_ADMIN;
4444   }
4445      break;
4446  
4447 <  case 209:
4447 >  case 211:
4448   /* Line 1787 of yacc.c  */
4449 < #line 1292 "conf_parser.y"
4449 > #line 1305 "conf_parser.y"
4450      {
4451    if (conf_parser_ctx.pass == 2)
4452      block_state.port.value |= OPER_FLAG_OPERWALL;
4453   }
4454      break;
4455  
4456 <  case 210:
4456 >  case 212:
4457   /* Line 1787 of yacc.c  */
4458 < #line 1296 "conf_parser.y"
4458 > #line 1309 "conf_parser.y"
4459      {
4460    if (conf_parser_ctx.pass == 2)
4461      block_state.port.value |= OPER_FLAG_GLOBOPS;
4462   }
4463      break;
4464  
4465 <  case 211:
4465 >  case 213:
4466   /* Line 1787 of yacc.c  */
4467 < #line 1300 "conf_parser.y"
4467 > #line 1313 "conf_parser.y"
4468      {
4469    if (conf_parser_ctx.pass == 2)
4470      block_state.port.value |= OPER_FLAG_WALLOPS;
4471   }
4472      break;
4473  
4474 <  case 212:
4474 >  case 214:
4475   /* Line 1787 of yacc.c  */
4476 < #line 1304 "conf_parser.y"
4476 > #line 1317 "conf_parser.y"
4477      {
4478    if (conf_parser_ctx.pass == 2)
4479      block_state.port.value |= OPER_FLAG_LOCOPS;
4480   }
4481      break;
4482  
4483 <  case 213:
4483 >  case 215:
4484   /* Line 1787 of yacc.c  */
4485 < #line 1308 "conf_parser.y"
4485 > #line 1321 "conf_parser.y"
4486      {
4487    if (conf_parser_ctx.pass == 2)
4488      block_state.port.value |= OPER_FLAG_REMOTEBAN;
4489   }
4490      break;
4491  
4492 <  case 214:
4492 >  case 216:
4493   /* Line 1787 of yacc.c  */
4494 < #line 1312 "conf_parser.y"
4494 > #line 1325 "conf_parser.y"
4495      {
4496    if (conf_parser_ctx.pass == 2)
4497      block_state.port.value |= OPER_FLAG_SET;
4498   }
4499      break;
4500  
4501 <  case 215:
4501 >  case 217:
4502   /* Line 1787 of yacc.c  */
4503 < #line 1316 "conf_parser.y"
4503 > #line 1329 "conf_parser.y"
4504      {
4505    if (conf_parser_ctx.pass == 2)
4506      block_state.port.value |= OPER_FLAG_MODULE;
4507   }
4508      break;
4509  
4510 <  case 216:
4510 >  case 218:
4511   /* Line 1787 of yacc.c  */
4512 < #line 1326 "conf_parser.y"
4512 > #line 1339 "conf_parser.y"
4513      {
4514    if (conf_parser_ctx.pass != 1)
4515      break;
# Line 4503 | Line 4524 | yyreduce:
4524   }
4525      break;
4526  
4527 <  case 217:
4527 >  case 219:
4528   /* Line 1787 of yacc.c  */
4529 < #line 1338 "conf_parser.y"
4529 > #line 1351 "conf_parser.y"
4530      {
4531    struct ClassItem *class = NULL;
4532  
# Line 4555 | Line 4576 | yyreduce:
4576   }
4577      break;
4578  
4579 <  case 237:
4579 >  case 239:
4580   /* Line 1787 of yacc.c  */
4581 < #line 1404 "conf_parser.y"
4581 > #line 1417 "conf_parser.y"
4582      {
4583    if (conf_parser_ctx.pass == 1)
4584      strlcpy(block_state.class.buf, yylval.string, sizeof(block_state.class.buf));
4585   }
4586      break;
4587  
4588 <  case 238:
4588 >  case 240:
4589   /* Line 1787 of yacc.c  */
4590 < #line 1410 "conf_parser.y"
4590 > #line 1423 "conf_parser.y"
4591      {
4592    if (conf_parser_ctx.pass == 1)
4593      block_state.ping_freq.value = (yyvsp[(3) - (4)].number);
4594   }
4595      break;
4596  
4597 <  case 239:
4597 >  case 241:
4598   /* Line 1787 of yacc.c  */
4599 < #line 1416 "conf_parser.y"
4599 > #line 1429 "conf_parser.y"
4600      {
4601    if (conf_parser_ctx.pass == 1)
4602      block_state.max_perip.value = (yyvsp[(3) - (4)].number);
4603   }
4604      break;
4605  
4606 <  case 240:
4606 >  case 242:
4607   /* Line 1787 of yacc.c  */
4608 < #line 1422 "conf_parser.y"
4608 > #line 1435 "conf_parser.y"
4609      {
4610    if (conf_parser_ctx.pass == 1)
4611      block_state.con_freq.value = (yyvsp[(3) - (4)].number);
4612   }
4613      break;
4614  
4615 <  case 241:
4615 >  case 243:
4616   /* Line 1787 of yacc.c  */
4617 < #line 1428 "conf_parser.y"
4617 > #line 1441 "conf_parser.y"
4618      {
4619    if (conf_parser_ctx.pass == 1)
4620      block_state.max_total.value = (yyvsp[(3) - (4)].number);
4621   }
4622      break;
4623  
4624 <  case 242:
4624 >  case 244:
4625   /* Line 1787 of yacc.c  */
4626 < #line 1434 "conf_parser.y"
4626 > #line 1447 "conf_parser.y"
4627      {
4628    if (conf_parser_ctx.pass == 1)
4629      block_state.max_global.value = (yyvsp[(3) - (4)].number);
4630   }
4631      break;
4632  
4633 <  case 243:
4633 >  case 245:
4634   /* Line 1787 of yacc.c  */
4635 < #line 1440 "conf_parser.y"
4635 > #line 1453 "conf_parser.y"
4636      {
4637    if (conf_parser_ctx.pass == 1)
4638      block_state.max_local.value = (yyvsp[(3) - (4)].number);
4639   }
4640      break;
4641  
4642 <  case 244:
4642 >  case 246:
4643   /* Line 1787 of yacc.c  */
4644 < #line 1446 "conf_parser.y"
4644 > #line 1459 "conf_parser.y"
4645      {
4646    if (conf_parser_ctx.pass == 1)
4647      block_state.max_ident.value = (yyvsp[(3) - (4)].number);
4648   }
4649      break;
4650  
4651 <  case 245:
4651 >  case 247:
4652   /* Line 1787 of yacc.c  */
4653 < #line 1452 "conf_parser.y"
4653 > #line 1465 "conf_parser.y"
4654      {
4655    if (conf_parser_ctx.pass == 1)
4656      block_state.max_sendq.value = (yyvsp[(3) - (4)].number);
4657   }
4658      break;
4659  
4660 <  case 246:
4660 >  case 248:
4661   /* Line 1787 of yacc.c  */
4662 < #line 1458 "conf_parser.y"
4662 > #line 1471 "conf_parser.y"
4663      {
4664    if (conf_parser_ctx.pass == 1)
4665      if ((yyvsp[(3) - (4)].number) >= CLIENT_FLOOD_MIN && (yyvsp[(3) - (4)].number) <= CLIENT_FLOOD_MAX)
# Line 4646 | Line 4667 | yyreduce:
4667   }
4668      break;
4669  
4670 <  case 247:
4670 >  case 249:
4671   /* Line 1787 of yacc.c  */
4672 < #line 1465 "conf_parser.y"
4672 > #line 1478 "conf_parser.y"
4673      {
4674    if (conf_parser_ctx.pass == 1)
4675      block_state.cidr_bitlen_ipv4.value = (yyvsp[(3) - (4)].number) > 32 ? 32 : (yyvsp[(3) - (4)].number);
4676   }
4677      break;
4678  
4679 <  case 248:
4679 >  case 250:
4680   /* Line 1787 of yacc.c  */
4681 < #line 1471 "conf_parser.y"
4681 > #line 1484 "conf_parser.y"
4682      {
4683    if (conf_parser_ctx.pass == 1)
4684      block_state.cidr_bitlen_ipv6.value = (yyvsp[(3) - (4)].number) > 128 ? 128 : (yyvsp[(3) - (4)].number);
4685   }
4686      break;
4687  
4688 <  case 249:
4688 >  case 251:
4689   /* Line 1787 of yacc.c  */
4690 < #line 1477 "conf_parser.y"
4690 > #line 1490 "conf_parser.y"
4691      {
4692    if (conf_parser_ctx.pass == 1)
4693      block_state.number_per_cidr.value = (yyvsp[(3) - (4)].number);
4694   }
4695      break;
4696  
4697 <  case 250:
4697 >  case 252:
4698   /* Line 1787 of yacc.c  */
4699 < #line 1483 "conf_parser.y"
4699 > #line 1496 "conf_parser.y"
4700      {
4701    if (conf_parser_ctx.pass != 1)
4702      break;
# Line 4685 | Line 4706 | yyreduce:
4706   }
4707      break;
4708  
4709 <  case 251:
4709 >  case 253:
4710   /* Line 1787 of yacc.c  */
4711 < #line 1492 "conf_parser.y"
4711 > #line 1505 "conf_parser.y"
4712      {
4713    if (conf_parser_ctx.pass != 1)
4714      break;
# Line 4697 | Line 4718 | yyreduce:
4718   }
4719      break;
4720  
4721 <  case 252:
4721 >  case 254:
4722   /* Line 1787 of yacc.c  */
4723 < #line 1501 "conf_parser.y"
4723 > #line 1514 "conf_parser.y"
4724      {
4725    if (conf_parser_ctx.pass == 1)
4726      block_state.flags.value &= CLASS_FLAGS_FAKE_IDLE;
4727   }
4728      break;
4729  
4730 <  case 256:
4730 >  case 258:
4731   /* Line 1787 of yacc.c  */
4732 < #line 1508 "conf_parser.y"
4732 > #line 1521 "conf_parser.y"
4733      {
4734    if (conf_parser_ctx.pass == 1)
4735      block_state.flags.value |= CLASS_FLAGS_RANDOM_IDLE;
4736   }
4737      break;
4738  
4739 <  case 257:
4739 >  case 259:
4740   /* Line 1787 of yacc.c  */
4741 < #line 1512 "conf_parser.y"
4741 > #line 1525 "conf_parser.y"
4742      {
4743    if (conf_parser_ctx.pass == 1)
4744      block_state.flags.value |= CLASS_FLAGS_HIDE_IDLE_FROM_OPERS;
4745   }
4746      break;
4747  
4748 <  case 258:
4748 >  case 260:
4749   /* Line 1787 of yacc.c  */
4750 < #line 1522 "conf_parser.y"
4750 > #line 1535 "conf_parser.y"
4751      {
4752    if (conf_parser_ctx.pass == 2)
4753      reset_block_state();
4754   }
4755      break;
4756  
4757 <  case 260:
4757 >  case 262:
4758   /* Line 1787 of yacc.c  */
4759 < #line 1528 "conf_parser.y"
4759 > #line 1541 "conf_parser.y"
4760      {
4761    block_state.flags.value = 0;
4762   }
4763      break;
4764  
4765 <  case 264:
4765 >  case 266:
4766   /* Line 1787 of yacc.c  */
4767 < #line 1534 "conf_parser.y"
4767 > #line 1547 "conf_parser.y"
4768      {
4769    if (conf_parser_ctx.pass == 2)
4770      block_state.flags.value |= LISTENER_SSL;
4771   }
4772      break;
4773  
4774 <  case 265:
4774 >  case 267:
4775   /* Line 1787 of yacc.c  */
4776 < #line 1538 "conf_parser.y"
4776 > #line 1551 "conf_parser.y"
4777      {
4778    if (conf_parser_ctx.pass == 2)
4779      block_state.flags.value |= LISTENER_HIDDEN;
4780   }
4781      break;
4782  
4783 <  case 266:
4783 >  case 268:
4784   /* Line 1787 of yacc.c  */
4785 < #line 1542 "conf_parser.y"
4785 > #line 1555 "conf_parser.y"
4786      {
4787    if (conf_parser_ctx.pass == 2)
4788     block_state.flags.value |= LISTENER_SERVER;
4789   }
4790      break;
4791  
4792 <  case 274:
4792 >  case 276:
4793   /* Line 1787 of yacc.c  */
4794 < #line 1550 "conf_parser.y"
4794 > #line 1563 "conf_parser.y"
4795      { block_state.flags.value = 0; }
4796      break;
4797  
4798 <  case 278:
4798 >  case 280:
4799   /* Line 1787 of yacc.c  */
4800 < #line 1555 "conf_parser.y"
4800 > #line 1568 "conf_parser.y"
4801      {
4802    if (conf_parser_ctx.pass == 2)
4803    {
# Line 4793 | Line 4814 | yyreduce:
4814   }
4815      break;
4816  
4817 <  case 279:
4817 >  case 281:
4818   /* Line 1787 of yacc.c  */
4819 < #line 1569 "conf_parser.y"
4819 > #line 1582 "conf_parser.y"
4820      {
4821    if (conf_parser_ctx.pass == 2)
4822    {
# Line 4816 | Line 4837 | yyreduce:
4837   }
4838      break;
4839  
4840 <  case 280:
4840 >  case 282:
4841   /* Line 1787 of yacc.c  */
4842 < #line 1589 "conf_parser.y"
4842 > #line 1602 "conf_parser.y"
4843      {
4844    if (conf_parser_ctx.pass == 2)
4845      strlcpy(block_state.addr.buf, yylval.string, sizeof(block_state.addr.buf));
4846   }
4847      break;
4848  
4849 <  case 281:
4849 >  case 283:
4850   /* Line 1787 of yacc.c  */
4851 < #line 1595 "conf_parser.y"
4851 > #line 1608 "conf_parser.y"
4852      {
4853    if (conf_parser_ctx.pass == 2)
4854      strlcpy(block_state.addr.buf, yylval.string, sizeof(block_state.addr.buf));
4855   }
4856      break;
4857  
4858 <  case 282:
4858 >  case 284:
4859   /* Line 1787 of yacc.c  */
4860 < #line 1604 "conf_parser.y"
4860 > #line 1617 "conf_parser.y"
4861      {
4862    if (conf_parser_ctx.pass == 2)
4863      reset_block_state();
4864   }
4865      break;
4866  
4867 <  case 283:
4867 >  case 285:
4868   /* Line 1787 of yacc.c  */
4869 < #line 1608 "conf_parser.y"
4869 > #line 1621 "conf_parser.y"
4870      {
4871    dlink_node *ptr = NULL;
4872  
# Line 4884 | Line 4905 | yyreduce:
4905   }
4906      break;
4907  
4908 <  case 295:
4908 >  case 297:
4909   /* Line 1787 of yacc.c  */
4910 < #line 1651 "conf_parser.y"
4910 > #line 1664 "conf_parser.y"
4911      {
4912    if (conf_parser_ctx.pass == 2)
4913      dlinkAdd(xstrdup(yylval.string), make_dlink_node(), &block_state.mask.list);
4914   }
4915      break;
4916  
4917 <  case 296:
4917 >  case 298:
4918   /* Line 1787 of yacc.c  */
4919 < #line 1657 "conf_parser.y"
4919 > #line 1670 "conf_parser.y"
4920      {
4921    if (conf_parser_ctx.pass == 2)
4922      strlcpy(block_state.rpass.buf, yylval.string, sizeof(block_state.rpass.buf));
4923   }
4924      break;
4925  
4926 <  case 297:
4926 >  case 299:
4927   /* Line 1787 of yacc.c  */
4928 < #line 1663 "conf_parser.y"
4928 > #line 1676 "conf_parser.y"
4929      {
4930    if (conf_parser_ctx.pass == 2)
4931      strlcpy(block_state.class.buf, yylval.string, sizeof(block_state.class.buf));
4932   }
4933      break;
4934  
4935 <  case 298:
4935 >  case 300:
4936   /* Line 1787 of yacc.c  */
4937 < #line 1669 "conf_parser.y"
4937 > #line 1682 "conf_parser.y"
4938      {
4939    if (conf_parser_ctx.pass == 2)
4940    {
# Line 4925 | Line 4946 | yyreduce:
4946   }
4947      break;
4948  
4949 <  case 299:
4949 >  case 301:
4950   /* Line 1787 of yacc.c  */
4951 < #line 1680 "conf_parser.y"
4951 > #line 1693 "conf_parser.y"
4952      {
4953    if (conf_parser_ctx.pass == 2)
4954      block_state.flags.value &= (CONF_FLAGS_ENCRYPTED | CONF_FLAGS_SPOOF_IP);
4955   }
4956      break;
4957  
4958 <  case 303:
4958 >  case 305:
4959   /* Line 1787 of yacc.c  */
4960 < #line 1687 "conf_parser.y"
4960 > #line 1700 "conf_parser.y"
4961      {
4962    if (conf_parser_ctx.pass == 2)
4963      block_state.flags.value |= CONF_FLAGS_SPOOF_NOTICE;
4964   }
4965      break;
4966  
4967 <  case 304:
4967 >  case 306:
4968   /* Line 1787 of yacc.c  */
4969 < #line 1691 "conf_parser.y"
4969 > #line 1704 "conf_parser.y"
4970      {
4971    if (conf_parser_ctx.pass == 2)
4972      block_state.flags.value |= CONF_FLAGS_NOLIMIT;
4973   }
4974      break;
4975  
4976 <  case 305:
4976 >  case 307:
4977   /* Line 1787 of yacc.c  */
4978 < #line 1695 "conf_parser.y"
4978 > #line 1708 "conf_parser.y"
4979      {
4980    if (conf_parser_ctx.pass == 2)
4981      block_state.flags.value |= CONF_FLAGS_EXEMPTKLINE;
4982   }
4983      break;
4984  
4985 <  case 306:
4985 >  case 308:
4986   /* Line 1787 of yacc.c  */
4987 < #line 1699 "conf_parser.y"
4987 > #line 1712 "conf_parser.y"
4988      {
4989    if (conf_parser_ctx.pass == 2)
4990      block_state.flags.value |= CONF_FLAGS_NEED_IDENTD;
4991   }
4992      break;
4993  
4994 <  case 307:
4994 >  case 309:
4995   /* Line 1787 of yacc.c  */
4996 < #line 1703 "conf_parser.y"
4996 > #line 1716 "conf_parser.y"
4997      {
4998    if (conf_parser_ctx.pass == 2)
4999      block_state.flags.value |= CONF_FLAGS_CAN_FLOOD;
5000   }
5001      break;
5002  
5003 <  case 308:
5003 >  case 310:
5004   /* Line 1787 of yacc.c  */
5005 < #line 1707 "conf_parser.y"
5005 > #line 1720 "conf_parser.y"
5006      {
5007    if (conf_parser_ctx.pass == 2)
5008      block_state.flags.value |= CONF_FLAGS_NO_TILDE;
5009   }
5010      break;
5011  
5012 <  case 309:
5012 >  case 311:
5013   /* Line 1787 of yacc.c  */
5014 < #line 1711 "conf_parser.y"
5014 > #line 1724 "conf_parser.y"
5015      {
5016    if (conf_parser_ctx.pass == 2)
5017      block_state.flags.value |= CONF_FLAGS_EXEMPTGLINE;
5018   }
5019      break;
5020  
5021 <  case 310:
5021 >  case 312:
5022   /* Line 1787 of yacc.c  */
5023 < #line 1715 "conf_parser.y"
5023 > #line 1728 "conf_parser.y"
5024      {
5025    if (conf_parser_ctx.pass == 2)
5026      block_state.flags.value |= CONF_FLAGS_EXEMPTRESV;
5027   }
5028      break;
5029  
5030 <  case 311:
5030 >  case 313:
5031   /* Line 1787 of yacc.c  */
5032 < #line 1719 "conf_parser.y"
5032 > #line 1732 "conf_parser.y"
5033      {
5034    if (conf_parser_ctx.pass == 2)
5035      block_state.flags.value |= CONF_FLAGS_WEBIRC;
5036   }
5037      break;
5038  
5039 <  case 312:
5039 >  case 314:
5040   /* Line 1787 of yacc.c  */
5041 < #line 1723 "conf_parser.y"
5041 > #line 1736 "conf_parser.y"
5042      {
5043    if (conf_parser_ctx.pass == 2)
5044      block_state.flags.value |= CONF_FLAGS_NEED_PASSWORD;
5045   }
5046      break;
5047  
5048 <  case 313:
5048 >  case 315:
5049   /* Line 1787 of yacc.c  */
5050 < #line 1729 "conf_parser.y"
5050 > #line 1742 "conf_parser.y"
5051      {
5052    if (conf_parser_ctx.pass != 2)
5053      break;
# Line 5041 | Line 5062 | yyreduce:
5062   }
5063      break;
5064  
5065 <  case 314:
5065 >  case 316:
5066   /* Line 1787 of yacc.c  */
5067 < #line 1743 "conf_parser.y"
5067 > #line 1756 "conf_parser.y"
5068      {
5069    if (conf_parser_ctx.pass != 2)
5070      break;
# Line 5053 | Line 5074 | yyreduce:
5074   }
5075      break;
5076  
5077 <  case 315:
5077 >  case 317:
5078   /* Line 1787 of yacc.c  */
5079 < #line 1752 "conf_parser.y"
5079 > #line 1765 "conf_parser.y"
5080      {
5081    if (conf_parser_ctx.pass != 2)
5082      break;
# Line 5065 | Line 5086 | yyreduce:
5086   }
5087      break;
5088  
5089 <  case 316:
5089 >  case 318:
5090   /* Line 1787 of yacc.c  */
5091 < #line 1765 "conf_parser.y"
5091 > #line 1778 "conf_parser.y"
5092      {
5093    if (conf_parser_ctx.pass != 2)
5094      break;
# Line 5077 | Line 5098 | yyreduce:
5098   }
5099      break;
5100  
5101 <  case 317:
5101 >  case 319:
5102   /* Line 1787 of yacc.c  */
5103 < #line 1772 "conf_parser.y"
5103 > #line 1785 "conf_parser.y"
5104      {
5105    if (conf_parser_ctx.pass != 2)
5106      break;
# Line 5088 | Line 5109 | yyreduce:
5109   }
5110      break;
5111  
5112 <  case 324:
5112 >  case 326:
5113   /* Line 1787 of yacc.c  */
5114 < #line 1783 "conf_parser.y"
5114 > #line 1796 "conf_parser.y"
5115      {
5116    if (conf_parser_ctx.pass == 2)
5117      strlcpy(block_state.name.buf, yylval.string, sizeof(block_state.name.buf));
5118   }
5119      break;
5120  
5121 <  case 325:
5121 >  case 327:
5122   /* Line 1787 of yacc.c  */
5123 < #line 1789 "conf_parser.y"
5123 > #line 1802 "conf_parser.y"
5124      {
5125    if (conf_parser_ctx.pass == 2)
5126      strlcpy(block_state.rpass.buf, yylval.string, sizeof(block_state.rpass.buf));
5127   }
5128      break;
5129  
5130 <  case 326:
5130 >  case 328:
5131   /* Line 1787 of yacc.c  */
5132 < #line 1795 "conf_parser.y"
5132 > #line 1808 "conf_parser.y"
5133      {
5134    if (conf_parser_ctx.pass == 2)
5135      dlinkAdd(xstrdup(yylval.string), make_dlink_node(), &block_state.mask.list);
5136   }
5137      break;
5138  
5139 <  case 332:
5139 >  case 334:
5140   /* Line 1787 of yacc.c  */
5141 < #line 1810 "conf_parser.y"
5141 > #line 1823 "conf_parser.y"
5142      {
5143    if (conf_parser_ctx.pass != 2)
5144      break;
# Line 5130 | Line 5151 | yyreduce:
5151   }
5152      break;
5153  
5154 <  case 333:
5154 >  case 335:
5155   /* Line 1787 of yacc.c  */
5156 < #line 1825 "conf_parser.y"
5156 > #line 1838 "conf_parser.y"
5157      {
5158    if (conf_parser_ctx.pass != 2)
5159      break;
# Line 5146 | Line 5167 | yyreduce:
5167   }
5168      break;
5169  
5170 <  case 334:
5170 >  case 336:
5171   /* Line 1787 of yacc.c  */
5172 < #line 1836 "conf_parser.y"
5172 > #line 1849 "conf_parser.y"
5173      {
5174    struct MaskItem *conf = NULL;
5175  
# Line 5163 | Line 5184 | yyreduce:
5184   }
5185      break;
5186  
5187 <  case 341:
5187 >  case 343:
5188   /* Line 1787 of yacc.c  */
5189 < #line 1853 "conf_parser.y"
5189 > #line 1866 "conf_parser.y"
5190      {
5191    if (conf_parser_ctx.pass == 2)
5192      strlcpy(block_state.name.buf, yylval.string, sizeof(block_state.name.buf));
5193   }
5194      break;
5195  
5196 <  case 342:
5196 >  case 344:
5197   /* Line 1787 of yacc.c  */
5198 < #line 1859 "conf_parser.y"
5198 > #line 1872 "conf_parser.y"
5199      {
5200    if (conf_parser_ctx.pass == 2)
5201    {
# Line 5194 | Line 5215 | yyreduce:
5215   }
5216      break;
5217  
5218 <  case 343:
5218 >  case 345:
5219   /* Line 1787 of yacc.c  */
5220 < #line 1878 "conf_parser.y"
5220 > #line 1891 "conf_parser.y"
5221      {
5222    if (conf_parser_ctx.pass == 2)
5223      block_state.flags.value = 0;
5224   }
5225      break;
5226  
5227 <  case 347:
5227 >  case 349:
5228   /* Line 1787 of yacc.c  */
5229 < #line 1885 "conf_parser.y"
5229 > #line 1898 "conf_parser.y"
5230      {
5231    if (conf_parser_ctx.pass == 2)
5232      block_state.flags.value |= SHARED_KLINE;
5233   }
5234      break;
5235  
5236 <  case 348:
5236 >  case 350:
5237   /* Line 1787 of yacc.c  */
5238 < #line 1889 "conf_parser.y"
5238 > #line 1902 "conf_parser.y"
5239      {
5240    if (conf_parser_ctx.pass == 2)
5241      block_state.flags.value |= SHARED_UNKLINE;
5242   }
5243      break;
5244  
5245 <  case 349:
5245 >  case 351:
5246   /* Line 1787 of yacc.c  */
5247 < #line 1893 "conf_parser.y"
5247 > #line 1906 "conf_parser.y"
5248      {
5249    if (conf_parser_ctx.pass == 2)
5250      block_state.flags.value |= SHARED_DLINE;
5251   }
5252      break;
5253  
5254 <  case 350:
5254 >  case 352:
5255   /* Line 1787 of yacc.c  */
5256 < #line 1897 "conf_parser.y"
5256 > #line 1910 "conf_parser.y"
5257      {
5258    if (conf_parser_ctx.pass == 2)
5259      block_state.flags.value |= SHARED_UNDLINE;
5260   }
5261      break;
5262  
5263 <  case 351:
5263 >  case 353:
5264   /* Line 1787 of yacc.c  */
5265 < #line 1901 "conf_parser.y"
5265 > #line 1914 "conf_parser.y"
5266      {
5267    if (conf_parser_ctx.pass == 2)
5268      block_state.flags.value |= SHARED_XLINE;
5269   }
5270      break;
5271  
5272 <  case 352:
5272 >  case 354:
5273   /* Line 1787 of yacc.c  */
5274 < #line 1905 "conf_parser.y"
5274 > #line 1918 "conf_parser.y"
5275      {
5276    if (conf_parser_ctx.pass == 2)
5277      block_state.flags.value |= SHARED_UNXLINE;
5278   }
5279      break;
5280  
5281 <  case 353:
5281 >  case 355:
5282   /* Line 1787 of yacc.c  */
5283 < #line 1909 "conf_parser.y"
5283 > #line 1922 "conf_parser.y"
5284      {
5285    if (conf_parser_ctx.pass == 2)
5286      block_state.flags.value |= SHARED_RESV;
5287   }
5288      break;
5289  
5290 <  case 354:
5290 >  case 356:
5291   /* Line 1787 of yacc.c  */
5292 < #line 1913 "conf_parser.y"
5292 > #line 1926 "conf_parser.y"
5293      {
5294    if (conf_parser_ctx.pass == 2)
5295      block_state.flags.value |= SHARED_UNRESV;
5296   }
5297      break;
5298  
5299 <  case 355:
5299 >  case 357:
5300   /* Line 1787 of yacc.c  */
5301 < #line 1917 "conf_parser.y"
5301 > #line 1930 "conf_parser.y"
5302      {
5303    if (conf_parser_ctx.pass == 2)
5304      block_state.flags.value |= SHARED_LOCOPS;
5305   }
5306      break;
5307  
5308 <  case 356:
5308 >  case 358:
5309   /* Line 1787 of yacc.c  */
5310 < #line 1921 "conf_parser.y"
5310 > #line 1934 "conf_parser.y"
5311      {
5312    if (conf_parser_ctx.pass == 2)
5313      block_state.flags.value = SHARED_ALL;
5314   }
5315      break;
5316  
5317 <  case 357:
5317 >  case 359:
5318   /* Line 1787 of yacc.c  */
5319 < #line 1930 "conf_parser.y"
5319 > #line 1943 "conf_parser.y"
5320      {
5321    if (conf_parser_ctx.pass != 2)
5322      break;
# Line 5307 | Line 5328 | yyreduce:
5328   }
5329      break;
5330  
5331 <  case 358:
5331 >  case 360:
5332   /* Line 1787 of yacc.c  */
5333 < #line 1939 "conf_parser.y"
5333 > #line 1952 "conf_parser.y"
5334      {
5335    struct MaskItem *conf = NULL;
5336  
# Line 5322 | Line 5343 | yyreduce:
5343   }
5344      break;
5345  
5346 <  case 364:
5346 >  case 366:
5347   /* Line 1787 of yacc.c  */
5348 < #line 1954 "conf_parser.y"
5348 > #line 1967 "conf_parser.y"
5349      {
5350    if (conf_parser_ctx.pass == 2)
5351      strlcpy(block_state.name.buf, yylval.string, sizeof(block_state.name.buf));
5352   }
5353      break;
5354  
5355 <  case 365:
5355 >  case 367:
5356   /* Line 1787 of yacc.c  */
5357 < #line 1960 "conf_parser.y"
5357 > #line 1973 "conf_parser.y"
5358      {
5359    if (conf_parser_ctx.pass == 2)
5360      block_state.flags.value = 0;
5361   }
5362      break;
5363  
5364 <  case 369:
5364 >  case 371:
5365   /* Line 1787 of yacc.c  */
5366 < #line 1967 "conf_parser.y"
5366 > #line 1980 "conf_parser.y"
5367      {
5368    if (conf_parser_ctx.pass == 2)
5369      block_state.flags.value |= SHARED_KLINE;
5370   }
5371      break;
5372  
5373 <  case 370:
5373 >  case 372:
5374   /* Line 1787 of yacc.c  */
5375 < #line 1971 "conf_parser.y"
5375 > #line 1984 "conf_parser.y"
5376      {
5377    if (conf_parser_ctx.pass == 2)
5378      block_state.flags.value |= SHARED_UNKLINE;
5379   }
5380      break;
5381  
5382 <  case 371:
5382 >  case 373:
5383   /* Line 1787 of yacc.c  */
5384 < #line 1975 "conf_parser.y"
5384 > #line 1988 "conf_parser.y"
5385      {
5386    if (conf_parser_ctx.pass == 2)
5387      block_state.flags.value |= SHARED_DLINE;
5388   }
5389      break;
5390  
5391 <  case 372:
5391 >  case 374:
5392   /* Line 1787 of yacc.c  */
5393 < #line 1979 "conf_parser.y"
5393 > #line 1992 "conf_parser.y"
5394      {
5395    if (conf_parser_ctx.pass == 2)
5396      block_state.flags.value |= SHARED_UNDLINE;
5397   }
5398      break;
5399  
5400 <  case 373:
5400 >  case 375:
5401   /* Line 1787 of yacc.c  */
5402 < #line 1983 "conf_parser.y"
5402 > #line 1996 "conf_parser.y"
5403      {
5404    if (conf_parser_ctx.pass == 2)
5405      block_state.flags.value |= SHARED_XLINE;
5406   }
5407      break;
5408  
5409 <  case 374:
5409 >  case 376:
5410   /* Line 1787 of yacc.c  */
5411 < #line 1987 "conf_parser.y"
5411 > #line 2000 "conf_parser.y"
5412      {
5413    if (conf_parser_ctx.pass == 2)
5414      block_state.flags.value |= SHARED_UNXLINE;
5415   }
5416      break;
5417  
5418 <  case 375:
5418 >  case 377:
5419   /* Line 1787 of yacc.c  */
5420 < #line 1991 "conf_parser.y"
5420 > #line 2004 "conf_parser.y"
5421      {
5422    if (conf_parser_ctx.pass == 2)
5423      block_state.flags.value |= SHARED_RESV;
5424   }
5425      break;
5426  
5427 <  case 376:
5427 >  case 378:
5428   /* Line 1787 of yacc.c  */
5429 < #line 1995 "conf_parser.y"
5429 > #line 2008 "conf_parser.y"
5430      {
5431    if (conf_parser_ctx.pass == 2)
5432      block_state.flags.value |= SHARED_UNRESV;
5433   }
5434      break;
5435  
5436 <  case 377:
5436 >  case 379:
5437   /* Line 1787 of yacc.c  */
5438 < #line 1999 "conf_parser.y"
5438 > #line 2012 "conf_parser.y"
5439      {
5440    if (conf_parser_ctx.pass == 2)
5441      block_state.flags.value |= SHARED_LOCOPS;
5442   }
5443      break;
5444  
5445 <  case 378:
5445 >  case 380:
5446   /* Line 1787 of yacc.c  */
5447 < #line 2003 "conf_parser.y"
5447 > #line 2016 "conf_parser.y"
5448      {
5449    if (conf_parser_ctx.pass == 2)
5450      block_state.flags.value = SHARED_ALL;
5451   }
5452      break;
5453  
5454 <  case 379:
5454 >  case 381:
5455   /* Line 1787 of yacc.c  */
5456 < #line 2012 "conf_parser.y"
5456 > #line 2025 "conf_parser.y"
5457      {
5458  
5459    if (conf_parser_ctx.pass != 2)
# Line 5443 | Line 5464 | yyreduce:
5464   }
5465      break;
5466  
5467 <  case 380:
5467 >  case 382:
5468   /* Line 1787 of yacc.c  */
5469 < #line 2020 "conf_parser.y"
5469 > #line 2033 "conf_parser.y"
5470      {
5471    struct MaskItem *conf = NULL;
5472    struct addrinfo hints, *res;
# Line 5473 | Line 5494 | yyreduce:
5494    conf->name = xstrdup(block_state.name.buf);
5495    conf->passwd = xstrdup(block_state.rpass.buf);
5496    conf->spasswd = xstrdup(block_state.spass.buf);
5497 +
5498 +  if (block_state.cert.buf[0])
5499 +    conf->certfp = xstrdup(block_state.cert.buf);
5500 +
5501    conf->cipher_list = xstrdup(block_state.ciph.buf);
5502  
5503    dlinkMoveList(&block_state.leaf.list, &conf->leaf_list);
# Line 5504 | Line 5529 | yyreduce:
5529   }
5530      break;
5531  
5532 <  case 397:
5532 >  case 400:
5533   /* Line 1787 of yacc.c  */
5534 < #line 2086 "conf_parser.y"
5534 > #line 2103 "conf_parser.y"
5535      {
5536    if (conf_parser_ctx.pass == 2)
5537      strlcpy(block_state.name.buf, yylval.string, sizeof(block_state.name.buf));
5538   }
5539      break;
5540  
5541 <  case 398:
5541 >  case 401:
5542   /* Line 1787 of yacc.c  */
5543 < #line 2092 "conf_parser.y"
5543 > #line 2109 "conf_parser.y"
5544      {
5545    if (conf_parser_ctx.pass == 2)
5546      strlcpy(block_state.host.buf, yylval.string, sizeof(block_state.host.buf));
5547   }
5548      break;
5549  
5550 <  case 399:
5550 >  case 402:
5551   /* Line 1787 of yacc.c  */
5552 < #line 2098 "conf_parser.y"
5552 > #line 2115 "conf_parser.y"
5553      {
5554    if (conf_parser_ctx.pass == 2)
5555      strlcpy(block_state.bind.buf, yylval.string, sizeof(block_state.bind.buf));
5556   }
5557      break;
5558  
5559 <  case 400:
5559 >  case 403:
5560   /* Line 1787 of yacc.c  */
5561 < #line 2104 "conf_parser.y"
5561 > #line 2121 "conf_parser.y"
5562      {
5563    if (conf_parser_ctx.pass != 2)
5564      break;
# Line 5547 | Line 5572 | yyreduce:
5572   }
5573      break;
5574  
5575 <  case 401:
5575 >  case 404:
5576   /* Line 1787 of yacc.c  */
5577 < #line 2117 "conf_parser.y"
5577 > #line 2134 "conf_parser.y"
5578      {
5579    if (conf_parser_ctx.pass != 2)
5580      break;
# Line 5563 | Line 5588 | yyreduce:
5588   }
5589      break;
5590  
5591 <  case 402:
5591 >  case 405:
5592   /* Line 1787 of yacc.c  */
5593 < #line 2130 "conf_parser.y"
5593 > #line 2147 "conf_parser.y"
5594 >    {
5595 >  if (conf_parser_ctx.pass == 2)
5596 >    if (strlen(yylval.string) == SHA_DIGEST_LENGTH * 2)
5597 >      strlcpy(block_state.cert.buf, yylval.string, sizeof(block_state.cert.buf));
5598 > }
5599 >    break;
5600 >
5601 >  case 406:
5602 > /* Line 1787 of yacc.c  */
5603 > #line 2154 "conf_parser.y"
5604      {
5605    if (conf_parser_ctx.pass == 2)
5606      block_state.port.value = (yyvsp[(3) - (4)].number);
5607   }
5608      break;
5609  
5610 <  case 403:
5610 >  case 407:
5611   /* Line 1787 of yacc.c  */
5612 < #line 2136 "conf_parser.y"
5612 > #line 2160 "conf_parser.y"
5613      {
5614    if (conf_parser_ctx.pass == 2)
5615      block_state.aftype.value = AF_INET;
5616   }
5617      break;
5618  
5619 <  case 404:
5619 >  case 408:
5620   /* Line 1787 of yacc.c  */
5621 < #line 2140 "conf_parser.y"
5621 > #line 2164 "conf_parser.y"
5622      {
5623   #ifdef IPV6
5624    if (conf_parser_ctx.pass == 2)
# Line 5592 | Line 5627 | yyreduce:
5627   }
5628      break;
5629  
5630 <  case 405:
5630 >  case 409:
5631   /* Line 1787 of yacc.c  */
5632 < #line 2148 "conf_parser.y"
5632 > #line 2172 "conf_parser.y"
5633      {
5634    block_state.flags.value &= CONF_FLAGS_ENCRYPTED;
5635   }
5636      break;
5637  
5638 <  case 409:
5638 >  case 413:
5639   /* Line 1787 of yacc.c  */
5640 < #line 2154 "conf_parser.y"
5640 > #line 2178 "conf_parser.y"
5641      {
5642    if (conf_parser_ctx.pass == 2)
5643      block_state.flags.value |= CONF_FLAGS_ALLOW_AUTO_CONN;
5644   }
5645      break;
5646  
5647 <  case 410:
5647 >  case 414:
5648   /* Line 1787 of yacc.c  */
5649 < #line 2158 "conf_parser.y"
5649 > #line 2182 "conf_parser.y"
5650      {
5651    if (conf_parser_ctx.pass == 2)
5652      block_state.flags.value |= CONF_FLAGS_SSL;
5653   }
5654      break;
5655  
5656 <  case 411:
5656 >  case 415:
5657   /* Line 1787 of yacc.c  */
5658 < #line 2164 "conf_parser.y"
5658 > #line 2188 "conf_parser.y"
5659      {
5660    if (conf_parser_ctx.pass == 2)
5661    {
# Line 5632 | Line 5667 | yyreduce:
5667   }
5668      break;
5669  
5670 <  case 412:
5670 >  case 416:
5671   /* Line 1787 of yacc.c  */
5672 < #line 2175 "conf_parser.y"
5672 > #line 2199 "conf_parser.y"
5673      {
5674    if (conf_parser_ctx.pass == 2)
5675      dlinkAdd(xstrdup(yylval.string), make_dlink_node(), &block_state.hub.list);
5676   }
5677      break;
5678  
5679 <  case 413:
5679 >  case 417:
5680   /* Line 1787 of yacc.c  */
5681 < #line 2181 "conf_parser.y"
5681 > #line 2205 "conf_parser.y"
5682      {
5683    if (conf_parser_ctx.pass == 2)
5684      dlinkAdd(xstrdup(yylval.string), make_dlink_node(), &block_state.leaf.list);
5685   }
5686      break;
5687  
5688 <  case 414:
5688 >  case 418:
5689   /* Line 1787 of yacc.c  */
5690 < #line 2187 "conf_parser.y"
5690 > #line 2211 "conf_parser.y"
5691      {
5692    if (conf_parser_ctx.pass == 2)
5693      strlcpy(block_state.class.buf, yylval.string, sizeof(block_state.class.buf));
5694   }
5695      break;
5696  
5697 <  case 415:
5697 >  case 419:
5698   /* Line 1787 of yacc.c  */
5699 < #line 2193 "conf_parser.y"
5699 > #line 2217 "conf_parser.y"
5700      {
5701   #ifdef HAVE_LIBCRYPTO
5702    if (conf_parser_ctx.pass == 2)
# Line 5673 | Line 5708 | yyreduce:
5708   }
5709      break;
5710  
5711 <  case 416:
5711 >  case 420:
5712   /* Line 1787 of yacc.c  */
5713 < #line 2208 "conf_parser.y"
5713 > #line 2232 "conf_parser.y"
5714      {
5715    if (conf_parser_ctx.pass == 2)
5716      reset_block_state();
5717   }
5718      break;
5719  
5720 <  case 417:
5720 >  case 421:
5721   /* Line 1787 of yacc.c  */
5722 < #line 2212 "conf_parser.y"
5722 > #line 2236 "conf_parser.y"
5723      {
5724    struct MaskItem *conf = NULL;
5725  
# Line 5707 | Line 5742 | yyreduce:
5742   }
5743      break;
5744  
5745 <  case 423:
5745 >  case 427:
5746   /* Line 1787 of yacc.c  */
5747 < #line 2237 "conf_parser.y"
5747 > #line 2261 "conf_parser.y"
5748      {
5749  
5750    if (conf_parser_ctx.pass == 2)
# Line 5730 | Line 5765 | yyreduce:
5765   }
5766      break;
5767  
5768 <  case 424:
5768 >  case 428:
5769   /* Line 1787 of yacc.c  */
5770 < #line 2257 "conf_parser.y"
5770 > #line 2281 "conf_parser.y"
5771      {
5772    if (conf_parser_ctx.pass == 2)
5773      strlcpy(block_state.rpass.buf, yylval.string, sizeof(block_state.rpass.buf));
5774   }
5775      break;
5776  
5777 <  case 425:
5777 >  case 429:
5778   /* Line 1787 of yacc.c  */
5779 < #line 2266 "conf_parser.y"
5779 > #line 2290 "conf_parser.y"
5780      {
5781    if (conf_parser_ctx.pass == 2)
5782      reset_block_state();
5783   }
5784      break;
5785  
5786 <  case 426:
5786 >  case 430:
5787   /* Line 1787 of yacc.c  */
5788 < #line 2270 "conf_parser.y"
5788 > #line 2294 "conf_parser.y"
5789      {
5790    struct MaskItem *conf = NULL;
5791  
# Line 5774 | Line 5809 | yyreduce:
5809   }
5810      break;
5811  
5812 <  case 432:
5812 >  case 436:
5813   /* Line 1787 of yacc.c  */
5814 < #line 2296 "conf_parser.y"
5814 > #line 2320 "conf_parser.y"
5815      {
5816    if (conf_parser_ctx.pass == 2)
5817      strlcpy(block_state.addr.buf, yylval.string, sizeof(block_state.addr.buf));
5818   }
5819      break;
5820  
5821 <  case 433:
5821 >  case 437:
5822   /* Line 1787 of yacc.c  */
5823 < #line 2302 "conf_parser.y"
5823 > #line 2326 "conf_parser.y"
5824      {
5825    if (conf_parser_ctx.pass == 2)
5826      strlcpy(block_state.rpass.buf, yylval.string, sizeof(block_state.rpass.buf));
5827   }
5828      break;
5829  
5830 <  case 439:
5830 >  case 443:
5831   /* Line 1787 of yacc.c  */
5832 < #line 2316 "conf_parser.y"
5832 > #line 2340 "conf_parser.y"
5833      {
5834    if (conf_parser_ctx.pass == 2)
5835    {
# Line 5809 | Line 5844 | yyreduce:
5844   }
5845      break;
5846  
5847 <  case 440:
5847 >  case 444:
5848   /* Line 1787 of yacc.c  */
5849 < #line 2333 "conf_parser.y"
5849 > #line 2357 "conf_parser.y"
5850      {
5851    if (conf_parser_ctx.pass == 2)
5852      reset_block_state();
5853   }
5854      break;
5855  
5856 <  case 441:
5856 >  case 445:
5857   /* Line 1787 of yacc.c  */
5858 < #line 2337 "conf_parser.y"
5858 > #line 2361 "conf_parser.y"
5859      {
5860    struct MaskItem *conf = NULL;
5861  
# Line 5840 | Line 5875 | yyreduce:
5875   }
5876      break;
5877  
5878 <  case 447:
5878 >  case 451:
5879   /* Line 1787 of yacc.c  */
5880 < #line 2359 "conf_parser.y"
5880 > #line 2383 "conf_parser.y"
5881      {
5882    if (conf_parser_ctx.pass == 2)
5883      strlcpy(block_state.name.buf, yylval.string, sizeof(block_state.name.buf));
5884   }
5885      break;
5886  
5887 <  case 448:
5887 >  case 452:
5888   /* Line 1787 of yacc.c  */
5889 < #line 2365 "conf_parser.y"
5889 > #line 2389 "conf_parser.y"
5890      {
5891    if (conf_parser_ctx.pass == 2)
5892      strlcpy(block_state.rpass.buf, yylval.string, sizeof(block_state.rpass.buf));
5893   }
5894      break;
5895  
5896 <  case 500:
5896 >  case 504:
5897   /* Line 1787 of yacc.c  */
5898 < #line 2408 "conf_parser.y"
5898 > #line 2432 "conf_parser.y"
5899      {
5900    ConfigFileEntry.max_watch = (yyvsp[(3) - (4)].number);
5901   }
5902      break;
5903  
5904 <  case 501:
5904 >  case 505:
5905   /* Line 1787 of yacc.c  */
5906 < #line 2413 "conf_parser.y"
5906 > #line 2437 "conf_parser.y"
5907      {
5908    if (conf_parser_ctx.pass == 2)
5909      ConfigFileEntry.glines = yylval.number;
5910   }
5911      break;
5912  
5913 <  case 502:
5913 >  case 506:
5914   /* Line 1787 of yacc.c  */
5915 < #line 2419 "conf_parser.y"
5915 > #line 2443 "conf_parser.y"
5916      {
5917    if (conf_parser_ctx.pass == 2)
5918      ConfigFileEntry.gline_time = (yyvsp[(3) - (4)].number);
5919   }
5920      break;
5921  
5922 <  case 503:
5922 >  case 507:
5923   /* Line 1787 of yacc.c  */
5924 < #line 2425 "conf_parser.y"
5924 > #line 2449 "conf_parser.y"
5925      {
5926    if (conf_parser_ctx.pass == 2)
5927      ConfigFileEntry.gline_request_time = (yyvsp[(3) - (4)].number);
5928   }
5929      break;
5930  
5931 <  case 504:
5931 >  case 508:
5932   /* Line 1787 of yacc.c  */
5933 < #line 2431 "conf_parser.y"
5933 > #line 2455 "conf_parser.y"
5934      {
5935    ConfigFileEntry.gline_min_cidr = (yyvsp[(3) - (4)].number);
5936   }
5937      break;
5938  
5939 <  case 505:
5939 >  case 509:
5940   /* Line 1787 of yacc.c  */
5941 < #line 2436 "conf_parser.y"
5941 > #line 2460 "conf_parser.y"
5942      {
5943    ConfigFileEntry.gline_min_cidr6 = (yyvsp[(3) - (4)].number);
5944   }
5945      break;
5946  
5947 <  case 506:
5947 >  case 510:
5948   /* Line 1787 of yacc.c  */
5949 < #line 2441 "conf_parser.y"
5949 > #line 2465 "conf_parser.y"
5950      {
5951    ConfigFileEntry.tkline_expire_notices = yylval.number;
5952   }
5953      break;
5954  
5955 <  case 507:
5955 >  case 511:
5956   /* Line 1787 of yacc.c  */
5957 < #line 2446 "conf_parser.y"
5957 > #line 2470 "conf_parser.y"
5958      {
5959    ConfigFileEntry.kill_chase_time_limit = (yyvsp[(3) - (4)].number);
5960   }
5961      break;
5962  
5963 <  case 508:
5963 >  case 512:
5964   /* Line 1787 of yacc.c  */
5965 < #line 2451 "conf_parser.y"
5965 > #line 2475 "conf_parser.y"
5966      {
5967    ConfigFileEntry.hide_spoof_ips = yylval.number;
5968   }
5969      break;
5970  
5971 <  case 509:
5971 >  case 513:
5972   /* Line 1787 of yacc.c  */
5973 < #line 2456 "conf_parser.y"
5973 > #line 2480 "conf_parser.y"
5974      {
5975    ConfigFileEntry.ignore_bogus_ts = yylval.number;
5976   }
5977      break;
5978  
5979 <  case 510:
5979 >  case 514:
5980   /* Line 1787 of yacc.c  */
5981 < #line 2461 "conf_parser.y"
5981 > #line 2485 "conf_parser.y"
5982      {
5983    ConfigFileEntry.failed_oper_notice = yylval.number;
5984   }
5985      break;
5986  
5987 <  case 511:
5987 >  case 515:
5988   /* Line 1787 of yacc.c  */
5989 < #line 2466 "conf_parser.y"
5989 > #line 2490 "conf_parser.y"
5990      {
5991    ConfigFileEntry.anti_nick_flood = yylval.number;
5992   }
5993      break;
5994  
5995 <  case 512:
5995 >  case 516:
5996   /* Line 1787 of yacc.c  */
5997 < #line 2471 "conf_parser.y"
5997 > #line 2495 "conf_parser.y"
5998      {
5999    ConfigFileEntry.max_nick_time = (yyvsp[(3) - (4)].number);
6000   }
6001      break;
6002  
6003 <  case 513:
6003 >  case 517:
6004   /* Line 1787 of yacc.c  */
6005 < #line 2476 "conf_parser.y"
6005 > #line 2500 "conf_parser.y"
6006      {
6007    ConfigFileEntry.max_nick_changes = (yyvsp[(3) - (4)].number);
6008   }
6009      break;
6010  
6011 <  case 514:
6011 >  case 518:
6012   /* Line 1787 of yacc.c  */
6013 < #line 2481 "conf_parser.y"
6013 > #line 2505 "conf_parser.y"
6014      {
6015    ConfigFileEntry.max_accept = (yyvsp[(3) - (4)].number);
6016   }
6017      break;
6018  
6019 <  case 515:
6019 >  case 519:
6020   /* Line 1787 of yacc.c  */
6021 < #line 2486 "conf_parser.y"
6021 > #line 2510 "conf_parser.y"
6022      {
6023    ConfigFileEntry.anti_spam_exit_message_time = (yyvsp[(3) - (4)].number);
6024   }
6025      break;
6026  
6027 <  case 516:
6027 >  case 520:
6028   /* Line 1787 of yacc.c  */
6029 < #line 2491 "conf_parser.y"
6029 > #line 2515 "conf_parser.y"
6030      {
6031    ConfigFileEntry.ts_warn_delta = (yyvsp[(3) - (4)].number);
6032   }
6033      break;
6034  
6035 <  case 517:
6035 >  case 521:
6036   /* Line 1787 of yacc.c  */
6037 < #line 2496 "conf_parser.y"
6037 > #line 2520 "conf_parser.y"
6038      {
6039    if (conf_parser_ctx.pass == 2)
6040      ConfigFileEntry.ts_max_delta = (yyvsp[(3) - (4)].number);
6041   }
6042      break;
6043  
6044 <  case 518:
6044 >  case 522:
6045   /* Line 1787 of yacc.c  */
6046 < #line 2502 "conf_parser.y"
6046 > #line 2526 "conf_parser.y"
6047      {
6048    if (((yyvsp[(3) - (4)].number) > 0) && conf_parser_ctx.pass == 1)
6049    {
# Line 6020 | Line 6055 | yyreduce:
6055   }
6056      break;
6057  
6058 <  case 519:
6058 >  case 523:
6059   /* Line 1787 of yacc.c  */
6060 < #line 2513 "conf_parser.y"
6060 > #line 2537 "conf_parser.y"
6061      {
6062    ConfigFileEntry.invisible_on_connect = yylval.number;
6063   }
6064      break;
6065  
6066 <  case 520:
6066 >  case 524:
6067   /* Line 1787 of yacc.c  */
6068 < #line 2518 "conf_parser.y"
6068 > #line 2542 "conf_parser.y"
6069      {
6070    ConfigFileEntry.warn_no_nline = yylval.number;
6071   }
6072      break;
6073  
6074 <  case 521:
6074 >  case 525:
6075   /* Line 1787 of yacc.c  */
6076 < #line 2523 "conf_parser.y"
6076 > #line 2547 "conf_parser.y"
6077      {
6078    ConfigFileEntry.stats_e_disabled = yylval.number;
6079   }
6080      break;
6081  
6082 <  case 522:
6082 >  case 526:
6083   /* Line 1787 of yacc.c  */
6084 < #line 2528 "conf_parser.y"
6084 > #line 2552 "conf_parser.y"
6085      {
6086    ConfigFileEntry.stats_o_oper_only = yylval.number;
6087   }
6088      break;
6089  
6090 <  case 523:
6090 >  case 527:
6091   /* Line 1787 of yacc.c  */
6092 < #line 2533 "conf_parser.y"
6092 > #line 2557 "conf_parser.y"
6093      {
6094    ConfigFileEntry.stats_P_oper_only = yylval.number;
6095   }
6096      break;
6097  
6098 <  case 524:
6098 >  case 528:
6099   /* Line 1787 of yacc.c  */
6100 < #line 2538 "conf_parser.y"
6100 > #line 2562 "conf_parser.y"
6101      {
6102    ConfigFileEntry.stats_k_oper_only = 2 * yylval.number;
6103   }
6104      break;
6105  
6106 <  case 525:
6106 >  case 529:
6107   /* Line 1787 of yacc.c  */
6108 < #line 2541 "conf_parser.y"
6108 > #line 2565 "conf_parser.y"
6109      {
6110    ConfigFileEntry.stats_k_oper_only = 1;
6111   }
6112      break;
6113  
6114 <  case 526:
6114 >  case 530:
6115   /* Line 1787 of yacc.c  */
6116 < #line 2546 "conf_parser.y"
6116 > #line 2570 "conf_parser.y"
6117      {
6118    ConfigFileEntry.stats_i_oper_only = 2 * yylval.number;
6119   }
6120      break;
6121  
6122 <  case 527:
6122 >  case 531:
6123   /* Line 1787 of yacc.c  */
6124 < #line 2549 "conf_parser.y"
6124 > #line 2573 "conf_parser.y"
6125      {
6126    ConfigFileEntry.stats_i_oper_only = 1;
6127   }
6128      break;
6129  
6130 <  case 528:
6130 >  case 532:
6131   /* Line 1787 of yacc.c  */
6132 < #line 2554 "conf_parser.y"
6132 > #line 2578 "conf_parser.y"
6133      {
6134    ConfigFileEntry.pace_wait = (yyvsp[(3) - (4)].number);
6135   }
6136      break;
6137  
6138 <  case 529:
6138 >  case 533:
6139   /* Line 1787 of yacc.c  */
6140 < #line 2559 "conf_parser.y"
6140 > #line 2583 "conf_parser.y"
6141      {
6142    ConfigFileEntry.caller_id_wait = (yyvsp[(3) - (4)].number);
6143   }
6144      break;
6145  
6146 <  case 530:
6146 >  case 534:
6147   /* Line 1787 of yacc.c  */
6148 < #line 2564 "conf_parser.y"
6148 > #line 2588 "conf_parser.y"
6149      {
6150    ConfigFileEntry.opers_bypass_callerid = yylval.number;
6151   }
6152      break;
6153  
6154 <  case 531:
6154 >  case 535:
6155   /* Line 1787 of yacc.c  */
6156 < #line 2569 "conf_parser.y"
6156 > #line 2593 "conf_parser.y"
6157      {
6158    ConfigFileEntry.pace_wait_simple = (yyvsp[(3) - (4)].number);
6159   }
6160      break;
6161  
6162 <  case 532:
6162 >  case 536:
6163   /* Line 1787 of yacc.c  */
6164 < #line 2574 "conf_parser.y"
6164 > #line 2598 "conf_parser.y"
6165      {
6166    ConfigFileEntry.short_motd = yylval.number;
6167   }
6168      break;
6169  
6170 <  case 533:
6170 >  case 537:
6171   /* Line 1787 of yacc.c  */
6172 < #line 2579 "conf_parser.y"
6172 > #line 2603 "conf_parser.y"
6173      {
6174    ConfigFileEntry.no_oper_flood = yylval.number;
6175   }
6176      break;
6177  
6178 <  case 534:
6178 >  case 538:
6179   /* Line 1787 of yacc.c  */
6180 < #line 2584 "conf_parser.y"
6180 > #line 2608 "conf_parser.y"
6181      {
6182    ConfigFileEntry.true_no_oper_flood = yylval.number;
6183   }
6184      break;
6185  
6186 <  case 535:
6186 >  case 539:
6187   /* Line 1787 of yacc.c  */
6188 < #line 2589 "conf_parser.y"
6188 > #line 2613 "conf_parser.y"
6189      {
6190    ConfigFileEntry.oper_pass_resv = yylval.number;
6191   }
6192      break;
6193  
6194 <  case 536:
6194 >  case 540:
6195   /* Line 1787 of yacc.c  */
6196 < #line 2594 "conf_parser.y"
6196 > #line 2618 "conf_parser.y"
6197      {
6198    ConfigFileEntry.dots_in_ident = (yyvsp[(3) - (4)].number);
6199   }
6200      break;
6201  
6202 <  case 537:
6202 >  case 541:
6203   /* Line 1787 of yacc.c  */
6204 < #line 2599 "conf_parser.y"
6204 > #line 2623 "conf_parser.y"
6205      {
6206    ConfigFileEntry.max_targets = (yyvsp[(3) - (4)].number);
6207   }
6208      break;
6209  
6210 <  case 538:
6210 >  case 542:
6211   /* Line 1787 of yacc.c  */
6212 < #line 2604 "conf_parser.y"
6212 > #line 2628 "conf_parser.y"
6213      {
6214    ConfigFileEntry.use_egd = yylval.number;
6215   }
6216      break;
6217  
6218 <  case 539:
6218 >  case 543:
6219   /* Line 1787 of yacc.c  */
6220 < #line 2609 "conf_parser.y"
6220 > #line 2633 "conf_parser.y"
6221      {
6222    if (conf_parser_ctx.pass == 2)
6223    {
# Line 6192 | Line 6227 | yyreduce:
6227   }
6228      break;
6229  
6230 <  case 540:
6230 >  case 544:
6231   /* Line 1787 of yacc.c  */
6232 < #line 2618 "conf_parser.y"
6232 > #line 2642 "conf_parser.y"
6233      {
6234    if (conf_parser_ctx.pass == 2 && valid_servname(yylval.string))
6235    {
# Line 6204 | Line 6239 | yyreduce:
6239   }
6240      break;
6241  
6242 <  case 541:
6242 >  case 545:
6243   /* Line 1787 of yacc.c  */
6244 < #line 2627 "conf_parser.y"
6244 > #line 2651 "conf_parser.y"
6245      {
6246    ConfigFileEntry.ping_cookie = yylval.number;
6247   }
6248      break;
6249  
6250 <  case 542:
6250 >  case 546:
6251   /* Line 1787 of yacc.c  */
6252 < #line 2632 "conf_parser.y"
6252 > #line 2656 "conf_parser.y"
6253      {
6254    ConfigFileEntry.disable_auth = yylval.number;
6255   }
6256      break;
6257  
6258 <  case 543:
6258 >  case 547:
6259   /* Line 1787 of yacc.c  */
6260 < #line 2637 "conf_parser.y"
6260 > #line 2661 "conf_parser.y"
6261      {
6262    ConfigFileEntry.throttle_time = yylval.number;
6263   }
6264      break;
6265  
6266 <  case 544:
6266 >  case 548:
6267   /* Line 1787 of yacc.c  */
6268 < #line 2642 "conf_parser.y"
6268 > #line 2666 "conf_parser.y"
6269      {
6270    ConfigFileEntry.oper_umodes = 0;
6271   }
6272      break;
6273  
6274 <  case 548:
6274 >  case 552:
6275   /* Line 1787 of yacc.c  */
6276 < #line 2648 "conf_parser.y"
6276 > #line 2672 "conf_parser.y"
6277      {
6278    ConfigFileEntry.oper_umodes |= UMODE_BOTS;
6279   }
6280      break;
6281  
6282 <  case 549:
6282 >  case 553:
6283   /* Line 1787 of yacc.c  */
6284 < #line 2651 "conf_parser.y"
6284 > #line 2675 "conf_parser.y"
6285      {
6286    ConfigFileEntry.oper_umodes |= UMODE_CCONN;
6287   }
6288      break;
6289  
6290 <  case 550:
6290 >  case 554:
6291   /* Line 1787 of yacc.c  */
6292 < #line 2654 "conf_parser.y"
6292 > #line 2678 "conf_parser.y"
6293      {
6294    ConfigFileEntry.oper_umodes |= UMODE_DEAF;
6295   }
6296      break;
6297  
6298 <  case 551:
6298 >  case 555:
6299   /* Line 1787 of yacc.c  */
6300 < #line 2657 "conf_parser.y"
6300 > #line 2681 "conf_parser.y"
6301      {
6302    ConfigFileEntry.oper_umodes |= UMODE_DEBUG;
6303   }
6304      break;
6305  
6306 <  case 552:
6306 >  case 556:
6307   /* Line 1787 of yacc.c  */
6308 < #line 2660 "conf_parser.y"
6308 > #line 2684 "conf_parser.y"
6309      {
6310    ConfigFileEntry.oper_umodes |= UMODE_FULL;
6311   }
6312      break;
6313  
6314 <  case 553:
6314 >  case 557:
6315   /* Line 1787 of yacc.c  */
6316 < #line 2663 "conf_parser.y"
6316 > #line 2687 "conf_parser.y"
6317      {
6318    ConfigFileEntry.oper_umodes |= UMODE_HIDDEN;
6319   }
6320      break;
6321  
6322 <  case 554:
6322 >  case 558:
6323   /* Line 1787 of yacc.c  */
6324 < #line 2666 "conf_parser.y"
6324 > #line 2690 "conf_parser.y"
6325      {
6326    ConfigFileEntry.oper_umodes |= UMODE_SKILL;
6327   }
6328      break;
6329  
6330 <  case 555:
6330 >  case 559:
6331   /* Line 1787 of yacc.c  */
6332 < #line 2669 "conf_parser.y"
6332 > #line 2693 "conf_parser.y"
6333      {
6334    ConfigFileEntry.oper_umodes |= UMODE_NCHANGE;
6335   }
6336      break;
6337  
6338 <  case 556:
6338 >  case 560:
6339   /* Line 1787 of yacc.c  */
6340 < #line 2672 "conf_parser.y"
6340 > #line 2696 "conf_parser.y"
6341      {
6342    ConfigFileEntry.oper_umodes |= UMODE_REJ;
6343   }
6344      break;
6345  
6346 <  case 557:
6346 >  case 561:
6347   /* Line 1787 of yacc.c  */
6348 < #line 2675 "conf_parser.y"
6348 > #line 2699 "conf_parser.y"
6349      {
6350    ConfigFileEntry.oper_umodes |= UMODE_UNAUTH;
6351   }
6352      break;
6353  
6354 <  case 558:
6354 >  case 562:
6355   /* Line 1787 of yacc.c  */
6356 < #line 2678 "conf_parser.y"
6356 > #line 2702 "conf_parser.y"
6357      {
6358    ConfigFileEntry.oper_umodes |= UMODE_SPY;
6359   }
6360      break;
6361  
6362 <  case 559:
6362 >  case 563:
6363   /* Line 1787 of yacc.c  */
6364 < #line 2681 "conf_parser.y"
6364 > #line 2705 "conf_parser.y"
6365      {
6366    ConfigFileEntry.oper_umodes |= UMODE_EXTERNAL;
6367   }
6368      break;
6369  
6370 <  case 560:
6370 >  case 564:
6371   /* Line 1787 of yacc.c  */
6372 < #line 2684 "conf_parser.y"
6372 > #line 2708 "conf_parser.y"
6373      {
6374    ConfigFileEntry.oper_umodes |= UMODE_OPERWALL;
6375   }
6376      break;
6377  
6378 <  case 561:
6378 >  case 565:
6379   /* Line 1787 of yacc.c  */
6380 < #line 2687 "conf_parser.y"
6380 > #line 2711 "conf_parser.y"
6381      {
6382    ConfigFileEntry.oper_umodes |= UMODE_SERVNOTICE;
6383   }
6384      break;
6385  
6386 <  case 562:
6386 >  case 566:
6387   /* Line 1787 of yacc.c  */
6388 < #line 2690 "conf_parser.y"
6388 > #line 2714 "conf_parser.y"
6389      {
6390    ConfigFileEntry.oper_umodes |= UMODE_INVISIBLE;
6391   }
6392      break;
6393  
6394 <  case 563:
6394 >  case 567:
6395   /* Line 1787 of yacc.c  */
6396 < #line 2693 "conf_parser.y"
6396 > #line 2717 "conf_parser.y"
6397      {
6398    ConfigFileEntry.oper_umodes |= UMODE_WALLOP;
6399   }
6400      break;
6401  
6402 <  case 564:
6402 >  case 568:
6403   /* Line 1787 of yacc.c  */
6404 < #line 2696 "conf_parser.y"
6404 > #line 2720 "conf_parser.y"
6405      {
6406    ConfigFileEntry.oper_umodes |= UMODE_SOFTCALLERID;
6407   }
6408      break;
6409  
6410 <  case 565:
6410 >  case 569:
6411   /* Line 1787 of yacc.c  */
6412 < #line 2699 "conf_parser.y"
6412 > #line 2723 "conf_parser.y"
6413      {
6414    ConfigFileEntry.oper_umodes |= UMODE_CALLERID;
6415   }
6416      break;
6417  
6418 <  case 566:
6418 >  case 570:
6419   /* Line 1787 of yacc.c  */
6420 < #line 2702 "conf_parser.y"
6420 > #line 2726 "conf_parser.y"
6421      {
6422    ConfigFileEntry.oper_umodes |= UMODE_LOCOPS;
6423   }
6424      break;
6425  
6426 <  case 567:
6426 >  case 571:
6427   /* Line 1787 of yacc.c  */
6428 < #line 2705 "conf_parser.y"
6428 > #line 2729 "conf_parser.y"
6429      {
6430    ConfigFileEntry.oper_umodes |= UMODE_REGONLY;
6431   }
6432      break;
6433  
6434 <  case 568:
6434 >  case 572:
6435   /* Line 1787 of yacc.c  */
6436 < #line 2708 "conf_parser.y"
6436 > #line 2732 "conf_parser.y"
6437      {
6438    ConfigFileEntry.oper_umodes |= UMODE_FARCONNECT;
6439   }
6440      break;
6441  
6442 <  case 569:
6442 >  case 573:
6443   /* Line 1787 of yacc.c  */
6444 < #line 2713 "conf_parser.y"
6444 > #line 2737 "conf_parser.y"
6445      {
6446    ConfigFileEntry.oper_only_umodes = 0;
6447   }
6448      break;
6449  
6450 <  case 573:
6450 >  case 577:
6451   /* Line 1787 of yacc.c  */
6452 < #line 2719 "conf_parser.y"
6452 > #line 2743 "conf_parser.y"
6453      {
6454    ConfigFileEntry.oper_only_umodes |= UMODE_BOTS;
6455   }
6456      break;
6457  
6458 <  case 574:
6458 >  case 578:
6459   /* Line 1787 of yacc.c  */
6460 < #line 2722 "conf_parser.y"
6460 > #line 2746 "conf_parser.y"
6461      {
6462    ConfigFileEntry.oper_only_umodes |= UMODE_CCONN;
6463   }
6464      break;
6465  
6466 <  case 575:
6466 >  case 579:
6467   /* Line 1787 of yacc.c  */
6468 < #line 2725 "conf_parser.y"
6468 > #line 2749 "conf_parser.y"
6469      {
6470    ConfigFileEntry.oper_only_umodes |= UMODE_DEAF;
6471   }
6472      break;
6473  
6474 <  case 576:
6474 >  case 580:
6475   /* Line 1787 of yacc.c  */
6476 < #line 2728 "conf_parser.y"
6476 > #line 2752 "conf_parser.y"
6477      {
6478    ConfigFileEntry.oper_only_umodes |= UMODE_DEBUG;
6479   }
6480      break;
6481  
6482 <  case 577:
6482 >  case 581:
6483   /* Line 1787 of yacc.c  */
6484 < #line 2731 "conf_parser.y"
6484 > #line 2755 "conf_parser.y"
6485      {
6486    ConfigFileEntry.oper_only_umodes |= UMODE_FULL;
6487   }
6488      break;
6489  
6490 <  case 578:
6490 >  case 582:
6491   /* Line 1787 of yacc.c  */
6492 < #line 2734 "conf_parser.y"
6492 > #line 2758 "conf_parser.y"
6493      {
6494    ConfigFileEntry.oper_only_umodes |= UMODE_SKILL;
6495   }
6496      break;
6497  
6498 <  case 579:
6498 >  case 583:
6499   /* Line 1787 of yacc.c  */
6500 < #line 2737 "conf_parser.y"
6500 > #line 2761 "conf_parser.y"
6501      {
6502    ConfigFileEntry.oper_only_umodes |= UMODE_HIDDEN;
6503   }
6504      break;
6505  
6506 <  case 580:
6506 >  case 584:
6507   /* Line 1787 of yacc.c  */
6508 < #line 2740 "conf_parser.y"
6508 > #line 2764 "conf_parser.y"
6509      {
6510    ConfigFileEntry.oper_only_umodes |= UMODE_NCHANGE;
6511   }
6512      break;
6513  
6514 <  case 581:
6514 >  case 585:
6515   /* Line 1787 of yacc.c  */
6516 < #line 2743 "conf_parser.y"
6516 > #line 2767 "conf_parser.y"
6517      {
6518    ConfigFileEntry.oper_only_umodes |= UMODE_REJ;
6519   }
6520      break;
6521  
6522 <  case 582:
6522 >  case 586:
6523   /* Line 1787 of yacc.c  */
6524 < #line 2746 "conf_parser.y"
6524 > #line 2770 "conf_parser.y"
6525      {
6526    ConfigFileEntry.oper_only_umodes |= UMODE_UNAUTH;
6527   }
6528      break;
6529  
6530 <  case 583:
6530 >  case 587:
6531   /* Line 1787 of yacc.c  */
6532 < #line 2749 "conf_parser.y"
6532 > #line 2773 "conf_parser.y"
6533      {
6534    ConfigFileEntry.oper_only_umodes |= UMODE_SPY;
6535   }
6536      break;
6537  
6538 <  case 584:
6538 >  case 588:
6539   /* Line 1787 of yacc.c  */
6540 < #line 2752 "conf_parser.y"
6540 > #line 2776 "conf_parser.y"
6541      {
6542    ConfigFileEntry.oper_only_umodes |= UMODE_EXTERNAL;
6543   }
6544      break;
6545  
6546 <  case 585:
6546 >  case 589:
6547   /* Line 1787 of yacc.c  */
6548 < #line 2755 "conf_parser.y"
6548 > #line 2779 "conf_parser.y"
6549      {
6550    ConfigFileEntry.oper_only_umodes |= UMODE_OPERWALL;
6551   }
6552      break;
6553  
6554 <  case 586:
6554 >  case 590:
6555   /* Line 1787 of yacc.c  */
6556 < #line 2758 "conf_parser.y"
6556 > #line 2782 "conf_parser.y"
6557      {
6558    ConfigFileEntry.oper_only_umodes |= UMODE_SERVNOTICE;
6559   }
6560      break;
6561  
6562 <  case 587:
6562 >  case 591:
6563   /* Line 1787 of yacc.c  */
6564 < #line 2761 "conf_parser.y"
6564 > #line 2785 "conf_parser.y"
6565      {
6566    ConfigFileEntry.oper_only_umodes |= UMODE_INVISIBLE;
6567   }
6568      break;
6569  
6570 <  case 588:
6570 >  case 592:
6571   /* Line 1787 of yacc.c  */
6572 < #line 2764 "conf_parser.y"
6572 > #line 2788 "conf_parser.y"
6573      {
6574    ConfigFileEntry.oper_only_umodes |= UMODE_WALLOP;
6575   }
6576      break;
6577  
6578 <  case 589:
6578 >  case 593:
6579   /* Line 1787 of yacc.c  */
6580 < #line 2767 "conf_parser.y"
6580 > #line 2791 "conf_parser.y"
6581      {
6582    ConfigFileEntry.oper_only_umodes |= UMODE_SOFTCALLERID;
6583   }
6584      break;
6585  
6586 <  case 590:
6586 >  case 594:
6587   /* Line 1787 of yacc.c  */
6588 < #line 2770 "conf_parser.y"
6588 > #line 2794 "conf_parser.y"
6589      {
6590    ConfigFileEntry.oper_only_umodes |= UMODE_CALLERID;
6591   }
6592      break;
6593  
6594 <  case 591:
6594 >  case 595:
6595   /* Line 1787 of yacc.c  */
6596 < #line 2773 "conf_parser.y"
6596 > #line 2797 "conf_parser.y"
6597      {
6598    ConfigFileEntry.oper_only_umodes |= UMODE_LOCOPS;
6599   }
6600      break;
6601  
6602 <  case 592:
6602 >  case 596:
6603   /* Line 1787 of yacc.c  */
6604 < #line 2776 "conf_parser.y"
6604 > #line 2800 "conf_parser.y"
6605      {
6606    ConfigFileEntry.oper_only_umodes |= UMODE_REGONLY;
6607   }
6608      break;
6609  
6610 <  case 593:
6610 >  case 597:
6611   /* Line 1787 of yacc.c  */
6612 < #line 2779 "conf_parser.y"
6612 > #line 2803 "conf_parser.y"
6613      {
6614    ConfigFileEntry.oper_only_umodes |= UMODE_FARCONNECT;
6615   }
6616      break;
6617  
6618 <  case 594:
6618 >  case 598:
6619   /* Line 1787 of yacc.c  */
6620 < #line 2784 "conf_parser.y"
6620 > #line 2808 "conf_parser.y"
6621      {
6622    ConfigFileEntry.min_nonwildcard = (yyvsp[(3) - (4)].number);
6623   }
6624      break;
6625  
6626 <  case 595:
6626 >  case 599:
6627   /* Line 1787 of yacc.c  */
6628 < #line 2789 "conf_parser.y"
6628 > #line 2813 "conf_parser.y"
6629      {
6630    ConfigFileEntry.min_nonwildcard_simple = (yyvsp[(3) - (4)].number);
6631   }
6632      break;
6633  
6634 <  case 596:
6634 >  case 600:
6635   /* Line 1787 of yacc.c  */
6636 < #line 2794 "conf_parser.y"
6636 > #line 2818 "conf_parser.y"
6637      {
6638    ConfigFileEntry.default_floodcount = (yyvsp[(3) - (4)].number);
6639   }
6640      break;
6641  
6642 <  case 613:
6642 >  case 617:
6643   /* Line 1787 of yacc.c  */
6644 < #line 2817 "conf_parser.y"
6644 > #line 2841 "conf_parser.y"
6645      {
6646    ConfigChannel.disable_fake_channels = yylval.number;
6647   }
6648      break;
6649  
6650 <  case 614:
6650 >  case 618:
6651   /* Line 1787 of yacc.c  */
6652 < #line 2822 "conf_parser.y"
6652 > #line 2846 "conf_parser.y"
6653      {
6654    ConfigChannel.knock_delay = (yyvsp[(3) - (4)].number);
6655   }
6656      break;
6657  
6658 <  case 615:
6658 >  case 619:
6659   /* Line 1787 of yacc.c  */
6660 < #line 2827 "conf_parser.y"
6660 > #line 2851 "conf_parser.y"
6661      {
6662    ConfigChannel.knock_delay_channel = (yyvsp[(3) - (4)].number);
6663   }
6664      break;
6665  
6666 <  case 616:
6666 >  case 620:
6667   /* Line 1787 of yacc.c  */
6668 < #line 2832 "conf_parser.y"
6668 > #line 2856 "conf_parser.y"
6669      {
6670    ConfigChannel.max_chans_per_user = (yyvsp[(3) - (4)].number);
6671   }
6672      break;
6673  
6674 <  case 617:
6674 >  case 621:
6675   /* Line 1787 of yacc.c  */
6676 < #line 2837 "conf_parser.y"
6676 > #line 2861 "conf_parser.y"
6677      {
6678    ConfigChannel.max_chans_per_oper = (yyvsp[(3) - (4)].number);
6679   }
6680      break;
6681  
6682 <  case 618:
6682 >  case 622:
6683   /* Line 1787 of yacc.c  */
6684 < #line 2842 "conf_parser.y"
6684 > #line 2866 "conf_parser.y"
6685      {
6686    ConfigChannel.max_bans = (yyvsp[(3) - (4)].number);
6687   }
6688      break;
6689  
6690 <  case 619:
6690 >  case 623:
6691   /* Line 1787 of yacc.c  */
6692 < #line 2847 "conf_parser.y"
6692 > #line 2871 "conf_parser.y"
6693      {
6694    ConfigChannel.default_split_user_count = (yyvsp[(3) - (4)].number);
6695   }
6696      break;
6697  
6698 <  case 620:
6698 >  case 624:
6699   /* Line 1787 of yacc.c  */
6700 < #line 2852 "conf_parser.y"
6700 > #line 2876 "conf_parser.y"
6701      {
6702    ConfigChannel.default_split_server_count = (yyvsp[(3) - (4)].number);
6703   }
6704      break;
6705  
6706 <  case 621:
6706 >  case 625:
6707   /* Line 1787 of yacc.c  */
6708 < #line 2857 "conf_parser.y"
6708 > #line 2881 "conf_parser.y"
6709      {
6710    ConfigChannel.no_create_on_split = yylval.number;
6711   }
6712      break;
6713  
6714 <  case 622:
6714 >  case 626:
6715   /* Line 1787 of yacc.c  */
6716 < #line 2862 "conf_parser.y"
6716 > #line 2886 "conf_parser.y"
6717      {
6718    ConfigChannel.no_join_on_split = yylval.number;
6719   }
6720      break;
6721  
6722 <  case 623:
6722 >  case 627:
6723   /* Line 1787 of yacc.c  */
6724 < #line 2867 "conf_parser.y"
6724 > #line 2891 "conf_parser.y"
6725      {
6726    GlobalSetOptions.joinfloodcount = yylval.number;
6727   }
6728      break;
6729  
6730 <  case 624:
6730 >  case 628:
6731   /* Line 1787 of yacc.c  */
6732 < #line 2872 "conf_parser.y"
6732 > #line 2896 "conf_parser.y"
6733      {
6734    GlobalSetOptions.joinfloodtime = yylval.number;
6735   }
6736      break;
6737  
6738 <  case 637:
6738 >  case 641:
6739   /* Line 1787 of yacc.c  */
6740 < #line 2892 "conf_parser.y"
6740 > #line 2916 "conf_parser.y"
6741      {
6742    if (conf_parser_ctx.pass == 2)
6743      ConfigServerHide.flatten_links = yylval.number;
6744   }
6745      break;
6746  
6747 <  case 638:
6747 >  case 642:
6748   /* Line 1787 of yacc.c  */
6749 < #line 2898 "conf_parser.y"
6749 > #line 2922 "conf_parser.y"
6750      {
6751    if (conf_parser_ctx.pass == 2)
6752      ConfigServerHide.disable_remote_commands = yylval.number;
6753   }
6754      break;
6755  
6756 <  case 639:
6756 >  case 643:
6757   /* Line 1787 of yacc.c  */
6758 < #line 2904 "conf_parser.y"
6758 > #line 2928 "conf_parser.y"
6759      {
6760    if (conf_parser_ctx.pass == 2)
6761      ConfigServerHide.hide_servers = yylval.number;
6762   }
6763      break;
6764  
6765 <  case 640:
6765 >  case 644:
6766   /* Line 1787 of yacc.c  */
6767 < #line 2910 "conf_parser.y"
6767 > #line 2934 "conf_parser.y"
6768      {
6769    if (conf_parser_ctx.pass == 2)
6770      ConfigServerHide.hide_services = yylval.number;
6771   }
6772      break;
6773  
6774 <  case 641:
6774 >  case 645:
6775   /* Line 1787 of yacc.c  */
6776 < #line 2916 "conf_parser.y"
6776 > #line 2940 "conf_parser.y"
6777      {
6778    if (conf_parser_ctx.pass == 2)
6779    {
# Line 6748 | Line 6783 | yyreduce:
6783   }
6784      break;
6785  
6786 <  case 642:
6786 >  case 646:
6787   /* Line 1787 of yacc.c  */
6788 < #line 2925 "conf_parser.y"
6788 > #line 2949 "conf_parser.y"
6789      {
6790    if (conf_parser_ctx.pass == 2)
6791    {
# Line 6765 | Line 6800 | yyreduce:
6800   }
6801      break;
6802  
6803 <  case 643:
6803 >  case 647:
6804   /* Line 1787 of yacc.c  */
6805 < #line 2939 "conf_parser.y"
6805 > #line 2963 "conf_parser.y"
6806      {
6807    if (conf_parser_ctx.pass == 2)
6808      ConfigServerHide.hidden = yylval.number;
6809   }
6810      break;
6811  
6812 <  case 644:
6812 >  case 648:
6813   /* Line 1787 of yacc.c  */
6814 < #line 2945 "conf_parser.y"
6814 > #line 2969 "conf_parser.y"
6815      {
6816    if (conf_parser_ctx.pass == 2)
6817      ConfigServerHide.hide_server_ips = yylval.number;
# Line 6785 | Line 6820 | yyreduce:
6820  
6821  
6822   /* Line 1787 of yacc.c  */
6823 < #line 6789 "conf_parser.c"
6823 > #line 6824 "conf_parser.c"
6824        default: break;
6825      }
6826    /* User semantic actions sometimes alter yychar, and that requires

Diff Legend

Removed lines
+ Added lines
< Changed lines (old)
> Changed lines (new)