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

Comparing ircd-hybrid/trunk/src/conf_parser.c (file contents):
Revision 2106 by michael, Thu May 23 19:21:53 2013 UTC vs.
Revision 2229 by michael, Thu Jun 13 20:10:27 2013 UTC

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

Diff Legend

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