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-8/src/ircd_parser.c (file contents), Revision 1302 by michael, Wed Mar 21 17:48:54 2012 UTC vs.
ircd-hybrid-8/src/conf_parser.c (file contents), Revision 1389 by michael, Tue May 1 13:08:29 2012 UTC

# Line 66 | Line 66
66   /* Copy the first part of user declarations.  */
67  
68   /* Line 268 of yacc.c  */
69 < #line 25 "ircd_parser.y"
69 > #line 25 "conf_parser.y"
70  
71  
72   #define YY_NO_UNPUT
# Line 77 | Line 77
77   #include "stdinc.h"
78   #include "ircd.h"
79   #include "list.h"
80 < #include "s_conf.h"
80 > #include "conf.h"
81   #include "event.h"
82 < #include "s_log.h"
82 > #include "log.h"
83   #include "client.h"     /* for UMODE_ALL only */
84   #include "irc_string.h"
85   #include "sprintf_irc.h"
# Line 97 | Line 97
97   #include <openssl/rsa.h>
98   #include <openssl/bio.h>
99   #include <openssl/pem.h>
100 + #include <openssl/dh.h>
101   #endif
102  
103 + int yylex(void);
104 +
105   static char *class_name = NULL;
106   static struct ConfItem *yy_conf = NULL;
107   static struct AccessItem *yy_aconf = NULL;
# Line 107 | Line 110 | static struct ClassItem *yy_class = NULL
110   static char *yy_class_name = NULL;
111  
112   static dlink_list col_conf_list  = { NULL, NULL, 0 };
110 static dlink_list hub_conf_list  = { NULL, NULL, 0 };
111 static dlink_list leaf_conf_list = { NULL, NULL, 0 };
113   static unsigned int listener_flags = 0;
114   static unsigned int regex_ban = 0;
115   static char userbuf[IRCD_BUFSIZE];
# Line 149 | Line 150 | free_collect_item(struct CollectItem *it
150    MyFree(item);
151   }
152  
152 static void
153 unhook_hub_leaf_confs(void)
154 {
155  dlink_node *ptr;
156  dlink_node *next_ptr;
157  struct CollectItem *yy_hconf;
158  struct CollectItem *yy_lconf;
159
160  DLINK_FOREACH_SAFE(ptr, next_ptr, hub_conf_list.head)
161  {
162    yy_hconf = ptr->data;
163    dlinkDelete(&yy_hconf->node, &hub_conf_list);
164    free_collect_item(yy_hconf);
165  }
166
167  DLINK_FOREACH_SAFE(ptr, next_ptr, leaf_conf_list.head)
168  {
169    yy_lconf = ptr->data;
170    dlinkDelete(&yy_lconf->node, &leaf_conf_list);
171    free_collect_item(yy_lconf);
172  }
173 }
174
153  
154  
155   /* Line 268 of yacc.c  */
156 < #line 179 "ircd_parser.c"
156 > #line 157 "conf_parser.c"
157  
158   /* Enabling traces.  */
159   #ifndef YYDEBUG
# Line 345 | Line 323 | unhook_hub_leaf_confs(void)
323       RSA_PRIVATE_KEY_FILE = 398,
324       RSA_PUBLIC_KEY_FILE = 399,
325       SSL_CERTIFICATE_FILE = 400,
326 <     T_SSL_CONNECTION_METHOD = 401,
327 <     T_SSLV3 = 402,
328 <     T_TLSV1 = 403,
329 <     RESV = 404,
330 <     RESV_EXEMPT = 405,
331 <     SECONDS = 406,
332 <     MINUTES = 407,
333 <     HOURS = 408,
334 <     DAYS = 409,
335 <     WEEKS = 410,
336 <     SENDQ = 411,
337 <     SEND_PASSWORD = 412,
338 <     SERVERHIDE = 413,
339 <     SERVERINFO = 414,
340 <     IRCD_SID = 415,
341 <     TKLINE_EXPIRE_NOTICES = 416,
342 <     T_SHARED = 417,
343 <     T_CLUSTER = 418,
344 <     TYPE = 419,
345 <     SHORT_MOTD = 420,
346 <     SILENT = 421,
347 <     SPOOF = 422,
348 <     SPOOF_NOTICE = 423,
349 <     STATS_E_DISABLED = 424,
350 <     STATS_I_OPER_ONLY = 425,
351 <     STATS_K_OPER_ONLY = 426,
352 <     STATS_O_OPER_ONLY = 427,
353 <     STATS_P_OPER_ONLY = 428,
354 <     TBOOL = 429,
355 <     TMASKED = 430,
356 <     T_REJECT = 431,
357 <     TS_MAX_DELTA = 432,
358 <     TS_WARN_DELTA = 433,
359 <     TWODOTS = 434,
360 <     T_ALL = 435,
361 <     T_BOTS = 436,
362 <     T_SOFTCALLERID = 437,
363 <     T_CALLERID = 438,
364 <     T_CCONN = 439,
365 <     T_CCONN_FULL = 440,
366 <     T_CLIENT_FLOOD = 441,
367 <     T_DEAF = 442,
368 <     T_DEBUG = 443,
369 <     T_DLINE = 444,
370 <     T_DRONE = 445,
371 <     T_EXTERNAL = 446,
372 <     T_FULL = 447,
373 <     T_INVISIBLE = 448,
374 <     T_IPV4 = 449,
375 <     T_IPV6 = 450,
376 <     T_LOCOPS = 451,
377 <     T_MAX_CLIENTS = 452,
378 <     T_NCHANGE = 453,
379 <     T_OPERWALL = 454,
380 <     T_REJ = 455,
381 <     T_SERVER = 456,
382 <     T_SERVNOTICE = 457,
383 <     T_SKILL = 458,
384 <     T_SPY = 459,
385 <     T_SSL = 460,
386 <     T_UMODES = 461,
387 <     T_UNAUTH = 462,
388 <     T_UNDLINE = 463,
389 <     T_UNLIMITED = 464,
390 <     T_UNRESV = 465,
391 <     T_UNXLINE = 466,
392 <     T_GLOBOPS = 467,
393 <     T_WALLOP = 468,
394 <     T_RESTART = 469,
395 <     T_SERVICE = 470,
396 <     T_SERVICES_NAME = 471,
397 <     T_TIMESTAMP = 472,
398 <     THROTTLE_TIME = 473,
399 <     TOPICBURST = 474,
400 <     TRUE_NO_OPER_FLOOD = 475,
401 <     TKLINE = 476,
402 <     TXLINE = 477,
403 <     TRESV = 478,
404 <     UNKLINE = 479,
405 <     USER = 480,
406 <     USE_EGD = 481,
407 <     USE_EXCEPT = 482,
408 <     USE_INVEX = 483,
409 <     USE_KNOCK = 484,
410 <     USE_LOGGING = 485,
411 <     USE_WHOIS_ACTUALLY = 486,
412 <     VHOST = 487,
413 <     VHOST6 = 488,
414 <     XLINE = 489,
415 <     WARN = 490,
416 <     WARN_NO_NLINE = 491,
417 <     T_SIZE = 492,
418 <     T_FILE = 493
326 >     SSL_DH_PARAM_FILE = 401,
327 >     T_SSL_CLIENT_METHOD = 402,
328 >     T_SSL_SERVER_METHOD = 403,
329 >     T_SSLV3 = 404,
330 >     T_TLSV1 = 405,
331 >     RESV = 406,
332 >     RESV_EXEMPT = 407,
333 >     SECONDS = 408,
334 >     MINUTES = 409,
335 >     HOURS = 410,
336 >     DAYS = 411,
337 >     WEEKS = 412,
338 >     SENDQ = 413,
339 >     SEND_PASSWORD = 414,
340 >     SERVERHIDE = 415,
341 >     SERVERINFO = 416,
342 >     IRCD_SID = 417,
343 >     TKLINE_EXPIRE_NOTICES = 418,
344 >     T_SHARED = 419,
345 >     T_CLUSTER = 420,
346 >     TYPE = 421,
347 >     SHORT_MOTD = 422,
348 >     SILENT = 423,
349 >     SPOOF = 424,
350 >     SPOOF_NOTICE = 425,
351 >     STATS_E_DISABLED = 426,
352 >     STATS_I_OPER_ONLY = 427,
353 >     STATS_K_OPER_ONLY = 428,
354 >     STATS_O_OPER_ONLY = 429,
355 >     STATS_P_OPER_ONLY = 430,
356 >     TBOOL = 431,
357 >     TMASKED = 432,
358 >     T_REJECT = 433,
359 >     TS_MAX_DELTA = 434,
360 >     TS_WARN_DELTA = 435,
361 >     TWODOTS = 436,
362 >     T_ALL = 437,
363 >     T_BOTS = 438,
364 >     T_SOFTCALLERID = 439,
365 >     T_CALLERID = 440,
366 >     T_CCONN = 441,
367 >     T_CCONN_FULL = 442,
368 >     T_SSL_CIPHER_LIST = 443,
369 >     T_CLIENT_FLOOD = 444,
370 >     T_DEAF = 445,
371 >     T_DEBUG = 446,
372 >     T_DLINE = 447,
373 >     T_DRONE = 448,
374 >     T_EXTERNAL = 449,
375 >     T_FULL = 450,
376 >     T_INVISIBLE = 451,
377 >     T_IPV4 = 452,
378 >     T_IPV6 = 453,
379 >     T_LOCOPS = 454,
380 >     T_MAX_CLIENTS = 455,
381 >     T_NCHANGE = 456,
382 >     T_OPERWALL = 457,
383 >     T_REJ = 458,
384 >     T_SERVER = 459,
385 >     T_SERVNOTICE = 460,
386 >     T_SKILL = 461,
387 >     T_SPY = 462,
388 >     T_SSL = 463,
389 >     T_UMODES = 464,
390 >     T_UNAUTH = 465,
391 >     T_UNDLINE = 466,
392 >     T_UNLIMITED = 467,
393 >     T_UNRESV = 468,
394 >     T_UNXLINE = 469,
395 >     T_GLOBOPS = 470,
396 >     T_WALLOP = 471,
397 >     T_RESTART = 472,
398 >     T_SERVICE = 473,
399 >     T_SERVICES_NAME = 474,
400 >     THROTTLE_TIME = 475,
401 >     TOPICBURST = 476,
402 >     TRUE_NO_OPER_FLOOD = 477,
403 >     TKLINE = 478,
404 >     TXLINE = 479,
405 >     TRESV = 480,
406 >     UNKLINE = 481,
407 >     USER = 482,
408 >     USE_EGD = 483,
409 >     USE_EXCEPT = 484,
410 >     USE_INVEX = 485,
411 >     USE_KNOCK = 486,
412 >     USE_LOGGING = 487,
413 >     USE_WHOIS_ACTUALLY = 488,
414 >     VHOST = 489,
415 >     VHOST6 = 490,
416 >     XLINE = 491,
417 >     WARN = 492,
418 >     WARN_NO_NLINE = 493,
419 >     T_SIZE = 494,
420 >     T_FILE = 495
421     };
422   #endif
423   /* Tokens.  */
# Line 584 | Line 564 | unhook_hub_leaf_confs(void)
564   #define RSA_PRIVATE_KEY_FILE 398
565   #define RSA_PUBLIC_KEY_FILE 399
566   #define SSL_CERTIFICATE_FILE 400
567 < #define T_SSL_CONNECTION_METHOD 401
568 < #define T_SSLV3 402
569 < #define T_TLSV1 403
570 < #define RESV 404
571 < #define RESV_EXEMPT 405
572 < #define SECONDS 406
573 < #define MINUTES 407
574 < #define HOURS 408
575 < #define DAYS 409
576 < #define WEEKS 410
577 < #define SENDQ 411
578 < #define SEND_PASSWORD 412
579 < #define SERVERHIDE 413
580 < #define SERVERINFO 414
581 < #define IRCD_SID 415
582 < #define TKLINE_EXPIRE_NOTICES 416
583 < #define T_SHARED 417
584 < #define T_CLUSTER 418
585 < #define TYPE 419
586 < #define SHORT_MOTD 420
587 < #define SILENT 421
588 < #define SPOOF 422
589 < #define SPOOF_NOTICE 423
590 < #define STATS_E_DISABLED 424
591 < #define STATS_I_OPER_ONLY 425
592 < #define STATS_K_OPER_ONLY 426
593 < #define STATS_O_OPER_ONLY 427
594 < #define STATS_P_OPER_ONLY 428
595 < #define TBOOL 429
596 < #define TMASKED 430
597 < #define T_REJECT 431
598 < #define TS_MAX_DELTA 432
599 < #define TS_WARN_DELTA 433
600 < #define TWODOTS 434
601 < #define T_ALL 435
602 < #define T_BOTS 436
603 < #define T_SOFTCALLERID 437
604 < #define T_CALLERID 438
605 < #define T_CCONN 439
606 < #define T_CCONN_FULL 440
607 < #define T_CLIENT_FLOOD 441
608 < #define T_DEAF 442
609 < #define T_DEBUG 443
610 < #define T_DLINE 444
611 < #define T_DRONE 445
612 < #define T_EXTERNAL 446
613 < #define T_FULL 447
614 < #define T_INVISIBLE 448
615 < #define T_IPV4 449
616 < #define T_IPV6 450
617 < #define T_LOCOPS 451
618 < #define T_MAX_CLIENTS 452
619 < #define T_NCHANGE 453
620 < #define T_OPERWALL 454
621 < #define T_REJ 455
622 < #define T_SERVER 456
623 < #define T_SERVNOTICE 457
624 < #define T_SKILL 458
625 < #define T_SPY 459
626 < #define T_SSL 460
627 < #define T_UMODES 461
628 < #define T_UNAUTH 462
629 < #define T_UNDLINE 463
630 < #define T_UNLIMITED 464
631 < #define T_UNRESV 465
632 < #define T_UNXLINE 466
633 < #define T_GLOBOPS 467
634 < #define T_WALLOP 468
635 < #define T_RESTART 469
636 < #define T_SERVICE 470
637 < #define T_SERVICES_NAME 471
638 < #define T_TIMESTAMP 472
639 < #define THROTTLE_TIME 473
640 < #define TOPICBURST 474
641 < #define TRUE_NO_OPER_FLOOD 475
642 < #define TKLINE 476
643 < #define TXLINE 477
644 < #define TRESV 478
645 < #define UNKLINE 479
646 < #define USER 480
647 < #define USE_EGD 481
648 < #define USE_EXCEPT 482
649 < #define USE_INVEX 483
650 < #define USE_KNOCK 484
651 < #define USE_LOGGING 485
652 < #define USE_WHOIS_ACTUALLY 486
653 < #define VHOST 487
654 < #define VHOST6 488
655 < #define XLINE 489
656 < #define WARN 490
657 < #define WARN_NO_NLINE 491
658 < #define T_SIZE 492
659 < #define T_FILE 493
567 > #define SSL_DH_PARAM_FILE 401
568 > #define T_SSL_CLIENT_METHOD 402
569 > #define T_SSL_SERVER_METHOD 403
570 > #define T_SSLV3 404
571 > #define T_TLSV1 405
572 > #define RESV 406
573 > #define RESV_EXEMPT 407
574 > #define SECONDS 408
575 > #define MINUTES 409
576 > #define HOURS 410
577 > #define DAYS 411
578 > #define WEEKS 412
579 > #define SENDQ 413
580 > #define SEND_PASSWORD 414
581 > #define SERVERHIDE 415
582 > #define SERVERINFO 416
583 > #define IRCD_SID 417
584 > #define TKLINE_EXPIRE_NOTICES 418
585 > #define T_SHARED 419
586 > #define T_CLUSTER 420
587 > #define TYPE 421
588 > #define SHORT_MOTD 422
589 > #define SILENT 423
590 > #define SPOOF 424
591 > #define SPOOF_NOTICE 425
592 > #define STATS_E_DISABLED 426
593 > #define STATS_I_OPER_ONLY 427
594 > #define STATS_K_OPER_ONLY 428
595 > #define STATS_O_OPER_ONLY 429
596 > #define STATS_P_OPER_ONLY 430
597 > #define TBOOL 431
598 > #define TMASKED 432
599 > #define T_REJECT 433
600 > #define TS_MAX_DELTA 434
601 > #define TS_WARN_DELTA 435
602 > #define TWODOTS 436
603 > #define T_ALL 437
604 > #define T_BOTS 438
605 > #define T_SOFTCALLERID 439
606 > #define T_CALLERID 440
607 > #define T_CCONN 441
608 > #define T_CCONN_FULL 442
609 > #define T_SSL_CIPHER_LIST 443
610 > #define T_CLIENT_FLOOD 444
611 > #define T_DEAF 445
612 > #define T_DEBUG 446
613 > #define T_DLINE 447
614 > #define T_DRONE 448
615 > #define T_EXTERNAL 449
616 > #define T_FULL 450
617 > #define T_INVISIBLE 451
618 > #define T_IPV4 452
619 > #define T_IPV6 453
620 > #define T_LOCOPS 454
621 > #define T_MAX_CLIENTS 455
622 > #define T_NCHANGE 456
623 > #define T_OPERWALL 457
624 > #define T_REJ 458
625 > #define T_SERVER 459
626 > #define T_SERVNOTICE 460
627 > #define T_SKILL 461
628 > #define T_SPY 462
629 > #define T_SSL 463
630 > #define T_UMODES 464
631 > #define T_UNAUTH 465
632 > #define T_UNDLINE 466
633 > #define T_UNLIMITED 467
634 > #define T_UNRESV 468
635 > #define T_UNXLINE 469
636 > #define T_GLOBOPS 470
637 > #define T_WALLOP 471
638 > #define T_RESTART 472
639 > #define T_SERVICE 473
640 > #define T_SERVICES_NAME 474
641 > #define THROTTLE_TIME 475
642 > #define TOPICBURST 476
643 > #define TRUE_NO_OPER_FLOOD 477
644 > #define TKLINE 478
645 > #define TXLINE 479
646 > #define TRESV 480
647 > #define UNKLINE 481
648 > #define USER 482
649 > #define USE_EGD 483
650 > #define USE_EXCEPT 484
651 > #define USE_INVEX 485
652 > #define USE_KNOCK 486
653 > #define USE_LOGGING 487
654 > #define USE_WHOIS_ACTUALLY 488
655 > #define VHOST 489
656 > #define VHOST6 490
657 > #define XLINE 491
658 > #define WARN 492
659 > #define WARN_NO_NLINE 493
660 > #define T_SIZE 494
661 > #define T_FILE 495
662  
663  
664  
# Line 686 | Line 668 | typedef union YYSTYPE
668   {
669  
670   /* Line 293 of yacc.c  */
671 < #line 132 "ircd_parser.y"
671 > #line 110 "conf_parser.y"
672  
673    int number;
674    char *string;
# Line 694 | Line 676 | typedef union YYSTYPE
676  
677  
678   /* Line 293 of yacc.c  */
679 < #line 698 "ircd_parser.c"
679 > #line 680 "conf_parser.c"
680   } YYSTYPE;
681   # define YYSTYPE_IS_TRIVIAL 1
682   # define yystype YYSTYPE /* obsolescent; will be withdrawn */
# Line 706 | Line 688 | typedef union YYSTYPE
688  
689  
690   /* Line 343 of yacc.c  */
691 < #line 710 "ircd_parser.c"
691 > #line 692 "conf_parser.c"
692  
693   #ifdef short
694   # undef short
# Line 925 | Line 907 | union yyalloc
907   /* YYFINAL -- State number of the termination state.  */
908   #define YYFINAL  2
909   /* YYLAST -- Last index in YYTABLE.  */
910 < #define YYLAST   1207
910 > #define YYLAST   1267
911  
912   /* YYNTOKENS -- Number of terminals.  */
913 < #define YYNTOKENS  244
913 > #define YYNTOKENS  246
914   /* YYNNTS -- Number of nonterminals.  */
915 < #define YYNNTS  301
915 > #define YYNNTS  305
916   /* YYNRULES -- Number of rules.  */
917 < #define YYNRULES  658
917 > #define YYNRULES  668
918   /* YYNRULES -- Number of states.  */
919 < #define YYNSTATES  1291
919 > #define YYNSTATES  1311
920  
921   /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
922   #define YYUNDEFTOK  2
923 < #define YYMAXUTOK   493
923 > #define YYMAXUTOK   495
924  
925   #define YYTRANSLATE(YYX)                                                \
926    ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
# Line 950 | Line 932 | static const yytype_uint8 yytranslate[]
932         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
933         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
934         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
935 <       2,     2,     2,     2,   243,     2,     2,     2,     2,     2,
936 <       2,     2,     2,     2,     2,     2,     2,     2,     2,   239,
937 <       2,   242,     2,     2,     2,     2,     2,     2,     2,     2,
935 >       2,     2,     2,     2,   245,     2,     2,     2,     2,     2,
936 >       2,     2,     2,     2,     2,     2,     2,     2,     2,   241,
937 >       2,   244,     2,     2,     2,     2,     2,     2,     2,     2,
938         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
939         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
940         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
941         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
942         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
943 <       2,     2,     2,   241,     2,   240,     2,     2,     2,     2,
943 >       2,     2,     2,   243,     2,   242,     2,     2,     2,     2,
944         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
945         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
946         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
# Line 995 | Line 977 | static const yytype_uint8 yytranslate[]
977       205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
978       215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
979       225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
980 <     235,   236,   237,   238
980 >     235,   236,   237,   238,   239,   240
981   };
982  
983   #if YYDEBUG
# Line 1009 | Line 991 | static const yytype_uint16 yyprhs[] =
991        61,    65,    69,    73,    77,    81,    82,    84,    87,    91,
992        95,    99,   105,   108,   110,   112,   114,   117,   122,   127,
993       133,   136,   138,   140,   142,   144,   146,   148,   150,   152,
994 <     154,   156,   158,   160,   162,   165,   166,   172,   176,   178,
995 <     180,   182,   187,   192,   197,   202,   207,   212,   217,   222,
996 <     227,   232,   237,   243,   246,   248,   250,   252,   254,   257,
997 <     262,   267,   272,   278,   281,   283,   285,   287,   289,   292,
998 <     297,   302,   303,   310,   313,   315,   317,   319,   321,   324,
999 <     329,   334,   339,   340,   346,   350,   352,   354,   356,   358,
1000 <     360,   362,   364,   366,   367,   374,   377,   379,   381,   383,
1001 <     385,   387,   389,   391,   393,   395,   398,   403,   408,   413,
1002 <     418,   423,   428,   429,   435,   439,   441,   443,   445,   447,
1003 <     449,   451,   453,   455,   457,   459,   461,   463,   465,   467,
1004 <     469,   471,   473,   475,   477,   479,   481,   482,   488,   492,
1005 <     494,   496,   498,   500,   502,   504,   506,   508,   510,   512,
1006 <     514,   516,   518,   520,   522,   524,   526,   528,   530,   531,
1007 <     538,   541,   543,   545,   547,   549,   551,   553,   555,   557,
1008 <     559,   561,   563,   565,   567,   569,   572,   577,   582,   587,
1009 <     592,   597,   602,   607,   612,   617,   622,   627,   632,   637,
1010 <     638,   645,   646,   652,   656,   658,   660,   662,   664,   667,
1011 <     669,   671,   673,   675,   677,   680,   681,   687,   691,   693,
1012 <     695,   699,   704,   709,   710,   717,   720,   722,   724,   726,
1013 <     728,   730,   732,   734,   736,   738,   741,   746,   751,   756,
1014 <     761,   762,   768,   772,   774,   776,   778,   780,   782,   784,
1015 <     786,   788,   790,   792,   797,   802,   807,   808,   815,   818,
1016 <     820,   822,   824,   826,   829,   834,   839,   844,   850,   853,
1017 <     855,   857,   859,   864,   865,   872,   875,   877,   879,   881,
1018 <     883,   886,   891,   896,   897,   903,   907,   909,   911,   913,
1019 <     915,   917,   919,   921,   923,   925,   927,   929,   930,   937,
1020 <     940,   942,   944,   946,   949,   954,   955,   961,   965,   967,
1021 <     969,   971,   973,   975,   977,   979,   981,   983,   985,   987,
1022 <     988,   995,   998,  1000,  1002,  1004,  1006,  1008,  1010,  1012,
1023 <    1014,  1016,  1018,  1020,  1022,  1024,  1027,  1032,  1037,  1042,
1024 <    1047,  1052,  1057,  1062,  1067,  1068,  1074,  1078,  1080,  1082,
1025 <    1084,  1086,  1091,  1096,  1101,  1106,  1107,  1114,  1115,  1121,
1026 <    1125,  1127,  1129,  1132,  1134,  1136,  1138,  1140,  1142,  1147,
1027 <    1152,  1153,  1160,  1163,  1165,  1167,  1169,  1171,  1176,  1181,
1028 <    1187,  1190,  1192,  1194,  1196,  1201,  1202,  1209,  1210,  1216,
1029 <    1220,  1222,  1224,  1227,  1229,  1231,  1233,  1235,  1237,  1242,
1030 <    1247,  1253,  1256,  1258,  1260,  1262,  1264,  1266,  1268,  1270,
1031 <    1272,  1274,  1276,  1278,  1280,  1282,  1284,  1286,  1288,  1290,
1032 <    1292,  1294,  1296,  1298,  1300,  1302,  1304,  1306,  1308,  1310,
1033 <    1312,  1314,  1316,  1318,  1320,  1322,  1324,  1326,  1328,  1330,
1034 <    1332,  1334,  1336,  1338,  1340,  1342,  1344,  1346,  1348,  1350,
1035 <    1352,  1354,  1356,  1358,  1360,  1362,  1367,  1372,  1377,  1382,
1036 <    1387,  1392,  1397,  1402,  1407,  1412,  1417,  1422,  1427,  1432,
1037 <    1437,  1442,  1447,  1452,  1457,  1462,  1467,  1472,  1477,  1482,
1038 <    1487,  1492,  1497,  1502,  1507,  1512,  1517,  1522,  1527,  1532,
1039 <    1537,  1542,  1547,  1552,  1557,  1562,  1567,  1572,  1577,  1582,
1040 <    1587,  1592,  1597,  1598,  1604,  1608,  1610,  1612,  1614,  1616,
1041 <    1618,  1620,  1622,  1624,  1626,  1628,  1630,  1632,  1634,  1636,
1042 <    1638,  1640,  1642,  1644,  1646,  1648,  1650,  1651,  1657,  1661,
1043 <    1663,  1665,  1667,  1669,  1671,  1673,  1675,  1677,  1679,  1681,
1044 <    1683,  1685,  1687,  1689,  1691,  1693,  1695,  1697,  1699,  1701,
1045 <    1703,  1708,  1713,  1718,  1723,  1724,  1731,  1734,  1736,  1738,
1046 <    1740,  1742,  1744,  1746,  1748,  1750,  1755,  1760,  1761,  1767,
1047 <    1771,  1773,  1775,  1777,  1782,  1787,  1788,  1794,  1798,  1800,
1048 <    1802,  1804,  1810,  1813,  1815,  1817,  1819,  1821,  1823,  1825,
1049 <    1827,  1829,  1831,  1833,  1835,  1837,  1839,  1841,  1843,  1845,
1050 <    1847,  1849,  1851,  1853,  1858,  1863,  1868,  1873,  1878,  1883,
1051 <    1888,  1893,  1898,  1903,  1908,  1913,  1918,  1923,  1928,  1933,
1052 <    1938,  1943,  1949,  1952,  1954,  1956,  1958,  1960,  1962,  1964,
1053 <    1966,  1968,  1970,  1975,  1980,  1985,  1990,  1995,  2000
994 >     154,   156,   158,   160,   162,   164,   166,   168,   171,   176,
995 >     181,   185,   187,   189,   191,   195,   197,   199,   201,   206,
996 >     211,   216,   221,   226,   231,   236,   241,   246,   251,   256,
997 >     261,   266,   272,   275,   277,   279,   281,   283,   286,   291,
998 >     296,   301,   307,   310,   312,   314,   316,   319,   324,   325,
999 >     332,   335,   337,   339,   341,   343,   346,   351,   356,   361,
1000 >     362,   368,   372,   374,   376,   378,   380,   382,   384,   386,
1001 >     388,   389,   396,   399,   401,   403,   405,   407,   409,   411,
1002 >     413,   415,   417,   420,   425,   430,   435,   440,   445,   450,
1003 >     451,   457,   461,   463,   465,   467,   469,   471,   473,   475,
1004 >     477,   479,   481,   483,   485,   487,   489,   491,   493,   495,
1005 >     497,   499,   501,   503,   504,   510,   514,   516,   518,   520,
1006 >     522,   524,   526,   528,   530,   532,   534,   536,   538,   540,
1007 >     542,   544,   546,   548,   550,   552,   553,   560,   563,   565,
1008 >     567,   569,   571,   573,   575,   577,   579,   581,   583,   585,
1009 >     587,   589,   591,   594,   599,   604,   609,   614,   619,   624,
1010 >     629,   634,   639,   644,   649,   654,   659,   660,   667,   668,
1011 >     674,   678,   680,   682,   684,   686,   689,   691,   693,   695,
1012 >     697,   699,   702,   703,   709,   713,   715,   717,   721,   726,
1013 >     731,   732,   739,   742,   744,   746,   748,   750,   752,   754,
1014 >     756,   758,   760,   763,   768,   773,   778,   783,   784,   790,
1015 >     794,   796,   798,   800,   802,   804,   806,   808,   810,   812,
1016 >     814,   819,   824,   829,   830,   837,   840,   842,   844,   846,
1017 >     848,   851,   856,   861,   866,   872,   875,   877,   879,   881,
1018 >     886,   887,   894,   897,   899,   901,   903,   905,   908,   913,
1019 >     918,   919,   925,   929,   931,   933,   935,   937,   939,   941,
1020 >     943,   945,   947,   949,   951,   952,   959,   962,   964,   966,
1021 >     968,   971,   976,   977,   983,   987,   989,   991,   993,   995,
1022 >     997,   999,  1001,  1003,  1005,  1007,  1009,  1010,  1017,  1020,
1023 >    1022,  1024,  1026,  1028,  1030,  1032,  1034,  1036,  1038,  1040,
1024 >    1042,  1044,  1046,  1048,  1051,  1056,  1061,  1066,  1071,  1076,
1025 >    1081,  1086,  1091,  1092,  1098,  1102,  1104,  1106,  1108,  1110,
1026 >    1112,  1117,  1122,  1127,  1132,  1137,  1138,  1145,  1146,  1152,
1027 >    1156,  1158,  1160,  1163,  1165,  1167,  1169,  1171,  1173,  1178,
1028 >    1183,  1184,  1191,  1194,  1196,  1198,  1200,  1202,  1207,  1212,
1029 >    1218,  1221,  1223,  1225,  1227,  1232,  1233,  1240,  1241,  1247,
1030 >    1251,  1253,  1255,  1258,  1260,  1262,  1264,  1266,  1268,  1273,
1031 >    1278,  1284,  1287,  1289,  1291,  1293,  1295,  1297,  1299,  1301,
1032 >    1303,  1305,  1307,  1309,  1311,  1313,  1315,  1317,  1319,  1321,
1033 >    1323,  1325,  1327,  1329,  1331,  1333,  1335,  1337,  1339,  1341,
1034 >    1343,  1345,  1347,  1349,  1351,  1353,  1355,  1357,  1359,  1361,
1035 >    1363,  1365,  1367,  1369,  1371,  1373,  1375,  1377,  1379,  1381,
1036 >    1383,  1385,  1387,  1389,  1391,  1393,  1398,  1403,  1408,  1413,
1037 >    1418,  1423,  1428,  1433,  1438,  1443,  1448,  1453,  1458,  1463,
1038 >    1468,  1473,  1478,  1483,  1488,  1493,  1498,  1503,  1508,  1513,
1039 >    1518,  1523,  1528,  1533,  1538,  1543,  1548,  1553,  1558,  1563,
1040 >    1568,  1573,  1578,  1583,  1588,  1593,  1598,  1603,  1608,  1613,
1041 >    1618,  1623,  1628,  1629,  1635,  1639,  1641,  1643,  1645,  1647,
1042 >    1649,  1651,  1653,  1655,  1657,  1659,  1661,  1663,  1665,  1667,
1043 >    1669,  1671,  1673,  1675,  1677,  1679,  1681,  1682,  1688,  1692,
1044 >    1694,  1696,  1698,  1700,  1702,  1704,  1706,  1708,  1710,  1712,
1045 >    1714,  1716,  1718,  1720,  1722,  1724,  1726,  1728,  1730,  1732,
1046 >    1734,  1739,  1744,  1749,  1754,  1755,  1762,  1765,  1767,  1769,
1047 >    1771,  1773,  1775,  1777,  1779,  1781,  1786,  1791,  1792,  1798,
1048 >    1802,  1804,  1806,  1808,  1813,  1818,  1819,  1825,  1829,  1831,
1049 >    1833,  1835,  1841,  1844,  1846,  1848,  1850,  1852,  1854,  1856,
1050 >    1858,  1860,  1862,  1864,  1866,  1868,  1870,  1872,  1874,  1876,
1051 >    1878,  1880,  1882,  1884,  1889,  1894,  1899,  1904,  1909,  1914,
1052 >    1919,  1924,  1929,  1934,  1939,  1944,  1949,  1954,  1959,  1964,
1053 >    1969,  1974,  1980,  1983,  1985,  1987,  1989,  1991,  1993,  1995,
1054 >    1997,  1999,  2001,  2006,  2011,  2016,  2021,  2026,  2031
1055   };
1056  
1057   /* YYRHS -- A `-1'-separated list of the rules' RHS.  */
1058   static const yytype_int16 yyrhs[] =
1059   {
1060 <     245,     0,    -1,    -1,   245,   246,    -1,   274,    -1,   280,
1061 <      -1,   295,    -1,   514,    -1,   313,    -1,   330,    -1,   344,
1062 <      -1,   256,    -1,   535,    -1,   359,    -1,   366,    -1,   370,
1063 <      -1,   380,    -1,   389,    -1,   408,    -1,   418,    -1,   424,
1064 <      -1,   438,    -1,   498,    -1,   428,    -1,   251,    -1,     1,
1065 <     239,    -1,     1,   240,    -1,    -1,   248,    -1,   110,   247,
1066 <      -1,   110,   151,   247,    -1,   110,   152,   247,    -1,   110,
1067 <     153,   247,    -1,   110,   154,   247,    -1,   110,   155,   247,
1068 <      -1,    -1,   250,    -1,   110,   249,    -1,   110,    14,   249,
1069 <      -1,   110,    15,   249,    -1,   110,    16,   249,    -1,    99,
1070 <     241,   252,   240,   239,    -1,   252,   253,    -1,   253,    -1,
1071 <     254,    -1,   255,    -1,     1,   239,    -1,    98,   242,   131,
1072 <     239,    -1,   126,   242,   131,   239,    -1,   159,   241,   257,
1073 <     240,   239,    -1,   257,   258,    -1,   258,    -1,   265,    -1,
1074 <     270,    -1,   273,    -1,   267,    -1,   268,    -1,   269,    -1,
1075 <     272,    -1,   264,    -1,   271,    -1,   266,    -1,   263,    -1,
1076 <     259,    -1,     1,   239,    -1,    -1,   146,   260,   242,   261,
1077 <     239,    -1,   261,   243,   262,    -1,   262,    -1,   147,    -1,
1078 <     148,    -1,   145,   242,   131,   239,    -1,   143,   242,   131,
1079 <     239,    -1,   100,   242,   131,   239,    -1,   160,   242,   131,
1080 <     239,    -1,    31,   242,   131,   239,    -1,   103,   242,   131,
1081 <     239,    -1,   102,   242,   131,   239,    -1,   232,   242,   131,
1082 <     239,    -1,   233,   242,   131,   239,    -1,   197,   242,   110,
1083 <     239,    -1,    67,   242,   174,   239,    -1,     5,   241,   275,
1084 <     240,   239,    -1,   275,   276,    -1,   276,    -1,   277,    -1,
1085 <     279,    -1,   278,    -1,     1,   239,    -1,   100,   242,   131,
1086 <     239,    -1,    41,   242,   131,   239,    -1,    31,   242,   131,
1087 <     239,    -1,    83,   241,   281,   240,   239,    -1,   281,   282,
1088 <      -1,   282,    -1,   283,    -1,   284,    -1,   285,    -1,     1,
1089 <     239,    -1,   230,   242,   174,   239,    -1,   217,   242,   174,
1090 <     239,    -1,    -1,   286,   238,   241,   287,   240,   239,    -1,
1091 <     287,   288,    -1,   288,    -1,   289,    -1,   291,    -1,   290,
1092 <      -1,     1,   239,    -1,   100,   242,   131,   239,    -1,   237,
1093 <     242,   250,   239,    -1,   237,   242,   209,   239,    -1,    -1,
1094 <     164,   292,   242,   293,   239,    -1,   293,   243,   294,    -1,
1095 <     294,    -1,   225,    -1,   115,    -1,    51,    -1,   189,    -1,
1096 <      74,    -1,    72,    -1,   188,    -1,    -1,   115,   296,   241,
1097 <     297,   240,   239,    -1,   297,   298,    -1,   298,    -1,   299,
1098 <      -1,   300,    -1,   301,    -1,   305,    -1,   304,    -1,   302,
1099 <      -1,   303,    -1,   309,    -1,     1,   239,    -1,   100,   242,
1100 <     131,   239,    -1,   225,   242,   131,   239,    -1,   125,   242,
1101 <     131,   239,    -1,    43,   242,   174,   239,    -1,   144,   242,
1102 <     131,   239,    -1,    24,   242,   131,   239,    -1,    -1,   206,
1103 <     306,   242,   307,   239,    -1,   307,   243,   308,    -1,   308,
1104 <      -1,   181,    -1,   184,    -1,   185,    -1,   187,    -1,   188,
1105 <      -1,   192,    -1,    61,    -1,   203,    -1,   198,    -1,   200,
1106 <      -1,   207,    -1,   204,    -1,   191,    -1,   199,    -1,   202,
1107 <      -1,   193,    -1,   213,    -1,   182,    -1,   183,    -1,   196,
1108 <      -1,    -1,    47,   310,   242,   311,   239,    -1,   311,   243,
1109 <     312,    -1,   312,    -1,    57,    -1,   139,    -1,    74,    -1,
1110 <     224,    -1,   189,    -1,   208,    -1,   234,    -1,    51,    -1,
1111 <      32,    -1,   214,    -1,   137,    -1,     5,    -1,   105,    -1,
1112 <     199,    -1,   212,    -1,   119,    -1,   140,    -1,    98,    -1,
1113 <      -1,    24,   314,   241,   315,   240,   239,    -1,   315,   316,
1114 <      -1,   316,    -1,   317,    -1,   327,    -1,   328,    -1,   318,
1115 <      -1,   319,    -1,   329,    -1,   320,    -1,   321,    -1,   322,
1116 <      -1,   323,    -1,   324,    -1,   325,    -1,   326,    -1,     1,
1117 <     239,    -1,   100,   242,   131,   239,    -1,   128,   242,   248,
1118 <     239,    -1,   129,   242,   248,   239,    -1,   113,   242,   110,
1119 <     239,    -1,    26,   242,   248,   239,    -1,    92,   242,   110,
1120 <     239,    -1,    87,   242,   110,   239,    -1,    89,   242,   110,
1121 <     239,    -1,    88,   242,   110,   239,    -1,   156,   242,   250,
1122 <     239,    -1,    22,   242,   110,   239,    -1,    23,   242,   110,
1123 <     239,    -1,   112,   242,   110,   239,    -1,    -1,    82,   331,
1124 <     241,   336,   240,   239,    -1,    -1,    47,   333,   242,   334,
1125 <     239,    -1,   334,   243,   335,    -1,   335,    -1,   205,    -1,
1126 <      61,    -1,   201,    -1,   336,   337,    -1,   337,    -1,   338,
1127 <      -1,   332,    -1,   342,    -1,   343,    -1,     1,   239,    -1,
1128 <      -1,   130,   242,   340,   339,   239,    -1,   340,   243,   341,
1129 <      -1,   341,    -1,   110,    -1,   110,   179,   110,    -1,    71,
1130 <     242,   131,   239,    -1,    66,   242,   131,   239,    -1,    -1,
1131 <      58,   345,   241,   346,   240,   239,    -1,   346,   347,    -1,
1132 <     347,    -1,   348,    -1,   349,    -1,   350,    -1,   352,    -1,
1133 <     356,    -1,   357,    -1,   358,    -1,   351,    -1,     1,   239,
1134 <      -1,   225,   242,   131,   239,    -1,   125,   242,   131,   239,
1135 <      -1,    24,   242,   131,   239,    -1,    43,   242,   174,   239,
1136 <      -1,    -1,    47,   353,   242,   354,   239,    -1,   354,   243,
1137 <     355,    -1,   355,    -1,   168,    -1,    44,    -1,    75,    -1,
1138 <      59,    -1,    20,    -1,   109,    -1,    53,    -1,   150,    -1,
1139 <     101,    -1,   167,   242,   131,   239,    -1,   135,   242,   131,
1140 <     239,    -1,   134,   242,   110,   239,    -1,    -1,   149,   360,
1141 <     241,   361,   240,   239,    -1,   361,   362,    -1,   362,    -1,
1142 <     363,    -1,   364,    -1,   365,    -1,     1,   239,    -1,   133,
1143 <     242,   131,   239,    -1,    21,   242,   131,   239,    -1,   104,
1144 <     242,   131,   239,    -1,   215,   241,   367,   240,   239,    -1,
1145 <     367,   368,    -1,   368,    -1,   369,    -1,     1,    -1,   100,
1146 <     242,   131,   239,    -1,    -1,   162,   371,   241,   372,   240,
1147 <     239,    -1,   372,   373,    -1,   373,    -1,   374,    -1,   375,
1148 <      -1,   376,    -1,     1,   239,    -1,   100,   242,   131,   239,
1149 <      -1,   225,   242,   131,   239,    -1,    -1,   164,   377,   242,
1150 <     378,   239,    -1,   378,   243,   379,    -1,   379,    -1,    74,
1151 <      -1,   224,    -1,   189,    -1,   208,    -1,   234,    -1,   211,
1152 <      -1,   149,    -1,   210,    -1,   196,    -1,   180,    -1,    -1,
1153 <     163,   381,   241,   382,   240,   239,    -1,   382,   383,    -1,
1154 <     383,    -1,   384,    -1,   385,    -1,     1,   239,    -1,   100,
1155 <     242,   131,   239,    -1,    -1,   164,   386,   242,   387,   239,
1156 <      -1,   387,   243,   388,    -1,   388,    -1,    74,    -1,   224,
1157 <      -1,   189,    -1,   208,    -1,   234,    -1,   211,    -1,   149,
1158 <      -1,   210,    -1,   196,    -1,   180,    -1,    -1,    25,   390,
1159 <     241,   391,   240,   239,    -1,   391,   392,    -1,   392,    -1,
1160 <     393,    -1,   394,    -1,   395,    -1,   396,    -1,   397,    -1,
1161 <     399,    -1,   398,    -1,   400,    -1,   405,    -1,   406,    -1,
1162 <     407,    -1,   404,    -1,     1,   239,    -1,   100,   242,   131,
1163 <     239,    -1,    66,   242,   131,   239,    -1,   232,   242,   131,
1164 <     239,    -1,   157,   242,   131,   239,    -1,     3,   242,   131,
1165 <     239,    -1,   130,   242,   110,   239,    -1,     6,   242,   194,
1166 <     239,    -1,     6,   242,   195,   239,    -1,    -1,    47,   401,
1167 <     242,   402,   239,    -1,   402,   243,   403,    -1,   403,    -1,
1168 <      10,    -1,    12,    -1,   219,    -1,    43,   242,   174,   239,
1169 <      -1,    68,   242,   131,   239,    -1,    80,   242,   131,   239,
1170 <      -1,    24,   242,   131,   239,    -1,    -1,    72,   409,   241,
1171 <     414,   240,   239,    -1,    -1,   164,   411,   242,   412,   239,
1172 <      -1,   412,   243,   413,    -1,   413,    -1,   136,    -1,   414,
1173 <     415,    -1,   415,    -1,   416,    -1,   417,    -1,   410,    -1,
1174 <       1,    -1,   225,   242,   131,   239,    -1,   133,   242,   131,
1175 <     239,    -1,    -1,    30,   419,   241,   420,   240,   239,    -1,
1176 <     420,   421,    -1,   421,    -1,   422,    -1,   423,    -1,     1,
1177 <      -1,    71,   242,   131,   239,    -1,   133,   242,   131,   239,
1178 <      -1,    45,   241,   425,   240,   239,    -1,   425,   426,    -1,
1179 <     426,    -1,   427,    -1,     1,    -1,    71,   242,   131,   239,
1180 <      -1,    -1,    49,   429,   241,   434,   240,   239,    -1,    -1,
1181 <     164,   431,   242,   432,   239,    -1,   432,   243,   433,    -1,
1182 <     433,    -1,   136,    -1,   434,   435,    -1,   435,    -1,   436,
1183 <      -1,   437,    -1,   430,    -1,     1,    -1,   100,   242,   131,
1184 <     239,    -1,   133,   242,   131,   239,    -1,    50,   241,   439,
1185 <     240,   239,    -1,   439,   440,    -1,   440,    -1,   448,    -1,
1186 <     449,    -1,   451,    -1,   452,    -1,   453,    -1,   454,    -1,
1187 <     455,    -1,   456,    -1,   457,    -1,   458,    -1,   447,    -1,
1188 <     460,    -1,   461,    -1,   462,    -1,   463,    -1,   478,    -1,
1189 <     465,    -1,   467,    -1,   469,    -1,   468,    -1,   472,    -1,
1190 <     466,    -1,   473,    -1,   474,    -1,   475,    -1,   476,    -1,
1191 <     477,    -1,   490,    -1,   479,    -1,   480,    -1,   481,    -1,
1192 <     486,    -1,   470,    -1,   471,    -1,   496,    -1,   494,    -1,
1193 <     495,    -1,   450,    -1,   497,    -1,   485,    -1,   459,    -1,
1194 <     483,    -1,   484,    -1,   446,    -1,   442,    -1,   443,    -1,
1195 <     444,    -1,   445,    -1,   464,    -1,   441,    -1,   482,    -1,
1196 <       1,    -1,    94,   242,   110,   239,    -1,    55,   242,   110,
1197 <     239,    -1,    56,   242,   110,   239,    -1,   231,   242,   174,
1198 <     239,    -1,   138,   242,   248,   239,    -1,   161,   242,   174,
1199 <     239,    -1,    73,   242,   248,   239,    -1,    65,   242,   174,
1200 <     239,    -1,    69,   242,   174,   239,    -1,    37,   242,   174,
1201 <     239,    -1,    46,   242,   174,   239,    -1,     8,   242,   174,
1202 <     239,    -1,    91,   242,   248,   239,    -1,    90,   242,   110,
1203 <     239,    -1,    84,   242,   110,   239,    -1,     9,   242,   248,
1204 <     239,    -1,   178,   242,   248,   239,    -1,   177,   242,   248,
1205 <     239,    -1,    60,   242,   110,   239,    -1,    77,   242,   174,
1206 <     239,    -1,    76,   242,   131,   239,    -1,    70,   242,   174,
1207 <     239,    -1,   236,   242,   174,   239,    -1,   169,   242,   174,
1208 <     239,    -1,   172,   242,   174,   239,    -1,   173,   242,   174,
1209 <     239,    -1,   171,   242,   174,   239,    -1,   171,   242,   175,
1210 <     239,    -1,   170,   242,   174,   239,    -1,   170,   242,   175,
1211 <     239,    -1,   123,   242,   248,   239,    -1,    19,   242,   248,
1212 <     239,    -1,   116,   242,   174,   239,    -1,   124,   242,   248,
1213 <     239,    -1,   165,   242,   174,   239,    -1,   108,   242,   174,
1214 <     239,    -1,   220,   242,   174,   239,    -1,   118,   242,   174,
1215 <     239,    -1,    95,   242,   131,   239,    -1,    38,   242,   110,
1216 <     239,    -1,    93,   242,   110,   239,    -1,   226,   242,   174,
1217 <     239,    -1,    40,   242,   131,   239,    -1,   216,   242,   131,
1218 <     239,    -1,   127,   242,   174,   239,    -1,    33,   242,   174,
1219 <     239,    -1,   218,   242,   248,   239,    -1,    -1,   120,   487,
1220 <     242,   488,   239,    -1,   488,   243,   489,    -1,   489,    -1,
1221 <     181,    -1,   184,    -1,   185,    -1,   187,    -1,   188,    -1,
1222 <     192,    -1,    61,    -1,   203,    -1,   198,    -1,   200,    -1,
1223 <     207,    -1,   204,    -1,   191,    -1,   199,    -1,   202,    -1,
1224 <     193,    -1,   213,    -1,   182,    -1,   183,    -1,   196,    -1,
1225 <      -1,   117,   491,   242,   492,   239,    -1,   492,   243,   493,
1226 <      -1,   493,    -1,   181,    -1,   184,    -1,   185,    -1,   187,
1227 <      -1,   188,    -1,   192,    -1,   203,    -1,    61,    -1,   198,
1228 <      -1,   200,    -1,   207,    -1,   204,    -1,   191,    -1,   199,
1229 <      -1,   202,    -1,   193,    -1,   213,    -1,   182,    -1,   183,
1230 <      -1,   196,    -1,    96,   242,   110,   239,    -1,    97,   242,
1231 <     110,   239,    -1,    27,   242,   110,   239,    -1,   186,   242,
1232 <     250,   239,    -1,    -1,    52,   499,   241,   500,   240,   239,
1233 <      -1,   500,   501,    -1,   501,    -1,   502,    -1,   503,    -1,
1234 <     504,    -1,   508,    -1,   509,    -1,   510,    -1,     1,    -1,
1235 <      42,   242,   174,   239,    -1,    39,   242,   248,   239,    -1,
1236 <      -1,    83,   505,   242,   506,   239,    -1,   506,   243,   507,
1237 <      -1,   507,    -1,   176,    -1,    11,    -1,   225,   242,   131,
1238 <     239,    -1,   100,   242,   131,   239,    -1,    -1,     4,   511,
1239 <     242,   512,   239,    -1,   512,   243,   513,    -1,   513,    -1,
1240 <     176,    -1,    11,    -1,    21,   241,   515,   240,   239,    -1,
1241 <     515,   516,    -1,   516,    -1,   519,    -1,   520,    -1,   521,
1242 <      -1,   522,    -1,   527,    -1,   523,    -1,   524,    -1,   525,
1243 <      -1,   526,    -1,   528,    -1,   529,    -1,   530,    -1,   518,
1244 <      -1,   531,    -1,   532,    -1,   533,    -1,   534,    -1,   517,
1245 <      -1,     1,    -1,    34,   242,   174,   239,    -1,   141,   242,
1246 <     174,   239,    -1,    36,   242,   174,   239,    -1,   227,   242,
1247 <     174,   239,    -1,   228,   242,   174,   239,    -1,   229,   242,
1248 <     174,   239,    -1,    78,   242,   248,   239,    -1,    79,   242,
1249 <     248,   239,    -1,    86,   242,   110,   239,    -1,   132,   242,
1250 <     174,   239,    -1,    85,   242,   110,   239,    -1,    29,   242,
1251 <     110,   239,    -1,    28,   242,   110,   239,    -1,   106,   242,
1252 <     174,   239,    -1,   107,   242,   174,   239,    -1,    13,   242,
1253 <     174,   239,    -1,   121,   242,   110,   239,    -1,   122,   242,
1254 <     248,   239,    -1,   158,   241,   536,   240,   239,    -1,   536,
1255 <     537,    -1,   537,    -1,   538,    -1,   539,    -1,   541,    -1,
1256 <     543,    -1,   542,    -1,   540,    -1,   544,    -1,     1,    -1,
1257 <      48,   242,   174,   239,    -1,    64,   242,   174,   239,    -1,
1258 <      62,   242,   131,   239,    -1,    81,   242,   248,   239,    -1,
1259 <      61,   242,   174,   239,    -1,    35,   242,   174,   239,    -1,
1260 <      63,   242,   174,   239,    -1
1060 >     247,     0,    -1,    -1,   247,   248,    -1,   280,    -1,   286,
1061 >      -1,   300,    -1,   520,    -1,   318,    -1,   335,    -1,   349,
1062 >      -1,   258,    -1,   541,    -1,   364,    -1,   371,    -1,   375,
1063 >      -1,   385,    -1,   394,    -1,   414,    -1,   424,    -1,   430,
1064 >      -1,   444,    -1,   504,    -1,   434,    -1,   253,    -1,     1,
1065 >     241,    -1,     1,   242,    -1,    -1,   250,    -1,   110,   249,
1066 >      -1,   110,   153,   249,    -1,   110,   154,   249,    -1,   110,
1067 >     155,   249,    -1,   110,   156,   249,    -1,   110,   157,   249,
1068 >      -1,    -1,   252,    -1,   110,   251,    -1,   110,    14,   251,
1069 >      -1,   110,    15,   251,    -1,   110,    16,   251,    -1,    99,
1070 >     243,   254,   242,   241,    -1,   254,   255,    -1,   255,    -1,
1071 >     256,    -1,   257,    -1,     1,   241,    -1,    98,   244,   131,
1072 >     241,    -1,   126,   244,   131,   241,    -1,   161,   243,   259,
1073 >     242,   241,    -1,   259,   260,    -1,   260,    -1,   271,    -1,
1074 >     276,    -1,   279,    -1,   273,    -1,   274,    -1,   275,    -1,
1075 >     278,    -1,   269,    -1,   268,    -1,   277,    -1,   272,    -1,
1076 >     267,    -1,   261,    -1,   262,    -1,   270,    -1,     1,   241,
1077 >      -1,   147,   244,   263,   241,    -1,   148,   244,   265,   241,
1078 >      -1,   263,   245,   264,    -1,   264,    -1,   149,    -1,   150,
1079 >      -1,   265,   245,   266,    -1,   266,    -1,   149,    -1,   150,
1080 >      -1,   145,   244,   131,   241,    -1,   143,   244,   131,   241,
1081 >      -1,   146,   244,   131,   241,    -1,   188,   244,   131,   241,
1082 >      -1,   100,   244,   131,   241,    -1,   162,   244,   131,   241,
1083 >      -1,    31,   244,   131,   241,    -1,   103,   244,   131,   241,
1084 >      -1,   102,   244,   131,   241,    -1,   234,   244,   131,   241,
1085 >      -1,   235,   244,   131,   241,    -1,   200,   244,   110,   241,
1086 >      -1,    67,   244,   176,   241,    -1,     5,   243,   281,   242,
1087 >     241,    -1,   281,   282,    -1,   282,    -1,   283,    -1,   285,
1088 >      -1,   284,    -1,     1,   241,    -1,   100,   244,   131,   241,
1089 >      -1,    41,   244,   131,   241,    -1,    31,   244,   131,   241,
1090 >      -1,    83,   243,   287,   242,   241,    -1,   287,   288,    -1,
1091 >     288,    -1,   289,    -1,   290,    -1,     1,   241,    -1,   232,
1092 >     244,   176,   241,    -1,    -1,   291,   240,   243,   292,   242,
1093 >     241,    -1,   292,   293,    -1,   293,    -1,   294,    -1,   296,
1094 >      -1,   295,    -1,     1,   241,    -1,   100,   244,   131,   241,
1095 >      -1,   239,   244,   252,   241,    -1,   239,   244,   212,   241,
1096 >      -1,    -1,   166,   297,   244,   298,   241,    -1,   298,   245,
1097 >     299,    -1,   299,    -1,   227,    -1,   115,    -1,    51,    -1,
1098 >     192,    -1,    74,    -1,    72,    -1,   191,    -1,    -1,   115,
1099 >     301,   243,   302,   242,   241,    -1,   302,   303,    -1,   303,
1100 >      -1,   304,    -1,   305,    -1,   306,    -1,   310,    -1,   309,
1101 >      -1,   307,    -1,   308,    -1,   314,    -1,     1,   241,    -1,
1102 >     100,   244,   131,   241,    -1,   227,   244,   131,   241,    -1,
1103 >     125,   244,   131,   241,    -1,    43,   244,   176,   241,    -1,
1104 >     144,   244,   131,   241,    -1,    24,   244,   131,   241,    -1,
1105 >      -1,   209,   311,   244,   312,   241,    -1,   312,   245,   313,
1106 >      -1,   313,    -1,   183,    -1,   186,    -1,   187,    -1,   190,
1107 >      -1,   191,    -1,   195,    -1,    61,    -1,   206,    -1,   201,
1108 >      -1,   203,    -1,   210,    -1,   207,    -1,   194,    -1,   202,
1109 >      -1,   205,    -1,   196,    -1,   216,    -1,   184,    -1,   185,
1110 >      -1,   199,    -1,    -1,    47,   315,   244,   316,   241,    -1,
1111 >     316,   245,   317,    -1,   317,    -1,    57,    -1,   139,    -1,
1112 >      74,    -1,   226,    -1,   192,    -1,   211,    -1,   236,    -1,
1113 >      51,    -1,    32,    -1,   217,    -1,   137,    -1,     5,    -1,
1114 >     105,    -1,   202,    -1,   215,    -1,   119,    -1,   140,    -1,
1115 >      98,    -1,    -1,    24,   319,   243,   320,   242,   241,    -1,
1116 >     320,   321,    -1,   321,    -1,   322,    -1,   332,    -1,   333,
1117 >      -1,   323,    -1,   324,    -1,   334,    -1,   325,    -1,   326,
1118 >      -1,   327,    -1,   328,    -1,   329,    -1,   330,    -1,   331,
1119 >      -1,     1,   241,    -1,   100,   244,   131,   241,    -1,   128,
1120 >     244,   250,   241,    -1,   129,   244,   250,   241,    -1,   113,
1121 >     244,   110,   241,    -1,    26,   244,   250,   241,    -1,    92,
1122 >     244,   110,   241,    -1,    87,   244,   110,   241,    -1,    89,
1123 >     244,   110,   241,    -1,    88,   244,   110,   241,    -1,   158,
1124 >     244,   252,   241,    -1,    22,   244,   110,   241,    -1,    23,
1125 >     244,   110,   241,    -1,   112,   244,   110,   241,    -1,    -1,
1126 >      82,   336,   243,   341,   242,   241,    -1,    -1,    47,   338,
1127 >     244,   339,   241,    -1,   339,   245,   340,    -1,   340,    -1,
1128 >     208,    -1,    61,    -1,   204,    -1,   341,   342,    -1,   342,
1129 >      -1,   343,    -1,   337,    -1,   347,    -1,   348,    -1,     1,
1130 >     241,    -1,    -1,   130,   244,   345,   344,   241,    -1,   345,
1131 >     245,   346,    -1,   346,    -1,   110,    -1,   110,   181,   110,
1132 >      -1,    71,   244,   131,   241,    -1,    66,   244,   131,   241,
1133 >      -1,    -1,    58,   350,   243,   351,   242,   241,    -1,   351,
1134 >     352,    -1,   352,    -1,   353,    -1,   354,    -1,   355,    -1,
1135 >     357,    -1,   361,    -1,   362,    -1,   363,    -1,   356,    -1,
1136 >       1,   241,    -1,   227,   244,   131,   241,    -1,   125,   244,
1137 >     131,   241,    -1,    24,   244,   131,   241,    -1,    43,   244,
1138 >     176,   241,    -1,    -1,    47,   358,   244,   359,   241,    -1,
1139 >     359,   245,   360,    -1,   360,    -1,   170,    -1,    44,    -1,
1140 >      75,    -1,    59,    -1,    20,    -1,   109,    -1,    53,    -1,
1141 >     152,    -1,   101,    -1,   169,   244,   131,   241,    -1,   135,
1142 >     244,   131,   241,    -1,   134,   244,   110,   241,    -1,    -1,
1143 >     151,   365,   243,   366,   242,   241,    -1,   366,   367,    -1,
1144 >     367,    -1,   368,    -1,   369,    -1,   370,    -1,     1,   241,
1145 >      -1,   133,   244,   131,   241,    -1,    21,   244,   131,   241,
1146 >      -1,   104,   244,   131,   241,    -1,   218,   243,   372,   242,
1147 >     241,    -1,   372,   373,    -1,   373,    -1,   374,    -1,     1,
1148 >      -1,   100,   244,   131,   241,    -1,    -1,   164,   376,   243,
1149 >     377,   242,   241,    -1,   377,   378,    -1,   378,    -1,   379,
1150 >      -1,   380,    -1,   381,    -1,     1,   241,    -1,   100,   244,
1151 >     131,   241,    -1,   227,   244,   131,   241,    -1,    -1,   166,
1152 >     382,   244,   383,   241,    -1,   383,   245,   384,    -1,   384,
1153 >      -1,    74,    -1,   226,    -1,   192,    -1,   211,    -1,   236,
1154 >      -1,   214,    -1,   151,    -1,   213,    -1,   199,    -1,   182,
1155 >      -1,    -1,   165,   386,   243,   387,   242,   241,    -1,   387,
1156 >     388,    -1,   388,    -1,   389,    -1,   390,    -1,     1,   241,
1157 >      -1,   100,   244,   131,   241,    -1,    -1,   166,   391,   244,
1158 >     392,   241,    -1,   392,   245,   393,    -1,   393,    -1,    74,
1159 >      -1,   226,    -1,   192,    -1,   211,    -1,   236,    -1,   214,
1160 >      -1,   151,    -1,   213,    -1,   199,    -1,   182,    -1,    -1,
1161 >      25,   395,   243,   396,   242,   241,    -1,   396,   397,    -1,
1162 >     397,    -1,   398,    -1,   399,    -1,   400,    -1,   401,    -1,
1163 >     402,    -1,   404,    -1,   403,    -1,   413,    -1,   405,    -1,
1164 >     410,    -1,   411,    -1,   412,    -1,   409,    -1,     1,   241,
1165 >      -1,   100,   244,   131,   241,    -1,    66,   244,   131,   241,
1166 >      -1,   234,   244,   131,   241,    -1,   159,   244,   131,   241,
1167 >      -1,     3,   244,   131,   241,    -1,   130,   244,   110,   241,
1168 >      -1,     6,   244,   197,   241,    -1,     6,   244,   198,   241,
1169 >      -1,    -1,    47,   406,   244,   407,   241,    -1,   407,   245,
1170 >     408,    -1,   408,    -1,    10,    -1,    12,    -1,   221,    -1,
1171 >     208,    -1,    43,   244,   176,   241,    -1,    68,   244,   131,
1172 >     241,    -1,    80,   244,   131,   241,    -1,    24,   244,   131,
1173 >     241,    -1,   188,   244,   131,   241,    -1,    -1,    72,   415,
1174 >     243,   420,   242,   241,    -1,    -1,   166,   417,   244,   418,
1175 >     241,    -1,   418,   245,   419,    -1,   419,    -1,   136,    -1,
1176 >     420,   421,    -1,   421,    -1,   422,    -1,   423,    -1,   416,
1177 >      -1,     1,    -1,   227,   244,   131,   241,    -1,   133,   244,
1178 >     131,   241,    -1,    -1,    30,   425,   243,   426,   242,   241,
1179 >      -1,   426,   427,    -1,   427,    -1,   428,    -1,   429,    -1,
1180 >       1,    -1,    71,   244,   131,   241,    -1,   133,   244,   131,
1181 >     241,    -1,    45,   243,   431,   242,   241,    -1,   431,   432,
1182 >      -1,   432,    -1,   433,    -1,     1,    -1,    71,   244,   131,
1183 >     241,    -1,    -1,    49,   435,   243,   440,   242,   241,    -1,
1184 >      -1,   166,   437,   244,   438,   241,    -1,   438,   245,   439,
1185 >      -1,   439,    -1,   136,    -1,   440,   441,    -1,   441,    -1,
1186 >     442,    -1,   443,    -1,   436,    -1,     1,    -1,   100,   244,
1187 >     131,   241,    -1,   133,   244,   131,   241,    -1,    50,   243,
1188 >     445,   242,   241,    -1,   445,   446,    -1,   446,    -1,   454,
1189 >      -1,   455,    -1,   457,    -1,   458,    -1,   459,    -1,   460,
1190 >      -1,   461,    -1,   462,    -1,   463,    -1,   464,    -1,   453,
1191 >      -1,   466,    -1,   467,    -1,   468,    -1,   469,    -1,   484,
1192 >      -1,   471,    -1,   473,    -1,   475,    -1,   474,    -1,   478,
1193 >      -1,   472,    -1,   479,    -1,   480,    -1,   481,    -1,   482,
1194 >      -1,   483,    -1,   496,    -1,   485,    -1,   486,    -1,   487,
1195 >      -1,   492,    -1,   476,    -1,   477,    -1,   502,    -1,   500,
1196 >      -1,   501,    -1,   456,    -1,   503,    -1,   491,    -1,   465,
1197 >      -1,   489,    -1,   490,    -1,   452,    -1,   448,    -1,   449,
1198 >      -1,   450,    -1,   451,    -1,   470,    -1,   447,    -1,   488,
1199 >      -1,     1,    -1,    94,   244,   110,   241,    -1,    55,   244,
1200 >     110,   241,    -1,    56,   244,   110,   241,    -1,   233,   244,
1201 >     176,   241,    -1,   138,   244,   250,   241,    -1,   163,   244,
1202 >     176,   241,    -1,    73,   244,   250,   241,    -1,    65,   244,
1203 >     176,   241,    -1,    69,   244,   176,   241,    -1,    37,   244,
1204 >     176,   241,    -1,    46,   244,   176,   241,    -1,     8,   244,
1205 >     176,   241,    -1,    91,   244,   250,   241,    -1,    90,   244,
1206 >     110,   241,    -1,    84,   244,   110,   241,    -1,     9,   244,
1207 >     250,   241,    -1,   180,   244,   250,   241,    -1,   179,   244,
1208 >     250,   241,    -1,    60,   244,   110,   241,    -1,    77,   244,
1209 >     176,   241,    -1,    76,   244,   131,   241,    -1,    70,   244,
1210 >     176,   241,    -1,   238,   244,   176,   241,    -1,   171,   244,
1211 >     176,   241,    -1,   174,   244,   176,   241,    -1,   175,   244,
1212 >     176,   241,    -1,   173,   244,   176,   241,    -1,   173,   244,
1213 >     177,   241,    -1,   172,   244,   176,   241,    -1,   172,   244,
1214 >     177,   241,    -1,   123,   244,   250,   241,    -1,    19,   244,
1215 >     250,   241,    -1,   116,   244,   176,   241,    -1,   124,   244,
1216 >     250,   241,    -1,   167,   244,   176,   241,    -1,   108,   244,
1217 >     176,   241,    -1,   222,   244,   176,   241,    -1,   118,   244,
1218 >     176,   241,    -1,    95,   244,   131,   241,    -1,    38,   244,
1219 >     110,   241,    -1,    93,   244,   110,   241,    -1,   228,   244,
1220 >     176,   241,    -1,    40,   244,   131,   241,    -1,   219,   244,
1221 >     131,   241,    -1,   127,   244,   176,   241,    -1,    33,   244,
1222 >     176,   241,    -1,   220,   244,   250,   241,    -1,    -1,   120,
1223 >     493,   244,   494,   241,    -1,   494,   245,   495,    -1,   495,
1224 >      -1,   183,    -1,   186,    -1,   187,    -1,   190,    -1,   191,
1225 >      -1,   195,    -1,    61,    -1,   206,    -1,   201,    -1,   203,
1226 >      -1,   210,    -1,   207,    -1,   194,    -1,   202,    -1,   205,
1227 >      -1,   196,    -1,   216,    -1,   184,    -1,   185,    -1,   199,
1228 >      -1,    -1,   117,   497,   244,   498,   241,    -1,   498,   245,
1229 >     499,    -1,   499,    -1,   183,    -1,   186,    -1,   187,    -1,
1230 >     190,    -1,   191,    -1,   195,    -1,   206,    -1,    61,    -1,
1231 >     201,    -1,   203,    -1,   210,    -1,   207,    -1,   194,    -1,
1232 >     202,    -1,   205,    -1,   196,    -1,   216,    -1,   184,    -1,
1233 >     185,    -1,   199,    -1,    96,   244,   110,   241,    -1,    97,
1234 >     244,   110,   241,    -1,    27,   244,   110,   241,    -1,   189,
1235 >     244,   252,   241,    -1,    -1,    52,   505,   243,   506,   242,
1236 >     241,    -1,   506,   507,    -1,   507,    -1,   508,    -1,   509,
1237 >      -1,   510,    -1,   514,    -1,   515,    -1,   516,    -1,     1,
1238 >      -1,    42,   244,   176,   241,    -1,    39,   244,   250,   241,
1239 >      -1,    -1,    83,   511,   244,   512,   241,    -1,   512,   245,
1240 >     513,    -1,   513,    -1,   178,    -1,    11,    -1,   227,   244,
1241 >     131,   241,    -1,   100,   244,   131,   241,    -1,    -1,     4,
1242 >     517,   244,   518,   241,    -1,   518,   245,   519,    -1,   519,
1243 >      -1,   178,    -1,    11,    -1,    21,   243,   521,   242,   241,
1244 >      -1,   521,   522,    -1,   522,    -1,   525,    -1,   526,    -1,
1245 >     527,    -1,   528,    -1,   533,    -1,   529,    -1,   530,    -1,
1246 >     531,    -1,   532,    -1,   534,    -1,   535,    -1,   536,    -1,
1247 >     524,    -1,   537,    -1,   538,    -1,   539,    -1,   540,    -1,
1248 >     523,    -1,     1,    -1,    34,   244,   176,   241,    -1,   141,
1249 >     244,   176,   241,    -1,    36,   244,   176,   241,    -1,   229,
1250 >     244,   176,   241,    -1,   230,   244,   176,   241,    -1,   231,
1251 >     244,   176,   241,    -1,    78,   244,   250,   241,    -1,    79,
1252 >     244,   250,   241,    -1,    86,   244,   110,   241,    -1,   132,
1253 >     244,   176,   241,    -1,    85,   244,   110,   241,    -1,    29,
1254 >     244,   110,   241,    -1,    28,   244,   110,   241,    -1,   106,
1255 >     244,   176,   241,    -1,   107,   244,   176,   241,    -1,    13,
1256 >     244,   176,   241,    -1,   121,   244,   110,   241,    -1,   122,
1257 >     244,   250,   241,    -1,   160,   243,   542,   242,   241,    -1,
1258 >     542,   543,    -1,   543,    -1,   544,    -1,   545,    -1,   547,
1259 >      -1,   549,    -1,   548,    -1,   546,    -1,   550,    -1,     1,
1260 >      -1,    48,   244,   176,   241,    -1,    64,   244,   176,   241,
1261 >      -1,    62,   244,   131,   241,    -1,    81,   244,   250,   241,
1262 >      -1,    61,   244,   176,   241,    -1,    35,   244,   176,   241,
1263 >      -1,    63,   244,   176,   241,    -1
1264   };
1265  
1266   /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
1267   static const yytype_uint16 yyrline[] =
1268   {
1269 <       0,   374,   374,   375,   378,   379,   380,   381,   382,   383,
1270 <     384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
1271 <     394,   395,   396,   397,   398,   399,   400,   404,   404,   405,
1272 <     409,   413,   417,   421,   425,   431,   431,   432,   433,   434,
1273 <     435,   442,   445,   445,   446,   446,   446,   448,   454,   461,
1274 <     463,   463,   464,   464,   465,   465,   466,   466,   467,   468,
1275 <     468,   469,   469,   470,   471,   475,   474,   493,   493,   494,
1276 <     500,   508,   542,   602,   617,   632,   641,   655,   664,   692,
1277 <     722,   745,   754,   756,   756,   757,   757,   758,   758,   760,
1278 <     769,   778,   790,   791,   791,   793,   793,   793,   794,   796,
1279 <     802,   809,   809,   819,   820,   822,   822,   823,   823,   825,
1280 <     830,   833,   839,   838,   844,   844,   845,   849,   853,   857,
1281 <     861,   865,   869,   880,   879,   977,   977,   978,   978,   978,
1282 <     979,   979,   979,   980,   980,   980,   982,   994,  1031,  1043,
1283 <    1054,  1096,  1106,  1105,  1111,  1111,  1112,  1116,  1120,  1124,
1284 <    1128,  1132,  1136,  1140,  1144,  1148,  1152,  1156,  1160,  1164,
1285 <    1168,  1172,  1176,  1180,  1184,  1188,  1195,  1194,  1200,  1200,
1286 <    1201,  1205,  1209,  1213,  1217,  1221,  1225,  1229,  1233,  1237,
1287 <    1241,  1245,  1249,  1253,  1257,  1261,  1265,  1269,  1280,  1279,
1288 <    1329,  1329,  1330,  1331,  1331,  1332,  1333,  1334,  1335,  1336,
1289 <    1337,  1338,  1339,  1340,  1341,  1342,  1344,  1353,  1359,  1365,
1290 <    1371,  1377,  1383,  1389,  1395,  1401,  1407,  1413,  1419,  1429,
1291 <    1428,  1445,  1444,  1449,  1449,  1450,  1454,  1458,  1466,  1466,
1292 <    1467,  1467,  1467,  1467,  1467,  1469,  1469,  1471,  1471,  1473,
1293 <    1487,  1507,  1516,  1529,  1528,  1597,  1597,  1598,  1598,  1598,
1294 <    1598,  1599,  1599,  1599,  1600,  1600,  1602,  1639,  1652,  1661,
1295 <    1673,  1672,  1676,  1676,  1677,  1681,  1685,  1689,  1693,  1697,
1296 <    1701,  1705,  1709,  1716,  1735,  1745,  1759,  1758,  1774,  1774,
1297 <    1775,  1775,  1775,  1775,  1777,  1786,  1801,  1814,  1816,  1816,
1298 <    1817,  1817,  1819,  1835,  1834,  1850,  1850,  1851,  1851,  1851,
1299 <    1851,  1853,  1862,  1885,  1884,  1890,  1890,  1891,  1895,  1899,
1300 <    1903,  1907,  1911,  1915,  1919,  1923,  1927,  1937,  1936,  1953,
1301 <    1953,  1954,  1954,  1954,  1956,  1963,  1962,  1968,  1968,  1969,
1302 <    1973,  1977,  1981,  1985,  1989,  1993,  1997,  2001,  2005,  2015,
1303 <    2014,  2143,  2143,  2144,  2144,  2144,  2145,  2145,  2146,  2146,
1304 <    2147,  2147,  2147,  2148,  2148,  2149,  2151,  2163,  2172,  2198,
1305 <    2216,  2234,  2240,  2244,  2253,  2252,  2256,  2256,  2257,  2261,
1306 <    2265,  2271,  2282,  2295,  2308,  2321,  2320,  2384,  2383,  2387,
1307 <    2387,  2388,  2394,  2394,  2395,  2395,  2395,  2395,  2397,  2416,
1308 <    2426,  2425,  2448,  2448,  2449,  2449,  2449,  2451,  2457,  2466,
1309 <    2468,  2468,  2469,  2469,  2471,  2490,  2489,  2537,  2536,  2540,
1310 <    2540,  2541,  2547,  2547,  2548,  2548,  2548,  2548,  2550,  2556,
1311 <    2565,  2568,  2568,  2569,  2569,  2570,  2570,  2571,  2571,  2572,
1312 <    2572,  2573,  2573,  2574,  2574,  2575,  2575,  2576,  2576,  2577,
1313 <    2577,  2578,  2578,  2579,  2579,  2580,  2580,  2581,  2581,  2582,
1314 <    2583,  2583,  2584,  2584,  2585,  2585,  2586,  2586,  2587,  2587,
1315 <    2588,  2589,  2590,  2590,  2591,  2592,  2593,  2593,  2594,  2594,
1316 <    2595,  2595,  2596,  2596,  2597,  2600,  2605,  2610,  2615,  2620,
1317 <    2625,  2630,  2635,  2640,  2645,  2650,  2655,  2660,  2665,  2670,
1318 <    2675,  2680,  2685,  2691,  2702,  2707,  2716,  2721,  2726,  2731,
1319 <    2736,  2741,  2744,  2749,  2752,  2757,  2762,  2767,  2772,  2777,
1320 <    2782,  2787,  2792,  2797,  2808,  2813,  2818,  2823,  2832,  2841,
1321 <    2846,  2851,  2857,  2856,  2861,  2861,  2862,  2865,  2868,  2871,
1322 <    2874,  2877,  2880,  2883,  2886,  2889,  2892,  2895,  2898,  2901,
1323 <    2904,  2907,  2910,  2913,  2916,  2919,  2925,  2924,  2929,  2929,
1324 <    2930,  2933,  2936,  2939,  2942,  2945,  2948,  2951,  2954,  2957,
1325 <    2960,  2963,  2966,  2969,  2972,  2975,  2978,  2981,  2984,  2987,
1326 <    2992,  2997,  3002,  3007,  3017,  3016,  3040,  3040,  3041,  3042,
1327 <    3043,  3044,  3045,  3046,  3047,  3049,  3055,  3062,  3061,  3066,
1328 <    3066,  3067,  3071,  3077,  3111,  3121,  3120,  3170,  3170,  3171,
1329 <    3175,  3184,  3187,  3187,  3188,  3188,  3189,  3189,  3190,  3190,
1330 <    3191,  3191,  3192,  3192,  3193,  3194,  3194,  3195,  3195,  3196,
1331 <    3196,  3197,  3197,  3199,  3204,  3209,  3214,  3219,  3224,  3229,
1332 <    3234,  3239,  3244,  3249,  3254,  3259,  3264,  3269,  3274,  3279,
1333 <    3284,  3292,  3295,  3295,  3296,  3296,  3297,  3298,  3299,  3299,
1334 <    3300,  3301,  3303,  3309,  3315,  3324,  3338,  3344,  3350
1269 >       0,   354,   354,   355,   358,   359,   360,   361,   362,   363,
1270 >     364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
1271 >     374,   375,   376,   377,   378,   379,   380,   384,   384,   385,
1272 >     389,   393,   397,   401,   405,   411,   411,   412,   413,   414,
1273 >     415,   422,   425,   425,   426,   426,   426,   428,   434,   441,
1274 >     443,   443,   444,   444,   445,   445,   446,   446,   447,   447,
1275 >     448,   448,   449,   449,   450,   450,   451,   452,   455,   456,
1276 >     458,   458,   459,   465,   473,   473,   474,   480,   488,   527,
1277 >     586,   614,   622,   637,   652,   661,   675,   684,   712,   742,
1278 >     765,   774,   776,   776,   777,   777,   778,   778,   780,   789,
1279 >     798,   810,   811,   811,   813,   813,   814,   816,   823,   823,
1280 >     833,   834,   836,   836,   837,   837,   839,   844,   847,   853,
1281 >     852,   858,   858,   859,   863,   867,   871,   875,   879,   883,
1282 >     894,   893,   991,   991,   992,   992,   992,   993,   993,   993,
1283 >     994,   994,   994,   996,  1005,  1042,  1054,  1065,  1107,  1117,
1284 >    1116,  1122,  1122,  1123,  1127,  1131,  1135,  1139,  1143,  1147,
1285 >    1151,  1155,  1159,  1163,  1167,  1171,  1175,  1179,  1183,  1187,
1286 >    1191,  1195,  1199,  1206,  1205,  1211,  1211,  1212,  1216,  1220,
1287 >    1224,  1228,  1232,  1236,  1240,  1244,  1248,  1252,  1256,  1260,
1288 >    1264,  1268,  1272,  1276,  1280,  1291,  1290,  1340,  1340,  1341,
1289 >    1342,  1342,  1343,  1344,  1345,  1346,  1347,  1348,  1349,  1350,
1290 >    1351,  1352,  1353,  1355,  1364,  1370,  1376,  1382,  1388,  1394,
1291 >    1400,  1406,  1412,  1418,  1424,  1430,  1440,  1439,  1456,  1455,
1292 >    1460,  1460,  1461,  1465,  1469,  1477,  1477,  1478,  1478,  1478,
1293 >    1478,  1478,  1480,  1480,  1482,  1482,  1484,  1498,  1518,  1527,
1294 >    1540,  1539,  1608,  1608,  1609,  1609,  1609,  1609,  1610,  1610,
1295 >    1610,  1611,  1611,  1613,  1650,  1663,  1672,  1684,  1683,  1687,
1296 >    1687,  1688,  1692,  1696,  1700,  1704,  1708,  1712,  1716,  1720,
1297 >    1727,  1746,  1756,  1770,  1769,  1785,  1785,  1786,  1786,  1786,
1298 >    1786,  1788,  1797,  1812,  1825,  1827,  1827,  1828,  1828,  1830,
1299 >    1846,  1845,  1861,  1861,  1862,  1862,  1862,  1862,  1864,  1873,
1300 >    1896,  1895,  1901,  1901,  1902,  1906,  1910,  1914,  1918,  1922,
1301 >    1926,  1930,  1934,  1938,  1948,  1947,  1964,  1964,  1965,  1965,
1302 >    1965,  1967,  1974,  1973,  1979,  1979,  1980,  1984,  1988,  1992,
1303 >    1996,  2000,  2004,  2008,  2012,  2016,  2026,  2025,  2076,  2076,
1304 >    2077,  2077,  2077,  2078,  2078,  2079,  2079,  2079,  2080,  2080,
1305 >    2080,  2081,  2081,  2082,  2084,  2093,  2102,  2128,  2146,  2164,
1306 >    2170,  2174,  2183,  2182,  2186,  2186,  2187,  2191,  2195,  2199,
1307 >    2205,  2216,  2227,  2238,  2247,  2266,  2265,  2331,  2330,  2334,
1308 >    2334,  2335,  2341,  2341,  2342,  2342,  2342,  2342,  2344,  2363,
1309 >    2373,  2372,  2397,  2397,  2398,  2398,  2398,  2400,  2406,  2415,
1310 >    2417,  2417,  2418,  2418,  2420,  2439,  2438,  2486,  2485,  2489,
1311 >    2489,  2490,  2496,  2496,  2497,  2497,  2497,  2497,  2499,  2505,
1312 >    2514,  2517,  2517,  2518,  2518,  2519,  2519,  2520,  2520,  2521,
1313 >    2521,  2522,  2522,  2523,  2523,  2524,  2524,  2525,  2525,  2526,
1314 >    2526,  2527,  2527,  2528,  2528,  2529,  2529,  2530,  2530,  2531,
1315 >    2532,  2532,  2533,  2533,  2534,  2534,  2535,  2535,  2536,  2536,
1316 >    2537,  2538,  2539,  2539,  2540,  2541,  2542,  2542,  2543,  2543,
1317 >    2544,  2544,  2545,  2545,  2546,  2549,  2554,  2559,  2564,  2569,
1318 >    2574,  2579,  2584,  2589,  2594,  2599,  2604,  2609,  2614,  2619,
1319 >    2624,  2629,  2634,  2640,  2651,  2656,  2665,  2670,  2675,  2680,
1320 >    2685,  2690,  2693,  2698,  2701,  2706,  2711,  2716,  2721,  2726,
1321 >    2731,  2736,  2741,  2746,  2757,  2762,  2767,  2772,  2781,  2790,
1322 >    2795,  2800,  2806,  2805,  2810,  2810,  2811,  2814,  2817,  2820,
1323 >    2823,  2826,  2829,  2832,  2835,  2838,  2841,  2844,  2847,  2850,
1324 >    2853,  2856,  2859,  2862,  2865,  2868,  2874,  2873,  2878,  2878,
1325 >    2879,  2882,  2885,  2888,  2891,  2894,  2897,  2900,  2903,  2906,
1326 >    2909,  2912,  2915,  2918,  2921,  2924,  2927,  2930,  2933,  2936,
1327 >    2941,  2946,  2951,  2956,  2966,  2965,  2989,  2989,  2990,  2991,
1328 >    2992,  2993,  2994,  2995,  2996,  2998,  3004,  3011,  3010,  3015,
1329 >    3015,  3016,  3020,  3026,  3060,  3070,  3069,  3119,  3119,  3120,
1330 >    3124,  3133,  3136,  3136,  3137,  3137,  3138,  3138,  3139,  3139,
1331 >    3140,  3140,  3141,  3141,  3142,  3143,  3143,  3144,  3144,  3145,
1332 >    3145,  3146,  3146,  3148,  3153,  3158,  3163,  3168,  3173,  3178,
1333 >    3183,  3188,  3193,  3198,  3203,  3208,  3213,  3218,  3223,  3228,
1334 >    3233,  3241,  3244,  3244,  3245,  3245,  3246,  3247,  3248,  3248,
1335 >    3249,  3250,  3252,  3258,  3264,  3273,  3287,  3293,  3299
1336   };
1337   #endif
1338  
# Line 1387 | Line 1374 | static const char *const yytname[] =
1374    "QSTRING", "QUIET_ON_BAN", "REASON", "REDIRPORT", "REDIRSERV", "REGEX_T",
1375    "REHASH", "TREJECT_HOLD_TIME", "REMOTE", "REMOTEBAN",
1376    "RESTRICT_CHANNELS", "RESTRICTED", "RSA_PRIVATE_KEY_FILE",
1377 <  "RSA_PUBLIC_KEY_FILE", "SSL_CERTIFICATE_FILE", "T_SSL_CONNECTION_METHOD",
1378 <  "T_SSLV3", "T_TLSV1", "RESV", "RESV_EXEMPT", "SECONDS", "MINUTES",
1379 <  "HOURS", "DAYS", "WEEKS", "SENDQ", "SEND_PASSWORD", "SERVERHIDE",
1380 <  "SERVERINFO", "IRCD_SID", "TKLINE_EXPIRE_NOTICES", "T_SHARED",
1381 <  "T_CLUSTER", "TYPE", "SHORT_MOTD", "SILENT", "SPOOF", "SPOOF_NOTICE",
1382 <  "STATS_E_DISABLED", "STATS_I_OPER_ONLY", "STATS_K_OPER_ONLY",
1383 <  "STATS_O_OPER_ONLY", "STATS_P_OPER_ONLY", "TBOOL", "TMASKED", "T_REJECT",
1384 <  "TS_MAX_DELTA", "TS_WARN_DELTA", "TWODOTS", "T_ALL", "T_BOTS",
1385 <  "T_SOFTCALLERID", "T_CALLERID", "T_CCONN", "T_CCONN_FULL",
1377 >  "RSA_PUBLIC_KEY_FILE", "SSL_CERTIFICATE_FILE", "SSL_DH_PARAM_FILE",
1378 >  "T_SSL_CLIENT_METHOD", "T_SSL_SERVER_METHOD", "T_SSLV3", "T_TLSV1",
1379 >  "RESV", "RESV_EXEMPT", "SECONDS", "MINUTES", "HOURS", "DAYS", "WEEKS",
1380 >  "SENDQ", "SEND_PASSWORD", "SERVERHIDE", "SERVERINFO", "IRCD_SID",
1381 >  "TKLINE_EXPIRE_NOTICES", "T_SHARED", "T_CLUSTER", "TYPE", "SHORT_MOTD",
1382 >  "SILENT", "SPOOF", "SPOOF_NOTICE", "STATS_E_DISABLED",
1383 >  "STATS_I_OPER_ONLY", "STATS_K_OPER_ONLY", "STATS_O_OPER_ONLY",
1384 >  "STATS_P_OPER_ONLY", "TBOOL", "TMASKED", "T_REJECT", "TS_MAX_DELTA",
1385 >  "TS_WARN_DELTA", "TWODOTS", "T_ALL", "T_BOTS", "T_SOFTCALLERID",
1386 >  "T_CALLERID", "T_CCONN", "T_CCONN_FULL", "T_SSL_CIPHER_LIST",
1387    "T_CLIENT_FLOOD", "T_DEAF", "T_DEBUG", "T_DLINE", "T_DRONE",
1388    "T_EXTERNAL", "T_FULL", "T_INVISIBLE", "T_IPV4", "T_IPV6", "T_LOCOPS",
1389    "T_MAX_CLIENTS", "T_NCHANGE", "T_OPERWALL", "T_REJ", "T_SERVER",
1390    "T_SERVNOTICE", "T_SKILL", "T_SPY", "T_SSL", "T_UMODES", "T_UNAUTH",
1391    "T_UNDLINE", "T_UNLIMITED", "T_UNRESV", "T_UNXLINE", "T_GLOBOPS",
1392 <  "T_WALLOP", "T_RESTART", "T_SERVICE", "T_SERVICES_NAME", "T_TIMESTAMP",
1393 <  "THROTTLE_TIME", "TOPICBURST", "TRUE_NO_OPER_FLOOD", "TKLINE", "TXLINE",
1394 <  "TRESV", "UNKLINE", "USER", "USE_EGD", "USE_EXCEPT", "USE_INVEX",
1395 <  "USE_KNOCK", "USE_LOGGING", "USE_WHOIS_ACTUALLY", "VHOST", "VHOST6",
1396 <  "XLINE", "WARN", "WARN_NO_NLINE", "T_SIZE", "T_FILE", "';'", "'}'",
1397 <  "'{'", "'='", "','", "$accept", "conf", "conf_item", "timespec_",
1398 <  "timespec", "sizespec_", "sizespec", "modules_entry", "modules_items",
1399 <  "modules_item", "modules_module", "modules_path", "serverinfo_entry",
1400 <  "serverinfo_items", "serverinfo_item",
1401 <  "serverinfo_ssl_connection_method", "$@1", "method_types",
1402 <  "method_type_item", "serverinfo_ssl_certificate_file",
1403 <  "serverinfo_rsa_private_key_file", "serverinfo_name", "serverinfo_sid",
1392 >  "T_WALLOP", "T_RESTART", "T_SERVICE", "T_SERVICES_NAME", "THROTTLE_TIME",
1393 >  "TOPICBURST", "TRUE_NO_OPER_FLOOD", "TKLINE", "TXLINE", "TRESV",
1394 >  "UNKLINE", "USER", "USE_EGD", "USE_EXCEPT", "USE_INVEX", "USE_KNOCK",
1395 >  "USE_LOGGING", "USE_WHOIS_ACTUALLY", "VHOST", "VHOST6", "XLINE", "WARN",
1396 >  "WARN_NO_NLINE", "T_SIZE", "T_FILE", "';'", "'}'", "'{'", "'='", "','",
1397 >  "$accept", "conf", "conf_item", "timespec_", "timespec", "sizespec_",
1398 >  "sizespec", "modules_entry", "modules_items", "modules_item",
1399 >  "modules_module", "modules_path", "serverinfo_entry", "serverinfo_items",
1400 >  "serverinfo_item", "serverinfo_ssl_client_method",
1401 >  "serverinfo_ssl_server_method", "client_method_types",
1402 >  "client_method_type_item", "server_method_types",
1403 >  "server_method_type_item", "serverinfo_ssl_certificate_file",
1404 >  "serverinfo_rsa_private_key_file", "serverinfo_ssl_dh_param_file",
1405 >  "serverinfo_ssl_cipher_list", "serverinfo_name", "serverinfo_sid",
1406    "serverinfo_description", "serverinfo_network_name",
1407    "serverinfo_network_desc", "serverinfo_vhost", "serverinfo_vhost6",
1408    "serverinfo_max_clients", "serverinfo_hub", "admin_entry", "admin_items",
1409    "admin_item", "admin_name", "admin_email", "admin_description",
1410    "logging_entry", "logging_items", "logging_item", "logging_use_logging",
1411 <  "logging_timestamp", "logging_file_entry", "$@2", "logging_file_items",
1412 <  "logging_file_item", "logging_file_name", "logging_file_size",
1413 <  "logging_file_type", "$@3", "logging_file_type_items",
1414 <  "logging_file_type_item", "oper_entry", "$@4", "oper_items", "oper_item",
1415 <  "oper_name", "oper_user", "oper_password", "oper_encrypted",
1416 <  "oper_rsa_public_key_file", "oper_class", "oper_umodes", "$@5",
1417 <  "oper_umodes_items", "oper_umodes_item", "oper_flags", "$@6",
1418 <  "oper_flags_items", "oper_flags_item", "class_entry", "$@7",
1419 <  "class_items", "class_item", "class_name", "class_ping_time",
1420 <  "class_ping_warning", "class_number_per_ip", "class_connectfreq",
1421 <  "class_max_number", "class_max_global", "class_max_local",
1422 <  "class_max_ident", "class_sendq", "class_cidr_bitlen_ipv4",
1423 <  "class_cidr_bitlen_ipv6", "class_number_per_cidr", "listen_entry", "$@8",
1424 <  "listen_flags", "$@9", "listen_flags_items", "listen_flags_item",
1425 <  "listen_items", "listen_item", "listen_port", "$@10", "port_items",
1426 <  "port_item", "listen_address", "listen_host", "auth_entry", "$@11",
1427 <  "auth_items", "auth_item", "auth_user", "auth_passwd", "auth_class",
1428 <  "auth_encrypted", "auth_flags", "$@12", "auth_flags_items",
1429 <  "auth_flags_item", "auth_spoof", "auth_redir_serv", "auth_redir_port",
1430 <  "resv_entry", "$@13", "resv_items", "resv_item", "resv_creason",
1431 <  "resv_channel", "resv_nick", "service_entry", "service_items",
1432 <  "service_item", "service_name", "shared_entry", "$@14", "shared_items",
1433 <  "shared_item", "shared_name", "shared_user", "shared_type", "$@15",
1434 <  "shared_types", "shared_type_item", "cluster_entry", "$@16",
1435 <  "cluster_items", "cluster_item", "cluster_name", "cluster_type", "$@17",
1436 <  "cluster_types", "cluster_type_item", "connect_entry", "$@18",
1437 <  "connect_items", "connect_item", "connect_name", "connect_host",
1438 <  "connect_vhost", "connect_send_password", "connect_accept_password",
1439 <  "connect_port", "connect_aftype", "connect_flags", "$@19",
1440 <  "connect_flags_items", "connect_flags_item", "connect_encrypted",
1441 <  "connect_hub_mask", "connect_leaf_mask", "connect_class", "kill_entry",
1442 <  "$@20", "kill_type", "$@21", "kill_type_items", "kill_type_item",
1443 <  "kill_items", "kill_item", "kill_user", "kill_reason", "deny_entry",
1444 <  "$@22", "deny_items", "deny_item", "deny_ip", "deny_reason",
1445 <  "exempt_entry", "exempt_items", "exempt_item", "exempt_ip",
1446 <  "gecos_entry", "$@23", "gecos_flags", "$@24", "gecos_flags_items",
1447 <  "gecos_flags_item", "gecos_items", "gecos_item", "gecos_name",
1448 <  "gecos_reason", "general_entry", "general_items", "general_item",
1449 <  "general_max_watch", "general_gline_min_cidr", "general_gline_min_cidr6",
1411 >  "logging_file_entry", "$@1", "logging_file_items", "logging_file_item",
1412 >  "logging_file_name", "logging_file_size", "logging_file_type", "$@2",
1413 >  "logging_file_type_items", "logging_file_type_item", "oper_entry", "$@3",
1414 >  "oper_items", "oper_item", "oper_name", "oper_user", "oper_password",
1415 >  "oper_encrypted", "oper_rsa_public_key_file", "oper_class",
1416 >  "oper_umodes", "$@4", "oper_umodes_items", "oper_umodes_item",
1417 >  "oper_flags", "$@5", "oper_flags_items", "oper_flags_item",
1418 >  "class_entry", "$@6", "class_items", "class_item", "class_name",
1419 >  "class_ping_time", "class_ping_warning", "class_number_per_ip",
1420 >  "class_connectfreq", "class_max_number", "class_max_global",
1421 >  "class_max_local", "class_max_ident", "class_sendq",
1422 >  "class_cidr_bitlen_ipv4", "class_cidr_bitlen_ipv6",
1423 >  "class_number_per_cidr", "listen_entry", "$@7", "listen_flags", "$@8",
1424 >  "listen_flags_items", "listen_flags_item", "listen_items", "listen_item",
1425 >  "listen_port", "$@9", "port_items", "port_item", "listen_address",
1426 >  "listen_host", "auth_entry", "$@10", "auth_items", "auth_item",
1427 >  "auth_user", "auth_passwd", "auth_class", "auth_encrypted", "auth_flags",
1428 >  "$@11", "auth_flags_items", "auth_flags_item", "auth_spoof",
1429 >  "auth_redir_serv", "auth_redir_port", "resv_entry", "$@12", "resv_items",
1430 >  "resv_item", "resv_creason", "resv_channel", "resv_nick",
1431 >  "service_entry", "service_items", "service_item", "service_name",
1432 >  "shared_entry", "$@13", "shared_items", "shared_item", "shared_name",
1433 >  "shared_user", "shared_type", "$@14", "shared_types", "shared_type_item",
1434 >  "cluster_entry", "$@15", "cluster_items", "cluster_item", "cluster_name",
1435 >  "cluster_type", "$@16", "cluster_types", "cluster_type_item",
1436 >  "connect_entry", "$@17", "connect_items", "connect_item", "connect_name",
1437 >  "connect_host", "connect_vhost", "connect_send_password",
1438 >  "connect_accept_password", "connect_port", "connect_aftype",
1439 >  "connect_flags", "$@18", "connect_flags_items", "connect_flags_item",
1440 >  "connect_encrypted", "connect_hub_mask", "connect_leaf_mask",
1441 >  "connect_class", "connect_ssl_cipher_list", "kill_entry", "$@19",
1442 >  "kill_type", "$@20", "kill_type_items", "kill_type_item", "kill_items",
1443 >  "kill_item", "kill_user", "kill_reason", "deny_entry", "$@21",
1444 >  "deny_items", "deny_item", "deny_ip", "deny_reason", "exempt_entry",
1445 >  "exempt_items", "exempt_item", "exempt_ip", "gecos_entry", "$@22",
1446 >  "gecos_flags", "$@23", "gecos_flags_items", "gecos_flags_item",
1447 >  "gecos_items", "gecos_item", "gecos_name", "gecos_reason",
1448 >  "general_entry", "general_items", "general_item", "general_max_watch",
1449 >  "general_gline_min_cidr", "general_gline_min_cidr6",
1450    "general_use_whois_actually", "general_reject_hold_time",
1451    "general_tkline_expire_notices", "general_kill_chase_time_limit",
1452    "general_hide_spoof_ips", "general_ignore_bogus_ts",
# Line 1477 | Line 1467 | static const char *const yytname[] =
1467    "general_dots_in_ident", "general_max_targets", "general_use_egd",
1468    "general_egdpool_path", "general_services_name", "general_ping_cookie",
1469    "general_disable_auth", "general_throttle_time", "general_oper_umodes",
1470 <  "$@25", "umode_oitems", "umode_oitem", "general_oper_only_umodes",
1471 <  "$@26", "umode_items", "umode_item", "general_min_nonwildcard",
1470 >  "$@24", "umode_oitems", "umode_oitem", "general_oper_only_umodes",
1471 >  "$@25", "umode_items", "umode_item", "general_min_nonwildcard",
1472    "general_min_nonwildcard_simple", "general_default_floodcount",
1473 <  "general_client_flood", "gline_entry", "$@27", "gline_items",
1474 <  "gline_item", "gline_enable", "gline_duration", "gline_logging", "$@28",
1473 >  "general_client_flood", "gline_entry", "$@26", "gline_items",
1474 >  "gline_item", "gline_enable", "gline_duration", "gline_logging", "$@27",
1475    "gline_logging_types", "gline_logging_type_item", "gline_user",
1476 <  "gline_server", "gline_action", "$@29", "gdeny_types", "gdeny_type_item",
1476 >  "gline_server", "gline_action", "$@28", "gdeny_types", "gdeny_type_item",
1477    "channel_entry", "channel_items", "channel_item",
1478    "channel_disable_fake_channels", "channel_restrict_channels",
1479    "channel_disable_local_channels", "channel_use_except",
# Line 1528 | Line 1518 | static const yytype_uint16 yytoknum[] =
1518       455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
1519       465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
1520       475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
1521 <     485,   486,   487,   488,   489,   490,   491,   492,   493,    59,
1522 <     125,   123,    61,    44
1521 >     485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
1522 >     495,    59,   125,   123,    61,    44
1523   };
1524   # endif
1525  
1526   /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
1527   static const yytype_uint16 yyr1[] =
1528   {
1529 <       0,   244,   245,   245,   246,   246,   246,   246,   246,   246,
1530 <     246,   246,   246,   246,   246,   246,   246,   246,   246,   246,
1531 <     246,   246,   246,   246,   246,   246,   246,   247,   247,   248,
1532 <     248,   248,   248,   248,   248,   249,   249,   250,   250,   250,
1533 <     250,   251,   252,   252,   253,   253,   253,   254,   255,   256,
1534 <     257,   257,   258,   258,   258,   258,   258,   258,   258,   258,
1535 <     258,   258,   258,   258,   258,   260,   259,   261,   261,   262,
1536 <     262,   263,   264,   265,   266,   267,   268,   269,   270,   271,
1537 <     272,   273,   274,   275,   275,   276,   276,   276,   276,   277,
1538 <     278,   279,   280,   281,   281,   282,   282,   282,   282,   283,
1539 <     284,   286,   285,   287,   287,   288,   288,   288,   288,   289,
1540 <     290,   290,   292,   291,   293,   293,   294,   294,   294,   294,
1541 <     294,   294,   294,   296,   295,   297,   297,   298,   298,   298,
1542 <     298,   298,   298,   298,   298,   298,   299,   300,   301,   302,
1543 <     303,   304,   306,   305,   307,   307,   308,   308,   308,   308,
1544 <     308,   308,   308,   308,   308,   308,   308,   308,   308,   308,
1545 <     308,   308,   308,   308,   308,   308,   310,   309,   311,   311,
1546 <     312,   312,   312,   312,   312,   312,   312,   312,   312,   312,
1547 <     312,   312,   312,   312,   312,   312,   312,   312,   314,   313,
1548 <     315,   315,   316,   316,   316,   316,   316,   316,   316,   316,
1549 <     316,   316,   316,   316,   316,   316,   317,   318,   319,   320,
1550 <     321,   322,   323,   324,   325,   326,   327,   328,   329,   331,
1551 <     330,   333,   332,   334,   334,   335,   335,   335,   336,   336,
1552 <     337,   337,   337,   337,   337,   339,   338,   340,   340,   341,
1553 <     341,   342,   343,   345,   344,   346,   346,   347,   347,   347,
1554 <     347,   347,   347,   347,   347,   347,   348,   349,   350,   351,
1555 <     353,   352,   354,   354,   355,   355,   355,   355,   355,   355,
1556 <     355,   355,   355,   356,   357,   358,   360,   359,   361,   361,
1557 <     362,   362,   362,   362,   363,   364,   365,   366,   367,   367,
1558 <     368,   368,   369,   371,   370,   372,   372,   373,   373,   373,
1559 <     373,   374,   375,   377,   376,   378,   378,   379,   379,   379,
1560 <     379,   379,   379,   379,   379,   379,   379,   381,   380,   382,
1561 <     382,   383,   383,   383,   384,   386,   385,   387,   387,   388,
1562 <     388,   388,   388,   388,   388,   388,   388,   388,   388,   390,
1563 <     389,   391,   391,   392,   392,   392,   392,   392,   392,   392,
1564 <     392,   392,   392,   392,   392,   392,   393,   394,   395,   396,
1565 <     397,   398,   399,   399,   401,   400,   402,   402,   403,   403,
1566 <     403,   404,   405,   406,   407,   409,   408,   411,   410,   412,
1567 <     412,   413,   414,   414,   415,   415,   415,   415,   416,   417,
1568 <     419,   418,   420,   420,   421,   421,   421,   422,   423,   424,
1569 <     425,   425,   426,   426,   427,   429,   428,   431,   430,   432,
1570 <     432,   433,   434,   434,   435,   435,   435,   435,   436,   437,
1571 <     438,   439,   439,   440,   440,   440,   440,   440,   440,   440,
1572 <     440,   440,   440,   440,   440,   440,   440,   440,   440,   440,
1573 <     440,   440,   440,   440,   440,   440,   440,   440,   440,   440,
1574 <     440,   440,   440,   440,   440,   440,   440,   440,   440,   440,
1575 <     440,   440,   440,   440,   440,   440,   440,   440,   440,   440,
1576 <     440,   440,   440,   440,   440,   441,   442,   443,   444,   445,
1577 <     446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
1578 <     456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
1579 <     466,   467,   467,   468,   468,   469,   470,   471,   472,   473,
1580 <     474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
1581 <     484,   485,   487,   486,   488,   488,   489,   489,   489,   489,
1582 <     489,   489,   489,   489,   489,   489,   489,   489,   489,   489,
1583 <     489,   489,   489,   489,   489,   489,   491,   490,   492,   492,
1584 <     493,   493,   493,   493,   493,   493,   493,   493,   493,   493,
1585 <     493,   493,   493,   493,   493,   493,   493,   493,   493,   493,
1586 <     494,   495,   496,   497,   499,   498,   500,   500,   501,   501,
1587 <     501,   501,   501,   501,   501,   502,   503,   505,   504,   506,
1588 <     506,   507,   507,   508,   509,   511,   510,   512,   512,   513,
1589 <     513,   514,   515,   515,   516,   516,   516,   516,   516,   516,
1590 <     516,   516,   516,   516,   516,   516,   516,   516,   516,   516,
1591 <     516,   516,   516,   517,   518,   519,   520,   521,   522,   523,
1592 <     524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
1593 <     534,   535,   536,   536,   537,   537,   537,   537,   537,   537,
1594 <     537,   537,   538,   539,   540,   541,   542,   543,   544
1529 >       0,   246,   247,   247,   248,   248,   248,   248,   248,   248,
1530 >     248,   248,   248,   248,   248,   248,   248,   248,   248,   248,
1531 >     248,   248,   248,   248,   248,   248,   248,   249,   249,   250,
1532 >     250,   250,   250,   250,   250,   251,   251,   252,   252,   252,
1533 >     252,   253,   254,   254,   255,   255,   255,   256,   257,   258,
1534 >     259,   259,   260,   260,   260,   260,   260,   260,   260,   260,
1535 >     260,   260,   260,   260,   260,   260,   260,   260,   261,   262,
1536 >     263,   263,   264,   264,   265,   265,   266,   266,   267,   268,
1537 >     269,   270,   271,   272,   273,   274,   275,   276,   277,   278,
1538 >     279,   280,   281,   281,   282,   282,   282,   282,   283,   284,
1539 >     285,   286,   287,   287,   288,   288,   288,   289,   291,   290,
1540 >     292,   292,   293,   293,   293,   293,   294,   295,   295,   297,
1541 >     296,   298,   298,   299,   299,   299,   299,   299,   299,   299,
1542 >     301,   300,   302,   302,   303,   303,   303,   303,   303,   303,
1543 >     303,   303,   303,   304,   305,   306,   307,   308,   309,   311,
1544 >     310,   312,   312,   313,   313,   313,   313,   313,   313,   313,
1545 >     313,   313,   313,   313,   313,   313,   313,   313,   313,   313,
1546 >     313,   313,   313,   315,   314,   316,   316,   317,   317,   317,
1547 >     317,   317,   317,   317,   317,   317,   317,   317,   317,   317,
1548 >     317,   317,   317,   317,   317,   319,   318,   320,   320,   321,
1549 >     321,   321,   321,   321,   321,   321,   321,   321,   321,   321,
1550 >     321,   321,   321,   322,   323,   324,   325,   326,   327,   328,
1551 >     329,   330,   331,   332,   333,   334,   336,   335,   338,   337,
1552 >     339,   339,   340,   340,   340,   341,   341,   342,   342,   342,
1553 >     342,   342,   344,   343,   345,   345,   346,   346,   347,   348,
1554 >     350,   349,   351,   351,   352,   352,   352,   352,   352,   352,
1555 >     352,   352,   352,   353,   354,   355,   356,   358,   357,   359,
1556 >     359,   360,   360,   360,   360,   360,   360,   360,   360,   360,
1557 >     361,   362,   363,   365,   364,   366,   366,   367,   367,   367,
1558 >     367,   368,   369,   370,   371,   372,   372,   373,   373,   374,
1559 >     376,   375,   377,   377,   378,   378,   378,   378,   379,   380,
1560 >     382,   381,   383,   383,   384,   384,   384,   384,   384,   384,
1561 >     384,   384,   384,   384,   386,   385,   387,   387,   388,   388,
1562 >     388,   389,   391,   390,   392,   392,   393,   393,   393,   393,
1563 >     393,   393,   393,   393,   393,   393,   395,   394,   396,   396,
1564 >     397,   397,   397,   397,   397,   397,   397,   397,   397,   397,
1565 >     397,   397,   397,   397,   398,   399,   400,   401,   402,   403,
1566 >     404,   404,   406,   405,   407,   407,   408,   408,   408,   408,
1567 >     409,   410,   411,   412,   413,   415,   414,   417,   416,   418,
1568 >     418,   419,   420,   420,   421,   421,   421,   421,   422,   423,
1569 >     425,   424,   426,   426,   427,   427,   427,   428,   429,   430,
1570 >     431,   431,   432,   432,   433,   435,   434,   437,   436,   438,
1571 >     438,   439,   440,   440,   441,   441,   441,   441,   442,   443,
1572 >     444,   445,   445,   446,   446,   446,   446,   446,   446,   446,
1573 >     446,   446,   446,   446,   446,   446,   446,   446,   446,   446,
1574 >     446,   446,   446,   446,   446,   446,   446,   446,   446,   446,
1575 >     446,   446,   446,   446,   446,   446,   446,   446,   446,   446,
1576 >     446,   446,   446,   446,   446,   446,   446,   446,   446,   446,
1577 >     446,   446,   446,   446,   446,   447,   448,   449,   450,   451,
1578 >     452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
1579 >     462,   463,   464,   465,   466,   467,   468,   469,   470,   471,
1580 >     472,   473,   473,   474,   474,   475,   476,   477,   478,   479,
1581 >     480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
1582 >     490,   491,   493,   492,   494,   494,   495,   495,   495,   495,
1583 >     495,   495,   495,   495,   495,   495,   495,   495,   495,   495,
1584 >     495,   495,   495,   495,   495,   495,   497,   496,   498,   498,
1585 >     499,   499,   499,   499,   499,   499,   499,   499,   499,   499,
1586 >     499,   499,   499,   499,   499,   499,   499,   499,   499,   499,
1587 >     500,   501,   502,   503,   505,   504,   506,   506,   507,   507,
1588 >     507,   507,   507,   507,   507,   508,   509,   511,   510,   512,
1589 >     512,   513,   513,   514,   515,   517,   516,   518,   518,   519,
1590 >     519,   520,   521,   521,   522,   522,   522,   522,   522,   522,
1591 >     522,   522,   522,   522,   522,   522,   522,   522,   522,   522,
1592 >     522,   522,   522,   523,   524,   525,   526,   527,   528,   529,
1593 >     530,   531,   532,   533,   534,   535,   536,   537,   538,   539,
1594 >     540,   541,   542,   542,   543,   543,   543,   543,   543,   543,
1595 >     543,   543,   544,   545,   546,   547,   548,   549,   550
1596   };
1597  
1598   /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
# Line 1613 | Line 1604 | static const yytype_uint8 yyr2[] =
1604         3,     3,     3,     3,     3,     0,     1,     2,     3,     3,
1605         3,     5,     2,     1,     1,     1,     2,     4,     4,     5,
1606         2,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1607 <       1,     1,     1,     1,     2,     0,     5,     3,     1,     1,
1608 <       1,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1609 <       4,     4,     5,     2,     1,     1,     1,     1,     2,     4,
1610 <       4,     4,     5,     2,     1,     1,     1,     1,     2,     4,
1611 <       4,     0,     6,     2,     1,     1,     1,     1,     2,     4,
1612 <       4,     4,     0,     5,     3,     1,     1,     1,     1,     1,
1613 <       1,     1,     1,     0,     6,     2,     1,     1,     1,     1,
1614 <       1,     1,     1,     1,     1,     2,     4,     4,     4,     4,
1615 <       4,     4,     0,     5,     3,     1,     1,     1,     1,     1,
1607 >       1,     1,     1,     1,     1,     1,     1,     2,     4,     4,
1608 >       3,     1,     1,     1,     3,     1,     1,     1,     4,     4,
1609 >       4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1610 >       4,     5,     2,     1,     1,     1,     1,     2,     4,     4,
1611 >       4,     5,     2,     1,     1,     1,     2,     4,     0,     6,
1612 >       2,     1,     1,     1,     1,     2,     4,     4,     4,     0,
1613 >       5,     3,     1,     1,     1,     1,     1,     1,     1,     1,
1614 >       0,     6,     2,     1,     1,     1,     1,     1,     1,     1,
1615 >       1,     1,     2,     4,     4,     4,     4,     4,     4,     0,
1616 >       5,     3,     1,     1,     1,     1,     1,     1,     1,     1,
1617         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1618 <       1,     1,     1,     1,     1,     1,     0,     5,     3,     1,
1618 >       1,     1,     1,     0,     5,     3,     1,     1,     1,     1,
1619         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1620 <       1,     1,     1,     1,     1,     1,     1,     1,     0,     6,
1621 <       2,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1622 <       1,     1,     1,     1,     1,     2,     4,     4,     4,     4,
1623 <       4,     4,     4,     4,     4,     4,     4,     4,     4,     0,
1624 <       6,     0,     5,     3,     1,     1,     1,     1,     2,     1,
1625 <       1,     1,     1,     1,     2,     0,     5,     3,     1,     1,
1626 <       3,     4,     4,     0,     6,     2,     1,     1,     1,     1,
1627 <       1,     1,     1,     1,     1,     2,     4,     4,     4,     4,
1620 >       1,     1,     1,     1,     1,     0,     6,     2,     1,     1,
1621 >       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1622 >       1,     1,     2,     4,     4,     4,     4,     4,     4,     4,
1623 >       4,     4,     4,     4,     4,     4,     0,     6,     0,     5,
1624 >       3,     1,     1,     1,     1,     2,     1,     1,     1,     1,
1625 >       1,     2,     0,     5,     3,     1,     1,     3,     4,     4,
1626 >       0,     6,     2,     1,     1,     1,     1,     1,     1,     1,
1627 >       1,     1,     2,     4,     4,     4,     4,     0,     5,     3,
1628 >       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1629 >       4,     4,     4,     0,     6,     2,     1,     1,     1,     1,
1630 >       2,     4,     4,     4,     5,     2,     1,     1,     1,     4,
1631 >       0,     6,     2,     1,     1,     1,     1,     2,     4,     4,
1632         0,     5,     3,     1,     1,     1,     1,     1,     1,     1,
1633 <       1,     1,     1,     4,     4,     4,     0,     6,     2,     1,
1634 <       1,     1,     1,     2,     4,     4,     4,     5,     2,     1,
1635 <       1,     1,     4,     0,     6,     2,     1,     1,     1,     1,
1636 <       2,     4,     4,     0,     5,     3,     1,     1,     1,     1,
1637 <       1,     1,     1,     1,     1,     1,     1,     0,     6,     2,
1638 <       1,     1,     1,     2,     4,     0,     5,     3,     1,     1,
1639 <       1,     1,     1,     1,     1,     1,     1,     1,     1,     0,
1644 <       6,     2,     1,     1,     1,     1,     1,     1,     1,     1,
1645 <       1,     1,     1,     1,     1,     2,     4,     4,     4,     4,
1646 <       4,     4,     4,     4,     0,     5,     3,     1,     1,     1,
1647 <       1,     4,     4,     4,     4,     0,     6,     0,     5,     3,
1633 >       1,     1,     1,     1,     0,     6,     2,     1,     1,     1,
1634 >       2,     4,     0,     5,     3,     1,     1,     1,     1,     1,
1635 >       1,     1,     1,     1,     1,     1,     0,     6,     2,     1,
1636 >       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1637 >       1,     1,     1,     2,     4,     4,     4,     4,     4,     4,
1638 >       4,     4,     0,     5,     3,     1,     1,     1,     1,     1,
1639 >       4,     4,     4,     4,     4,     0,     6,     0,     5,     3,
1640         1,     1,     2,     1,     1,     1,     1,     1,     4,     4,
1641         0,     6,     2,     1,     1,     1,     1,     4,     4,     5,
1642         2,     1,     1,     1,     4,     0,     6,     0,     5,     3,
# Line 1680 | Line 1672 | static const yytype_uint8 yyr2[] =
1672     means the default is an error.  */
1673   static const yytype_uint16 yydefact[] =
1674   {
1675 <       2,     0,     1,     0,     0,     0,   188,   339,   390,     0,
1676 <     405,     0,   574,   243,   375,   219,     0,     0,   123,   276,
1677 <       0,     0,   293,   317,     0,     3,    24,    11,     4,     5,
1675 >       2,     0,     1,     0,     0,     0,   195,   346,   400,     0,
1676 >     415,     0,   584,   250,   385,   226,     0,     0,   130,   283,
1677 >       0,     0,   300,   324,     0,     3,    24,    11,     4,     5,
1678         6,     8,     9,    10,    13,    14,    15,    16,    17,    18,
1679        19,    20,    23,    21,    22,     7,    12,    25,    26,     0,
1680         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1681         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1682 <       0,     0,     0,     0,     0,    84,    85,    87,    86,   622,
1682 >       0,     0,     0,     0,     0,    93,    94,    96,    95,   632,
1683 >       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1684 >       0,     0,     0,     0,     0,     0,     0,     0,     0,   613,
1685 >     631,   626,   614,   615,   616,   617,   619,   620,   621,   622,
1686 >     618,   623,   624,   625,   627,   628,   629,   630,     0,     0,
1687 >       0,   413,     0,     0,   411,   412,     0,   484,     0,     0,
1688 >       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1689 >       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1690 >       0,     0,     0,     0,     0,     0,   556,     0,   532,     0,
1691         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1692       0,     0,     0,     0,     0,     0,     0,     0,     0,   603,
1693     621,   616,   604,   605,   606,   607,   609,   610,   611,   612,
1694     608,   613,   614,   615,   617,   618,   619,   620,     0,     0,
1695       0,   403,     0,     0,   401,   402,     0,   474,     0,     0,
1692         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1693 +     432,   482,   477,   478,   479,   480,   476,   443,   433,   434,
1694 +     470,   435,   436,   437,   438,   439,   440,   441,   442,   473,
1695 +     444,   445,   446,   447,   481,   449,   454,   450,   452,   451,
1696 +     465,   466,   453,   455,   456,   457,   458,   459,   448,   461,
1697 +     462,   463,   483,   474,   475,   472,   464,   460,   468,   469,
1698 +     467,   471,     0,     0,     0,     0,     0,     0,     0,   103,
1699 +     104,   105,     0,     0,     0,     0,     0,    43,    44,    45,
1700 +       0,     0,   661,     0,     0,     0,     0,     0,     0,     0,
1701 +       0,   653,   654,   655,   659,   656,   658,   657,   660,     0,
1702         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1703 <       0,     0,     0,     0,     0,     0,   546,     0,   522,     0,
1703 >       0,     0,     0,     0,     0,     0,    51,    64,    65,    63,
1704 >      60,    59,    66,    52,    62,    55,    56,    57,    53,    61,
1705 >      58,    54,     0,     0,   298,     0,     0,   296,   297,    97,
1706 >       0,     0,     0,     0,    92,     0,     0,     0,     0,     0,
1707         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1708 +       0,     0,     0,     0,   612,     0,     0,     0,     0,     0,
1709         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1710 <     422,   472,   467,   468,   469,   470,   466,   433,   423,   424,
1711 <     460,   425,   426,   427,   428,   429,   430,   431,   432,   463,
1712 <     434,   435,   436,   437,   471,   439,   444,   440,   442,   441,
1713 <     455,   456,   443,   445,   446,   447,   448,   449,   438,   451,
1714 <     452,   453,   473,   464,   465,   462,   454,   450,   458,   459,
1715 <     457,   461,     0,     0,     0,     0,     0,     0,     0,     0,
1716 <      94,    95,    96,    97,     0,     0,     0,     0,     0,    43,
1708 <      44,    45,     0,     0,   651,     0,     0,     0,     0,     0,
1709 <       0,     0,     0,   643,   644,   645,   649,   646,   648,   647,
1710 <     650,     0,     0,     0,     0,     0,     0,     0,     0,    65,
1711 <       0,     0,     0,     0,     0,    51,    63,    62,    59,    52,
1712 <      61,    55,    56,    57,    53,    60,    58,    54,     0,     0,
1713 <     291,     0,     0,   289,   290,    88,     0,     0,     0,     0,
1714 <      83,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1710 >     198,   199,   202,   203,   205,   206,   207,   208,   209,   210,
1711 >     211,   200,   201,   204,     0,     0,     0,     0,     0,   372,
1712 >       0,     0,     0,     0,     0,     0,     0,     0,     0,   349,
1713 >     350,   351,   352,   353,   354,   356,   355,   358,   362,   359,
1714 >     360,   361,   357,   406,     0,     0,     0,   403,   404,   405,
1715 >       0,     0,   410,   427,     0,     0,   417,   426,     0,   423,
1716 >     424,   425,     0,     0,     0,     0,     0,     0,     0,     0,
1717         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1716     602,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1717       0,     0,     0,     0,     0,     0,   191,   192,   195,   196,
1718     198,   199,   200,   201,   202,   203,   204,   193,   194,   197,
1719       0,     0,     0,     0,     0,   364,     0,     0,     0,     0,
1720       0,     0,     0,     0,   342,   343,   344,   345,   346,   347,
1721     349,   348,   350,   354,   351,   352,   353,   396,     0,     0,
1722       0,   393,   394,   395,     0,     0,   400,   417,     0,     0,
1723     407,   416,     0,   413,   414,   415,     0,     0,     0,     0,
1718         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1719         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1720         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1721 +       0,     0,     0,     0,   431,   594,   605,     0,     0,   597,
1722 +       0,     0,     0,   587,   588,   589,   590,   591,   592,   593,
1723 +       0,     0,     0,   267,     0,     0,     0,     0,     0,     0,
1724 +     253,   254,   255,   256,   261,   257,   258,   259,   260,   397,
1725 +       0,   387,     0,   396,     0,   393,   394,   395,     0,   228,
1726 +       0,     0,     0,   238,     0,   236,   237,   239,   240,   106,
1727 +       0,     0,   102,     0,    46,     0,     0,     0,    42,     0,
1728 +       0,     0,   173,     0,     0,     0,   149,     0,     0,   133,
1729 +     134,   135,   136,   139,   140,   138,   137,   141,     0,     0,
1730 +       0,     0,     0,   286,   287,   288,   289,     0,     0,     0,
1731 +       0,     0,     0,     0,     0,   652,    67,     0,     0,     0,
1732         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1733 <       0,     0,     0,     0,     0,     0,     0,     0,   421,   584,
1734 <     595,     0,     0,   587,     0,     0,     0,   577,   578,   579,
1735 <     580,   581,   582,   583,     0,     0,     0,   260,     0,     0,
1736 <       0,     0,     0,     0,   246,   247,   248,   249,   254,   250,
1737 <     251,   252,   253,   387,     0,   377,     0,   386,     0,   383,
1733 <     384,   385,     0,   221,     0,     0,     0,   231,     0,   229,
1734 <     230,   232,   233,    98,     0,     0,     0,    93,     0,    46,
1735 <       0,     0,     0,    42,     0,     0,     0,   166,     0,     0,
1736 <       0,   142,     0,     0,   126,   127,   128,   129,   132,   133,
1737 <     131,   130,   134,     0,     0,     0,     0,     0,   279,   280,
1738 <     281,   282,     0,     0,     0,     0,     0,     0,     0,     0,
1739 <     642,    64,     0,     0,     0,     0,     0,     0,     0,     0,
1740 <       0,     0,     0,     0,     0,    50,     0,     0,   303,     0,
1741 <       0,   296,   297,   298,   299,     0,     0,   325,     0,   320,
1742 <     321,   322,     0,     0,   288,     0,     0,     0,    82,     0,
1743 <       0,     0,     0,     0,    27,     0,     0,     0,     0,     0,
1744 <       0,     0,     0,     0,     0,     0,     0,     0,   601,   205,
1733 >       0,     0,     0,    50,     0,     0,   310,     0,     0,   303,
1734 >     304,   305,   306,     0,     0,   332,     0,   327,   328,   329,
1735 >       0,     0,   295,     0,     0,     0,    91,     0,     0,     0,
1736 >       0,     0,    27,     0,     0,     0,     0,     0,     0,     0,
1737 >       0,     0,     0,     0,     0,     0,   611,   212,     0,     0,
1738         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1739 <       0,     0,     0,     0,   190,   355,     0,     0,     0,     0,
1740 <       0,     0,     0,     0,     0,     0,     0,     0,     0,   341,
1741 <       0,     0,     0,   392,     0,   399,     0,     0,     0,     0,
1749 <     412,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1739 >       0,     0,   197,   363,     0,     0,     0,     0,     0,     0,
1740 >       0,     0,     0,     0,     0,     0,     0,     0,   348,     0,
1741 >       0,     0,   402,     0,   409,     0,     0,     0,     0,   422,
1742         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1743         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1744         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1753       0,     0,     0,     0,     0,     0,     0,    35,     0,     0,
1754       0,     0,     0,     0,     0,   420,     0,     0,     0,     0,
1755       0,     0,     0,   576,   255,     0,     0,     0,     0,     0,
1756       0,     0,     0,     0,   245,     0,     0,     0,     0,   382,
1757     234,     0,     0,     0,     0,     0,   228,     0,     0,    92,
1758       0,     0,     0,    41,   135,     0,     0,     0,     0,     0,
1759       0,     0,     0,     0,   125,   283,     0,     0,     0,     0,
1760     278,     0,     0,     0,     0,     0,     0,     0,   641,     0,
1745         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1746 <       0,    49,   300,     0,     0,     0,     0,   295,   323,     0,
1747 <       0,     0,   319,     0,   287,    91,    90,    89,   638,   635,
1748 <     634,   623,   625,    27,    27,    27,    27,    27,    29,    28,
1749 <     629,   630,   633,   631,   636,   637,   639,   640,   632,   624,
1750 <     626,   627,   628,     0,     0,     0,     0,     0,     0,     0,
1751 <       0,     0,     0,     0,     0,     0,   189,     0,     0,     0,
1746 >       0,     0,     0,     0,     0,     0,    35,     0,     0,     0,
1747 >       0,     0,     0,     0,   430,     0,     0,     0,     0,     0,
1748 >       0,     0,   586,   262,     0,     0,     0,     0,     0,     0,
1749 >       0,     0,     0,   252,     0,     0,     0,     0,   392,   241,
1750 >       0,     0,     0,     0,     0,   235,     0,   101,     0,     0,
1751 >       0,    41,   142,     0,     0,     0,     0,     0,     0,     0,
1752 >       0,     0,   132,   290,     0,     0,     0,     0,   285,     0,
1753 >       0,     0,     0,     0,     0,     0,   651,     0,     0,     0,
1754 >       0,     0,     0,     0,     0,    72,    73,     0,    71,    76,
1755 >      77,     0,    75,     0,     0,     0,     0,     0,    49,   307,
1756 >       0,     0,     0,     0,   302,   330,     0,     0,     0,   326,
1757 >       0,   294,   100,    99,    98,   648,   645,   644,   633,   635,
1758 >      27,    27,    27,    27,    27,    29,    28,   639,   640,   643,
1759 >     641,   646,   647,   649,   650,   642,   634,   636,   637,   638,
1760         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1761 <     340,     0,     0,   391,   404,     0,     0,     0,   406,   486,
1762 <     490,   506,   572,   520,   484,   514,   517,   485,   476,   477,
1763 <     493,   482,   483,   496,   481,   495,   494,   489,   488,   487,
1764 <     515,   475,   513,   570,   571,   510,   507,   557,   550,   567,
1765 <     568,   551,   552,   553,   554,   562,   555,   565,   569,   558,
1766 <     563,   559,   564,   556,   561,   560,   566,     0,   549,   512,
1767 <     532,   526,   543,   544,   527,   528,   529,   530,   538,   531,
1768 <     541,   545,   534,   539,   535,   540,   533,   537,   536,   542,
1769 <       0,   525,   505,   508,   519,   479,   480,   509,   498,   503,
1770 <     504,   501,   502,   499,   500,   492,   491,    35,    35,    35,
1771 <      37,    36,   573,   518,   521,   511,   516,   478,   497,     0,
1772 <       0,     0,     0,     0,     0,   575,     0,     0,     0,     0,
1773 <       0,     0,     0,     0,   244,     0,     0,     0,   376,     0,
1774 <       0,     0,   239,   235,   238,   220,   100,    99,     0,     0,
1775 <     112,     0,     0,   104,   105,   107,   106,    47,    48,     0,
1776 <       0,     0,     0,     0,     0,     0,     0,   124,     0,     0,
1777 <       0,   277,   657,   652,   656,   654,   658,   653,   655,    75,
1778 <      81,    73,    77,    76,    72,    71,    69,    70,     0,    68,
1779 <      74,    80,    78,    79,     0,     0,     0,   294,     0,     0,
1780 <     318,   292,    30,    31,    32,    33,    34,   216,   217,   210,
1781 <     212,   214,   213,   211,   206,   218,   209,   207,   208,   215,
1782 <     360,   362,   363,   374,   371,   368,   369,   370,     0,   367,
1783 <     357,   372,   373,   356,   361,   359,   358,   397,   398,   418,
1784 <     419,   411,     0,   410,   547,     0,   523,     0,    38,    39,
1785 <      40,   600,   599,     0,   598,   586,   585,   592,   591,     0,
1786 <     590,   594,   593,   258,   259,   268,   265,   270,   267,   266,
1787 <     272,   269,   271,   264,     0,   263,   257,   275,   274,   273,
1788 <     256,   389,   381,     0,   380,   388,   226,   227,   225,     0,
1789 <     224,   242,   241,     0,     0,     0,   108,     0,     0,     0,
1790 <       0,   103,   141,   139,   181,   178,   177,   170,   172,   187,
1791 <     182,   185,   180,   171,   186,   174,   183,   175,   184,   179,
1792 <     173,   176,     0,   169,   136,   138,   140,   152,   146,   163,
1793 <     164,   147,   148,   149,   150,   158,   151,   161,   165,   154,
1794 <     159,   155,   160,   153,   157,   156,   162,     0,   145,   137,
1795 <     285,   286,   284,    66,     0,   301,   307,   313,   316,   309,
1796 <     315,   310,   314,   312,   308,   311,     0,   306,   302,   324,
1797 <     329,   335,   338,   331,   337,   332,   336,   334,   330,   333,
1798 <       0,   328,   365,     0,   408,     0,   548,   524,   596,     0,
1799 <     588,     0,   261,     0,   378,     0,   222,     0,   240,   237,
1800 <     236,     0,     0,     0,     0,   102,   167,     0,   143,     0,
1801 <      67,   304,     0,   326,     0,   366,   409,   597,   589,   262,
1802 <     379,   223,   109,   118,   121,   120,   117,   122,   119,   116,
1803 <       0,   115,   111,   110,   168,   144,   305,   327,   113,     0,
1804 <     114
1761 >       0,     0,     0,   196,     0,     0,     0,     0,     0,     0,
1762 >       0,     0,     0,     0,     0,     0,     0,     0,   347,     0,
1763 >       0,   401,   414,     0,     0,     0,   416,   496,   500,   516,
1764 >     582,   530,   494,   524,   527,   495,   486,   487,   503,   492,
1765 >     493,   506,   491,   505,   504,   499,   498,   497,   525,   485,
1766 >     523,   580,   581,   520,   517,   567,   560,   577,   578,   561,
1767 >     562,   563,   564,   572,   565,   575,   579,   568,   573,   569,
1768 >     574,   566,   571,   570,   576,     0,   559,   522,   542,   536,
1769 >     553,   554,   537,   538,   539,   540,   548,   541,   551,   555,
1770 >     544,   549,   545,   550,   543,   547,   546,   552,     0,   535,
1771 >     515,   518,   529,   489,   490,   519,   508,   513,   514,   511,
1772 >     512,   509,   510,   502,   501,    35,    35,    35,    37,    36,
1773 >     583,   528,   531,   521,   526,   488,   507,     0,     0,     0,
1774 >       0,     0,     0,   585,     0,     0,     0,     0,     0,     0,
1775 >       0,     0,   251,     0,     0,     0,   386,     0,     0,     0,
1776 >     246,   242,   245,   227,   107,     0,     0,   119,     0,     0,
1777 >     111,   112,   114,   113,    47,    48,     0,     0,     0,     0,
1778 >       0,     0,     0,     0,   131,     0,     0,     0,   284,   667,
1779 >     662,   666,   664,   668,   663,   665,    84,    90,    82,    86,
1780 >      85,    79,    78,    80,    68,     0,    69,     0,    83,    81,
1781 >      89,    87,    88,     0,     0,     0,   301,     0,     0,   325,
1782 >     299,    30,    31,    32,    33,    34,   223,   224,   217,   219,
1783 >     221,   220,   218,   213,   225,   216,   214,   215,   222,   368,
1784 >     370,   371,   383,   380,   376,   377,   379,   378,     0,   375,
1785 >     365,   381,   382,   364,   369,   367,   384,   366,   407,   408,
1786 >     428,   429,   421,     0,   420,   557,     0,   533,     0,    38,
1787 >      39,    40,   610,   609,     0,   608,   596,   595,   602,   601,
1788 >       0,   600,   604,   603,   265,   266,   275,   272,   277,   274,
1789 >     273,   279,   276,   278,   271,     0,   270,   264,   282,   281,
1790 >     280,   263,   399,   391,     0,   390,   398,   233,   234,   232,
1791 >       0,   231,   249,   248,     0,     0,     0,   115,     0,     0,
1792 >       0,     0,   110,   148,   146,   188,   185,   184,   177,   179,
1793 >     194,   189,   192,   187,   178,   193,   181,   190,   182,   191,
1794 >     186,   180,   183,     0,   176,   143,   145,   147,   159,   153,
1795 >     170,   171,   154,   155,   156,   157,   165,   158,   168,   172,
1796 >     161,   166,   162,   167,   160,   164,   163,   169,     0,   152,
1797 >     144,   292,   293,   291,    70,    74,   308,   314,   320,   323,
1798 >     316,   322,   317,   321,   319,   315,   318,     0,   313,   309,
1799 >     331,   336,   342,   345,   338,   344,   339,   343,   341,   337,
1800 >     340,     0,   335,   373,     0,   418,     0,   558,   534,   606,
1801 >       0,   598,     0,   268,     0,   388,     0,   229,     0,   247,
1802 >     244,   243,     0,     0,     0,     0,   109,   174,     0,   150,
1803 >       0,   311,     0,   333,     0,   374,   419,   607,   599,   269,
1804 >     389,   230,   116,   125,   128,   127,   124,   129,   126,   123,
1805 >       0,   122,   118,   117,   175,   151,   312,   334,   120,     0,
1806 >     121
1807   };
1808  
1809   /* YYDEFGOTO[NTERM-NUM].  */
1810   static const yytype_int16 yydefgoto[] =
1811   {
1812 <      -1,     1,    25,   818,   819,   960,   961,    26,   248,   249,
1813 <     250,   251,    27,   284,   285,   286,   569,  1038,  1039,   287,
1814 <     288,   289,   290,   291,   292,   293,   294,   295,   296,   297,
1815 <      28,    74,    75,    76,    77,    78,    29,   239,   240,   241,
1816 <     242,   243,   244,  1002,  1003,  1004,  1005,  1006,  1148,  1280,
1817 <    1281,    30,    63,   533,   534,   535,   536,   537,   538,   539,
1818 <     540,   541,   761,  1197,  1198,   542,   757,  1172,  1173,    31,
1819 <      51,   345,   346,   347,   348,   349,   350,   351,   352,   353,
1820 <     354,   355,   356,   357,   358,   359,    32,    60,   507,   741,
1821 <    1139,  1140,   508,   509,   510,  1145,   993,   994,   511,   512,
1822 <      33,    58,   483,   484,   485,   486,   487,   488,   489,   727,
1823 <    1124,  1125,   490,   491,   492,    34,    64,   547,   548,   549,
1824 <     550,   551,    35,   302,   303,   304,    36,    67,   580,   581,
1825 <     582,   583,   584,   794,  1216,  1217,    37,    68,   588,   589,
1826 <     590,   591,   800,  1230,  1231,    38,    52,   373,   374,   375,
1827 <     376,   377,   378,   379,   380,   381,   382,   640,  1078,  1079,
1828 <     383,   384,   385,   386,    39,    59,   497,   736,  1133,  1134,
1829 <     498,   499,   500,   501,    40,    53,   390,   391,   392,   393,
1830 <      41,   123,   124,   125,    42,    55,   401,   658,  1092,  1093,
1831 <     402,   403,   404,   405,    43,   179,   180,   181,   182,   183,
1832 <     184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
1833 <     194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
1834 <     204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
1835 <     214,   215,   216,   217,   218,   219,   220,   221,   222,   223,
1836 <     224,   225,   226,   436,   940,   941,   227,   434,   917,   918,
1837 <     228,   229,   230,   231,    44,    57,   466,   467,   468,   469,
1838 <     470,   719,  1109,  1110,   471,   472,   473,   716,  1103,  1104,
1839 <      45,    98,    99,   100,   101,   102,   103,   104,   105,   106,
1840 <     107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
1841 <     117,    46,   262,   263,   264,   265,   266,   267,   268,   269,
1842 <     270
1812 >      -1,     1,    25,   835,   836,   978,   979,    26,   246,   247,
1813 >     248,   249,    27,   285,   286,   287,   288,   797,   798,   801,
1814 >     802,   289,   290,   291,   292,   293,   294,   295,   296,   297,
1815 >     298,   299,   300,   301,    28,    74,    75,    76,    77,    78,
1816 >      29,   238,   239,   240,   241,   242,  1019,  1020,  1021,  1022,
1817 >    1023,  1169,  1300,  1301,    30,    63,   538,   539,   540,   541,
1818 >     542,   543,   544,   545,   546,   769,  1218,  1219,   547,   765,
1819 >    1193,  1194,    31,    51,   349,   350,   351,   352,   353,   354,
1820 >     355,   356,   357,   358,   359,   360,   361,   362,   363,    32,
1821 >      60,   513,   750,  1160,  1161,   514,   515,   516,  1166,  1011,
1822 >    1012,   517,   518,    33,    58,   489,   490,   491,   492,   493,
1823 >     494,   495,   736,  1145,  1146,   496,   497,   498,    34,    64,
1824 >     552,   553,   554,   555,   556,    35,   306,   307,   308,    36,
1825 >      67,   588,   589,   590,   591,   592,   811,  1237,  1238,    37,
1826 >      68,   596,   597,   598,   599,   817,  1251,  1252,    38,    52,
1827 >     378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
1828 >     648,  1098,  1099,   388,   389,   390,   391,   392,    39,    59,
1829 >     503,   745,  1154,  1155,   504,   505,   506,   507,    40,    53,
1830 >     396,   397,   398,   399,    41,   123,   124,   125,    42,    55,
1831 >     407,   667,  1113,  1114,   408,   409,   410,   411,    43,   179,
1832 >     180,   181,   182,   183,   184,   185,   186,   187,   188,   189,
1833 >     190,   191,   192,   193,   194,   195,   196,   197,   198,   199,
1834 >     200,   201,   202,   203,   204,   205,   206,   207,   208,   209,
1835 >     210,   211,   212,   213,   214,   215,   216,   217,   218,   219,
1836 >     220,   221,   222,   223,   224,   225,   226,   442,   958,   959,
1837 >     227,   440,   935,   936,   228,   229,   230,   231,    44,    57,
1838 >     472,   473,   474,   475,   476,   728,  1130,  1131,   477,   478,
1839 >     479,   725,  1124,  1125,    45,    98,    99,   100,   101,   102,
1840 >     103,   104,   105,   106,   107,   108,   109,   110,   111,   112,
1841 >     113,   114,   115,   116,   117,    46,   260,   261,   262,   263,
1842 >     264,   265,   266,   267,   268
1843   };
1844  
1845   /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1846     STATE-NUM.  */
1847 < #define YYPACT_NINF -772
1847 > #define YYPACT_NINF -560
1848   static const yytype_int16 yypact[] =
1849   {
1850 <    -772,   691,  -772,  -190,  -234,  -231,  -772,  -772,  -772,  -225,
1851 <    -772,  -215,  -772,  -772,  -772,  -772,  -207,  -205,  -772,  -772,
1852 <    -202,  -194,  -772,  -772,  -174,  -772,  -772,  -772,  -772,  -772,
1853 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1854 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,   273,
1855 <     541,  -171,  -168,  -155,    14,  -146,   367,  -143,  -141,  -134,
1856 <    -131,     3,    41,  -128,  -112,   499,   326,  -109,   -98,    20,
1857 <    -115,   -90,   -87,   -81,     4,  -772,  -772,  -772,  -772,  -772,
1858 <     -71,   -68,   -48,   -45,   -24,   -15,    21,    23,    49,    54,
1859 <      57,    63,    77,    87,    88,    90,    98,    99,   274,  -772,
1860 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1861 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,   696,   449,
1862 <      47,  -772,   109,    32,  -772,  -772,   192,  -772,   112,   119,
1863 <     122,   130,   135,   146,   156,   161,   167,   168,   169,   177,
1864 <     183,   188,   196,   197,   199,   200,   203,   207,   211,   214,
1865 <     225,   232,   234,   236,   237,   238,  -772,   240,  -772,   246,
1866 <     253,   255,   256,   257,   262,   264,   265,   278,   279,   280,
1867 <     283,   284,   288,   289,   293,   301,   306,   309,   310,   108,
1868 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1869 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1870 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1871 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1872 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1873 <    -772,  -772,   316,   299,    58,   388,    45,   313,   314,    71,
1874 <    -772,  -772,  -772,  -772,    75,    82,   315,   322,    53,  -772,
1875 <    -772,  -772,   446,   344,  -772,   323,   324,   325,   330,   331,
1876 <     334,   336,    18,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1877 <    -772,   151,   340,   342,   346,   347,   349,   354,   357,  -772,
1878 <     359,   360,   362,   363,   152,  -772,  -772,  -772,  -772,  -772,
1879 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,    12,    70,
1880 <    -772,   365,    28,  -772,  -772,  -772,   128,   385,   437,   181,
1881 <    -772,    76,   487,   490,   412,   434,   500,   500,   501,   502,
1882 <     435,   440,   507,   500,   444,   447,   448,   450,   454,   384,
1883 <    -772,   390,   389,   391,   393,   394,   395,   396,   397,   398,
1884 <     400,   401,   402,   403,   404,     2,  -772,  -772,  -772,  -772,
1885 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1886 <     410,   409,   415,   416,   417,  -772,   418,   419,   422,   424,
1887 <     426,   428,   430,     8,  -772,  -772,  -772,  -772,  -772,  -772,
1888 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,   436,   438,
1889 <      16,  -772,  -772,  -772,   523,   455,  -772,  -772,   443,   451,
1890 <    -772,  -772,    26,  -772,  -772,  -772,   456,   500,   500,   522,
1891 <     503,   512,   566,   556,   521,   591,   592,   593,   530,   532,
1892 <     534,   500,   578,   537,   603,   607,   500,   610,   613,   594,
1893 <     614,   617,   558,   559,   488,   560,   495,   500,   500,   564,
1894 <     500,   570,   571,   572,  -117,   -91,   573,   574,   500,   500,
1895 <     640,   620,   500,   579,   580,   581,   582,   519,  -772,  -772,
1896 <    -772,   515,   517,  -772,   524,   525,    36,  -772,  -772,  -772,
1897 <    -772,  -772,  -772,  -772,   526,   529,   533,  -772,   535,   536,
1898 <     539,   540,   544,    22,  -772,  -772,  -772,  -772,  -772,  -772,
1899 <    -772,  -772,  -772,  -772,   545,  -772,   549,  -772,    11,  -772,
1900 <    -772,  -772,   553,  -772,   551,   552,   555,  -772,    30,  -772,
1901 <    -772,  -772,  -772,  -772,   586,   587,   561,  -772,   531,  -772,
1902 <     633,   645,   562,  -772,   563,   557,   565,  -772,   568,   569,
1903 <     575,  -772,   576,   206,  -772,  -772,  -772,  -772,  -772,  -772,
1904 <    -772,  -772,  -772,   577,   584,   585,   588,    17,  -772,  -772,
1905 <    -772,  -772,   605,   621,   629,   673,   631,   638,   500,   583,
1906 <    -772,  -772,   682,   641,   683,   688,   689,   690,   692,   589,
1907 <     697,   719,   702,   703,   596,  -772,   597,   590,  -772,   595,
1908 <      42,  -772,  -772,  -772,  -772,   599,   600,  -772,     5,  -772,
1909 <    -772,  -772,   708,   602,  -772,   604,   606,   608,  -772,   609,
1910 <     612,   624,   625,   632,   358,   636,   651,   652,   656,   657,
1911 <     659,   663,   668,   678,   679,   684,   686,   694,  -772,  -772,
1912 <     734,   736,   500,   750,   758,   759,   769,   749,   812,   819,
1913 <     500,   500,   640,   695,  -772,  -772,   805,    44,   806,   764,
1914 <     698,   808,   811,   813,   814,   833,   815,   816,   709,  -772,
1915 <     818,   820,   711,  -772,   713,  -772,   822,   823,   714,   716,
1916 <    -772,   718,   720,   721,   722,   723,   724,   725,   726,   727,
1917 <     729,   730,   731,   732,   733,   735,   737,   738,   739,   740,
1918 <     741,   742,   743,   744,   745,   746,   747,   748,   751,   674,
1919 <     752,   701,   753,   754,   755,   756,   757,   760,   761,   762,
1920 <     763,   765,   766,   767,   768,   770,   771,   355,   772,   773,
1921 <     774,   775,   776,   777,   778,  -772,   779,   500,   784,   780,
1922 <     836,   842,   781,  -772,  -772,   844,   824,   782,   857,   879,
1923 <     866,   872,   877,   786,  -772,   887,   785,   888,   787,  -772,
1924 <    -772,   788,   892,   897,   919,   792,  -772,   793,   794,  -772,
1925 <     171,   795,   796,  -772,  -772,   905,   863,   797,   907,   909,
1926 <     910,   800,   912,   807,  -772,  -772,   913,   914,   916,   809,
1927 <    -772,   810,   817,   821,   825,   826,   827,   828,  -772,   829,
1928 <     830,   831,   832,   834,   835,   837,   142,   838,   839,   840,
1929 <     841,  -772,  -772,   920,   843,   921,   845,  -772,  -772,   922,
1930 <     846,   847,  -772,   848,  -772,  -772,  -772,  -772,  -772,  -772,
1931 <    -772,  -772,  -772,   500,   500,   500,   500,   500,  -772,  -772,
1932 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1933 <    -772,  -772,  -772,   850,   851,   852,   853,   854,   855,   856,
1934 <     858,   859,   860,   861,   862,   864,  -772,   865,   867,   868,
1935 <     869,   870,    10,   871,   873,   874,   875,   876,   878,   880,
1936 <    -772,   881,   882,  -772,  -772,   883,   884,   918,  -772,  -772,
1937 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1938 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1939 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1940 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1941 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -187,  -772,  -772,
1942 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1943 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1944 <     -77,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1945 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,   640,   640,   640,
1946 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,    19,
1947 <     885,   886,    33,   889,   890,  -772,   891,   893,   630,   894,
1948 <     895,   896,   898,   899,  -772,   900,   923,   901,  -772,     7,
1949 <     902,   903,   904,   906,  -772,  -772,  -772,  -772,   908,   911,
1950 <    -772,   915,    96,  -772,  -772,  -772,  -772,  -772,  -772,   917,
1951 <     924,   476,   925,   926,   927,   728,   928,  -772,   929,   930,
1952 <     931,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1953 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,   -29,  -772,
1954 <    -772,  -772,  -772,  -772,   932,   445,   933,  -772,   934,   518,
1955 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1956 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1957 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,   -28,  -772,
1958 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1959 <    -772,  -772,   -26,  -772,  -772,   674,  -772,   701,  -772,  -772,
1960 <    -772,  -772,  -772,    79,  -772,  -772,  -772,  -772,  -772,   104,
1961 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1962 <    -772,  -772,  -772,  -772,   123,  -772,  -772,  -772,  -772,  -772,
1963 <    -772,  -772,  -772,   124,  -772,  -772,  -772,  -772,  -772,   139,
1964 <    -772,  -772,  -772,   940,   919,   935,  -772,   941,   936,   -69,
1965 <     937,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1966 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1967 <    -772,  -772,   140,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1968 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1969 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,   148,  -772,  -772,
1970 <    -772,  -772,  -772,  -772,   142,  -772,  -772,  -772,  -772,  -772,
1971 <    -772,  -772,  -772,  -772,  -772,  -772,   158,  -772,  -772,  -772,
1972 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1973 <     175,  -772,  -772,    10,  -772,   918,  -772,  -772,  -772,    19,
1974 <    -772,    33,  -772,   630,  -772,   923,  -772,     7,  -772,  -772,
1975 <    -772,   938,   149,   942,   943,  -772,  -772,   476,  -772,   728,
1976 <    -772,  -772,   445,  -772,   518,  -772,  -772,  -772,  -772,  -772,
1977 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1978 <     178,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,   149,
1979 <    -772
1850 >    -560,   667,  -560,  -206,  -223,  -221,  -560,  -560,  -560,  -218,
1851 >    -560,  -191,  -560,  -560,  -560,  -560,  -189,  -183,  -560,  -560,
1852 >    -154,  -136,  -560,  -560,  -133,  -560,  -560,  -560,  -560,  -560,
1853 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1854 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,    42,
1855 >     544,  -115,  -109,   -80,    32,   -72,   375,   -70,   -53,   -51,
1856 >     -33,    60,    87,   -20,   -18,   324,   334,    -5,    -3,    20,
1857 >     -89,    17,    35,    51,     9,  -560,  -560,  -560,  -560,  -560,
1858 >      61,    63,    73,    79,    96,   111,   117,   125,   131,   136,
1859 >     137,   152,   154,   156,   159,   162,   170,   175,   180,  -560,
1860 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1861 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,   709,   461,
1862 >      98,  -560,   195,    10,  -560,  -560,   266,  -560,   198,   199,
1863 >     202,   203,   206,   213,   214,   216,   217,   219,   229,   230,
1864 >     231,   232,   242,   243,   246,   250,   253,   256,   257,   259,
1865 >     261,   263,   265,   268,   275,   276,  -560,   277,  -560,   281,
1866 >     282,   284,   287,   291,   293,   295,   296,   299,   300,   307,
1867 >     314,   315,   316,   318,   319,   321,   322,   323,   327,   110,
1868 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1869 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1870 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1871 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1872 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1873 >    -560,  -560,     2,   509,    16,   326,    57,   330,    36,  -560,
1874 >    -560,  -560,     7,    77,   331,   332,    28,  -560,  -560,  -560,
1875 >     279,   211,  -560,   335,   338,   339,   341,   342,   343,   344,
1876 >       3,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,   200,
1877 >     345,   346,   348,   349,   352,   355,   356,   357,   358,   360,
1878 >     362,   363,   365,   366,   367,    74,  -560,  -560,  -560,  -560,
1879 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1880 >    -560,  -560,   197,     6,  -560,   368,    46,  -560,  -560,  -560,
1881 >     140,   173,   392,   329,  -560,   438,   328,   505,   441,   445,
1882 >     514,   514,   515,   516,   451,   452,   521,   514,   456,   457,
1883 >     459,   460,   462,   396,  -560,   398,   397,   401,   402,   403,
1884 >     404,   408,   409,   410,   411,   412,   413,   415,   416,     4,
1885 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1886 >    -560,  -560,  -560,  -560,   399,   417,   418,   419,   420,  -560,
1887 >     425,   426,   429,   430,   431,   433,   435,   436,   290,  -560,
1888 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1889 >    -560,  -560,  -560,  -560,   439,   440,    11,  -560,  -560,  -560,
1890 >     511,   446,  -560,  -560,   442,   449,  -560,  -560,    12,  -560,
1891 >    -560,  -560,   522,   514,   514,   590,   525,   526,   593,   573,
1892 >     532,   597,   599,   601,   546,   550,   551,   514,   598,   552,
1893 >     624,   627,   514,   628,   630,   610,   636,   637,   572,   575,
1894 >     508,   577,   510,   514,   514,   579,   514,   580,   583,   584,
1895 >    -105,   -99,   585,   586,   514,   514,   653,   633,   514,   589,
1896 >     592,   594,   595,   528,  -560,  -560,  -560,   533,   534,  -560,
1897 >     535,   536,    14,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1898 >     540,   539,   541,  -560,   543,   545,   547,   548,   549,    33,
1899 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1900 >     555,  -560,   556,  -560,    22,  -560,  -560,  -560,   553,  -560,
1901 >     558,   559,   560,  -560,     8,  -560,  -560,  -560,  -560,  -560,
1902 >     596,   554,  -560,   212,  -560,   645,   657,   564,  -560,   565,
1903 >     563,   566,  -560,   567,   568,   569,  -560,   570,    15,  -560,
1904 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,   574,   576,
1905 >     581,   582,    27,  -560,  -560,  -560,  -560,   608,   614,   632,
1906 >     685,   641,   643,   514,   588,  -560,  -560,   692,   648,   699,
1907 >     702,   703,   704,   705,   708,   -63,   -49,   710,   711,   730,
1908 >     712,   713,   604,  -560,   611,   607,  -560,   612,    97,  -560,
1909 >    -560,  -560,  -560,   619,   617,  -560,    30,  -560,  -560,  -560,
1910 >     724,   622,  -560,   631,   634,   635,  -560,   654,   656,   660,
1911 >     664,   665,   272,   676,   677,   681,   684,   693,   695,   696,
1912 >     698,   701,   706,   707,   714,   715,  -560,  -560,   761,   764,
1913 >     514,   767,   768,   776,   779,   763,   823,   828,   514,   514,
1914 >     653,   716,  -560,  -560,   809,   -75,   812,   770,   700,   818,
1915 >     819,   820,   821,   843,   827,   829,   830,   718,  -560,   831,
1916 >     832,   723,  -560,   726,  -560,   834,   835,   728,   727,  -560,
1917 >     729,   732,   733,   734,   735,   736,   737,   739,   740,   741,
1918 >     742,   743,   744,   745,   746,   747,   748,   749,   750,   751,
1919 >     752,   753,   754,   755,   756,   757,   758,   759,   663,   760,
1920 >     697,   762,   765,   766,   769,   771,   772,   773,   774,   775,
1921 >     777,   778,   780,   782,   783,   784,    54,   785,   786,   787,
1922 >     788,   789,   790,   791,  -560,   792,   514,   793,   794,   871,
1923 >     873,   796,  -560,  -560,   874,   833,   795,   877,   844,   880,
1924 >     886,   889,   800,  -560,   902,   798,   903,   802,  -560,  -560,
1925 >     801,   904,   913,   936,   806,  -560,   807,  -560,   194,   808,
1926 >     810,  -560,  -560,   919,   876,   811,   922,   923,   925,   813,
1927 >     927,   822,  -560,  -560,   928,   929,   930,   824,  -560,   825,
1928 >     826,   836,   837,   838,   839,   840,  -560,   841,   842,   845,
1929 >     846,   847,   848,   849,   850,  -560,  -560,  -199,  -560,  -560,
1930 >    -560,  -196,  -560,   851,   852,   853,   854,   855,  -560,  -560,
1931 >     931,   856,   933,   857,  -560,  -560,   937,   858,   860,  -560,
1932 >     862,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1933 >     514,   514,   514,   514,   514,  -560,  -560,  -560,  -560,  -560,
1934 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1935 >     863,   864,   865,   866,   867,   868,   869,   872,   875,   878,
1936 >     879,   881,   882,  -560,   883,   884,   885,   887,   888,   141,
1937 >     890,   891,   892,   893,   894,   895,   896,   897,  -560,   898,
1938 >     899,  -560,  -560,   900,   901,   934,  -560,  -560,  -560,  -560,
1939 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1940 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1941 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1942 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1943 >    -560,  -560,  -560,  -560,  -560,  -182,  -560,  -560,  -560,  -560,
1944 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1945 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,   -30,  -560,
1946 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1947 >    -560,  -560,  -560,  -560,  -560,   653,   653,   653,  -560,  -560,
1948 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,    13,   905,   906,
1949 >      21,   907,   908,  -560,   909,   910,   870,   911,   912,   914,
1950 >     915,   916,  -560,   917,   935,   918,  -560,   -47,   920,   921,
1951 >     940,   924,  -560,  -560,  -560,   926,   932,  -560,   938,    89,
1952 >    -560,  -560,  -560,  -560,  -560,  -560,   939,   942,   479,   943,
1953 >     944,   945,   725,   946,  -560,   947,   948,   949,  -560,  -560,
1954 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1955 >    -560,  -560,  -560,  -560,  -560,   -63,  -560,   -49,  -560,  -560,
1956 >    -560,  -560,  -560,   950,   507,   951,  -560,   952,   531,  -560,
1957 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1958 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1959 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,    -6,  -560,
1960 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1961 >    -560,  -560,  -560,    65,  -560,  -560,   663,  -560,   697,  -560,
1962 >    -560,  -560,  -560,  -560,   100,  -560,  -560,  -560,  -560,  -560,
1963 >     101,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1964 >    -560,  -560,  -560,  -560,  -560,   106,  -560,  -560,  -560,  -560,
1965 >    -560,  -560,  -560,  -560,   109,  -560,  -560,  -560,  -560,  -560,
1966 >     112,  -560,  -560,  -560,   959,   936,   953,  -560,   941,   954,
1967 >     -91,   955,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1968 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1969 >    -560,  -560,  -560,   123,  -560,  -560,  -560,  -560,  -560,  -560,
1970 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1971 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,   126,  -560,
1972 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1973 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,   133,  -560,  -560,
1974 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1975 >    -560,   148,  -560,  -560,   141,  -560,   934,  -560,  -560,  -560,
1976 >      13,  -560,    21,  -560,   870,  -560,   935,  -560,   -47,  -560,
1977 >    -560,  -560,   956,   262,   958,   960,  -560,  -560,   479,  -560,
1978 >     725,  -560,   507,  -560,   531,  -560,  -560,  -560,  -560,  -560,
1979 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1980 >     150,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,   262,
1981 >    -560
1982   };
1983  
1984   /* YYPGOTO[NTERM-NUM].  */
1985   static const yytype_int16 yypgoto[] =
1986   {
1987 <    -772,  -772,  -772,  -753,  -315,  -771,  -450,  -772,  -772,   939,
1988 <    -772,  -772,  -772,  -772,   791,  -772,  -772,  -772,  -149,  -772,
1989 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1990 <    -772,  -772,   983,  -772,  -772,  -772,  -772,  -772,   944,  -772,
1991 <    -772,  -772,  -772,  -772,    56,  -772,  -772,  -772,  -772,  -772,
1992 <    -228,  -772,  -772,  -772,   548,  -772,  -772,  -772,  -772,  -772,
1993 <    -772,  -772,  -772,  -772,  -197,  -772,  -772,  -772,  -175,  -772,
1994 <    -772,  -772,   798,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1995 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1996 <    -772,  -184,  -772,   618,  -772,  -772,  -772,   -42,  -772,  -772,
1997 <    -772,  -772,  -772,   622,  -772,  -772,  -772,  -772,  -772,  -772,
1998 <    -772,  -147,  -772,  -772,  -772,  -772,  -772,  -772,   598,  -772,
1999 <    -772,  -772,  -772,  -772,   849,  -772,  -772,  -772,  -772,   538,
2000 <    -772,  -772,  -772,  -772,  -772,  -151,  -772,  -772,  -772,   528,
2001 <    -772,  -772,  -772,  -772,  -137,  -772,  -772,  -772,   789,  -772,
2002 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -102,
2003 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -101,
2004 <    -772,   648,  -772,  -772,  -772,  -772,  -772,   790,  -772,  -772,
2005 <    -772,  -772,  1013,  -772,  -772,  -772,  -772,  -772,  -772,   -85,
2006 <    -772,   783,  -772,  -772,  -772,  -772,   969,  -772,  -772,  -772,
2007 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
2008 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
2009 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
2010 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
2011 <    -772,  -772,  -772,  -772,  -772,    55,  -772,  -772,  -772,    59,
2012 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,   693,  -772,  -772,
2013 <    -772,  -772,  -772,   -86,  -772,  -772,  -772,  -772,  -772,   -79,
2014 <    -772,  -772,  1060,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
2015 <    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
2016 <    -772,  -772,  -772,   945,  -772,  -772,  -772,  -772,  -772,  -772,
2017 <    -772
1987 >    -560,  -560,  -560,  -316,  -319,  -559,  -456,  -560,  -560,   957,
1988 >    -560,  -560,  -560,  -560,   799,  -560,  -560,  -560,    18,  -560,
1989 >      19,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1990 >    -560,  -560,  -560,  -560,  -560,  -560,  1000,  -560,  -560,  -560,
1991 >    -560,  -560,   859,  -560,  -560,  -560,  -560,    56,  -560,  -560,
1992 >    -560,  -560,  -560,  -224,  -560,  -560,  -560,   561,  -560,  -560,
1993 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -169,  -560,  -560,
1994 >    -560,  -166,  -560,  -560,  -560,   781,  -560,  -560,  -560,  -560,
1995 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
1996 >    -560,  -560,  -560,  -560,  -153,  -560,   600,  -560,  -560,  -560,
1997 >     -48,  -560,  -560,  -560,  -560,  -560,   629,  -560,  -560,  -560,
1998 >    -560,  -560,  -560,  -560,  -137,  -560,  -560,  -560,  -560,  -560,
1999 >    -560,   591,  -560,  -560,  -560,  -560,  -560,   961,  -560,  -560,
2000 >    -560,  -560,   557,  -560,  -560,  -560,  -560,  -560,  -138,  -560,
2001 >    -560,  -560,   578,  -560,  -560,  -560,  -560,  -130,  -560,  -560,
2002 >    -560,   797,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
2003 >    -560,  -560,   -94,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
2004 >    -560,  -560,  -560,  -103,  -560,   661,  -560,  -560,  -560,  -560,
2005 >    -560,   804,  -560,  -560,  -560,  -560,  1041,  -560,  -560,  -560,
2006 >    -560,  -560,  -560,   -90,  -560,   803,  -560,  -560,  -560,  -560,
2007 >     989,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
2008 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
2009 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
2010 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
2011 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,    52,
2012 >    -560,  -560,  -560,    55,  -560,  -560,  -560,  -560,  -560,  -560,
2013 >    -560,   738,  -560,  -560,  -560,  -560,  -560,   -85,  -560,  -560,
2014 >    -560,  -560,  -560,   -88,  -560,  -560,  1075,  -560,  -560,  -560,
2015 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,  -560,
2016 >    -560,  -560,  -560,  -560,  -560,  -560,  -560,   962,  -560,  -560,
2017 >    -560,  -560,  -560,  -560,  -560
2018   };
2019  
2020   /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
2021     positive, shift that token.  If negative, reduce the rule which
2022     number is the opposite.  If YYTABLE_NINF, syntax error.  */
2023 < #define YYTABLE_NINF -102
2023 > #define YYTABLE_NINF -109
2024   static const yytype_int16 yytable[] =
2025   {
2026 <     708,   605,   606,   331,   236,    70,   585,    49,   612,   360,
2027 <      50,   361,   493,   576,   362,   121,    54,   387,   543,   254,
2028 <    1075,   300,  1076,   474,   332,   333,    56,   397,   334,   300,
2029 <    1101,   502,   363,   121,    61,    71,    62,   459,   544,    65,
2030 <     460,   707,   245,   576,  1107,    72,   475,    66,   387,    47,
2031 <      48,   364,  1094,   255,   245,   365,  1095,   699,   700,   493,
2032 <    1052,  1053,  1054,  1055,  1056,   476,   256,    69,  1136,   477,
2033 <     118,   585,   236,   119,   366,   461,   367,   503,   462,   257,
2034 <     258,   259,   260,   701,   702,   122,   120,   388,   368,   335,
2035 <     336,   337,   662,   663,   338,   126,   504,   998,   232,   261,
2036 <     233,   505,   339,   122,    73,   586,   676,   234,   369,   127,
2037 <     235,   681,   577,   252,   340,   341,   128,   129,   388,   463,
2038 <     301,   545,   692,   693,   305,   695,   398,   130,   301,   253,
2039 <     342,   343,   298,   705,   706,   131,   464,   710,   370,   246,
2040 <    1253,   132,   577,   299,   494,   133,   134,   478,   135,   389,
2041 <     546,   246,   306,   271,   136,   307,   479,   480,   344,   399,
2042 <     506,   308,  1096,   137,   138,   371,  1097,   247,   139,   587,
2043 <     586,   311,   998,   140,   312,   495,   578,   141,   142,   247,
2044 <     389,   143,   845,   272,   144,   145,  1098,  1099,  1100,   481,
2045 <     400,   494,   146,   397,   313,  1102,   999,   314,   147,   148,
2046 <    1273,   149,   150,   151,   152,   153,   578,   524,  1137,  1108,
2047 <    1203,  1232,  1138,  1234,  1204,  1233,   154,  1235,   315,   273,
2048 <     237,  1274,   495,  1275,   155,   156,   157,   316,   158,  1077,
2049 <     525,   159,   160,   238,   587,   161,   496,   579,   848,   849,
2050 <     372,  -101,   633,   777,   309,   801,   162,   482,   648,   526,
2051 <     599,   738,   274,   527,   275,   276,   652,   769,   559,   595,
2052 <    1000,   465,   733,   317,  1276,   318,   659,   579,   593,   163,
2053 <     745,   999,   395,   164,    70,    79,   722,   165,   166,   167,
2054 <     168,   169,   796,   496,   513,   170,   171,    80,   237,  1036,
2055 <    1037,   319,   398,   522,   172,   277,   320,   278,   279,   321,
2056 <     474,   238,    81,    82,    71,   322,   528,   835,    83,  -101,
2057 <      84,   516,   280,   518,    72,   843,   844,   459,  1238,   323,
2058 <     460,   519,  1239,   475,   173,   399,   174,   271,   175,   324,
2059 <     325,   529,   326,  1001,   176,  1000,  1150,  1277,  1278,   177,
2060 <     327,   328,   476,  1240,   178,   543,   477,  1241,   457,   281,
2061 <     530,   394,    85,    86,   406,   461,   400,   272,   462,    87,
2062 <      88,   407,  1242,  1244,   408,   544,  1243,  1245,   127,   957,
2063 <     958,   959,   409,    73,  1279,   128,   129,   410,  1246,  1256,
2064 <      89,    90,  1247,  1257,   282,   283,   130,  1258,   411,   502,
2065 <     561,  1259,   574,   273,   131,    91,    92,  1261,   412,   463,
2066 <     132,  1262,   970,   413,   133,   134,    93,   135,  1001,   414,
2067 <     415,   416,   531,   136,  1263,    94,   464,  1288,  1264,   417,
2068 <     598,  1289,   137,   138,   478,   418,   274,   139,   275,   276,
2069 <     419,   532,   140,   479,   480,   503,   141,   142,   420,   421,
2070 <     143,   422,   423,   144,   145,   424,   763,   524,   545,   425,
2071 <     360,   146,   361,   426,   504,   362,   427,   147,   148,   505,
2072 <     149,   150,   151,   152,   153,   707,   481,   428,   604,   277,
2073 <     525,   278,   279,   363,   429,   154,   430,   546,   431,   432,
2074 <     433,  1154,   435,   155,   156,   157,   280,   158,   437,   526,
2075 <     159,   160,   364,   527,   161,   438,   365,   439,   440,   441,
2076 <     254,    95,    96,    97,   442,   162,   443,   444,  1155,   813,
2077 <     814,   815,   816,   817,   329,   366,   596,   367,   506,  1206,
2078 <     445,   446,   447,   281,   482,   448,   449,  1156,   163,   368,
2079 <     450,   451,   164,  1157,   255,   452,   165,   166,   167,   168,
2080 <     169,   465,    79,   453,   170,   171,   528,   256,   454,   369,
2081 <    1158,   455,   456,   172,    80,   514,   515,   520,   282,   283,
2082 <     257,   258,   259,   260,   521,   552,   553,   554,   597,    81,
2083 <      82,   529,   555,   556,  1159,    83,   557,    84,   558,   370,
2084 <     261,  1160,   562,   173,   563,   174,   602,   175,   564,   565,
2085 <     530,   566,  1220,   176,  1207,  1161,   567,   600,   177,   568,
2086 <     601,   570,   571,   178,   572,   573,   371,   592,   603,   609,
2087 <     604,   607,   608,  1162,   610,  1163,  1164,   611,   613,    85,
2088 <      86,   614,   615,   618,   616,  1208,    87,    88,   617,   619,
2089 <     661,   620,   664,   621,  1209,   622,   623,   624,   625,   626,
2090 <     627,  1210,   628,   629,   630,   631,   632,    89,    90,   635,
2091 <    1115,   636,   531,  1211,   654,  1212,  1213,   637,   638,   639,
2092 <     641,   642,    91,    92,   643,  1165,   644,  1221,   645,  1214,
2093 <     646,   532,   647,    93,  1116,  1166,   667,   665,   650,  1215,
2094 <     651,   372,    94,  1117,  1167,   656,   666,   668,  1168,  1118,
2095 <    1169,     2,     3,   657,   655,   669,     4,   331,  1222,  1254,
2096 <    1170,   670,   671,   672,   673,  1119,   674,  1223,   675,   677,
2097 <    1171,   678,     5,   679,  1224,     6,     7,   680,   332,   333,
2098 <     682,     8,   334,   683,   685,   684,  1225,   686,  1226,  1227,
2099 <     689,  1120,   687,   688,   690,   897,     9,   691,   694,  1121,
2100 <      10,    11,  1228,    12,   696,   697,   698,   703,   704,    13,
2101 <     707,   709,  1229,   711,   712,   713,   714,   717,   715,   718,
2102 <     747,   748,   920,    14,   751,   724,   720,   721,    95,    96,
2103 <      97,   725,   750,    15,    16,   726,   752,   728,   729,   771,
2104 <    1122,   730,   731,   335,   336,   337,   732,   735,   338,  1177,
2105 <      17,   737,   740,   742,   743,   772,   339,   744,  1123,   755,
2106 <     749,   753,   754,   773,   774,   775,    18,   756,   340,   341,
2107 <     758,   759,   776,   779,   781,   780,   765,   760,   762,   782,
2108 <     783,   784,   778,   785,   342,   343,   766,   767,   787,   788,
2109 <     768,   786,   793,   789,   790,   791,   792,   795,   798,   803,
2110 <      19,   804,   799,   805,   833,   806,   834,   807,   808,    20,
2111 <      21,   809,   344,    22,    23,   898,   899,   900,   901,   902,
2112 <     836,   903,   904,   810,   811,   905,   906,   907,   837,   838,
2113 <     908,   812,   909,   910,   911,   820,   912,   913,   914,   839,
2114 <     840,   915,   921,   922,   923,   924,   925,   916,   926,   927,
2115 <     821,   822,   928,   929,   930,   823,   824,   931,   825,   932,
2116 <     933,   934,   826,   935,   936,   937,    24,   827,   938,  1178,
2117 <    1179,  1180,  1181,  1182,   939,  1183,  1184,   828,   829,  1185,
2118 <    1186,  1187,   841,   830,  1188,   831,  1189,  1190,  1191,   842,
2119 <    1192,  1193,  1194,   832,   846,  1195,   847,   850,   851,   853,
2120 <     852,  1196,   854,   857,   855,   856,   858,   859,   860,   861,
2121 <     863,   862,   864,   865,   866,   868,   867,   869,   971,   870,
2122 <     871,   872,   873,   874,   875,   876,   877,   973,   878,   879,
2123 <     880,   881,   882,   974,   883,   976,   884,   885,   886,   887,
2124 <     888,   889,   890,   891,   892,   893,   894,   895,   979,   980,
2125 <     896,   919,   942,   943,   944,   945,   946,   981,   977,   947,
2126 <     948,   949,   950,   982,   951,   952,   953,   954,   983,   955,
2127 <     956,   962,   963,   964,   965,   966,   967,   968,   985,   987,
2128 <     975,   969,   972,   990,   978,   984,   988,   986,   991,   992,
2129 <     989,   995,   996,   997,  1007,  1008,  1009,  1010,  1012,  1011,
2130 <    1013,  1014,  1015,  1016,  1018,  1019,  1017,  1020,  1021,  1022,
2131 <    1248,  1044,  1046,  1048,  1091,  1260,  1023,   310,  1151,  1132,
2132 <    1024,  1290,  1285,  1271,  1025,  1026,  1027,  1028,  1029,  1030,
2133 <    1031,  1032,  1251,  1033,  1034,   575,  1035,  1040,  1041,  1042,
2134 <    1043,   764,  1284,  1143,  1047,  1045,  1050,  1051,  1049,  1057,
2135 <    1058,  1059,  1060,  1061,  1062,  1063,  1269,  1064,  1065,  1066,
2136 <    1067,  1068,  1249,  1069,  1070,   734,  1071,  1072,  1073,  1074,
2137 <    1080,  1286,  1081,  1082,  1083,  1084,   802,  1085,   797,  1086,
2138 <    1087,  1088,  1089,  1090,  1105,  1106,   746,  1287,  1111,  1112,
2139 <    1113,  1265,  1114,  1126,  1127,  1128,   396,  1129,  1130,  1131,
2140 <    1135,  1141,  1142,   634,  1270,   770,   739,  1146,   458,  1144,
2141 <    1266,   594,  1237,  1147,  1236,  1268,  1152,  1149,   330,   723,
2142 <    1267,     0,   649,  1153,  1174,  1175,  1176,  1199,  1200,  1201,
2143 <    1202,  1205,  1218,  1219,  1250,     0,  1255,  1272,  1252,     0,
2144 <     653,  1282,  1283,   517,     0,   660,     0,   523,     0,     0,
2026 >     717,   613,   614,   465,   252,   335,   466,   593,   620,   508,
2027 >      70,   121,   393,   403,  1157,   465,   529,   499,   466,   716,
2028 >      49,   304,    50,   499,  1122,    54,   336,   337,   548,   243,
2029 >     338,   593,  1128,   121,   480,    47,    48,   236,   253,   530,
2030 >      71,   467,  1054,    70,   468,  1056,  1055,   304,   549,  1057,
2031 >      72,   254,    56,   467,    61,   509,   468,   481,   531,  1115,
2032 >      62,   236,   532,  1116,   255,   256,   257,   258,   975,   976,
2033 >     977,   708,   709,    71,   510,   269,   482,   710,   711,   511,
2034 >     483,   122,   394,    72,   259,   469,   795,   796,   243,    65,
2035 >    1015,   339,   340,   341,   671,   672,   342,   469,   584,   393,
2036 >     799,   800,   470,   122,   343,   270,   594,    66,   685,    73,
2037 >      69,   127,   404,   690,   470,   533,   344,   345,   128,   129,
2038 >     305,  1274,   865,   866,   701,   702,   244,   704,   118,   130,
2039 >     594,   550,   346,   347,   119,   714,   715,   131,   512,   719,
2040 >     534,   271,    73,   132,   395,   405,   305,   133,   134,   500,
2041 >     135,  1094,   309,  1095,   245,   500,   136,  1158,   484,   535,
2042 >     551,  1159,   348,   120,   716,   137,   138,   485,   486,   394,
2043 >     139,   126,   595,   232,   272,   140,   273,   274,   406,   141,
2044 >     142,    79,   501,   143,   862,   244,   144,   145,   501,  1016,
2045 >     233,  1123,   234,    80,   146,  1015,   595,   585,   584,  1129,
2046 >     147,   148,   487,   149,   150,   151,   152,   153,    81,    82,
2047 >     235,  1117,   548,   245,    83,  1118,    84,   275,   154,   276,
2048 >     277,   278,   279,   250,   536,   251,   155,   156,   157,   471,
2049 >     158,   395,   549,   159,   160,  1253,   280,   161,   302,  1254,
2050 >     303,   471,   537,   502,   785,   564,   641,   523,   162,   502,
2051 >     754,   313,   401,   661,   668,  1017,   731,   771,    85,    86,
2052 >     488,   310,   281,   586,   747,    87,    88,   403,   237,   777,
2053 >     527,   603,   818,   163,   282,   742,  -108,   164,   521,   311,
2054 >     529,   165,   166,   167,   168,   169,    89,    90,   601,   170,
2055 >     171,   364,   237,   365,  1016,   312,   366,   585,   519,   172,
2056 >    -108,    91,    92,   530,   604,   315,  1255,   316,   283,   284,
2057 >    1256,   852,    93,  1293,   367,   550,   582,   317,   524,   860,
2058 >     861,    94,   531,   318,   587,   252,   532,   508,  1018,   173,
2059 >     174,  1171,   175,   368,  1294,   269,  1295,   369,   176,   813,
2060 >     319,  1259,  1261,   177,   551,  1260,  1262,  1263,   178,  1096,
2061 >    1265,  1264,   463,  1267,  1266,   320,   370,  1268,   371,   253,
2062 >    1017,   321,  1097,   586,  1277,   270,   404,  1279,  1278,   322,
2063 >     372,  1280,   254,   509,  1281,   323,   127,  1296,  1282,   533,
2064 >     324,   325,   612,   128,   129,   255,   256,   257,   258,  1283,
2065 >     373,  1308,   510,  1284,   130,  1309,   326,   511,   327,   405,
2066 >     328,   271,   131,   329,   534,   259,   330,   988,   132,    95,
2067 >      96,    97,   133,   134,   331,   135,  1119,  1120,  1121,   332,
2068 >     374,   136,   333,   535,   587,   830,   831,   832,   833,   834,
2069 >     137,   138,   406,  1018,   272,   139,   273,   274,   608,   400,
2070 >     140,   566,   412,   413,   141,   142,   414,   415,   143,   375,
2071 >     416,   144,   145,  1297,  1298,   758,   512,   417,   418,   146,
2072 >     419,   420,   364,   421,   365,   147,   148,   366,   149,   150,
2073 >     151,   152,   153,   422,   423,   424,   425,   275,   376,   276,
2074 >     277,   278,   279,   154,  1175,   367,   426,   427,   536,  1299,
2075 >     428,   155,   156,   157,   429,   158,   280,   430,   159,   160,
2076 >     431,   432,   161,   433,   368,   434,   537,   435,   369,   436,
2077 >     480,  1176,   437,   162,  1071,  1072,  1073,  1074,  1075,   438,
2078 >     439,   441,   281,   605,   377,   443,   444,   370,   445,   371,
2079 >    1177,   446,   657,   481,   282,   447,  1178,   448,   163,   449,
2080 >     450,   372,   164,   451,   452,    79,   165,   166,   167,   168,
2081 >     169,   453,   482,  1179,   170,   171,   483,    80,   454,   455,
2082 >     456,   373,   457,   458,   172,   459,   460,   461,   283,   284,
2083 >     606,   462,    81,    82,   520,   525,   526,  1180,    83,   557,
2084 >      84,  1227,   558,   559,  1181,   560,   561,   562,   563,   567,
2085 >     568,   374,   569,   570,   173,   174,   571,   175,  1182,   572,
2086 >     573,   574,   575,   176,   576,  1241,   577,   578,   177,   579,
2087 >     580,   581,   600,   178,   607,   609,  1183,   610,  1184,  1185,
2088 >     375,   611,    85,    86,   612,   615,   616,   617,   618,    87,
2089 >      88,   619,   621,   622,   484,   623,   624,   626,   625,   627,
2090 >     643,   628,   663,   485,   486,   629,   630,   631,   632,   376,
2091 >      89,    90,   633,   634,   635,   636,   637,   638,  1228,   639,
2092 >     640,   644,   645,   646,   647,    91,    92,     2,     3,   649,
2093 >     650,  1186,     4,   651,   652,   653,    93,   654,   487,   655,
2094 >     656,  1187,  1242,   659,   660,    94,   665,   664,     5,  1229,
2095 >    1188,     6,     7,   666,  1189,   377,  1190,     8,   670,  1230,
2096 >     673,   674,   675,   676,   677,  1191,  1231,   679,   678,   680,
2097 >     335,   681,     9,  1243,  1275,  1192,    10,    11,  1232,    12,
2098 >    1233,  1234,   682,  1244,   915,    13,   683,   684,   687,   686,
2099 >    1245,   336,   337,  1235,   688,   338,   488,   689,   691,    14,
2100 >     692,   693,  1246,  1236,  1247,  1248,   694,   695,   696,    15,
2101 >      16,   697,   698,   699,   700,   703,   705,  1249,   938,   706,
2102 >     707,   712,   713,   716,   718,   720,    17,  1250,   721,   724,
2103 >     722,   723,   756,    95,    96,    97,   759,   726,   727,   729,
2104 >     730,   733,    18,   734,   779,   735,  1198,   737,   760,   738,
2105 >     780,   739,   740,   741,   749,   757,   339,   340,   341,   744,
2106 >     746,   342,   751,   752,   753,   761,   762,   763,   781,   343,
2107 >     764,   766,   767,   768,   770,   773,   782,   783,    19,   784,
2108 >     774,   344,   345,   787,   788,   775,   776,    20,    21,   786,
2109 >     789,    22,    23,   790,   791,   792,   793,   346,   347,   794,
2110 >     805,   803,   804,   806,   807,   808,   916,   917,   918,   919,
2111 >     920,   810,   809,   921,   922,   820,   812,   923,   924,   925,
2112 >     815,   816,   926,   821,   927,   928,   929,   348,   930,   931,
2113 >     932,   850,   822,   933,   851,   823,   824,   853,   854,   934,
2114 >     939,   940,   941,   942,   943,    24,   855,   944,   945,   856,
2115 >    1136,   946,   947,   948,   857,   825,   949,   826,   950,   951,
2116 >     952,   827,   953,   954,   955,   828,   829,   956,  1199,  1200,
2117 >    1201,  1202,  1203,   957,  1137,  1204,  1205,   837,   838,  1206,
2118 >    1207,  1208,   839,  1138,  1209,   840,  1210,  1211,  1212,  1139,
2119 >    1213,  1214,  1215,   858,   841,  1216,   842,   843,   859,   844,
2120 >     864,  1217,   845,   867,   869,  1140,   868,   846,   847,   870,
2121 >     871,   872,   873,   874,   998,   848,   849,   863,   875,   878,
2122 >     876,   877,   879,   880,   881,   883,   884,   882,   886,   989,
2123 >     887,  1141,   885,   888,   889,   890,   891,   892,   893,  1142,
2124 >     894,   895,   896,   897,   898,   899,   900,   901,   902,   903,
2125 >     904,   905,   906,   907,   908,   909,   910,   911,   912,   913,
2126 >     914,   937,   991,   960,   992,   994,   961,   962,   997,   995,
2127 >     963,   999,   964,   965,   966,   967,   968,  1000,   969,   970,
2128 >    1001,   971,  1143,   972,   973,   974,   980,   981,   982,   983,
2129 >     984,   985,   986,  1003,  1005,  1008,   987,   993,   990,   996,
2130 >    1144,  1002,  1004,  1006,  1009,  1007,  1010,  1013,  1014,  1024,
2131 >    1026,  1025,  1027,  1029,  1030,  1028,  1031,  1032,  1033,  1035,
2132 >    1036,  1037,  1063,  1034,  1065,  1038,  1039,  1040,  1067,  1269,
2133 >    1112,  1153,  1272,  1224,   314,  1172,  1225,  1041,  1042,  1043,
2134 >    1044,  1045,  1046,  1047,   583,  1310,  1048,  1049,  1050,  1051,
2135 >    1052,  1053,  1058,  1059,  1060,  1061,  1062,   522,  1066,   772,
2136 >    1064,  1069,  1068,  1070,  1076,  1077,  1078,  1079,  1080,  1081,
2137 >    1082,  1305,  1304,  1083,   755,  1291,  1084,  1270,   743,  1085,
2138 >    1086,  1164,  1087,  1088,  1089,  1090,  1091,  1289,  1092,  1093,
2139 >     642,  1100,  1101,  1102,  1103,  1104,  1105,  1106,  1107,  1108,
2140 >    1109,  1110,  1111,   778,  1306,   814,  1126,  1127,  1132,  1133,
2141 >    1134,  1135,  1147,  1148,  1307,  1149,  1150,  1151,  1152,  1156,
2142 >    1285,  1162,  1163,  1290,   402,   748,  1286,  1167,   464,  1165,
2143 >    1258,  1257,  1287,   334,   819,   658,  1168,  1288,     0,     0,
2144 >    1173,     0,  1170,  1174,  1195,  1196,  1197,  1220,  1221,  1222,
2145 >    1223,  1226,  1239,  1240,  1271,     0,  1276,  1292,  1273,  1302,
2146 >     662,  1303,     0,   528,     0,     0,     0,     0,     0,     0,
2147 >     732,   669,     0,     0,     0,     0,     0,     0,     0,     0,
2148 >       0,     0,   565,     0,     0,     0,     0,     0,     0,     0,
2149         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2150 <       0,     0,     0,     0,     0,     0,     0,   560
2150 >       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2151 >       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2152 >       0,     0,     0,     0,     0,     0,     0,   602
2153   };
2154  
2155   #define yypact_value_is_default(yystate) \
2156 <  ((yystate) == (-772))
2156 >  ((yystate) == (-560))
2157  
2158   #define yytable_value_is_error(yytable_value) \
2159    YYID (0)
2160  
2161   static const yytype_int16 yycheck[] =
2162   {
2163 <     450,   316,   317,     1,     1,     1,     1,   241,   323,     1,
2164 <     241,     3,     1,     1,     6,     1,   241,     1,     1,     1,
2165 <      10,     1,    12,     1,    22,    23,   241,     1,    26,     1,
2166 <      11,     1,    24,     1,   241,    31,   241,     1,    21,   241,
2167 <       4,   110,     1,     1,    11,    41,    24,   241,     1,   239,
2168 <     240,    43,   239,    35,     1,    47,   243,   174,   175,     1,
2169 <     813,   814,   815,   816,   817,    43,    48,   241,    61,    47,
2170 <     241,     1,     1,   241,    66,    39,    68,    47,    42,    61,
2171 <      62,    63,    64,   174,   175,    71,   241,    71,    80,    87,
2172 <      88,    89,   407,   408,    92,   241,    66,     1,   241,    81,
2173 <     241,    71,   100,    71,   100,   100,   421,   241,   100,     1,
2174 <     241,   426,   100,   241,   112,   113,     8,     9,    71,    83,
2175 <     100,   104,   437,   438,   239,   440,   100,    19,   100,   241,
2176 <     128,   129,   241,   448,   449,    27,   100,   452,   130,    98,
2177 <     209,    33,   100,   241,   133,    37,    38,   125,    40,   133,
2178 <     133,    98,   242,     1,    46,   242,   134,   135,   156,   133,
2179 <     130,   242,   239,    55,    56,   157,   243,   126,    60,   164,
2180 <     100,   242,     1,    65,   242,   164,   164,    69,    70,   126,
2181 <     133,    73,   632,    31,    76,    77,   957,   958,   959,   167,
2182 <     164,   133,    84,     1,   242,   176,   100,   242,    90,    91,
2183 <      51,    93,    94,    95,    96,    97,   164,     1,   201,   176,
2184 <     239,   239,   205,   239,   243,   243,   108,   243,   242,    67,
2185 <     217,    72,   164,    74,   116,   117,   118,   242,   120,   219,
2186 <      24,   123,   124,   230,   164,   127,   225,   225,   194,   195,
2187 <     232,   238,   240,   558,   240,   240,   138,   225,   240,    43,
2188 <     174,   240,   100,    47,   102,   103,   240,   240,   240,   131,
2189 <     164,   225,   240,   242,   115,   242,   240,   225,   240,   161,
2190 <     240,   100,   240,   165,     1,     1,   240,   169,   170,   171,
2191 <     172,   173,   240,   225,   239,   177,   178,    13,   217,   147,
2192 <     148,   242,   100,   240,   186,   143,   242,   145,   146,   242,
2193 <       1,   230,    28,    29,    31,   242,   100,   622,    34,   238,
2194 <      36,   240,   160,   238,    41,   630,   631,     1,   239,   242,
2195 <       4,   239,   243,    24,   216,   133,   218,     1,   220,   242,
2196 <     242,   125,   242,   237,   226,   164,   240,   188,   189,   231,
2197 <     242,   242,    43,   239,   236,     1,    47,   243,   240,   197,
2198 <     144,   242,    78,    79,   242,    39,   164,    31,    42,    85,
2199 <      86,   242,   239,   239,   242,    21,   243,   243,     1,    14,
2200 <      15,    16,   242,   100,   225,     8,     9,   242,   239,   239,
2201 <     106,   107,   243,   243,   232,   233,    19,   239,   242,     1,
2202 <     239,   243,   240,    67,    27,   121,   122,   239,   242,    83,
2203 <      33,   243,   717,   242,    37,    38,   132,    40,   237,   242,
2204 <     242,   242,   206,    46,   239,   141,   100,   239,   243,   242,
2205 <     239,   243,    55,    56,   125,   242,   100,    60,   102,   103,
2206 <     242,   225,    65,   134,   135,    47,    69,    70,   242,   242,
2207 <      73,   242,   242,    76,    77,   242,   240,     1,   104,   242,
2208 <       1,    84,     3,   242,    66,     6,   242,    90,    91,    71,
2209 <      93,    94,    95,    96,    97,   110,   167,   242,   110,   143,
2210 <      24,   145,   146,    24,   242,   108,   242,   133,   242,   242,
2211 <     242,     5,   242,   116,   117,   118,   160,   120,   242,    43,
2212 <     123,   124,    43,    47,   127,   242,    47,   242,   242,   242,
2213 <       1,   227,   228,   229,   242,   138,   242,   242,    32,   151,
2214 <     152,   153,   154,   155,   240,    66,   131,    68,   130,    74,
2215 <     242,   242,   242,   197,   225,   242,   242,    51,   161,    80,
2216 <     242,   242,   165,    57,    35,   242,   169,   170,   171,   172,
2217 <     173,   225,     1,   242,   177,   178,   100,    48,   242,   100,
2218 <      74,   242,   242,   186,    13,   242,   242,   242,   232,   233,
2219 <      61,    62,    63,    64,   242,   242,   242,   242,   131,    28,
2220 <      29,   125,   242,   242,    98,    34,   242,    36,   242,   130,
2221 <      81,   105,   242,   216,   242,   218,   174,   220,   242,   242,
2222 <     144,   242,    74,   226,   149,   119,   242,   110,   231,   242,
2223 <     110,   242,   242,   236,   242,   242,   157,   242,   174,   174,
2224 <     110,   110,   110,   137,   174,   139,   140,   110,   174,    78,
2225 <      79,   174,   174,   239,   174,   180,    85,    86,   174,   239,
2226 <     174,   242,   110,   242,   189,   242,   242,   242,   242,   242,
2227 <     242,   196,   242,   242,   242,   242,   242,   106,   107,   239,
2228 <      20,   242,   206,   208,   131,   210,   211,   242,   242,   242,
2229 <     242,   242,   121,   122,   242,   189,   242,   149,   242,   224,
2230 <     242,   225,   242,   132,    44,   199,   110,   174,   242,   234,
2231 <     242,   232,   141,    53,   208,   242,   174,   131,   212,    59,
2232 <     214,     0,     1,   242,   239,   174,     5,     1,   180,  1149,
2233 <     224,   110,   110,   110,   174,    75,   174,   189,   174,   131,
2234 <     234,   174,    21,   110,   196,    24,    25,   110,    22,    23,
2235 <     110,    30,    26,   110,   110,   131,   208,   110,   210,   211,
2236 <     242,   101,   174,   174,   174,    61,    45,   242,   174,   109,
2237 <      49,    50,   224,    52,   174,   174,   174,   174,   174,    58,
2238 <     110,   131,   234,   174,   174,   174,   174,   242,   239,   242,
2239 <     174,   174,    61,    72,   131,   239,   242,   242,   227,   228,
2240 <     229,   242,   241,    82,    83,   242,   131,   242,   242,   174,
2241 <     150,   242,   242,    87,    88,    89,   242,   242,    92,    61,
2242 <      99,   242,   239,   242,   242,   174,   100,   242,   168,   242,
2243 <     239,   239,   239,   174,   131,   174,   115,   242,   112,   113,
2244 <     242,   242,   174,   131,   131,   174,   239,   242,   242,   131,
2245 <     131,   131,   239,   131,   128,   129,   242,   242,   131,   110,
2246 <     242,   242,   242,   131,   131,   239,   239,   242,   239,   131,
2247 <     149,   239,   242,   239,   110,   239,   110,   239,   239,   158,
2248 <     159,   239,   156,   162,   163,   181,   182,   183,   184,   185,
2249 <     110,   187,   188,   239,   239,   191,   192,   193,   110,   110,
2250 <     196,   239,   198,   199,   200,   239,   202,   203,   204,   110,
2251 <     131,   207,   181,   182,   183,   184,   185,   213,   187,   188,
2252 <     239,   239,   191,   192,   193,   239,   239,   196,   239,   198,
2253 <     199,   200,   239,   202,   203,   204,   215,   239,   207,   181,
2254 <     182,   183,   184,   185,   213,   187,   188,   239,   239,   191,
2255 <     192,   193,   110,   239,   196,   239,   198,   199,   200,   110,
2256 <     202,   203,   204,   239,   239,   207,   131,   131,   174,   131,
2257 <     242,   213,   131,   110,   131,   131,   131,   131,   239,   131,
2258 <     239,   131,   239,   131,   131,   239,   242,   239,   174,   239,
2259 <     239,   239,   239,   239,   239,   239,   239,   131,   239,   239,
2260 <     239,   239,   239,   131,   239,   131,   239,   239,   239,   239,
2261 <     239,   239,   239,   239,   239,   239,   239,   239,   131,   110,
2262 <     239,   239,   239,   239,   239,   239,   239,   131,   174,   239,
2263 <     239,   239,   239,   131,   239,   239,   239,   239,   131,   239,
2264 <     239,   239,   239,   239,   239,   239,   239,   239,   131,   131,
2265 <     239,   242,   242,   131,   242,   239,   239,   242,   131,   110,
2266 <     242,   239,   239,   239,   239,   239,   131,   174,   131,   242,
2267 <     131,   131,   242,   131,   131,   131,   239,   131,   239,   239,
2268 <     110,   131,   131,   131,   136,  1204,   239,    74,  1002,   136,
2269 <     239,  1289,  1259,  1247,   239,   239,   239,   239,   239,   239,
2270 <     239,   239,   131,   239,   239,   284,   239,   239,   239,   239,
2271 <     239,   533,  1257,   179,   239,   242,   239,   239,   242,   239,
2272 <     239,   239,   239,   239,   239,   239,  1243,   239,   239,   239,
2273 <     239,   239,  1144,   239,   239,   483,   239,   239,   239,   239,
2274 <     239,  1262,   239,   239,   239,   239,   588,   239,   580,   239,
2275 <     239,   239,   239,   239,   239,   239,   508,  1264,   239,   239,
2276 <     239,  1233,   239,   239,   239,   239,   123,   239,   239,   239,
2277 <     239,   239,   239,   345,  1245,   547,   498,   239,   179,   243,
2278 <    1235,   302,  1097,   242,  1095,  1241,   239,   242,    98,   466,
2279 <    1239,    -1,   373,   239,   239,   239,   239,   239,   239,   239,
2280 <     239,   239,   239,   239,   239,    -1,   239,   239,   242,    -1,
2281 <     390,   239,   239,   239,    -1,   402,    -1,   248,    -1,    -1,
2163 >     456,   320,   321,     1,     1,     1,     4,     1,   327,     1,
2164 >       1,     1,     1,     1,    61,     1,     1,     1,     4,   110,
2165 >     243,     1,   243,     1,    11,   243,    22,    23,     1,     1,
2166 >      26,     1,    11,     1,     1,   241,   242,     1,    35,    24,
2167 >      31,    39,   241,     1,    42,   241,   245,     1,    21,   245,
2168 >      41,    48,   243,    39,   243,    47,    42,    24,    43,   241,
2169 >     243,     1,    47,   245,    61,    62,    63,    64,    14,    15,
2170 >      16,   176,   177,    31,    66,     1,    43,   176,   177,    71,
2171 >      47,    71,    71,    41,    81,    83,   149,   150,     1,   243,
2172 >       1,    87,    88,    89,   413,   414,    92,    83,     1,     1,
2173 >     149,   150,   100,    71,   100,    31,   100,   243,   427,   100,
2174 >     243,     1,   100,   432,   100,   100,   112,   113,     8,     9,
2175 >     100,   212,   197,   198,   443,   444,    98,   446,   243,    19,
2176 >     100,   104,   128,   129,   243,   454,   455,    27,   130,   458,
2177 >     125,    67,   100,    33,   133,   133,   100,    37,    38,   133,
2178 >      40,    10,   241,    12,   126,   133,    46,   204,   125,   144,
2179 >     133,   208,   158,   243,   110,    55,    56,   134,   135,    71,
2180 >      60,   243,   166,   243,   100,    65,   102,   103,   166,    69,
2181 >      70,     1,   166,    73,   640,    98,    76,    77,   166,   100,
2182 >     243,   178,   243,    13,    84,     1,   166,   100,     1,   178,
2183 >      90,    91,   169,    93,    94,    95,    96,    97,    28,    29,
2184 >     243,   241,     1,   126,    34,   245,    36,   143,   108,   145,
2185 >     146,   147,   148,   243,   209,   243,   116,   117,   118,   227,
2186 >     120,   133,    21,   123,   124,   241,   162,   127,   243,   245,
2187 >     243,   227,   227,   227,   563,   242,   242,   240,   138,   227,
2188 >     242,   242,   242,   242,   242,   166,   242,   242,    78,    79,
2189 >     227,   244,   188,   166,   242,    85,    86,     1,   232,   242,
2190 >     242,   131,   242,   163,   200,   242,   240,   167,   242,   244,
2191 >       1,   171,   172,   173,   174,   175,   106,   107,   242,   179,
2192 >     180,     1,   232,     3,   100,   244,     6,   100,   241,   189,
2193 >     240,   121,   122,    24,   131,   244,   241,   244,   234,   235,
2194 >     245,   630,   132,    51,    24,   104,   242,   244,   241,   638,
2195 >     639,   141,    43,   244,   227,     1,    47,     1,   239,   219,
2196 >     220,   242,   222,    43,    72,     1,    74,    47,   228,   242,
2197 >     244,   241,   241,   233,   133,   245,   245,   241,   238,   208,
2198 >     241,   245,   242,   241,   245,   244,    66,   245,    68,    35,
2199 >     166,   244,   221,   166,   241,    31,   100,   241,   245,   244,
2200 >      80,   245,    48,    47,   241,   244,     1,   115,   245,   100,
2201 >     244,   244,   110,     8,     9,    61,    62,    63,    64,   241,
2202 >     100,   241,    66,   245,    19,   245,   244,    71,   244,   133,
2203 >     244,    67,    27,   244,   125,    81,   244,   726,    33,   229,
2204 >     230,   231,    37,    38,   244,    40,   975,   976,   977,   244,
2205 >     130,    46,   242,   144,   227,   153,   154,   155,   156,   157,
2206 >      55,    56,   166,   239,   100,    60,   102,   103,   110,   244,
2207 >      65,   241,   244,   244,    69,    70,   244,   244,    73,   159,
2208 >     244,    76,    77,   191,   192,   243,   130,   244,   244,    84,
2209 >     244,   244,     1,   244,     3,    90,    91,     6,    93,    94,
2210 >      95,    96,    97,   244,   244,   244,   244,   143,   188,   145,
2211 >     146,   147,   148,   108,     5,    24,   244,   244,   209,   227,
2212 >     244,   116,   117,   118,   244,   120,   162,   244,   123,   124,
2213 >     244,   244,   127,   244,    43,   244,   227,   244,    47,   244,
2214 >       1,    32,   244,   138,   830,   831,   832,   833,   834,   244,
2215 >     244,   244,   188,   131,   234,   244,   244,    66,   244,    68,
2216 >      51,   244,   242,    24,   200,   244,    57,   244,   163,   244,
2217 >     244,    80,   167,   244,   244,     1,   171,   172,   173,   174,
2218 >     175,   244,    43,    74,   179,   180,    47,    13,   244,   244,
2219 >     244,   100,   244,   244,   189,   244,   244,   244,   234,   235,
2220 >     241,   244,    28,    29,   244,   244,   244,    98,    34,   244,
2221 >      36,    74,   244,   244,   105,   244,   244,   244,   244,   244,
2222 >     244,   130,   244,   244,   219,   220,   244,   222,   119,   244,
2223 >     244,   244,   244,   228,   244,    74,   244,   244,   233,   244,
2224 >     244,   244,   244,   238,   176,   110,   137,   176,   139,   140,
2225 >     159,   176,    78,    79,   110,   110,   110,   176,   176,    85,
2226 >      86,   110,   176,   176,   125,   176,   176,   241,   176,   241,
2227 >     241,   244,   131,   134,   135,   244,   244,   244,   244,   188,
2228 >     106,   107,   244,   244,   244,   244,   244,   244,   151,   244,
2229 >     244,   244,   244,   244,   244,   121,   122,     0,     1,   244,
2230 >     244,   192,     5,   244,   244,   244,   132,   244,   169,   244,
2231 >     244,   202,   151,   244,   244,   141,   244,   241,    21,   182,
2232 >     211,    24,    25,   244,   215,   234,   217,    30,   176,   192,
2233 >     110,   176,   176,   110,   131,   226,   199,   110,   176,   110,
2234 >       1,   110,    45,   182,  1170,   236,    49,    50,   211,    52,
2235 >     213,   214,   176,   192,    61,    58,   176,   176,   176,   131,
2236 >     199,    22,    23,   226,   110,    26,   227,   110,   110,    72,
2237 >     110,   131,   211,   236,   213,   214,   110,   110,   176,    82,
2238 >      83,   176,   244,   176,   244,   176,   176,   226,    61,   176,
2239 >     176,   176,   176,   110,   131,   176,    99,   236,   176,   241,
2240 >     176,   176,   176,   229,   230,   231,   131,   244,   244,   244,
2241 >     244,   241,   115,   244,   176,   244,    61,   244,   131,   244,
2242 >     176,   244,   244,   244,   241,   241,    87,    88,    89,   244,
2243 >     244,    92,   244,   244,   244,   241,   241,   244,   176,   100,
2244 >     244,   244,   244,   244,   244,   241,   131,   176,   151,   176,
2245 >     244,   112,   113,   131,   176,   244,   244,   160,   161,   241,
2246 >     131,   164,   165,   131,   131,   131,   131,   128,   129,   131,
2247 >     110,   131,   131,   131,   131,   241,   183,   184,   185,   186,
2248 >     187,   244,   241,   190,   191,   131,   244,   194,   195,   196,
2249 >     241,   244,   199,   241,   201,   202,   203,   158,   205,   206,
2250 >     207,   110,   241,   210,   110,   241,   241,   110,   110,   216,
2251 >     183,   184,   185,   186,   187,   218,   110,   190,   191,   110,
2252 >      20,   194,   195,   196,   131,   241,   199,   241,   201,   202,
2253 >     203,   241,   205,   206,   207,   241,   241,   210,   183,   184,
2254 >     185,   186,   187,   216,    44,   190,   191,   241,   241,   194,
2255 >     195,   196,   241,    53,   199,   241,   201,   202,   203,    59,
2256 >     205,   206,   207,   110,   241,   210,   241,   241,   110,   241,
2257 >     131,   216,   241,   131,   244,    75,   176,   241,   241,   131,
2258 >     131,   131,   131,   110,   110,   241,   241,   241,   131,   241,
2259 >     131,   131,   131,   131,   241,   131,   131,   241,   241,   176,
2260 >     241,   101,   244,   241,   241,   241,   241,   241,   241,   109,
2261 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2262 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2263 >     241,   241,   131,   241,   131,   131,   241,   241,   131,   176,
2264 >     241,   131,   241,   241,   241,   241,   241,   131,   241,   241,
2265 >     131,   241,   152,   241,   241,   241,   241,   241,   241,   241,
2266 >     241,   241,   241,   131,   131,   131,   244,   241,   244,   244,
2267 >     170,   241,   244,   241,   131,   244,   110,   241,   241,   241,
2268 >     131,   241,   176,   131,   131,   244,   131,   244,   131,   131,
2269 >     131,   131,   131,   241,   131,   241,   241,   241,   131,   110,
2270 >     136,   136,   131,  1055,    74,  1019,  1057,   241,   241,   241,
2271 >     241,   241,   241,   241,   285,  1309,   241,   241,   241,   241,
2272 >     241,   241,   241,   241,   241,   241,   241,   238,   241,   538,
2273 >     244,   241,   244,   241,   241,   241,   241,   241,   241,   241,
2274 >     241,  1280,  1278,   241,   514,  1268,   241,  1165,   489,   241,
2275 >     241,   181,   241,   241,   241,   241,   241,  1264,   241,   241,
2276 >     349,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2277 >     241,   241,   241,   552,  1282,   588,   241,   241,   241,   241,
2278 >     241,   241,   241,   241,  1284,   241,   241,   241,   241,   241,
2279 >    1254,   241,   241,  1266,   123,   504,  1256,   241,   179,   245,
2280 >    1118,  1116,  1260,    98,   596,   378,   244,  1262,    -1,    -1,
2281 >     241,    -1,   244,   241,   241,   241,   241,   241,   241,   241,
2282 >     241,   241,   241,   241,   241,    -1,   241,   241,   244,   241,
2283 >     396,   241,    -1,   246,    -1,    -1,    -1,    -1,    -1,    -1,
2284 >     472,   408,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2285 >      -1,    -1,   260,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2286 >      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2287 >      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2288        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2289 <      -1,    -1,    -1,    -1,    -1,    -1,    -1,   262
2289 >      -1,    -1,    -1,    -1,    -1,    -1,    -1,   306
2290   };
2291  
2292   /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
2293     symbol of state STATE-NUM.  */
2294   static const yytype_uint16 yystos[] =
2295   {
2296 <       0,   245,     0,     1,     5,    21,    24,    25,    30,    45,
2297 <      49,    50,    52,    58,    72,    82,    83,    99,   115,   149,
2298 <     158,   159,   162,   163,   215,   246,   251,   256,   274,   280,
2299 <     295,   313,   330,   344,   359,   366,   370,   380,   389,   408,
2300 <     418,   424,   428,   438,   498,   514,   535,   239,   240,   241,
2301 <     241,   314,   390,   419,   241,   429,   241,   499,   345,   409,
2302 <     331,   241,   241,   296,   360,   241,   241,   371,   381,   241,
2303 <       1,    31,    41,   100,   275,   276,   277,   278,   279,     1,
2296 >       0,   247,     0,     1,     5,    21,    24,    25,    30,    45,
2297 >      49,    50,    52,    58,    72,    82,    83,    99,   115,   151,
2298 >     160,   161,   164,   165,   218,   248,   253,   258,   280,   286,
2299 >     300,   318,   335,   349,   364,   371,   375,   385,   394,   414,
2300 >     424,   430,   434,   444,   504,   520,   541,   241,   242,   243,
2301 >     243,   319,   395,   425,   243,   435,   243,   505,   350,   415,
2302 >     336,   243,   243,   301,   365,   243,   243,   376,   386,   243,
2303 >       1,    31,    41,   100,   281,   282,   283,   284,   285,     1,
2304        13,    28,    29,    34,    36,    78,    79,    85,    86,   106,
2305 <     107,   121,   122,   132,   141,   227,   228,   229,   515,   516,
2306 <     517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
2307 <     527,   528,   529,   530,   531,   532,   533,   534,   241,   241,
2308 <     241,     1,    71,   425,   426,   427,   241,     1,     8,     9,
2305 >     107,   121,   122,   132,   141,   229,   230,   231,   521,   522,
2306 >     523,   524,   525,   526,   527,   528,   529,   530,   531,   532,
2307 >     533,   534,   535,   536,   537,   538,   539,   540,   243,   243,
2308 >     243,     1,    71,   431,   432,   433,   243,     1,     8,     9,
2309        19,    27,    33,    37,    38,    40,    46,    55,    56,    60,
2310        65,    69,    70,    73,    76,    77,    84,    90,    91,    93,
2311        94,    95,    96,    97,   108,   116,   117,   118,   120,   123,
2312 <     124,   127,   138,   161,   165,   169,   170,   171,   172,   173,
2313 <     177,   178,   186,   216,   218,   220,   226,   231,   236,   439,
2314 <     440,   441,   442,   443,   444,   445,   446,   447,   448,   449,
2315 <     450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
2316 <     460,   461,   462,   463,   464,   465,   466,   467,   468,   469,
2317 <     470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
2318 <     480,   481,   482,   483,   484,   485,   486,   490,   494,   495,
2319 <     496,   497,   241,   241,   241,   241,     1,   217,   230,   281,
2320 <     282,   283,   284,   285,   286,     1,    98,   126,   252,   253,
2321 <     254,   255,   241,   241,     1,    35,    48,    61,    62,    63,
2322 <      64,    81,   536,   537,   538,   539,   540,   541,   542,   543,
2323 <     544,     1,    31,    67,   100,   102,   103,   143,   145,   146,
2324 <     160,   197,   232,   233,   257,   258,   259,   263,   264,   265,
2325 <     266,   267,   268,   269,   270,   271,   272,   273,   241,   241,
2326 <       1,   100,   367,   368,   369,   239,   242,   242,   242,   240,
2327 <     276,   242,   242,   242,   242,   242,   242,   242,   242,   242,
2328 <     242,   242,   242,   242,   242,   242,   242,   242,   242,   240,
2329 <     516,     1,    22,    23,    26,    87,    88,    89,    92,   100,
2330 <     112,   113,   128,   129,   156,   315,   316,   317,   318,   319,
2331 <     320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
2332 <       1,     3,     6,    24,    43,    47,    66,    68,    80,   100,
2333 <     130,   157,   232,   391,   392,   393,   394,   395,   396,   397,
2334 <     398,   399,   400,   404,   405,   406,   407,     1,    71,   133,
2335 <     420,   421,   422,   423,   242,   240,   426,     1,   100,   133,
2336 <     164,   430,   434,   435,   436,   437,   242,   242,   242,   242,
2337 <     242,   242,   242,   242,   242,   242,   242,   242,   242,   242,
2338 <     242,   242,   242,   242,   242,   242,   242,   242,   242,   242,
2339 <     242,   242,   242,   242,   491,   242,   487,   242,   242,   242,
2340 <     242,   242,   242,   242,   242,   242,   242,   242,   242,   242,
2341 <     242,   242,   242,   242,   242,   242,   242,   240,   440,     1,
2342 <       4,    39,    42,    83,   100,   225,   500,   501,   502,   503,
2343 <     504,   508,   509,   510,     1,    24,    43,    47,   125,   134,
2344 <     135,   167,   225,   346,   347,   348,   349,   350,   351,   352,
2345 <     356,   357,   358,     1,   133,   164,   225,   410,   414,   415,
2346 <     416,   417,     1,    47,    66,    71,   130,   332,   336,   337,
2347 <     338,   342,   343,   239,   242,   242,   240,   282,   238,   239,
2348 <     242,   242,   240,   253,     1,    24,    43,    47,   100,   125,
2349 <     144,   206,   225,   297,   298,   299,   300,   301,   302,   303,
2350 <     304,   305,   309,     1,    21,   104,   133,   361,   362,   363,
2351 <     364,   365,   242,   242,   242,   242,   242,   242,   242,   240,
2352 <     537,   239,   242,   242,   242,   242,   242,   242,   242,   260,
2353 <     242,   242,   242,   242,   240,   258,     1,   100,   164,   225,
2354 <     372,   373,   374,   375,   376,     1,   100,   164,   382,   383,
2355 <     384,   385,   242,   240,   368,   131,   131,   131,   239,   174,
2356 <     110,   110,   174,   174,   110,   248,   248,   110,   110,   174,
2357 <     174,   110,   248,   174,   174,   174,   174,   174,   239,   239,
2358 <     242,   242,   242,   242,   242,   242,   242,   242,   242,   242,
2359 <     242,   242,   242,   240,   316,   239,   242,   242,   242,   242,
2360 <     401,   242,   242,   242,   242,   242,   242,   242,   240,   392,
2361 <     242,   242,   240,   421,   131,   239,   242,   242,   431,   240,
2362 <     435,   174,   248,   248,   110,   174,   174,   110,   131,   174,
2363 <     110,   110,   110,   174,   174,   174,   248,   131,   174,   110,
2364 <     110,   248,   110,   110,   131,   110,   110,   174,   174,   242,
2365 <     174,   242,   248,   248,   174,   248,   174,   174,   174,   174,
2366 <     175,   174,   175,   174,   174,   248,   248,   110,   250,   131,
2367 <     248,   174,   174,   174,   174,   239,   511,   242,   242,   505,
2368 <     242,   242,   240,   501,   239,   242,   242,   353,   242,   242,
2369 <     242,   242,   242,   240,   347,   242,   411,   242,   240,   415,
2370 <     239,   333,   242,   242,   242,   240,   337,   174,   174,   239,
2371 <     241,   131,   131,   239,   239,   242,   242,   310,   242,   242,
2372 <     242,   306,   242,   240,   298,   239,   242,   242,   242,   240,
2373 <     362,   174,   174,   174,   131,   174,   174,   248,   239,   131,
2374 <     174,   131,   131,   131,   131,   131,   242,   131,   110,   131,
2375 <     131,   239,   239,   242,   377,   242,   240,   373,   239,   242,
2376 <     386,   240,   383,   131,   239,   239,   239,   239,   239,   239,
2377 <     239,   239,   239,   151,   152,   153,   154,   155,   247,   248,
2378 <     239,   239,   239,   239,   239,   239,   239,   239,   239,   239,
2379 <     239,   239,   239,   110,   110,   248,   110,   110,   110,   110,
2380 <     131,   110,   110,   248,   248,   250,   239,   131,   194,   195,
2381 <     131,   174,   242,   131,   131,   131,   131,   110,   131,   131,
2382 <     239,   131,   131,   239,   239,   131,   131,   242,   239,   239,
2383 <     239,   239,   239,   239,   239,   239,   239,   239,   239,   239,
2384 <     239,   239,   239,   239,   239,   239,   239,   239,   239,   239,
2385 <     239,   239,   239,   239,   239,   239,   239,    61,   181,   182,
2386 <     183,   184,   185,   187,   188,   191,   192,   193,   196,   198,
2387 <     199,   200,   202,   203,   204,   207,   213,   492,   493,   239,
2388 <      61,   181,   182,   183,   184,   185,   187,   188,   191,   192,
2389 <     193,   196,   198,   199,   200,   202,   203,   204,   207,   213,
2390 <     488,   489,   239,   239,   239,   239,   239,   239,   239,   239,
2391 <     239,   239,   239,   239,   239,   239,   239,    14,    15,    16,
2392 <     249,   250,   239,   239,   239,   239,   239,   239,   239,   242,
2393 <     248,   174,   242,   131,   131,   239,   131,   174,   242,   131,
2394 <     110,   131,   131,   131,   239,   131,   242,   131,   239,   242,
2395 <     131,   131,   110,   340,   341,   239,   239,   239,     1,   100,
2396 <     164,   237,   287,   288,   289,   290,   291,   239,   239,   131,
2397 <     174,   242,   131,   131,   131,   242,   131,   239,   131,   131,
2398 <     131,   239,   239,   239,   239,   239,   239,   239,   239,   239,
2399 <     239,   239,   239,   239,   239,   239,   147,   148,   261,   262,
2400 <     239,   239,   239,   239,   131,   242,   131,   239,   131,   242,
2401 <     239,   239,   247,   247,   247,   247,   247,   239,   239,   239,
2402 <     239,   239,   239,   239,   239,   239,   239,   239,   239,   239,
2403 <     239,   239,   239,   239,   239,    10,    12,   219,   402,   403,
2404 <     239,   239,   239,   239,   239,   239,   239,   239,   239,   239,
2405 <     239,   136,   432,   433,   239,   243,   239,   243,   249,   249,
2406 <     249,    11,   176,   512,   513,   239,   239,    11,   176,   506,
2407 <     507,   239,   239,   239,   239,    20,    44,    53,    59,    75,
2408 <     101,   109,   150,   168,   354,   355,   239,   239,   239,   239,
2409 <     239,   239,   136,   412,   413,   239,    61,   201,   205,   334,
2410 <     335,   239,   239,   179,   243,   339,   239,   242,   292,   242,
2411 <     240,   288,   239,   239,     5,    32,    51,    57,    74,    98,
2412 <     105,   119,   137,   139,   140,   189,   199,   208,   212,   214,
2413 <     224,   234,   311,   312,   239,   239,   239,    61,   181,   182,
2414 <     183,   184,   185,   187,   188,   191,   192,   193,   196,   198,
2415 <     199,   200,   202,   203,   204,   207,   213,   307,   308,   239,
2416 <     239,   239,   239,   239,   243,   239,    74,   149,   180,   189,
2417 <     196,   208,   210,   211,   224,   234,   378,   379,   239,   239,
2418 <      74,   149,   180,   189,   196,   208,   210,   211,   224,   234,
2419 <     387,   388,   239,   243,   239,   243,   493,   489,   239,   243,
2420 <     239,   243,   239,   243,   239,   243,   239,   243,   110,   341,
2421 <     239,   131,   242,   209,   250,   239,   239,   243,   239,   243,
2422 <     262,   239,   243,   239,   243,   403,   433,   513,   507,   355,
2423 <     413,   335,   239,    51,    72,    74,   115,   188,   189,   225,
2424 <     293,   294,   239,   239,   312,   308,   379,   388,   239,   243,
2425 <     294
2312 >     124,   127,   138,   163,   167,   171,   172,   173,   174,   175,
2313 >     179,   180,   189,   219,   220,   222,   228,   233,   238,   445,
2314 >     446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
2315 >     456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
2316 >     466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
2317 >     476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
2318 >     486,   487,   488,   489,   490,   491,   492,   496,   500,   501,
2319 >     502,   503,   243,   243,   243,   243,     1,   232,   287,   288,
2320 >     289,   290,   291,     1,    98,   126,   254,   255,   256,   257,
2321 >     243,   243,     1,    35,    48,    61,    62,    63,    64,    81,
2322 >     542,   543,   544,   545,   546,   547,   548,   549,   550,     1,
2323 >      31,    67,   100,   102,   103,   143,   145,   146,   147,   148,
2324 >     162,   188,   200,   234,   235,   259,   260,   261,   262,   267,
2325 >     268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
2326 >     278,   279,   243,   243,     1,   100,   372,   373,   374,   241,
2327 >     244,   244,   244,   242,   282,   244,   244,   244,   244,   244,
2328 >     244,   244,   244,   244,   244,   244,   244,   244,   244,   244,
2329 >     244,   244,   244,   242,   522,     1,    22,    23,    26,    87,
2330 >      88,    89,    92,   100,   112,   113,   128,   129,   158,   320,
2331 >     321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
2332 >     331,   332,   333,   334,     1,     3,     6,    24,    43,    47,
2333 >      66,    68,    80,   100,   130,   159,   188,   234,   396,   397,
2334 >     398,   399,   400,   401,   402,   403,   404,   405,   409,   410,
2335 >     411,   412,   413,     1,    71,   133,   426,   427,   428,   429,
2336 >     244,   242,   432,     1,   100,   133,   166,   436,   440,   441,
2337 >     442,   443,   244,   244,   244,   244,   244,   244,   244,   244,
2338 >     244,   244,   244,   244,   244,   244,   244,   244,   244,   244,
2339 >     244,   244,   244,   244,   244,   244,   244,   244,   244,   244,
2340 >     497,   244,   493,   244,   244,   244,   244,   244,   244,   244,
2341 >     244,   244,   244,   244,   244,   244,   244,   244,   244,   244,
2342 >     244,   244,   244,   242,   446,     1,     4,    39,    42,    83,
2343 >     100,   227,   506,   507,   508,   509,   510,   514,   515,   516,
2344 >       1,    24,    43,    47,   125,   134,   135,   169,   227,   351,
2345 >     352,   353,   354,   355,   356,   357,   361,   362,   363,     1,
2346 >     133,   166,   227,   416,   420,   421,   422,   423,     1,    47,
2347 >      66,    71,   130,   337,   341,   342,   343,   347,   348,   241,
2348 >     244,   242,   288,   240,   241,   244,   244,   242,   255,     1,
2349 >      24,    43,    47,   100,   125,   144,   209,   227,   302,   303,
2350 >     304,   305,   306,   307,   308,   309,   310,   314,     1,    21,
2351 >     104,   133,   366,   367,   368,   369,   370,   244,   244,   244,
2352 >     244,   244,   244,   244,   242,   543,   241,   244,   244,   244,
2353 >     244,   244,   244,   244,   244,   244,   244,   244,   244,   244,
2354 >     244,   244,   242,   260,     1,   100,   166,   227,   377,   378,
2355 >     379,   380,   381,     1,   100,   166,   387,   388,   389,   390,
2356 >     244,   242,   373,   131,   131,   131,   241,   176,   110,   110,
2357 >     176,   176,   110,   250,   250,   110,   110,   176,   176,   110,
2358 >     250,   176,   176,   176,   176,   176,   241,   241,   244,   244,
2359 >     244,   244,   244,   244,   244,   244,   244,   244,   244,   244,
2360 >     244,   242,   321,   241,   244,   244,   244,   244,   406,   244,
2361 >     244,   244,   244,   244,   244,   244,   244,   242,   397,   244,
2362 >     244,   242,   427,   131,   241,   244,   244,   437,   242,   441,
2363 >     176,   250,   250,   110,   176,   176,   110,   131,   176,   110,
2364 >     110,   110,   176,   176,   176,   250,   131,   176,   110,   110,
2365 >     250,   110,   110,   131,   110,   110,   176,   176,   244,   176,
2366 >     244,   250,   250,   176,   250,   176,   176,   176,   176,   177,
2367 >     176,   177,   176,   176,   250,   250,   110,   252,   131,   250,
2368 >     176,   176,   176,   176,   241,   517,   244,   244,   511,   244,
2369 >     244,   242,   507,   241,   244,   244,   358,   244,   244,   244,
2370 >     244,   244,   242,   352,   244,   417,   244,   242,   421,   241,
2371 >     338,   244,   244,   244,   242,   342,   176,   241,   243,   131,
2372 >     131,   241,   241,   244,   244,   315,   244,   244,   244,   311,
2373 >     244,   242,   303,   241,   244,   244,   244,   242,   367,   176,
2374 >     176,   176,   131,   176,   176,   250,   241,   131,   176,   131,
2375 >     131,   131,   131,   131,   131,   149,   150,   263,   264,   149,
2376 >     150,   265,   266,   131,   131,   110,   131,   131,   241,   241,
2377 >     244,   382,   244,   242,   378,   241,   244,   391,   242,   388,
2378 >     131,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2379 >     153,   154,   155,   156,   157,   249,   250,   241,   241,   241,
2380 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2381 >     110,   110,   250,   110,   110,   110,   110,   131,   110,   110,
2382 >     250,   250,   252,   241,   131,   197,   198,   131,   176,   244,
2383 >     131,   131,   131,   131,   110,   131,   131,   131,   241,   131,
2384 >     131,   241,   241,   131,   131,   244,   241,   241,   241,   241,
2385 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2386 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2387 >     241,   241,   241,   241,   241,    61,   183,   184,   185,   186,
2388 >     187,   190,   191,   194,   195,   196,   199,   201,   202,   203,
2389 >     205,   206,   207,   210,   216,   498,   499,   241,    61,   183,
2390 >     184,   185,   186,   187,   190,   191,   194,   195,   196,   199,
2391 >     201,   202,   203,   205,   206,   207,   210,   216,   494,   495,
2392 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2393 >     241,   241,   241,   241,   241,    14,    15,    16,   251,   252,
2394 >     241,   241,   241,   241,   241,   241,   241,   244,   250,   176,
2395 >     244,   131,   131,   241,   131,   176,   244,   131,   110,   131,
2396 >     131,   131,   241,   131,   244,   131,   241,   244,   131,   131,
2397 >     110,   345,   346,   241,   241,     1,   100,   166,   239,   292,
2398 >     293,   294,   295,   296,   241,   241,   131,   176,   244,   131,
2399 >     131,   131,   244,   131,   241,   131,   131,   131,   241,   241,
2400 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2401 >     241,   241,   241,   241,   241,   245,   241,   245,   241,   241,
2402 >     241,   241,   241,   131,   244,   131,   241,   131,   244,   241,
2403 >     241,   249,   249,   249,   249,   249,   241,   241,   241,   241,
2404 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2405 >     241,   241,   241,   241,    10,    12,   208,   221,   407,   408,
2406 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2407 >     241,   241,   136,   438,   439,   241,   245,   241,   245,   251,
2408 >     251,   251,    11,   178,   518,   519,   241,   241,    11,   178,
2409 >     512,   513,   241,   241,   241,   241,    20,    44,    53,    59,
2410 >      75,   101,   109,   152,   170,   359,   360,   241,   241,   241,
2411 >     241,   241,   241,   136,   418,   419,   241,    61,   204,   208,
2412 >     339,   340,   241,   241,   181,   245,   344,   241,   244,   297,
2413 >     244,   242,   293,   241,   241,     5,    32,    51,    57,    74,
2414 >      98,   105,   119,   137,   139,   140,   192,   202,   211,   215,
2415 >     217,   226,   236,   316,   317,   241,   241,   241,    61,   183,
2416 >     184,   185,   186,   187,   190,   191,   194,   195,   196,   199,
2417 >     201,   202,   203,   205,   206,   207,   210,   216,   312,   313,
2418 >     241,   241,   241,   241,   264,   266,   241,    74,   151,   182,
2419 >     192,   199,   211,   213,   214,   226,   236,   383,   384,   241,
2420 >     241,    74,   151,   182,   192,   199,   211,   213,   214,   226,
2421 >     236,   392,   393,   241,   245,   241,   245,   499,   495,   241,
2422 >     245,   241,   245,   241,   245,   241,   245,   241,   245,   110,
2423 >     346,   241,   131,   244,   212,   252,   241,   241,   245,   241,
2424 >     245,   241,   245,   241,   245,   408,   439,   519,   513,   360,
2425 >     419,   340,   241,    51,    72,    74,   115,   191,   192,   227,
2426 >     298,   299,   241,   241,   317,   313,   384,   393,   241,   245,
2427 >     299
2428   };
2429  
2430   #define yyerrok         (yyerrstatus = 0)
# Line 3251 | Line 3261 | yyreduce:
3261          case 27:
3262  
3263   /* Line 1806 of yacc.c  */
3264 < #line 404 "ircd_parser.y"
3264 > #line 384 "conf_parser.y"
3265      { (yyval.number) = 0; }
3266      break;
3267  
3268    case 29:
3269  
3270   /* Line 1806 of yacc.c  */
3271 < #line 406 "ircd_parser.y"
3271 > #line 386 "conf_parser.y"
3272      {
3273                          (yyval.number) = (yyvsp[(1) - (2)].number) + (yyvsp[(2) - (2)].number);
3274                  }
# Line 3267 | Line 3277 | yyreduce:
3277    case 30:
3278  
3279   /* Line 1806 of yacc.c  */
3280 < #line 410 "ircd_parser.y"
3280 > #line 390 "conf_parser.y"
3281      {
3282                          (yyval.number) = (yyvsp[(1) - (3)].number) + (yyvsp[(3) - (3)].number);
3283                  }
# Line 3276 | Line 3286 | yyreduce:
3286    case 31:
3287  
3288   /* Line 1806 of yacc.c  */
3289 < #line 414 "ircd_parser.y"
3289 > #line 394 "conf_parser.y"
3290      {
3291                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 + (yyvsp[(3) - (3)].number);
3292                  }
# Line 3285 | Line 3295 | yyreduce:
3295    case 32:
3296  
3297   /* Line 1806 of yacc.c  */
3298 < #line 418 "ircd_parser.y"
3298 > #line 398 "conf_parser.y"
3299      {
3300                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 * 60 + (yyvsp[(3) - (3)].number);
3301                  }
# Line 3294 | Line 3304 | yyreduce:
3304    case 33:
3305  
3306   /* Line 1806 of yacc.c  */
3307 < #line 422 "ircd_parser.y"
3307 > #line 402 "conf_parser.y"
3308      {
3309                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 * 60 * 24 + (yyvsp[(3) - (3)].number);
3310                  }
# Line 3303 | Line 3313 | yyreduce:
3313    case 34:
3314  
3315   /* Line 1806 of yacc.c  */
3316 < #line 426 "ircd_parser.y"
3316 > #line 406 "conf_parser.y"
3317      {
3318                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 * 60 * 24 * 7 + (yyvsp[(3) - (3)].number);
3319                  }
# Line 3312 | Line 3322 | yyreduce:
3322    case 35:
3323  
3324   /* Line 1806 of yacc.c  */
3325 < #line 431 "ircd_parser.y"
3325 > #line 411 "conf_parser.y"
3326      { (yyval.number) = 0; }
3327      break;
3328  
3329    case 37:
3330  
3331   /* Line 1806 of yacc.c  */
3332 < #line 432 "ircd_parser.y"
3332 > #line 412 "conf_parser.y"
3333      { (yyval.number) = (yyvsp[(1) - (2)].number) + (yyvsp[(2) - (2)].number); }
3334      break;
3335  
3336    case 38:
3337  
3338   /* Line 1806 of yacc.c  */
3339 < #line 433 "ircd_parser.y"
3339 > #line 413 "conf_parser.y"
3340      { (yyval.number) = (yyvsp[(1) - (3)].number) + (yyvsp[(3) - (3)].number); }
3341      break;
3342  
3343    case 39:
3344  
3345   /* Line 1806 of yacc.c  */
3346 < #line 434 "ircd_parser.y"
3346 > #line 414 "conf_parser.y"
3347      { (yyval.number) = (yyvsp[(1) - (3)].number) * 1024 + (yyvsp[(3) - (3)].number); }
3348      break;
3349  
3350    case 40:
3351  
3352   /* Line 1806 of yacc.c  */
3353 < #line 435 "ircd_parser.y"
3353 > #line 415 "conf_parser.y"
3354      { (yyval.number) = (yyvsp[(1) - (3)].number) * 1024 * 1024 + (yyvsp[(3) - (3)].number); }
3355      break;
3356  
3357    case 47:
3358  
3359   /* Line 1806 of yacc.c  */
3360 < #line 449 "ircd_parser.y"
3360 > #line 429 "conf_parser.y"
3361      {
3362    if (conf_parser_ctx.pass == 2)
3363      add_conf_module(libio_basename(yylval.string));
# Line 3357 | Line 3367 | yyreduce:
3367    case 48:
3368  
3369   /* Line 1806 of yacc.c  */
3370 < #line 455 "ircd_parser.y"
3370 > #line 435 "conf_parser.y"
3371      {
3372    if (conf_parser_ctx.pass == 2)
3373      mod_add_path(yylval.string);
3374   }
3375      break;
3376  
3377 <  case 65:
3377 >  case 72:
3378  
3379   /* Line 1806 of yacc.c  */
3380 < #line 475 "ircd_parser.y"
3380 > #line 460 "conf_parser.y"
3381      {
3382   #ifdef HAVE_LIBCRYPTO
3383 <  if (conf_parser_ctx.boot && conf_parser_ctx.pass == 2)
3384 <    ServerInfo.tls_version = 0;
3383 >  if (conf_parser_ctx.pass == 2 && ServerInfo.client_ctx)
3384 >    SSL_CTX_clear_options(ServerInfo.client_ctx, SSL_OP_NO_SSLv3);
3385   #endif
3386   }
3387      break;
3388  
3389 <  case 66:
3389 >  case 73:
3390  
3391   /* Line 1806 of yacc.c  */
3392 < #line 481 "ircd_parser.y"
3392 > #line 466 "conf_parser.y"
3393      {
3394   #ifdef HAVE_LIBCRYPTO
3395 <  if (conf_parser_ctx.boot && conf_parser_ctx.pass == 2)
3396 <  {
3387 <    if (!(ServerInfo.tls_version & CONF_SERVER_INFO_TLS_VERSION_SSLV3))
3388 <      SSL_CTX_set_options(ServerInfo.server_ctx, SSL_OP_NO_SSLv3);
3389 <    if (!(ServerInfo.tls_version & CONF_SERVER_INFO_TLS_VERSION_TLSV1))
3390 <      SSL_CTX_set_options(ServerInfo.server_ctx, SSL_OP_NO_TLSv1);
3391 <  }
3395 >  if (conf_parser_ctx.pass == 2 && ServerInfo.client_ctx)
3396 >    SSL_CTX_clear_options(ServerInfo.client_ctx, SSL_OP_NO_TLSv1);
3397   #endif
3398   }
3399      break;
3400  
3401 <  case 69:
3401 >  case 76:
3402  
3403   /* Line 1806 of yacc.c  */
3404 < #line 495 "ircd_parser.y"
3404 > #line 475 "conf_parser.y"
3405      {
3406   #ifdef HAVE_LIBCRYPTO
3407 <  if (conf_parser_ctx.boot && conf_parser_ctx.pass == 2)
3408 <    ServerInfo.tls_version |= CONF_SERVER_INFO_TLS_VERSION_SSLV3;
3407 >  if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
3408 >    SSL_CTX_clear_options(ServerInfo.server_ctx, SSL_OP_NO_SSLv3);
3409   #endif
3410   }
3411      break;
3412  
3413 <  case 70:
3413 >  case 77:
3414  
3415   /* Line 1806 of yacc.c  */
3416 < #line 501 "ircd_parser.y"
3416 > #line 481 "conf_parser.y"
3417      {
3418   #ifdef HAVE_LIBCRYPTO
3419 <  if (conf_parser_ctx.boot && conf_parser_ctx.pass == 2)
3420 <    ServerInfo.tls_version |= CONF_SERVER_INFO_TLS_VERSION_TLSV1;
3419 >  if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
3420 >    SSL_CTX_clear_options(ServerInfo.server_ctx, SSL_OP_NO_TLSv1);
3421   #endif
3422   }
3423      break;
3424  
3425 <  case 71:
3425 >  case 78:
3426  
3427   /* Line 1806 of yacc.c  */
3428 < #line 509 "ircd_parser.y"
3428 > #line 489 "conf_parser.y"
3429      {
3430   #ifdef HAVE_LIBCRYPTO
3431    if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
# Line 3432 | Line 3437 | yyreduce:
3437      }
3438  
3439      if (SSL_CTX_use_certificate_file(ServerInfo.server_ctx, yylval.string,
3440 +                                     SSL_FILETYPE_PEM) <= 0 ||
3441 +        SSL_CTX_use_certificate_file(ServerInfo.client_ctx, yylval.string,
3442                                       SSL_FILETYPE_PEM) <= 0)
3443      {
3444        yyerror(ERR_lib_error_string(ERR_get_error()));
# Line 3439 | Line 3446 | yyreduce:
3446      }
3447  
3448      if (SSL_CTX_use_PrivateKey_file(ServerInfo.server_ctx, ServerInfo.rsa_private_key_file,
3449 +                                    SSL_FILETYPE_PEM) <= 0 ||
3450 +        SSL_CTX_use_PrivateKey_file(ServerInfo.client_ctx, ServerInfo.rsa_private_key_file,
3451                                      SSL_FILETYPE_PEM) <= 0)
3452      {
3453        yyerror(ERR_lib_error_string(ERR_get_error()));
3454        break;
3455      }
3456  
3457 <    if (!SSL_CTX_check_private_key(ServerInfo.server_ctx))
3457 >    if (!SSL_CTX_check_private_key(ServerInfo.server_ctx) ||
3458 >        !SSL_CTX_check_private_key(ServerInfo.client_ctx))
3459      {
3460        yyerror(ERR_lib_error_string(ERR_get_error()));
3461        break;
# Line 3455 | Line 3465 | yyreduce:
3465   }
3466      break;
3467  
3468 <  case 72:
3468 >  case 79:
3469  
3470   /* Line 1806 of yacc.c  */
3471 < #line 543 "ircd_parser.y"
3471 > #line 528 "conf_parser.y"
3472      {
3473   #ifdef HAVE_LIBCRYPTO
3474    if (conf_parser_ctx.pass == 1)
# Line 3485 | Line 3495 | yyreduce:
3495        break;
3496      }
3497  
3498 <    ServerInfo.rsa_private_key = (RSA *)PEM_read_bio_RSAPrivateKey(file, NULL,
3489 <      0, NULL);
3498 >    ServerInfo.rsa_private_key = PEM_read_bio_RSAPrivateKey(file, NULL, 0, NULL);
3499  
3500      BIO_set_close(file, BIO_CLOSE);
3501      BIO_free(file);
# Line 3519 | Line 3528 | yyreduce:
3528   }
3529      break;
3530  
3531 <  case 73:
3531 >  case 80:
3532  
3533   /* Line 1806 of yacc.c  */
3534 < #line 603 "ircd_parser.y"
3534 > #line 587 "conf_parser.y"
3535 >    {
3536 > /* TBD - XXX: error reporting */
3537 > #ifdef HAVE_LIBCRYPTO
3538 >  if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
3539 >  {
3540 >    BIO *file = BIO_new_file(yylval.string, "r");
3541 >
3542 >    if (file)
3543 >    {
3544 >      DH *dh = PEM_read_bio_DHparams(file, NULL, NULL, NULL);
3545 >
3546 >      BIO_free(file);
3547 >
3548 >      if (dh)
3549 >      {
3550 >        if (DH_size(dh) < 128)
3551 >          ilog(LOG_TYPE_IRCD, "Ignoring serverinfo::ssl_dh_param_file -- need at least a 1024 bit DH prime size");
3552 >        else
3553 >          SSL_CTX_set_tmp_dh(ServerInfo.server_ctx, dh);
3554 >
3555 >        DH_free(dh);
3556 >      }
3557 >    }
3558 >  }
3559 > #endif
3560 > }
3561 >    break;
3562 >
3563 >  case 81:
3564 >
3565 > /* Line 1806 of yacc.c  */
3566 > #line 615 "conf_parser.y"
3567 >    {
3568 > #ifdef HAVE_LIBCRYPTO
3569 >  if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
3570 >    SSL_CTX_set_cipher_list(ServerInfo.server_ctx, yylval.string);
3571 > #endif
3572 > }
3573 >    break;
3574 >
3575 >  case 82:
3576 >
3577 > /* Line 1806 of yacc.c  */
3578 > #line 623 "conf_parser.y"
3579      {
3580    /* this isn't rehashable */
3581    if (conf_parser_ctx.pass == 2 && !ServerInfo.name)
# Line 3538 | Line 3591 | yyreduce:
3591   }
3592      break;
3593  
3594 <  case 74:
3594 >  case 83:
3595  
3596   /* Line 1806 of yacc.c  */
3597 < #line 618 "ircd_parser.y"
3597 > #line 638 "conf_parser.y"
3598      {
3599    /* this isn't rehashable */
3600    if (conf_parser_ctx.pass == 2 && !ServerInfo.sid)
# Line 3557 | Line 3610 | yyreduce:
3610   }
3611      break;
3612  
3613 <  case 75:
3613 >  case 84:
3614  
3615   /* Line 1806 of yacc.c  */
3616 < #line 633 "ircd_parser.y"
3616 > #line 653 "conf_parser.y"
3617      {
3618    if (conf_parser_ctx.pass == 2)
3619    {
# Line 3570 | Line 3623 | yyreduce:
3623   }
3624      break;
3625  
3626 <  case 76:
3626 >  case 85:
3627  
3628   /* Line 1806 of yacc.c  */
3629 < #line 642 "ircd_parser.y"
3629 > #line 662 "conf_parser.y"
3630      {
3631    if (conf_parser_ctx.pass == 2)
3632    {
# Line 3588 | Line 3641 | yyreduce:
3641   }
3642      break;
3643  
3644 <  case 77:
3644 >  case 86:
3645  
3646   /* Line 1806 of yacc.c  */
3647 < #line 656 "ircd_parser.y"
3647 > #line 676 "conf_parser.y"
3648      {
3649    if (conf_parser_ctx.pass == 2)
3650    {
# Line 3601 | Line 3654 | yyreduce:
3654   }
3655      break;
3656  
3657 <  case 78:
3657 >  case 87:
3658  
3659   /* Line 1806 of yacc.c  */
3660 < #line 665 "ircd_parser.y"
3660 > #line 685 "conf_parser.y"
3661      {
3662    if (conf_parser_ctx.pass == 2 && *yylval.string != '*')
3663    {
# Line 3633 | Line 3686 | yyreduce:
3686   }
3687      break;
3688  
3689 <  case 79:
3689 >  case 88:
3690  
3691   /* Line 1806 of yacc.c  */
3692 < #line 693 "ircd_parser.y"
3692 > #line 713 "conf_parser.y"
3693      {
3694   #ifdef IPV6
3695    if (conf_parser_ctx.pass == 2 && *yylval.string != '*')
# Line 3667 | Line 3720 | yyreduce:
3720   }
3721      break;
3722  
3723 <  case 80:
3723 >  case 89:
3724  
3725   /* Line 1806 of yacc.c  */
3726 < #line 723 "ircd_parser.y"
3726 > #line 743 "conf_parser.y"
3727      {
3728    if (conf_parser_ctx.pass == 2)
3729    {
# Line 3694 | Line 3747 | yyreduce:
3747   }
3748      break;
3749  
3750 <  case 81:
3750 >  case 90:
3751  
3752   /* Line 1806 of yacc.c  */
3753 < #line 746 "ircd_parser.y"
3753 > #line 766 "conf_parser.y"
3754      {
3755    if (conf_parser_ctx.pass == 2)
3756      ServerInfo.hub = yylval.number;
3757   }
3758      break;
3759  
3760 <  case 89:
3760 >  case 98:
3761  
3762   /* Line 1806 of yacc.c  */
3763 < #line 761 "ircd_parser.y"
3763 > #line 781 "conf_parser.y"
3764      {
3765    if (conf_parser_ctx.pass == 2)
3766    {
# Line 3717 | Line 3770 | yyreduce:
3770   }
3771      break;
3772  
3773 <  case 90:
3773 >  case 99:
3774  
3775   /* Line 1806 of yacc.c  */
3776 < #line 770 "ircd_parser.y"
3776 > #line 790 "conf_parser.y"
3777      {
3778    if (conf_parser_ctx.pass == 2)
3779    {
# Line 3730 | Line 3783 | yyreduce:
3783   }
3784      break;
3785  
3786 <  case 91:
3786 >  case 100:
3787  
3788   /* Line 1806 of yacc.c  */
3789 < #line 779 "ircd_parser.y"
3789 > #line 799 "conf_parser.y"
3790      {
3791    if (conf_parser_ctx.pass == 2)
3792    {
# Line 3743 | Line 3796 | yyreduce:
3796   }
3797      break;
3798  
3799 <  case 99:
3799 >  case 107:
3800  
3801   /* Line 1806 of yacc.c  */
3802 < #line 797 "ircd_parser.y"
3802 > #line 817 "conf_parser.y"
3803      {
3804    if (conf_parser_ctx.pass == 2)
3805      ConfigLoggingEntry.use_logging = yylval.number;
3806   }
3807      break;
3808  
3809 <  case 100:
3757 <
3758 < /* Line 1806 of yacc.c  */
3759 < #line 803 "ircd_parser.y"
3760 <    {
3761 <  if (conf_parser_ctx.pass == 2)
3762 <    ConfigLoggingEntry.timestamp = yylval.number;
3763 < }
3764 <    break;
3765 <
3766 <  case 101:
3809 >  case 108:
3810  
3811   /* Line 1806 of yacc.c  */
3812 < #line 809 "ircd_parser.y"
3812 > #line 823 "conf_parser.y"
3813      {
3814    lfile[0] = '\0';
3815    ltype = 0;
# Line 3774 | Line 3817 | yyreduce:
3817   }
3818      break;
3819  
3820 <  case 102:
3820 >  case 109:
3821  
3822   /* Line 1806 of yacc.c  */
3823 < #line 814 "ircd_parser.y"
3823 > #line 828 "conf_parser.y"
3824      {
3825    if (conf_parser_ctx.pass == 2 && ltype > 0)
3826      log_add_file(ltype, lsize, lfile);
3827   }
3828      break;
3829  
3830 <  case 109:
3830 >  case 116:
3831  
3832   /* Line 1806 of yacc.c  */
3833 < #line 826 "ircd_parser.y"
3833 > #line 840 "conf_parser.y"
3834      {
3835    strlcpy(lfile, yylval.string, sizeof(lfile));
3836   }
3837      break;
3838  
3839 <  case 110:
3839 >  case 117:
3840  
3841   /* Line 1806 of yacc.c  */
3842 < #line 831 "ircd_parser.y"
3842 > #line 845 "conf_parser.y"
3843      {
3844    lsize = (yyvsp[(3) - (4)].number);
3845   }
3846      break;
3847  
3848 <  case 111:
3848 >  case 118:
3849  
3850   /* Line 1806 of yacc.c  */
3851 < #line 834 "ircd_parser.y"
3851 > #line 848 "conf_parser.y"
3852      {
3853    lsize = 0;
3854   }
3855      break;
3856  
3857 <  case 112:
3857 >  case 119:
3858  
3859   /* Line 1806 of yacc.c  */
3860 < #line 839 "ircd_parser.y"
3860 > #line 853 "conf_parser.y"
3861      {
3862    if (conf_parser_ctx.pass == 2)
3863      ltype = 0;
3864   }
3865      break;
3866  
3867 <  case 116:
3867 >  case 123:
3868  
3869   /* Line 1806 of yacc.c  */
3870 < #line 846 "ircd_parser.y"
3870 > #line 860 "conf_parser.y"
3871      {
3872    if (conf_parser_ctx.pass == 2)
3873      ltype = LOG_TYPE_USER;
3874   }
3875      break;
3876  
3877 <  case 117:
3877 >  case 124:
3878  
3879   /* Line 1806 of yacc.c  */
3880 < #line 850 "ircd_parser.y"
3880 > #line 864 "conf_parser.y"
3881      {
3882    if (conf_parser_ctx.pass == 2)
3883      ltype = LOG_TYPE_OPER;
3884   }
3885      break;
3886  
3887 <  case 118:
3887 >  case 125:
3888  
3889   /* Line 1806 of yacc.c  */
3890 < #line 854 "ircd_parser.y"
3890 > #line 868 "conf_parser.y"
3891      {
3892    if (conf_parser_ctx.pass == 2)
3893      ltype = LOG_TYPE_GLINE;
3894   }
3895      break;
3896  
3897 <  case 119:
3897 >  case 126:
3898  
3899   /* Line 1806 of yacc.c  */
3900 < #line 858 "ircd_parser.y"
3900 > #line 872 "conf_parser.y"
3901      {
3902    if (conf_parser_ctx.pass == 2)
3903      ltype = LOG_TYPE_DLINE;
3904   }
3905      break;
3906  
3907 <  case 120:
3907 >  case 127:
3908  
3909   /* Line 1806 of yacc.c  */
3910 < #line 862 "ircd_parser.y"
3910 > #line 876 "conf_parser.y"
3911      {
3912    if (conf_parser_ctx.pass == 2)
3913      ltype = LOG_TYPE_KLINE;
3914   }
3915      break;
3916  
3917 <  case 121:
3917 >  case 128:
3918  
3919   /* Line 1806 of yacc.c  */
3920 < #line 866 "ircd_parser.y"
3920 > #line 880 "conf_parser.y"
3921      {
3922    if (conf_parser_ctx.pass == 2)
3923      ltype = LOG_TYPE_KILL;
3924   }
3925      break;
3926  
3927 <  case 122:
3927 >  case 129:
3928  
3929   /* Line 1806 of yacc.c  */
3930 < #line 870 "ircd_parser.y"
3930 > #line 884 "conf_parser.y"
3931      {
3932    if (conf_parser_ctx.pass == 2)
3933      ltype = LOG_TYPE_DEBUG;
3934   }
3935      break;
3936  
3937 <  case 123:
3937 >  case 130:
3938  
3939   /* Line 1806 of yacc.c  */
3940 < #line 880 "ircd_parser.y"
3940 > #line 894 "conf_parser.y"
3941      {
3942    if (conf_parser_ctx.pass == 2)
3943    {
# Line 3910 | Line 3953 | yyreduce:
3953   }
3954      break;
3955  
3956 <  case 124:
3956 >  case 131:
3957  
3958   /* Line 1806 of yacc.c  */
3959 < #line 893 "ircd_parser.y"
3959 > #line 907 "conf_parser.y"
3960      {
3961    if (conf_parser_ctx.pass == 2)
3962    {
# Line 3949 | Line 3992 | yyreduce:
3992        else
3993          DupString(new_aconf->host, "*");
3994  
3995 <      new_aconf->type = parse_netmask(new_aconf->host, &new_aconf->ipnum,
3995 >      new_aconf->type = parse_netmask(new_aconf->host, &new_aconf->addr,
3996                                       &new_aconf->bits);
3997  
3998        conf_add_class_to_conf(new_conf, class_name);
# Line 3999 | Line 4042 | yyreduce:
4042   }
4043      break;
4044  
4045 <  case 136:
4045 >  case 143:
4046  
4047   /* Line 1806 of yacc.c  */
4048 < #line 983 "ircd_parser.y"
4048 > #line 997 "conf_parser.y"
4049      {
4050    if (conf_parser_ctx.pass == 2)
4051    {
4009    if (strlen(yylval.string) > OPERNICKLEN)
4010      yylval.string[OPERNICKLEN] = '\0';
4011
4052      MyFree(yy_conf->name);
4053      DupString(yy_conf->name, yylval.string);
4054    }
4055   }
4056      break;
4057  
4058 <  case 137:
4058 >  case 144:
4059  
4060   /* Line 1806 of yacc.c  */
4061 < #line 995 "ircd_parser.y"
4061 > #line 1006 "conf_parser.y"
4062      {
4063    if (conf_parser_ctx.pass == 2)
4064    {
# Line 4040 | Line 4080 | yyreduce:
4080        DupString(yy_aconf->user, userbuf);
4081        DupString(yy_aconf->host, hostbuf);
4082  
4083 <      yy_aconf->type = parse_netmask(yy_aconf->host, &yy_aconf->ipnum,
4083 >      yy_aconf->type = parse_netmask(yy_aconf->host, &yy_aconf->addr,
4084                                      &yy_aconf->bits);
4085      }
4086      else
# Line 4056 | Line 4096 | yyreduce:
4096   }
4097      break;
4098  
4099 <  case 138:
4099 >  case 145:
4100  
4101   /* Line 1806 of yacc.c  */
4102 < #line 1032 "ircd_parser.y"
4102 > #line 1043 "conf_parser.y"
4103      {
4104    if (conf_parser_ctx.pass == 2)
4105    {
# Line 4072 | Line 4112 | yyreduce:
4112   }
4113      break;
4114  
4115 <  case 139:
4115 >  case 146:
4116  
4117   /* Line 1806 of yacc.c  */
4118 < #line 1044 "ircd_parser.y"
4118 > #line 1055 "conf_parser.y"
4119      {
4120    if (conf_parser_ctx.pass == 2)
4121    {
# Line 4087 | Line 4127 | yyreduce:
4127   }
4128      break;
4129  
4130 <  case 140:
4130 >  case 147:
4131  
4132   /* Line 1806 of yacc.c  */
4133 < #line 1055 "ircd_parser.y"
4133 > #line 1066 "conf_parser.y"
4134      {
4135   #ifdef HAVE_LIBCRYPTO
4136    if (conf_parser_ctx.pass == 2)
# Line 4133 | Line 4173 | yyreduce:
4173   }
4174      break;
4175  
4176 <  case 141:
4176 >  case 148:
4177  
4178   /* Line 1806 of yacc.c  */
4179 < #line 1097 "ircd_parser.y"
4179 > #line 1108 "conf_parser.y"
4180      {
4181    if (conf_parser_ctx.pass == 2)
4182    {
# Line 4146 | Line 4186 | yyreduce:
4186   }
4187      break;
4188  
4189 <  case 142:
4189 >  case 149:
4190  
4191   /* Line 1806 of yacc.c  */
4192 < #line 1106 "ircd_parser.y"
4192 > #line 1117 "conf_parser.y"
4193      {
4194    if (conf_parser_ctx.pass == 2)
4195      yy_aconf->modes = 0;
4196   }
4197      break;
4198  
4199 <  case 146:
4199 >  case 153:
4200  
4201   /* Line 1806 of yacc.c  */
4202 < #line 1113 "ircd_parser.y"
4202 > #line 1124 "conf_parser.y"
4203      {
4204    if (conf_parser_ctx.pass == 2)
4205      yy_aconf->modes |= UMODE_BOTS;
4206   }
4207      break;
4208  
4209 <  case 147:
4209 >  case 154:
4210  
4211   /* Line 1806 of yacc.c  */
4212 < #line 1117 "ircd_parser.y"
4212 > #line 1128 "conf_parser.y"
4213      {
4214    if (conf_parser_ctx.pass == 2)
4215      yy_aconf->modes |= UMODE_CCONN;
4216   }
4217      break;
4218  
4219 <  case 148:
4219 >  case 155:
4220  
4221   /* Line 1806 of yacc.c  */
4222 < #line 1121 "ircd_parser.y"
4222 > #line 1132 "conf_parser.y"
4223      {
4224    if (conf_parser_ctx.pass == 2)
4225      yy_aconf->modes |= UMODE_CCONN_FULL;
4226   }
4227      break;
4228  
4229 <  case 149:
4229 >  case 156:
4230  
4231   /* Line 1806 of yacc.c  */
4232 < #line 1125 "ircd_parser.y"
4232 > #line 1136 "conf_parser.y"
4233      {
4234    if (conf_parser_ctx.pass == 2)
4235      yy_aconf->modes |= UMODE_DEAF;
4236   }
4237      break;
4238  
4239 <  case 150:
4239 >  case 157:
4240  
4241   /* Line 1806 of yacc.c  */
4242 < #line 1129 "ircd_parser.y"
4242 > #line 1140 "conf_parser.y"
4243      {
4244    if (conf_parser_ctx.pass == 2)
4245      yy_aconf->modes |= UMODE_DEBUG;
4246   }
4247      break;
4248  
4249 <  case 151:
4249 >  case 158:
4250  
4251   /* Line 1806 of yacc.c  */
4252 < #line 1133 "ircd_parser.y"
4252 > #line 1144 "conf_parser.y"
4253      {
4254    if (conf_parser_ctx.pass == 2)
4255      yy_aconf->modes |= UMODE_FULL;
4256   }
4257      break;
4258  
4259 <  case 152:
4259 >  case 159:
4260  
4261   /* Line 1806 of yacc.c  */
4262 < #line 1137 "ircd_parser.y"
4262 > #line 1148 "conf_parser.y"
4263      {
4264    if (conf_parser_ctx.pass == 2)
4265      yy_aconf->modes |= UMODE_HIDDEN;
4266   }
4267      break;
4268  
4269 <  case 153:
4269 >  case 160:
4270  
4271   /* Line 1806 of yacc.c  */
4272 < #line 1141 "ircd_parser.y"
4272 > #line 1152 "conf_parser.y"
4273      {
4274    if (conf_parser_ctx.pass == 2)
4275      yy_aconf->modes |= UMODE_SKILL;
4276   }
4277      break;
4278  
4279 <  case 154:
4279 >  case 161:
4280  
4281   /* Line 1806 of yacc.c  */
4282 < #line 1145 "ircd_parser.y"
4282 > #line 1156 "conf_parser.y"
4283      {
4284    if (conf_parser_ctx.pass == 2)
4285      yy_aconf->modes |= UMODE_NCHANGE;
4286   }
4287      break;
4288  
4289 <  case 155:
4289 >  case 162:
4290  
4291   /* Line 1806 of yacc.c  */
4292 < #line 1149 "ircd_parser.y"
4292 > #line 1160 "conf_parser.y"
4293      {
4294    if (conf_parser_ctx.pass == 2)
4295      yy_aconf->modes |= UMODE_REJ;
4296   }
4297      break;
4298  
4299 <  case 156:
4299 >  case 163:
4300  
4301   /* Line 1806 of yacc.c  */
4302 < #line 1153 "ircd_parser.y"
4302 > #line 1164 "conf_parser.y"
4303      {
4304    if (conf_parser_ctx.pass == 2)
4305      yy_aconf->modes |= UMODE_UNAUTH;
4306   }
4307      break;
4308  
4309 <  case 157:
4309 >  case 164:
4310  
4311   /* Line 1806 of yacc.c  */
4312 < #line 1157 "ircd_parser.y"
4312 > #line 1168 "conf_parser.y"
4313      {
4314    if (conf_parser_ctx.pass == 2)
4315      yy_aconf->modes |= UMODE_SPY;
4316   }
4317      break;
4318  
4319 <  case 158:
4319 >  case 165:
4320  
4321   /* Line 1806 of yacc.c  */
4322 < #line 1161 "ircd_parser.y"
4322 > #line 1172 "conf_parser.y"
4323      {
4324    if (conf_parser_ctx.pass == 2)
4325      yy_aconf->modes |= UMODE_EXTERNAL;
4326   }
4327      break;
4328  
4329 <  case 159:
4329 >  case 166:
4330  
4331   /* Line 1806 of yacc.c  */
4332 < #line 1165 "ircd_parser.y"
4332 > #line 1176 "conf_parser.y"
4333      {
4334    if (conf_parser_ctx.pass == 2)
4335      yy_aconf->modes |= UMODE_OPERWALL;
4336   }
4337      break;
4338  
4339 <  case 160:
4339 >  case 167:
4340  
4341   /* Line 1806 of yacc.c  */
4342 < #line 1169 "ircd_parser.y"
4342 > #line 1180 "conf_parser.y"
4343      {
4344    if (conf_parser_ctx.pass == 2)
4345      yy_aconf->modes |= UMODE_SERVNOTICE;
4346   }
4347      break;
4348  
4349 <  case 161:
4349 >  case 168:
4350  
4351   /* Line 1806 of yacc.c  */
4352 < #line 1173 "ircd_parser.y"
4352 > #line 1184 "conf_parser.y"
4353      {
4354    if (conf_parser_ctx.pass == 2)
4355      yy_aconf->modes |= UMODE_INVISIBLE;
4356   }
4357      break;
4358  
4359 <  case 162:
4359 >  case 169:
4360  
4361   /* Line 1806 of yacc.c  */
4362 < #line 1177 "ircd_parser.y"
4362 > #line 1188 "conf_parser.y"
4363      {
4364    if (conf_parser_ctx.pass == 2)
4365      yy_aconf->modes |= UMODE_WALLOP;
4366   }
4367      break;
4368  
4369 <  case 163:
4369 >  case 170:
4370  
4371   /* Line 1806 of yacc.c  */
4372 < #line 1181 "ircd_parser.y"
4372 > #line 1192 "conf_parser.y"
4373      {
4374    if (conf_parser_ctx.pass == 2)
4375      yy_aconf->modes |= UMODE_SOFTCALLERID;
4376   }
4377      break;
4378  
4379 <  case 164:
4379 >  case 171:
4380  
4381   /* Line 1806 of yacc.c  */
4382 < #line 1185 "ircd_parser.y"
4382 > #line 1196 "conf_parser.y"
4383      {
4384    if (conf_parser_ctx.pass == 2)
4385      yy_aconf->modes |= UMODE_CALLERID;
4386   }
4387      break;
4388  
4389 <  case 165:
4389 >  case 172:
4390  
4391   /* Line 1806 of yacc.c  */
4392 < #line 1189 "ircd_parser.y"
4392 > #line 1200 "conf_parser.y"
4393      {
4394    if (conf_parser_ctx.pass == 2)
4395      yy_aconf->modes |= UMODE_LOCOPS;
4396   }
4397      break;
4398  
4399 <  case 166:
4399 >  case 173:
4400  
4401   /* Line 1806 of yacc.c  */
4402 < #line 1195 "ircd_parser.y"
4402 > #line 1206 "conf_parser.y"
4403      {
4404    if (conf_parser_ctx.pass == 2)
4405      yy_aconf->port = 0;
4406   }
4407      break;
4408  
4409 <  case 170:
4409 >  case 177:
4410  
4411   /* Line 1806 of yacc.c  */
4412 < #line 1202 "ircd_parser.y"
4412 > #line 1213 "conf_parser.y"
4413      {
4414    if (conf_parser_ctx.pass == 2)
4415      yy_aconf->port |= OPER_FLAG_GLOBAL_KILL;
4416   }
4417      break;
4418  
4419 <  case 171:
4419 >  case 178:
4420  
4421   /* Line 1806 of yacc.c  */
4422 < #line 1206 "ircd_parser.y"
4422 > #line 1217 "conf_parser.y"
4423      {
4424    if (conf_parser_ctx.pass == 2)
4425      yy_aconf->port |= OPER_FLAG_REMOTE;
4426   }
4427      break;
4428  
4429 <  case 172:
4429 >  case 179:
4430  
4431   /* Line 1806 of yacc.c  */
4432 < #line 1210 "ircd_parser.y"
4432 > #line 1221 "conf_parser.y"
4433      {
4434    if (conf_parser_ctx.pass == 2)
4435      yy_aconf->port |= OPER_FLAG_K;
4436   }
4437      break;
4438  
4439 <  case 173:
4439 >  case 180:
4440  
4441   /* Line 1806 of yacc.c  */
4442 < #line 1214 "ircd_parser.y"
4442 > #line 1225 "conf_parser.y"
4443      {
4444    if (conf_parser_ctx.pass == 2)
4445      yy_aconf->port |= OPER_FLAG_UNKLINE;
4446   }
4447      break;
4448  
4449 <  case 174:
4449 >  case 181:
4450  
4451   /* Line 1806 of yacc.c  */
4452 < #line 1218 "ircd_parser.y"
4452 > #line 1229 "conf_parser.y"
4453      {
4454    if (conf_parser_ctx.pass == 2)
4455      yy_aconf->port |= OPER_FLAG_DLINE;
4456   }
4457      break;
4458  
4459 <  case 175:
4459 >  case 182:
4460  
4461   /* Line 1806 of yacc.c  */
4462 < #line 1222 "ircd_parser.y"
4462 > #line 1233 "conf_parser.y"
4463      {
4464    if (conf_parser_ctx.pass == 2)
4465      yy_aconf->port |= OPER_FLAG_UNDLINE;
4466   }
4467      break;
4468  
4469 <  case 176:
4469 >  case 183:
4470  
4471   /* Line 1806 of yacc.c  */
4472 < #line 1226 "ircd_parser.y"
4472 > #line 1237 "conf_parser.y"
4473      {
4474    if (conf_parser_ctx.pass == 2)
4475      yy_aconf->port |= OPER_FLAG_X;
4476   }
4477      break;
4478  
4479 <  case 177:
4479 >  case 184:
4480  
4481   /* Line 1806 of yacc.c  */
4482 < #line 1230 "ircd_parser.y"
4482 > #line 1241 "conf_parser.y"
4483      {
4484    if (conf_parser_ctx.pass == 2)
4485      yy_aconf->port |= OPER_FLAG_GLINE;
4486   }
4487      break;
4488  
4489 <  case 178:
4489 >  case 185:
4490  
4491   /* Line 1806 of yacc.c  */
4492 < #line 1234 "ircd_parser.y"
4492 > #line 1245 "conf_parser.y"
4493      {
4494    if (conf_parser_ctx.pass == 2)
4495      yy_aconf->port |= OPER_FLAG_DIE;
4496   }
4497      break;
4498  
4499 <  case 179:
4499 >  case 186:
4500  
4501   /* Line 1806 of yacc.c  */
4502 < #line 1238 "ircd_parser.y"
4502 > #line 1249 "conf_parser.y"
4503      {
4504    if (conf_parser_ctx.pass == 2)
4505      yy_aconf->port |= OPER_FLAG_RESTART;
4506   }
4507      break;
4508  
4509 <  case 180:
4509 >  case 187:
4510  
4511   /* Line 1806 of yacc.c  */
4512 < #line 1242 "ircd_parser.y"
4512 > #line 1253 "conf_parser.y"
4513      {
4514    if (conf_parser_ctx.pass == 2)
4515      yy_aconf->port |= OPER_FLAG_REHASH;
4516   }
4517      break;
4518  
4519 <  case 181:
4519 >  case 188:
4520  
4521   /* Line 1806 of yacc.c  */
4522 < #line 1246 "ircd_parser.y"
4522 > #line 1257 "conf_parser.y"
4523      {
4524    if (conf_parser_ctx.pass == 2)
4525      yy_aconf->port |= OPER_FLAG_ADMIN;
4526   }
4527      break;
4528  
4529 <  case 182:
4529 >  case 189:
4530  
4531   /* Line 1806 of yacc.c  */
4532 < #line 1250 "ircd_parser.y"
4532 > #line 1261 "conf_parser.y"
4533      {
4534    if (conf_parser_ctx.pass == 2)
4535      yy_aconf->port |= OPER_FLAG_N;
4536   }
4537      break;
4538  
4539 <  case 183:
4539 >  case 190:
4540  
4541   /* Line 1806 of yacc.c  */
4542 < #line 1254 "ircd_parser.y"
4542 > #line 1265 "conf_parser.y"
4543      {
4544    if (conf_parser_ctx.pass == 2)
4545      yy_aconf->port |= OPER_FLAG_OPERWALL;
4546   }
4547      break;
4548  
4549 <  case 184:
4549 >  case 191:
4550  
4551   /* Line 1806 of yacc.c  */
4552 < #line 1258 "ircd_parser.y"
4552 > #line 1269 "conf_parser.y"
4553      {
4554    if (conf_parser_ctx.pass == 2)
4555      yy_aconf->port |= OPER_FLAG_GLOBOPS;
4556   }
4557      break;
4558  
4559 <  case 185:
4559 >  case 192:
4560  
4561   /* Line 1806 of yacc.c  */
4562 < #line 1262 "ircd_parser.y"
4562 > #line 1273 "conf_parser.y"
4563      {
4564    if (conf_parser_ctx.pass == 2)
4565      yy_aconf->port |= OPER_FLAG_OPER_SPY;
4566   }
4567      break;
4568  
4569 <  case 186:
4569 >  case 193:
4570  
4571   /* Line 1806 of yacc.c  */
4572 < #line 1266 "ircd_parser.y"
4572 > #line 1277 "conf_parser.y"
4573      {
4574    if (conf_parser_ctx.pass == 2)
4575      yy_aconf->port |= OPER_FLAG_REMOTEBAN;
4576   }
4577      break;
4578  
4579 <  case 187:
4579 >  case 194:
4580  
4581   /* Line 1806 of yacc.c  */
4582 < #line 1270 "ircd_parser.y"
4582 > #line 1281 "conf_parser.y"
4583      {
4584    if (conf_parser_ctx.pass == 2)
4585      yy_aconf->port |= OPER_FLAG_MODULE;
4586   }
4587      break;
4588  
4589 <  case 188:
4589 >  case 195:
4590  
4591   /* Line 1806 of yacc.c  */
4592 < #line 1280 "ircd_parser.y"
4592 > #line 1291 "conf_parser.y"
4593      {
4594    if (conf_parser_ctx.pass == 1)
4595    {
# Line 4559 | Line 4599 | yyreduce:
4599   }
4600      break;
4601  
4602 <  case 189:
4602 >  case 196:
4603  
4604   /* Line 1806 of yacc.c  */
4605 < #line 1287 "ircd_parser.y"
4605 > #line 1298 "conf_parser.y"
4606      {
4607    if (conf_parser_ctx.pass == 1)
4608    {
# Line 4606 | Line 4646 | yyreduce:
4646   }
4647      break;
4648  
4649 <  case 206:
4649 >  case 213:
4650  
4651   /* Line 1806 of yacc.c  */
4652 < #line 1345 "ircd_parser.y"
4652 > #line 1356 "conf_parser.y"
4653      {
4654    if (conf_parser_ctx.pass == 1)
4655    {
# Line 4619 | Line 4659 | yyreduce:
4659   }
4660      break;
4661  
4662 <  case 207:
4662 >  case 214:
4663  
4664   /* Line 1806 of yacc.c  */
4665 < #line 1354 "ircd_parser.y"
4665 > #line 1365 "conf_parser.y"
4666      {
4667    if (conf_parser_ctx.pass == 1)
4668 <    PingFreq(yy_class) = (yyvsp[(3) - (4)].number);
4668 >    yy_class->ping_freq = (yyvsp[(3) - (4)].number);
4669   }
4670      break;
4671  
4672 <  case 208:
4672 >  case 215:
4673  
4674   /* Line 1806 of yacc.c  */
4675 < #line 1360 "ircd_parser.y"
4675 > #line 1371 "conf_parser.y"
4676      {
4677    if (conf_parser_ctx.pass == 1)
4678 <    PingWarning(yy_class) = (yyvsp[(3) - (4)].number);
4678 >    yy_class->ping_warning = (yyvsp[(3) - (4)].number);
4679   }
4680      break;
4681  
4682 <  case 209:
4682 >  case 216:
4683  
4684   /* Line 1806 of yacc.c  */
4685 < #line 1366 "ircd_parser.y"
4685 > #line 1377 "conf_parser.y"
4686      {
4687    if (conf_parser_ctx.pass == 1)
4688 <    MaxPerIp(yy_class) = (yyvsp[(3) - (4)].number);
4688 >    yy_class->max_perip = (yyvsp[(3) - (4)].number);
4689   }
4690      break;
4691  
4692 <  case 210:
4692 >  case 217:
4693  
4694   /* Line 1806 of yacc.c  */
4695 < #line 1372 "ircd_parser.y"
4695 > #line 1383 "conf_parser.y"
4696      {
4697    if (conf_parser_ctx.pass == 1)
4698 <    ConFreq(yy_class) = (yyvsp[(3) - (4)].number);
4698 >    yy_class->con_freq = (yyvsp[(3) - (4)].number);
4699   }
4700      break;
4701  
4702 <  case 211:
4702 >  case 218:
4703  
4704   /* Line 1806 of yacc.c  */
4705 < #line 1378 "ircd_parser.y"
4705 > #line 1389 "conf_parser.y"
4706      {
4707    if (conf_parser_ctx.pass == 1)
4708 <    MaxTotal(yy_class) = (yyvsp[(3) - (4)].number);
4708 >    yy_class->max_total = (yyvsp[(3) - (4)].number);
4709   }
4710      break;
4711  
4712 <  case 212:
4712 >  case 219:
4713  
4714   /* Line 1806 of yacc.c  */
4715 < #line 1384 "ircd_parser.y"
4715 > #line 1395 "conf_parser.y"
4716      {
4717    if (conf_parser_ctx.pass == 1)
4718 <    MaxGlobal(yy_class) = (yyvsp[(3) - (4)].number);
4718 >    yy_class->max_global = (yyvsp[(3) - (4)].number);
4719   }
4720      break;
4721  
4722 <  case 213:
4722 >  case 220:
4723  
4724   /* Line 1806 of yacc.c  */
4725 < #line 1390 "ircd_parser.y"
4725 > #line 1401 "conf_parser.y"
4726      {
4727    if (conf_parser_ctx.pass == 1)
4728 <    MaxLocal(yy_class) = (yyvsp[(3) - (4)].number);
4728 >    yy_class->max_local = (yyvsp[(3) - (4)].number);
4729   }
4730      break;
4731  
4732 <  case 214:
4732 >  case 221:
4733  
4734   /* Line 1806 of yacc.c  */
4735 < #line 1396 "ircd_parser.y"
4735 > #line 1407 "conf_parser.y"
4736      {
4737    if (conf_parser_ctx.pass == 1)
4738 <    MaxIdent(yy_class) = (yyvsp[(3) - (4)].number);
4738 >    yy_class->max_ident = (yyvsp[(3) - (4)].number);
4739   }
4740      break;
4741  
4742 <  case 215:
4742 >  case 222:
4743  
4744   /* Line 1806 of yacc.c  */
4745 < #line 1402 "ircd_parser.y"
4745 > #line 1413 "conf_parser.y"
4746      {
4747    if (conf_parser_ctx.pass == 1)
4748 <    MaxSendq(yy_class) = (yyvsp[(3) - (4)].number);
4748 >    yy_class->max_sendq = (yyvsp[(3) - (4)].number);
4749   }
4750      break;
4751  
4752 <  case 216:
4752 >  case 223:
4753  
4754   /* Line 1806 of yacc.c  */
4755 < #line 1408 "ircd_parser.y"
4755 > #line 1419 "conf_parser.y"
4756      {
4757    if (conf_parser_ctx.pass == 1)
4758 <    CidrBitlenIPV4(yy_class) = (yyvsp[(3) - (4)].number);
4758 >    yy_class->cidr_bitlen_ipv4 = (yyvsp[(3) - (4)].number);
4759   }
4760      break;
4761  
4762 <  case 217:
4762 >  case 224:
4763  
4764   /* Line 1806 of yacc.c  */
4765 < #line 1414 "ircd_parser.y"
4765 > #line 1425 "conf_parser.y"
4766      {
4767    if (conf_parser_ctx.pass == 1)
4768 <    CidrBitlenIPV6(yy_class) = (yyvsp[(3) - (4)].number);
4768 >    yy_class->cidr_bitlen_ipv6 = (yyvsp[(3) - (4)].number);
4769   }
4770      break;
4771  
4772 <  case 218:
4772 >  case 225:
4773  
4774   /* Line 1806 of yacc.c  */
4775 < #line 1420 "ircd_parser.y"
4775 > #line 1431 "conf_parser.y"
4776      {
4777    if (conf_parser_ctx.pass == 1)
4778 <    NumberPerCidr(yy_class) = (yyvsp[(3) - (4)].number);
4778 >    yy_class->number_per_cidr = (yyvsp[(3) - (4)].number);
4779   }
4780      break;
4781  
4782 <  case 219:
4782 >  case 226:
4783  
4784   /* Line 1806 of yacc.c  */
4785 < #line 1429 "ircd_parser.y"
4785 > #line 1440 "conf_parser.y"
4786      {
4787    if (conf_parser_ctx.pass == 2)
4788    {
# Line 4752 | Line 4792 | yyreduce:
4792   }
4793      break;
4794  
4795 <  case 220:
4795 >  case 227:
4796  
4797   /* Line 1806 of yacc.c  */
4798 < #line 1436 "ircd_parser.y"
4798 > #line 1447 "conf_parser.y"
4799      {
4800    if (conf_parser_ctx.pass == 2)
4801    {
# Line 4765 | Line 4805 | yyreduce:
4805   }
4806      break;
4807  
4808 <  case 221:
4808 >  case 228:
4809  
4810   /* Line 1806 of yacc.c  */
4811 < #line 1445 "ircd_parser.y"
4811 > #line 1456 "conf_parser.y"
4812      {
4813    listener_flags = 0;
4814   }
4815      break;
4816  
4817 <  case 225:
4817 >  case 232:
4818  
4819   /* Line 1806 of yacc.c  */
4820 < #line 1451 "ircd_parser.y"
4820 > #line 1462 "conf_parser.y"
4821      {
4822    if (conf_parser_ctx.pass == 2)
4823      listener_flags |= LISTENER_SSL;
4824   }
4825      break;
4826  
4827 <  case 226:
4827 >  case 233:
4828  
4829   /* Line 1806 of yacc.c  */
4830 < #line 1455 "ircd_parser.y"
4830 > #line 1466 "conf_parser.y"
4831      {
4832    if (conf_parser_ctx.pass == 2)
4833      listener_flags |= LISTENER_HIDDEN;
4834   }
4835      break;
4836  
4837 <  case 227:
4837 >  case 234:
4838  
4839   /* Line 1806 of yacc.c  */
4840 < #line 1459 "ircd_parser.y"
4840 > #line 1470 "conf_parser.y"
4841      {
4842    if (conf_parser_ctx.pass == 2)
4843      listener_flags |= LISTENER_SERVER;
4844   }
4845      break;
4846  
4847 <  case 235:
4847 >  case 242:
4848  
4849   /* Line 1806 of yacc.c  */
4850 < #line 1469 "ircd_parser.y"
4850 > #line 1480 "conf_parser.y"
4851      { listener_flags = 0; }
4852      break;
4853  
4854 <  case 239:
4854 >  case 246:
4855  
4856   /* Line 1806 of yacc.c  */
4857 < #line 1474 "ircd_parser.y"
4857 > #line 1485 "conf_parser.y"
4858      {
4859    if (conf_parser_ctx.pass == 2)
4860    {
# Line 4831 | Line 4871 | yyreduce:
4871   }
4872      break;
4873  
4874 <  case 240:
4874 >  case 247:
4875  
4876   /* Line 1806 of yacc.c  */
4877 < #line 1488 "ircd_parser.y"
4877 > #line 1499 "conf_parser.y"
4878      {
4879    if (conf_parser_ctx.pass == 2)
4880    {
# Line 4855 | Line 4895 | yyreduce:
4895   }
4896      break;
4897  
4898 <  case 241:
4898 >  case 248:
4899  
4900   /* Line 1806 of yacc.c  */
4901 < #line 1508 "ircd_parser.y"
4901 > #line 1519 "conf_parser.y"
4902      {
4903    if (conf_parser_ctx.pass == 2)
4904    {
# Line 4868 | Line 4908 | yyreduce:
4908   }
4909      break;
4910  
4911 <  case 242:
4911 >  case 249:
4912  
4913   /* Line 1806 of yacc.c  */
4914 < #line 1517 "ircd_parser.y"
4914 > #line 1528 "conf_parser.y"
4915      {
4916    if (conf_parser_ctx.pass == 2)
4917    {
# Line 4881 | Line 4921 | yyreduce:
4921   }
4922      break;
4923  
4924 <  case 243:
4924 >  case 250:
4925  
4926   /* Line 1806 of yacc.c  */
4927 < #line 1529 "ircd_parser.y"
4927 > #line 1540 "conf_parser.y"
4928      {
4929    if (conf_parser_ctx.pass == 2)
4930    {
# Line 4899 | Line 4939 | yyreduce:
4939   }
4940      break;
4941  
4942 <  case 244:
4942 >  case 251:
4943  
4944   /* Line 1806 of yacc.c  */
4945 < #line 1541 "ircd_parser.y"
4945 > #line 1552 "conf_parser.y"
4946      {
4947    if (conf_parser_ctx.pass == 2)
4948    {
# Line 4960 | Line 5000 | yyreduce:
5000   }
5001      break;
5002  
5003 <  case 256:
5003 >  case 263:
5004  
5005   /* Line 1806 of yacc.c  */
5006 < #line 1603 "ircd_parser.y"
5006 > #line 1614 "conf_parser.y"
5007      {
5008    if (conf_parser_ctx.pass == 2)
5009    {
# Line 4999 | Line 5039 | yyreduce:
5039   }
5040      break;
5041  
5042 <  case 257:
5042 >  case 264:
5043  
5044   /* Line 1806 of yacc.c  */
5045 < #line 1640 "ircd_parser.y"
5045 > #line 1651 "conf_parser.y"
5046      {
5047    if (conf_parser_ctx.pass == 2)
5048    {
# Line 5016 | Line 5056 | yyreduce:
5056   }
5057      break;
5058  
5059 <  case 258:
5059 >  case 265:
5060  
5061   /* Line 1806 of yacc.c  */
5062 < #line 1653 "ircd_parser.y"
5062 > #line 1664 "conf_parser.y"
5063      {
5064    if (conf_parser_ctx.pass == 2)
5065    {
# Line 5029 | Line 5069 | yyreduce:
5069   }
5070      break;
5071  
5072 <  case 259:
5072 >  case 266:
5073  
5074   /* Line 1806 of yacc.c  */
5075 < #line 1662 "ircd_parser.y"
5075 > #line 1673 "conf_parser.y"
5076      {
5077    if (conf_parser_ctx.pass == 2)
5078    {
# Line 5044 | Line 5084 | yyreduce:
5084   }
5085      break;
5086  
5087 <  case 260:
5087 >  case 267:
5088  
5089   /* Line 1806 of yacc.c  */
5090 < #line 1673 "ircd_parser.y"
5090 > #line 1684 "conf_parser.y"
5091      {
5092   }
5093      break;
5094  
5095 <  case 264:
5095 >  case 271:
5096  
5097   /* Line 1806 of yacc.c  */
5098 < #line 1678 "ircd_parser.y"
5098 > #line 1689 "conf_parser.y"
5099      {
5100    if (conf_parser_ctx.pass == 2)
5101      yy_aconf->flags |= CONF_FLAGS_SPOOF_NOTICE;
5102   }
5103      break;
5104  
5105 <  case 265:
5105 >  case 272:
5106  
5107   /* Line 1806 of yacc.c  */
5108 < #line 1682 "ircd_parser.y"
5108 > #line 1693 "conf_parser.y"
5109      {
5110    if (conf_parser_ctx.pass == 2)
5111      yy_aconf->flags |= CONF_FLAGS_NOLIMIT;
5112   }
5113      break;
5114  
5115 <  case 266:
5115 >  case 273:
5116  
5117   /* Line 1806 of yacc.c  */
5118 < #line 1686 "ircd_parser.y"
5118 > #line 1697 "conf_parser.y"
5119      {
5120    if (conf_parser_ctx.pass == 2)
5121      yy_aconf->flags |= CONF_FLAGS_EXEMPTKLINE;
5122   }
5123      break;
5124  
5125 <  case 267:
5125 >  case 274:
5126  
5127   /* Line 1806 of yacc.c  */
5128 < #line 1690 "ircd_parser.y"
5128 > #line 1701 "conf_parser.y"
5129      {
5130    if (conf_parser_ctx.pass == 2)
5131      yy_aconf->flags |= CONF_FLAGS_NEED_IDENTD;
5132   }
5133      break;
5134  
5135 <  case 268:
5135 >  case 275:
5136  
5137   /* Line 1806 of yacc.c  */
5138 < #line 1694 "ircd_parser.y"
5138 > #line 1705 "conf_parser.y"
5139      {
5140    if (conf_parser_ctx.pass == 2)
5141      yy_aconf->flags |= CONF_FLAGS_CAN_FLOOD;
5142   }
5143      break;
5144  
5145 <  case 269:
5145 >  case 276:
5146  
5147   /* Line 1806 of yacc.c  */
5148 < #line 1698 "ircd_parser.y"
5148 > #line 1709 "conf_parser.y"
5149      {
5150    if (conf_parser_ctx.pass == 2)
5151      yy_aconf->flags |= CONF_FLAGS_NO_TILDE;
5152   }
5153      break;
5154  
5155 <  case 270:
5155 >  case 277:
5156  
5157   /* Line 1806 of yacc.c  */
5158 < #line 1702 "ircd_parser.y"
5158 > #line 1713 "conf_parser.y"
5159      {
5160    if (conf_parser_ctx.pass == 2)
5161      yy_aconf->flags |= CONF_FLAGS_EXEMPTGLINE;
5162   }
5163      break;
5164  
5165 <  case 271:
5165 >  case 278:
5166  
5167   /* Line 1806 of yacc.c  */
5168 < #line 1706 "ircd_parser.y"
5168 > #line 1717 "conf_parser.y"
5169      {
5170    if (conf_parser_ctx.pass == 2)
5171      yy_aconf->flags |= CONF_FLAGS_EXEMPTRESV;
5172   }
5173      break;
5174  
5175 <  case 272:
5175 >  case 279:
5176  
5177   /* Line 1806 of yacc.c  */
5178 < #line 1710 "ircd_parser.y"
5178 > #line 1721 "conf_parser.y"
5179      {
5180    if (conf_parser_ctx.pass == 2)
5181      yy_aconf->flags |= CONF_FLAGS_NEED_PASSWORD;
5182   }
5183      break;
5184  
5185 <  case 273:
5185 >  case 280:
5186  
5187   /* Line 1806 of yacc.c  */
5188 < #line 1717 "ircd_parser.y"
5188 > #line 1728 "conf_parser.y"
5189      {
5190    if (conf_parser_ctx.pass == 2)
5191    {
# Line 5165 | Line 5205 | yyreduce:
5205   }
5206      break;
5207  
5208 <  case 274:
5208 >  case 281:
5209  
5210   /* Line 1806 of yacc.c  */
5211 < #line 1736 "ircd_parser.y"
5211 > #line 1747 "conf_parser.y"
5212      {
5213    if (conf_parser_ctx.pass == 2)
5214    {
# Line 5179 | Line 5219 | yyreduce:
5219   }
5220      break;
5221  
5222 <  case 275:
5222 >  case 282:
5223  
5224   /* Line 1806 of yacc.c  */
5225 < #line 1746 "ircd_parser.y"
5225 > #line 1757 "conf_parser.y"
5226      {
5227    if (conf_parser_ctx.pass == 2)
5228    {
# Line 5192 | Line 5232 | yyreduce:
5232   }
5233      break;
5234  
5235 <  case 276:
5235 >  case 283:
5236  
5237   /* Line 1806 of yacc.c  */
5238 < #line 1759 "ircd_parser.y"
5238 > #line 1770 "conf_parser.y"
5239      {
5240    if (conf_parser_ctx.pass == 2)
5241    {
# Line 5205 | Line 5245 | yyreduce:
5245   }
5246      break;
5247  
5248 <  case 277:
5248 >  case 284:
5249  
5250   /* Line 1806 of yacc.c  */
5251 < #line 1766 "ircd_parser.y"
5251 > #line 1777 "conf_parser.y"
5252      {
5253    if (conf_parser_ctx.pass == 2)
5254    {
# Line 5218 | Line 5258 | yyreduce:
5258   }
5259      break;
5260  
5261 <  case 284:
5261 >  case 291:
5262  
5263   /* Line 1806 of yacc.c  */
5264 < #line 1778 "ircd_parser.y"
5264 > #line 1789 "conf_parser.y"
5265      {
5266    if (conf_parser_ctx.pass == 2)
5267    {
# Line 5231 | Line 5271 | yyreduce:
5271   }
5272      break;
5273  
5274 <  case 285:
5274 >  case 292:
5275  
5276   /* Line 1806 of yacc.c  */
5277 < #line 1787 "ircd_parser.y"
5277 > #line 1798 "conf_parser.y"
5278      {
5279    if (conf_parser_ctx.pass == 2)
5280    {
# Line 5250 | Line 5290 | yyreduce:
5290   }
5291      break;
5292  
5293 <  case 286:
5293 >  case 293:
5294  
5295   /* Line 1806 of yacc.c  */
5296 < #line 1802 "ircd_parser.y"
5296 > #line 1813 "conf_parser.y"
5297      {
5298    if (conf_parser_ctx.pass == 2)
5299    {
# Line 5264 | Line 5304 | yyreduce:
5304   }
5305      break;
5306  
5307 <  case 292:
5307 >  case 299:
5308  
5309   /* Line 1806 of yacc.c  */
5310 < #line 1820 "ircd_parser.y"
5310 > #line 1831 "conf_parser.y"
5311      {
5312    if (conf_parser_ctx.pass == 2)
5313    {
# Line 5280 | Line 5320 | yyreduce:
5320   }
5321      break;
5322  
5323 <  case 293:
5323 >  case 300:
5324  
5325   /* Line 1806 of yacc.c  */
5326 < #line 1835 "ircd_parser.y"
5326 > #line 1846 "conf_parser.y"
5327      {
5328    if (conf_parser_ctx.pass == 2)
5329    {
# Line 5294 | Line 5334 | yyreduce:
5334   }
5335      break;
5336  
5337 <  case 294:
5337 >  case 301:
5338  
5339   /* Line 1806 of yacc.c  */
5340 < #line 1843 "ircd_parser.y"
5340 > #line 1854 "conf_parser.y"
5341      {
5342    if (conf_parser_ctx.pass == 2)
5343    {
# Line 5306 | Line 5346 | yyreduce:
5346   }
5347      break;
5348  
5349 <  case 301:
5349 >  case 308:
5350  
5351   /* Line 1806 of yacc.c  */
5352 < #line 1854 "ircd_parser.y"
5352 > #line 1865 "conf_parser.y"
5353      {
5354    if (conf_parser_ctx.pass == 2)
5355    {
# Line 5319 | Line 5359 | yyreduce:
5359   }
5360      break;
5361  
5362 <  case 302:
5362 >  case 309:
5363  
5364   /* Line 1806 of yacc.c  */
5365 < #line 1863 "ircd_parser.y"
5365 > #line 1874 "conf_parser.y"
5366      {
5367    if (conf_parser_ctx.pass == 2)
5368    {
# Line 5345 | Line 5385 | yyreduce:
5385   }
5386      break;
5387  
5388 <  case 303:
5388 >  case 310:
5389  
5390   /* Line 1806 of yacc.c  */
5391 < #line 1885 "ircd_parser.y"
5391 > #line 1896 "conf_parser.y"
5392      {
5393    if (conf_parser_ctx.pass == 2)
5394      yy_match_item->action = 0;
5395   }
5396      break;
5397  
5398 <  case 307:
5398 >  case 314:
5399  
5400   /* Line 1806 of yacc.c  */
5401 < #line 1892 "ircd_parser.y"
5401 > #line 1903 "conf_parser.y"
5402      {
5403    if (conf_parser_ctx.pass == 2)
5404      yy_match_item->action |= SHARED_KLINE;
5405   }
5406      break;
5407  
5408 <  case 308:
5408 >  case 315:
5409  
5410   /* Line 1806 of yacc.c  */
5411 < #line 1896 "ircd_parser.y"
5411 > #line 1907 "conf_parser.y"
5412      {
5413    if (conf_parser_ctx.pass == 2)
5414      yy_match_item->action |= SHARED_UNKLINE;
5415   }
5416      break;
5417  
5418 <  case 309:
5418 >  case 316:
5419  
5420   /* Line 1806 of yacc.c  */
5421 < #line 1900 "ircd_parser.y"
5421 > #line 1911 "conf_parser.y"
5422      {
5423    if (conf_parser_ctx.pass == 2)
5424      yy_match_item->action |= SHARED_DLINE;
5425   }
5426      break;
5427  
5428 <  case 310:
5428 >  case 317:
5429  
5430   /* Line 1806 of yacc.c  */
5431 < #line 1904 "ircd_parser.y"
5431 > #line 1915 "conf_parser.y"
5432      {
5433    if (conf_parser_ctx.pass == 2)
5434      yy_match_item->action |= SHARED_UNDLINE;
5435   }
5436      break;
5437  
5438 <  case 311:
5438 >  case 318:
5439  
5440   /* Line 1806 of yacc.c  */
5441 < #line 1908 "ircd_parser.y"
5441 > #line 1919 "conf_parser.y"
5442      {
5443    if (conf_parser_ctx.pass == 2)
5444      yy_match_item->action |= SHARED_XLINE;
5445   }
5446      break;
5447  
5448 <  case 312:
5448 >  case 319:
5449  
5450   /* Line 1806 of yacc.c  */
5451 < #line 1912 "ircd_parser.y"
5451 > #line 1923 "conf_parser.y"
5452      {
5453    if (conf_parser_ctx.pass == 2)
5454      yy_match_item->action |= SHARED_UNXLINE;
5455   }
5456      break;
5457  
5458 <  case 313:
5458 >  case 320:
5459  
5460   /* Line 1806 of yacc.c  */
5461 < #line 1916 "ircd_parser.y"
5461 > #line 1927 "conf_parser.y"
5462      {
5463    if (conf_parser_ctx.pass == 2)
5464      yy_match_item->action |= SHARED_RESV;
5465   }
5466      break;
5467  
5468 <  case 314:
5468 >  case 321:
5469  
5470   /* Line 1806 of yacc.c  */
5471 < #line 1920 "ircd_parser.y"
5471 > #line 1931 "conf_parser.y"
5472      {
5473    if (conf_parser_ctx.pass == 2)
5474      yy_match_item->action |= SHARED_UNRESV;
5475   }
5476      break;
5477  
5478 <  case 315:
5478 >  case 322:
5479  
5480   /* Line 1806 of yacc.c  */
5481 < #line 1924 "ircd_parser.y"
5481 > #line 1935 "conf_parser.y"
5482      {
5483    if (conf_parser_ctx.pass == 2)
5484      yy_match_item->action |= SHARED_LOCOPS;
5485   }
5486      break;
5487  
5488 <  case 316:
5488 >  case 323:
5489  
5490   /* Line 1806 of yacc.c  */
5491 < #line 1928 "ircd_parser.y"
5491 > #line 1939 "conf_parser.y"
5492      {
5493    if (conf_parser_ctx.pass == 2)
5494      yy_match_item->action = SHARED_ALL;
5495   }
5496      break;
5497  
5498 <  case 317:
5498 >  case 324:
5499  
5500   /* Line 1806 of yacc.c  */
5501 < #line 1937 "ircd_parser.y"
5501 > #line 1948 "conf_parser.y"
5502      {
5503    if (conf_parser_ctx.pass == 2)
5504    {
# Line 5468 | Line 5508 | yyreduce:
5508   }
5509      break;
5510  
5511 <  case 318:
5511 >  case 325:
5512  
5513   /* Line 1806 of yacc.c  */
5514 < #line 1944 "ircd_parser.y"
5514 > #line 1955 "conf_parser.y"
5515      {
5516    if (conf_parser_ctx.pass == 2)
5517    {
# Line 5482 | Line 5522 | yyreduce:
5522   }
5523      break;
5524  
5525 <  case 324:
5525 >  case 331:
5526  
5527   /* Line 1806 of yacc.c  */
5528 < #line 1957 "ircd_parser.y"
5528 > #line 1968 "conf_parser.y"
5529      {
5530    if (conf_parser_ctx.pass == 2)
5531      DupString(yy_conf->name, yylval.string);
5532   }
5533      break;
5534  
5535 <  case 325:
5535 >  case 332:
5536  
5537   /* Line 1806 of yacc.c  */
5538 < #line 1963 "ircd_parser.y"
5538 > #line 1974 "conf_parser.y"
5539      {
5540    if (conf_parser_ctx.pass == 2)
5541      yy_conf->flags = 0;
5542   }
5543      break;
5544  
5545 <  case 329:
5545 >  case 336:
5546  
5547   /* Line 1806 of yacc.c  */
5548 < #line 1970 "ircd_parser.y"
5548 > #line 1981 "conf_parser.y"
5549      {
5550    if (conf_parser_ctx.pass == 2)
5551      yy_conf->flags |= SHARED_KLINE;
5552   }
5553      break;
5554  
5555 <  case 330:
5555 >  case 337:
5556  
5557   /* Line 1806 of yacc.c  */
5558 < #line 1974 "ircd_parser.y"
5558 > #line 1985 "conf_parser.y"
5559      {
5560    if (conf_parser_ctx.pass == 2)
5561      yy_conf->flags |= SHARED_UNKLINE;
5562   }
5563      break;
5564  
5565 <  case 331:
5565 >  case 338:
5566  
5567   /* Line 1806 of yacc.c  */
5568 < #line 1978 "ircd_parser.y"
5568 > #line 1989 "conf_parser.y"
5569      {
5570    if (conf_parser_ctx.pass == 2)
5571      yy_conf->flags |= SHARED_DLINE;
5572   }
5573      break;
5574  
5575 <  case 332:
5575 >  case 339:
5576  
5577   /* Line 1806 of yacc.c  */
5578 < #line 1982 "ircd_parser.y"
5578 > #line 1993 "conf_parser.y"
5579      {
5580    if (conf_parser_ctx.pass == 2)
5581      yy_conf->flags |= SHARED_UNDLINE;
5582   }
5583      break;
5584  
5585 <  case 333:
5585 >  case 340:
5586  
5587   /* Line 1806 of yacc.c  */
5588 < #line 1986 "ircd_parser.y"
5588 > #line 1997 "conf_parser.y"
5589      {
5590    if (conf_parser_ctx.pass == 2)
5591      yy_conf->flags |= SHARED_XLINE;
5592   }
5593      break;
5594  
5595 <  case 334:
5595 >  case 341:
5596  
5597   /* Line 1806 of yacc.c  */
5598 < #line 1990 "ircd_parser.y"
5598 > #line 2001 "conf_parser.y"
5599      {
5600    if (conf_parser_ctx.pass == 2)
5601      yy_conf->flags |= SHARED_UNXLINE;
5602   }
5603      break;
5604  
5605 <  case 335:
5605 >  case 342:
5606  
5607   /* Line 1806 of yacc.c  */
5608 < #line 1994 "ircd_parser.y"
5608 > #line 2005 "conf_parser.y"
5609      {
5610    if (conf_parser_ctx.pass == 2)
5611      yy_conf->flags |= SHARED_RESV;
5612   }
5613      break;
5614  
5615 <  case 336:
5615 >  case 343:
5616  
5617   /* Line 1806 of yacc.c  */
5618 < #line 1998 "ircd_parser.y"
5618 > #line 2009 "conf_parser.y"
5619      {
5620    if (conf_parser_ctx.pass == 2)
5621      yy_conf->flags |= SHARED_UNRESV;
5622   }
5623      break;
5624  
5625 <  case 337:
5625 >  case 344:
5626  
5627   /* Line 1806 of yacc.c  */
5628 < #line 2002 "ircd_parser.y"
5628 > #line 2013 "conf_parser.y"
5629      {
5630    if (conf_parser_ctx.pass == 2)
5631      yy_conf->flags |= SHARED_LOCOPS;
5632   }
5633      break;
5634  
5635 <  case 338:
5635 >  case 345:
5636  
5637   /* Line 1806 of yacc.c  */
5638 < #line 2006 "ircd_parser.y"
5638 > #line 2017 "conf_parser.y"
5639      {
5640    if (conf_parser_ctx.pass == 2)
5641      yy_conf->flags = SHARED_ALL;
5642   }
5643      break;
5644  
5645 <  case 339:
5645 >  case 346:
5646  
5647   /* Line 1806 of yacc.c  */
5648 < #line 2015 "ircd_parser.y"
5648 > #line 2026 "conf_parser.y"
5649      {
5650    if (conf_parser_ctx.pass == 2)
5651    {
# Line 5623 | Line 5663 | yyreduce:
5663   }
5664      break;
5665  
5666 <  case 340:
5666 >  case 347:
5667  
5668   /* Line 1806 of yacc.c  */
5669 < #line 2030 "ircd_parser.y"
5669 > #line 2041 "conf_parser.y"
5670      {
5671    if (conf_parser_ctx.pass == 2)
5672    {
5673 <    struct CollectItem *yy_hconf=NULL;
5634 <    struct CollectItem *yy_lconf=NULL;
5635 <    dlink_node *ptr = NULL, *next_ptr = NULL;
5636 <
5637 <    if (yy_aconf->host &&
5638 <        yy_aconf->passwd && yy_aconf->spasswd)
5673 >    if (yy_aconf->host && yy_aconf->passwd && yy_aconf->spasswd)
5674      {
5675        if (conf_add_server(yy_conf, class_name) == -1)
5641      {
5676          delete_conf_item(yy_conf);
5643        yy_conf = NULL;
5644        yy_aconf = NULL;
5645      }
5677      }
5678      else
5679      {
5649      /* Even if yy_conf ->name is NULL
5650       * should still unhook any hub/leaf confs still pending
5651       */
5652      unhook_hub_leaf_confs();
5653
5680        if (yy_conf->name != NULL)
5681        {
5682          if (yy_aconf->host == NULL)
# Line 5659 | Line 5685 | yyreduce:
5685            yyerror("Ignoring connect block -- missing password");
5686        }
5687  
5662
5688        /* XXX
5689         * This fixes a try_connections() core (caused by invalid class_ptr
5690         * pointers) reported by metalrock. That's an ugly fix, but there
# Line 5668 | Line 5693 | yyreduce:
5693         * a doubly linked list immediately without any sanity checks!  -Michael
5694         */
5695        delete_conf_item(yy_conf);
5671
5672      yy_aconf = NULL;
5673      yy_conf = NULL;
5696      }
5697  
5698 <      /*
5699 <       * yy_conf is still pointing at the server that is having
5700 <       * a connect block built for it. This means, y_aconf->name
5701 <       * points to the actual irc name this server will be known as.
5680 <       * Now this new server has a set or even just one hub_mask (or leaf_mask)
5681 <       * given in the link list at yy_hconf. Fill in the HUB confs
5682 <       * from this link list now.
5683 <       */        
5684 <      DLINK_FOREACH_SAFE(ptr, next_ptr, hub_conf_list.head)
5685 <      {
5686 <        struct ConfItem *new_hub_conf;
5687 <        struct MatchItem *match_item;
5688 <
5689 <        yy_hconf = ptr->data;
5690 <
5691 <        /* yy_conf == NULL is a fatal error for this connect block! */
5692 <        if ((yy_conf != NULL) && (yy_conf->name != NULL))
5693 <        {
5694 <          new_hub_conf = make_conf_item(HUB_TYPE);
5695 <          match_item = (struct MatchItem *)map_to_conf(new_hub_conf);
5696 <          DupString(new_hub_conf->name, yy_conf->name);
5697 <          if (yy_hconf->user != NULL)
5698 <            DupString(match_item->user, yy_hconf->user);
5699 <          else
5700 <            DupString(match_item->user, "*");
5701 <          if (yy_hconf->host != NULL)
5702 <            DupString(match_item->host, yy_hconf->host);
5703 <          else
5704 <            DupString(match_item->host, "*");
5705 <        }
5706 <        dlinkDelete(&yy_hconf->node, &hub_conf_list);
5707 <        free_collect_item(yy_hconf);
5708 <      }
5709 <
5710 <      /* Ditto for the LEAF confs */
5711 <
5712 <      DLINK_FOREACH_SAFE(ptr, next_ptr, leaf_conf_list.head)
5713 <      {
5714 <        struct ConfItem *new_leaf_conf;
5715 <        struct MatchItem *match_item;
5716 <
5717 <        yy_lconf = ptr->data;
5718 <
5719 <        if ((yy_conf != NULL) && (yy_conf->name != NULL))
5720 <        {
5721 <          new_leaf_conf = make_conf_item(LEAF_TYPE);
5722 <          match_item = (struct MatchItem *)map_to_conf(new_leaf_conf);
5723 <          DupString(new_leaf_conf->name, yy_conf->name);
5724 <          if (yy_lconf->user != NULL)
5725 <            DupString(match_item->user, yy_lconf->user);
5726 <          else
5727 <            DupString(match_item->user, "*");
5728 <          if (yy_lconf->host != NULL)
5729 <            DupString(match_item->host, yy_lconf->host);
5730 <          else
5731 <            DupString(match_item->host, "*");
5732 <        }
5733 <        dlinkDelete(&yy_lconf->node, &leaf_conf_list);
5734 <        free_collect_item(yy_lconf);
5735 <      }
5736 <      MyFree(class_name);
5737 <      class_name = NULL;
5738 <      yy_conf = NULL;
5739 <      yy_aconf = NULL;
5698 >    MyFree(class_name);
5699 >    class_name = NULL;
5700 >    yy_conf = NULL;
5701 >    yy_aconf = NULL;
5702    }
5703   }
5704      break;
5705  
5706 <  case 356:
5706 >  case 364:
5707  
5708   /* Line 1806 of yacc.c  */
5709 < #line 2152 "ircd_parser.y"
5709 > #line 2085 "conf_parser.y"
5710      {
5711    if (conf_parser_ctx.pass == 2)
5712    {
5751    if (yy_conf->name != NULL)
5752      yyerror("Multiple connect name entry");
5753
5713      MyFree(yy_conf->name);
5714      DupString(yy_conf->name, yylval.string);
5715    }
5716   }
5717      break;
5718  
5719 <  case 357:
5719 >  case 365:
5720  
5721   /* Line 1806 of yacc.c  */
5722 < #line 2164 "ircd_parser.y"
5722 > #line 2094 "conf_parser.y"
5723      {
5724    if (conf_parser_ctx.pass == 2)
5725    {
# Line 5770 | Line 5729 | yyreduce:
5729   }
5730      break;
5731  
5732 <  case 358:
5732 >  case 366:
5733  
5734   /* Line 1806 of yacc.c  */
5735 < #line 2173 "ircd_parser.y"
5735 > #line 2103 "conf_parser.y"
5736      {
5737    if (conf_parser_ctx.pass == 2)
5738    {
# Line 5791 | Line 5750 | yyreduce:
5750      {
5751        assert(res != NULL);
5752  
5753 <      memcpy(&yy_aconf->my_ipnum, res->ai_addr, res->ai_addrlen);
5754 <      yy_aconf->my_ipnum.ss.ss_family = res->ai_family;
5755 <      yy_aconf->my_ipnum.ss_len = res->ai_addrlen;
5753 >      memcpy(&yy_aconf->bind, res->ai_addr, res->ai_addrlen);
5754 >      yy_aconf->bind.ss.ss_family = res->ai_family;
5755 >      yy_aconf->bind.ss_len = res->ai_addrlen;
5756        freeaddrinfo(res);
5757      }
5758    }
5759   }
5760      break;
5761  
5762 <  case 359:
5762 >  case 367:
5763  
5764   /* Line 1806 of yacc.c  */
5765 < #line 2199 "ircd_parser.y"
5765 > #line 2129 "conf_parser.y"
5766      {
5767    if (conf_parser_ctx.pass == 2)
5768    {
# Line 5822 | Line 5781 | yyreduce:
5781   }
5782      break;
5783  
5784 <  case 360:
5784 >  case 368:
5785  
5786   /* Line 1806 of yacc.c  */
5787 < #line 2217 "ircd_parser.y"
5787 > #line 2147 "conf_parser.y"
5788      {
5789    if (conf_parser_ctx.pass == 2)
5790    {
# Line 5844 | Line 5803 | yyreduce:
5803   }
5804      break;
5805  
5806 <  case 361:
5806 >  case 369:
5807  
5808   /* Line 1806 of yacc.c  */
5809 < #line 2235 "ircd_parser.y"
5809 > #line 2165 "conf_parser.y"
5810      {
5811    if (conf_parser_ctx.pass == 2)
5812      yy_aconf->port = (yyvsp[(3) - (4)].number);
5813   }
5814      break;
5815  
5816 <  case 362:
5816 >  case 370:
5817  
5818   /* Line 1806 of yacc.c  */
5819 < #line 2241 "ircd_parser.y"
5819 > #line 2171 "conf_parser.y"
5820      {
5821    if (conf_parser_ctx.pass == 2)
5822      yy_aconf->aftype = AF_INET;
5823   }
5824      break;
5825  
5826 <  case 363:
5826 >  case 371:
5827  
5828   /* Line 1806 of yacc.c  */
5829 < #line 2245 "ircd_parser.y"
5829 > #line 2175 "conf_parser.y"
5830      {
5831   #ifdef IPV6
5832    if (conf_parser_ctx.pass == 2)
# Line 5876 | Line 5835 | yyreduce:
5835   }
5836      break;
5837  
5838 <  case 364:
5838 >  case 372:
5839  
5840   /* Line 1806 of yacc.c  */
5841 < #line 2253 "ircd_parser.y"
5841 > #line 2183 "conf_parser.y"
5842      {
5843   }
5844      break;
5845  
5846 <  case 368:
5846 >  case 376:
5847  
5848   /* Line 1806 of yacc.c  */
5849 < #line 2258 "ircd_parser.y"
5849 > #line 2188 "conf_parser.y"
5850      {
5851    if (conf_parser_ctx.pass == 2)
5852      SetConfAllowAutoConn(yy_aconf);
5853   }
5854      break;
5855  
5856 <  case 369:
5856 >  case 377:
5857  
5858   /* Line 1806 of yacc.c  */
5859 < #line 2262 "ircd_parser.y"
5859 > #line 2192 "conf_parser.y"
5860      {
5861    if (conf_parser_ctx.pass == 2)
5862      SetConfAwayBurst(yy_aconf);
5863   }
5864      break;
5865  
5866 <  case 370:
5866 >  case 378:
5867  
5868   /* Line 1806 of yacc.c  */
5869 < #line 2266 "ircd_parser.y"
5869 > #line 2196 "conf_parser.y"
5870      {
5871    if (conf_parser_ctx.pass == 2)
5872      SetConfTopicBurst(yy_aconf);
5873   }
5874      break;
5875  
5876 <  case 371:
5876 >  case 379:
5877 >
5878 > /* Line 1806 of yacc.c  */
5879 > #line 2200 "conf_parser.y"
5880 >    {
5881 >  if (conf_parser_ctx.pass == 2)
5882 >    SetConfSSL(yy_aconf);
5883 > }
5884 >    break;
5885 >
5886 >  case 380:
5887  
5888   /* Line 1806 of yacc.c  */
5889 < #line 2272 "ircd_parser.y"
5889 > #line 2206 "conf_parser.y"
5890      {
5891    if (conf_parser_ctx.pass == 2)
5892    {
# Line 5929 | Line 5898 | yyreduce:
5898   }
5899      break;
5900  
5901 <  case 372:
5901 >  case 381:
5902  
5903   /* Line 1806 of yacc.c  */
5904 < #line 2283 "ircd_parser.y"
5904 > #line 2217 "conf_parser.y"
5905      {
5906    if (conf_parser_ctx.pass == 2)
5907    {
5908 <    struct CollectItem *yy_tmp;
5908 >    char *mask;
5909  
5910 <    yy_tmp = (struct CollectItem *)MyMalloc(sizeof(struct CollectItem));
5911 <    DupString(yy_tmp->host, yylval.string);
5943 <    DupString(yy_tmp->user, "*");
5944 <    dlinkAdd(yy_tmp, &yy_tmp->node, &hub_conf_list);
5910 >    DupString(mask, yylval.string);
5911 >    dlinkAdd(mask, make_dlink_node(), &yy_aconf->hub_list);
5912    }
5913   }
5914      break;
5915  
5916 <  case 373:
5916 >  case 382:
5917  
5918   /* Line 1806 of yacc.c  */
5919 < #line 2296 "ircd_parser.y"
5919 > #line 2228 "conf_parser.y"
5920      {
5921    if (conf_parser_ctx.pass == 2)
5922    {
5923 <    struct CollectItem *yy_tmp;
5923 >    char *mask;
5924  
5925 <    yy_tmp = (struct CollectItem *)MyMalloc(sizeof(struct CollectItem));
5926 <    DupString(yy_tmp->host, yylval.string);
5960 <    DupString(yy_tmp->user, "*");
5961 <    dlinkAdd(yy_tmp, &yy_tmp->node, &leaf_conf_list);
5925 >    DupString(mask, yylval.string);
5926 >    dlinkAdd(mask, make_dlink_node(), &yy_aconf->leaf_list);
5927    }
5928   }
5929      break;
5930  
5931 <  case 374:
5931 >  case 383:
5932  
5933   /* Line 1806 of yacc.c  */
5934 < #line 2309 "ircd_parser.y"
5934 > #line 2239 "conf_parser.y"
5935      {
5936    if (conf_parser_ctx.pass == 2)
5937    {
# Line 5976 | Line 5941 | yyreduce:
5941   }
5942      break;
5943  
5944 <  case 375:
5944 >  case 384:
5945 >
5946 > /* Line 1806 of yacc.c  */
5947 > #line 2248 "conf_parser.y"
5948 >    {
5949 > #ifdef HAVE_LIBCRYPTO
5950 >  if (conf_parser_ctx.pass == 2)
5951 >  {
5952 >    MyFree(yy_aconf->cipher_list);
5953 >    DupString(yy_aconf->cipher_list, yylval.string);
5954 >  }
5955 > #else
5956 >  if (conf_parser_ctx.pass == 2)
5957 >    yyerror("Ignoring connect::ciphers -- no OpenSSL support");
5958 > #endif
5959 > }
5960 >    break;
5961 >
5962 >  case 385:
5963  
5964   /* Line 1806 of yacc.c  */
5965 < #line 2321 "ircd_parser.y"
5965 > #line 2266 "conf_parser.y"
5966      {
5967    if (conf_parser_ctx.pass == 2)
5968    {
# Line 5989 | Line 5972 | yyreduce:
5972   }
5973      break;
5974  
5975 <  case 376:
5975 >  case 386:
5976  
5977   /* Line 1806 of yacc.c  */
5978 < #line 2328 "ircd_parser.y"
5978 > #line 2273 "conf_parser.y"
5979      {
5980    if (conf_parser_ctx.pass == 2)
5981    {
# Line 6031 | Line 6014 | yyreduce:
6014        }
6015        else
6016        {
6017 +        find_and_delete_temporary(userbuf, hostbuf, CONF_KLINE);
6018 +
6019          yy_aconf = map_to_conf(make_conf_item(KLINE_TYPE));
6020  
6021          DupString(yy_aconf->user, userbuf);
# Line 6040 | Line 6025 | yyreduce:
6025            DupString(yy_aconf->reason, reasonbuf);
6026          else
6027            DupString(yy_aconf->reason, "No reason");
6028 <        add_conf_by_address(CONF_KILL, yy_aconf);
6028 >        add_conf_by_address(CONF_KLINE, yy_aconf);
6029        }
6030      }
6031  
# Line 6049 | Line 6034 | yyreduce:
6034   }
6035      break;
6036  
6037 <  case 377:
6037 >  case 387:
6038  
6039   /* Line 1806 of yacc.c  */
6040 < #line 2384 "ircd_parser.y"
6040 > #line 2331 "conf_parser.y"
6041      {
6042   }
6043      break;
6044  
6045 <  case 381:
6045 >  case 391:
6046  
6047   /* Line 1806 of yacc.c  */
6048 < #line 2389 "ircd_parser.y"
6048 > #line 2336 "conf_parser.y"
6049      {
6050    if (conf_parser_ctx.pass == 2)
6051      regex_ban = 1;
6052   }
6053      break;
6054  
6055 <  case 388:
6055 >  case 398:
6056  
6057   /* Line 1806 of yacc.c  */
6058 < #line 2398 "ircd_parser.y"
6058 > #line 2345 "conf_parser.y"
6059      {
6060    if (conf_parser_ctx.pass == 2)
6061    {
# Line 6090 | Line 6075 | yyreduce:
6075   }
6076      break;
6077  
6078 <  case 389:
6078 >  case 399:
6079  
6080   /* Line 1806 of yacc.c  */
6081 < #line 2417 "ircd_parser.y"
6081 > #line 2364 "conf_parser.y"
6082      {
6083    if (conf_parser_ctx.pass == 2)
6084      strlcpy(reasonbuf, yylval.string, sizeof(reasonbuf));
6085   }
6086      break;
6087  
6088 <  case 390:
6088 >  case 400:
6089  
6090   /* Line 1806 of yacc.c  */
6091 < #line 2426 "ircd_parser.y"
6091 > #line 2373 "conf_parser.y"
6092      {
6093    if (conf_parser_ctx.pass == 2)
6094      hostbuf[0] = reasonbuf[0] = '\0';
6095   }
6096      break;
6097  
6098 <  case 391:
6098 >  case 401:
6099  
6100   /* Line 1806 of yacc.c  */
6101 < #line 2430 "ircd_parser.y"
6101 > #line 2377 "conf_parser.y"
6102      {
6103    if (conf_parser_ctx.pass == 2)
6104    {
6105      if (hostbuf[0] && parse_netmask(hostbuf, NULL, NULL) != HM_HOST)
6106      {
6107 +      find_and_delete_temporary(NULL, hostbuf, CONF_DLINE);
6108 +
6109        yy_aconf = map_to_conf(make_conf_item(DLINE_TYPE));
6110        DupString(yy_aconf->host, hostbuf);
6111  
# Line 6133 | Line 6120 | yyreduce:
6120   }
6121      break;
6122  
6123 <  case 397:
6123 >  case 407:
6124  
6125   /* Line 1806 of yacc.c  */
6126 < #line 2452 "ircd_parser.y"
6126 > #line 2401 "conf_parser.y"
6127      {
6128    if (conf_parser_ctx.pass == 2)
6129      strlcpy(hostbuf, yylval.string, sizeof(hostbuf));
6130   }
6131      break;
6132  
6133 <  case 398:
6133 >  case 408:
6134  
6135   /* Line 1806 of yacc.c  */
6136 < #line 2458 "ircd_parser.y"
6136 > #line 2407 "conf_parser.y"
6137      {
6138    if (conf_parser_ctx.pass == 2)
6139      strlcpy(reasonbuf, yylval.string, sizeof(reasonbuf));
6140   }
6141      break;
6142  
6143 <  case 404:
6143 >  case 414:
6144  
6145   /* Line 1806 of yacc.c  */
6146 < #line 2472 "ircd_parser.y"
6146 > #line 2421 "conf_parser.y"
6147      {
6148    if (conf_parser_ctx.pass == 2)
6149    {
# Line 6172 | Line 6159 | yyreduce:
6159   }
6160      break;
6161  
6162 <  case 405:
6162 >  case 415:
6163  
6164   /* Line 1806 of yacc.c  */
6165 < #line 2490 "ircd_parser.y"
6165 > #line 2439 "conf_parser.y"
6166      {
6167    if (conf_parser_ctx.pass == 2)
6168    {
# Line 6185 | Line 6172 | yyreduce:
6172   }
6173      break;
6174  
6175 <  case 406:
6175 >  case 416:
6176  
6177   /* Line 1806 of yacc.c  */
6178 < #line 2497 "ircd_parser.y"
6178 > #line 2446 "conf_parser.y"
6179      {
6180    if (conf_parser_ctx.pass == 2)
6181    {
# Line 6229 | Line 6216 | yyreduce:
6216   }
6217      break;
6218  
6219 <  case 407:
6219 >  case 417:
6220  
6221   /* Line 1806 of yacc.c  */
6222 < #line 2537 "ircd_parser.y"
6222 > #line 2486 "conf_parser.y"
6223      {
6224   }
6225      break;
6226  
6227 <  case 411:
6227 >  case 421:
6228  
6229   /* Line 1806 of yacc.c  */
6230 < #line 2542 "ircd_parser.y"
6230 > #line 2491 "conf_parser.y"
6231      {
6232    if (conf_parser_ctx.pass == 2)
6233      regex_ban = 1;
6234   }
6235      break;
6236  
6237 <  case 418:
6237 >  case 428:
6238  
6239   /* Line 1806 of yacc.c  */
6240 < #line 2551 "ircd_parser.y"
6240 > #line 2500 "conf_parser.y"
6241      {
6242    if (conf_parser_ctx.pass == 2)
6243      strlcpy(gecos_name, yylval.string, sizeof(gecos_name));
6244   }
6245      break;
6246  
6247 <  case 419:
6247 >  case 429:
6248  
6249   /* Line 1806 of yacc.c  */
6250 < #line 2557 "ircd_parser.y"
6250 > #line 2506 "conf_parser.y"
6251      {
6252    if (conf_parser_ctx.pass == 2)
6253      strlcpy(reasonbuf, yylval.string, sizeof(reasonbuf));
6254   }
6255      break;
6256  
6257 <  case 475:
6257 >  case 485:
6258  
6259   /* Line 1806 of yacc.c  */
6260 < #line 2601 "ircd_parser.y"
6260 > #line 2550 "conf_parser.y"
6261      {
6262    ConfigFileEntry.max_watch = (yyvsp[(3) - (4)].number);
6263   }
6264      break;
6265  
6266 <  case 476:
6266 >  case 486:
6267  
6268   /* Line 1806 of yacc.c  */
6269 < #line 2606 "ircd_parser.y"
6269 > #line 2555 "conf_parser.y"
6270      {
6271    ConfigFileEntry.gline_min_cidr = (yyvsp[(3) - (4)].number);
6272   }
6273      break;
6274  
6275 <  case 477:
6275 >  case 487:
6276  
6277   /* Line 1806 of yacc.c  */
6278 < #line 2611 "ircd_parser.y"
6278 > #line 2560 "conf_parser.y"
6279      {
6280    ConfigFileEntry.gline_min_cidr6 = (yyvsp[(3) - (4)].number);
6281   }
6282      break;
6283  
6284 <  case 478:
6284 >  case 488:
6285  
6286   /* Line 1806 of yacc.c  */
6287 < #line 2616 "ircd_parser.y"
6287 > #line 2565 "conf_parser.y"
6288      {
6289    ConfigFileEntry.use_whois_actually = yylval.number;
6290   }
6291      break;
6292  
6293 <  case 479:
6293 >  case 489:
6294  
6295   /* Line 1806 of yacc.c  */
6296 < #line 2621 "ircd_parser.y"
6296 > #line 2570 "conf_parser.y"
6297      {
6298    GlobalSetOptions.rejecttime = yylval.number;
6299   }
6300      break;
6301  
6302 <  case 480:
6302 >  case 490:
6303  
6304   /* Line 1806 of yacc.c  */
6305 < #line 2626 "ircd_parser.y"
6305 > #line 2575 "conf_parser.y"
6306      {
6307    ConfigFileEntry.tkline_expire_notices = yylval.number;
6308   }
6309      break;
6310  
6311 <  case 481:
6311 >  case 491:
6312  
6313   /* Line 1806 of yacc.c  */
6314 < #line 2631 "ircd_parser.y"
6314 > #line 2580 "conf_parser.y"
6315      {
6316    ConfigFileEntry.kill_chase_time_limit = (yyvsp[(3) - (4)].number);
6317   }
6318      break;
6319  
6320 <  case 482:
6320 >  case 492:
6321  
6322   /* Line 1806 of yacc.c  */
6323 < #line 2636 "ircd_parser.y"
6323 > #line 2585 "conf_parser.y"
6324      {
6325    ConfigFileEntry.hide_spoof_ips = yylval.number;
6326   }
6327      break;
6328  
6329 <  case 483:
6329 >  case 493:
6330  
6331   /* Line 1806 of yacc.c  */
6332 < #line 2641 "ircd_parser.y"
6332 > #line 2590 "conf_parser.y"
6333      {
6334    ConfigFileEntry.ignore_bogus_ts = yylval.number;
6335   }
6336      break;
6337  
6338 <  case 484:
6338 >  case 494:
6339  
6340   /* Line 1806 of yacc.c  */
6341 < #line 2646 "ircd_parser.y"
6341 > #line 2595 "conf_parser.y"
6342      {
6343    ConfigFileEntry.disable_remote = yylval.number;
6344   }
6345      break;
6346  
6347 <  case 485:
6347 >  case 495:
6348  
6349   /* Line 1806 of yacc.c  */
6350 < #line 2651 "ircd_parser.y"
6350 > #line 2600 "conf_parser.y"
6351      {
6352    ConfigFileEntry.failed_oper_notice = yylval.number;
6353   }
6354      break;
6355  
6356 <  case 486:
6356 >  case 496:
6357  
6358   /* Line 1806 of yacc.c  */
6359 < #line 2656 "ircd_parser.y"
6359 > #line 2605 "conf_parser.y"
6360      {
6361    ConfigFileEntry.anti_nick_flood = yylval.number;
6362   }
6363      break;
6364  
6365 <  case 487:
6365 >  case 497:
6366  
6367   /* Line 1806 of yacc.c  */
6368 < #line 2661 "ircd_parser.y"
6368 > #line 2610 "conf_parser.y"
6369      {
6370    ConfigFileEntry.max_nick_time = (yyvsp[(3) - (4)].number);
6371   }
6372      break;
6373  
6374 <  case 488:
6374 >  case 498:
6375  
6376   /* Line 1806 of yacc.c  */
6377 < #line 2666 "ircd_parser.y"
6377 > #line 2615 "conf_parser.y"
6378      {
6379    ConfigFileEntry.max_nick_changes = (yyvsp[(3) - (4)].number);
6380   }
6381      break;
6382  
6383 <  case 489:
6383 >  case 499:
6384  
6385   /* Line 1806 of yacc.c  */
6386 < #line 2671 "ircd_parser.y"
6386 > #line 2620 "conf_parser.y"
6387      {
6388    ConfigFileEntry.max_accept = (yyvsp[(3) - (4)].number);
6389   }
6390      break;
6391  
6392 <  case 490:
6392 >  case 500:
6393  
6394   /* Line 1806 of yacc.c  */
6395 < #line 2676 "ircd_parser.y"
6395 > #line 2625 "conf_parser.y"
6396      {
6397    ConfigFileEntry.anti_spam_exit_message_time = (yyvsp[(3) - (4)].number);
6398   }
6399      break;
6400  
6401 <  case 491:
6401 >  case 501:
6402  
6403   /* Line 1806 of yacc.c  */
6404 < #line 2681 "ircd_parser.y"
6404 > #line 2630 "conf_parser.y"
6405      {
6406    ConfigFileEntry.ts_warn_delta = (yyvsp[(3) - (4)].number);
6407   }
6408      break;
6409  
6410 <  case 492:
6410 >  case 502:
6411  
6412   /* Line 1806 of yacc.c  */
6413 < #line 2686 "ircd_parser.y"
6413 > #line 2635 "conf_parser.y"
6414      {
6415    if (conf_parser_ctx.pass == 2)
6416      ConfigFileEntry.ts_max_delta = (yyvsp[(3) - (4)].number);
6417   }
6418      break;
6419  
6420 <  case 493:
6420 >  case 503:
6421  
6422   /* Line 1806 of yacc.c  */
6423 < #line 2692 "ircd_parser.y"
6423 > #line 2641 "conf_parser.y"
6424      {
6425    if (((yyvsp[(3) - (4)].number) > 0) && conf_parser_ctx.pass == 1)
6426    {
# Line 6445 | Line 6432 | yyreduce:
6432   }
6433      break;
6434  
6435 <  case 494:
6435 >  case 504:
6436  
6437   /* Line 1806 of yacc.c  */
6438 < #line 2703 "ircd_parser.y"
6438 > #line 2652 "conf_parser.y"
6439      {
6440    ConfigFileEntry.kline_with_reason = yylval.number;
6441   }
6442      break;
6443  
6444 <  case 495:
6444 >  case 505:
6445  
6446   /* Line 1806 of yacc.c  */
6447 < #line 2708 "ircd_parser.y"
6447 > #line 2657 "conf_parser.y"
6448      {
6449    if (conf_parser_ctx.pass == 2)
6450    {
# Line 6467 | Line 6454 | yyreduce:
6454   }
6455      break;
6456  
6457 <  case 496:
6457 >  case 506:
6458  
6459   /* Line 1806 of yacc.c  */
6460 < #line 2717 "ircd_parser.y"
6460 > #line 2666 "conf_parser.y"
6461      {
6462    ConfigFileEntry.invisible_on_connect = yylval.number;
6463   }
6464      break;
6465  
6466 <  case 497:
6466 >  case 507:
6467  
6468   /* Line 1806 of yacc.c  */
6469 < #line 2722 "ircd_parser.y"
6469 > #line 2671 "conf_parser.y"
6470      {
6471    ConfigFileEntry.warn_no_nline = yylval.number;
6472   }
6473      break;
6474  
6475 <  case 498:
6475 >  case 508:
6476  
6477   /* Line 1806 of yacc.c  */
6478 < #line 2727 "ircd_parser.y"
6478 > #line 2676 "conf_parser.y"
6479      {
6480    ConfigFileEntry.stats_e_disabled = yylval.number;
6481   }
6482      break;
6483  
6484 <  case 499:
6484 >  case 509:
6485  
6486   /* Line 1806 of yacc.c  */
6487 < #line 2732 "ircd_parser.y"
6487 > #line 2681 "conf_parser.y"
6488      {
6489    ConfigFileEntry.stats_o_oper_only = yylval.number;
6490   }
6491      break;
6492  
6493 <  case 500:
6493 >  case 510:
6494  
6495   /* Line 1806 of yacc.c  */
6496 < #line 2737 "ircd_parser.y"
6496 > #line 2686 "conf_parser.y"
6497      {
6498    ConfigFileEntry.stats_P_oper_only = yylval.number;
6499   }
6500      break;
6501  
6502 <  case 501:
6502 >  case 511:
6503  
6504   /* Line 1806 of yacc.c  */
6505 < #line 2742 "ircd_parser.y"
6505 > #line 2691 "conf_parser.y"
6506      {
6507    ConfigFileEntry.stats_k_oper_only = 2 * yylval.number;
6508   }
6509      break;
6510  
6511 <  case 502:
6511 >  case 512:
6512  
6513   /* Line 1806 of yacc.c  */
6514 < #line 2745 "ircd_parser.y"
6514 > #line 2694 "conf_parser.y"
6515      {
6516    ConfigFileEntry.stats_k_oper_only = 1;
6517   }
6518      break;
6519  
6520 <  case 503:
6520 >  case 513:
6521  
6522   /* Line 1806 of yacc.c  */
6523 < #line 2750 "ircd_parser.y"
6523 > #line 2699 "conf_parser.y"
6524      {
6525    ConfigFileEntry.stats_i_oper_only = 2 * yylval.number;
6526   }
6527      break;
6528  
6529 <  case 504:
6529 >  case 514:
6530  
6531   /* Line 1806 of yacc.c  */
6532 < #line 2753 "ircd_parser.y"
6532 > #line 2702 "conf_parser.y"
6533      {
6534    ConfigFileEntry.stats_i_oper_only = 1;
6535   }
6536      break;
6537  
6538 <  case 505:
6538 >  case 515:
6539  
6540   /* Line 1806 of yacc.c  */
6541 < #line 2758 "ircd_parser.y"
6541 > #line 2707 "conf_parser.y"
6542      {
6543    ConfigFileEntry.pace_wait = (yyvsp[(3) - (4)].number);
6544   }
6545      break;
6546  
6547 <  case 506:
6547 >  case 516:
6548  
6549   /* Line 1806 of yacc.c  */
6550 < #line 2763 "ircd_parser.y"
6550 > #line 2712 "conf_parser.y"
6551      {
6552    ConfigFileEntry.caller_id_wait = (yyvsp[(3) - (4)].number);
6553   }
6554      break;
6555  
6556 <  case 507:
6556 >  case 517:
6557  
6558   /* Line 1806 of yacc.c  */
6559 < #line 2768 "ircd_parser.y"
6559 > #line 2717 "conf_parser.y"
6560      {
6561    ConfigFileEntry.opers_bypass_callerid = yylval.number;
6562   }
6563      break;
6564  
6565 <  case 508:
6565 >  case 518:
6566  
6567   /* Line 1806 of yacc.c  */
6568 < #line 2773 "ircd_parser.y"
6568 > #line 2722 "conf_parser.y"
6569      {
6570    ConfigFileEntry.pace_wait_simple = (yyvsp[(3) - (4)].number);
6571   }
6572      break;
6573  
6574 <  case 509:
6574 >  case 519:
6575  
6576   /* Line 1806 of yacc.c  */
6577 < #line 2778 "ircd_parser.y"
6577 > #line 2727 "conf_parser.y"
6578      {
6579    ConfigFileEntry.short_motd = yylval.number;
6580   }
6581      break;
6582  
6583 <  case 510:
6583 >  case 520:
6584  
6585   /* Line 1806 of yacc.c  */
6586 < #line 2783 "ircd_parser.y"
6586 > #line 2732 "conf_parser.y"
6587      {
6588    ConfigFileEntry.no_oper_flood = yylval.number;
6589   }
6590      break;
6591  
6592 <  case 511:
6592 >  case 521:
6593  
6594   /* Line 1806 of yacc.c  */
6595 < #line 2788 "ircd_parser.y"
6595 > #line 2737 "conf_parser.y"
6596      {
6597    ConfigFileEntry.true_no_oper_flood = yylval.number;
6598   }
6599      break;
6600  
6601 <  case 512:
6601 >  case 522:
6602  
6603   /* Line 1806 of yacc.c  */
6604 < #line 2793 "ircd_parser.y"
6604 > #line 2742 "conf_parser.y"
6605      {
6606    ConfigFileEntry.oper_pass_resv = yylval.number;
6607   }
6608      break;
6609  
6610 <  case 513:
6610 >  case 523:
6611  
6612   /* Line 1806 of yacc.c  */
6613 < #line 2798 "ircd_parser.y"
6613 > #line 2747 "conf_parser.y"
6614      {
6615    if (conf_parser_ctx.pass == 2)
6616    {
# Line 6635 | Line 6622 | yyreduce:
6622   }
6623      break;
6624  
6625 <  case 514:
6625 >  case 524:
6626  
6627   /* Line 1806 of yacc.c  */
6628 < #line 2809 "ircd_parser.y"
6628 > #line 2758 "conf_parser.y"
6629      {
6630    ConfigFileEntry.dots_in_ident = (yyvsp[(3) - (4)].number);
6631   }
6632      break;
6633  
6634 <  case 515:
6634 >  case 525:
6635  
6636   /* Line 1806 of yacc.c  */
6637 < #line 2814 "ircd_parser.y"
6637 > #line 2763 "conf_parser.y"
6638      {
6639    ConfigFileEntry.max_targets = (yyvsp[(3) - (4)].number);
6640   }
6641      break;
6642  
6643 <  case 516:
6643 >  case 526:
6644  
6645   /* Line 1806 of yacc.c  */
6646 < #line 2819 "ircd_parser.y"
6646 > #line 2768 "conf_parser.y"
6647      {
6648    ConfigFileEntry.use_egd = yylval.number;
6649   }
6650      break;
6651  
6652 <  case 517:
6652 >  case 527:
6653  
6654   /* Line 1806 of yacc.c  */
6655 < #line 2824 "ircd_parser.y"
6655 > #line 2773 "conf_parser.y"
6656      {
6657    if (conf_parser_ctx.pass == 2)
6658    {
# Line 6675 | Line 6662 | yyreduce:
6662   }
6663      break;
6664  
6665 <  case 518:
6665 >  case 528:
6666  
6667   /* Line 1806 of yacc.c  */
6668 < #line 2833 "ircd_parser.y"
6668 > #line 2782 "conf_parser.y"
6669      {
6670    if (conf_parser_ctx.pass == 2 && valid_servname(yylval.string))
6671    {
# Line 6688 | Line 6675 | yyreduce:
6675   }
6676      break;
6677  
6678 <  case 519:
6678 >  case 529:
6679  
6680   /* Line 1806 of yacc.c  */
6681 < #line 2842 "ircd_parser.y"
6681 > #line 2791 "conf_parser.y"
6682      {
6683    ConfigFileEntry.ping_cookie = yylval.number;
6684   }
6685      break;
6686  
6687 <  case 520:
6687 >  case 530:
6688  
6689   /* Line 1806 of yacc.c  */
6690 < #line 2847 "ircd_parser.y"
6690 > #line 2796 "conf_parser.y"
6691      {
6692    ConfigFileEntry.disable_auth = yylval.number;
6693   }
6694      break;
6695  
6696 <  case 521:
6696 >  case 531:
6697  
6698   /* Line 1806 of yacc.c  */
6699 < #line 2852 "ircd_parser.y"
6699 > #line 2801 "conf_parser.y"
6700      {
6701    ConfigFileEntry.throttle_time = yylval.number;
6702   }
6703      break;
6704  
6705 <  case 522:
6705 >  case 532:
6706  
6707   /* Line 1806 of yacc.c  */
6708 < #line 2857 "ircd_parser.y"
6708 > #line 2806 "conf_parser.y"
6709      {
6710    ConfigFileEntry.oper_umodes = 0;
6711   }
6712      break;
6713  
6714 <  case 526:
6714 >  case 536:
6715  
6716   /* Line 1806 of yacc.c  */
6717 < #line 2863 "ircd_parser.y"
6717 > #line 2812 "conf_parser.y"
6718      {
6719    ConfigFileEntry.oper_umodes |= UMODE_BOTS;
6720   }
6721      break;
6722  
6723 <  case 527:
6723 >  case 537:
6724  
6725   /* Line 1806 of yacc.c  */
6726 < #line 2866 "ircd_parser.y"
6726 > #line 2815 "conf_parser.y"
6727      {
6728    ConfigFileEntry.oper_umodes |= UMODE_CCONN;
6729   }
6730      break;
6731  
6732 <  case 528:
6732 >  case 538:
6733  
6734   /* Line 1806 of yacc.c  */
6735 < #line 2869 "ircd_parser.y"
6735 > #line 2818 "conf_parser.y"
6736      {
6737    ConfigFileEntry.oper_umodes |= UMODE_CCONN_FULL;
6738   }
6739      break;
6740  
6741 <  case 529:
6741 >  case 539:
6742  
6743   /* Line 1806 of yacc.c  */
6744 < #line 2872 "ircd_parser.y"
6744 > #line 2821 "conf_parser.y"
6745      {
6746    ConfigFileEntry.oper_umodes |= UMODE_DEAF;
6747   }
6748      break;
6749  
6750 <  case 530:
6750 >  case 540:
6751  
6752   /* Line 1806 of yacc.c  */
6753 < #line 2875 "ircd_parser.y"
6753 > #line 2824 "conf_parser.y"
6754      {
6755    ConfigFileEntry.oper_umodes |= UMODE_DEBUG;
6756   }
6757      break;
6758  
6759 <  case 531:
6759 >  case 541:
6760  
6761   /* Line 1806 of yacc.c  */
6762 < #line 2878 "ircd_parser.y"
6762 > #line 2827 "conf_parser.y"
6763      {
6764    ConfigFileEntry.oper_umodes |= UMODE_FULL;
6765   }
6766      break;
6767  
6768 <  case 532:
6768 >  case 542:
6769  
6770   /* Line 1806 of yacc.c  */
6771 < #line 2881 "ircd_parser.y"
6771 > #line 2830 "conf_parser.y"
6772      {
6773    ConfigFileEntry.oper_umodes |= UMODE_HIDDEN;
6774   }
6775      break;
6776  
6777 <  case 533:
6777 >  case 543:
6778  
6779   /* Line 1806 of yacc.c  */
6780 < #line 2884 "ircd_parser.y"
6780 > #line 2833 "conf_parser.y"
6781      {
6782    ConfigFileEntry.oper_umodes |= UMODE_SKILL;
6783   }
6784      break;
6785  
6786 <  case 534:
6786 >  case 544:
6787  
6788   /* Line 1806 of yacc.c  */
6789 < #line 2887 "ircd_parser.y"
6789 > #line 2836 "conf_parser.y"
6790      {
6791    ConfigFileEntry.oper_umodes |= UMODE_NCHANGE;
6792   }
6793      break;
6794  
6795 <  case 535:
6795 >  case 545:
6796  
6797   /* Line 1806 of yacc.c  */
6798 < #line 2890 "ircd_parser.y"
6798 > #line 2839 "conf_parser.y"
6799      {
6800    ConfigFileEntry.oper_umodes |= UMODE_REJ;
6801   }
6802      break;
6803  
6804 <  case 536:
6804 >  case 546:
6805  
6806   /* Line 1806 of yacc.c  */
6807 < #line 2893 "ircd_parser.y"
6807 > #line 2842 "conf_parser.y"
6808      {
6809    ConfigFileEntry.oper_umodes |= UMODE_UNAUTH;
6810   }
6811      break;
6812  
6813 <  case 537:
6813 >  case 547:
6814  
6815   /* Line 1806 of yacc.c  */
6816 < #line 2896 "ircd_parser.y"
6816 > #line 2845 "conf_parser.y"
6817      {
6818    ConfigFileEntry.oper_umodes |= UMODE_SPY;
6819   }
6820      break;
6821  
6822 <  case 538:
6822 >  case 548:
6823  
6824   /* Line 1806 of yacc.c  */
6825 < #line 2899 "ircd_parser.y"
6825 > #line 2848 "conf_parser.y"
6826      {
6827    ConfigFileEntry.oper_umodes |= UMODE_EXTERNAL;
6828   }
6829      break;
6830  
6831 <  case 539:
6831 >  case 549:
6832  
6833   /* Line 1806 of yacc.c  */
6834 < #line 2902 "ircd_parser.y"
6834 > #line 2851 "conf_parser.y"
6835      {
6836    ConfigFileEntry.oper_umodes |= UMODE_OPERWALL;
6837   }
6838      break;
6839  
6840 <  case 540:
6840 >  case 550:
6841  
6842   /* Line 1806 of yacc.c  */
6843 < #line 2905 "ircd_parser.y"
6843 > #line 2854 "conf_parser.y"
6844      {
6845    ConfigFileEntry.oper_umodes |= UMODE_SERVNOTICE;
6846   }
6847      break;
6848  
6849 <  case 541:
6849 >  case 551:
6850  
6851   /* Line 1806 of yacc.c  */
6852 < #line 2908 "ircd_parser.y"
6852 > #line 2857 "conf_parser.y"
6853      {
6854    ConfigFileEntry.oper_umodes |= UMODE_INVISIBLE;
6855   }
6856      break;
6857  
6858 <  case 542:
6858 >  case 552:
6859  
6860   /* Line 1806 of yacc.c  */
6861 < #line 2911 "ircd_parser.y"
6861 > #line 2860 "conf_parser.y"
6862      {
6863    ConfigFileEntry.oper_umodes |= UMODE_WALLOP;
6864   }
6865      break;
6866  
6867 <  case 543:
6867 >  case 553:
6868  
6869   /* Line 1806 of yacc.c  */
6870 < #line 2914 "ircd_parser.y"
6870 > #line 2863 "conf_parser.y"
6871      {
6872    ConfigFileEntry.oper_umodes |= UMODE_SOFTCALLERID;
6873   }
6874      break;
6875  
6876 <  case 544:
6876 >  case 554:
6877  
6878   /* Line 1806 of yacc.c  */
6879 < #line 2917 "ircd_parser.y"
6879 > #line 2866 "conf_parser.y"
6880      {
6881    ConfigFileEntry.oper_umodes |= UMODE_CALLERID;
6882   }
6883      break;
6884  
6885 <  case 545:
6885 >  case 555:
6886  
6887   /* Line 1806 of yacc.c  */
6888 < #line 2920 "ircd_parser.y"
6888 > #line 2869 "conf_parser.y"
6889      {
6890    ConfigFileEntry.oper_umodes |= UMODE_LOCOPS;
6891   }
6892      break;
6893  
6894 <  case 546:
6894 >  case 556:
6895  
6896   /* Line 1806 of yacc.c  */
6897 < #line 2925 "ircd_parser.y"
6897 > #line 2874 "conf_parser.y"
6898      {
6899    ConfigFileEntry.oper_only_umodes = 0;
6900   }
6901      break;
6902  
6903 <  case 550:
6903 >  case 560:
6904  
6905   /* Line 1806 of yacc.c  */
6906 < #line 2931 "ircd_parser.y"
6906 > #line 2880 "conf_parser.y"
6907      {
6908    ConfigFileEntry.oper_only_umodes |= UMODE_BOTS;
6909   }
6910      break;
6911  
6912 <  case 551:
6912 >  case 561:
6913  
6914   /* Line 1806 of yacc.c  */
6915 < #line 2934 "ircd_parser.y"
6915 > #line 2883 "conf_parser.y"
6916      {
6917    ConfigFileEntry.oper_only_umodes |= UMODE_CCONN;
6918   }
6919      break;
6920  
6921 <  case 552:
6921 >  case 562:
6922  
6923   /* Line 1806 of yacc.c  */
6924 < #line 2937 "ircd_parser.y"
6924 > #line 2886 "conf_parser.y"
6925      {
6926    ConfigFileEntry.oper_only_umodes |= UMODE_CCONN_FULL;
6927   }
6928      break;
6929  
6930 <  case 553:
6930 >  case 563:
6931  
6932   /* Line 1806 of yacc.c  */
6933 < #line 2940 "ircd_parser.y"
6933 > #line 2889 "conf_parser.y"
6934      {
6935    ConfigFileEntry.oper_only_umodes |= UMODE_DEAF;
6936   }
6937      break;
6938  
6939 <  case 554:
6939 >  case 564:
6940  
6941   /* Line 1806 of yacc.c  */
6942 < #line 2943 "ircd_parser.y"
6942 > #line 2892 "conf_parser.y"
6943      {
6944    ConfigFileEntry.oper_only_umodes |= UMODE_DEBUG;
6945   }
6946      break;
6947  
6948 <  case 555:
6948 >  case 565:
6949  
6950   /* Line 1806 of yacc.c  */
6951 < #line 2946 "ircd_parser.y"
6951 > #line 2895 "conf_parser.y"
6952      {
6953    ConfigFileEntry.oper_only_umodes |= UMODE_FULL;
6954   }
6955      break;
6956  
6957 <  case 556:
6957 >  case 566:
6958  
6959   /* Line 1806 of yacc.c  */
6960 < #line 2949 "ircd_parser.y"
6960 > #line 2898 "conf_parser.y"
6961      {
6962    ConfigFileEntry.oper_only_umodes |= UMODE_SKILL;
6963   }
6964      break;
6965  
6966 <  case 557:
6966 >  case 567:
6967  
6968   /* Line 1806 of yacc.c  */
6969 < #line 2952 "ircd_parser.y"
6969 > #line 2901 "conf_parser.y"
6970      {
6971    ConfigFileEntry.oper_only_umodes |= UMODE_HIDDEN;
6972   }
6973      break;
6974  
6975 <  case 558:
6975 >  case 568:
6976  
6977   /* Line 1806 of yacc.c  */
6978 < #line 2955 "ircd_parser.y"
6978 > #line 2904 "conf_parser.y"
6979      {
6980    ConfigFileEntry.oper_only_umodes |= UMODE_NCHANGE;
6981   }
6982      break;
6983  
6984 <  case 559:
6984 >  case 569:
6985  
6986   /* Line 1806 of yacc.c  */
6987 < #line 2958 "ircd_parser.y"
6987 > #line 2907 "conf_parser.y"
6988      {
6989    ConfigFileEntry.oper_only_umodes |= UMODE_REJ;
6990   }
6991      break;
6992  
6993 <  case 560:
6993 >  case 570:
6994  
6995   /* Line 1806 of yacc.c  */
6996 < #line 2961 "ircd_parser.y"
6996 > #line 2910 "conf_parser.y"
6997      {
6998    ConfigFileEntry.oper_only_umodes |= UMODE_UNAUTH;
6999   }
7000      break;
7001  
7002 <  case 561:
7002 >  case 571:
7003  
7004   /* Line 1806 of yacc.c  */
7005 < #line 2964 "ircd_parser.y"
7005 > #line 2913 "conf_parser.y"
7006      {
7007    ConfigFileEntry.oper_only_umodes |= UMODE_SPY;
7008   }
7009      break;
7010  
7011 <  case 562:
7011 >  case 572:
7012  
7013   /* Line 1806 of yacc.c  */
7014 < #line 2967 "ircd_parser.y"
7014 > #line 2916 "conf_parser.y"
7015      {
7016    ConfigFileEntry.oper_only_umodes |= UMODE_EXTERNAL;
7017   }
7018      break;
7019  
7020 <  case 563:
7020 >  case 573:
7021  
7022   /* Line 1806 of yacc.c  */
7023 < #line 2970 "ircd_parser.y"
7023 > #line 2919 "conf_parser.y"
7024      {
7025    ConfigFileEntry.oper_only_umodes |= UMODE_OPERWALL;
7026   }
7027      break;
7028  
7029 <  case 564:
7029 >  case 574:
7030  
7031   /* Line 1806 of yacc.c  */
7032 < #line 2973 "ircd_parser.y"
7032 > #line 2922 "conf_parser.y"
7033      {
7034    ConfigFileEntry.oper_only_umodes |= UMODE_SERVNOTICE;
7035   }
7036      break;
7037  
7038 <  case 565:
7038 >  case 575:
7039  
7040   /* Line 1806 of yacc.c  */
7041 < #line 2976 "ircd_parser.y"
7041 > #line 2925 "conf_parser.y"
7042      {
7043    ConfigFileEntry.oper_only_umodes |= UMODE_INVISIBLE;
7044   }
7045      break;
7046  
7047 <  case 566:
7047 >  case 576:
7048  
7049   /* Line 1806 of yacc.c  */
7050 < #line 2979 "ircd_parser.y"
7050 > #line 2928 "conf_parser.y"
7051      {
7052    ConfigFileEntry.oper_only_umodes |= UMODE_WALLOP;
7053   }
7054      break;
7055  
7056 <  case 567:
7056 >  case 577:
7057  
7058   /* Line 1806 of yacc.c  */
7059 < #line 2982 "ircd_parser.y"
7059 > #line 2931 "conf_parser.y"
7060      {
7061    ConfigFileEntry.oper_only_umodes |= UMODE_SOFTCALLERID;
7062   }
7063      break;
7064  
7065 <  case 568:
7065 >  case 578:
7066  
7067   /* Line 1806 of yacc.c  */
7068 < #line 2985 "ircd_parser.y"
7068 > #line 2934 "conf_parser.y"
7069      {
7070    ConfigFileEntry.oper_only_umodes |= UMODE_CALLERID;
7071   }
7072      break;
7073  
7074 <  case 569:
7074 >  case 579:
7075  
7076   /* Line 1806 of yacc.c  */
7077 < #line 2988 "ircd_parser.y"
7077 > #line 2937 "conf_parser.y"
7078      {
7079    ConfigFileEntry.oper_only_umodes |= UMODE_LOCOPS;
7080   }
7081      break;
7082  
7083 <  case 570:
7083 >  case 580:
7084  
7085   /* Line 1806 of yacc.c  */
7086 < #line 2993 "ircd_parser.y"
7086 > #line 2942 "conf_parser.y"
7087      {
7088    ConfigFileEntry.min_nonwildcard = (yyvsp[(3) - (4)].number);
7089   }
7090      break;
7091  
7092 <  case 571:
7092 >  case 581:
7093  
7094   /* Line 1806 of yacc.c  */
7095 < #line 2998 "ircd_parser.y"
7095 > #line 2947 "conf_parser.y"
7096      {
7097    ConfigFileEntry.min_nonwildcard_simple = (yyvsp[(3) - (4)].number);
7098   }
7099      break;
7100  
7101 <  case 572:
7101 >  case 582:
7102  
7103   /* Line 1806 of yacc.c  */
7104 < #line 3003 "ircd_parser.y"
7104 > #line 2952 "conf_parser.y"
7105      {
7106    ConfigFileEntry.default_floodcount = (yyvsp[(3) - (4)].number);
7107   }
7108      break;
7109  
7110 <  case 573:
7110 >  case 583:
7111  
7112   /* Line 1806 of yacc.c  */
7113 < #line 3008 "ircd_parser.y"
7113 > #line 2957 "conf_parser.y"
7114      {
7115    ConfigFileEntry.client_flood = (yyvsp[(3) - (4)].number);
7116   }
7117      break;
7118  
7119 <  case 574:
7119 >  case 584:
7120  
7121   /* Line 1806 of yacc.c  */
7122 < #line 3017 "ircd_parser.y"
7122 > #line 2966 "conf_parser.y"
7123      {
7124    if (conf_parser_ctx.pass == 2)
7125    {
# Line 7142 | Line 7129 | yyreduce:
7129   }
7130      break;
7131  
7132 <  case 575:
7132 >  case 585:
7133  
7134   /* Line 1806 of yacc.c  */
7135 < #line 3024 "ircd_parser.y"
7135 > #line 2973 "conf_parser.y"
7136      {
7137    if (conf_parser_ctx.pass == 2)
7138    {
# Line 7163 | Line 7150 | yyreduce:
7150   }
7151      break;
7152  
7153 <  case 585:
7153 >  case 595:
7154  
7155   /* Line 1806 of yacc.c  */
7156 < #line 3050 "ircd_parser.y"
7156 > #line 2999 "conf_parser.y"
7157      {
7158    if (conf_parser_ctx.pass == 2)
7159      ConfigFileEntry.glines = yylval.number;
7160   }
7161      break;
7162  
7163 <  case 586:
7163 >  case 596:
7164  
7165   /* Line 1806 of yacc.c  */
7166 < #line 3056 "ircd_parser.y"
7166 > #line 3005 "conf_parser.y"
7167      {
7168    if (conf_parser_ctx.pass == 2)
7169      ConfigFileEntry.gline_time = (yyvsp[(3) - (4)].number);
7170   }
7171      break;
7172  
7173 <  case 587:
7173 >  case 597:
7174  
7175   /* Line 1806 of yacc.c  */
7176 < #line 3062 "ircd_parser.y"
7176 > #line 3011 "conf_parser.y"
7177      {
7178    if (conf_parser_ctx.pass == 2)
7179      ConfigFileEntry.gline_logging = 0;
7180   }
7181      break;
7182  
7183 <  case 591:
7183 >  case 601:
7184  
7185   /* Line 1806 of yacc.c  */
7186 < #line 3068 "ircd_parser.y"
7186 > #line 3017 "conf_parser.y"
7187      {
7188    if (conf_parser_ctx.pass == 2)
7189      ConfigFileEntry.gline_logging |= GDENY_REJECT;
7190   }
7191      break;
7192  
7193 <  case 592:
7193 >  case 602:
7194  
7195   /* Line 1806 of yacc.c  */
7196 < #line 3072 "ircd_parser.y"
7196 > #line 3021 "conf_parser.y"
7197      {
7198    if (conf_parser_ctx.pass == 2)
7199      ConfigFileEntry.gline_logging |= GDENY_BLOCK;
7200   }
7201      break;
7202  
7203 <  case 593:
7203 >  case 603:
7204  
7205   /* Line 1806 of yacc.c  */
7206 < #line 3078 "ircd_parser.y"
7206 > #line 3027 "conf_parser.y"
7207      {
7208    if (conf_parser_ctx.pass == 2)
7209    {
# Line 7251 | Line 7238 | yyreduce:
7238   }
7239      break;
7240  
7241 <  case 594:
7241 >  case 604:
7242  
7243   /* Line 1806 of yacc.c  */
7244 < #line 3112 "ircd_parser.y"
7244 > #line 3061 "conf_parser.y"
7245      {
7246    if (conf_parser_ctx.pass == 2)  
7247    {
# Line 7264 | Line 7251 | yyreduce:
7251   }
7252      break;
7253  
7254 <  case 595:
7254 >  case 605:
7255  
7256   /* Line 1806 of yacc.c  */
7257 < #line 3121 "ircd_parser.y"
7257 > #line 3070 "conf_parser.y"
7258      {
7259    if (conf_parser_ctx.pass == 2)
7260      yy_aconf->flags = 0;
7261   }
7262      break;
7263  
7264 <  case 596:
7264 >  case 606:
7265  
7266   /* Line 1806 of yacc.c  */
7267 < #line 3125 "ircd_parser.y"
7267 > #line 3074 "conf_parser.y"
7268      {
7269    if (conf_parser_ctx.pass == 2)
7270    {
# Line 7324 | Line 7311 | yyreduce:
7311   }
7312      break;
7313  
7314 <  case 599:
7314 >  case 609:
7315  
7316   /* Line 1806 of yacc.c  */
7317 < #line 3172 "ircd_parser.y"
7317 > #line 3121 "conf_parser.y"
7318      {
7319    if (conf_parser_ctx.pass == 2)
7320      yy_aconf->flags |= GDENY_REJECT;
7321   }
7322      break;
7323  
7324 <  case 600:
7324 >  case 610:
7325  
7326   /* Line 1806 of yacc.c  */
7327 < #line 3176 "ircd_parser.y"
7327 > #line 3125 "conf_parser.y"
7328      {
7329    if (conf_parser_ctx.pass == 2)
7330      yy_aconf->flags |= GDENY_BLOCK;
7331   }
7332      break;
7333  
7334 <  case 623:
7334 >  case 633:
7335  
7336   /* Line 1806 of yacc.c  */
7337 < #line 3200 "ircd_parser.y"
7337 > #line 3149 "conf_parser.y"
7338      {
7339    ConfigChannel.disable_fake_channels = yylval.number;
7340   }
7341      break;
7342  
7343 <  case 624:
7343 >  case 634:
7344  
7345   /* Line 1806 of yacc.c  */
7346 < #line 3205 "ircd_parser.y"
7346 > #line 3154 "conf_parser.y"
7347      {
7348    ConfigChannel.restrict_channels = yylval.number;
7349   }
7350      break;
7351  
7352 <  case 625:
7352 >  case 635:
7353  
7354   /* Line 1806 of yacc.c  */
7355 < #line 3210 "ircd_parser.y"
7355 > #line 3159 "conf_parser.y"
7356      {
7357    ConfigChannel.disable_local_channels = yylval.number;
7358   }
7359      break;
7360  
7361 <  case 626:
7361 >  case 636:
7362  
7363   /* Line 1806 of yacc.c  */
7364 < #line 3215 "ircd_parser.y"
7364 > #line 3164 "conf_parser.y"
7365      {
7366    ConfigChannel.use_except = yylval.number;
7367   }
7368      break;
7369  
7370 <  case 627:
7370 >  case 637:
7371  
7372   /* Line 1806 of yacc.c  */
7373 < #line 3220 "ircd_parser.y"
7373 > #line 3169 "conf_parser.y"
7374      {
7375    ConfigChannel.use_invex = yylval.number;
7376   }
7377      break;
7378  
7379 <  case 628:
7379 >  case 638:
7380  
7381   /* Line 1806 of yacc.c  */
7382 < #line 3225 "ircd_parser.y"
7382 > #line 3174 "conf_parser.y"
7383      {
7384    ConfigChannel.use_knock = yylval.number;
7385   }
7386      break;
7387  
7388 <  case 629:
7388 >  case 639:
7389  
7390   /* Line 1806 of yacc.c  */
7391 < #line 3230 "ircd_parser.y"
7391 > #line 3179 "conf_parser.y"
7392      {
7393    ConfigChannel.knock_delay = (yyvsp[(3) - (4)].number);
7394   }
7395      break;
7396  
7397 <  case 630:
7397 >  case 640:
7398  
7399   /* Line 1806 of yacc.c  */
7400 < #line 3235 "ircd_parser.y"
7400 > #line 3184 "conf_parser.y"
7401      {
7402    ConfigChannel.knock_delay_channel = (yyvsp[(3) - (4)].number);
7403   }
7404      break;
7405  
7406 <  case 631:
7406 >  case 641:
7407  
7408   /* Line 1806 of yacc.c  */
7409 < #line 3240 "ircd_parser.y"
7409 > #line 3189 "conf_parser.y"
7410      {
7411    ConfigChannel.max_chans_per_user = (yyvsp[(3) - (4)].number);
7412   }
7413      break;
7414  
7415 <  case 632:
7415 >  case 642:
7416  
7417   /* Line 1806 of yacc.c  */
7418 < #line 3245 "ircd_parser.y"
7418 > #line 3194 "conf_parser.y"
7419      {
7420    ConfigChannel.quiet_on_ban = yylval.number;
7421   }
7422      break;
7423  
7424 <  case 633:
7424 >  case 643:
7425  
7426   /* Line 1806 of yacc.c  */
7427 < #line 3250 "ircd_parser.y"
7427 > #line 3199 "conf_parser.y"
7428      {
7429    ConfigChannel.max_bans = (yyvsp[(3) - (4)].number);
7430   }
7431      break;
7432  
7433 <  case 634:
7433 >  case 644:
7434  
7435   /* Line 1806 of yacc.c  */
7436 < #line 3255 "ircd_parser.y"
7436 > #line 3204 "conf_parser.y"
7437      {
7438    ConfigChannel.default_split_user_count = (yyvsp[(3) - (4)].number);
7439   }
7440      break;
7441  
7442 <  case 635:
7442 >  case 645:
7443  
7444   /* Line 1806 of yacc.c  */
7445 < #line 3260 "ircd_parser.y"
7445 > #line 3209 "conf_parser.y"
7446      {
7447    ConfigChannel.default_split_server_count = (yyvsp[(3) - (4)].number);
7448   }
7449      break;
7450  
7451 <  case 636:
7451 >  case 646:
7452  
7453   /* Line 1806 of yacc.c  */
7454 < #line 3265 "ircd_parser.y"
7454 > #line 3214 "conf_parser.y"
7455      {
7456    ConfigChannel.no_create_on_split = yylval.number;
7457   }
7458      break;
7459  
7460 <  case 637:
7460 >  case 647:
7461  
7462   /* Line 1806 of yacc.c  */
7463 < #line 3270 "ircd_parser.y"
7463 > #line 3219 "conf_parser.y"
7464      {
7465    ConfigChannel.no_join_on_split = yylval.number;
7466   }
7467      break;
7468  
7469 <  case 638:
7469 >  case 648:
7470  
7471   /* Line 1806 of yacc.c  */
7472 < #line 3275 "ircd_parser.y"
7472 > #line 3224 "conf_parser.y"
7473      {
7474    ConfigChannel.burst_topicwho = yylval.number;
7475   }
7476      break;
7477  
7478 <  case 639:
7478 >  case 649:
7479  
7480   /* Line 1806 of yacc.c  */
7481 < #line 3280 "ircd_parser.y"
7481 > #line 3229 "conf_parser.y"
7482      {
7483    GlobalSetOptions.joinfloodcount = yylval.number;
7484   }
7485      break;
7486  
7487 <  case 640:
7487 >  case 650:
7488  
7489   /* Line 1806 of yacc.c  */
7490 < #line 3285 "ircd_parser.y"
7490 > #line 3234 "conf_parser.y"
7491      {
7492    GlobalSetOptions.joinfloodtime = yylval.number;
7493   }
7494      break;
7495  
7496 <  case 652:
7496 >  case 662:
7497  
7498   /* Line 1806 of yacc.c  */
7499 < #line 3304 "ircd_parser.y"
7499 > #line 3253 "conf_parser.y"
7500      {
7501    if (conf_parser_ctx.pass == 2)
7502      ConfigServerHide.flatten_links = yylval.number;
7503   }
7504      break;
7505  
7506 <  case 653:
7506 >  case 663:
7507  
7508   /* Line 1806 of yacc.c  */
7509 < #line 3310 "ircd_parser.y"
7509 > #line 3259 "conf_parser.y"
7510      {
7511    if (conf_parser_ctx.pass == 2)
7512      ConfigServerHide.hide_servers = yylval.number;
7513   }
7514      break;
7515  
7516 <  case 654:
7516 >  case 664:
7517  
7518   /* Line 1806 of yacc.c  */
7519 < #line 3316 "ircd_parser.y"
7519 > #line 3265 "conf_parser.y"
7520      {
7521    if (conf_parser_ctx.pass == 2)
7522    {
# Line 7539 | Line 7526 | yyreduce:
7526   }
7527      break;
7528  
7529 <  case 655:
7529 >  case 665:
7530  
7531   /* Line 1806 of yacc.c  */
7532 < #line 3325 "ircd_parser.y"
7532 > #line 3274 "conf_parser.y"
7533      {
7534    if (conf_parser_ctx.pass == 2)
7535    {
# Line 7557 | Line 7544 | yyreduce:
7544   }
7545      break;
7546  
7547 <  case 656:
7547 >  case 666:
7548  
7549   /* Line 1806 of yacc.c  */
7550 < #line 3339 "ircd_parser.y"
7550 > #line 3288 "conf_parser.y"
7551      {
7552    if (conf_parser_ctx.pass == 2)
7553      ConfigServerHide.hidden = yylval.number;
7554   }
7555      break;
7556  
7557 <  case 657:
7557 >  case 667:
7558  
7559   /* Line 1806 of yacc.c  */
7560 < #line 3345 "ircd_parser.y"
7560 > #line 3294 "conf_parser.y"
7561      {
7562    if (conf_parser_ctx.pass == 2)
7563      ConfigServerHide.disable_hidden = yylval.number;
7564   }
7565      break;
7566  
7567 <  case 658:
7567 >  case 668:
7568  
7569   /* Line 1806 of yacc.c  */
7570 < #line 3351 "ircd_parser.y"
7570 > #line 3300 "conf_parser.y"
7571      {
7572    if (conf_parser_ctx.pass == 2)
7573      ConfigServerHide.hide_server_ips = yylval.number;
# Line 7590 | Line 7577 | yyreduce:
7577  
7578  
7579   /* Line 1806 of yacc.c  */
7580 < #line 7594 "ircd_parser.c"
7580 > #line 7581 "conf_parser.c"
7581        default: break;
7582      }
7583    /* User semantic actions sometimes alter yychar, and that requires

Diff Legend

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