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

Comparing:
ircd-hybrid-7.3/src/ircd_parser.c (file contents), Revision 1103 by michael, Wed Aug 18 22:18:47 2010 UTC vs.
ircd-hybrid-8/src/ircd_parser.c (file contents), Revision 1302 by michael, Wed Mar 21 17:48:54 2012 UTC

# Line 1 | Line 1
1 < /* A Bison parser, made by GNU Bison 2.4.3.  */
1 > /* A Bison parser, made by GNU Bison 2.5.  */
2  
3 < /* Skeleton implementation for Bison's Yacc-like parsers in C
3 > /* Bison implementation for Yacc-like parsers in C
4    
5 <      Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
6 <   2009, 2010 Free Software Foundation, Inc.
5 >      Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc.
6    
7     This program is free software: you can redistribute it and/or modify
8     it under the terms of the GNU General Public License as published by
# Line 45 | Line 44
44   #define YYBISON 1
45  
46   /* Bison version.  */
47 < #define YYBISON_VERSION "2.4.3"
47 > #define YYBISON_VERSION "2.5"
48  
49   /* Skeleton name.  */
50   #define YYSKELETON_NAME "yacc.c"
# Line 66 | Line 65
65  
66   /* Copy the first part of user declarations.  */
67  
68 < /* Line 189 of yacc.c  */
68 > /* Line 268 of yacc.c  */
69   #line 25 "ircd_parser.y"
70  
71  
# Line 83 | Line 82
82   #include "s_log.h"
83   #include "client.h"     /* for UMODE_ALL only */
84   #include "irc_string.h"
86 #include "irc_getaddrinfo.h"
85   #include "sprintf_irc.h"
86   #include "memory.h"
87   #include "modules.h"
# Line 117 | Line 115 | static char userbuf[IRCD_BUFSIZE];
115   static char hostbuf[IRCD_BUFSIZE];
116   static char reasonbuf[REASONLEN + 1];
117   static char gecos_name[REALLEN * 4];
118 <
118 > static char lfile[IRCD_BUFSIZE];
119 > static unsigned int ltype = 0;
120 > static unsigned int lsize = 0;
121   static char *resv_reason = NULL;
122   static char *listener_address = NULL;
123 static int not_atom = 0;
123  
124   struct CollectItem
125   {
# Line 175 | Line 174 | unhook_hub_leaf_confs(void)
174  
175  
176  
177 < /* Line 189 of yacc.c  */
178 < #line 180 "ircd_parser.c"
177 > /* Line 268 of yacc.c  */
178 > #line 179 "ircd_parser.c"
179  
180   /* Enabling traces.  */
181   #ifndef YYDEBUG
# Line 221 | Line 220 | unhook_hub_leaf_confs(void)
220       TBYTES = 273,
221       CALLER_ID_WAIT = 274,
222       CAN_FLOOD = 275,
223 <     CAN_IDLE = 276,
224 <     CHANNEL = 277,
225 <     CIDR_BITLEN_IPV4 = 278,
226 <     CIDR_BITLEN_IPV6 = 279,
227 <     CIPHER_PREFERENCE = 280,
228 <     CLASS = 281,
229 <     COMPRESSED = 282,
230 <     COMPRESSION_LEVEL = 283,
231 <     CONNECT = 284,
232 <     CONNECTFREQ = 285,
233 <     CRYPTLINK = 286,
234 <     DEFAULT_CIPHER_PREFERENCE = 287,
235 <     DEFAULT_FLOODCOUNT = 288,
236 <     DEFAULT_SPLIT_SERVER_COUNT = 289,
237 <     DEFAULT_SPLIT_USER_COUNT = 290,
238 <     DENY = 291,
239 <     DESCRIPTION = 292,
240 <     DIE = 293,
241 <     DISABLE_AUTH = 294,
242 <     DISABLE_FAKE_CHANNELS = 295,
243 <     DISABLE_HIDDEN = 296,
244 <     DISABLE_LOCAL_CHANNELS = 297,
245 <     DISABLE_REMOTE_COMMANDS = 298,
246 <     DOTS_IN_IDENT = 299,
247 <     DURATION = 300,
248 <     EGDPOOL_PATH = 301,
249 <     EMAIL = 302,
250 <     ENABLE = 303,
251 <     ENCRYPTED = 304,
252 <     EXCEED_LIMIT = 305,
253 <     EXEMPT = 306,
254 <     FAILED_OPER_NOTICE = 307,
255 <     FAKENAME = 308,
256 <     IRCD_FLAGS = 309,
257 <     FLATTEN_LINKS = 310,
258 <     FFAILED_OPERLOG = 311,
259 <     FKILLLOG = 312,
260 <     FKLINELOG = 313,
261 <     FGLINELOG = 314,
262 <     FIOERRLOG = 315,
263 <     FOPERLOG = 316,
264 <     FOPERSPYLOG = 317,
265 <     FUSERLOG = 318,
266 <     GECOS = 319,
267 <     GENERAL = 320,
268 <     GLINE = 321,
269 <     GLINES = 322,
270 <     GLINE_EXEMPT = 323,
271 <     GLINE_LOG = 324,
272 <     GLINE_TIME = 325,
273 <     GLINE_MIN_CIDR = 326,
274 <     GLINE_MIN_CIDR6 = 327,
275 <     GLOBAL_KILL = 328,
276 <     IRCD_AUTH = 329,
277 <     NEED_IDENT = 330,
278 <     HAVENT_READ_CONF = 331,
279 <     HIDDEN = 332,
280 <     HIDDEN_ADMIN = 333,
281 <     HIDDEN_NAME = 334,
282 <     HIDDEN_OPER = 335,
283 <     HIDE_SERVER_IPS = 336,
284 <     HIDE_SERVERS = 337,
285 <     HIDE_SPOOF_IPS = 338,
286 <     HOST = 339,
287 <     HUB = 340,
288 <     HUB_MASK = 341,
289 <     IDLETIME = 342,
290 <     IGNORE_BOGUS_TS = 343,
291 <     INVISIBLE_ON_CONNECT = 344,
292 <     IP = 345,
293 <     KILL = 346,
294 <     KILL_CHASE_TIME_LIMIT = 347,
295 <     KLINE = 348,
296 <     KLINE_EXEMPT = 349,
297 <     KLINE_REASON = 350,
298 <     KLINE_WITH_REASON = 351,
299 <     KNOCK_DELAY = 352,
300 <     KNOCK_DELAY_CHANNEL = 353,
301 <     LEAF_MASK = 354,
302 <     LINKS_DELAY = 355,
303 <     LISTEN = 356,
304 <     T_LOG = 357,
305 <     LOGGING = 358,
306 <     LOG_LEVEL = 359,
307 <     MAX_ACCEPT = 360,
308 <     MAX_BANS = 361,
309 <     MAX_CHANS_PER_USER = 362,
310 <     MAX_GLOBAL = 363,
311 <     MAX_IDENT = 364,
312 <     MAX_LOCAL = 365,
313 <     MAX_NICK_CHANGES = 366,
314 <     MAX_NICK_TIME = 367,
315 <     MAX_NUMBER = 368,
316 <     MAX_TARGETS = 369,
317 <     MAX_WATCH = 370,
318 <     MESSAGE_LOCALE = 371,
319 <     MIN_NONWILDCARD = 372,
320 <     MIN_NONWILDCARD_SIMPLE = 373,
321 <     MODULE = 374,
322 <     MODULES = 375,
323 <     NAME = 376,
324 <     NEED_PASSWORD = 377,
325 <     NETWORK_DESC = 378,
326 <     NETWORK_NAME = 379,
327 <     NICK = 380,
328 <     NICK_CHANGES = 381,
329 <     NO_CREATE_ON_SPLIT = 382,
330 <     NO_JOIN_ON_SPLIT = 383,
331 <     NO_OPER_FLOOD = 384,
332 <     NO_TILDE = 385,
333 <     NOT = 386,
334 <     NUMBER = 387,
335 <     NUMBER_PER_IDENT = 388,
336 <     NUMBER_PER_CIDR = 389,
337 <     NUMBER_PER_IP = 390,
338 <     NUMBER_PER_IP_GLOBAL = 391,
339 <     OPERATOR = 392,
340 <     OPERS_BYPASS_CALLERID = 393,
341 <     OPER_LOG = 394,
342 <     OPER_ONLY_UMODES = 395,
343 <     OPER_PASS_RESV = 396,
344 <     OPER_SPY_T = 397,
345 <     OPER_UMODES = 398,
346 <     JOIN_FLOOD_COUNT = 399,
347 <     JOIN_FLOOD_TIME = 400,
348 <     PACE_WAIT = 401,
349 <     PACE_WAIT_SIMPLE = 402,
350 <     PASSWORD = 403,
351 <     PATH = 404,
352 <     PING_COOKIE = 405,
353 <     PING_TIME = 406,
354 <     PING_WARNING = 407,
355 <     PORT = 408,
356 <     QSTRING = 409,
357 <     QUIET_ON_BAN = 410,
358 <     REASON = 411,
359 <     REDIRPORT = 412,
360 <     REDIRSERV = 413,
361 <     REGEX_T = 414,
362 <     REHASH = 415,
363 <     TREJECT_HOLD_TIME = 416,
364 <     REMOTE = 417,
365 <     REMOTEBAN = 418,
366 <     RESTRICT_CHANNELS = 419,
367 <     RESTRICTED = 420,
368 <     RSA_PRIVATE_KEY_FILE = 421,
369 <     RSA_PUBLIC_KEY_FILE = 422,
370 <     SSL_CERTIFICATE_FILE = 423,
371 <     T_SSL_CONNECTION_METHOD = 424,
372 <     T_SSLV3 = 425,
373 <     T_TLSV1 = 426,
374 <     RESV = 427,
375 <     RESV_EXEMPT = 428,
376 <     SECONDS = 429,
377 <     MINUTES = 430,
378 <     HOURS = 431,
379 <     DAYS = 432,
380 <     WEEKS = 433,
381 <     SENDQ = 434,
382 <     SEND_PASSWORD = 435,
383 <     SERVERHIDE = 436,
384 <     SERVERINFO = 437,
385 <     SERVLINK_PATH = 438,
386 <     IRCD_SID = 439,
387 <     TKLINE_EXPIRE_NOTICES = 440,
388 <     T_SHARED = 441,
389 <     T_CLUSTER = 442,
390 <     TYPE = 443,
391 <     SHORT_MOTD = 444,
392 <     SILENT = 445,
393 <     SPOOF = 446,
394 <     SPOOF_NOTICE = 447,
395 <     STATS_E_DISABLED = 448,
396 <     STATS_I_OPER_ONLY = 449,
397 <     STATS_K_OPER_ONLY = 450,
398 <     STATS_O_OPER_ONLY = 451,
399 <     STATS_P_OPER_ONLY = 452,
400 <     TBOOL = 453,
401 <     TMASKED = 454,
402 <     T_REJECT = 455,
403 <     TS_MAX_DELTA = 456,
404 <     TS_WARN_DELTA = 457,
405 <     TWODOTS = 458,
406 <     T_ALL = 459,
407 <     T_BOTS = 460,
408 <     T_SOFTCALLERID = 461,
409 <     T_CALLERID = 462,
410 <     T_CCONN = 463,
411 <     T_CCONN_FULL = 464,
412 <     T_CLIENT_FLOOD = 465,
413 <     T_DEAF = 466,
414 <     T_DEBUG = 467,
415 <     T_DRONE = 468,
416 <     T_EXTERNAL = 469,
417 <     T_FULL = 470,
418 <     T_INVISIBLE = 471,
419 <     T_IPV4 = 472,
420 <     T_IPV6 = 473,
421 <     T_LOCOPS = 474,
422 <     T_LOGPATH = 475,
423 <     T_L_CRIT = 476,
424 <     T_L_DEBUG = 477,
425 <     T_L_ERROR = 478,
426 <     T_L_INFO = 479,
427 <     T_L_NOTICE = 480,
428 <     T_L_TRACE = 481,
429 <     T_L_WARN = 482,
430 <     T_MAX_CLIENTS = 483,
431 <     T_NCHANGE = 484,
432 <     T_OPERWALL = 485,
433 <     T_REJ = 486,
434 <     T_SERVER = 487,
435 <     T_SERVNOTICE = 488,
436 <     T_SKILL = 489,
437 <     T_SPY = 490,
438 <     T_SSL = 491,
439 <     T_UMODES = 492,
440 <     T_UNAUTH = 493,
442 <     T_UNRESV = 494,
443 <     T_UNXLINE = 495,
444 <     T_WALLOP = 496,
445 <     THROTTLE_TIME = 497,
446 <     TOPICBURST = 498,
447 <     TRUE_NO_OPER_FLOOD = 499,
448 <     TKLINE = 500,
449 <     TXLINE = 501,
450 <     TRESV = 502,
451 <     UNKLINE = 503,
452 <     USER = 504,
453 <     USE_EGD = 505,
454 <     USE_EXCEPT = 506,
455 <     USE_INVEX = 507,
456 <     USE_KNOCK = 508,
457 <     USE_LOGGING = 509,
458 <     USE_WHOIS_ACTUALLY = 510,
459 <     VHOST = 511,
460 <     VHOST6 = 512,
461 <     XLINE = 513,
462 <     WARN = 514,
463 <     WARN_NO_NLINE = 515
223 >     CHANNEL = 276,
224 >     CIDR_BITLEN_IPV4 = 277,
225 >     CIDR_BITLEN_IPV6 = 278,
226 >     CLASS = 279,
227 >     CONNECT = 280,
228 >     CONNECTFREQ = 281,
229 >     DEFAULT_FLOODCOUNT = 282,
230 >     DEFAULT_SPLIT_SERVER_COUNT = 283,
231 >     DEFAULT_SPLIT_USER_COUNT = 284,
232 >     DENY = 285,
233 >     DESCRIPTION = 286,
234 >     DIE = 287,
235 >     DISABLE_AUTH = 288,
236 >     DISABLE_FAKE_CHANNELS = 289,
237 >     DISABLE_HIDDEN = 290,
238 >     DISABLE_LOCAL_CHANNELS = 291,
239 >     DISABLE_REMOTE_COMMANDS = 292,
240 >     DOTS_IN_IDENT = 293,
241 >     DURATION = 294,
242 >     EGDPOOL_PATH = 295,
243 >     EMAIL = 296,
244 >     ENABLE = 297,
245 >     ENCRYPTED = 298,
246 >     EXCEED_LIMIT = 299,
247 >     EXEMPT = 300,
248 >     FAILED_OPER_NOTICE = 301,
249 >     IRCD_FLAGS = 302,
250 >     FLATTEN_LINKS = 303,
251 >     GECOS = 304,
252 >     GENERAL = 305,
253 >     GLINE = 306,
254 >     GLINES = 307,
255 >     GLINE_EXEMPT = 308,
256 >     GLINE_TIME = 309,
257 >     GLINE_MIN_CIDR = 310,
258 >     GLINE_MIN_CIDR6 = 311,
259 >     GLOBAL_KILL = 312,
260 >     IRCD_AUTH = 313,
261 >     NEED_IDENT = 314,
262 >     HAVENT_READ_CONF = 315,
263 >     HIDDEN = 316,
264 >     HIDDEN_NAME = 317,
265 >     HIDE_SERVER_IPS = 318,
266 >     HIDE_SERVERS = 319,
267 >     HIDE_SPOOF_IPS = 320,
268 >     HOST = 321,
269 >     HUB = 322,
270 >     HUB_MASK = 323,
271 >     IGNORE_BOGUS_TS = 324,
272 >     INVISIBLE_ON_CONNECT = 325,
273 >     IP = 326,
274 >     KILL = 327,
275 >     KILL_CHASE_TIME_LIMIT = 328,
276 >     KLINE = 329,
277 >     KLINE_EXEMPT = 330,
278 >     KLINE_REASON = 331,
279 >     KLINE_WITH_REASON = 332,
280 >     KNOCK_DELAY = 333,
281 >     KNOCK_DELAY_CHANNEL = 334,
282 >     LEAF_MASK = 335,
283 >     LINKS_DELAY = 336,
284 >     LISTEN = 337,
285 >     T_LOG = 338,
286 >     MAX_ACCEPT = 339,
287 >     MAX_BANS = 340,
288 >     MAX_CHANS_PER_USER = 341,
289 >     MAX_GLOBAL = 342,
290 >     MAX_IDENT = 343,
291 >     MAX_LOCAL = 344,
292 >     MAX_NICK_CHANGES = 345,
293 >     MAX_NICK_TIME = 346,
294 >     MAX_NUMBER = 347,
295 >     MAX_TARGETS = 348,
296 >     MAX_WATCH = 349,
297 >     MESSAGE_LOCALE = 350,
298 >     MIN_NONWILDCARD = 351,
299 >     MIN_NONWILDCARD_SIMPLE = 352,
300 >     MODULE = 353,
301 >     MODULES = 354,
302 >     NAME = 355,
303 >     NEED_PASSWORD = 356,
304 >     NETWORK_DESC = 357,
305 >     NETWORK_NAME = 358,
306 >     NICK = 359,
307 >     NICK_CHANGES = 360,
308 >     NO_CREATE_ON_SPLIT = 361,
309 >     NO_JOIN_ON_SPLIT = 362,
310 >     NO_OPER_FLOOD = 363,
311 >     NO_TILDE = 364,
312 >     NUMBER = 365,
313 >     NUMBER_PER_IDENT = 366,
314 >     NUMBER_PER_CIDR = 367,
315 >     NUMBER_PER_IP = 368,
316 >     NUMBER_PER_IP_GLOBAL = 369,
317 >     OPERATOR = 370,
318 >     OPERS_BYPASS_CALLERID = 371,
319 >     OPER_ONLY_UMODES = 372,
320 >     OPER_PASS_RESV = 373,
321 >     OPER_SPY_T = 374,
322 >     OPER_UMODES = 375,
323 >     JOIN_FLOOD_COUNT = 376,
324 >     JOIN_FLOOD_TIME = 377,
325 >     PACE_WAIT = 378,
326 >     PACE_WAIT_SIMPLE = 379,
327 >     PASSWORD = 380,
328 >     PATH = 381,
329 >     PING_COOKIE = 382,
330 >     PING_TIME = 383,
331 >     PING_WARNING = 384,
332 >     PORT = 385,
333 >     QSTRING = 386,
334 >     QUIET_ON_BAN = 387,
335 >     REASON = 388,
336 >     REDIRPORT = 389,
337 >     REDIRSERV = 390,
338 >     REGEX_T = 391,
339 >     REHASH = 392,
340 >     TREJECT_HOLD_TIME = 393,
341 >     REMOTE = 394,
342 >     REMOTEBAN = 395,
343 >     RESTRICT_CHANNELS = 396,
344 >     RESTRICTED = 397,
345 >     RSA_PRIVATE_KEY_FILE = 398,
346 >     RSA_PUBLIC_KEY_FILE = 399,
347 >     SSL_CERTIFICATE_FILE = 400,
348 >     T_SSL_CONNECTION_METHOD = 401,
349 >     T_SSLV3 = 402,
350 >     T_TLSV1 = 403,
351 >     RESV = 404,
352 >     RESV_EXEMPT = 405,
353 >     SECONDS = 406,
354 >     MINUTES = 407,
355 >     HOURS = 408,
356 >     DAYS = 409,
357 >     WEEKS = 410,
358 >     SENDQ = 411,
359 >     SEND_PASSWORD = 412,
360 >     SERVERHIDE = 413,
361 >     SERVERINFO = 414,
362 >     IRCD_SID = 415,
363 >     TKLINE_EXPIRE_NOTICES = 416,
364 >     T_SHARED = 417,
365 >     T_CLUSTER = 418,
366 >     TYPE = 419,
367 >     SHORT_MOTD = 420,
368 >     SILENT = 421,
369 >     SPOOF = 422,
370 >     SPOOF_NOTICE = 423,
371 >     STATS_E_DISABLED = 424,
372 >     STATS_I_OPER_ONLY = 425,
373 >     STATS_K_OPER_ONLY = 426,
374 >     STATS_O_OPER_ONLY = 427,
375 >     STATS_P_OPER_ONLY = 428,
376 >     TBOOL = 429,
377 >     TMASKED = 430,
378 >     T_REJECT = 431,
379 >     TS_MAX_DELTA = 432,
380 >     TS_WARN_DELTA = 433,
381 >     TWODOTS = 434,
382 >     T_ALL = 435,
383 >     T_BOTS = 436,
384 >     T_SOFTCALLERID = 437,
385 >     T_CALLERID = 438,
386 >     T_CCONN = 439,
387 >     T_CCONN_FULL = 440,
388 >     T_CLIENT_FLOOD = 441,
389 >     T_DEAF = 442,
390 >     T_DEBUG = 443,
391 >     T_DLINE = 444,
392 >     T_DRONE = 445,
393 >     T_EXTERNAL = 446,
394 >     T_FULL = 447,
395 >     T_INVISIBLE = 448,
396 >     T_IPV4 = 449,
397 >     T_IPV6 = 450,
398 >     T_LOCOPS = 451,
399 >     T_MAX_CLIENTS = 452,
400 >     T_NCHANGE = 453,
401 >     T_OPERWALL = 454,
402 >     T_REJ = 455,
403 >     T_SERVER = 456,
404 >     T_SERVNOTICE = 457,
405 >     T_SKILL = 458,
406 >     T_SPY = 459,
407 >     T_SSL = 460,
408 >     T_UMODES = 461,
409 >     T_UNAUTH = 462,
410 >     T_UNDLINE = 463,
411 >     T_UNLIMITED = 464,
412 >     T_UNRESV = 465,
413 >     T_UNXLINE = 466,
414 >     T_GLOBOPS = 467,
415 >     T_WALLOP = 468,
416 >     T_RESTART = 469,
417 >     T_SERVICE = 470,
418 >     T_SERVICES_NAME = 471,
419 >     T_TIMESTAMP = 472,
420 >     THROTTLE_TIME = 473,
421 >     TOPICBURST = 474,
422 >     TRUE_NO_OPER_FLOOD = 475,
423 >     TKLINE = 476,
424 >     TXLINE = 477,
425 >     TRESV = 478,
426 >     UNKLINE = 479,
427 >     USER = 480,
428 >     USE_EGD = 481,
429 >     USE_EXCEPT = 482,
430 >     USE_INVEX = 483,
431 >     USE_KNOCK = 484,
432 >     USE_LOGGING = 485,
433 >     USE_WHOIS_ACTUALLY = 486,
434 >     VHOST = 487,
435 >     VHOST6 = 488,
436 >     XLINE = 489,
437 >     WARN = 490,
438 >     WARN_NO_NLINE = 491,
439 >     T_SIZE = 492,
440 >     T_FILE = 493
441     };
442   #endif
443   /* Tokens.  */
# Line 482 | Line 459 | unhook_hub_leaf_confs(void)
459   #define TBYTES 273
460   #define CALLER_ID_WAIT 274
461   #define CAN_FLOOD 275
462 < #define CAN_IDLE 276
463 < #define CHANNEL 277
464 < #define CIDR_BITLEN_IPV4 278
465 < #define CIDR_BITLEN_IPV6 279
466 < #define CIPHER_PREFERENCE 280
467 < #define CLASS 281
468 < #define COMPRESSED 282
469 < #define COMPRESSION_LEVEL 283
470 < #define CONNECT 284
471 < #define CONNECTFREQ 285
472 < #define CRYPTLINK 286
473 < #define DEFAULT_CIPHER_PREFERENCE 287
474 < #define DEFAULT_FLOODCOUNT 288
475 < #define DEFAULT_SPLIT_SERVER_COUNT 289
476 < #define DEFAULT_SPLIT_USER_COUNT 290
477 < #define DENY 291
478 < #define DESCRIPTION 292
479 < #define DIE 293
480 < #define DISABLE_AUTH 294
481 < #define DISABLE_FAKE_CHANNELS 295
482 < #define DISABLE_HIDDEN 296
483 < #define DISABLE_LOCAL_CHANNELS 297
484 < #define DISABLE_REMOTE_COMMANDS 298
485 < #define DOTS_IN_IDENT 299
486 < #define DURATION 300
487 < #define EGDPOOL_PATH 301
488 < #define EMAIL 302
489 < #define ENABLE 303
490 < #define ENCRYPTED 304
491 < #define EXCEED_LIMIT 305
492 < #define EXEMPT 306
493 < #define FAILED_OPER_NOTICE 307
494 < #define FAKENAME 308
495 < #define IRCD_FLAGS 309
496 < #define FLATTEN_LINKS 310
497 < #define FFAILED_OPERLOG 311
498 < #define FKILLLOG 312
499 < #define FKLINELOG 313
500 < #define FGLINELOG 314
501 < #define FIOERRLOG 315
502 < #define FOPERLOG 316
503 < #define FOPERSPYLOG 317
504 < #define FUSERLOG 318
505 < #define GECOS 319
506 < #define GENERAL 320
507 < #define GLINE 321
508 < #define GLINES 322
509 < #define GLINE_EXEMPT 323
510 < #define GLINE_LOG 324
511 < #define GLINE_TIME 325
512 < #define GLINE_MIN_CIDR 326
513 < #define GLINE_MIN_CIDR6 327
514 < #define GLOBAL_KILL 328
515 < #define IRCD_AUTH 329
516 < #define NEED_IDENT 330
517 < #define HAVENT_READ_CONF 331
518 < #define HIDDEN 332
519 < #define HIDDEN_ADMIN 333
520 < #define HIDDEN_NAME 334
521 < #define HIDDEN_OPER 335
522 < #define HIDE_SERVER_IPS 336
523 < #define HIDE_SERVERS 337
524 < #define HIDE_SPOOF_IPS 338
525 < #define HOST 339
526 < #define HUB 340
527 < #define HUB_MASK 341
528 < #define IDLETIME 342
529 < #define IGNORE_BOGUS_TS 343
530 < #define INVISIBLE_ON_CONNECT 344
531 < #define IP 345
532 < #define KILL 346
533 < #define KILL_CHASE_TIME_LIMIT 347
534 < #define KLINE 348
535 < #define KLINE_EXEMPT 349
536 < #define KLINE_REASON 350
537 < #define KLINE_WITH_REASON 351
538 < #define KNOCK_DELAY 352
539 < #define KNOCK_DELAY_CHANNEL 353
540 < #define LEAF_MASK 354
541 < #define LINKS_DELAY 355
542 < #define LISTEN 356
543 < #define T_LOG 357
544 < #define LOGGING 358
545 < #define LOG_LEVEL 359
546 < #define MAX_ACCEPT 360
547 < #define MAX_BANS 361
548 < #define MAX_CHANS_PER_USER 362
549 < #define MAX_GLOBAL 363
550 < #define MAX_IDENT 364
551 < #define MAX_LOCAL 365
552 < #define MAX_NICK_CHANGES 366
553 < #define MAX_NICK_TIME 367
554 < #define MAX_NUMBER 368
555 < #define MAX_TARGETS 369
556 < #define MAX_WATCH 370
557 < #define MESSAGE_LOCALE 371
558 < #define MIN_NONWILDCARD 372
559 < #define MIN_NONWILDCARD_SIMPLE 373
560 < #define MODULE 374
561 < #define MODULES 375
562 < #define NAME 376
563 < #define NEED_PASSWORD 377
564 < #define NETWORK_DESC 378
565 < #define NETWORK_NAME 379
566 < #define NICK 380
567 < #define NICK_CHANGES 381
568 < #define NO_CREATE_ON_SPLIT 382
569 < #define NO_JOIN_ON_SPLIT 383
570 < #define NO_OPER_FLOOD 384
571 < #define NO_TILDE 385
572 < #define NOT 386
573 < #define NUMBER 387
574 < #define NUMBER_PER_IDENT 388
575 < #define NUMBER_PER_CIDR 389
576 < #define NUMBER_PER_IP 390
577 < #define NUMBER_PER_IP_GLOBAL 391
578 < #define OPERATOR 392
579 < #define OPERS_BYPASS_CALLERID 393
580 < #define OPER_LOG 394
581 < #define OPER_ONLY_UMODES 395
582 < #define OPER_PASS_RESV 396
583 < #define OPER_SPY_T 397
584 < #define OPER_UMODES 398
585 < #define JOIN_FLOOD_COUNT 399
586 < #define JOIN_FLOOD_TIME 400
587 < #define PACE_WAIT 401
588 < #define PACE_WAIT_SIMPLE 402
589 < #define PASSWORD 403
590 < #define PATH 404
591 < #define PING_COOKIE 405
592 < #define PING_TIME 406
593 < #define PING_WARNING 407
594 < #define PORT 408
595 < #define QSTRING 409
596 < #define QUIET_ON_BAN 410
597 < #define REASON 411
598 < #define REDIRPORT 412
599 < #define REDIRSERV 413
600 < #define REGEX_T 414
601 < #define REHASH 415
602 < #define TREJECT_HOLD_TIME 416
603 < #define REMOTE 417
604 < #define REMOTEBAN 418
605 < #define RESTRICT_CHANNELS 419
606 < #define RESTRICTED 420
607 < #define RSA_PRIVATE_KEY_FILE 421
608 < #define RSA_PUBLIC_KEY_FILE 422
609 < #define SSL_CERTIFICATE_FILE 423
610 < #define T_SSL_CONNECTION_METHOD 424
611 < #define T_SSLV3 425
612 < #define T_TLSV1 426
613 < #define RESV 427
614 < #define RESV_EXEMPT 428
615 < #define SECONDS 429
616 < #define MINUTES 430
617 < #define HOURS 431
618 < #define DAYS 432
619 < #define WEEKS 433
620 < #define SENDQ 434
621 < #define SEND_PASSWORD 435
622 < #define SERVERHIDE 436
623 < #define SERVERINFO 437
624 < #define SERVLINK_PATH 438
625 < #define IRCD_SID 439
626 < #define TKLINE_EXPIRE_NOTICES 440
627 < #define T_SHARED 441
628 < #define T_CLUSTER 442
629 < #define TYPE 443
630 < #define SHORT_MOTD 444
631 < #define SILENT 445
632 < #define SPOOF 446
633 < #define SPOOF_NOTICE 447
634 < #define STATS_E_DISABLED 448
635 < #define STATS_I_OPER_ONLY 449
636 < #define STATS_K_OPER_ONLY 450
637 < #define STATS_O_OPER_ONLY 451
638 < #define STATS_P_OPER_ONLY 452
639 < #define TBOOL 453
640 < #define TMASKED 454
641 < #define T_REJECT 455
642 < #define TS_MAX_DELTA 456
643 < #define TS_WARN_DELTA 457
644 < #define TWODOTS 458
645 < #define T_ALL 459
646 < #define T_BOTS 460
647 < #define T_SOFTCALLERID 461
648 < #define T_CALLERID 462
649 < #define T_CCONN 463
650 < #define T_CCONN_FULL 464
651 < #define T_CLIENT_FLOOD 465
652 < #define T_DEAF 466
653 < #define T_DEBUG 467
654 < #define T_DRONE 468
655 < #define T_EXTERNAL 469
656 < #define T_FULL 470
657 < #define T_INVISIBLE 471
658 < #define T_IPV4 472
659 < #define T_IPV6 473
660 < #define T_LOCOPS 474
661 < #define T_LOGPATH 475
662 < #define T_L_CRIT 476
663 < #define T_L_DEBUG 477
664 < #define T_L_ERROR 478
665 < #define T_L_INFO 479
666 < #define T_L_NOTICE 480
667 < #define T_L_TRACE 481
668 < #define T_L_WARN 482
669 < #define T_MAX_CLIENTS 483
670 < #define T_NCHANGE 484
671 < #define T_OPERWALL 485
672 < #define T_REJ 486
673 < #define T_SERVER 487
674 < #define T_SERVNOTICE 488
675 < #define T_SKILL 489
676 < #define T_SPY 490
677 < #define T_SSL 491
678 < #define T_UMODES 492
679 < #define T_UNAUTH 493
703 < #define T_UNRESV 494
704 < #define T_UNXLINE 495
705 < #define T_WALLOP 496
706 < #define THROTTLE_TIME 497
707 < #define TOPICBURST 498
708 < #define TRUE_NO_OPER_FLOOD 499
709 < #define TKLINE 500
710 < #define TXLINE 501
711 < #define TRESV 502
712 < #define UNKLINE 503
713 < #define USER 504
714 < #define USE_EGD 505
715 < #define USE_EXCEPT 506
716 < #define USE_INVEX 507
717 < #define USE_KNOCK 508
718 < #define USE_LOGGING 509
719 < #define USE_WHOIS_ACTUALLY 510
720 < #define VHOST 511
721 < #define VHOST6 512
722 < #define XLINE 513
723 < #define WARN 514
724 < #define WARN_NO_NLINE 515
462 > #define CHANNEL 276
463 > #define CIDR_BITLEN_IPV4 277
464 > #define CIDR_BITLEN_IPV6 278
465 > #define CLASS 279
466 > #define CONNECT 280
467 > #define CONNECTFREQ 281
468 > #define DEFAULT_FLOODCOUNT 282
469 > #define DEFAULT_SPLIT_SERVER_COUNT 283
470 > #define DEFAULT_SPLIT_USER_COUNT 284
471 > #define DENY 285
472 > #define DESCRIPTION 286
473 > #define DIE 287
474 > #define DISABLE_AUTH 288
475 > #define DISABLE_FAKE_CHANNELS 289
476 > #define DISABLE_HIDDEN 290
477 > #define DISABLE_LOCAL_CHANNELS 291
478 > #define DISABLE_REMOTE_COMMANDS 292
479 > #define DOTS_IN_IDENT 293
480 > #define DURATION 294
481 > #define EGDPOOL_PATH 295
482 > #define EMAIL 296
483 > #define ENABLE 297
484 > #define ENCRYPTED 298
485 > #define EXCEED_LIMIT 299
486 > #define EXEMPT 300
487 > #define FAILED_OPER_NOTICE 301
488 > #define IRCD_FLAGS 302
489 > #define FLATTEN_LINKS 303
490 > #define GECOS 304
491 > #define GENERAL 305
492 > #define GLINE 306
493 > #define GLINES 307
494 > #define GLINE_EXEMPT 308
495 > #define GLINE_TIME 309
496 > #define GLINE_MIN_CIDR 310
497 > #define GLINE_MIN_CIDR6 311
498 > #define GLOBAL_KILL 312
499 > #define IRCD_AUTH 313
500 > #define NEED_IDENT 314
501 > #define HAVENT_READ_CONF 315
502 > #define HIDDEN 316
503 > #define HIDDEN_NAME 317
504 > #define HIDE_SERVER_IPS 318
505 > #define HIDE_SERVERS 319
506 > #define HIDE_SPOOF_IPS 320
507 > #define HOST 321
508 > #define HUB 322
509 > #define HUB_MASK 323
510 > #define IGNORE_BOGUS_TS 324
511 > #define INVISIBLE_ON_CONNECT 325
512 > #define IP 326
513 > #define KILL 327
514 > #define KILL_CHASE_TIME_LIMIT 328
515 > #define KLINE 329
516 > #define KLINE_EXEMPT 330
517 > #define KLINE_REASON 331
518 > #define KLINE_WITH_REASON 332
519 > #define KNOCK_DELAY 333
520 > #define KNOCK_DELAY_CHANNEL 334
521 > #define LEAF_MASK 335
522 > #define LINKS_DELAY 336
523 > #define LISTEN 337
524 > #define T_LOG 338
525 > #define MAX_ACCEPT 339
526 > #define MAX_BANS 340
527 > #define MAX_CHANS_PER_USER 341
528 > #define MAX_GLOBAL 342
529 > #define MAX_IDENT 343
530 > #define MAX_LOCAL 344
531 > #define MAX_NICK_CHANGES 345
532 > #define MAX_NICK_TIME 346
533 > #define MAX_NUMBER 347
534 > #define MAX_TARGETS 348
535 > #define MAX_WATCH 349
536 > #define MESSAGE_LOCALE 350
537 > #define MIN_NONWILDCARD 351
538 > #define MIN_NONWILDCARD_SIMPLE 352
539 > #define MODULE 353
540 > #define MODULES 354
541 > #define NAME 355
542 > #define NEED_PASSWORD 356
543 > #define NETWORK_DESC 357
544 > #define NETWORK_NAME 358
545 > #define NICK 359
546 > #define NICK_CHANGES 360
547 > #define NO_CREATE_ON_SPLIT 361
548 > #define NO_JOIN_ON_SPLIT 362
549 > #define NO_OPER_FLOOD 363
550 > #define NO_TILDE 364
551 > #define NUMBER 365
552 > #define NUMBER_PER_IDENT 366
553 > #define NUMBER_PER_CIDR 367
554 > #define NUMBER_PER_IP 368
555 > #define NUMBER_PER_IP_GLOBAL 369
556 > #define OPERATOR 370
557 > #define OPERS_BYPASS_CALLERID 371
558 > #define OPER_ONLY_UMODES 372
559 > #define OPER_PASS_RESV 373
560 > #define OPER_SPY_T 374
561 > #define OPER_UMODES 375
562 > #define JOIN_FLOOD_COUNT 376
563 > #define JOIN_FLOOD_TIME 377
564 > #define PACE_WAIT 378
565 > #define PACE_WAIT_SIMPLE 379
566 > #define PASSWORD 380
567 > #define PATH 381
568 > #define PING_COOKIE 382
569 > #define PING_TIME 383
570 > #define PING_WARNING 384
571 > #define PORT 385
572 > #define QSTRING 386
573 > #define QUIET_ON_BAN 387
574 > #define REASON 388
575 > #define REDIRPORT 389
576 > #define REDIRSERV 390
577 > #define REGEX_T 391
578 > #define REHASH 392
579 > #define TREJECT_HOLD_TIME 393
580 > #define REMOTE 394
581 > #define REMOTEBAN 395
582 > #define RESTRICT_CHANNELS 396
583 > #define RESTRICTED 397
584 > #define RSA_PRIVATE_KEY_FILE 398
585 > #define RSA_PUBLIC_KEY_FILE 399
586 > #define SSL_CERTIFICATE_FILE 400
587 > #define T_SSL_CONNECTION_METHOD 401
588 > #define T_SSLV3 402
589 > #define T_TLSV1 403
590 > #define RESV 404
591 > #define RESV_EXEMPT 405
592 > #define SECONDS 406
593 > #define MINUTES 407
594 > #define HOURS 408
595 > #define DAYS 409
596 > #define WEEKS 410
597 > #define SENDQ 411
598 > #define SEND_PASSWORD 412
599 > #define SERVERHIDE 413
600 > #define SERVERINFO 414
601 > #define IRCD_SID 415
602 > #define TKLINE_EXPIRE_NOTICES 416
603 > #define T_SHARED 417
604 > #define T_CLUSTER 418
605 > #define TYPE 419
606 > #define SHORT_MOTD 420
607 > #define SILENT 421
608 > #define SPOOF 422
609 > #define SPOOF_NOTICE 423
610 > #define STATS_E_DISABLED 424
611 > #define STATS_I_OPER_ONLY 425
612 > #define STATS_K_OPER_ONLY 426
613 > #define STATS_O_OPER_ONLY 427
614 > #define STATS_P_OPER_ONLY 428
615 > #define TBOOL 429
616 > #define TMASKED 430
617 > #define T_REJECT 431
618 > #define TS_MAX_DELTA 432
619 > #define TS_WARN_DELTA 433
620 > #define TWODOTS 434
621 > #define T_ALL 435
622 > #define T_BOTS 436
623 > #define T_SOFTCALLERID 437
624 > #define T_CALLERID 438
625 > #define T_CCONN 439
626 > #define T_CCONN_FULL 440
627 > #define T_CLIENT_FLOOD 441
628 > #define T_DEAF 442
629 > #define T_DEBUG 443
630 > #define T_DLINE 444
631 > #define T_DRONE 445
632 > #define T_EXTERNAL 446
633 > #define T_FULL 447
634 > #define T_INVISIBLE 448
635 > #define T_IPV4 449
636 > #define T_IPV6 450
637 > #define T_LOCOPS 451
638 > #define T_MAX_CLIENTS 452
639 > #define T_NCHANGE 453
640 > #define T_OPERWALL 454
641 > #define T_REJ 455
642 > #define T_SERVER 456
643 > #define T_SERVNOTICE 457
644 > #define T_SKILL 458
645 > #define T_SPY 459
646 > #define T_SSL 460
647 > #define T_UMODES 461
648 > #define T_UNAUTH 462
649 > #define T_UNDLINE 463
650 > #define T_UNLIMITED 464
651 > #define T_UNRESV 465
652 > #define T_UNXLINE 466
653 > #define T_GLOBOPS 467
654 > #define T_WALLOP 468
655 > #define T_RESTART 469
656 > #define T_SERVICE 470
657 > #define T_SERVICES_NAME 471
658 > #define T_TIMESTAMP 472
659 > #define THROTTLE_TIME 473
660 > #define TOPICBURST 474
661 > #define TRUE_NO_OPER_FLOOD 475
662 > #define TKLINE 476
663 > #define TXLINE 477
664 > #define TRESV 478
665 > #define UNKLINE 479
666 > #define USER 480
667 > #define USE_EGD 481
668 > #define USE_EXCEPT 482
669 > #define USE_INVEX 483
670 > #define USE_KNOCK 484
671 > #define USE_LOGGING 485
672 > #define USE_WHOIS_ACTUALLY 486
673 > #define VHOST 487
674 > #define VHOST6 488
675 > #define XLINE 489
676 > #define WARN 490
677 > #define WARN_NO_NLINE 491
678 > #define T_SIZE 492
679 > #define T_FILE 493
680  
681  
682  
# Line 730 | Line 685 | unhook_hub_leaf_confs(void)
685   typedef union YYSTYPE
686   {
687  
688 < /* Line 214 of yacc.c  */
688 > /* Line 293 of yacc.c  */
689   #line 132 "ircd_parser.y"
690  
691    int number;
# Line 738 | Line 693 | typedef union YYSTYPE
693  
694  
695  
696 < /* Line 214 of yacc.c  */
697 < #line 743 "ircd_parser.c"
696 > /* Line 293 of yacc.c  */
697 > #line 698 "ircd_parser.c"
698   } YYSTYPE;
699   # define YYSTYPE_IS_TRIVIAL 1
700   # define yystype YYSTYPE /* obsolescent; will be withdrawn */
# Line 750 | Line 705 | typedef union YYSTYPE
705   /* Copy the second part of user declarations.  */
706  
707  
708 < /* Line 264 of yacc.c  */
709 < #line 755 "ircd_parser.c"
708 > /* Line 343 of yacc.c  */
709 > #line 710 "ircd_parser.c"
710  
711   #ifdef short
712   # undef short
# Line 854 | Line 809 | YYID (yyi)
809   #    define alloca _alloca
810   #   else
811   #    define YYSTACK_ALLOC alloca
812 < #    if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
812 > #    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
813       || defined __cplusplus || defined _MSC_VER)
814   #     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
815 < #     ifndef _STDLIB_H
816 < #      define _STDLIB_H 1
815 > #     ifndef EXIT_SUCCESS
816 > #      define EXIT_SUCCESS 0
817   #     endif
818   #    endif
819   #   endif
# Line 881 | Line 836 | YYID (yyi)
836   #  ifndef YYSTACK_ALLOC_MAXIMUM
837   #   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
838   #  endif
839 < #  if (defined __cplusplus && ! defined _STDLIB_H \
839 > #  if (defined __cplusplus && ! defined EXIT_SUCCESS \
840         && ! ((defined YYMALLOC || defined malloc) \
841               && (defined YYFREE || defined free)))
842   #   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
843 < #   ifndef _STDLIB_H
844 < #    define _STDLIB_H 1
843 > #   ifndef EXIT_SUCCESS
844 > #    define EXIT_SUCCESS 0
845   #   endif
846   #  endif
847   #  ifndef YYMALLOC
848   #   define YYMALLOC malloc
849 < #   if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
849 > #   if ! defined malloc && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
850       || defined __cplusplus || defined _MSC_VER)
851   void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
852   #   endif
853   #  endif
854   #  ifndef YYFREE
855   #   define YYFREE free
856 < #   if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
856 > #   if ! defined free && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
857       || defined __cplusplus || defined _MSC_VER)
858   void free (void *); /* INFRINGES ON USER NAME SPACE */
859   #   endif
# Line 927 | Line 882 | union yyalloc
882       ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
883        + YYSTACK_GAP_MAXIMUM)
884  
885 < /* Copy COUNT objects from FROM to TO.  The source and destination do
931 <   not overlap.  */
932 < # ifndef YYCOPY
933 < #  if defined __GNUC__ && 1 < __GNUC__
934 < #   define YYCOPY(To, From, Count) \
935 <      __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
936 < #  else
937 < #   define YYCOPY(To, From, Count)              \
938 <      do                                        \
939 <        {                                       \
940 <          YYSIZE_T yyi;                         \
941 <          for (yyi = 0; yyi < (Count); yyi++)   \
942 <            (To)[yyi] = (From)[yyi];            \
943 <        }                                       \
944 <      while (YYID (0))
945 < #  endif
946 < # endif
885 > # define YYCOPY_NEEDED 1
886  
887   /* Relocate STACK from its old location to the new one.  The
888     local variables YYSIZE and YYSTACKSIZE give the old and new number of
# Line 963 | Line 902 | union yyalloc
902  
903   #endif
904  
905 + #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
906 + /* Copy COUNT objects from FROM to TO.  The source and destination do
907 +   not overlap.  */
908 + # ifndef YYCOPY
909 + #  if defined __GNUC__ && 1 < __GNUC__
910 + #   define YYCOPY(To, From, Count) \
911 +      __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
912 + #  else
913 + #   define YYCOPY(To, From, Count)              \
914 +      do                                        \
915 +        {                                       \
916 +          YYSIZE_T yyi;                         \
917 +          for (yyi = 0; yyi < (Count); yyi++)   \
918 +            (To)[yyi] = (From)[yyi];            \
919 +        }                                       \
920 +      while (YYID (0))
921 + #  endif
922 + # endif
923 + #endif /* !YYCOPY_NEEDED */
924 +
925   /* YYFINAL -- State number of the termination state.  */
926   #define YYFINAL  2
927   /* YYLAST -- Last index in YYTABLE.  */
928 < #define YYLAST   1263
928 > #define YYLAST   1207
929  
930   /* YYNTOKENS -- Number of terminals.  */
931 < #define YYNTOKENS  266
931 > #define YYNTOKENS  244
932   /* YYNNTS -- Number of nonterminals.  */
933 < #define YYNNTS  319
933 > #define YYNNTS  301
934   /* YYNRULES -- Number of rules.  */
935 < #define YYNRULES  689
935 > #define YYNRULES  658
936   /* YYNRULES -- Number of states.  */
937 < #define YYNSTATES  1359
937 > #define YYNSTATES  1291
938  
939   /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
940   #define YYUNDEFTOK  2
941 < #define YYMAXUTOK   515
941 > #define YYMAXUTOK   493
942  
943   #define YYTRANSLATE(YYX)                                                \
944    ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
945  
946   /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */
947 < static const yytype_uint16 yytranslate[] =
947 > static const yytype_uint8 yytranslate[] =
948   {
949         0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
950         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
951         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
952         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
953 <       2,     2,     2,     2,   265,     2,     2,     2,     2,     2,
954 <       2,     2,     2,     2,     2,     2,     2,     2,     2,   261,
955 <       2,   264,     2,     2,     2,     2,     2,     2,     2,     2,
953 >       2,     2,     2,     2,   243,     2,     2,     2,     2,     2,
954 >       2,     2,     2,     2,     2,     2,     2,     2,     2,   239,
955 >       2,   242,     2,     2,     2,     2,     2,     2,     2,     2,
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,     2,     2,     2,     2,     2,     2,
960         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
961 <       2,     2,     2,   263,     2,   262,     2,     2,     2,     2,
961 >       2,     2,     2,   241,     2,   240,     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,
# Line 1036 | Line 995 | static const yytype_uint16 yytranslate[]
995       205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
996       215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
997       225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
998 <     235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
1040 <     245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
1041 <     255,   256,   257,   258,   259,   260
998 >     235,   236,   237,   238
999   };
1000  
1001   #if YYDEBUG
# Line 1048 | Line 1005 | static const yytype_uint16 yyprhs[] =
1005   {
1006         0,     0,     3,     4,     7,     9,    11,    13,    15,    17,
1007        19,    21,    23,    25,    27,    29,    31,    33,    35,    37,
1008 <      39,    41,    43,    45,    47,    50,    53,    54,    56,    59,
1009 <      63,    67,    71,    75,    79,    80,    82,    85,    89,    93,
1010 <      97,   103,   106,   108,   110,   112,   115,   120,   125,   131,
1011 <     134,   136,   138,   140,   142,   144,   146,   148,   150,   152,
1012 <     154,   156,   158,   160,   163,   164,   170,   174,   176,   178,
1013 <     180,   185,   190,   195,   200,   205,   210,   215,   220,   225,
1014 <     230,   235,   241,   244,   246,   248,   250,   252,   255,   260,
1015 <     265,   270,   276,   279,   281,   283,   285,   287,   289,   291,
1016 <     293,   295,   297,   299,   301,   303,   305,   308,   313,   318,
1017 <     323,   328,   333,   338,   343,   348,   353,   358,   363,   368,
1018 <     373,   378,   383,   388,   393,   398,   399,   407,   408,   410,
1019 <     413,   415,   417,   419,   421,   423,   425,   427,   429,   431,
1020 <     434,   439,   441,   446,   451,   456,   461,   466,   467,   473,
1021 <     477,   479,   481,   483,   485,   487,   489,   491,   493,   495,
1022 <     497,   499,   501,   503,   505,   507,   509,   511,   513,   515,
1023 <     517,   518,   524,   528,   530,   531,   535,   536,   539,   541,
1024 <     543,   545,   547,   549,   551,   553,   555,   557,   559,   561,
1025 <     563,   565,   567,   569,   571,   572,   580,   581,   583,   586,
1026 <     588,   590,   592,   594,   596,   598,   600,   602,   604,   606,
1027 <     608,   610,   612,   614,   617,   622,   624,   629,   634,   639,
1028 <     644,   649,   654,   659,   664,   669,   674,   679,   684,   685,
1029 <     692,   693,   699,   703,   705,   707,   709,   711,   714,   716,
1030 <     718,   720,   722,   724,   727,   728,   734,   738,   740,   742,
1031 <     746,   751,   756,   757,   764,   767,   769,   771,   773,   775,
1032 <     777,   779,   781,   783,   785,   788,   793,   798,   803,   808,
1033 <     809,   815,   819,   821,   822,   826,   827,   830,   832,   834,
1034 <     836,   838,   840,   842,   844,   846,   848,   850,   855,   860,
1035 <     865,   866,   873,   876,   878,   880,   882,   884,   887,   892,
1036 <     897,   902,   903,   910,   913,   915,   917,   919,   921,   924,
1037 <     929,   934,   935,   941,   945,   947,   949,   951,   953,   955,
1038 <     957,   959,   961,   963,   965,   967,   969,   970,   977,   980,
1039 <     982,   984,   986,   989,   994,   995,  1001,  1005,  1007,  1009,
1040 <    1011,  1013,  1015,  1017,  1019,  1021,  1023,  1025,  1027,  1029,
1041 <    1030,  1038,  1039,  1041,  1044,  1046,  1048,  1050,  1052,  1054,
1042 <    1056,  1058,  1060,  1062,  1064,  1066,  1068,  1070,  1072,  1074,
1043 <    1076,  1079,  1084,  1086,  1091,  1096,  1101,  1106,  1111,  1116,
1044 <    1121,  1126,  1127,  1133,  1137,  1139,  1140,  1144,  1145,  1148,
1045 <    1150,  1152,  1154,  1156,  1158,  1163,  1168,  1173,  1178,  1183,
1046 <    1188,  1189,  1196,  1197,  1203,  1207,  1209,  1211,  1214,  1216,
1047 <    1218,  1220,  1222,  1224,  1229,  1234,  1235,  1242,  1245,  1247,
1048 <    1249,  1251,  1253,  1258,  1263,  1269,  1272,  1274,  1276,  1278,
1049 <    1283,  1284,  1291,  1292,  1298,  1302,  1304,  1306,  1309,  1311,
1050 <    1313,  1315,  1317,  1319,  1324,  1329,  1335,  1338,  1340,  1342,
1051 <    1344,  1346,  1348,  1350,  1352,  1354,  1356,  1358,  1360,  1362,
1052 <    1364,  1366,  1368,  1370,  1372,  1374,  1376,  1378,  1380,  1382,
1053 <    1384,  1386,  1388,  1390,  1392,  1394,  1396,  1398,  1400,  1402,
1054 <    1404,  1406,  1408,  1410,  1412,  1414,  1416,  1418,  1420,  1422,
1055 <    1424,  1426,  1428,  1430,  1432,  1434,  1436,  1438,  1440,  1442,
1056 <    1444,  1446,  1448,  1450,  1452,  1457,  1462,  1467,  1472,  1477,
1057 <    1482,  1487,  1492,  1497,  1502,  1507,  1512,  1517,  1522,  1527,
1058 <    1532,  1537,  1542,  1547,  1552,  1557,  1562,  1567,  1572,  1577,
1059 <    1582,  1587,  1592,  1597,  1602,  1607,  1612,  1617,  1622,  1627,
1060 <    1632,  1637,  1642,  1647,  1652,  1657,  1662,  1667,  1672,  1677,
1061 <    1682,  1687,  1692,  1697,  1702,  1707,  1708,  1714,  1718,  1720,
1062 <    1722,  1724,  1726,  1728,  1730,  1732,  1734,  1736,  1738,  1740,
1063 <    1742,  1744,  1746,  1748,  1750,  1752,  1754,  1756,  1758,  1759,
1064 <    1765,  1769,  1771,  1773,  1775,  1777,  1779,  1781,  1783,  1785,
1065 <    1787,  1789,  1791,  1793,  1795,  1797,  1799,  1801,  1803,  1805,
1066 <    1807,  1809,  1814,  1819,  1824,  1829,  1830,  1837,  1840,  1842,
1067 <    1844,  1846,  1848,  1850,  1852,  1854,  1856,  1861,  1866,  1867,
1068 <    1873,  1877,  1879,  1881,  1883,  1888,  1893,  1894,  1900,  1904,
1069 <    1906,  1908,  1910,  1916,  1919,  1921,  1923,  1925,  1927,  1929,
1070 <    1931,  1933,  1935,  1937,  1939,  1941,  1943,  1945,  1947,  1949,
1071 <    1951,  1953,  1955,  1957,  1959,  1964,  1969,  1974,  1979,  1984,
1115 <    1989,  1994,  1999,  2004,  2009,  2014,  2019,  2024,  2029,  2034,
1116 <    2039,  2044,  2049,  2055,  2058,  2060,  2062,  2064,  2066,  2068,
1117 <    2070,  2072,  2074,  2076,  2081,  2086,  2091,  2096,  2101,  2106
1008 >      39,    41,    43,    45,    47,    49,    52,    55,    56,    58,
1009 >      61,    65,    69,    73,    77,    81,    82,    84,    87,    91,
1010 >      95,    99,   105,   108,   110,   112,   114,   117,   122,   127,
1011 >     133,   136,   138,   140,   142,   144,   146,   148,   150,   152,
1012 >     154,   156,   158,   160,   162,   165,   166,   172,   176,   178,
1013 >     180,   182,   187,   192,   197,   202,   207,   212,   217,   222,
1014 >     227,   232,   237,   243,   246,   248,   250,   252,   254,   257,
1015 >     262,   267,   272,   278,   281,   283,   285,   287,   289,   292,
1016 >     297,   302,   303,   310,   313,   315,   317,   319,   321,   324,
1017 >     329,   334,   339,   340,   346,   350,   352,   354,   356,   358,
1018 >     360,   362,   364,   366,   367,   374,   377,   379,   381,   383,
1019 >     385,   387,   389,   391,   393,   395,   398,   403,   408,   413,
1020 >     418,   423,   428,   429,   435,   439,   441,   443,   445,   447,
1021 >     449,   451,   453,   455,   457,   459,   461,   463,   465,   467,
1022 >     469,   471,   473,   475,   477,   479,   481,   482,   488,   492,
1023 >     494,   496,   498,   500,   502,   504,   506,   508,   510,   512,
1024 >     514,   516,   518,   520,   522,   524,   526,   528,   530,   531,
1025 >     538,   541,   543,   545,   547,   549,   551,   553,   555,   557,
1026 >     559,   561,   563,   565,   567,   569,   572,   577,   582,   587,
1027 >     592,   597,   602,   607,   612,   617,   622,   627,   632,   637,
1028 >     638,   645,   646,   652,   656,   658,   660,   662,   664,   667,
1029 >     669,   671,   673,   675,   677,   680,   681,   687,   691,   693,
1030 >     695,   699,   704,   709,   710,   717,   720,   722,   724,   726,
1031 >     728,   730,   732,   734,   736,   738,   741,   746,   751,   756,
1032 >     761,   762,   768,   772,   774,   776,   778,   780,   782,   784,
1033 >     786,   788,   790,   792,   797,   802,   807,   808,   815,   818,
1034 >     820,   822,   824,   826,   829,   834,   839,   844,   850,   853,
1035 >     855,   857,   859,   864,   865,   872,   875,   877,   879,   881,
1036 >     883,   886,   891,   896,   897,   903,   907,   909,   911,   913,
1037 >     915,   917,   919,   921,   923,   925,   927,   929,   930,   937,
1038 >     940,   942,   944,   946,   949,   954,   955,   961,   965,   967,
1039 >     969,   971,   973,   975,   977,   979,   981,   983,   985,   987,
1040 >     988,   995,   998,  1000,  1002,  1004,  1006,  1008,  1010,  1012,
1041 >    1014,  1016,  1018,  1020,  1022,  1024,  1027,  1032,  1037,  1042,
1042 >    1047,  1052,  1057,  1062,  1067,  1068,  1074,  1078,  1080,  1082,
1043 >    1084,  1086,  1091,  1096,  1101,  1106,  1107,  1114,  1115,  1121,
1044 >    1125,  1127,  1129,  1132,  1134,  1136,  1138,  1140,  1142,  1147,
1045 >    1152,  1153,  1160,  1163,  1165,  1167,  1169,  1171,  1176,  1181,
1046 >    1187,  1190,  1192,  1194,  1196,  1201,  1202,  1209,  1210,  1216,
1047 >    1220,  1222,  1224,  1227,  1229,  1231,  1233,  1235,  1237,  1242,
1048 >    1247,  1253,  1256,  1258,  1260,  1262,  1264,  1266,  1268,  1270,
1049 >    1272,  1274,  1276,  1278,  1280,  1282,  1284,  1286,  1288,  1290,
1050 >    1292,  1294,  1296,  1298,  1300,  1302,  1304,  1306,  1308,  1310,
1051 >    1312,  1314,  1316,  1318,  1320,  1322,  1324,  1326,  1328,  1330,
1052 >    1332,  1334,  1336,  1338,  1340,  1342,  1344,  1346,  1348,  1350,
1053 >    1352,  1354,  1356,  1358,  1360,  1362,  1367,  1372,  1377,  1382,
1054 >    1387,  1392,  1397,  1402,  1407,  1412,  1417,  1422,  1427,  1432,
1055 >    1437,  1442,  1447,  1452,  1457,  1462,  1467,  1472,  1477,  1482,
1056 >    1487,  1492,  1497,  1502,  1507,  1512,  1517,  1522,  1527,  1532,
1057 >    1537,  1542,  1547,  1552,  1557,  1562,  1567,  1572,  1577,  1582,
1058 >    1587,  1592,  1597,  1598,  1604,  1608,  1610,  1612,  1614,  1616,
1059 >    1618,  1620,  1622,  1624,  1626,  1628,  1630,  1632,  1634,  1636,
1060 >    1638,  1640,  1642,  1644,  1646,  1648,  1650,  1651,  1657,  1661,
1061 >    1663,  1665,  1667,  1669,  1671,  1673,  1675,  1677,  1679,  1681,
1062 >    1683,  1685,  1687,  1689,  1691,  1693,  1695,  1697,  1699,  1701,
1063 >    1703,  1708,  1713,  1718,  1723,  1724,  1731,  1734,  1736,  1738,
1064 >    1740,  1742,  1744,  1746,  1748,  1750,  1755,  1760,  1761,  1767,
1065 >    1771,  1773,  1775,  1777,  1782,  1787,  1788,  1794,  1798,  1800,
1066 >    1802,  1804,  1810,  1813,  1815,  1817,  1819,  1821,  1823,  1825,
1067 >    1827,  1829,  1831,  1833,  1835,  1837,  1839,  1841,  1843,  1845,
1068 >    1847,  1849,  1851,  1853,  1858,  1863,  1868,  1873,  1878,  1883,
1069 >    1888,  1893,  1898,  1903,  1908,  1913,  1918,  1923,  1928,  1933,
1070 >    1938,  1943,  1949,  1952,  1954,  1956,  1958,  1960,  1962,  1964,
1071 >    1966,  1968,  1970,  1975,  1980,  1985,  1990,  1995,  2000
1072   };
1073  
1074   /* YYRHS -- A `-1'-separated list of the rules' RHS.  */
1075   static const yytype_int16 yyrhs[] =
1076   {
1077 <     267,     0,    -1,    -1,   267,   268,    -1,   296,    -1,   302,
1078 <      -1,   317,    -1,   554,    -1,   340,    -1,   359,    -1,   373,
1079 <      -1,   278,    -1,   575,    -1,   391,    -1,   398,    -1,   408,
1080 <      -1,   417,    -1,   444,    -1,   454,    -1,   460,    -1,   474,
1081 <      -1,   538,    -1,   464,    -1,   273,    -1,     1,   261,    -1,
1082 <       1,   262,    -1,    -1,   270,    -1,   132,   269,    -1,   132,
1083 <     174,   269,    -1,   132,   175,   269,    -1,   132,   176,   269,
1084 <      -1,   132,   177,   269,    -1,   132,   178,   269,    -1,    -1,
1085 <     272,    -1,   132,   271,    -1,   132,    14,   271,    -1,   132,
1086 <      15,   271,    -1,   132,    16,   271,    -1,   120,   263,   274,
1087 <     262,   261,    -1,   274,   275,    -1,   275,    -1,   276,    -1,
1088 <     277,    -1,     1,   261,    -1,   119,   264,   154,   261,    -1,
1089 <     149,   264,   154,   261,    -1,   182,   263,   279,   262,   261,
1090 <      -1,   279,   280,    -1,   280,    -1,   287,    -1,   292,    -1,
1091 <     295,    -1,   289,    -1,   290,    -1,   291,    -1,   294,    -1,
1092 <     286,    -1,   293,    -1,   288,    -1,   285,    -1,   281,    -1,
1093 <       1,   261,    -1,    -1,   169,   282,   264,   283,   261,    -1,
1094 <     283,   265,   284,    -1,   284,    -1,   170,    -1,   171,    -1,
1095 <     168,   264,   154,   261,    -1,   166,   264,   154,   261,    -1,
1096 <     121,   264,   154,   261,    -1,   184,   264,   154,   261,    -1,
1097 <      37,   264,   154,   261,    -1,   124,   264,   154,   261,    -1,
1098 <     123,   264,   154,   261,    -1,   256,   264,   154,   261,    -1,
1099 <     257,   264,   154,   261,    -1,   228,   264,   132,   261,    -1,
1100 <      85,   264,   198,   261,    -1,     5,   263,   297,   262,   261,
1101 <      -1,   297,   298,    -1,   298,    -1,   299,    -1,   301,    -1,
1102 <     300,    -1,     1,   261,    -1,   121,   264,   154,   261,    -1,
1103 <      47,   264,   154,   261,    -1,    37,   264,   154,   261,    -1,
1104 <     103,   263,   303,   262,   261,    -1,   303,   304,    -1,   304,
1105 <      -1,   305,    -1,   306,    -1,   315,    -1,   316,    -1,   307,
1106 <      -1,   309,    -1,   311,    -1,   312,    -1,   314,    -1,   310,
1107 <      -1,   313,    -1,   308,    -1,     1,   261,    -1,   220,   264,
1108 <     154,   261,    -1,   139,   264,   154,   261,    -1,    63,   264,
1109 <     154,   261,    -1,    56,   264,   154,   261,    -1,    61,   264,
1110 <     154,   261,    -1,    62,   264,   154,   261,    -1,    59,   264,
1111 <     154,   261,    -1,    58,   264,   154,   261,    -1,    60,   264,
1112 <     154,   261,    -1,    57,   264,   154,   261,    -1,   104,   264,
1113 <     221,   261,    -1,   104,   264,   223,   261,    -1,   104,   264,
1114 <     227,   261,    -1,   104,   264,   225,   261,    -1,   104,   264,
1115 <     226,   261,    -1,   104,   264,   224,   261,    -1,   104,   264,
1116 <     222,   261,    -1,   254,   264,   198,   261,    -1,    -1,   137,
1117 <     318,   319,   263,   320,   262,   261,    -1,    -1,   323,    -1,
1118 <     320,   321,    -1,   321,    -1,   322,    -1,   324,    -1,   325,
1119 <      -1,   329,    -1,   328,    -1,   326,    -1,   327,    -1,   333,
1120 <      -1,     1,   261,    -1,   121,   264,   154,   261,    -1,   154,
1121 <      -1,   249,   264,   154,   261,    -1,   148,   264,   154,   261,
1122 <      -1,    49,   264,   198,   261,    -1,   167,   264,   154,   261,
1123 <      -1,    26,   264,   154,   261,    -1,    -1,   237,   330,   264,
1124 <     331,   261,    -1,   331,   265,   332,    -1,   332,    -1,   205,
1125 <      -1,   208,    -1,   209,    -1,   211,    -1,   212,    -1,   215,
1126 <      -1,   234,    -1,   229,    -1,   231,    -1,   238,    -1,   235,
1127 <      -1,   214,    -1,   230,    -1,   233,    -1,   216,    -1,   241,
1128 <      -1,   206,    -1,   207,    -1,   219,    -1,    -1,    54,   334,
1129 <     264,   335,   261,    -1,   335,   265,   336,    -1,   336,    -1,
1130 <      -1,   131,   337,   339,    -1,    -1,   338,   339,    -1,    73,
1131 <      -1,   162,    -1,    93,    -1,   248,    -1,   258,    -1,    66,
1132 <      -1,    38,    -1,   160,    -1,     5,    -1,    78,    -1,   126,
1133 <      -1,   230,    -1,   142,    -1,    80,    -1,   163,    -1,    49,
1134 <      -1,    -1,    26,   341,   342,   263,   343,   262,   261,    -1,
1135 <      -1,   346,    -1,   343,   344,    -1,   344,    -1,   345,    -1,
1136 <     356,    -1,   357,    -1,   347,    -1,   348,    -1,   358,    -1,
1137 <     349,    -1,   350,    -1,   351,    -1,   352,    -1,   353,    -1,
1138 <     354,    -1,   355,    -1,     1,   261,    -1,   121,   264,   154,
1139 <     261,    -1,   154,    -1,   151,   264,   270,   261,    -1,   152,
1140 <     264,   270,   261,    -1,   135,   264,   132,   261,    -1,    30,
1141 <     264,   270,   261,    -1,   113,   264,   132,   261,    -1,   108,
1142 <     264,   132,   261,    -1,   110,   264,   132,   261,    -1,   109,
1143 <     264,   132,   261,    -1,   179,   264,   272,   261,    -1,    23,
1144 <     264,   132,   261,    -1,    24,   264,   132,   261,    -1,   134,
1145 <     264,   132,   261,    -1,    -1,   101,   360,   263,   365,   262,
1146 <     261,    -1,    -1,    54,   362,   264,   363,   261,    -1,   363,
1147 <     265,   364,    -1,   364,    -1,   236,    -1,    77,    -1,   232,
1148 <      -1,   365,   366,    -1,   366,    -1,   367,    -1,   361,    -1,
1149 <     371,    -1,   372,    -1,     1,   261,    -1,    -1,   153,   264,
1150 <     369,   368,   261,    -1,   369,   265,   370,    -1,   370,    -1,
1151 <     132,    -1,   132,   203,   132,    -1,    90,   264,   154,   261,
1152 <      -1,    84,   264,   154,   261,    -1,    -1,    74,   374,   263,
1153 <     375,   262,   261,    -1,   375,   376,    -1,   376,    -1,   377,
1154 <      -1,   378,    -1,   379,    -1,   381,    -1,   388,    -1,   389,
1155 <      -1,   390,    -1,   380,    -1,     1,   261,    -1,   249,   264,
1156 <     154,   261,    -1,   148,   264,   154,   261,    -1,    26,   264,
1157 <     154,   261,    -1,    49,   264,   198,   261,    -1,    -1,    54,
1158 <     382,   264,   383,   261,    -1,   383,   265,   384,    -1,   384,
1159 <      -1,    -1,   131,   385,   387,    -1,    -1,   386,   387,    -1,
1160 <     192,    -1,    50,    -1,    94,    -1,    75,    -1,    20,    -1,
1161 <      21,    -1,   130,    -1,    68,    -1,   173,    -1,   122,    -1,
1162 <     191,   264,   154,   261,    -1,   158,   264,   154,   261,    -1,
1163 <     157,   264,   132,   261,    -1,    -1,   172,   392,   263,   393,
1164 <     262,   261,    -1,   393,   394,    -1,   394,    -1,   395,    -1,
1165 <     396,    -1,   397,    -1,     1,   261,    -1,   156,   264,   154,
1166 <     261,    -1,    22,   264,   154,   261,    -1,   125,   264,   154,
1167 <     261,    -1,    -1,   186,   399,   263,   400,   262,   261,    -1,
1168 <     400,   401,    -1,   401,    -1,   402,    -1,   403,    -1,   404,
1169 <      -1,     1,   261,    -1,   121,   264,   154,   261,    -1,   249,
1170 <     264,   154,   261,    -1,    -1,   188,   405,   264,   406,   261,
1171 <      -1,   406,   265,   407,    -1,   407,    -1,    93,    -1,   245,
1172 <      -1,   248,    -1,   258,    -1,   246,    -1,   240,    -1,   172,
1173 <      -1,   247,    -1,   239,    -1,   219,    -1,   204,    -1,    -1,
1174 <     187,   409,   263,   410,   262,   261,    -1,   410,   411,    -1,
1175 <     411,    -1,   412,    -1,   413,    -1,     1,   261,    -1,   121,
1176 <     264,   154,   261,    -1,    -1,   188,   414,   264,   415,   261,
1177 <      -1,   415,   265,   416,    -1,   416,    -1,    93,    -1,   245,
1178 <      -1,   248,    -1,   258,    -1,   246,    -1,   240,    -1,   172,
1179 <      -1,   247,    -1,   239,    -1,   219,    -1,   204,    -1,    -1,
1180 <      29,   418,   419,   263,   420,   262,   261,    -1,    -1,   423,
1181 <      -1,   420,   421,    -1,   421,    -1,   422,    -1,   424,    -1,
1182 <     425,    -1,   426,    -1,   427,    -1,   429,    -1,   428,    -1,
1183 <     430,    -1,   431,    -1,   440,    -1,   441,    -1,   442,    -1,
1184 <     439,    -1,   438,    -1,   443,    -1,     1,   261,    -1,   121,
1185 <     264,   154,   261,    -1,   154,    -1,    84,   264,   154,   261,
1186 <      -1,   256,   264,   154,   261,    -1,   180,   264,   154,   261,
1187 <      -1,     3,   264,   154,   261,    -1,   153,   264,   132,   261,
1188 <      -1,     6,   264,   217,   261,    -1,     6,   264,   218,   261,
1189 <      -1,    53,   264,   154,   261,    -1,    -1,    54,   432,   264,
1190 <     433,   261,    -1,   433,   265,   434,    -1,   434,    -1,    -1,
1191 <     131,   435,   437,    -1,    -1,   436,   437,    -1,    27,    -1,
1192 <      31,    -1,    10,    -1,    12,    -1,   243,    -1,   167,   264,
1193 <     154,   261,    -1,    49,   264,   198,   261,    -1,    86,   264,
1194 <     154,   261,    -1,    99,   264,   154,   261,    -1,    26,   264,
1195 <     154,   261,    -1,    25,   264,   154,   261,    -1,    -1,    91,
1196 <     445,   263,   450,   262,   261,    -1,    -1,   188,   447,   264,
1197 <     448,   261,    -1,   448,   265,   449,    -1,   449,    -1,   159,
1198 <      -1,   450,   451,    -1,   451,    -1,   452,    -1,   453,    -1,
1199 <     446,    -1,     1,    -1,   249,   264,   154,   261,    -1,   156,
1200 <     264,   154,   261,    -1,    -1,    36,   455,   263,   456,   262,
1201 <     261,    -1,   456,   457,    -1,   457,    -1,   458,    -1,   459,
1202 <      -1,     1,    -1,    90,   264,   154,   261,    -1,   156,   264,
1203 <     154,   261,    -1,    51,   263,   461,   262,   261,    -1,   461,
1204 <     462,    -1,   462,    -1,   463,    -1,     1,    -1,    90,   264,
1205 <     154,   261,    -1,    -1,    64,   465,   263,   470,   262,   261,
1206 <      -1,    -1,   188,   467,   264,   468,   261,    -1,   468,   265,
1207 <     469,    -1,   469,    -1,   159,    -1,   470,   471,    -1,   471,
1208 <      -1,   472,    -1,   473,    -1,   466,    -1,     1,    -1,   121,
1209 <     264,   154,   261,    -1,   156,   264,   154,   261,    -1,    65,
1210 <     263,   475,   262,   261,    -1,   475,   476,    -1,   476,    -1,
1211 <     485,    -1,   486,    -1,   488,    -1,   489,    -1,   490,    -1,
1212 <     491,    -1,   492,    -1,   493,    -1,   494,    -1,   495,    -1,
1213 <     484,    -1,   497,    -1,   498,    -1,   499,    -1,   500,    -1,
1214 <     516,    -1,   502,    -1,   504,    -1,   506,    -1,   505,    -1,
1215 <     509,    -1,   503,    -1,   510,    -1,   511,    -1,   512,    -1,
1216 <     513,    -1,   515,    -1,   514,    -1,   530,    -1,   517,    -1,
1217 <     521,    -1,   522,    -1,   526,    -1,   507,    -1,   508,    -1,
1218 <     536,    -1,   534,    -1,   535,    -1,   518,    -1,   487,    -1,
1219 <     519,    -1,   520,    -1,   537,    -1,   525,    -1,   496,    -1,
1220 <     523,    -1,   524,    -1,   480,    -1,   483,    -1,   478,    -1,
1221 <     479,    -1,   481,    -1,   482,    -1,   501,    -1,   477,    -1,
1222 <       1,    -1,   115,   264,   132,   261,    -1,    71,   264,   132,
1223 <     261,    -1,    72,   264,   132,   261,    -1,    12,   264,   198,
1224 <     261,    -1,   255,   264,   198,   261,    -1,   161,   264,   270,
1225 <     261,    -1,   185,   264,   198,   261,    -1,    92,   264,   270,
1226 <     261,    -1,    83,   264,   198,   261,    -1,    88,   264,   198,
1227 <     261,    -1,    43,   264,   198,   261,    -1,    52,   264,   198,
1228 <     261,    -1,     8,   264,   198,   261,    -1,   112,   264,   270,
1229 <     261,    -1,   111,   264,   132,   261,    -1,   105,   264,   132,
1230 <     261,    -1,     9,   264,   270,   261,    -1,   202,   264,   270,
1231 <     261,    -1,   201,   264,   270,   261,    -1,    76,   264,   132,
1232 <     261,    -1,    96,   264,   198,   261,    -1,    95,   264,   154,
1233 <     261,    -1,    89,   264,   198,   261,    -1,   260,   264,   198,
1234 <     261,    -1,   193,   264,   198,   261,    -1,   196,   264,   198,
1235 <     261,    -1,   197,   264,   198,   261,    -1,   195,   264,   198,
1236 <     261,    -1,   195,   264,   199,   261,    -1,   194,   264,   198,
1237 <     261,    -1,   194,   264,   199,   261,    -1,   146,   264,   270,
1238 <     261,    -1,    19,   264,   270,   261,    -1,   138,   264,   198,
1239 <     261,    -1,   147,   264,   270,   261,    -1,   189,   264,   198,
1240 <     261,    -1,   129,   264,   198,   261,    -1,   244,   264,   198,
1241 <     261,    -1,   141,   264,   198,   261,    -1,   116,   264,   154,
1242 <     261,    -1,    87,   264,   270,   261,    -1,    44,   264,   132,
1243 <     261,    -1,   114,   264,   132,   261,    -1,   183,   264,   154,
1244 <     261,    -1,    32,   264,   154,   261,    -1,    28,   264,   132,
1245 <     261,    -1,   250,   264,   198,   261,    -1,    46,   264,   154,
1246 <     261,    -1,   150,   264,   198,   261,    -1,    39,   264,   198,
1247 <     261,    -1,   242,   264,   270,   261,    -1,    -1,   143,   527,
1248 <     264,   528,   261,    -1,   528,   265,   529,    -1,   529,    -1,
1249 <     205,    -1,   208,    -1,   209,    -1,   211,    -1,   212,    -1,
1250 <     215,    -1,   234,    -1,   229,    -1,   231,    -1,   238,    -1,
1251 <     235,    -1,   214,    -1,   230,    -1,   233,    -1,   216,    -1,
1252 <     241,    -1,   206,    -1,   207,    -1,   219,    -1,    -1,   140,
1253 <     531,   264,   532,   261,    -1,   532,   265,   533,    -1,   533,
1254 <      -1,   205,    -1,   208,    -1,   209,    -1,   211,    -1,   212,
1255 <      -1,   215,    -1,   234,    -1,   229,    -1,   231,    -1,   238,
1256 <      -1,   235,    -1,   214,    -1,   230,    -1,   233,    -1,   216,
1257 <      -1,   241,    -1,   206,    -1,   207,    -1,   219,    -1,   117,
1258 <     264,   132,   261,    -1,   118,   264,   132,   261,    -1,    33,
1259 <     264,   132,   261,    -1,   210,   264,   272,   261,    -1,    -1,
1260 <      67,   539,   263,   540,   262,   261,    -1,   540,   541,    -1,
1261 <     541,    -1,   542,    -1,   543,    -1,   544,    -1,   548,    -1,
1262 <     549,    -1,   550,    -1,     1,    -1,    48,   264,   198,   261,
1263 <      -1,    45,   264,   270,   261,    -1,    -1,   103,   545,   264,
1264 <     546,   261,    -1,   546,   265,   547,    -1,   547,    -1,   200,
1265 <      -1,    11,    -1,   249,   264,   154,   261,    -1,   121,   264,
1266 <     154,   261,    -1,    -1,     4,   551,   264,   552,   261,    -1,
1267 <     552,   265,   553,    -1,   553,    -1,   200,    -1,    11,    -1,
1268 <      22,   263,   555,   262,   261,    -1,   555,   556,    -1,   556,
1269 <      -1,   559,    -1,   560,    -1,   561,    -1,   562,    -1,   567,
1270 <      -1,   563,    -1,   564,    -1,   565,    -1,   566,    -1,   568,
1271 <      -1,   569,    -1,   570,    -1,   558,    -1,   571,    -1,   572,
1272 <      -1,   573,    -1,   574,    -1,   557,    -1,     1,    -1,    40,
1273 <     264,   198,   261,    -1,   164,   264,   198,   261,    -1,    42,
1274 <     264,   198,   261,    -1,   251,   264,   198,   261,    -1,   252,
1275 <     264,   198,   261,    -1,   253,   264,   198,   261,    -1,    97,
1276 <     264,   270,   261,    -1,    98,   264,   270,   261,    -1,   107,
1277 <     264,   132,   261,    -1,   155,   264,   198,   261,    -1,   106,
1324 <     264,   132,   261,    -1,    35,   264,   132,   261,    -1,    34,
1325 <     264,   132,   261,    -1,   127,   264,   198,   261,    -1,   128,
1326 <     264,   198,   261,    -1,    13,   264,   198,   261,    -1,   144,
1327 <     264,   132,   261,    -1,   145,   264,   270,   261,    -1,   181,
1328 <     263,   576,   262,   261,    -1,   576,   577,    -1,   577,    -1,
1329 <     578,    -1,   579,    -1,   581,    -1,   583,    -1,   582,    -1,
1330 <     580,    -1,   584,    -1,     1,    -1,    55,   264,   198,   261,
1331 <      -1,    82,   264,   198,   261,    -1,    79,   264,   154,   261,
1332 <      -1,   100,   264,   270,   261,    -1,    77,   264,   198,   261,
1333 <      -1,    41,   264,   198,   261,    -1,    81,   264,   198,   261,
1334 <      -1
1077 >     245,     0,    -1,    -1,   245,   246,    -1,   274,    -1,   280,
1078 >      -1,   295,    -1,   514,    -1,   313,    -1,   330,    -1,   344,
1079 >      -1,   256,    -1,   535,    -1,   359,    -1,   366,    -1,   370,
1080 >      -1,   380,    -1,   389,    -1,   408,    -1,   418,    -1,   424,
1081 >      -1,   438,    -1,   498,    -1,   428,    -1,   251,    -1,     1,
1082 >     239,    -1,     1,   240,    -1,    -1,   248,    -1,   110,   247,
1083 >      -1,   110,   151,   247,    -1,   110,   152,   247,    -1,   110,
1084 >     153,   247,    -1,   110,   154,   247,    -1,   110,   155,   247,
1085 >      -1,    -1,   250,    -1,   110,   249,    -1,   110,    14,   249,
1086 >      -1,   110,    15,   249,    -1,   110,    16,   249,    -1,    99,
1087 >     241,   252,   240,   239,    -1,   252,   253,    -1,   253,    -1,
1088 >     254,    -1,   255,    -1,     1,   239,    -1,    98,   242,   131,
1089 >     239,    -1,   126,   242,   131,   239,    -1,   159,   241,   257,
1090 >     240,   239,    -1,   257,   258,    -1,   258,    -1,   265,    -1,
1091 >     270,    -1,   273,    -1,   267,    -1,   268,    -1,   269,    -1,
1092 >     272,    -1,   264,    -1,   271,    -1,   266,    -1,   263,    -1,
1093 >     259,    -1,     1,   239,    -1,    -1,   146,   260,   242,   261,
1094 >     239,    -1,   261,   243,   262,    -1,   262,    -1,   147,    -1,
1095 >     148,    -1,   145,   242,   131,   239,    -1,   143,   242,   131,
1096 >     239,    -1,   100,   242,   131,   239,    -1,   160,   242,   131,
1097 >     239,    -1,    31,   242,   131,   239,    -1,   103,   242,   131,
1098 >     239,    -1,   102,   242,   131,   239,    -1,   232,   242,   131,
1099 >     239,    -1,   233,   242,   131,   239,    -1,   197,   242,   110,
1100 >     239,    -1,    67,   242,   174,   239,    -1,     5,   241,   275,
1101 >     240,   239,    -1,   275,   276,    -1,   276,    -1,   277,    -1,
1102 >     279,    -1,   278,    -1,     1,   239,    -1,   100,   242,   131,
1103 >     239,    -1,    41,   242,   131,   239,    -1,    31,   242,   131,
1104 >     239,    -1,    83,   241,   281,   240,   239,    -1,   281,   282,
1105 >      -1,   282,    -1,   283,    -1,   284,    -1,   285,    -1,     1,
1106 >     239,    -1,   230,   242,   174,   239,    -1,   217,   242,   174,
1107 >     239,    -1,    -1,   286,   238,   241,   287,   240,   239,    -1,
1108 >     287,   288,    -1,   288,    -1,   289,    -1,   291,    -1,   290,
1109 >      -1,     1,   239,    -1,   100,   242,   131,   239,    -1,   237,
1110 >     242,   250,   239,    -1,   237,   242,   209,   239,    -1,    -1,
1111 >     164,   292,   242,   293,   239,    -1,   293,   243,   294,    -1,
1112 >     294,    -1,   225,    -1,   115,    -1,    51,    -1,   189,    -1,
1113 >      74,    -1,    72,    -1,   188,    -1,    -1,   115,   296,   241,
1114 >     297,   240,   239,    -1,   297,   298,    -1,   298,    -1,   299,
1115 >      -1,   300,    -1,   301,    -1,   305,    -1,   304,    -1,   302,
1116 >      -1,   303,    -1,   309,    -1,     1,   239,    -1,   100,   242,
1117 >     131,   239,    -1,   225,   242,   131,   239,    -1,   125,   242,
1118 >     131,   239,    -1,    43,   242,   174,   239,    -1,   144,   242,
1119 >     131,   239,    -1,    24,   242,   131,   239,    -1,    -1,   206,
1120 >     306,   242,   307,   239,    -1,   307,   243,   308,    -1,   308,
1121 >      -1,   181,    -1,   184,    -1,   185,    -1,   187,    -1,   188,
1122 >      -1,   192,    -1,    61,    -1,   203,    -1,   198,    -1,   200,
1123 >      -1,   207,    -1,   204,    -1,   191,    -1,   199,    -1,   202,
1124 >      -1,   193,    -1,   213,    -1,   182,    -1,   183,    -1,   196,
1125 >      -1,    -1,    47,   310,   242,   311,   239,    -1,   311,   243,
1126 >     312,    -1,   312,    -1,    57,    -1,   139,    -1,    74,    -1,
1127 >     224,    -1,   189,    -1,   208,    -1,   234,    -1,    51,    -1,
1128 >      32,    -1,   214,    -1,   137,    -1,     5,    -1,   105,    -1,
1129 >     199,    -1,   212,    -1,   119,    -1,   140,    -1,    98,    -1,
1130 >      -1,    24,   314,   241,   315,   240,   239,    -1,   315,   316,
1131 >      -1,   316,    -1,   317,    -1,   327,    -1,   328,    -1,   318,
1132 >      -1,   319,    -1,   329,    -1,   320,    -1,   321,    -1,   322,
1133 >      -1,   323,    -1,   324,    -1,   325,    -1,   326,    -1,     1,
1134 >     239,    -1,   100,   242,   131,   239,    -1,   128,   242,   248,
1135 >     239,    -1,   129,   242,   248,   239,    -1,   113,   242,   110,
1136 >     239,    -1,    26,   242,   248,   239,    -1,    92,   242,   110,
1137 >     239,    -1,    87,   242,   110,   239,    -1,    89,   242,   110,
1138 >     239,    -1,    88,   242,   110,   239,    -1,   156,   242,   250,
1139 >     239,    -1,    22,   242,   110,   239,    -1,    23,   242,   110,
1140 >     239,    -1,   112,   242,   110,   239,    -1,    -1,    82,   331,
1141 >     241,   336,   240,   239,    -1,    -1,    47,   333,   242,   334,
1142 >     239,    -1,   334,   243,   335,    -1,   335,    -1,   205,    -1,
1143 >      61,    -1,   201,    -1,   336,   337,    -1,   337,    -1,   338,
1144 >      -1,   332,    -1,   342,    -1,   343,    -1,     1,   239,    -1,
1145 >      -1,   130,   242,   340,   339,   239,    -1,   340,   243,   341,
1146 >      -1,   341,    -1,   110,    -1,   110,   179,   110,    -1,    71,
1147 >     242,   131,   239,    -1,    66,   242,   131,   239,    -1,    -1,
1148 >      58,   345,   241,   346,   240,   239,    -1,   346,   347,    -1,
1149 >     347,    -1,   348,    -1,   349,    -1,   350,    -1,   352,    -1,
1150 >     356,    -1,   357,    -1,   358,    -1,   351,    -1,     1,   239,
1151 >      -1,   225,   242,   131,   239,    -1,   125,   242,   131,   239,
1152 >      -1,    24,   242,   131,   239,    -1,    43,   242,   174,   239,
1153 >      -1,    -1,    47,   353,   242,   354,   239,    -1,   354,   243,
1154 >     355,    -1,   355,    -1,   168,    -1,    44,    -1,    75,    -1,
1155 >      59,    -1,    20,    -1,   109,    -1,    53,    -1,   150,    -1,
1156 >     101,    -1,   167,   242,   131,   239,    -1,   135,   242,   131,
1157 >     239,    -1,   134,   242,   110,   239,    -1,    -1,   149,   360,
1158 >     241,   361,   240,   239,    -1,   361,   362,    -1,   362,    -1,
1159 >     363,    -1,   364,    -1,   365,    -1,     1,   239,    -1,   133,
1160 >     242,   131,   239,    -1,    21,   242,   131,   239,    -1,   104,
1161 >     242,   131,   239,    -1,   215,   241,   367,   240,   239,    -1,
1162 >     367,   368,    -1,   368,    -1,   369,    -1,     1,    -1,   100,
1163 >     242,   131,   239,    -1,    -1,   162,   371,   241,   372,   240,
1164 >     239,    -1,   372,   373,    -1,   373,    -1,   374,    -1,   375,
1165 >      -1,   376,    -1,     1,   239,    -1,   100,   242,   131,   239,
1166 >      -1,   225,   242,   131,   239,    -1,    -1,   164,   377,   242,
1167 >     378,   239,    -1,   378,   243,   379,    -1,   379,    -1,    74,
1168 >      -1,   224,    -1,   189,    -1,   208,    -1,   234,    -1,   211,
1169 >      -1,   149,    -1,   210,    -1,   196,    -1,   180,    -1,    -1,
1170 >     163,   381,   241,   382,   240,   239,    -1,   382,   383,    -1,
1171 >     383,    -1,   384,    -1,   385,    -1,     1,   239,    -1,   100,
1172 >     242,   131,   239,    -1,    -1,   164,   386,   242,   387,   239,
1173 >      -1,   387,   243,   388,    -1,   388,    -1,    74,    -1,   224,
1174 >      -1,   189,    -1,   208,    -1,   234,    -1,   211,    -1,   149,
1175 >      -1,   210,    -1,   196,    -1,   180,    -1,    -1,    25,   390,
1176 >     241,   391,   240,   239,    -1,   391,   392,    -1,   392,    -1,
1177 >     393,    -1,   394,    -1,   395,    -1,   396,    -1,   397,    -1,
1178 >     399,    -1,   398,    -1,   400,    -1,   405,    -1,   406,    -1,
1179 >     407,    -1,   404,    -1,     1,   239,    -1,   100,   242,   131,
1180 >     239,    -1,    66,   242,   131,   239,    -1,   232,   242,   131,
1181 >     239,    -1,   157,   242,   131,   239,    -1,     3,   242,   131,
1182 >     239,    -1,   130,   242,   110,   239,    -1,     6,   242,   194,
1183 >     239,    -1,     6,   242,   195,   239,    -1,    -1,    47,   401,
1184 >     242,   402,   239,    -1,   402,   243,   403,    -1,   403,    -1,
1185 >      10,    -1,    12,    -1,   219,    -1,    43,   242,   174,   239,
1186 >      -1,    68,   242,   131,   239,    -1,    80,   242,   131,   239,
1187 >      -1,    24,   242,   131,   239,    -1,    -1,    72,   409,   241,
1188 >     414,   240,   239,    -1,    -1,   164,   411,   242,   412,   239,
1189 >      -1,   412,   243,   413,    -1,   413,    -1,   136,    -1,   414,
1190 >     415,    -1,   415,    -1,   416,    -1,   417,    -1,   410,    -1,
1191 >       1,    -1,   225,   242,   131,   239,    -1,   133,   242,   131,
1192 >     239,    -1,    -1,    30,   419,   241,   420,   240,   239,    -1,
1193 >     420,   421,    -1,   421,    -1,   422,    -1,   423,    -1,     1,
1194 >      -1,    71,   242,   131,   239,    -1,   133,   242,   131,   239,
1195 >      -1,    45,   241,   425,   240,   239,    -1,   425,   426,    -1,
1196 >     426,    -1,   427,    -1,     1,    -1,    71,   242,   131,   239,
1197 >      -1,    -1,    49,   429,   241,   434,   240,   239,    -1,    -1,
1198 >     164,   431,   242,   432,   239,    -1,   432,   243,   433,    -1,
1199 >     433,    -1,   136,    -1,   434,   435,    -1,   435,    -1,   436,
1200 >      -1,   437,    -1,   430,    -1,     1,    -1,   100,   242,   131,
1201 >     239,    -1,   133,   242,   131,   239,    -1,    50,   241,   439,
1202 >     240,   239,    -1,   439,   440,    -1,   440,    -1,   448,    -1,
1203 >     449,    -1,   451,    -1,   452,    -1,   453,    -1,   454,    -1,
1204 >     455,    -1,   456,    -1,   457,    -1,   458,    -1,   447,    -1,
1205 >     460,    -1,   461,    -1,   462,    -1,   463,    -1,   478,    -1,
1206 >     465,    -1,   467,    -1,   469,    -1,   468,    -1,   472,    -1,
1207 >     466,    -1,   473,    -1,   474,    -1,   475,    -1,   476,    -1,
1208 >     477,    -1,   490,    -1,   479,    -1,   480,    -1,   481,    -1,
1209 >     486,    -1,   470,    -1,   471,    -1,   496,    -1,   494,    -1,
1210 >     495,    -1,   450,    -1,   497,    -1,   485,    -1,   459,    -1,
1211 >     483,    -1,   484,    -1,   446,    -1,   442,    -1,   443,    -1,
1212 >     444,    -1,   445,    -1,   464,    -1,   441,    -1,   482,    -1,
1213 >       1,    -1,    94,   242,   110,   239,    -1,    55,   242,   110,
1214 >     239,    -1,    56,   242,   110,   239,    -1,   231,   242,   174,
1215 >     239,    -1,   138,   242,   248,   239,    -1,   161,   242,   174,
1216 >     239,    -1,    73,   242,   248,   239,    -1,    65,   242,   174,
1217 >     239,    -1,    69,   242,   174,   239,    -1,    37,   242,   174,
1218 >     239,    -1,    46,   242,   174,   239,    -1,     8,   242,   174,
1219 >     239,    -1,    91,   242,   248,   239,    -1,    90,   242,   110,
1220 >     239,    -1,    84,   242,   110,   239,    -1,     9,   242,   248,
1221 >     239,    -1,   178,   242,   248,   239,    -1,   177,   242,   248,
1222 >     239,    -1,    60,   242,   110,   239,    -1,    77,   242,   174,
1223 >     239,    -1,    76,   242,   131,   239,    -1,    70,   242,   174,
1224 >     239,    -1,   236,   242,   174,   239,    -1,   169,   242,   174,
1225 >     239,    -1,   172,   242,   174,   239,    -1,   173,   242,   174,
1226 >     239,    -1,   171,   242,   174,   239,    -1,   171,   242,   175,
1227 >     239,    -1,   170,   242,   174,   239,    -1,   170,   242,   175,
1228 >     239,    -1,   123,   242,   248,   239,    -1,    19,   242,   248,
1229 >     239,    -1,   116,   242,   174,   239,    -1,   124,   242,   248,
1230 >     239,    -1,   165,   242,   174,   239,    -1,   108,   242,   174,
1231 >     239,    -1,   220,   242,   174,   239,    -1,   118,   242,   174,
1232 >     239,    -1,    95,   242,   131,   239,    -1,    38,   242,   110,
1233 >     239,    -1,    93,   242,   110,   239,    -1,   226,   242,   174,
1234 >     239,    -1,    40,   242,   131,   239,    -1,   216,   242,   131,
1235 >     239,    -1,   127,   242,   174,   239,    -1,    33,   242,   174,
1236 >     239,    -1,   218,   242,   248,   239,    -1,    -1,   120,   487,
1237 >     242,   488,   239,    -1,   488,   243,   489,    -1,   489,    -1,
1238 >     181,    -1,   184,    -1,   185,    -1,   187,    -1,   188,    -1,
1239 >     192,    -1,    61,    -1,   203,    -1,   198,    -1,   200,    -1,
1240 >     207,    -1,   204,    -1,   191,    -1,   199,    -1,   202,    -1,
1241 >     193,    -1,   213,    -1,   182,    -1,   183,    -1,   196,    -1,
1242 >      -1,   117,   491,   242,   492,   239,    -1,   492,   243,   493,
1243 >      -1,   493,    -1,   181,    -1,   184,    -1,   185,    -1,   187,
1244 >      -1,   188,    -1,   192,    -1,   203,    -1,    61,    -1,   198,
1245 >      -1,   200,    -1,   207,    -1,   204,    -1,   191,    -1,   199,
1246 >      -1,   202,    -1,   193,    -1,   213,    -1,   182,    -1,   183,
1247 >      -1,   196,    -1,    96,   242,   110,   239,    -1,    97,   242,
1248 >     110,   239,    -1,    27,   242,   110,   239,    -1,   186,   242,
1249 >     250,   239,    -1,    -1,    52,   499,   241,   500,   240,   239,
1250 >      -1,   500,   501,    -1,   501,    -1,   502,    -1,   503,    -1,
1251 >     504,    -1,   508,    -1,   509,    -1,   510,    -1,     1,    -1,
1252 >      42,   242,   174,   239,    -1,    39,   242,   248,   239,    -1,
1253 >      -1,    83,   505,   242,   506,   239,    -1,   506,   243,   507,
1254 >      -1,   507,    -1,   176,    -1,    11,    -1,   225,   242,   131,
1255 >     239,    -1,   100,   242,   131,   239,    -1,    -1,     4,   511,
1256 >     242,   512,   239,    -1,   512,   243,   513,    -1,   513,    -1,
1257 >     176,    -1,    11,    -1,    21,   241,   515,   240,   239,    -1,
1258 >     515,   516,    -1,   516,    -1,   519,    -1,   520,    -1,   521,
1259 >      -1,   522,    -1,   527,    -1,   523,    -1,   524,    -1,   525,
1260 >      -1,   526,    -1,   528,    -1,   529,    -1,   530,    -1,   518,
1261 >      -1,   531,    -1,   532,    -1,   533,    -1,   534,    -1,   517,
1262 >      -1,     1,    -1,    34,   242,   174,   239,    -1,   141,   242,
1263 >     174,   239,    -1,    36,   242,   174,   239,    -1,   227,   242,
1264 >     174,   239,    -1,   228,   242,   174,   239,    -1,   229,   242,
1265 >     174,   239,    -1,    78,   242,   248,   239,    -1,    79,   242,
1266 >     248,   239,    -1,    86,   242,   110,   239,    -1,   132,   242,
1267 >     174,   239,    -1,    85,   242,   110,   239,    -1,    29,   242,
1268 >     110,   239,    -1,    28,   242,   110,   239,    -1,   106,   242,
1269 >     174,   239,    -1,   107,   242,   174,   239,    -1,    13,   242,
1270 >     174,   239,    -1,   121,   242,   110,   239,    -1,   122,   242,
1271 >     248,   239,    -1,   158,   241,   536,   240,   239,    -1,   536,
1272 >     537,    -1,   537,    -1,   538,    -1,   539,    -1,   541,    -1,
1273 >     543,    -1,   542,    -1,   540,    -1,   544,    -1,     1,    -1,
1274 >      48,   242,   174,   239,    -1,    64,   242,   174,   239,    -1,
1275 >      62,   242,   131,   239,    -1,    81,   242,   248,   239,    -1,
1276 >      61,   242,   174,   239,    -1,    35,   242,   174,   239,    -1,
1277 >      63,   242,   174,   239,    -1
1278   };
1279  
1280   /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
1281   static const yytype_uint16 yyrline[] =
1282   {
1283 <       0,   396,   396,   397,   400,   401,   402,   403,   404,   405,
1284 <     406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
1285 <     416,   417,   418,   419,   420,   421,   425,   425,   426,   430,
1286 <     434,   438,   442,   446,   452,   452,   453,   454,   455,   456,
1287 <     463,   466,   466,   467,   467,   467,   469,   477,   486,   488,
1288 <     488,   489,   489,   490,   490,   491,   491,   492,   493,   493,
1289 <     494,   494,   495,   496,   500,   499,   518,   518,   519,   525,
1290 <     533,   567,   627,   641,   656,   665,   679,   688,   716,   746,
1291 <     769,   791,   793,   793,   794,   794,   795,   795,   797,   806,
1292 <     815,   828,   830,   831,   833,   833,   834,   835,   835,   836,
1293 <     836,   837,   837,   838,   838,   839,   840,   842,   846,   850,
1294 <     857,   864,   871,   878,   885,   892,   899,   906,   910,   914,
1295 <     918,   922,   926,   930,   936,   946,   945,  1039,  1039,  1040,
1296 <    1040,  1041,  1041,  1041,  1042,  1042,  1042,  1043,  1043,  1043,
1297 <    1045,  1057,  1069,  1103,  1115,  1126,  1168,  1178,  1177,  1183,
1298 <    1183,  1184,  1188,  1192,  1196,  1200,  1204,  1208,  1212,  1216,
1299 <    1220,  1224,  1228,  1232,  1236,  1240,  1244,  1248,  1252,  1256,
1300 <    1263,  1262,  1266,  1266,  1267,  1267,  1268,  1268,  1270,  1277,
1301 <    1284,  1291,  1298,  1305,  1312,  1319,  1326,  1333,  1340,  1347,
1302 <    1354,  1361,  1368,  1375,  1389,  1388,  1438,  1438,  1440,  1440,
1303 <    1441,  1442,  1442,  1443,  1444,  1445,  1446,  1447,  1448,  1449,
1304 <    1450,  1451,  1452,  1453,  1455,  1464,  1473,  1479,  1485,  1491,
1305 <    1497,  1503,  1509,  1515,  1521,  1527,  1533,  1539,  1549,  1548,
1306 <    1565,  1564,  1569,  1569,  1570,  1574,  1578,  1586,  1586,  1587,
1307 <    1587,  1587,  1587,  1587,  1589,  1589,  1591,  1591,  1593,  1607,
1308 <    1627,  1636,  1649,  1648,  1717,  1717,  1718,  1718,  1718,  1718,
1309 <    1719,  1719,  1719,  1720,  1720,  1722,  1759,  1772,  1781,  1793,
1310 <    1792,  1796,  1796,  1797,  1797,  1798,  1798,  1800,  1807,  1814,
1311 <    1821,  1828,  1835,  1842,  1849,  1856,  1863,  1873,  1892,  1902,
1312 <    1916,  1915,  1931,  1931,  1932,  1932,  1932,  1932,  1934,  1943,
1313 <    1958,  1972,  1971,  1987,  1987,  1988,  1988,  1988,  1988,  1990,
1314 <    1999,  2022,  2021,  2027,  2027,  2028,  2032,  2036,  2040,  2044,
1315 <    2048,  2052,  2056,  2060,  2064,  2068,  2078,  2077,  2094,  2094,
1316 <    2095,  2095,  2095,  2097,  2104,  2103,  2109,  2109,  2110,  2114,
1317 <    2118,  2122,  2126,  2130,  2134,  2138,  2142,  2146,  2150,  2160,
1318 <    2159,  2305,  2305,  2306,  2306,  2307,  2307,  2307,  2308,  2308,
1319 <    2309,  2309,  2309,  2310,  2310,  2310,  2311,  2311,  2312,  2312,
1320 <    2313,  2315,  2327,  2339,  2348,  2374,  2392,  2410,  2416,  2420,
1321 <    2428,  2438,  2437,  2441,  2441,  2442,  2442,  2443,  2443,  2445,
1322 <    2456,  2463,  2470,  2477,  2487,  2528,  2539,  2552,  2565,  2574,
1323 <    2610,  2609,  2673,  2672,  2676,  2676,  2677,  2683,  2683,  2684,
1324 <    2684,  2684,  2684,  2686,  2705,  2715,  2714,  2737,  2737,  2738,
1325 <    2738,  2738,  2740,  2746,  2755,  2757,  2757,  2758,  2758,  2760,
1326 <    2779,  2778,  2826,  2825,  2829,  2829,  2830,  2836,  2836,  2837,
1327 <    2837,  2837,  2837,  2839,  2845,  2854,  2857,  2857,  2858,  2858,
1328 <    2859,  2859,  2860,  2860,  2861,  2861,  2862,  2862,  2863,  2863,
1329 <    2864,  2864,  2865,  2865,  2866,  2866,  2867,  2867,  2868,  2868,
1330 <    2869,  2869,  2870,  2870,  2871,  2871,  2872,  2872,  2873,  2873,
1331 <    2874,  2874,  2875,  2875,  2876,  2876,  2877,  2877,  2878,  2879,
1332 <    2879,  2880,  2880,  2881,  2882,  2882,  2883,  2883,  2884,  2884,
1333 <    2885,  2885,  2886,  2887,  2890,  2895,  2900,  2905,  2910,  2915,
1334 <    2920,  2925,  2930,  2935,  2940,  2945,  2950,  2955,  2960,  2965,
1335 <    2970,  2975,  2980,  2986,  2997,  3002,  3011,  3016,  3021,  3026,
1336 <    3031,  3036,  3039,  3044,  3047,  3052,  3057,  3062,  3067,  3072,
1337 <    3077,  3082,  3087,  3092,  3103,  3108,  3113,  3118,  3127,  3159,
1338 <    3177,  3182,  3191,  3196,  3201,  3207,  3206,  3211,  3211,  3212,
1339 <    3215,  3218,  3221,  3224,  3227,  3230,  3233,  3236,  3239,  3242,
1340 <    3245,  3248,  3251,  3254,  3257,  3260,  3263,  3266,  3272,  3271,
1341 <    3276,  3276,  3277,  3280,  3283,  3286,  3289,  3292,  3295,  3298,
1342 <    3301,  3304,  3307,  3310,  3313,  3316,  3319,  3322,  3325,  3328,
1343 <    3331,  3336,  3341,  3346,  3351,  3361,  3360,  3384,  3384,  3385,
1344 <    3386,  3387,  3388,  3389,  3390,  3391,  3393,  3399,  3406,  3405,
1345 <    3410,  3410,  3411,  3415,  3421,  3455,  3465,  3464,  3514,  3514,
1346 <    3515,  3519,  3528,  3531,  3531,  3532,  3532,  3533,  3533,  3534,
1347 <    3534,  3535,  3535,  3536,  3536,  3537,  3538,  3538,  3539,  3539,
1348 <    3540,  3540,  3541,  3541,  3543,  3548,  3553,  3558,  3563,  3568,
1406 <    3573,  3578,  3583,  3588,  3593,  3598,  3603,  3608,  3613,  3618,
1407 <    3623,  3628,  3636,  3639,  3639,  3640,  3640,  3641,  3642,  3643,
1408 <    3643,  3644,  3645,  3647,  3653,  3659,  3668,  3682,  3688,  3694
1283 >       0,   374,   374,   375,   378,   379,   380,   381,   382,   383,
1284 >     384,   385,   386,   387,   388,   389,   390,   391,   392,   393,
1285 >     394,   395,   396,   397,   398,   399,   400,   404,   404,   405,
1286 >     409,   413,   417,   421,   425,   431,   431,   432,   433,   434,
1287 >     435,   442,   445,   445,   446,   446,   446,   448,   454,   461,
1288 >     463,   463,   464,   464,   465,   465,   466,   466,   467,   468,
1289 >     468,   469,   469,   470,   471,   475,   474,   493,   493,   494,
1290 >     500,   508,   542,   602,   617,   632,   641,   655,   664,   692,
1291 >     722,   745,   754,   756,   756,   757,   757,   758,   758,   760,
1292 >     769,   778,   790,   791,   791,   793,   793,   793,   794,   796,
1293 >     802,   809,   809,   819,   820,   822,   822,   823,   823,   825,
1294 >     830,   833,   839,   838,   844,   844,   845,   849,   853,   857,
1295 >     861,   865,   869,   880,   879,   977,   977,   978,   978,   978,
1296 >     979,   979,   979,   980,   980,   980,   982,   994,  1031,  1043,
1297 >    1054,  1096,  1106,  1105,  1111,  1111,  1112,  1116,  1120,  1124,
1298 >    1128,  1132,  1136,  1140,  1144,  1148,  1152,  1156,  1160,  1164,
1299 >    1168,  1172,  1176,  1180,  1184,  1188,  1195,  1194,  1200,  1200,
1300 >    1201,  1205,  1209,  1213,  1217,  1221,  1225,  1229,  1233,  1237,
1301 >    1241,  1245,  1249,  1253,  1257,  1261,  1265,  1269,  1280,  1279,
1302 >    1329,  1329,  1330,  1331,  1331,  1332,  1333,  1334,  1335,  1336,
1303 >    1337,  1338,  1339,  1340,  1341,  1342,  1344,  1353,  1359,  1365,
1304 >    1371,  1377,  1383,  1389,  1395,  1401,  1407,  1413,  1419,  1429,
1305 >    1428,  1445,  1444,  1449,  1449,  1450,  1454,  1458,  1466,  1466,
1306 >    1467,  1467,  1467,  1467,  1467,  1469,  1469,  1471,  1471,  1473,
1307 >    1487,  1507,  1516,  1529,  1528,  1597,  1597,  1598,  1598,  1598,
1308 >    1598,  1599,  1599,  1599,  1600,  1600,  1602,  1639,  1652,  1661,
1309 >    1673,  1672,  1676,  1676,  1677,  1681,  1685,  1689,  1693,  1697,
1310 >    1701,  1705,  1709,  1716,  1735,  1745,  1759,  1758,  1774,  1774,
1311 >    1775,  1775,  1775,  1775,  1777,  1786,  1801,  1814,  1816,  1816,
1312 >    1817,  1817,  1819,  1835,  1834,  1850,  1850,  1851,  1851,  1851,
1313 >    1851,  1853,  1862,  1885,  1884,  1890,  1890,  1891,  1895,  1899,
1314 >    1903,  1907,  1911,  1915,  1919,  1923,  1927,  1937,  1936,  1953,
1315 >    1953,  1954,  1954,  1954,  1956,  1963,  1962,  1968,  1968,  1969,
1316 >    1973,  1977,  1981,  1985,  1989,  1993,  1997,  2001,  2005,  2015,
1317 >    2014,  2143,  2143,  2144,  2144,  2144,  2145,  2145,  2146,  2146,
1318 >    2147,  2147,  2147,  2148,  2148,  2149,  2151,  2163,  2172,  2198,
1319 >    2216,  2234,  2240,  2244,  2253,  2252,  2256,  2256,  2257,  2261,
1320 >    2265,  2271,  2282,  2295,  2308,  2321,  2320,  2384,  2383,  2387,
1321 >    2387,  2388,  2394,  2394,  2395,  2395,  2395,  2395,  2397,  2416,
1322 >    2426,  2425,  2448,  2448,  2449,  2449,  2449,  2451,  2457,  2466,
1323 >    2468,  2468,  2469,  2469,  2471,  2490,  2489,  2537,  2536,  2540,
1324 >    2540,  2541,  2547,  2547,  2548,  2548,  2548,  2548,  2550,  2556,
1325 >    2565,  2568,  2568,  2569,  2569,  2570,  2570,  2571,  2571,  2572,
1326 >    2572,  2573,  2573,  2574,  2574,  2575,  2575,  2576,  2576,  2577,
1327 >    2577,  2578,  2578,  2579,  2579,  2580,  2580,  2581,  2581,  2582,
1328 >    2583,  2583,  2584,  2584,  2585,  2585,  2586,  2586,  2587,  2587,
1329 >    2588,  2589,  2590,  2590,  2591,  2592,  2593,  2593,  2594,  2594,
1330 >    2595,  2595,  2596,  2596,  2597,  2600,  2605,  2610,  2615,  2620,
1331 >    2625,  2630,  2635,  2640,  2645,  2650,  2655,  2660,  2665,  2670,
1332 >    2675,  2680,  2685,  2691,  2702,  2707,  2716,  2721,  2726,  2731,
1333 >    2736,  2741,  2744,  2749,  2752,  2757,  2762,  2767,  2772,  2777,
1334 >    2782,  2787,  2792,  2797,  2808,  2813,  2818,  2823,  2832,  2841,
1335 >    2846,  2851,  2857,  2856,  2861,  2861,  2862,  2865,  2868,  2871,
1336 >    2874,  2877,  2880,  2883,  2886,  2889,  2892,  2895,  2898,  2901,
1337 >    2904,  2907,  2910,  2913,  2916,  2919,  2925,  2924,  2929,  2929,
1338 >    2930,  2933,  2936,  2939,  2942,  2945,  2948,  2951,  2954,  2957,
1339 >    2960,  2963,  2966,  2969,  2972,  2975,  2978,  2981,  2984,  2987,
1340 >    2992,  2997,  3002,  3007,  3017,  3016,  3040,  3040,  3041,  3042,
1341 >    3043,  3044,  3045,  3046,  3047,  3049,  3055,  3062,  3061,  3066,
1342 >    3066,  3067,  3071,  3077,  3111,  3121,  3120,  3170,  3170,  3171,
1343 >    3175,  3184,  3187,  3187,  3188,  3188,  3189,  3189,  3190,  3190,
1344 >    3191,  3191,  3192,  3192,  3193,  3194,  3194,  3195,  3195,  3196,
1345 >    3196,  3197,  3197,  3199,  3204,  3209,  3214,  3219,  3224,  3229,
1346 >    3234,  3239,  3244,  3249,  3254,  3259,  3264,  3269,  3274,  3279,
1347 >    3284,  3292,  3295,  3295,  3296,  3296,  3297,  3298,  3299,  3299,
1348 >    3300,  3301,  3303,  3309,  3315,  3324,  3338,  3344,  3350
1349   };
1350   #endif
1351  
# Line 1417 | Line 1357 | static const char *const yytname[] =
1357    "$end", "error", "$undefined", "ACCEPT_PASSWORD", "ACTION", "ADMIN",
1358    "AFTYPE", "T_ALLOW", "ANTI_NICK_FLOOD", "ANTI_SPAM_EXIT_MESSAGE_TIME",
1359    "AUTOCONN", "T_BLOCK", "BURST_AWAY", "BURST_TOPICWHO", "BYTES", "KBYTES",
1360 <  "MBYTES", "GBYTES", "TBYTES", "CALLER_ID_WAIT", "CAN_FLOOD", "CAN_IDLE",
1361 <  "CHANNEL", "CIDR_BITLEN_IPV4", "CIDR_BITLEN_IPV6", "CIPHER_PREFERENCE",
1362 <  "CLASS", "COMPRESSED", "COMPRESSION_LEVEL", "CONNECT", "CONNECTFREQ",
1363 <  "CRYPTLINK", "DEFAULT_CIPHER_PREFERENCE", "DEFAULT_FLOODCOUNT",
1364 <  "DEFAULT_SPLIT_SERVER_COUNT", "DEFAULT_SPLIT_USER_COUNT", "DENY",
1365 <  "DESCRIPTION", "DIE", "DISABLE_AUTH", "DISABLE_FAKE_CHANNELS",
1366 <  "DISABLE_HIDDEN", "DISABLE_LOCAL_CHANNELS", "DISABLE_REMOTE_COMMANDS",
1367 <  "DOTS_IN_IDENT", "DURATION", "EGDPOOL_PATH", "EMAIL", "ENABLE",
1368 <  "ENCRYPTED", "EXCEED_LIMIT", "EXEMPT", "FAILED_OPER_NOTICE", "FAKENAME",
1369 <  "IRCD_FLAGS", "FLATTEN_LINKS", "FFAILED_OPERLOG", "FKILLLOG",
1370 <  "FKLINELOG", "FGLINELOG", "FIOERRLOG", "FOPERLOG", "FOPERSPYLOG",
1371 <  "FUSERLOG", "GECOS", "GENERAL", "GLINE", "GLINES", "GLINE_EXEMPT",
1432 <  "GLINE_LOG", "GLINE_TIME", "GLINE_MIN_CIDR", "GLINE_MIN_CIDR6",
1433 <  "GLOBAL_KILL", "IRCD_AUTH", "NEED_IDENT", "HAVENT_READ_CONF", "HIDDEN",
1434 <  "HIDDEN_ADMIN", "HIDDEN_NAME", "HIDDEN_OPER", "HIDE_SERVER_IPS",
1435 <  "HIDE_SERVERS", "HIDE_SPOOF_IPS", "HOST", "HUB", "HUB_MASK", "IDLETIME",
1360 >  "MBYTES", "GBYTES", "TBYTES", "CALLER_ID_WAIT", "CAN_FLOOD", "CHANNEL",
1361 >  "CIDR_BITLEN_IPV4", "CIDR_BITLEN_IPV6", "CLASS", "CONNECT",
1362 >  "CONNECTFREQ", "DEFAULT_FLOODCOUNT", "DEFAULT_SPLIT_SERVER_COUNT",
1363 >  "DEFAULT_SPLIT_USER_COUNT", "DENY", "DESCRIPTION", "DIE", "DISABLE_AUTH",
1364 >  "DISABLE_FAKE_CHANNELS", "DISABLE_HIDDEN", "DISABLE_LOCAL_CHANNELS",
1365 >  "DISABLE_REMOTE_COMMANDS", "DOTS_IN_IDENT", "DURATION", "EGDPOOL_PATH",
1366 >  "EMAIL", "ENABLE", "ENCRYPTED", "EXCEED_LIMIT", "EXEMPT",
1367 >  "FAILED_OPER_NOTICE", "IRCD_FLAGS", "FLATTEN_LINKS", "GECOS", "GENERAL",
1368 >  "GLINE", "GLINES", "GLINE_EXEMPT", "GLINE_TIME", "GLINE_MIN_CIDR",
1369 >  "GLINE_MIN_CIDR6", "GLOBAL_KILL", "IRCD_AUTH", "NEED_IDENT",
1370 >  "HAVENT_READ_CONF", "HIDDEN", "HIDDEN_NAME", "HIDE_SERVER_IPS",
1371 >  "HIDE_SERVERS", "HIDE_SPOOF_IPS", "HOST", "HUB", "HUB_MASK",
1372    "IGNORE_BOGUS_TS", "INVISIBLE_ON_CONNECT", "IP", "KILL",
1373    "KILL_CHASE_TIME_LIMIT", "KLINE", "KLINE_EXEMPT", "KLINE_REASON",
1374    "KLINE_WITH_REASON", "KNOCK_DELAY", "KNOCK_DELAY_CHANNEL", "LEAF_MASK",
1375 <  "LINKS_DELAY", "LISTEN", "T_LOG", "LOGGING", "LOG_LEVEL", "MAX_ACCEPT",
1376 <  "MAX_BANS", "MAX_CHANS_PER_USER", "MAX_GLOBAL", "MAX_IDENT", "MAX_LOCAL",
1375 >  "LINKS_DELAY", "LISTEN", "T_LOG", "MAX_ACCEPT", "MAX_BANS",
1376 >  "MAX_CHANS_PER_USER", "MAX_GLOBAL", "MAX_IDENT", "MAX_LOCAL",
1377    "MAX_NICK_CHANGES", "MAX_NICK_TIME", "MAX_NUMBER", "MAX_TARGETS",
1378    "MAX_WATCH", "MESSAGE_LOCALE", "MIN_NONWILDCARD",
1379    "MIN_NONWILDCARD_SIMPLE", "MODULE", "MODULES", "NAME", "NEED_PASSWORD",
1380    "NETWORK_DESC", "NETWORK_NAME", "NICK", "NICK_CHANGES",
1381    "NO_CREATE_ON_SPLIT", "NO_JOIN_ON_SPLIT", "NO_OPER_FLOOD", "NO_TILDE",
1382 <  "NOT", "NUMBER", "NUMBER_PER_IDENT", "NUMBER_PER_CIDR", "NUMBER_PER_IP",
1383 <  "NUMBER_PER_IP_GLOBAL", "OPERATOR", "OPERS_BYPASS_CALLERID", "OPER_LOG",
1382 >  "NUMBER", "NUMBER_PER_IDENT", "NUMBER_PER_CIDR", "NUMBER_PER_IP",
1383 >  "NUMBER_PER_IP_GLOBAL", "OPERATOR", "OPERS_BYPASS_CALLERID",
1384    "OPER_ONLY_UMODES", "OPER_PASS_RESV", "OPER_SPY_T", "OPER_UMODES",
1385    "JOIN_FLOOD_COUNT", "JOIN_FLOOD_TIME", "PACE_WAIT", "PACE_WAIT_SIMPLE",
1386    "PASSWORD", "PATH", "PING_COOKIE", "PING_TIME", "PING_WARNING", "PORT",
# Line 1454 | Line 1390 | static const char *const yytname[] =
1390    "RSA_PUBLIC_KEY_FILE", "SSL_CERTIFICATE_FILE", "T_SSL_CONNECTION_METHOD",
1391    "T_SSLV3", "T_TLSV1", "RESV", "RESV_EXEMPT", "SECONDS", "MINUTES",
1392    "HOURS", "DAYS", "WEEKS", "SENDQ", "SEND_PASSWORD", "SERVERHIDE",
1393 <  "SERVERINFO", "SERVLINK_PATH", "IRCD_SID", "TKLINE_EXPIRE_NOTICES",
1394 <  "T_SHARED", "T_CLUSTER", "TYPE", "SHORT_MOTD", "SILENT", "SPOOF",
1395 <  "SPOOF_NOTICE", "STATS_E_DISABLED", "STATS_I_OPER_ONLY",
1396 <  "STATS_K_OPER_ONLY", "STATS_O_OPER_ONLY", "STATS_P_OPER_ONLY", "TBOOL",
1397 <  "TMASKED", "T_REJECT", "TS_MAX_DELTA", "TS_WARN_DELTA", "TWODOTS",
1398 <  "T_ALL", "T_BOTS", "T_SOFTCALLERID", "T_CALLERID", "T_CCONN",
1399 <  "T_CCONN_FULL", "T_CLIENT_FLOOD", "T_DEAF", "T_DEBUG", "T_DRONE",
1393 >  "SERVERINFO", "IRCD_SID", "TKLINE_EXPIRE_NOTICES", "T_SHARED",
1394 >  "T_CLUSTER", "TYPE", "SHORT_MOTD", "SILENT", "SPOOF", "SPOOF_NOTICE",
1395 >  "STATS_E_DISABLED", "STATS_I_OPER_ONLY", "STATS_K_OPER_ONLY",
1396 >  "STATS_O_OPER_ONLY", "STATS_P_OPER_ONLY", "TBOOL", "TMASKED", "T_REJECT",
1397 >  "TS_MAX_DELTA", "TS_WARN_DELTA", "TWODOTS", "T_ALL", "T_BOTS",
1398 >  "T_SOFTCALLERID", "T_CALLERID", "T_CCONN", "T_CCONN_FULL",
1399 >  "T_CLIENT_FLOOD", "T_DEAF", "T_DEBUG", "T_DLINE", "T_DRONE",
1400    "T_EXTERNAL", "T_FULL", "T_INVISIBLE", "T_IPV4", "T_IPV6", "T_LOCOPS",
1401 <  "T_LOGPATH", "T_L_CRIT", "T_L_DEBUG", "T_L_ERROR", "T_L_INFO",
1402 <  "T_L_NOTICE", "T_L_TRACE", "T_L_WARN", "T_MAX_CLIENTS", "T_NCHANGE",
1403 <  "T_OPERWALL", "T_REJ", "T_SERVER", "T_SERVNOTICE", "T_SKILL", "T_SPY",
1404 <  "T_SSL", "T_UMODES", "T_UNAUTH", "T_UNRESV", "T_UNXLINE", "T_WALLOP",
1401 >  "T_MAX_CLIENTS", "T_NCHANGE", "T_OPERWALL", "T_REJ", "T_SERVER",
1402 >  "T_SERVNOTICE", "T_SKILL", "T_SPY", "T_SSL", "T_UMODES", "T_UNAUTH",
1403 >  "T_UNDLINE", "T_UNLIMITED", "T_UNRESV", "T_UNXLINE", "T_GLOBOPS",
1404 >  "T_WALLOP", "T_RESTART", "T_SERVICE", "T_SERVICES_NAME", "T_TIMESTAMP",
1405    "THROTTLE_TIME", "TOPICBURST", "TRUE_NO_OPER_FLOOD", "TKLINE", "TXLINE",
1406    "TRESV", "UNKLINE", "USER", "USE_EGD", "USE_EXCEPT", "USE_INVEX",
1407    "USE_KNOCK", "USE_LOGGING", "USE_WHOIS_ACTUALLY", "VHOST", "VHOST6",
1408 <  "XLINE", "WARN", "WARN_NO_NLINE", "';'", "'}'", "'{'", "'='", "','",
1409 <  "$accept", "conf", "conf_item", "timespec_", "timespec", "sizespec_",
1410 <  "sizespec", "modules_entry", "modules_items", "modules_item",
1411 <  "modules_module", "modules_path", "serverinfo_entry", "serverinfo_items",
1412 <  "serverinfo_item", "serverinfo_ssl_connection_method", "$@1",
1413 <  "method_types", "method_type_item", "serverinfo_ssl_certificate_file",
1408 >  "XLINE", "WARN", "WARN_NO_NLINE", "T_SIZE", "T_FILE", "';'", "'}'",
1409 >  "'{'", "'='", "','", "$accept", "conf", "conf_item", "timespec_",
1410 >  "timespec", "sizespec_", "sizespec", "modules_entry", "modules_items",
1411 >  "modules_item", "modules_module", "modules_path", "serverinfo_entry",
1412 >  "serverinfo_items", "serverinfo_item",
1413 >  "serverinfo_ssl_connection_method", "$@1", "method_types",
1414 >  "method_type_item", "serverinfo_ssl_certificate_file",
1415    "serverinfo_rsa_private_key_file", "serverinfo_name", "serverinfo_sid",
1416    "serverinfo_description", "serverinfo_network_name",
1417    "serverinfo_network_desc", "serverinfo_vhost", "serverinfo_vhost6",
1418    "serverinfo_max_clients", "serverinfo_hub", "admin_entry", "admin_items",
1419    "admin_item", "admin_name", "admin_email", "admin_description",
1420 <  "logging_entry", "logging_items", "logging_item", "logging_path",
1421 <  "logging_oper_log", "logging_fuserlog", "logging_ffailed_operlog",
1422 <  "logging_foperlog", "logging_foperspylog", "logging_fglinelog",
1423 <  "logging_fklinelog", "logging_ioerrlog", "logging_killlog",
1424 <  "logging_log_level", "logging_use_logging", "oper_entry", "$@2",
1425 <  "oper_name_b", "oper_items", "oper_item", "oper_name", "oper_name_t",
1426 <  "oper_user", "oper_password", "oper_encrypted",
1427 <  "oper_rsa_public_key_file", "oper_class", "oper_umodes", "$@3",
1428 <  "oper_umodes_items", "oper_umodes_item", "oper_flags", "$@4",
1429 <  "oper_flags_items", "oper_flags_item", "$@5", "$@6",
1430 <  "oper_flags_item_atom", "class_entry", "$@7", "class_name_b",
1431 <  "class_items", "class_item", "class_name", "class_name_t",
1432 <  "class_ping_time", "class_ping_warning", "class_number_per_ip",
1433 <  "class_connectfreq", "class_max_number", "class_max_global",
1434 <  "class_max_local", "class_max_ident", "class_sendq",
1435 <  "class_cidr_bitlen_ipv4", "class_cidr_bitlen_ipv6",
1436 <  "class_number_per_cidr", "listen_entry", "$@8", "listen_flags", "$@9",
1437 <  "listen_flags_items", "listen_flags_item", "listen_items", "listen_item",
1438 <  "listen_port", "$@10", "port_items", "port_item", "listen_address",
1439 <  "listen_host", "auth_entry", "$@11", "auth_items", "auth_item",
1440 <  "auth_user", "auth_passwd", "auth_class", "auth_encrypted", "auth_flags",
1441 <  "$@12", "auth_flags_items", "auth_flags_item", "$@13", "$@14",
1442 <  "auth_flags_item_atom", "auth_spoof", "auth_redir_serv",
1443 <  "auth_redir_port", "resv_entry", "$@15", "resv_items", "resv_item",
1444 <  "resv_creason", "resv_channel", "resv_nick", "shared_entry", "$@16",
1445 <  "shared_items", "shared_item", "shared_name", "shared_user",
1446 <  "shared_type", "$@17", "shared_types", "shared_type_item",
1447 <  "cluster_entry", "$@18", "cluster_items", "cluster_item", "cluster_name",
1511 <  "cluster_type", "$@19", "cluster_types", "cluster_type_item",
1512 <  "connect_entry", "$@20", "connect_name_b", "connect_items",
1513 <  "connect_item", "connect_name", "connect_name_t", "connect_host",
1420 >  "logging_entry", "logging_items", "logging_item", "logging_use_logging",
1421 >  "logging_timestamp", "logging_file_entry", "$@2", "logging_file_items",
1422 >  "logging_file_item", "logging_file_name", "logging_file_size",
1423 >  "logging_file_type", "$@3", "logging_file_type_items",
1424 >  "logging_file_type_item", "oper_entry", "$@4", "oper_items", "oper_item",
1425 >  "oper_name", "oper_user", "oper_password", "oper_encrypted",
1426 >  "oper_rsa_public_key_file", "oper_class", "oper_umodes", "$@5",
1427 >  "oper_umodes_items", "oper_umodes_item", "oper_flags", "$@6",
1428 >  "oper_flags_items", "oper_flags_item", "class_entry", "$@7",
1429 >  "class_items", "class_item", "class_name", "class_ping_time",
1430 >  "class_ping_warning", "class_number_per_ip", "class_connectfreq",
1431 >  "class_max_number", "class_max_global", "class_max_local",
1432 >  "class_max_ident", "class_sendq", "class_cidr_bitlen_ipv4",
1433 >  "class_cidr_bitlen_ipv6", "class_number_per_cidr", "listen_entry", "$@8",
1434 >  "listen_flags", "$@9", "listen_flags_items", "listen_flags_item",
1435 >  "listen_items", "listen_item", "listen_port", "$@10", "port_items",
1436 >  "port_item", "listen_address", "listen_host", "auth_entry", "$@11",
1437 >  "auth_items", "auth_item", "auth_user", "auth_passwd", "auth_class",
1438 >  "auth_encrypted", "auth_flags", "$@12", "auth_flags_items",
1439 >  "auth_flags_item", "auth_spoof", "auth_redir_serv", "auth_redir_port",
1440 >  "resv_entry", "$@13", "resv_items", "resv_item", "resv_creason",
1441 >  "resv_channel", "resv_nick", "service_entry", "service_items",
1442 >  "service_item", "service_name", "shared_entry", "$@14", "shared_items",
1443 >  "shared_item", "shared_name", "shared_user", "shared_type", "$@15",
1444 >  "shared_types", "shared_type_item", "cluster_entry", "$@16",
1445 >  "cluster_items", "cluster_item", "cluster_name", "cluster_type", "$@17",
1446 >  "cluster_types", "cluster_type_item", "connect_entry", "$@18",
1447 >  "connect_items", "connect_item", "connect_name", "connect_host",
1448    "connect_vhost", "connect_send_password", "connect_accept_password",
1449 <  "connect_port", "connect_aftype", "connect_fakename", "connect_flags",
1450 <  "$@21", "connect_flags_items", "connect_flags_item", "$@22", "$@23",
1451 <  "connect_flags_item_atom", "connect_rsa_public_key_file",
1452 <  "connect_encrypted", "connect_hub_mask", "connect_leaf_mask",
1453 <  "connect_class", "connect_cipher_preference", "kill_entry", "$@24",
1454 <  "kill_type", "$@25", "kill_type_items", "kill_type_item", "kill_items",
1455 <  "kill_item", "kill_user", "kill_reason", "deny_entry", "$@26",
1456 <  "deny_items", "deny_item", "deny_ip", "deny_reason", "exempt_entry",
1457 <  "exempt_items", "exempt_item", "exempt_ip", "gecos_entry", "$@27",
1458 <  "gecos_flags", "$@28", "gecos_flags_items", "gecos_flags_item",
1459 <  "gecos_items", "gecos_item", "gecos_name", "gecos_reason",
1460 <  "general_entry", "general_items", "general_item", "general_max_watch",
1461 <  "general_gline_min_cidr", "general_gline_min_cidr6",
1462 <  "general_burst_away", "general_use_whois_actually",
1463 <  "general_reject_hold_time", "general_tkline_expire_notices",
1464 <  "general_kill_chase_time_limit", "general_hide_spoof_ips",
1465 <  "general_ignore_bogus_ts", "general_disable_remote_commands",
1466 <  "general_failed_oper_notice", "general_anti_nick_flood",
1467 <  "general_max_nick_time", "general_max_nick_changes",
1468 <  "general_max_accept", "general_anti_spam_exit_message_time",
1469 <  "general_ts_warn_delta", "general_ts_max_delta",
1470 <  "general_havent_read_conf", "general_kline_with_reason",
1471 <  "general_kline_reason", "general_invisible_on_connect",
1472 <  "general_warn_no_nline", "general_stats_e_disabled",
1473 <  "general_stats_o_oper_only", "general_stats_P_oper_only",
1474 <  "general_stats_k_oper_only", "general_stats_i_oper_only",
1475 <  "general_pace_wait", "general_caller_id_wait",
1476 <  "general_opers_bypass_callerid", "general_pace_wait_simple",
1477 <  "general_short_motd", "general_no_oper_flood",
1478 <  "general_true_no_oper_flood", "general_oper_pass_resv",
1545 <  "general_message_locale", "general_idletime", "general_dots_in_ident",
1546 <  "general_max_targets", "general_servlink_path",
1547 <  "general_default_cipher_preference", "general_compression_level",
1548 <  "general_use_egd", "general_egdpool_path", "general_ping_cookie",
1449 >  "connect_port", "connect_aftype", "connect_flags", "$@19",
1450 >  "connect_flags_items", "connect_flags_item", "connect_encrypted",
1451 >  "connect_hub_mask", "connect_leaf_mask", "connect_class", "kill_entry",
1452 >  "$@20", "kill_type", "$@21", "kill_type_items", "kill_type_item",
1453 >  "kill_items", "kill_item", "kill_user", "kill_reason", "deny_entry",
1454 >  "$@22", "deny_items", "deny_item", "deny_ip", "deny_reason",
1455 >  "exempt_entry", "exempt_items", "exempt_item", "exempt_ip",
1456 >  "gecos_entry", "$@23", "gecos_flags", "$@24", "gecos_flags_items",
1457 >  "gecos_flags_item", "gecos_items", "gecos_item", "gecos_name",
1458 >  "gecos_reason", "general_entry", "general_items", "general_item",
1459 >  "general_max_watch", "general_gline_min_cidr", "general_gline_min_cidr6",
1460 >  "general_use_whois_actually", "general_reject_hold_time",
1461 >  "general_tkline_expire_notices", "general_kill_chase_time_limit",
1462 >  "general_hide_spoof_ips", "general_ignore_bogus_ts",
1463 >  "general_disable_remote_commands", "general_failed_oper_notice",
1464 >  "general_anti_nick_flood", "general_max_nick_time",
1465 >  "general_max_nick_changes", "general_max_accept",
1466 >  "general_anti_spam_exit_message_time", "general_ts_warn_delta",
1467 >  "general_ts_max_delta", "general_havent_read_conf",
1468 >  "general_kline_with_reason", "general_kline_reason",
1469 >  "general_invisible_on_connect", "general_warn_no_nline",
1470 >  "general_stats_e_disabled", "general_stats_o_oper_only",
1471 >  "general_stats_P_oper_only", "general_stats_k_oper_only",
1472 >  "general_stats_i_oper_only", "general_pace_wait",
1473 >  "general_caller_id_wait", "general_opers_bypass_callerid",
1474 >  "general_pace_wait_simple", "general_short_motd",
1475 >  "general_no_oper_flood", "general_true_no_oper_flood",
1476 >  "general_oper_pass_resv", "general_message_locale",
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 <  "$@29", "umode_oitems", "umode_oitem", "general_oper_only_umodes",
1481 <  "$@30", "umode_items", "umode_item", "general_min_nonwildcard",
1480 >  "$@25", "umode_oitems", "umode_oitem", "general_oper_only_umodes",
1481 >  "$@26", "umode_items", "umode_item", "general_min_nonwildcard",
1482    "general_min_nonwildcard_simple", "general_default_floodcount",
1483 <  "general_client_flood", "gline_entry", "$@31", "gline_items",
1484 <  "gline_item", "gline_enable", "gline_duration", "gline_logging", "$@32",
1483 >  "general_client_flood", "gline_entry", "$@27", "gline_items",
1484 >  "gline_item", "gline_enable", "gline_duration", "gline_logging", "$@28",
1485    "gline_logging_types", "gline_logging_type_item", "gline_user",
1486 <  "gline_server", "gline_action", "$@33", "gdeny_types", "gdeny_type_item",
1486 >  "gline_server", "gline_action", "$@29", "gdeny_types", "gdeny_type_item",
1487    "channel_entry", "channel_items", "channel_item",
1488    "channel_disable_fake_channels", "channel_restrict_channels",
1489    "channel_disable_local_channels", "channel_use_except",
# Line 1598 | Line 1528 | static const yytype_uint16 yytoknum[] =
1528       455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
1529       465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
1530       475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
1531 <     485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
1532 <     495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
1603 <     505,   506,   507,   508,   509,   510,   511,   512,   513,   514,
1604 <     515,    59,   125,   123,    61,    44
1531 >     485,   486,   487,   488,   489,   490,   491,   492,   493,    59,
1532 >     125,   123,    61,    44
1533   };
1534   # endif
1535  
1536   /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
1537   static const yytype_uint16 yyr1[] =
1538   {
1539 <       0,   266,   267,   267,   268,   268,   268,   268,   268,   268,
1540 <     268,   268,   268,   268,   268,   268,   268,   268,   268,   268,
1541 <     268,   268,   268,   268,   268,   268,   269,   269,   270,   270,
1542 <     270,   270,   270,   270,   271,   271,   272,   272,   272,   272,
1543 <     273,   274,   274,   275,   275,   275,   276,   277,   278,   279,
1544 <     279,   280,   280,   280,   280,   280,   280,   280,   280,   280,
1545 <     280,   280,   280,   280,   282,   281,   283,   283,   284,   284,
1546 <     285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
1547 <     295,   296,   297,   297,   298,   298,   298,   298,   299,   300,
1548 <     301,   302,   303,   303,   304,   304,   304,   304,   304,   304,
1549 <     304,   304,   304,   304,   304,   304,   304,   305,   306,   307,
1550 <     308,   309,   310,   311,   312,   313,   314,   315,   315,   315,
1551 <     315,   315,   315,   315,   316,   318,   317,   319,   319,   320,
1552 <     320,   321,   321,   321,   321,   321,   321,   321,   321,   321,
1553 <     322,   323,   324,   325,   326,   327,   328,   330,   329,   331,
1554 <     331,   332,   332,   332,   332,   332,   332,   332,   332,   332,
1555 <     332,   332,   332,   332,   332,   332,   332,   332,   332,   332,
1556 <     334,   333,   335,   335,   337,   336,   338,   336,   339,   339,
1557 <     339,   339,   339,   339,   339,   339,   339,   339,   339,   339,
1558 <     339,   339,   339,   339,   341,   340,   342,   342,   343,   343,
1559 <     344,   344,   344,   344,   344,   344,   344,   344,   344,   344,
1560 <     344,   344,   344,   344,   345,   346,   347,   348,   349,   350,
1561 <     351,   352,   353,   354,   355,   356,   357,   358,   360,   359,
1562 <     362,   361,   363,   363,   364,   364,   364,   365,   365,   366,
1563 <     366,   366,   366,   366,   368,   367,   369,   369,   370,   370,
1564 <     371,   372,   374,   373,   375,   375,   376,   376,   376,   376,
1565 <     376,   376,   376,   376,   376,   377,   378,   379,   380,   382,
1566 <     381,   383,   383,   385,   384,   386,   384,   387,   387,   387,
1567 <     387,   387,   387,   387,   387,   387,   387,   388,   389,   390,
1568 <     392,   391,   393,   393,   394,   394,   394,   394,   395,   396,
1569 <     397,   399,   398,   400,   400,   401,   401,   401,   401,   402,
1570 <     403,   405,   404,   406,   406,   407,   407,   407,   407,   407,
1571 <     407,   407,   407,   407,   407,   407,   409,   408,   410,   410,
1572 <     411,   411,   411,   412,   414,   413,   415,   415,   416,   416,
1573 <     416,   416,   416,   416,   416,   416,   416,   416,   416,   418,
1574 <     417,   419,   419,   420,   420,   421,   421,   421,   421,   421,
1575 <     421,   421,   421,   421,   421,   421,   421,   421,   421,   421,
1576 <     421,   422,   423,   424,   425,   426,   427,   428,   429,   429,
1577 <     430,   432,   431,   433,   433,   435,   434,   436,   434,   437,
1578 <     437,   437,   437,   437,   438,   439,   440,   441,   442,   443,
1579 <     445,   444,   447,   446,   448,   448,   449,   450,   450,   451,
1580 <     451,   451,   451,   452,   453,   455,   454,   456,   456,   457,
1581 <     457,   457,   458,   459,   460,   461,   461,   462,   462,   463,
1582 <     465,   464,   467,   466,   468,   468,   469,   470,   470,   471,
1583 <     471,   471,   471,   472,   473,   474,   475,   475,   476,   476,
1584 <     476,   476,   476,   476,   476,   476,   476,   476,   476,   476,
1585 <     476,   476,   476,   476,   476,   476,   476,   476,   476,   476,
1586 <     476,   476,   476,   476,   476,   476,   476,   476,   476,   476,
1587 <     476,   476,   476,   476,   476,   476,   476,   476,   476,   476,
1588 <     476,   476,   476,   476,   476,   476,   476,   476,   476,   476,
1589 <     476,   476,   476,   476,   477,   478,   479,   480,   481,   482,
1590 <     483,   484,   485,   486,   487,   488,   489,   490,   491,   492,
1591 <     493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
1592 <     503,   504,   504,   505,   505,   506,   507,   508,   509,   510,
1593 <     511,   512,   513,   514,   515,   516,   517,   518,   519,   520,
1594 <     521,   522,   523,   524,   525,   527,   526,   528,   528,   529,
1595 <     529,   529,   529,   529,   529,   529,   529,   529,   529,   529,
1596 <     529,   529,   529,   529,   529,   529,   529,   529,   531,   530,
1597 <     532,   532,   533,   533,   533,   533,   533,   533,   533,   533,
1598 <     533,   533,   533,   533,   533,   533,   533,   533,   533,   533,
1599 <     533,   534,   535,   536,   537,   539,   538,   540,   540,   541,
1600 <     541,   541,   541,   541,   541,   541,   542,   543,   545,   544,
1601 <     546,   546,   547,   547,   548,   549,   551,   550,   552,   552,
1602 <     553,   553,   554,   555,   555,   556,   556,   556,   556,   556,
1603 <     556,   556,   556,   556,   556,   556,   556,   556,   556,   556,
1604 <     556,   556,   556,   556,   557,   558,   559,   560,   561,   562,
1677 <     563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
1678 <     573,   574,   575,   576,   576,   577,   577,   577,   577,   577,
1679 <     577,   577,   577,   578,   579,   580,   581,   582,   583,   584
1539 >       0,   244,   245,   245,   246,   246,   246,   246,   246,   246,
1540 >     246,   246,   246,   246,   246,   246,   246,   246,   246,   246,
1541 >     246,   246,   246,   246,   246,   246,   246,   247,   247,   248,
1542 >     248,   248,   248,   248,   248,   249,   249,   250,   250,   250,
1543 >     250,   251,   252,   252,   253,   253,   253,   254,   255,   256,
1544 >     257,   257,   258,   258,   258,   258,   258,   258,   258,   258,
1545 >     258,   258,   258,   258,   258,   260,   259,   261,   261,   262,
1546 >     262,   263,   264,   265,   266,   267,   268,   269,   270,   271,
1547 >     272,   273,   274,   275,   275,   276,   276,   276,   276,   277,
1548 >     278,   279,   280,   281,   281,   282,   282,   282,   282,   283,
1549 >     284,   286,   285,   287,   287,   288,   288,   288,   288,   289,
1550 >     290,   290,   292,   291,   293,   293,   294,   294,   294,   294,
1551 >     294,   294,   294,   296,   295,   297,   297,   298,   298,   298,
1552 >     298,   298,   298,   298,   298,   298,   299,   300,   301,   302,
1553 >     303,   304,   306,   305,   307,   307,   308,   308,   308,   308,
1554 >     308,   308,   308,   308,   308,   308,   308,   308,   308,   308,
1555 >     308,   308,   308,   308,   308,   308,   310,   309,   311,   311,
1556 >     312,   312,   312,   312,   312,   312,   312,   312,   312,   312,
1557 >     312,   312,   312,   312,   312,   312,   312,   312,   314,   313,
1558 >     315,   315,   316,   316,   316,   316,   316,   316,   316,   316,
1559 >     316,   316,   316,   316,   316,   316,   317,   318,   319,   320,
1560 >     321,   322,   323,   324,   325,   326,   327,   328,   329,   331,
1561 >     330,   333,   332,   334,   334,   335,   335,   335,   336,   336,
1562 >     337,   337,   337,   337,   337,   339,   338,   340,   340,   341,
1563 >     341,   342,   343,   345,   344,   346,   346,   347,   347,   347,
1564 >     347,   347,   347,   347,   347,   347,   348,   349,   350,   351,
1565 >     353,   352,   354,   354,   355,   355,   355,   355,   355,   355,
1566 >     355,   355,   355,   356,   357,   358,   360,   359,   361,   361,
1567 >     362,   362,   362,   362,   363,   364,   365,   366,   367,   367,
1568 >     368,   368,   369,   371,   370,   372,   372,   373,   373,   373,
1569 >     373,   374,   375,   377,   376,   378,   378,   379,   379,   379,
1570 >     379,   379,   379,   379,   379,   379,   379,   381,   380,   382,
1571 >     382,   383,   383,   383,   384,   386,   385,   387,   387,   388,
1572 >     388,   388,   388,   388,   388,   388,   388,   388,   388,   390,
1573 >     389,   391,   391,   392,   392,   392,   392,   392,   392,   392,
1574 >     392,   392,   392,   392,   392,   392,   393,   394,   395,   396,
1575 >     397,   398,   399,   399,   401,   400,   402,   402,   403,   403,
1576 >     403,   404,   405,   406,   407,   409,   408,   411,   410,   412,
1577 >     412,   413,   414,   414,   415,   415,   415,   415,   416,   417,
1578 >     419,   418,   420,   420,   421,   421,   421,   422,   423,   424,
1579 >     425,   425,   426,   426,   427,   429,   428,   431,   430,   432,
1580 >     432,   433,   434,   434,   435,   435,   435,   435,   436,   437,
1581 >     438,   439,   439,   440,   440,   440,   440,   440,   440,   440,
1582 >     440,   440,   440,   440,   440,   440,   440,   440,   440,   440,
1583 >     440,   440,   440,   440,   440,   440,   440,   440,   440,   440,
1584 >     440,   440,   440,   440,   440,   440,   440,   440,   440,   440,
1585 >     440,   440,   440,   440,   440,   440,   440,   440,   440,   440,
1586 >     440,   440,   440,   440,   440,   441,   442,   443,   444,   445,
1587 >     446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
1588 >     456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
1589 >     466,   467,   467,   468,   468,   469,   470,   471,   472,   473,
1590 >     474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
1591 >     484,   485,   487,   486,   488,   488,   489,   489,   489,   489,
1592 >     489,   489,   489,   489,   489,   489,   489,   489,   489,   489,
1593 >     489,   489,   489,   489,   489,   489,   491,   490,   492,   492,
1594 >     493,   493,   493,   493,   493,   493,   493,   493,   493,   493,
1595 >     493,   493,   493,   493,   493,   493,   493,   493,   493,   493,
1596 >     494,   495,   496,   497,   499,   498,   500,   500,   501,   501,
1597 >     501,   501,   501,   501,   501,   502,   503,   505,   504,   506,
1598 >     506,   507,   507,   508,   509,   511,   510,   512,   512,   513,
1599 >     513,   514,   515,   515,   516,   516,   516,   516,   516,   516,
1600 >     516,   516,   516,   516,   516,   516,   516,   516,   516,   516,
1601 >     516,   516,   516,   517,   518,   519,   520,   521,   522,   523,
1602 >     524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
1603 >     534,   535,   536,   536,   537,   537,   537,   537,   537,   537,
1604 >     537,   537,   538,   539,   540,   541,   542,   543,   544
1605   };
1606  
1607   /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
# Line 1684 | Line 1609 | static const yytype_uint8 yyr2[] =
1609   {
1610         0,     2,     0,     2,     1,     1,     1,     1,     1,     1,
1611         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1612 <       1,     1,     1,     1,     2,     2,     0,     1,     2,     3,
1613 <       3,     3,     3,     3,     0,     1,     2,     3,     3,     3,
1614 <       5,     2,     1,     1,     1,     2,     4,     4,     5,     2,
1615 <       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1616 <       1,     1,     1,     2,     0,     5,     3,     1,     1,     1,
1617 <       4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1618 <       4,     5,     2,     1,     1,     1,     1,     2,     4,     4,
1619 <       4,     5,     2,     1,     1,     1,     1,     1,     1,     1,
1695 <       1,     1,     1,     1,     1,     1,     2,     4,     4,     4,
1696 <       4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1697 <       4,     4,     4,     4,     4,     0,     7,     0,     1,     2,
1698 <       1,     1,     1,     1,     1,     1,     1,     1,     1,     2,
1699 <       4,     1,     4,     4,     4,     4,     4,     0,     5,     3,
1700 <       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1701 <       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1702 <       0,     5,     3,     1,     0,     3,     0,     2,     1,     1,
1703 <       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1704 <       1,     1,     1,     1,     0,     7,     0,     1,     2,     1,
1705 <       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1706 <       1,     1,     1,     2,     4,     1,     4,     4,     4,     4,
1707 <       4,     4,     4,     4,     4,     4,     4,     4,     0,     6,
1708 <       0,     5,     3,     1,     1,     1,     1,     2,     1,     1,
1709 <       1,     1,     1,     2,     0,     5,     3,     1,     1,     3,
1710 <       4,     4,     0,     6,     2,     1,     1,     1,     1,     1,
1711 <       1,     1,     1,     1,     2,     4,     4,     4,     4,     0,
1712 <       5,     3,     1,     0,     3,     0,     2,     1,     1,     1,
1713 <       1,     1,     1,     1,     1,     1,     1,     4,     4,     4,
1714 <       0,     6,     2,     1,     1,     1,     1,     2,     4,     4,
1612 >       1,     1,     1,     1,     1,     2,     2,     0,     1,     2,
1613 >       3,     3,     3,     3,     3,     0,     1,     2,     3,     3,
1614 >       3,     5,     2,     1,     1,     1,     2,     4,     4,     5,
1615 >       2,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1616 >       1,     1,     1,     1,     2,     0,     5,     3,     1,     1,
1617 >       1,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1618 >       4,     4,     5,     2,     1,     1,     1,     1,     2,     4,
1619 >       4,     4,     5,     2,     1,     1,     1,     1,     2,     4,
1620         4,     0,     6,     2,     1,     1,     1,     1,     2,     4,
1621 <       4,     0,     5,     3,     1,     1,     1,     1,     1,     1,
1622 <       1,     1,     1,     1,     1,     1,     0,     6,     2,     1,
1623 <       1,     1,     2,     4,     0,     5,     3,     1,     1,     1,
1624 <       1,     1,     1,     1,     1,     1,     1,     1,     1,     0,
1720 <       7,     0,     1,     2,     1,     1,     1,     1,     1,     1,
1621 >       4,     4,     0,     5,     3,     1,     1,     1,     1,     1,
1622 >       1,     1,     1,     0,     6,     2,     1,     1,     1,     1,
1623 >       1,     1,     1,     1,     1,     2,     4,     4,     4,     4,
1624 >       4,     4,     0,     5,     3,     1,     1,     1,     1,     1,
1625         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1626 <       2,     4,     1,     4,     4,     4,     4,     4,     4,     4,
1723 <       4,     0,     5,     3,     1,     0,     3,     0,     2,     1,
1724 <       1,     1,     1,     1,     4,     4,     4,     4,     4,     4,
1725 <       0,     6,     0,     5,     3,     1,     1,     2,     1,     1,
1726 <       1,     1,     1,     4,     4,     0,     6,     2,     1,     1,
1727 <       1,     1,     4,     4,     5,     2,     1,     1,     1,     4,
1728 <       0,     6,     0,     5,     3,     1,     1,     2,     1,     1,
1729 <       1,     1,     1,     4,     4,     5,     2,     1,     1,     1,
1626 >       1,     1,     1,     1,     1,     1,     0,     5,     3,     1,
1627         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1628 +       1,     1,     1,     1,     1,     1,     1,     1,     0,     6,
1629 +       2,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1630 +       1,     1,     1,     1,     1,     2,     4,     4,     4,     4,
1631 +       4,     4,     4,     4,     4,     4,     4,     4,     4,     0,
1632 +       6,     0,     5,     3,     1,     1,     1,     1,     2,     1,
1633 +       1,     1,     1,     1,     2,     0,     5,     3,     1,     1,
1634 +       3,     4,     4,     0,     6,     2,     1,     1,     1,     1,
1635 +       1,     1,     1,     1,     1,     2,     4,     4,     4,     4,
1636 +       0,     5,     3,     1,     1,     1,     1,     1,     1,     1,
1637 +       1,     1,     1,     4,     4,     4,     0,     6,     2,     1,
1638 +       1,     1,     1,     2,     4,     4,     4,     5,     2,     1,
1639 +       1,     1,     4,     0,     6,     2,     1,     1,     1,     1,
1640 +       2,     4,     4,     0,     5,     3,     1,     1,     1,     1,
1641 +       1,     1,     1,     1,     1,     1,     1,     0,     6,     2,
1642 +       1,     1,     1,     2,     4,     0,     5,     3,     1,     1,
1643 +       1,     1,     1,     1,     1,     1,     1,     1,     1,     0,
1644 +       6,     2,     1,     1,     1,     1,     1,     1,     1,     1,
1645 +       1,     1,     1,     1,     1,     2,     4,     4,     4,     4,
1646 +       4,     4,     4,     4,     0,     5,     3,     1,     1,     1,
1647 +       1,     4,     4,     4,     4,     0,     6,     0,     5,     3,
1648 +       1,     1,     2,     1,     1,     1,     1,     1,     4,     4,
1649 +       0,     6,     2,     1,     1,     1,     1,     4,     4,     5,
1650 +       2,     1,     1,     1,     4,     0,     6,     0,     5,     3,
1651 +       1,     1,     2,     1,     1,     1,     1,     1,     4,     4,
1652 +       5,     2,     1,     1,     1,     1,     1,     1,     1,     1,
1653         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1654         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1655         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1656         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1657 <       1,     1,     1,     1,     4,     4,     4,     4,     4,     4,
1657 >       1,     1,     1,     1,     1,     4,     4,     4,     4,     4,
1658         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1659         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1660         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1661         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1662 <       4,     4,     4,     4,     4,     0,     5,     3,     1,     1,
1662 >       4,     4,     0,     5,     3,     1,     1,     1,     1,     1,
1663         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1664 <       1,     1,     1,     1,     1,     1,     1,     1,     0,     5,
1743 <       3,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1664 >       1,     1,     1,     1,     1,     1,     0,     5,     3,     1,
1665         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1745       1,     4,     4,     4,     4,     0,     6,     2,     1,     1,
1746       1,     1,     1,     1,     1,     1,     4,     4,     0,     5,
1747       3,     1,     1,     1,     4,     4,     0,     5,     3,     1,
1748       1,     1,     5,     2,     1,     1,     1,     1,     1,     1,
1666         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1667 <       1,     1,     1,     1,     4,     4,     4,     4,     4,     4,
1667 >       4,     4,     4,     4,     0,     6,     2,     1,     1,     1,
1668 >       1,     1,     1,     1,     1,     4,     4,     0,     5,     3,
1669 >       1,     1,     1,     4,     4,     0,     5,     3,     1,     1,
1670 >       1,     5,     2,     1,     1,     1,     1,     1,     1,     1,
1671 >       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1672 >       1,     1,     1,     4,     4,     4,     4,     4,     4,     4,
1673         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1674 <       4,     4,     5,     2,     1,     1,     1,     1,     1,     1,
1675 <       1,     1,     1,     4,     4,     4,     4,     4,     4,     4
1674 >       4,     5,     2,     1,     1,     1,     1,     1,     1,     1,
1675 >       1,     1,     4,     4,     4,     4,     4,     4,     4
1676   };
1677  
1678 < /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
1679 <   STATE-NUM when YYTABLE doesn't specify something else to do.  Zero
1678 > /* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM.
1679 >   Performed when YYTABLE doesn't specify something else to do.  Zero
1680     means the default is an error.  */
1681   static const yytype_uint16 yydefact[] =
1682   {
1683 <       2,     0,     1,     0,     0,     0,   194,   349,   415,     0,
1684 <     430,     0,   605,   252,   400,   228,     0,     0,   125,   290,
1685 <       0,     0,   301,   326,     3,    23,    11,     4,     5,     6,
1686 <       8,     9,    10,    13,    14,    15,    16,    17,    18,    19,
1687 <      22,    20,    21,     7,    12,    24,    25,     0,     0,   196,
1766 <     351,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1767 <       0,   127,     0,     0,     0,     0,     0,     0,     0,     0,
1768 <       0,     0,    83,    84,    86,    85,   653,     0,     0,     0,
1683 >       2,     0,     1,     0,     0,     0,   188,   339,   390,     0,
1684 >     405,     0,   574,   243,   375,   219,     0,     0,   123,   276,
1685 >       0,     0,   293,   317,     0,     3,    24,    11,     4,     5,
1686 >       6,     8,     9,    10,    13,    14,    15,    16,    17,    18,
1687 >      19,    20,    23,    21,    22,     7,    12,    25,    26,     0,
1688         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1770       0,     0,     0,     0,     0,     0,   634,   652,   647,   635,
1771     636,   637,   638,   640,   641,   642,   643,   639,   644,   645,
1772     646,   648,   649,   650,   651,   215,     0,   197,   372,     0,
1773     352,     0,   428,     0,     0,   426,   427,     0,   503,     0,
1689         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1690 +       0,     0,     0,     0,     0,    84,    85,    87,    86,   622,
1691         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1692 +       0,     0,     0,     0,     0,     0,     0,     0,     0,   603,
1693 +     621,   616,   604,   605,   606,   607,   609,   610,   611,   612,
1694 +     608,   613,   614,   615,   617,   618,   619,   620,     0,     0,
1695 +       0,   403,     0,     0,   401,   402,     0,   474,     0,     0,
1696         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1777       0,   578,     0,   555,     0,     0,     0,     0,     0,     0,
1697         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1698 <       0,     0,     0,     0,     0,   447,   502,   497,   498,   495,
1780 <     499,   500,   496,   458,   448,   449,   487,   450,   451,   452,
1781 <     453,   454,   455,   456,   457,   492,   459,   460,   461,   462,
1782 <     501,   464,   469,   465,   467,   466,   481,   482,   468,   470,
1783 <     471,   472,   473,   475,   474,   463,   477,   486,   488,   489,
1784 <     478,   479,   493,   494,   491,   480,   476,   484,   485,   483,
1785 <     490,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1786 <       0,     0,     0,     0,     0,     0,     0,     0,     0,    93,
1787 <      94,    95,    98,   105,    99,   103,   100,   101,   104,   102,
1788 <      96,    97,     0,     0,     0,     0,    42,    43,    44,   141,
1789 <       0,   128,     0,   682,     0,     0,     0,     0,     0,     0,
1790 <       0,     0,   674,   675,   676,   680,   677,   679,   678,   681,
1791 <       0,     0,     0,     0,     0,     0,     0,     0,    64,     0,
1792 <       0,     0,     0,     0,    50,    62,    61,    58,    51,    60,
1793 <      54,    55,    56,    52,    59,    57,    53,     0,     0,    87,
1794 <       0,     0,     0,     0,    82,     0,     0,     0,     0,     0,
1698 >       0,     0,     0,     0,     0,     0,   546,     0,   522,     0,
1699         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1796       0,     0,     0,     0,   633,     0,     0,   421,     0,     0,
1797       0,   418,   419,   420,     0,     0,   425,   442,     0,     0,
1798     432,   441,     0,   438,   439,   440,     0,     0,     0,     0,
1700         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1701 +     422,   472,   467,   468,   469,   470,   466,   433,   423,   424,
1702 +     460,   425,   426,   427,   428,   429,   430,   431,   432,   463,
1703 +     434,   435,   436,   437,   471,   439,   444,   440,   442,   441,
1704 +     455,   456,   443,   445,   446,   447,   448,   449,   438,   451,
1705 +     452,   453,   473,   464,   465,   462,   454,   450,   458,   459,
1706 +     457,   461,     0,     0,     0,     0,     0,     0,     0,     0,
1707 +      94,    95,    96,    97,     0,     0,     0,     0,     0,    43,
1708 +      44,    45,     0,     0,   651,     0,     0,     0,     0,     0,
1709 +       0,     0,     0,   643,   644,   645,   649,   646,   648,   647,
1710 +     650,     0,     0,     0,     0,     0,     0,     0,     0,    65,
1711 +       0,     0,     0,     0,     0,    51,    63,    62,    59,    52,
1712 +      61,    55,    56,    57,    53,    60,    58,    54,     0,     0,
1713 +     291,     0,     0,   289,   290,    88,     0,     0,     0,     0,
1714 +      83,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1715         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1716 +     602,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1717 +       0,     0,     0,     0,     0,     0,   191,   192,   195,   196,
1718 +     198,   199,   200,   201,   202,   203,   204,   193,   194,   197,
1719 +       0,     0,     0,     0,     0,   364,     0,     0,     0,     0,
1720 +       0,     0,     0,     0,   342,   343,   344,   345,   346,   347,
1721 +     349,   348,   350,   354,   351,   352,   353,   396,     0,     0,
1722 +       0,   393,   394,   395,     0,     0,   400,   417,     0,     0,
1723 +     407,   416,     0,   413,   414,   415,     0,     0,     0,     0,
1724         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1725         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1726         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1804       0,     0,   446,   615,   626,     0,     0,   618,     0,     0,
1805       0,   608,   609,   610,   611,   612,   613,   614,     0,     0,
1806       0,   269,     0,     0,     0,     0,     0,     0,   255,   256,
1807     257,   258,   263,   259,   260,   261,   262,   412,     0,   402,
1808       0,   411,     0,   408,   409,   410,     0,   230,     0,     0,
1809       0,   240,     0,   238,   239,   241,   242,   106,     0,     0,
1727         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1728 <       0,    92,    45,     0,     0,     0,    41,     0,     0,     0,
1729 <       0,     0,     0,   293,   294,   295,   296,     0,     0,     0,
1730 <       0,     0,     0,     0,     0,   673,    63,     0,     0,     0,
1728 >       0,     0,     0,     0,     0,     0,     0,     0,   421,   584,
1729 >     595,     0,     0,   587,     0,     0,     0,   577,   578,   579,
1730 >     580,   581,   582,   583,     0,     0,     0,   260,     0,     0,
1731 >       0,     0,     0,     0,   246,   247,   248,   249,   254,   250,
1732 >     251,   252,   253,   387,     0,   377,     0,   386,     0,   383,
1733 >     384,   385,     0,   221,     0,     0,     0,   231,     0,   229,
1734 >     230,   232,   233,    98,     0,     0,     0,    93,     0,    46,
1735 >       0,     0,     0,    42,     0,     0,     0,   166,     0,     0,
1736 >       0,   142,     0,     0,   126,   127,   128,   129,   132,   133,
1737 >     131,   130,   134,     0,     0,     0,     0,     0,   279,   280,
1738 >     281,   282,     0,     0,     0,     0,     0,     0,     0,     0,
1739 >     642,    64,     0,     0,     0,     0,     0,     0,     0,     0,
1740 >       0,     0,     0,     0,     0,    50,     0,     0,   303,     0,
1741 >       0,   296,   297,   298,   299,     0,     0,   325,     0,   320,
1742 >     321,   322,     0,     0,   288,     0,     0,     0,    82,     0,
1743 >       0,     0,     0,     0,    27,     0,     0,     0,     0,     0,
1744 >       0,     0,     0,     0,     0,     0,     0,     0,   601,   205,
1745         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1746 <      49,     0,     0,   311,     0,     0,   304,   305,   306,   307,
1747 <       0,     0,   334,     0,   329,   330,   331,     0,     0,     0,
1748 <      81,     0,     0,     0,     0,     0,    26,     0,     0,     0,
1746 >       0,     0,     0,     0,   190,   355,     0,     0,     0,     0,
1747 >       0,     0,     0,     0,     0,     0,     0,     0,     0,   341,
1748 >       0,     0,     0,   392,     0,   399,     0,     0,     0,     0,
1749 >     412,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1750         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1819     632,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1820       0,     0,     0,     0,     0,     0,   199,   200,   203,   204,
1821     206,   207,   208,   209,   210,   211,   212,   201,   202,   205,
1822       0,     0,     0,     0,     0,     0,     0,   381,     0,     0,
1823       0,     0,     0,     0,     0,     0,     0,   354,   355,   356,
1824     357,   358,   359,   361,   360,   362,   363,   368,   367,   364,
1825     365,   366,   369,     0,     0,     0,   417,     0,   424,     0,
1826       0,     0,     0,   437,     0,     0,     0,     0,     0,     0,
1751         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1752         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1753 +       0,     0,     0,     0,     0,     0,     0,    35,     0,     0,
1754 +       0,     0,     0,     0,     0,   420,     0,     0,     0,     0,
1755 +       0,     0,     0,   576,   255,     0,     0,     0,     0,     0,
1756 +       0,     0,     0,     0,   245,     0,     0,     0,     0,   382,
1757 +     234,     0,     0,     0,     0,     0,   228,     0,     0,    92,
1758 +       0,     0,     0,    41,   135,     0,     0,     0,     0,     0,
1759 +       0,     0,     0,     0,   125,   283,     0,     0,     0,     0,
1760 +     278,     0,     0,     0,     0,     0,     0,     0,   641,     0,
1761         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1762 +       0,    49,   300,     0,     0,     0,     0,   295,   323,     0,
1763 +       0,     0,   319,     0,   287,    91,    90,    89,   638,   635,
1764 +     634,   623,   625,    27,    27,    27,    27,    27,    29,    28,
1765 +     629,   630,   633,   631,   636,   637,   639,   640,   632,   624,
1766 +     626,   627,   628,     0,     0,     0,     0,     0,     0,     0,
1767 +       0,     0,     0,     0,     0,     0,   189,     0,     0,     0,
1768         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1769 <       0,     0,     0,     0,     0,    34,     0,     0,     0,     0,
1770 <       0,     0,   445,     0,     0,     0,     0,     0,     0,     0,
1771 <     607,   264,     0,     0,     0,     0,     0,     0,     0,     0,
1772 <       0,   254,     0,     0,     0,     0,   407,   243,     0,     0,
1773 <       0,     0,     0,   237,     0,     0,     0,     0,     0,     0,
1774 <       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1775 <       0,     0,    91,     0,     0,    40,     0,     0,     0,   170,
1776 <       0,     0,     0,   147,     0,     0,   130,   131,   132,   133,
1777 <     136,   137,   135,   134,   138,   297,     0,     0,     0,     0,
1778 <     292,     0,     0,     0,     0,     0,     0,     0,   672,     0,
1779 <       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1780 <       0,    48,   308,     0,     0,     0,     0,   303,   332,     0,
1781 <       0,     0,   328,    90,    89,    88,   669,   666,   665,   654,
1782 <     656,    26,    26,    26,    26,    26,    28,    27,   660,   661,
1783 <     664,   662,   667,   668,   670,   671,   663,   655,   657,   658,
1784 <     659,   213,     0,     0,     0,     0,     0,     0,     0,     0,
1785 <       0,     0,     0,     0,     0,     0,   198,   370,     0,     0,
1786 <       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1787 <       0,     0,     0,     0,   353,     0,     0,   416,   429,     0,
1788 <       0,     0,   431,   516,   520,   507,   536,   549,   548,   603,
1789 <     553,   514,   545,   551,   515,   505,   506,   523,   512,   544,
1790 <     513,   526,   511,   525,   524,   519,   518,   517,   546,   504,
1791 <     543,   601,   602,   540,   537,   582,   598,   599,   583,   584,
1792 <     585,   586,   593,   587,   596,   600,   589,   594,   590,   595,
1793 <     588,   592,   591,   597,     0,   581,   542,   559,   575,   576,
1794 <     560,   561,   562,   563,   570,   564,   573,   577,   566,   571,
1795 <     567,   572,   565,   569,   568,   574,     0,   558,   535,   538,
1796 <     552,   509,   547,   510,   539,   528,   533,   534,   531,   532,
1797 <     529,   530,   522,   521,    34,    34,    34,    36,    35,   604,
1798 <     554,   541,   550,   508,   527,     0,     0,     0,     0,     0,
1799 <       0,   606,     0,     0,   275,     0,     0,     0,     0,     0,
1800 <     253,     0,     0,     0,   401,     0,     0,     0,   248,   244,
1801 <     247,   229,   110,   116,   114,   113,   115,   111,   112,   109,
1802 <     117,   123,   118,   122,   120,   121,   119,   108,   107,   124,
1803 <      46,    47,   139,     0,     0,     0,     0,     0,     0,     0,
1804 <       0,     0,   129,     0,     0,     0,   291,   688,   683,   687,
1805 <     685,   689,   684,   686,    74,    80,    72,    76,    75,    71,
1806 <      70,    68,    69,     0,    67,    73,    79,    77,    78,     0,
1807 <       0,     0,   302,     0,     0,   327,    29,    30,    31,    32,
1808 <      33,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1809 <       0,     0,     0,     0,   195,     0,     0,     0,     0,     0,
1810 <       0,     0,   387,     0,     0,     0,     0,     0,     0,     0,
1811 <       0,   350,   422,   423,   443,   444,   436,     0,   435,   579,
1812 <       0,   556,     0,    37,    38,    39,   631,   630,     0,   629,
1875 <     617,   616,   623,   622,     0,   621,   625,   624,   267,   268,
1876 <     273,     0,   272,     0,   266,   289,   288,   287,   265,   414,
1877 <     406,     0,   405,   413,   235,   236,   234,     0,   233,   251,
1878 <     250,     0,     0,     0,     0,     0,   176,     0,     0,     0,
1879 <       0,     0,   126,   299,   300,   298,    65,     0,   309,   315,
1880 <     321,   325,   324,   323,   320,   316,   319,   322,   317,   318,
1881 <       0,   314,   310,   333,   338,   344,   348,   347,   346,   343,
1882 <     339,   342,   345,   340,   341,     0,   337,   225,   226,   219,
1883 <     221,   223,   222,   220,   214,   227,   218,   216,   217,   224,
1884 <     376,   378,   379,   399,   398,   395,   380,   385,     0,   384,
1885 <       0,   373,   396,   397,   371,   377,   394,   375,   374,   433,
1886 <       0,   580,   557,   627,     0,   619,     0,     0,   270,   275,
1887 <     281,   282,   278,   284,   280,   279,   286,   283,   285,   277,
1888 <     276,   403,     0,   231,     0,   249,   246,   245,   146,   144,
1889 <     174,     0,   173,     0,   140,   143,   145,   151,   167,   168,
1890 <     152,   153,   154,   155,   162,   156,   165,   169,   158,   163,
1891 <     159,   164,   157,   161,   160,   166,     0,   150,   142,    66,
1892 <     312,     0,   335,     0,     0,   382,   387,   391,   392,   389,
1893 <     390,   393,   388,   434,   628,   620,   274,   271,   404,   232,
1894 <       0,   171,   176,   186,   184,   193,   183,   178,   187,   191,
1895 <     180,   188,   190,   185,   179,   192,   189,   181,   182,   177,
1896 <     148,     0,   313,   336,   386,   383,   175,   172,   149
1769 >     340,     0,     0,   391,   404,     0,     0,     0,   406,   486,
1770 >     490,   506,   572,   520,   484,   514,   517,   485,   476,   477,
1771 >     493,   482,   483,   496,   481,   495,   494,   489,   488,   487,
1772 >     515,   475,   513,   570,   571,   510,   507,   557,   550,   567,
1773 >     568,   551,   552,   553,   554,   562,   555,   565,   569,   558,
1774 >     563,   559,   564,   556,   561,   560,   566,     0,   549,   512,
1775 >     532,   526,   543,   544,   527,   528,   529,   530,   538,   531,
1776 >     541,   545,   534,   539,   535,   540,   533,   537,   536,   542,
1777 >       0,   525,   505,   508,   519,   479,   480,   509,   498,   503,
1778 >     504,   501,   502,   499,   500,   492,   491,    35,    35,    35,
1779 >      37,    36,   573,   518,   521,   511,   516,   478,   497,     0,
1780 >       0,     0,     0,     0,     0,   575,     0,     0,     0,     0,
1781 >       0,     0,     0,     0,   244,     0,     0,     0,   376,     0,
1782 >       0,     0,   239,   235,   238,   220,   100,    99,     0,     0,
1783 >     112,     0,     0,   104,   105,   107,   106,    47,    48,     0,
1784 >       0,     0,     0,     0,     0,     0,     0,   124,     0,     0,
1785 >       0,   277,   657,   652,   656,   654,   658,   653,   655,    75,
1786 >      81,    73,    77,    76,    72,    71,    69,    70,     0,    68,
1787 >      74,    80,    78,    79,     0,     0,     0,   294,     0,     0,
1788 >     318,   292,    30,    31,    32,    33,    34,   216,   217,   210,
1789 >     212,   214,   213,   211,   206,   218,   209,   207,   208,   215,
1790 >     360,   362,   363,   374,   371,   368,   369,   370,     0,   367,
1791 >     357,   372,   373,   356,   361,   359,   358,   397,   398,   418,
1792 >     419,   411,     0,   410,   547,     0,   523,     0,    38,    39,
1793 >      40,   600,   599,     0,   598,   586,   585,   592,   591,     0,
1794 >     590,   594,   593,   258,   259,   268,   265,   270,   267,   266,
1795 >     272,   269,   271,   264,     0,   263,   257,   275,   274,   273,
1796 >     256,   389,   381,     0,   380,   388,   226,   227,   225,     0,
1797 >     224,   242,   241,     0,     0,     0,   108,     0,     0,     0,
1798 >       0,   103,   141,   139,   181,   178,   177,   170,   172,   187,
1799 >     182,   185,   180,   171,   186,   174,   183,   175,   184,   179,
1800 >     173,   176,     0,   169,   136,   138,   140,   152,   146,   163,
1801 >     164,   147,   148,   149,   150,   158,   151,   161,   165,   154,
1802 >     159,   155,   160,   153,   157,   156,   162,     0,   145,   137,
1803 >     285,   286,   284,    66,     0,   301,   307,   313,   316,   309,
1804 >     315,   310,   314,   312,   308,   311,     0,   306,   302,   324,
1805 >     329,   335,   338,   331,   337,   332,   336,   334,   330,   333,
1806 >       0,   328,   365,     0,   408,     0,   548,   524,   596,     0,
1807 >     588,     0,   261,     0,   378,     0,   222,     0,   240,   237,
1808 >     236,     0,     0,     0,     0,   102,   167,     0,   143,     0,
1809 >      67,   304,     0,   326,     0,   366,   409,   597,   589,   262,
1810 >     379,   223,   109,   118,   121,   120,   117,   122,   119,   116,
1811 >       0,   115,   111,   110,   168,   144,   305,   327,   113,     0,
1812 >     114
1813   };
1814  
1815   /* YYDEFGOTO[NTERM-NUM].  */
1816   static const yytype_int16 yydefgoto[] =
1817   {
1818 <      -1,     1,    24,   836,   837,   987,   988,    25,   275,   276,
1819 <     277,   278,    26,   313,   314,   315,   534,  1073,  1074,   316,
1820 <     317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
1821 <      27,    71,    72,    73,    74,    75,    28,   258,   259,   260,
1822 <     261,   262,   263,   264,   265,   266,   267,   268,   269,   270,
1823 <     271,    29,    61,   280,   775,   776,   777,   281,   778,   779,
1824 <     780,   781,   782,   783,  1049,  1306,  1307,   784,  1045,  1281,
1825 <    1282,  1330,  1283,  1349,    30,    49,   116,   595,   596,   597,
1826 <     117,   598,   599,   600,   601,   602,   603,   604,   605,   606,
1827 <     607,   608,   609,    31,    58,   481,   738,  1167,  1168,   482,
1828 <     483,   484,  1173,  1019,  1020,   485,   486,    32,    56,   457,
1829 <     458,   459,   460,   461,   462,   463,   724,  1151,  1152,  1257,
1830 <    1153,  1270,   464,   465,   466,    33,    62,   512,   513,   514,
1831 <     515,   516,    34,    65,   545,   546,   547,   548,   549,   814,
1832 <    1200,  1201,    35,    66,   553,   554,   555,   556,   820,  1215,
1833 <    1216,    36,    50,   119,   626,   627,   628,   120,   629,   630,
1834 <     631,   632,   633,   634,   635,   636,   874,  1238,  1239,  1314,
1835 <    1240,  1322,   637,   638,   639,   640,   641,   642,    37,    57,
1836 <     471,   733,  1161,  1162,   472,   473,   474,   475,    38,    51,
1837 <     360,   361,   362,   363,    39,   124,   125,   126,    40,    53,
1838 <     371,   651,  1127,  1128,   372,   373,   374,   375,    41,   184,
1839 <     185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
1840 <     195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
1841 <     205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
1842 <     215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
1843 <     225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
1844 <     235,   410,   966,   967,   236,   408,   944,   945,   237,   238,
1845 <     239,   240,    42,    55,   440,   441,   442,   443,   444,   716,
1846 <    1144,  1145,   445,   446,   447,   713,  1138,  1139,    43,    95,
1847 <      96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
1848 <     106,   107,   108,   109,   110,   111,   112,   113,   114,    44,
1933 <     291,   292,   293,   294,   295,   296,   297,   298,   299
1818 >      -1,     1,    25,   818,   819,   960,   961,    26,   248,   249,
1819 >     250,   251,    27,   284,   285,   286,   569,  1038,  1039,   287,
1820 >     288,   289,   290,   291,   292,   293,   294,   295,   296,   297,
1821 >      28,    74,    75,    76,    77,    78,    29,   239,   240,   241,
1822 >     242,   243,   244,  1002,  1003,  1004,  1005,  1006,  1148,  1280,
1823 >    1281,    30,    63,   533,   534,   535,   536,   537,   538,   539,
1824 >     540,   541,   761,  1197,  1198,   542,   757,  1172,  1173,    31,
1825 >      51,   345,   346,   347,   348,   349,   350,   351,   352,   353,
1826 >     354,   355,   356,   357,   358,   359,    32,    60,   507,   741,
1827 >    1139,  1140,   508,   509,   510,  1145,   993,   994,   511,   512,
1828 >      33,    58,   483,   484,   485,   486,   487,   488,   489,   727,
1829 >    1124,  1125,   490,   491,   492,    34,    64,   547,   548,   549,
1830 >     550,   551,    35,   302,   303,   304,    36,    67,   580,   581,
1831 >     582,   583,   584,   794,  1216,  1217,    37,    68,   588,   589,
1832 >     590,   591,   800,  1230,  1231,    38,    52,   373,   374,   375,
1833 >     376,   377,   378,   379,   380,   381,   382,   640,  1078,  1079,
1834 >     383,   384,   385,   386,    39,    59,   497,   736,  1133,  1134,
1835 >     498,   499,   500,   501,    40,    53,   390,   391,   392,   393,
1836 >      41,   123,   124,   125,    42,    55,   401,   658,  1092,  1093,
1837 >     402,   403,   404,   405,    43,   179,   180,   181,   182,   183,
1838 >     184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
1839 >     194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
1840 >     204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
1841 >     214,   215,   216,   217,   218,   219,   220,   221,   222,   223,
1842 >     224,   225,   226,   436,   940,   941,   227,   434,   917,   918,
1843 >     228,   229,   230,   231,    44,    57,   466,   467,   468,   469,
1844 >     470,   719,  1109,  1110,   471,   472,   473,   716,  1103,  1104,
1845 >      45,    98,    99,   100,   101,   102,   103,   104,   105,   106,
1846 >     107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
1847 >     117,    46,   262,   263,   264,   265,   266,   267,   268,   269,
1848 >     270
1849   };
1850  
1851   /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1852     STATE-NUM.  */
1853 < #define YYPACT_NINF -944
1853 > #define YYPACT_NINF -772
1854   static const yytype_int16 yypact[] =
1855   {
1856 <    -944,   692,  -944,  -105,  -257,  -249,  -944,  -944,  -944,  -236,
1857 <    -944,  -215,  -944,  -944,  -944,  -944,  -212,  -210,  -944,  -944,
1858 <    -193,  -184,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1859 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1860 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,     7,   605,   -69,
1861 <     -64,  -166,     8,  -151,   420,  -134,  -124,  -101,   -95,   417,
1862 <       4,    27,   -60,   309,   467,   -52,   -39,   -14,    -9,    -6,
1863 <      11,     9,  -944,  -944,  -944,  -944,  -944,    41,    43,    53,
1864 <      63,    72,    74,    85,    94,    95,    96,    97,    99,   102,
1865 <     105,   106,   107,   108,   109,   142,  -944,  -944,  -944,  -944,
1866 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1867 <    -944,  -944,  -944,  -944,  -944,  -944,    22,  -944,  -944,    61,
1868 <    -944,   147,  -944,   111,    20,  -944,  -944,    30,  -944,   112,
1869 <     113,   115,   116,   118,   121,   128,   139,   141,   143,   144,
1870 <     146,   148,   149,   150,   151,   152,   155,   158,   159,   161,
1871 <     162,   167,   170,   173,   176,   178,   179,   180,   182,   187,
1872 <     193,  -944,   194,  -944,   196,   198,   201,   217,   219,   220,
1873 <     221,   222,   223,   224,   225,   226,   230,   231,   236,   237,
1874 <     238,   241,   246,   253,    49,  -944,  -944,  -944,  -944,  -944,
1875 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1876 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1877 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1878 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1879 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1880 <    -944,   333,   519,    24,   172,    80,   254,   255,   260,   263,
1881 <     265,   269,   276,   277,   278,   280,   282,   283,    46,  -944,
1882 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1883 <    -944,  -944,   145,   284,   286,    21,  -944,  -944,  -944,  -944,
1884 <     126,  -944,    77,  -944,   287,   289,   290,   291,   293,   298,
1885 <     305,    34,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1886 <     156,   307,   308,   310,   312,   313,   314,   315,  -944,   316,
1887 <     319,   320,   321,   199,  -944,  -944,  -944,  -944,  -944,  -944,
1888 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,    25,    31,  -944,
1889 <     257,   281,   432,   328,  -944,   396,   163,   466,   401,   402,
1890 <     469,   469,   470,   472,   409,   410,   478,   469,   414,   421,
1891 <     422,   425,   427,   365,  -944,   664,   444,  -944,   363,   364,
1892 <      32,  -944,  -944,  -944,   475,   370,  -944,  -944,   368,   374,
1893 <    -944,  -944,     3,  -944,  -944,  -944,   436,   469,   443,   469,
1894 <     510,   489,   512,   448,   450,   517,   496,   454,   523,   525,
1895 <     526,   462,   469,   463,   468,   469,   514,   471,   540,   541,
1896 <     469,   542,   546,   528,   547,   552,   487,   491,   426,   498,
1897 <     434,   469,   469,   501,   469,   550,   508,   511,   515,    81,
1898 <     153,   518,   521,   469,   469,   583,   469,   522,   524,   527,
1899 <     531,   456,  -944,  -944,  -944,   473,   474,  -944,   476,   477,
1900 <      14,  -944,  -944,  -944,  -944,  -944,  -944,  -944,   465,   480,
1901 <     481,  -944,   482,   483,   484,   488,   490,   171,  -944,  -944,
1902 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,   494,  -944,
1903 <     497,  -944,    19,  -944,  -944,  -944,   492,  -944,   500,   506,
1904 <     507,  -944,   125,  -944,  -944,  -944,  -944,  -944,   576,   577,
1905 <     580,   582,   585,   588,   597,   608,   175,   611,   622,   581,
1906 <     520,  -944,  -944,   624,   626,   529,  -944,   538,   530,   532,
1907 <     533,   536,     2,  -944,  -944,  -944,  -944,   586,   590,   591,
1908 <     638,   596,   603,   469,   543,  -944,  -944,   651,   609,   659,
1909 <     660,   663,   665,   666,   558,   669,   694,   670,   673,   567,
1910 <    -944,   569,   568,  -944,   570,    28,  -944,  -944,  -944,  -944,
1911 <     574,   572,  -944,    10,  -944,  -944,  -944,   578,   579,   584,
1912 <    -944,   587,   589,   594,   602,   604,   169,   606,   607,   610,
1913 <     615,   616,   627,   631,   632,   634,   635,   636,   637,   639,
1914 <    -944,   640,   573,   621,   643,   647,   648,   650,   658,   661,
1915 <     668,   671,   672,   674,   676,   205,  -944,  -944,  -944,  -944,
1916 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1917 <     641,   680,   684,   685,   687,   688,   695,  -944,   698,   702,
1918 <     703,   705,   706,   707,   708,   709,   168,  -944,  -944,  -944,
1919 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1920 <    -944,  -944,  -944,   677,   690,   642,  -944,   654,  -944,   693,
1921 <     697,   710,   678,  -944,   714,   715,   716,   720,   724,   725,
1922 <     727,   728,   730,   731,   732,   733,   734,   735,   736,   737,
1923 <     738,   739,   740,   741,   742,   743,   744,   745,   746,   747,
1924 <     748,   750,   751,   752,   753,   754,   675,   755,   712,   756,
1925 <     757,   758,   759,   760,   761,   762,   763,   764,   765,   766,
1926 <     767,   768,   769,   770,   771,   317,   772,   773,   774,   775,
1927 <     776,   777,  -944,   778,   469,   644,   779,   721,   780,   783,
1928 <    -944,  -944,   856,   701,   781,   885,   717,   886,   887,   892,
1929 <     786,  -944,   894,   785,   896,   790,  -944,  -944,   788,   899,
1930 <     900,   797,   794,  -944,   795,   796,   798,   799,   800,   801,
1931 <     802,   803,   804,   805,   806,   807,   808,   809,   810,   811,
1932 <     812,   813,  -944,   814,   815,  -944,   816,   817,   818,  -944,
1933 <     819,   820,   821,  -944,   822,    93,  -944,  -944,  -944,  -944,
1934 <    -944,  -944,  -944,  -944,  -944,  -944,   904,   924,   925,   826,
1935 <    -944,   827,   828,   829,   830,   831,   832,   833,  -944,   834,
1936 <     835,   836,   837,   838,   839,   840,    60,   841,   842,   843,
1937 <     844,  -944,  -944,   926,   845,   952,   846,  -944,  -944,   954,
1938 <     847,   849,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1939 <    -944,   469,   469,   469,   469,   469,  -944,  -944,  -944,  -944,
1940 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1941 <    -944,  -944,   980,   981,   469,   982,   983,   984,   985,   964,
1942 <     987,   988,   469,   469,   583,   860,  -944,  -944,   968,   136,
1943 <     969,   970,   927,   972,   863,   974,   975,   976,   977,  1000,
1944 <     979,   986,   989,   873,  -944,   874,   875,  -944,  -944,   876,
1945 <     877,   679,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1946 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1947 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1948 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1949 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1950 <    -944,  -944,  -944,  -944,  -248,  -944,  -944,  -944,  -944,  -944,
1951 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1952 <    -944,  -944,  -944,  -944,  -944,  -944,  -242,  -944,  -944,  -944,
1953 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1954 <    -944,  -944,  -944,  -944,   583,   583,   583,  -944,  -944,  -944,
1955 <    -944,  -944,  -944,  -944,  -944,     1,   878,   880,     5,   881,
1956 <     883,  -944,   884,   888,  1015,   889,   890,   891,   893,   895,
1957 <    -944,   897,   682,   898,  -944,    56,   901,   902,   649,   601,
1958 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1959 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1960 <    -944,  -944,  -944,   993,   950,   903,   999,  1001,  1003,   905,
1961 <    1006,   907,  -944,   909,   910,   911,  -944,  -944,  -944,  -944,
1962 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1963 <    -944,  -944,  -944,  -227,  -944,  -944,  -944,  -944,  -944,   912,
1964 <     563,   913,  -944,   914,   614,  -944,  -944,  -944,  -944,  -944,
1965 <    -944,   915,   916,   917,   918,   919,   920,   921,   922,   923,
1966 <     928,   929,   930,   931,  -944,   932,   933,   934,   935,   936,
1967 <     937,   938,  1030,   939,   940,   941,   942,   943,   944,   945,
1968 <     946,  -944,  -944,  -944,  -944,  -944,  -944,  -225,  -944,  -944,
1969 <     675,  -944,   712,  -944,  -944,  -944,  -944,  -944,  -192,  -944,
1970 <    -944,  -944,  -944,  -944,  -185,  -944,  -944,  -944,  -944,  -944,
1971 <    -944,  -174,  -944,   633,  -944,  -944,  -944,  -944,  -944,  -944,
1972 <    -944,  -165,  -944,  -944,  -944,  -944,  -944,  -147,  -944,  -944,
1973 <    -944,  1032,   797,   947,   948,   949,  1034,   951,   953,   955,
1974 <     749,   956,  -944,  -944,  -944,  -944,  -944,    60,  -944,  -944,
1975 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1976 <     -57,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1977 <    -944,  -944,  -944,  -944,  -944,   -38,  -944,  -944,  -944,  -944,
1978 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1979 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,    -8,  -944,
1980 <      18,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1981 <     679,  -944,  -944,  -944,     1,  -944,     5,   633,  -944,  1015,
1982 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1983 <    -944,  -944,   682,  -944,    56,  -944,  -944,  -944,  -944,  -944,
1984 <    -944,    37,  -944,   433,  -944,  -944,  -944,  -944,  -944,  -944,
1985 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
2071 <    -944,  -944,  -944,  -944,  -944,  -944,    51,  -944,  -944,  -944,
2072 <    -944,   563,  -944,   614,    18,  -944,  1030,  -944,  -944,  -944,
2073 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
2074 <     433,  -944,  1034,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
2075 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
2076 <    -944,   749,  -944,  -944,  -944,  -944,  -944,  -944,  -944
1856 >    -772,   691,  -772,  -190,  -234,  -231,  -772,  -772,  -772,  -225,
1857 >    -772,  -215,  -772,  -772,  -772,  -772,  -207,  -205,  -772,  -772,
1858 >    -202,  -194,  -772,  -772,  -174,  -772,  -772,  -772,  -772,  -772,
1859 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1860 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,   273,
1861 >     541,  -171,  -168,  -155,    14,  -146,   367,  -143,  -141,  -134,
1862 >    -131,     3,    41,  -128,  -112,   499,   326,  -109,   -98,    20,
1863 >    -115,   -90,   -87,   -81,     4,  -772,  -772,  -772,  -772,  -772,
1864 >     -71,   -68,   -48,   -45,   -24,   -15,    21,    23,    49,    54,
1865 >      57,    63,    77,    87,    88,    90,    98,    99,   274,  -772,
1866 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1867 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,   696,   449,
1868 >      47,  -772,   109,    32,  -772,  -772,   192,  -772,   112,   119,
1869 >     122,   130,   135,   146,   156,   161,   167,   168,   169,   177,
1870 >     183,   188,   196,   197,   199,   200,   203,   207,   211,   214,
1871 >     225,   232,   234,   236,   237,   238,  -772,   240,  -772,   246,
1872 >     253,   255,   256,   257,   262,   264,   265,   278,   279,   280,
1873 >     283,   284,   288,   289,   293,   301,   306,   309,   310,   108,
1874 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1875 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1876 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1877 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1878 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1879 >    -772,  -772,   316,   299,    58,   388,    45,   313,   314,    71,
1880 >    -772,  -772,  -772,  -772,    75,    82,   315,   322,    53,  -772,
1881 >    -772,  -772,   446,   344,  -772,   323,   324,   325,   330,   331,
1882 >     334,   336,    18,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1883 >    -772,   151,   340,   342,   346,   347,   349,   354,   357,  -772,
1884 >     359,   360,   362,   363,   152,  -772,  -772,  -772,  -772,  -772,
1885 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,    12,    70,
1886 >    -772,   365,    28,  -772,  -772,  -772,   128,   385,   437,   181,
1887 >    -772,    76,   487,   490,   412,   434,   500,   500,   501,   502,
1888 >     435,   440,   507,   500,   444,   447,   448,   450,   454,   384,
1889 >    -772,   390,   389,   391,   393,   394,   395,   396,   397,   398,
1890 >     400,   401,   402,   403,   404,     2,  -772,  -772,  -772,  -772,
1891 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1892 >     410,   409,   415,   416,   417,  -772,   418,   419,   422,   424,
1893 >     426,   428,   430,     8,  -772,  -772,  -772,  -772,  -772,  -772,
1894 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,   436,   438,
1895 >      16,  -772,  -772,  -772,   523,   455,  -772,  -772,   443,   451,
1896 >    -772,  -772,    26,  -772,  -772,  -772,   456,   500,   500,   522,
1897 >     503,   512,   566,   556,   521,   591,   592,   593,   530,   532,
1898 >     534,   500,   578,   537,   603,   607,   500,   610,   613,   594,
1899 >     614,   617,   558,   559,   488,   560,   495,   500,   500,   564,
1900 >     500,   570,   571,   572,  -117,   -91,   573,   574,   500,   500,
1901 >     640,   620,   500,   579,   580,   581,   582,   519,  -772,  -772,
1902 >    -772,   515,   517,  -772,   524,   525,    36,  -772,  -772,  -772,
1903 >    -772,  -772,  -772,  -772,   526,   529,   533,  -772,   535,   536,
1904 >     539,   540,   544,    22,  -772,  -772,  -772,  -772,  -772,  -772,
1905 >    -772,  -772,  -772,  -772,   545,  -772,   549,  -772,    11,  -772,
1906 >    -772,  -772,   553,  -772,   551,   552,   555,  -772,    30,  -772,
1907 >    -772,  -772,  -772,  -772,   586,   587,   561,  -772,   531,  -772,
1908 >     633,   645,   562,  -772,   563,   557,   565,  -772,   568,   569,
1909 >     575,  -772,   576,   206,  -772,  -772,  -772,  -772,  -772,  -772,
1910 >    -772,  -772,  -772,   577,   584,   585,   588,    17,  -772,  -772,
1911 >    -772,  -772,   605,   621,   629,   673,   631,   638,   500,   583,
1912 >    -772,  -772,   682,   641,   683,   688,   689,   690,   692,   589,
1913 >     697,   719,   702,   703,   596,  -772,   597,   590,  -772,   595,
1914 >      42,  -772,  -772,  -772,  -772,   599,   600,  -772,     5,  -772,
1915 >    -772,  -772,   708,   602,  -772,   604,   606,   608,  -772,   609,
1916 >     612,   624,   625,   632,   358,   636,   651,   652,   656,   657,
1917 >     659,   663,   668,   678,   679,   684,   686,   694,  -772,  -772,
1918 >     734,   736,   500,   750,   758,   759,   769,   749,   812,   819,
1919 >     500,   500,   640,   695,  -772,  -772,   805,    44,   806,   764,
1920 >     698,   808,   811,   813,   814,   833,   815,   816,   709,  -772,
1921 >     818,   820,   711,  -772,   713,  -772,   822,   823,   714,   716,
1922 >    -772,   718,   720,   721,   722,   723,   724,   725,   726,   727,
1923 >     729,   730,   731,   732,   733,   735,   737,   738,   739,   740,
1924 >     741,   742,   743,   744,   745,   746,   747,   748,   751,   674,
1925 >     752,   701,   753,   754,   755,   756,   757,   760,   761,   762,
1926 >     763,   765,   766,   767,   768,   770,   771,   355,   772,   773,
1927 >     774,   775,   776,   777,   778,  -772,   779,   500,   784,   780,
1928 >     836,   842,   781,  -772,  -772,   844,   824,   782,   857,   879,
1929 >     866,   872,   877,   786,  -772,   887,   785,   888,   787,  -772,
1930 >    -772,   788,   892,   897,   919,   792,  -772,   793,   794,  -772,
1931 >     171,   795,   796,  -772,  -772,   905,   863,   797,   907,   909,
1932 >     910,   800,   912,   807,  -772,  -772,   913,   914,   916,   809,
1933 >    -772,   810,   817,   821,   825,   826,   827,   828,  -772,   829,
1934 >     830,   831,   832,   834,   835,   837,   142,   838,   839,   840,
1935 >     841,  -772,  -772,   920,   843,   921,   845,  -772,  -772,   922,
1936 >     846,   847,  -772,   848,  -772,  -772,  -772,  -772,  -772,  -772,
1937 >    -772,  -772,  -772,   500,   500,   500,   500,   500,  -772,  -772,
1938 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1939 >    -772,  -772,  -772,   850,   851,   852,   853,   854,   855,   856,
1940 >     858,   859,   860,   861,   862,   864,  -772,   865,   867,   868,
1941 >     869,   870,    10,   871,   873,   874,   875,   876,   878,   880,
1942 >    -772,   881,   882,  -772,  -772,   883,   884,   918,  -772,  -772,
1943 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1944 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1945 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1946 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1947 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -187,  -772,  -772,
1948 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1949 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1950 >     -77,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1951 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,   640,   640,   640,
1952 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,    19,
1953 >     885,   886,    33,   889,   890,  -772,   891,   893,   630,   894,
1954 >     895,   896,   898,   899,  -772,   900,   923,   901,  -772,     7,
1955 >     902,   903,   904,   906,  -772,  -772,  -772,  -772,   908,   911,
1956 >    -772,   915,    96,  -772,  -772,  -772,  -772,  -772,  -772,   917,
1957 >     924,   476,   925,   926,   927,   728,   928,  -772,   929,   930,
1958 >     931,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1959 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,   -29,  -772,
1960 >    -772,  -772,  -772,  -772,   932,   445,   933,  -772,   934,   518,
1961 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1962 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1963 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,   -28,  -772,
1964 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1965 >    -772,  -772,   -26,  -772,  -772,   674,  -772,   701,  -772,  -772,
1966 >    -772,  -772,  -772,    79,  -772,  -772,  -772,  -772,  -772,   104,
1967 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1968 >    -772,  -772,  -772,  -772,   123,  -772,  -772,  -772,  -772,  -772,
1969 >    -772,  -772,  -772,   124,  -772,  -772,  -772,  -772,  -772,   139,
1970 >    -772,  -772,  -772,   940,   919,   935,  -772,   941,   936,   -69,
1971 >     937,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1972 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1973 >    -772,  -772,   140,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1974 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1975 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,   148,  -772,  -772,
1976 >    -772,  -772,  -772,  -772,   142,  -772,  -772,  -772,  -772,  -772,
1977 >    -772,  -772,  -772,  -772,  -772,  -772,   158,  -772,  -772,  -772,
1978 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1979 >     175,  -772,  -772,    10,  -772,   918,  -772,  -772,  -772,    19,
1980 >    -772,    33,  -772,   630,  -772,   923,  -772,     7,  -772,  -772,
1981 >    -772,   938,   149,   942,   943,  -772,  -772,   476,  -772,   728,
1982 >    -772,  -772,   445,  -772,   518,  -772,  -772,  -772,  -772,  -772,
1983 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1984 >     178,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,   149,
1985 >    -772
1986   };
1987  
1988   /* YYPGOTO[NTERM-NUM].  */
1989   static const yytype_int16 yypgoto[] =
1990   {
1991 <    -944,  -944,  -944,  -768,  -340,  -943,  -423,  -944,  -944,   571,
1992 <    -944,  -944,  -944,  -944,   556,  -944,  -944,  -944,  -317,  -944,
1993 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1994 <    -944,  -944,   859,  -944,  -944,  -944,  -944,  -944,   908,  -944,
1995 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
1996 <    -944,  -944,  -944,  -944,  -944,   411,  -944,  -944,  -944,  -944,
1997 <    -944,  -944,  -944,  -944,  -944,  -944,  -418,  -944,  -944,  -944,
1998 <    -395,  -944,  -944,  -145,  -944,  -944,  -944,  -944,   592,  -944,
1999 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
2000 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,   -86,  -944,
2001 <     729,  -944,  -944,  -944,    47,  -944,  -944,  -944,  -944,  -944,
2002 <     782,  -944,  -944,  -944,  -944,  -944,  -944,  -944,   -46,  -944,
2003 <    -944,   -42,  -944,  -944,  -944,  -944,  -944,  -944,   711,  -944,
2004 <    -944,  -944,  -944,  -944,  -944,   681,  -944,  -944,  -944,  -944,
2005 <    -944,   -93,  -944,  -944,  -944,   667,  -944,  -944,  -944,  -944,
2006 <     -92,  -944,  -944,  -944,  -944,   598,  -944,  -944,  -944,  -944,
2007 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,   -94,  -944,
2008 <    -944,   -89,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
2009 <    -944,  -944,  -944,   -45,  -944,   784,  -944,  -944,  -944,  -944,
2010 <    -944,   868,  -944,  -944,  -944,  -944,  1105,  -944,  -944,  -944,
2011 <    -944,  -944,  -944,   -20,  -944,   861,  -944,  -944,  -944,  -944,
2012 <    1047,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
2013 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
2014 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
2015 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
2016 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
2017 <    -944,  -944,  -944,   100,  -944,  -944,  -944,   104,  -944,  -944,
2018 <    -944,  -944,  -944,  -944,  -944,   823,  -944,  -944,  -944,  -944,
2019 <    -944,   -21,  -944,  -944,  -944,  -944,  -944,   -18,  -944,  -944,
2020 <    1142,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
2021 <    -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,  -944,
2113 <    -944,   957,  -944,  -944,  -944,  -944,  -944,  -944,  -944
1991 >    -772,  -772,  -772,  -753,  -315,  -771,  -450,  -772,  -772,   939,
1992 >    -772,  -772,  -772,  -772,   791,  -772,  -772,  -772,  -149,  -772,
1993 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1994 >    -772,  -772,   983,  -772,  -772,  -772,  -772,  -772,   944,  -772,
1995 >    -772,  -772,  -772,  -772,    56,  -772,  -772,  -772,  -772,  -772,
1996 >    -228,  -772,  -772,  -772,   548,  -772,  -772,  -772,  -772,  -772,
1997 >    -772,  -772,  -772,  -772,  -197,  -772,  -772,  -772,  -175,  -772,
1998 >    -772,  -772,   798,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
1999 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
2000 >    -772,  -184,  -772,   618,  -772,  -772,  -772,   -42,  -772,  -772,
2001 >    -772,  -772,  -772,   622,  -772,  -772,  -772,  -772,  -772,  -772,
2002 >    -772,  -147,  -772,  -772,  -772,  -772,  -772,  -772,   598,  -772,
2003 >    -772,  -772,  -772,  -772,   849,  -772,  -772,  -772,  -772,   538,
2004 >    -772,  -772,  -772,  -772,  -772,  -151,  -772,  -772,  -772,   528,
2005 >    -772,  -772,  -772,  -772,  -137,  -772,  -772,  -772,   789,  -772,
2006 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -102,
2007 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -101,
2008 >    -772,   648,  -772,  -772,  -772,  -772,  -772,   790,  -772,  -772,
2009 >    -772,  -772,  1013,  -772,  -772,  -772,  -772,  -772,  -772,   -85,
2010 >    -772,   783,  -772,  -772,  -772,  -772,   969,  -772,  -772,  -772,
2011 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
2012 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
2013 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
2014 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
2015 >    -772,  -772,  -772,  -772,  -772,    55,  -772,  -772,  -772,    59,
2016 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,   693,  -772,  -772,
2017 >    -772,  -772,  -772,   -86,  -772,  -772,  -772,  -772,  -772,   -79,
2018 >    -772,  -772,  1060,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
2019 >    -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,  -772,
2020 >    -772,  -772,  -772,   945,  -772,  -772,  -772,  -772,  -772,  -772,
2021 >    -772
2022   };
2023  
2024   /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
2025     positive, shift that token.  If negative, reduce the rule which
2026 <   number is the opposite.  If zero, do what YYDEFACT says.
2027 <   If YYTABLE_NINF, syntax error.  */
2028 < #define YYTABLE_NINF -1
2121 < static const yytype_uint16 yytable[] =
2026 >   number is the opposite.  If YYTABLE_NINF, syntax error.  */
2027 > #define YYTABLE_NINF -102
2028 > static const yytype_int16 yytable[] =
2029   {
2030 <     567,   568,   706,   508,   367,   272,    47,   574,    67,   122,
2031 <      67,   550,  1136,  1129,    48,   433,  1142,  1130,   434,  1131,
2032 <     467,   122,   272,  1132,   509,   467,   541,    52,  1317,   541,
2033 <    1318,   367,   550,   357,  1186,   283,  1249,   655,  1187,   657,
2034 <    1250,  1133,  1134,  1135,    68,  1319,    68,   245,    54,  1320,
2035 <     128,    59,   670,    60,    69,   673,    69,   129,   130,   435,
2036 <     678,   131,   436,  1086,  1087,  1088,  1089,  1090,   132,  1253,
2037 <      63,   689,   690,  1254,   692,   284,  1255,   133,   508,    64,
2038 <    1256,   134,   135,   703,   704,   115,   707,  1258,   136,   285,
2039 <     118,  1259,   137,   138,   766,   139,  1271,   121,   123,   509,
2040 <    1272,   140,   246,   247,   248,   249,   250,   251,   252,   253,
2041 <     123,   286,   127,   287,  1273,   288,   289,   437,  1274,   767,
2042 <     141,   142,   358,   273,   368,   143,   476,   510,    70,   241,
2043 <      70,   551,   144,  1164,   290,   438,   145,   146,   147,   242,
2044 <     273,   148,   768,    76,   149,   150,   542,   769,   357,   542,
2045 <     254,   368,   551,   274,   151,    77,    45,    46,   511,   369,
2046 <     152,   153,   243,   154,   155,   156,   157,   158,   244,   610,
2047 <     274,   611,   448,   476,   612,   468,    78,    79,   159,   477,
2048 <     468,   279,    80,   797,    81,   255,   369,   160,   359,   161,
2049 <     162,   370,   163,   613,   614,   164,   165,   449,   552,   166,
2050 <     300,  1137,   510,   282,  1310,  1143,   581,   469,  1311,   478,
2051 <     167,   327,   469,   543,   770,   479,   543,   615,   370,   552,
2052 <     450,   616,   617,  1312,   328,   451,   477,  1313,   582,   583,
2053 <    1071,  1072,   168,   511,   169,   584,   301,   358,   170,    82,
2054 <      83,   771,   171,   172,   173,   174,   175,   329,    84,    85,
2055 <     176,   177,   618,  1315,   619,   330,   478,  1316,   331,   178,
2056 <     772,  1321,   479,   439,   789,   652,   256,   620,   470,    86,
2057 <      87,   333,   821,   470,   544,   332,   719,   544,   480,   697,
2058 <     698,   735,   365,   505,   302,   355,    88,    89,  1165,   621,
2059 <     816,   179,  1166,   180,   645,   562,   524,    90,  1331,   181,
2060 <     257,   566,  1332,   359,   182,   335,    91,   336,   500,   183,
2061 <     283,   431,  1350,   585,   586,   587,  1351,   337,   588,   452,
2062 <     303,   622,   304,   305,   356,   480,   589,   338,   453,   454,
2063 <     773,   984,   985,   986,   433,   623,   339,   434,   340,   590,
2064 <     591,   487,   774,   831,   832,   833,   834,   835,   624,   341,
2065 <     284,   699,   700,  1106,  1107,  1051,   592,   593,   342,   343,
2066 <     344,   345,   455,   346,   285,   306,   347,   307,   308,   348,
2067 <     349,   350,   351,   352,   996,   364,   376,   377,   435,   378,
2068 <     379,   436,   380,   309,   594,   381,   286,   742,   287,   507,
2069 <     288,   289,   382,    92,    93,    94,   752,   753,   754,   755,
2070 <     756,   757,   758,   383,   353,   384,   502,   385,   386,   290,
2071 <     387,   557,   388,   389,   390,   391,   392,   526,   245,   393,
2072 <     456,   128,   394,   395,   625,   396,   397,   310,   129,   130,
2073 <     883,   398,   131,   730,   399,   558,   437,   400,  1333,   132,
2074 <     401,  1103,   402,   403,   404,   610,   405,   611,   133,   705,
2075 <     612,   406,   134,   135,   438,   311,   312,   407,   409,   136,
2076 <     411,   539,   412,   137,   138,   413,   139,   865,   300,   613,
2077 <     614,  1334,   140,   246,   247,   248,   249,   250,   251,   252,
2078 <     253,   414,  1335,   415,   416,   417,   418,   419,   420,   421,
2079 <     422,   141,   142,   615,   423,   424,   143,   616,   617,  1336,
2080 <     425,   426,   427,   144,   301,   428,  1337,   145,   146,   147,
2081 <     429,  1338,   148,  1339,  1093,   149,   150,   430,   488,   489,
2082 <     448,   254,  1101,  1102,   490,   151,  1340,   491,   618,   492,
2083 <     619,   152,   153,   493,   154,   155,   156,   157,   158,   766,
2084 <     494,   495,   496,   620,   497,   449,   498,   499,   503,   159,
2085 <     504,   517,   302,   518,   519,   520,   255,   521,   160,  1341,
2086 <     161,   162,   522,   163,   767,   621,   164,   165,   450,   523,
2087 <     166,   527,   528,   451,   529,  1342,   530,   531,   532,   533,
2088 <     535,   167,   439,   536,   537,   538,   559,   768,   303,   560,
2089 <     304,   305,   769,  1343,   561,  1344,  1345,   622,   563,   564,
2090 <     565,   566,   569,   168,   570,   169,    76,   571,   572,   170,
2091 <     573,   623,   575,   171,   172,   173,   174,   175,    77,   576,
2092 <     577,   176,   177,   578,   624,   579,   580,   643,   644,   647,
2093 <     178,   648,   649,   306,   654,   307,   308,   256,   650,    78,
2094 <      79,   656,   658,   659,   660,    80,   661,    81,   662,   663,
2095 <     664,   309,   665,  1260,  1261,   666,  1189,   667,   668,   770,
2096 <     669,   671,   179,  1346,   180,   581,   672,   452,   674,   675,
2097 <     181,   257,   676,   677,   679,   182,   453,   454,   680,   682,
2098 <     183,  1347,   681,  1262,   683,   684,   771,   582,   583,   685,
2099 <     686,  1348,     2,     3,   584,   310,   687,     4,   688,   691,
2100 <     625,  1263,    82,    83,   693,   772,   694,  1204,  1264,   695,
2101 <     455,    84,    85,   696,     5,   705,   701,   712,     6,   702,
2102 <     708,     7,   709,   311,   312,   710,   721,  1265,     8,   711,
2103 <     744,   745,    86,    87,   746,  1190,   747,   714,   715,   748,
2104 <     717,   718,   749,     9,   722,   723,   725,   726,   727,    88,
2105 <      89,   750,   728,   737,   729,  1266,    10,    11,   732,    12,
2106 <      90,   734,   751,  1267,   739,   759,    13,  1191,   456,    91,
2107 <     740,   741,   585,   586,   587,   773,   760,   588,   763,   761,
2108 <     764,   762,  1192,    14,   791,   589,  1205,   774,   792,   793,
2109 <     765,   785,   794,    15,   795,    16,   786,   787,   590,   591,
2110 <     788,   796,  1193,  1194,   798,   799,  1268,   800,  1195,  1196,
2111 <    1197,  1198,    17,   801,   802,   592,   593,   803,  1206,   804,
2112 <     805,  1199,   806,   807,   809,  1269,   808,   810,   811,    18,
2113 <     812,   885,   813,  1207,   815,   818,   819,   852,  1126,   823,
2114 <     824,  1160,   997,   594,   886,   825,   506,   889,   826,  1006,
2115 <     827,   890,  1171,  1208,  1209,   828,    92,    93,    94,  1210,
2116 <    1211,  1212,  1213,   829,    19,   830,  1172,   838,   839,   540,
2117 <    1309,   840,  1214,    20,    21,   999,   841,   842,    22,    23,
2118 <     925,   926,   927,   928,   929,   853,   930,   931,   843,   932,
2119 <     933,   934,   844,   845,   935,   846,   847,   848,   849,  1003,
2120 <     850,   851,   867,   887,   936,   937,   938,   854,   939,   940,
2121 <     941,   855,   856,   942,   857,   888,   943,   947,   948,   949,
2122 <     950,   951,   858,   952,   953,   859,   954,   955,   956,  1018,
2123 <     334,   957,   860,  1358,  1000,   861,   862,  1357,   863,   892,
2124 <     864,   958,   959,   960,   868,   961,   962,   963,   869,   870,
2125 <     964,   871,   872,   965,  1287,  1288,  1289,  1290,  1291,   873,
2126 <    1292,  1293,   875,  1294,  1295,  1296,   876,   877,  1297,   878,
2127 <     879,   880,   881,   882,   891,   893,   894,   895,  1298,  1299,
2128 <    1300,   896,  1301,  1302,  1303,   897,   898,  1304,   899,   900,
2129 <    1305,   901,   902,   903,   904,   905,   906,   907,   908,   909,
2130 <     910,   911,   912,   913,   914,   915,   916,   917,   918,   919,
2131 <    1002,   920,   921,   922,   923,   924,   946,   968,   969,   970,
2132 <     971,   972,   973,   974,   975,   976,   977,   978,   979,   980,
2133 <     981,   982,   983,   989,   990,   991,   992,   993,   994,  1005,
2134 <    1007,  1008,   995,   998,  1001,  1004,  1009,  1010,  1011,  1012,
2135 <    1013,  1014,  1015,  1016,  1017,  1021,  1022,  1023,  1053,  1024,
2136 <    1025,  1026,  1027,  1028,  1029,  1030,  1031,  1032,  1033,  1034,
2137 <    1035,  1036,  1037,  1038,  1039,  1040,  1041,  1042,  1054,  1055,
2138 <    1079,  1043,  1044,  1046,  1047,  1048,  1050,  1056,  1057,  1058,
2139 <    1059,  1060,  1061,  1062,  1063,  1064,  1065,  1066,  1067,  1068,
2140 <    1069,  1070,  1075,  1076,  1077,  1078,  1081,  1082,  1083,  1080,
2141 <    1085,  1084,  1091,  1092,  1094,  1095,  1096,  1097,  1098,  1099,
2142 <    1100,  1104,  1105,  1108,  1109,  1110,  1111,  1112,  1113,  1114,
2143 <    1115,  1116,  1117,  1118,  1121,  1122,  1123,  1124,  1125,  1140,
2144 <    1119,  1141,  1146,  1120,  1147,  1148,  1150,  1174,  1175,  1149,
2145 <    1154,  1155,  1156,  1177,  1157,  1178,  1158,  1179,  1159,  1163,
2146 <    1181,  1237,  1169,  1170,  1275,  1280,   501,  1176,  1182,  1180,
2147 <    1183,  1184,  1185,  1188,  1202,  1203,  1217,  1218,  1219,  1220,
2148 <    1221,  1222,  1223,  1224,  1225,  1356,  1052,   866,  1329,  1226,
2149 <    1227,  1228,  1229,  1230,  1231,  1232,  1233,  1234,  1235,  1236,
2150 <    1241,  1242,  1243,  1244,  1245,  1246,  1247,  1248,  1277,  1278,
2244 <    1279,   743,  1284,  1327,  1285,  1326,  1286,  1308,  1352,  1276,
2245 <     822,  1353,  1355,   790,   884,  1354,   817,  1328,   646,   366,
2246 <    1323,   432,  1252,   653,  1251,  1325,  1324,   354,     0,   731,
2247 <       0,     0,     0,     0,     0,     0,     0,     0,   525,     0,
2248 <       0,     0,     0,     0,     0,     0,   736,     0,     0,     0,
2249 <       0,     0,     0,   720
2030 >     708,   605,   606,   331,   236,    70,   585,    49,   612,   360,
2031 >      50,   361,   493,   576,   362,   121,    54,   387,   543,   254,
2032 >    1075,   300,  1076,   474,   332,   333,    56,   397,   334,   300,
2033 >    1101,   502,   363,   121,    61,    71,    62,   459,   544,    65,
2034 >     460,   707,   245,   576,  1107,    72,   475,    66,   387,    47,
2035 >      48,   364,  1094,   255,   245,   365,  1095,   699,   700,   493,
2036 >    1052,  1053,  1054,  1055,  1056,   476,   256,    69,  1136,   477,
2037 >     118,   585,   236,   119,   366,   461,   367,   503,   462,   257,
2038 >     258,   259,   260,   701,   702,   122,   120,   388,   368,   335,
2039 >     336,   337,   662,   663,   338,   126,   504,   998,   232,   261,
2040 >     233,   505,   339,   122,    73,   586,   676,   234,   369,   127,
2041 >     235,   681,   577,   252,   340,   341,   128,   129,   388,   463,
2042 >     301,   545,   692,   693,   305,   695,   398,   130,   301,   253,
2043 >     342,   343,   298,   705,   706,   131,   464,   710,   370,   246,
2044 >    1253,   132,   577,   299,   494,   133,   134,   478,   135,   389,
2045 >     546,   246,   306,   271,   136,   307,   479,   480,   344,   399,
2046 >     506,   308,  1096,   137,   138,   371,  1097,   247,   139,   587,
2047 >     586,   311,   998,   140,   312,   495,   578,   141,   142,   247,
2048 >     389,   143,   845,   272,   144,   145,  1098,  1099,  1100,   481,
2049 >     400,   494,   146,   397,   313,  1102,   999,   314,   147,   148,
2050 >    1273,   149,   150,   151,   152,   153,   578,   524,  1137,  1108,
2051 >    1203,  1232,  1138,  1234,  1204,  1233,   154,  1235,   315,   273,
2052 >     237,  1274,   495,  1275,   155,   156,   157,   316,   158,  1077,
2053 >     525,   159,   160,   238,   587,   161,   496,   579,   848,   849,
2054 >     372,  -101,   633,   777,   309,   801,   162,   482,   648,   526,
2055 >     599,   738,   274,   527,   275,   276,   652,   769,   559,   595,
2056 >    1000,   465,   733,   317,  1276,   318,   659,   579,   593,   163,
2057 >     745,   999,   395,   164,    70,    79,   722,   165,   166,   167,
2058 >     168,   169,   796,   496,   513,   170,   171,    80,   237,  1036,
2059 >    1037,   319,   398,   522,   172,   277,   320,   278,   279,   321,
2060 >     474,   238,    81,    82,    71,   322,   528,   835,    83,  -101,
2061 >      84,   516,   280,   518,    72,   843,   844,   459,  1238,   323,
2062 >     460,   519,  1239,   475,   173,   399,   174,   271,   175,   324,
2063 >     325,   529,   326,  1001,   176,  1000,  1150,  1277,  1278,   177,
2064 >     327,   328,   476,  1240,   178,   543,   477,  1241,   457,   281,
2065 >     530,   394,    85,    86,   406,   461,   400,   272,   462,    87,
2066 >      88,   407,  1242,  1244,   408,   544,  1243,  1245,   127,   957,
2067 >     958,   959,   409,    73,  1279,   128,   129,   410,  1246,  1256,
2068 >      89,    90,  1247,  1257,   282,   283,   130,  1258,   411,   502,
2069 >     561,  1259,   574,   273,   131,    91,    92,  1261,   412,   463,
2070 >     132,  1262,   970,   413,   133,   134,    93,   135,  1001,   414,
2071 >     415,   416,   531,   136,  1263,    94,   464,  1288,  1264,   417,
2072 >     598,  1289,   137,   138,   478,   418,   274,   139,   275,   276,
2073 >     419,   532,   140,   479,   480,   503,   141,   142,   420,   421,
2074 >     143,   422,   423,   144,   145,   424,   763,   524,   545,   425,
2075 >     360,   146,   361,   426,   504,   362,   427,   147,   148,   505,
2076 >     149,   150,   151,   152,   153,   707,   481,   428,   604,   277,
2077 >     525,   278,   279,   363,   429,   154,   430,   546,   431,   432,
2078 >     433,  1154,   435,   155,   156,   157,   280,   158,   437,   526,
2079 >     159,   160,   364,   527,   161,   438,   365,   439,   440,   441,
2080 >     254,    95,    96,    97,   442,   162,   443,   444,  1155,   813,
2081 >     814,   815,   816,   817,   329,   366,   596,   367,   506,  1206,
2082 >     445,   446,   447,   281,   482,   448,   449,  1156,   163,   368,
2083 >     450,   451,   164,  1157,   255,   452,   165,   166,   167,   168,
2084 >     169,   465,    79,   453,   170,   171,   528,   256,   454,   369,
2085 >    1158,   455,   456,   172,    80,   514,   515,   520,   282,   283,
2086 >     257,   258,   259,   260,   521,   552,   553,   554,   597,    81,
2087 >      82,   529,   555,   556,  1159,    83,   557,    84,   558,   370,
2088 >     261,  1160,   562,   173,   563,   174,   602,   175,   564,   565,
2089 >     530,   566,  1220,   176,  1207,  1161,   567,   600,   177,   568,
2090 >     601,   570,   571,   178,   572,   573,   371,   592,   603,   609,
2091 >     604,   607,   608,  1162,   610,  1163,  1164,   611,   613,    85,
2092 >      86,   614,   615,   618,   616,  1208,    87,    88,   617,   619,
2093 >     661,   620,   664,   621,  1209,   622,   623,   624,   625,   626,
2094 >     627,  1210,   628,   629,   630,   631,   632,    89,    90,   635,
2095 >    1115,   636,   531,  1211,   654,  1212,  1213,   637,   638,   639,
2096 >     641,   642,    91,    92,   643,  1165,   644,  1221,   645,  1214,
2097 >     646,   532,   647,    93,  1116,  1166,   667,   665,   650,  1215,
2098 >     651,   372,    94,  1117,  1167,   656,   666,   668,  1168,  1118,
2099 >    1169,     2,     3,   657,   655,   669,     4,   331,  1222,  1254,
2100 >    1170,   670,   671,   672,   673,  1119,   674,  1223,   675,   677,
2101 >    1171,   678,     5,   679,  1224,     6,     7,   680,   332,   333,
2102 >     682,     8,   334,   683,   685,   684,  1225,   686,  1226,  1227,
2103 >     689,  1120,   687,   688,   690,   897,     9,   691,   694,  1121,
2104 >      10,    11,  1228,    12,   696,   697,   698,   703,   704,    13,
2105 >     707,   709,  1229,   711,   712,   713,   714,   717,   715,   718,
2106 >     747,   748,   920,    14,   751,   724,   720,   721,    95,    96,
2107 >      97,   725,   750,    15,    16,   726,   752,   728,   729,   771,
2108 >    1122,   730,   731,   335,   336,   337,   732,   735,   338,  1177,
2109 >      17,   737,   740,   742,   743,   772,   339,   744,  1123,   755,
2110 >     749,   753,   754,   773,   774,   775,    18,   756,   340,   341,
2111 >     758,   759,   776,   779,   781,   780,   765,   760,   762,   782,
2112 >     783,   784,   778,   785,   342,   343,   766,   767,   787,   788,
2113 >     768,   786,   793,   789,   790,   791,   792,   795,   798,   803,
2114 >      19,   804,   799,   805,   833,   806,   834,   807,   808,    20,
2115 >      21,   809,   344,    22,    23,   898,   899,   900,   901,   902,
2116 >     836,   903,   904,   810,   811,   905,   906,   907,   837,   838,
2117 >     908,   812,   909,   910,   911,   820,   912,   913,   914,   839,
2118 >     840,   915,   921,   922,   923,   924,   925,   916,   926,   927,
2119 >     821,   822,   928,   929,   930,   823,   824,   931,   825,   932,
2120 >     933,   934,   826,   935,   936,   937,    24,   827,   938,  1178,
2121 >    1179,  1180,  1181,  1182,   939,  1183,  1184,   828,   829,  1185,
2122 >    1186,  1187,   841,   830,  1188,   831,  1189,  1190,  1191,   842,
2123 >    1192,  1193,  1194,   832,   846,  1195,   847,   850,   851,   853,
2124 >     852,  1196,   854,   857,   855,   856,   858,   859,   860,   861,
2125 >     863,   862,   864,   865,   866,   868,   867,   869,   971,   870,
2126 >     871,   872,   873,   874,   875,   876,   877,   973,   878,   879,
2127 >     880,   881,   882,   974,   883,   976,   884,   885,   886,   887,
2128 >     888,   889,   890,   891,   892,   893,   894,   895,   979,   980,
2129 >     896,   919,   942,   943,   944,   945,   946,   981,   977,   947,
2130 >     948,   949,   950,   982,   951,   952,   953,   954,   983,   955,
2131 >     956,   962,   963,   964,   965,   966,   967,   968,   985,   987,
2132 >     975,   969,   972,   990,   978,   984,   988,   986,   991,   992,
2133 >     989,   995,   996,   997,  1007,  1008,  1009,  1010,  1012,  1011,
2134 >    1013,  1014,  1015,  1016,  1018,  1019,  1017,  1020,  1021,  1022,
2135 >    1248,  1044,  1046,  1048,  1091,  1260,  1023,   310,  1151,  1132,
2136 >    1024,  1290,  1285,  1271,  1025,  1026,  1027,  1028,  1029,  1030,
2137 >    1031,  1032,  1251,  1033,  1034,   575,  1035,  1040,  1041,  1042,
2138 >    1043,   764,  1284,  1143,  1047,  1045,  1050,  1051,  1049,  1057,
2139 >    1058,  1059,  1060,  1061,  1062,  1063,  1269,  1064,  1065,  1066,
2140 >    1067,  1068,  1249,  1069,  1070,   734,  1071,  1072,  1073,  1074,
2141 >    1080,  1286,  1081,  1082,  1083,  1084,   802,  1085,   797,  1086,
2142 >    1087,  1088,  1089,  1090,  1105,  1106,   746,  1287,  1111,  1112,
2143 >    1113,  1265,  1114,  1126,  1127,  1128,   396,  1129,  1130,  1131,
2144 >    1135,  1141,  1142,   634,  1270,   770,   739,  1146,   458,  1144,
2145 >    1266,   594,  1237,  1147,  1236,  1268,  1152,  1149,   330,   723,
2146 >    1267,     0,   649,  1153,  1174,  1175,  1176,  1199,  1200,  1201,
2147 >    1202,  1205,  1218,  1219,  1250,     0,  1255,  1272,  1252,     0,
2148 >     653,  1282,  1283,   517,     0,   660,     0,   523,     0,     0,
2149 >       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2150 >       0,     0,     0,     0,     0,     0,     0,   560
2151   };
2152  
2153 + #define yypact_value_is_default(yystate) \
2154 +  ((yystate) == (-772))
2155 +
2156 + #define yytable_value_is_error(yytable_value) \
2157 +  YYID (0)
2158 +
2159   static const yytype_int16 yycheck[] =
2160   {
2161 <     340,   341,   425,     1,     1,     1,   263,   347,     1,     1,
2162 <       1,     1,    11,   261,   263,     1,    11,   265,     4,   261,
2163 <       1,     1,     1,   265,    22,     1,     1,   263,    10,     1,
2164 <      12,     1,     1,     1,   261,     1,   261,   377,   265,   379,
2165 <     265,   984,   985,   986,    37,    27,    37,     1,   263,    31,
2166 <       1,   263,   392,   263,    47,   395,    47,     8,     9,    45,
2167 <     400,    12,    48,   831,   832,   833,   834,   835,    19,   261,
2168 <     263,   411,   412,   265,   414,    41,   261,    28,     1,   263,
2169 <     265,    32,    33,   423,   424,   154,   426,   261,    39,    55,
2170 <     154,   265,    43,    44,     1,    46,   261,   263,    90,    22,
2171 <     265,    52,    56,    57,    58,    59,    60,    61,    62,    63,
2172 <      90,    77,   263,    79,   261,    81,    82,   103,   265,    26,
2173 <      71,    72,    90,   119,   121,    76,     1,   125,   121,   263,
2174 <     121,   121,    83,    77,   100,   121,    87,    88,    89,   263,
2175 <     119,    92,    49,     1,    95,    96,   121,    54,     1,   121,
2176 <     104,   121,   121,   149,   105,    13,   261,   262,   156,   156,
2177 <     111,   112,   263,   114,   115,   116,   117,   118,   263,     1,
2178 <     149,     3,     1,     1,     6,   156,    34,    35,   129,    54,
2179 <     156,   154,    40,   523,    42,   139,   156,   138,   156,   140,
2180 <     141,   188,   143,    25,    26,   146,   147,    26,   188,   150,
2181 <       1,   200,   125,   263,   261,   200,     1,   188,   265,    84,
2182 <     161,   263,   188,   188,   121,    90,   188,    49,   188,   188,
2183 <      49,    53,    54,   261,   263,    54,    54,   265,    23,    24,
2184 <     170,   171,   183,   156,   185,    30,    37,    90,   189,    97,
2185 <      98,   148,   193,   194,   195,   196,   197,   261,   106,   107,
2186 <     201,   202,    84,   261,    86,   264,    84,   265,   264,   210,
2187 <     167,   243,    90,   249,   262,   262,   220,    99,   249,   127,
2188 <     128,   262,   262,   249,   249,   264,   262,   249,   153,   198,
2189 <     199,   262,   262,   262,    85,   263,   144,   145,   232,   121,
2190 <     262,   242,   236,   244,   262,   132,   262,   155,   261,   250,
2191 <     254,   132,   265,   156,   255,   264,   164,   264,   262,   260,
2192 <       1,   262,   261,   108,   109,   110,   265,   264,   113,   148,
2193 <     121,   153,   123,   124,   263,   153,   121,   264,   157,   158,
2194 <     237,    14,    15,    16,     1,   167,   264,     4,   264,   134,
2195 <     135,   261,   249,   174,   175,   176,   177,   178,   180,   264,
2196 <      41,   198,   199,   217,   218,   262,   151,   152,   264,   264,
2197 <     264,   264,   191,   264,    55,   166,   264,   168,   169,   264,
2198 <     264,   264,   264,   264,   714,   264,   264,   264,    45,   264,
2199 <     264,    48,   264,   184,   179,   264,    77,   262,    79,   263,
2200 <      81,    82,   264,   251,   252,   253,   221,   222,   223,   224,
2201 <     225,   226,   227,   264,   262,   264,   261,   264,   264,   100,
2202 <     264,   154,   264,   264,   264,   264,   264,   261,     1,   264,
2203 <     249,     1,   264,   264,   256,   264,   264,   228,     8,     9,
2204 <     262,   264,    12,   262,   264,   154,   103,   264,     5,    19,
2205 <     264,   864,   264,   264,   264,     1,   264,     3,    28,   132,
2206 <       6,   264,    32,    33,   121,   256,   257,   264,   264,    39,
2207 <     264,   262,   264,    43,    44,   264,    46,   262,     1,    25,
2208 <      26,    38,    52,    56,    57,    58,    59,    60,    61,    62,
2209 <      63,   264,    49,   264,   264,   264,   264,   264,   264,   264,
2210 <     264,    71,    72,    49,   264,   264,    76,    53,    54,    66,
2211 <     264,   264,   264,    83,    37,   264,    73,    87,    88,    89,
2212 <     264,    78,    92,    80,   854,    95,    96,   264,   264,   264,
2213 <       1,   104,   862,   863,   264,   105,    93,   264,    84,   264,
2214 <      86,   111,   112,   264,   114,   115,   116,   117,   118,     1,
2215 <     264,   264,   264,    99,   264,    26,   264,   264,   264,   129,
2216 <     264,   264,    85,   264,   264,   264,   139,   264,   138,   126,
2217 <     140,   141,   264,   143,    26,   121,   146,   147,    49,   264,
2218 <     150,   264,   264,    54,   264,   142,   264,   264,   264,   264,
2219 <     264,   161,   249,   264,   264,   264,   154,    49,   121,   261,
2220 <     123,   124,    54,   160,   198,   162,   163,   153,   132,   198,
2221 <     198,   132,   132,   183,   132,   185,     1,   198,   198,   189,
2222 <     132,   167,   198,   193,   194,   195,   196,   197,    13,   198,
2223 <     198,   201,   202,   198,   180,   198,   261,   264,   264,   154,
2224 <     210,   261,   264,   166,   198,   168,   169,   220,   264,    34,
2225 <      35,   198,   132,   154,   132,    40,   198,    42,   198,   132,
2226 <     154,   184,   198,    20,    21,   132,    93,   132,   132,   121,
2227 <     198,   198,   242,   230,   244,     1,   198,   148,   154,   198,
2228 <     250,   254,   132,   132,   132,   255,   157,   158,   132,   132,
2229 <     260,   248,   154,    50,   132,   198,   148,    23,    24,   198,
2230 <     264,   258,     0,     1,    30,   228,   198,     5,   264,   198,
2231 <     256,    68,    97,    98,   154,   167,   198,    93,    75,   198,
2232 <     191,   106,   107,   198,    22,   132,   198,   261,    26,   198,
2233 <     198,    29,   198,   256,   257,   198,   261,    94,    36,   198,
2234 <     154,   154,   127,   128,   154,   172,   154,   264,   264,   154,
2235 <     264,   264,   154,    51,   264,   264,   264,   264,   264,   144,
2236 <     145,   154,   264,   261,   264,   122,    64,    65,   264,    67,
2237 <     155,   264,   154,   130,   264,   154,    74,   204,   249,   164,
2238 <     264,   264,   108,   109,   110,   237,   154,   113,   154,   198,
2239 <     154,   261,   219,    91,   198,   121,   172,   249,   198,   198,
2240 <     261,   261,   154,   101,   198,   103,   264,   264,   134,   135,
2241 <     264,   198,   239,   240,   261,   154,   173,   198,   245,   246,
2242 <     247,   248,   120,   154,   154,   151,   152,   154,   204,   154,
2243 <     154,   258,   264,   154,   154,   192,   132,   154,   261,   137,
2244 <     261,   154,   264,   219,   264,   261,   264,   264,   159,   261,
2245 <     261,   159,   198,   179,   154,   261,   275,   154,   261,   132,
2246 <     261,   154,   203,   239,   240,   261,   251,   252,   253,   245,
2247 <     246,   247,   248,   261,   172,   261,   265,   261,   261,   313,
2248 <    1187,   261,   258,   181,   182,   154,   261,   261,   186,   187,
2249 <     205,   206,   207,   208,   209,   264,   211,   212,   261,   214,
2250 <     215,   216,   261,   261,   219,   261,   261,   261,   261,   198,
2251 <     261,   261,   261,   261,   229,   230,   231,   264,   233,   234,
2252 <     235,   264,   264,   238,   264,   261,   241,   205,   206,   207,
2253 <     208,   209,   264,   211,   212,   264,   214,   215,   216,   132,
2254 <      71,   219,   264,  1351,   154,   264,   264,  1332,   264,   261,
2255 <     264,   229,   230,   231,   264,   233,   234,   235,   264,   264,
2256 <     238,   264,   264,   241,   205,   206,   207,   208,   209,   264,
2257 <     211,   212,   264,   214,   215,   216,   264,   264,   219,   264,
2258 <     264,   264,   264,   264,   264,   261,   261,   261,   229,   230,
2259 <     231,   261,   233,   234,   235,   261,   261,   238,   261,   261,
2260 <     241,   261,   261,   261,   261,   261,   261,   261,   261,   261,
2261 <     261,   261,   261,   261,   261,   261,   261,   261,   261,   261,
2262 <     154,   261,   261,   261,   261,   261,   261,   261,   261,   261,
2263 <     261,   261,   261,   261,   261,   261,   261,   261,   261,   261,
2264 <     261,   261,   261,   261,   261,   261,   261,   261,   261,   154,
2265 <     154,   154,   264,   264,   261,   264,   154,   261,   154,   264,
2266 <     154,   261,   264,   154,   154,   261,   261,   261,   154,   261,
2267 <     261,   261,   261,   261,   261,   261,   261,   261,   261,   261,
2268 <     261,   261,   261,   261,   261,   261,   261,   261,   154,   154,
2269 <     154,   264,   264,   264,   264,   264,   264,   261,   261,   261,
2270 <     261,   261,   261,   261,   261,   261,   261,   261,   261,   261,
2271 <     261,   261,   261,   261,   261,   261,   154,   261,   154,   264,
2272 <     261,   264,   132,   132,   132,   132,   132,   132,   154,   132,
2273 <     132,   261,   154,   154,   154,   198,   154,   264,   154,   154,
2274 <     154,   154,   132,   154,   261,   261,   261,   261,   261,   261,
2275 <     154,   261,   261,   154,   261,   261,   131,   154,   198,   261,
2276 <     261,   261,   261,   154,   261,   154,   261,   154,   261,   261,
2277 <     154,   131,   261,   261,   132,   131,   258,   264,   261,   264,
2278 <     261,   261,   261,   261,   261,   261,   261,   261,   261,   261,
2279 <     261,   261,   261,   261,   261,  1330,   775,   595,  1274,   261,
2280 <     261,   261,   261,   261,   261,   261,   261,   261,   261,   261,
2281 <     261,   261,   261,   261,   261,   261,   261,   261,   261,   261,
2375 <     261,   482,   261,  1259,   261,  1257,   261,   261,  1311,  1172,
2376 <     553,  1313,  1316,   512,   626,  1314,   545,  1272,   360,   124,
2377 <    1250,   184,  1132,   372,  1130,  1256,  1254,    95,    -1,   457,
2378 <      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   291,    -1,
2379 <      -1,    -1,    -1,    -1,    -1,    -1,   472,    -1,    -1,    -1,
2380 <      -1,    -1,    -1,   440
2161 >     450,   316,   317,     1,     1,     1,     1,   241,   323,     1,
2162 >     241,     3,     1,     1,     6,     1,   241,     1,     1,     1,
2163 >      10,     1,    12,     1,    22,    23,   241,     1,    26,     1,
2164 >      11,     1,    24,     1,   241,    31,   241,     1,    21,   241,
2165 >       4,   110,     1,     1,    11,    41,    24,   241,     1,   239,
2166 >     240,    43,   239,    35,     1,    47,   243,   174,   175,     1,
2167 >     813,   814,   815,   816,   817,    43,    48,   241,    61,    47,
2168 >     241,     1,     1,   241,    66,    39,    68,    47,    42,    61,
2169 >      62,    63,    64,   174,   175,    71,   241,    71,    80,    87,
2170 >      88,    89,   407,   408,    92,   241,    66,     1,   241,    81,
2171 >     241,    71,   100,    71,   100,   100,   421,   241,   100,     1,
2172 >     241,   426,   100,   241,   112,   113,     8,     9,    71,    83,
2173 >     100,   104,   437,   438,   239,   440,   100,    19,   100,   241,
2174 >     128,   129,   241,   448,   449,    27,   100,   452,   130,    98,
2175 >     209,    33,   100,   241,   133,    37,    38,   125,    40,   133,
2176 >     133,    98,   242,     1,    46,   242,   134,   135,   156,   133,
2177 >     130,   242,   239,    55,    56,   157,   243,   126,    60,   164,
2178 >     100,   242,     1,    65,   242,   164,   164,    69,    70,   126,
2179 >     133,    73,   632,    31,    76,    77,   957,   958,   959,   167,
2180 >     164,   133,    84,     1,   242,   176,   100,   242,    90,    91,
2181 >      51,    93,    94,    95,    96,    97,   164,     1,   201,   176,
2182 >     239,   239,   205,   239,   243,   243,   108,   243,   242,    67,
2183 >     217,    72,   164,    74,   116,   117,   118,   242,   120,   219,
2184 >      24,   123,   124,   230,   164,   127,   225,   225,   194,   195,
2185 >     232,   238,   240,   558,   240,   240,   138,   225,   240,    43,
2186 >     174,   240,   100,    47,   102,   103,   240,   240,   240,   131,
2187 >     164,   225,   240,   242,   115,   242,   240,   225,   240,   161,
2188 >     240,   100,   240,   165,     1,     1,   240,   169,   170,   171,
2189 >     172,   173,   240,   225,   239,   177,   178,    13,   217,   147,
2190 >     148,   242,   100,   240,   186,   143,   242,   145,   146,   242,
2191 >       1,   230,    28,    29,    31,   242,   100,   622,    34,   238,
2192 >      36,   240,   160,   238,    41,   630,   631,     1,   239,   242,
2193 >       4,   239,   243,    24,   216,   133,   218,     1,   220,   242,
2194 >     242,   125,   242,   237,   226,   164,   240,   188,   189,   231,
2195 >     242,   242,    43,   239,   236,     1,    47,   243,   240,   197,
2196 >     144,   242,    78,    79,   242,    39,   164,    31,    42,    85,
2197 >      86,   242,   239,   239,   242,    21,   243,   243,     1,    14,
2198 >      15,    16,   242,   100,   225,     8,     9,   242,   239,   239,
2199 >     106,   107,   243,   243,   232,   233,    19,   239,   242,     1,
2200 >     239,   243,   240,    67,    27,   121,   122,   239,   242,    83,
2201 >      33,   243,   717,   242,    37,    38,   132,    40,   237,   242,
2202 >     242,   242,   206,    46,   239,   141,   100,   239,   243,   242,
2203 >     239,   243,    55,    56,   125,   242,   100,    60,   102,   103,
2204 >     242,   225,    65,   134,   135,    47,    69,    70,   242,   242,
2205 >      73,   242,   242,    76,    77,   242,   240,     1,   104,   242,
2206 >       1,    84,     3,   242,    66,     6,   242,    90,    91,    71,
2207 >      93,    94,    95,    96,    97,   110,   167,   242,   110,   143,
2208 >      24,   145,   146,    24,   242,   108,   242,   133,   242,   242,
2209 >     242,     5,   242,   116,   117,   118,   160,   120,   242,    43,
2210 >     123,   124,    43,    47,   127,   242,    47,   242,   242,   242,
2211 >       1,   227,   228,   229,   242,   138,   242,   242,    32,   151,
2212 >     152,   153,   154,   155,   240,    66,   131,    68,   130,    74,
2213 >     242,   242,   242,   197,   225,   242,   242,    51,   161,    80,
2214 >     242,   242,   165,    57,    35,   242,   169,   170,   171,   172,
2215 >     173,   225,     1,   242,   177,   178,   100,    48,   242,   100,
2216 >      74,   242,   242,   186,    13,   242,   242,   242,   232,   233,
2217 >      61,    62,    63,    64,   242,   242,   242,   242,   131,    28,
2218 >      29,   125,   242,   242,    98,    34,   242,    36,   242,   130,
2219 >      81,   105,   242,   216,   242,   218,   174,   220,   242,   242,
2220 >     144,   242,    74,   226,   149,   119,   242,   110,   231,   242,
2221 >     110,   242,   242,   236,   242,   242,   157,   242,   174,   174,
2222 >     110,   110,   110,   137,   174,   139,   140,   110,   174,    78,
2223 >      79,   174,   174,   239,   174,   180,    85,    86,   174,   239,
2224 >     174,   242,   110,   242,   189,   242,   242,   242,   242,   242,
2225 >     242,   196,   242,   242,   242,   242,   242,   106,   107,   239,
2226 >      20,   242,   206,   208,   131,   210,   211,   242,   242,   242,
2227 >     242,   242,   121,   122,   242,   189,   242,   149,   242,   224,
2228 >     242,   225,   242,   132,    44,   199,   110,   174,   242,   234,
2229 >     242,   232,   141,    53,   208,   242,   174,   131,   212,    59,
2230 >     214,     0,     1,   242,   239,   174,     5,     1,   180,  1149,
2231 >     224,   110,   110,   110,   174,    75,   174,   189,   174,   131,
2232 >     234,   174,    21,   110,   196,    24,    25,   110,    22,    23,
2233 >     110,    30,    26,   110,   110,   131,   208,   110,   210,   211,
2234 >     242,   101,   174,   174,   174,    61,    45,   242,   174,   109,
2235 >      49,    50,   224,    52,   174,   174,   174,   174,   174,    58,
2236 >     110,   131,   234,   174,   174,   174,   174,   242,   239,   242,
2237 >     174,   174,    61,    72,   131,   239,   242,   242,   227,   228,
2238 >     229,   242,   241,    82,    83,   242,   131,   242,   242,   174,
2239 >     150,   242,   242,    87,    88,    89,   242,   242,    92,    61,
2240 >      99,   242,   239,   242,   242,   174,   100,   242,   168,   242,
2241 >     239,   239,   239,   174,   131,   174,   115,   242,   112,   113,
2242 >     242,   242,   174,   131,   131,   174,   239,   242,   242,   131,
2243 >     131,   131,   239,   131,   128,   129,   242,   242,   131,   110,
2244 >     242,   242,   242,   131,   131,   239,   239,   242,   239,   131,
2245 >     149,   239,   242,   239,   110,   239,   110,   239,   239,   158,
2246 >     159,   239,   156,   162,   163,   181,   182,   183,   184,   185,
2247 >     110,   187,   188,   239,   239,   191,   192,   193,   110,   110,
2248 >     196,   239,   198,   199,   200,   239,   202,   203,   204,   110,
2249 >     131,   207,   181,   182,   183,   184,   185,   213,   187,   188,
2250 >     239,   239,   191,   192,   193,   239,   239,   196,   239,   198,
2251 >     199,   200,   239,   202,   203,   204,   215,   239,   207,   181,
2252 >     182,   183,   184,   185,   213,   187,   188,   239,   239,   191,
2253 >     192,   193,   110,   239,   196,   239,   198,   199,   200,   110,
2254 >     202,   203,   204,   239,   239,   207,   131,   131,   174,   131,
2255 >     242,   213,   131,   110,   131,   131,   131,   131,   239,   131,
2256 >     239,   131,   239,   131,   131,   239,   242,   239,   174,   239,
2257 >     239,   239,   239,   239,   239,   239,   239,   131,   239,   239,
2258 >     239,   239,   239,   131,   239,   131,   239,   239,   239,   239,
2259 >     239,   239,   239,   239,   239,   239,   239,   239,   131,   110,
2260 >     239,   239,   239,   239,   239,   239,   239,   131,   174,   239,
2261 >     239,   239,   239,   131,   239,   239,   239,   239,   131,   239,
2262 >     239,   239,   239,   239,   239,   239,   239,   239,   131,   131,
2263 >     239,   242,   242,   131,   242,   239,   239,   242,   131,   110,
2264 >     242,   239,   239,   239,   239,   239,   131,   174,   131,   242,
2265 >     131,   131,   242,   131,   131,   131,   239,   131,   239,   239,
2266 >     110,   131,   131,   131,   136,  1204,   239,    74,  1002,   136,
2267 >     239,  1289,  1259,  1247,   239,   239,   239,   239,   239,   239,
2268 >     239,   239,   131,   239,   239,   284,   239,   239,   239,   239,
2269 >     239,   533,  1257,   179,   239,   242,   239,   239,   242,   239,
2270 >     239,   239,   239,   239,   239,   239,  1243,   239,   239,   239,
2271 >     239,   239,  1144,   239,   239,   483,   239,   239,   239,   239,
2272 >     239,  1262,   239,   239,   239,   239,   588,   239,   580,   239,
2273 >     239,   239,   239,   239,   239,   239,   508,  1264,   239,   239,
2274 >     239,  1233,   239,   239,   239,   239,   123,   239,   239,   239,
2275 >     239,   239,   239,   345,  1245,   547,   498,   239,   179,   243,
2276 >    1235,   302,  1097,   242,  1095,  1241,   239,   242,    98,   466,
2277 >    1239,    -1,   373,   239,   239,   239,   239,   239,   239,   239,
2278 >     239,   239,   239,   239,   239,    -1,   239,   239,   242,    -1,
2279 >     390,   239,   239,   239,    -1,   402,    -1,   248,    -1,    -1,
2280 >      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2281 >      -1,    -1,    -1,    -1,    -1,    -1,    -1,   262
2282   };
2283  
2284   /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
2285     symbol of state STATE-NUM.  */
2286   static const yytype_uint16 yystos[] =
2287   {
2288 <       0,   267,     0,     1,     5,    22,    26,    29,    36,    51,
2289 <      64,    65,    67,    74,    91,   101,   103,   120,   137,   172,
2290 <     181,   182,   186,   187,   268,   273,   278,   296,   302,   317,
2291 <     340,   359,   373,   391,   398,   408,   417,   444,   454,   460,
2292 <     464,   474,   538,   554,   575,   261,   262,   263,   263,   341,
2293 <     418,   455,   263,   465,   263,   539,   374,   445,   360,   263,
2294 <     263,   318,   392,   263,   263,   399,   409,     1,    37,    47,
2295 <     121,   297,   298,   299,   300,   301,     1,    13,    34,    35,
2296 <      40,    42,    97,    98,   106,   107,   127,   128,   144,   145,
2297 <     155,   164,   251,   252,   253,   555,   556,   557,   558,   559,
2298 <     560,   561,   562,   563,   564,   565,   566,   567,   568,   569,
2299 <     570,   571,   572,   573,   574,   154,   342,   346,   154,   419,
2300 <     423,   263,     1,    90,   461,   462,   463,   263,     1,     8,
2301 <       9,    12,    19,    28,    32,    33,    39,    43,    44,    46,
2302 <      52,    71,    72,    76,    83,    87,    88,    89,    92,    95,
2303 <      96,   105,   111,   112,   114,   115,   116,   117,   118,   129,
2304 <     138,   140,   141,   143,   146,   147,   150,   161,   183,   185,
2305 <     189,   193,   194,   195,   196,   197,   201,   202,   210,   242,
2306 <     244,   250,   255,   260,   475,   476,   477,   478,   479,   480,
2307 <     481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
2308 <     491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
2309 <     501,   502,   503,   504,   505,   506,   507,   508,   509,   510,
2310 <     511,   512,   513,   514,   515,   516,   517,   518,   519,   520,
2311 <     521,   522,   523,   524,   525,   526,   530,   534,   535,   536,
2312 <     537,   263,   263,   263,   263,     1,    56,    57,    58,    59,
2313 <      60,    61,    62,    63,   104,   139,   220,   254,   303,   304,
2314 <     305,   306,   307,   308,   309,   310,   311,   312,   313,   314,
2315 <     315,   316,     1,   119,   149,   274,   275,   276,   277,   154,
2316 <     319,   323,   263,     1,    41,    55,    77,    79,    81,    82,
2317 <     100,   576,   577,   578,   579,   580,   581,   582,   583,   584,
2318 <       1,    37,    85,   121,   123,   124,   166,   168,   169,   184,
2319 <     228,   256,   257,   279,   280,   281,   285,   286,   287,   288,
2320 <     289,   290,   291,   292,   293,   294,   295,   263,   263,   261,
2321 <     264,   264,   264,   262,   298,   264,   264,   264,   264,   264,
2322 <     264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
2323 <     264,   264,   264,   262,   556,   263,   263,     1,    90,   156,
2324 <     456,   457,   458,   459,   264,   262,   462,     1,   121,   156,
2325 <     188,   466,   470,   471,   472,   473,   264,   264,   264,   264,
2326 <     264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
2327 <     264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
2328 <     264,   264,   264,   264,   264,   264,   264,   264,   531,   264,
2329 <     527,   264,   264,   264,   264,   264,   264,   264,   264,   264,
2330 <     264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
2331 <     264,   262,   476,     1,     4,    45,    48,   103,   121,   249,
2332 <     540,   541,   542,   543,   544,   548,   549,   550,     1,    26,
2333 <      49,    54,   148,   157,   158,   191,   249,   375,   376,   377,
2334 <     378,   379,   380,   381,   388,   389,   390,     1,   156,   188,
2335 <     249,   446,   450,   451,   452,   453,     1,    54,    84,    90,
2336 <     153,   361,   365,   366,   367,   371,   372,   261,   264,   264,
2337 <     264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
2338 <     262,   304,   261,   264,   264,   262,   275,   263,     1,    22,
2339 <     125,   156,   393,   394,   395,   396,   397,   264,   264,   264,
2340 <     264,   264,   264,   264,   262,   577,   261,   264,   264,   264,
2341 <     264,   264,   264,   264,   282,   264,   264,   264,   264,   262,
2342 <     280,     1,   121,   188,   249,   400,   401,   402,   403,   404,
2343 <       1,   121,   188,   410,   411,   412,   413,   154,   154,   154,
2344 <     261,   198,   132,   132,   198,   198,   132,   270,   270,   132,
2345 <     132,   198,   198,   132,   270,   198,   198,   198,   198,   198,
2346 <     261,     1,    23,    24,    30,   108,   109,   110,   113,   121,
2347 <     134,   135,   151,   152,   179,   343,   344,   345,   347,   348,
2348 <     349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
2349 <       1,     3,     6,    25,    26,    49,    53,    54,    84,    86,
2350 <      99,   121,   153,   167,   180,   256,   420,   421,   422,   424,
2351 <     425,   426,   427,   428,   429,   430,   431,   438,   439,   440,
2352 <     441,   442,   443,   264,   264,   262,   457,   154,   261,   264,
2353 <     264,   467,   262,   471,   198,   270,   198,   270,   132,   154,
2354 <     132,   198,   198,   132,   154,   198,   132,   132,   132,   198,
2355 <     270,   198,   198,   270,   154,   198,   132,   132,   270,   132,
2356 <     132,   154,   132,   132,   198,   198,   264,   198,   264,   270,
2357 <     270,   198,   270,   154,   198,   198,   198,   198,   199,   198,
2358 <     199,   198,   198,   270,   270,   132,   272,   270,   198,   198,
2359 <     198,   198,   261,   551,   264,   264,   545,   264,   264,   262,
2360 <     541,   261,   264,   264,   382,   264,   264,   264,   264,   264,
2361 <     262,   376,   264,   447,   264,   262,   451,   261,   362,   264,
2362 <     264,   264,   262,   366,   154,   154,   154,   154,   154,   154,
2363 <     154,   154,   221,   222,   223,   224,   225,   226,   227,   154,
2364 <     154,   198,   261,   154,   154,   261,     1,    26,    49,    54,
2365 <     121,   148,   167,   237,   249,   320,   321,   322,   324,   325,
2366 <     326,   327,   328,   329,   333,   261,   264,   264,   264,   262,
2367 <     394,   198,   198,   198,   154,   198,   198,   270,   261,   154,
2368 <     198,   154,   154,   154,   154,   154,   264,   154,   132,   154,
2369 <     154,   261,   261,   264,   405,   264,   262,   401,   261,   264,
2370 <     414,   262,   411,   261,   261,   261,   261,   261,   261,   261,
2371 <     261,   174,   175,   176,   177,   178,   269,   270,   261,   261,
2372 <     261,   261,   261,   261,   261,   261,   261,   261,   261,   261,
2373 <     261,   261,   264,   264,   264,   264,   264,   264,   264,   264,
2374 <     264,   264,   264,   264,   264,   262,   344,   261,   264,   264,
2375 <     264,   264,   264,   264,   432,   264,   264,   264,   264,   264,
2376 <     264,   264,   264,   262,   421,   154,   154,   261,   261,   154,
2377 <     154,   264,   261,   261,   261,   261,   261,   261,   261,   261,
2378 <     261,   261,   261,   261,   261,   261,   261,   261,   261,   261,
2379 <     261,   261,   261,   261,   261,   261,   261,   261,   261,   261,
2380 <     261,   261,   261,   261,   261,   205,   206,   207,   208,   209,
2381 <     211,   212,   214,   215,   216,   219,   229,   230,   231,   233,
2382 <     234,   235,   238,   241,   532,   533,   261,   205,   206,   207,
2383 <     208,   209,   211,   212,   214,   215,   216,   219,   229,   230,
2384 <     231,   233,   234,   235,   238,   241,   528,   529,   261,   261,
2385 <     261,   261,   261,   261,   261,   261,   261,   261,   261,   261,
2386 <     261,   261,   261,   261,    14,    15,    16,   271,   272,   261,
2387 <     261,   261,   261,   261,   261,   264,   270,   198,   264,   154,
2388 <     154,   261,   154,   198,   264,   154,   132,   154,   154,   154,
2389 <     261,   154,   264,   154,   261,   264,   154,   154,   132,   369,
2390 <     370,   261,   261,   261,   261,   261,   261,   261,   261,   261,
2391 <     261,   261,   261,   261,   261,   261,   261,   261,   261,   261,
2392 <     261,   261,   261,   264,   264,   334,   264,   264,   264,   330,
2393 <     264,   262,   321,   154,   154,   154,   261,   261,   261,   261,
2394 <     261,   261,   261,   261,   261,   261,   261,   261,   261,   261,
2395 <     261,   170,   171,   283,   284,   261,   261,   261,   261,   154,
2396 <     264,   154,   261,   154,   264,   261,   269,   269,   269,   269,
2397 <     269,   132,   132,   270,   132,   132,   132,   132,   154,   132,
2398 <     132,   270,   270,   272,   261,   154,   217,   218,   154,   154,
2399 <     198,   154,   264,   154,   154,   154,   154,   132,   154,   154,
2400 <     154,   261,   261,   261,   261,   261,   159,   468,   469,   261,
2401 <     265,   261,   265,   271,   271,   271,    11,   200,   552,   553,
2402 <     261,   261,    11,   200,   546,   547,   261,   261,   261,   261,
2403 <     131,   383,   384,   386,   261,   261,   261,   261,   261,   261,
2404 <     159,   448,   449,   261,    77,   232,   236,   363,   364,   261,
2405 <     261,   203,   265,   368,   154,   198,   264,   154,   154,   154,
2406 <     264,   154,   261,   261,   261,   261,   261,   265,   261,    93,
2407 <     172,   204,   219,   239,   240,   245,   246,   247,   248,   258,
2408 <     406,   407,   261,   261,    93,   172,   204,   219,   239,   240,
2409 <     245,   246,   247,   248,   258,   415,   416,   261,   261,   261,
2410 <     261,   261,   261,   261,   261,   261,   261,   261,   261,   261,
2411 <     261,   261,   261,   261,   261,   261,   261,   131,   433,   434,
2412 <     436,   261,   261,   261,   261,   261,   261,   261,   261,   261,
2413 <     265,   533,   529,   261,   265,   261,   265,   385,   261,   265,
2414 <      20,    21,    50,    68,    75,    94,   122,   130,   173,   192,
2415 <     387,   261,   265,   261,   265,   132,   370,   261,   261,   261,
2416 <     131,   335,   336,   338,   261,   261,   261,   205,   206,   207,
2417 <     208,   209,   211,   212,   214,   215,   216,   219,   229,   230,
2517 <     231,   233,   234,   235,   238,   241,   331,   332,   261,   284,
2518 <     261,   265,   261,   265,   435,   261,   265,    10,    12,    27,
2519 <      31,   243,   437,   469,   553,   547,   387,   384,   449,   364,
2520 <     337,   261,   265,     5,    38,    49,    66,    73,    78,    80,
2521 <      93,   126,   142,   160,   162,   163,   230,   248,   258,   339,
2522 <     261,   265,   407,   416,   437,   434,   339,   336,   332
2288 >       0,   245,     0,     1,     5,    21,    24,    25,    30,    45,
2289 >      49,    50,    52,    58,    72,    82,    83,    99,   115,   149,
2290 >     158,   159,   162,   163,   215,   246,   251,   256,   274,   280,
2291 >     295,   313,   330,   344,   359,   366,   370,   380,   389,   408,
2292 >     418,   424,   428,   438,   498,   514,   535,   239,   240,   241,
2293 >     241,   314,   390,   419,   241,   429,   241,   499,   345,   409,
2294 >     331,   241,   241,   296,   360,   241,   241,   371,   381,   241,
2295 >       1,    31,    41,   100,   275,   276,   277,   278,   279,     1,
2296 >      13,    28,    29,    34,    36,    78,    79,    85,    86,   106,
2297 >     107,   121,   122,   132,   141,   227,   228,   229,   515,   516,
2298 >     517,   518,   519,   520,   521,   522,   523,   524,   525,   526,
2299 >     527,   528,   529,   530,   531,   532,   533,   534,   241,   241,
2300 >     241,     1,    71,   425,   426,   427,   241,     1,     8,     9,
2301 >      19,    27,    33,    37,    38,    40,    46,    55,    56,    60,
2302 >      65,    69,    70,    73,    76,    77,    84,    90,    91,    93,
2303 >      94,    95,    96,    97,   108,   116,   117,   118,   120,   123,
2304 >     124,   127,   138,   161,   165,   169,   170,   171,   172,   173,
2305 >     177,   178,   186,   216,   218,   220,   226,   231,   236,   439,
2306 >     440,   441,   442,   443,   444,   445,   446,   447,   448,   449,
2307 >     450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
2308 >     460,   461,   462,   463,   464,   465,   466,   467,   468,   469,
2309 >     470,   471,   472,   473,   474,   475,   476,   477,   478,   479,
2310 >     480,   481,   482,   483,   484,   485,   486,   490,   494,   495,
2311 >     496,   497,   241,   241,   241,   241,     1,   217,   230,   281,
2312 >     282,   283,   284,   285,   286,     1,    98,   126,   252,   253,
2313 >     254,   255,   241,   241,     1,    35,    48,    61,    62,    63,
2314 >      64,    81,   536,   537,   538,   539,   540,   541,   542,   543,
2315 >     544,     1,    31,    67,   100,   102,   103,   143,   145,   146,
2316 >     160,   197,   232,   233,   257,   258,   259,   263,   264,   265,
2317 >     266,   267,   268,   269,   270,   271,   272,   273,   241,   241,
2318 >       1,   100,   367,   368,   369,   239,   242,   242,   242,   240,
2319 >     276,   242,   242,   242,   242,   242,   242,   242,   242,   242,
2320 >     242,   242,   242,   242,   242,   242,   242,   242,   242,   240,
2321 >     516,     1,    22,    23,    26,    87,    88,    89,    92,   100,
2322 >     112,   113,   128,   129,   156,   315,   316,   317,   318,   319,
2323 >     320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
2324 >       1,     3,     6,    24,    43,    47,    66,    68,    80,   100,
2325 >     130,   157,   232,   391,   392,   393,   394,   395,   396,   397,
2326 >     398,   399,   400,   404,   405,   406,   407,     1,    71,   133,
2327 >     420,   421,   422,   423,   242,   240,   426,     1,   100,   133,
2328 >     164,   430,   434,   435,   436,   437,   242,   242,   242,   242,
2329 >     242,   242,   242,   242,   242,   242,   242,   242,   242,   242,
2330 >     242,   242,   242,   242,   242,   242,   242,   242,   242,   242,
2331 >     242,   242,   242,   242,   491,   242,   487,   242,   242,   242,
2332 >     242,   242,   242,   242,   242,   242,   242,   242,   242,   242,
2333 >     242,   242,   242,   242,   242,   242,   242,   240,   440,     1,
2334 >       4,    39,    42,    83,   100,   225,   500,   501,   502,   503,
2335 >     504,   508,   509,   510,     1,    24,    43,    47,   125,   134,
2336 >     135,   167,   225,   346,   347,   348,   349,   350,   351,   352,
2337 >     356,   357,   358,     1,   133,   164,   225,   410,   414,   415,
2338 >     416,   417,     1,    47,    66,    71,   130,   332,   336,   337,
2339 >     338,   342,   343,   239,   242,   242,   240,   282,   238,   239,
2340 >     242,   242,   240,   253,     1,    24,    43,    47,   100,   125,
2341 >     144,   206,   225,   297,   298,   299,   300,   301,   302,   303,
2342 >     304,   305,   309,     1,    21,   104,   133,   361,   362,   363,
2343 >     364,   365,   242,   242,   242,   242,   242,   242,   242,   240,
2344 >     537,   239,   242,   242,   242,   242,   242,   242,   242,   260,
2345 >     242,   242,   242,   242,   240,   258,     1,   100,   164,   225,
2346 >     372,   373,   374,   375,   376,     1,   100,   164,   382,   383,
2347 >     384,   385,   242,   240,   368,   131,   131,   131,   239,   174,
2348 >     110,   110,   174,   174,   110,   248,   248,   110,   110,   174,
2349 >     174,   110,   248,   174,   174,   174,   174,   174,   239,   239,
2350 >     242,   242,   242,   242,   242,   242,   242,   242,   242,   242,
2351 >     242,   242,   242,   240,   316,   239,   242,   242,   242,   242,
2352 >     401,   242,   242,   242,   242,   242,   242,   242,   240,   392,
2353 >     242,   242,   240,   421,   131,   239,   242,   242,   431,   240,
2354 >     435,   174,   248,   248,   110,   174,   174,   110,   131,   174,
2355 >     110,   110,   110,   174,   174,   174,   248,   131,   174,   110,
2356 >     110,   248,   110,   110,   131,   110,   110,   174,   174,   242,
2357 >     174,   242,   248,   248,   174,   248,   174,   174,   174,   174,
2358 >     175,   174,   175,   174,   174,   248,   248,   110,   250,   131,
2359 >     248,   174,   174,   174,   174,   239,   511,   242,   242,   505,
2360 >     242,   242,   240,   501,   239,   242,   242,   353,   242,   242,
2361 >     242,   242,   242,   240,   347,   242,   411,   242,   240,   415,
2362 >     239,   333,   242,   242,   242,   240,   337,   174,   174,   239,
2363 >     241,   131,   131,   239,   239,   242,   242,   310,   242,   242,
2364 >     242,   306,   242,   240,   298,   239,   242,   242,   242,   240,
2365 >     362,   174,   174,   174,   131,   174,   174,   248,   239,   131,
2366 >     174,   131,   131,   131,   131,   131,   242,   131,   110,   131,
2367 >     131,   239,   239,   242,   377,   242,   240,   373,   239,   242,
2368 >     386,   240,   383,   131,   239,   239,   239,   239,   239,   239,
2369 >     239,   239,   239,   151,   152,   153,   154,   155,   247,   248,
2370 >     239,   239,   239,   239,   239,   239,   239,   239,   239,   239,
2371 >     239,   239,   239,   110,   110,   248,   110,   110,   110,   110,
2372 >     131,   110,   110,   248,   248,   250,   239,   131,   194,   195,
2373 >     131,   174,   242,   131,   131,   131,   131,   110,   131,   131,
2374 >     239,   131,   131,   239,   239,   131,   131,   242,   239,   239,
2375 >     239,   239,   239,   239,   239,   239,   239,   239,   239,   239,
2376 >     239,   239,   239,   239,   239,   239,   239,   239,   239,   239,
2377 >     239,   239,   239,   239,   239,   239,   239,    61,   181,   182,
2378 >     183,   184,   185,   187,   188,   191,   192,   193,   196,   198,
2379 >     199,   200,   202,   203,   204,   207,   213,   492,   493,   239,
2380 >      61,   181,   182,   183,   184,   185,   187,   188,   191,   192,
2381 >     193,   196,   198,   199,   200,   202,   203,   204,   207,   213,
2382 >     488,   489,   239,   239,   239,   239,   239,   239,   239,   239,
2383 >     239,   239,   239,   239,   239,   239,   239,    14,    15,    16,
2384 >     249,   250,   239,   239,   239,   239,   239,   239,   239,   242,
2385 >     248,   174,   242,   131,   131,   239,   131,   174,   242,   131,
2386 >     110,   131,   131,   131,   239,   131,   242,   131,   239,   242,
2387 >     131,   131,   110,   340,   341,   239,   239,   239,     1,   100,
2388 >     164,   237,   287,   288,   289,   290,   291,   239,   239,   131,
2389 >     174,   242,   131,   131,   131,   242,   131,   239,   131,   131,
2390 >     131,   239,   239,   239,   239,   239,   239,   239,   239,   239,
2391 >     239,   239,   239,   239,   239,   239,   147,   148,   261,   262,
2392 >     239,   239,   239,   239,   131,   242,   131,   239,   131,   242,
2393 >     239,   239,   247,   247,   247,   247,   247,   239,   239,   239,
2394 >     239,   239,   239,   239,   239,   239,   239,   239,   239,   239,
2395 >     239,   239,   239,   239,   239,    10,    12,   219,   402,   403,
2396 >     239,   239,   239,   239,   239,   239,   239,   239,   239,   239,
2397 >     239,   136,   432,   433,   239,   243,   239,   243,   249,   249,
2398 >     249,    11,   176,   512,   513,   239,   239,    11,   176,   506,
2399 >     507,   239,   239,   239,   239,    20,    44,    53,    59,    75,
2400 >     101,   109,   150,   168,   354,   355,   239,   239,   239,   239,
2401 >     239,   239,   136,   412,   413,   239,    61,   201,   205,   334,
2402 >     335,   239,   239,   179,   243,   339,   239,   242,   292,   242,
2403 >     240,   288,   239,   239,     5,    32,    51,    57,    74,    98,
2404 >     105,   119,   137,   139,   140,   189,   199,   208,   212,   214,
2405 >     224,   234,   311,   312,   239,   239,   239,    61,   181,   182,
2406 >     183,   184,   185,   187,   188,   191,   192,   193,   196,   198,
2407 >     199,   200,   202,   203,   204,   207,   213,   307,   308,   239,
2408 >     239,   239,   239,   239,   243,   239,    74,   149,   180,   189,
2409 >     196,   208,   210,   211,   224,   234,   378,   379,   239,   239,
2410 >      74,   149,   180,   189,   196,   208,   210,   211,   224,   234,
2411 >     387,   388,   239,   243,   239,   243,   493,   489,   239,   243,
2412 >     239,   243,   239,   243,   239,   243,   239,   243,   110,   341,
2413 >     239,   131,   242,   209,   250,   239,   239,   243,   239,   243,
2414 >     262,   239,   243,   239,   243,   403,   433,   513,   507,   355,
2415 >     413,   335,   239,    51,    72,    74,   115,   188,   189,   225,
2416 >     293,   294,   239,   239,   312,   308,   379,   388,   239,   243,
2417 >     294
2418   };
2419  
2420   #define yyerrok         (yyerrstatus = 0)
# Line 2555 | Line 2450 | do                                                             \
2450      {                                                           \
2451        yychar = (Token);                                         \
2452        yylval = (Value);                                         \
2558      yytoken = YYTRANSLATE (yychar);                           \
2453        YYPOPSTACK (1);                                           \
2454        goto yybackup;                                            \
2455      }                                                           \
# Line 2597 | Line 2491 | while (YYID (0))
2491   #endif
2492  
2493  
2494 < /* YY_LOCATION_PRINT -- Print the location on the stream.
2601 <   This macro was not mandated originally: define only if we know
2602 <   we won't break user code: when these are the locations we know.  */
2494 > /* This macro is provided for backward compatibility. */
2495  
2496   #ifndef YY_LOCATION_PRINT
2497 < # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
2606 < #  define YY_LOCATION_PRINT(File, Loc)                  \
2607 <     fprintf (File, "%d.%d-%d.%d",                      \
2608 <              (Loc).first_line, (Loc).first_column,     \
2609 <              (Loc).last_line,  (Loc).last_column)
2610 < # else
2611 < #  define YY_LOCATION_PRINT(File, Loc) ((void) 0)
2612 < # endif
2497 > # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
2498   #endif
2499  
2500  
# Line 2801 | Line 2686 | int yydebug;
2686   # define YYMAXDEPTH 10000
2687   #endif
2688  
2804
2689  
2690   #if YYERROR_VERBOSE
2691  
# Line 2904 | Line 2788 | yytnamerr (char *yyres, const char *yyst
2788   }
2789   # endif
2790  
2791 < /* Copy into YYRESULT an error message about the unexpected token
2792 <   YYCHAR while in state YYSTATE.  Return the number of bytes copied,
2793 <   including the terminating null byte.  If YYRESULT is null, do not
2794 <   copy anything; just return the number of bytes that would be
2795 <   copied.  As a special case, return 0 if an ordinary "syntax error"
2796 <   message will do.  Return YYSIZE_MAXIMUM if overflow occurs during
2797 <   size calculation.  */
2798 < static YYSIZE_T
2799 < yysyntax_error (char *yyresult, int yystate, int yychar)
2791 > /* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message
2792 >   about the unexpected token YYTOKEN for the state stack whose top is
2793 >   YYSSP.
2794 >
2795 >   Return 0 if *YYMSG was successfully written.  Return 1 if *YYMSG is
2796 >   not large enough to hold the message.  In that case, also set
2797 >   *YYMSG_ALLOC to the required number of bytes.  Return 2 if the
2798 >   required number of bytes is too large to store.  */
2799 > static int
2800 > yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
2801 >                yytype_int16 *yyssp, int yytoken)
2802   {
2803 <  int yyn = yypact[yystate];
2803 >  YYSIZE_T yysize0 = yytnamerr (0, yytname[yytoken]);
2804 >  YYSIZE_T yysize = yysize0;
2805 >  YYSIZE_T yysize1;
2806 >  enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
2807 >  /* Internationalized format string. */
2808 >  const char *yyformat = 0;
2809 >  /* Arguments of yyformat. */
2810 >  char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
2811 >  /* Number of reported tokens (one for the "unexpected", one per
2812 >     "expected"). */
2813 >  int yycount = 0;
2814 >
2815 >  /* There are many possibilities here to consider:
2816 >     - Assume YYFAIL is not used.  It's too flawed to consider.  See
2817 >       <http://lists.gnu.org/archive/html/bison-patches/2009-12/msg00024.html>
2818 >       for details.  YYERROR is fine as it does not invoke this
2819 >       function.
2820 >     - If this state is a consistent state with a default action, then
2821 >       the only way this function was invoked is if the default action
2822 >       is an error action.  In that case, don't check for expected
2823 >       tokens because there are none.
2824 >     - The only way there can be no lookahead present (in yychar) is if
2825 >       this state is a consistent state with a default action.  Thus,
2826 >       detecting the absence of a lookahead is sufficient to determine
2827 >       that there is no unexpected or expected token to report.  In that
2828 >       case, just report a simple "syntax error".
2829 >     - Don't assume there isn't a lookahead just because this state is a
2830 >       consistent state with a default action.  There might have been a
2831 >       previous inconsistent state, consistent state with a non-default
2832 >       action, or user semantic action that manipulated yychar.
2833 >     - Of course, the expected token list depends on states to have
2834 >       correct lookahead information, and it depends on the parser not
2835 >       to perform extra reductions after fetching a lookahead from the
2836 >       scanner and before detecting a syntax error.  Thus, state merging
2837 >       (from LALR or IELR) and default reductions corrupt the expected
2838 >       token list.  However, the list is correct for canonical LR with
2839 >       one exception: it will still contain any token that will not be
2840 >       accepted due to an error action in a later state.
2841 >  */
2842 >  if (yytoken != YYEMPTY)
2843 >    {
2844 >      int yyn = yypact[*yyssp];
2845 >      yyarg[yycount++] = yytname[yytoken];
2846 >      if (!yypact_value_is_default (yyn))
2847 >        {
2848 >          /* Start YYX at -YYN if negative to avoid negative indexes in
2849 >             YYCHECK.  In other words, skip the first -YYN actions for
2850 >             this state because they are default actions.  */
2851 >          int yyxbegin = yyn < 0 ? -yyn : 0;
2852 >          /* Stay within bounds of both yycheck and yytname.  */
2853 >          int yychecklim = YYLAST - yyn + 1;
2854 >          int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
2855 >          int yyx;
2856 >
2857 >          for (yyx = yyxbegin; yyx < yyxend; ++yyx)
2858 >            if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR
2859 >                && !yytable_value_is_error (yytable[yyx + yyn]))
2860 >              {
2861 >                if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
2862 >                  {
2863 >                    yycount = 1;
2864 >                    yysize = yysize0;
2865 >                    break;
2866 >                  }
2867 >                yyarg[yycount++] = yytname[yyx];
2868 >                yysize1 = yysize + yytnamerr (0, yytname[yyx]);
2869 >                if (! (yysize <= yysize1
2870 >                       && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
2871 >                  return 2;
2872 >                yysize = yysize1;
2873 >              }
2874 >        }
2875 >    }
2876  
2877 <  if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
2920 <    return 0;
2921 <  else
2877 >  switch (yycount)
2878      {
2879 <      int yytype = YYTRANSLATE (yychar);
2880 <      YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
2881 <      YYSIZE_T yysize = yysize0;
2882 <      YYSIZE_T yysize1;
2883 <      int yysize_overflow = 0;
2884 <      enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
2885 <      char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
2886 <      int yyx;
2887 <
2888 < # if 0
2889 <      /* This is so xgettext sees the translatable formats that are
2890 <         constructed on the fly.  */
2891 <      YY_("syntax error, unexpected %s");
2892 <      YY_("syntax error, unexpected %s, expecting %s");
2893 <      YY_("syntax error, unexpected %s, expecting %s or %s");
2894 <      YY_("syntax error, unexpected %s, expecting %s or %s or %s");
2895 <      YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
2896 < # endif
2897 <      char *yyfmt;
2898 <      char const *yyf;
2899 <      static char const yyunexpected[] = "syntax error, unexpected %s";
2900 <      static char const yyexpecting[] = ", expecting %s";
2901 <      static char const yyor[] = " or %s";
2902 <      char yyformat[sizeof yyunexpected
2903 <                    + sizeof yyexpecting - 1
2904 <                    + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
2905 <                       * (sizeof yyor - 1))];
2906 <      char const *yyprefix = yyexpecting;
2907 <
2908 <      /* Start YYX at -YYN if negative to avoid negative indexes in
2909 <         YYCHECK.  */
2910 <      int yyxbegin = yyn < 0 ? -yyn : 0;
2911 <
2912 <      /* Stay within bounds of both yycheck and yytname.  */
2913 <      int yychecklim = YYLAST - yyn + 1;
2914 <      int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
2915 <      int yycount = 1;
2916 <
2917 <      yyarg[0] = yytname[yytype];
2918 <      yyfmt = yystpcpy (yyformat, yyunexpected);
2919 <
2920 <      for (yyx = yyxbegin; yyx < yyxend; ++yyx)
2921 <        if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
2922 <          {
2923 <            if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
2924 <              {
2969 <                yycount = 1;
2970 <                yysize = yysize0;
2971 <                yyformat[sizeof yyunexpected - 1] = '\0';
2972 <                break;
2973 <              }
2974 <            yyarg[yycount++] = yytname[yyx];
2975 <            yysize1 = yysize + yytnamerr (0, yytname[yyx]);
2976 <            yysize_overflow |= (yysize1 < yysize);
2977 <            yysize = yysize1;
2978 <            yyfmt = yystpcpy (yyfmt, yyprefix);
2979 <            yyprefix = yyor;
2980 <          }
2981 <
2982 <      yyf = YY_(yyformat);
2983 <      yysize1 = yysize + yystrlen (yyf);
2984 <      yysize_overflow |= (yysize1 < yysize);
2985 <      yysize = yysize1;
2986 <
2987 <      if (yysize_overflow)
2988 <        return YYSIZE_MAXIMUM;
2989 <
2990 <      if (yyresult)
2991 <        {
2992 <          /* Avoid sprintf, as that infringes on the user's name space.
2993 <             Don't have undefined behavior even if the translation
2994 <             produced a string with the wrong number of "%s"s.  */
2995 <          char *yyp = yyresult;
2996 <          int yyi = 0;
2997 <          while ((*yyp = *yyf) != '\0')
2998 <            {
2999 <              if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
3000 <                {
3001 <                  yyp += yytnamerr (yyp, yyarg[yyi++]);
3002 <                  yyf += 2;
3003 <                }
3004 <              else
3005 <                {
3006 <                  yyp++;
3007 <                  yyf++;
3008 <                }
3009 <            }
3010 <        }
3011 <      return yysize;
3012 <    }
2879 > # define YYCASE_(N, S)                      \
2880 >      case N:                               \
2881 >        yyformat = S;                       \
2882 >      break
2883 >      YYCASE_(0, YY_("syntax error"));
2884 >      YYCASE_(1, YY_("syntax error, unexpected %s"));
2885 >      YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
2886 >      YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
2887 >      YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
2888 >      YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
2889 > # undef YYCASE_
2890 >    }
2891 >
2892 >  yysize1 = yysize + yystrlen (yyformat);
2893 >  if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
2894 >    return 2;
2895 >  yysize = yysize1;
2896 >
2897 >  if (*yymsg_alloc < yysize)
2898 >    {
2899 >      *yymsg_alloc = 2 * yysize;
2900 >      if (! (yysize <= *yymsg_alloc
2901 >             && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM))
2902 >        *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM;
2903 >      return 1;
2904 >    }
2905 >
2906 >  /* Avoid sprintf, as that infringes on the user's name space.
2907 >     Don't have undefined behavior even if the translation
2908 >     produced a string with the wrong number of "%s"s.  */
2909 >  {
2910 >    char *yyp = *yymsg;
2911 >    int yyi = 0;
2912 >    while ((*yyp = *yyformat) != '\0')
2913 >      if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount)
2914 >        {
2915 >          yyp += yytnamerr (yyp, yyarg[yyi++]);
2916 >          yyformat += 2;
2917 >        }
2918 >      else
2919 >        {
2920 >          yyp++;
2921 >          yyformat++;
2922 >        }
2923 >  }
2924 >  return 0;
2925   }
2926   #endif /* YYERROR_VERBOSE */
3015
2927  
2928   /*-----------------------------------------------.
2929   | Release the memory associated to this symbol.  |
# Line 3045 | Line 2956 | yydestruct (yymsg, yytype, yyvaluep)
2956      }
2957   }
2958  
2959 +
2960   /* Prevent warnings from -Wmissing-prototypes.  */
2961   #ifdef YYPARSE_PARAM
2962   #if defined __STDC__ || defined __cplusplus
# Line 3071 | Line 2983 | YYSTYPE yylval;
2983   int yynerrs;
2984  
2985  
2986 <
2987 < /*-------------------------.
2988 < | yyparse or yypush_parse.  |
3077 < `-------------------------*/
2986 > /*----------.
2987 > | yyparse.  |
2988 > `----------*/
2989  
2990   #ifdef YYPARSE_PARAM
2991   #if (defined __STDC__ || defined __C99__FUNC__ \
# Line 3098 | Line 3009 | yyparse ()
3009   #endif
3010   #endif
3011   {
3101
3102
3012      int yystate;
3013      /* Number of tokens to shift before error messages enabled.  */
3014      int yyerrstatus;
# Line 3254 | Line 3163 | yybackup:
3163  
3164    /* First try to decide what to do without reference to lookahead token.  */
3165    yyn = yypact[yystate];
3166 <  if (yyn == YYPACT_NINF)
3166 >  if (yypact_value_is_default (yyn))
3167      goto yydefault;
3168  
3169    /* Not known => get a lookahead token if don't already have one.  */
# Line 3285 | Line 3194 | yybackup:
3194    yyn = yytable[yyn];
3195    if (yyn <= 0)
3196      {
3197 <      if (yyn == 0 || yyn == YYTABLE_NINF)
3198 <        goto yyerrlab;
3197 >      if (yytable_value_is_error (yyn))
3198 >        goto yyerrlab;
3199        yyn = -yyn;
3200        goto yyreduce;
3201      }
# Line 3339 | Line 3248 | yyreduce:
3248    YY_REDUCE_PRINT (yyn);
3249    switch (yyn)
3250      {
3251 <        case 26:
3251 >        case 27:
3252  
3253 < /* Line 1464 of yacc.c  */
3254 < #line 425 "ircd_parser.y"
3253 > /* Line 1806 of yacc.c  */
3254 > #line 404 "ircd_parser.y"
3255      { (yyval.number) = 0; }
3256      break;
3257  
3258 <  case 28:
3258 >  case 29:
3259  
3260 < /* Line 1464 of yacc.c  */
3261 < #line 427 "ircd_parser.y"
3260 > /* Line 1806 of yacc.c  */
3261 > #line 406 "ircd_parser.y"
3262      {
3263                          (yyval.number) = (yyvsp[(1) - (2)].number) + (yyvsp[(2) - (2)].number);
3264                  }
3265      break;
3266  
3267 <  case 29:
3267 >  case 30:
3268  
3269 < /* Line 1464 of yacc.c  */
3270 < #line 431 "ircd_parser.y"
3269 > /* Line 1806 of yacc.c  */
3270 > #line 410 "ircd_parser.y"
3271      {
3272                          (yyval.number) = (yyvsp[(1) - (3)].number) + (yyvsp[(3) - (3)].number);
3273                  }
3274      break;
3275  
3276 <  case 30:
3276 >  case 31:
3277  
3278 < /* Line 1464 of yacc.c  */
3279 < #line 435 "ircd_parser.y"
3278 > /* Line 1806 of yacc.c  */
3279 > #line 414 "ircd_parser.y"
3280      {
3281                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 + (yyvsp[(3) - (3)].number);
3282                  }
3283      break;
3284  
3285 <  case 31:
3285 >  case 32:
3286  
3287 < /* Line 1464 of yacc.c  */
3288 < #line 439 "ircd_parser.y"
3287 > /* Line 1806 of yacc.c  */
3288 > #line 418 "ircd_parser.y"
3289      {
3290                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 * 60 + (yyvsp[(3) - (3)].number);
3291                  }
3292      break;
3293  
3294 <  case 32:
3294 >  case 33:
3295  
3296 < /* Line 1464 of yacc.c  */
3297 < #line 443 "ircd_parser.y"
3296 > /* Line 1806 of yacc.c  */
3297 > #line 422 "ircd_parser.y"
3298      {
3299                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 * 60 * 24 + (yyvsp[(3) - (3)].number);
3300                  }
3301      break;
3302  
3303 <  case 33:
3303 >  case 34:
3304  
3305 < /* Line 1464 of yacc.c  */
3306 < #line 447 "ircd_parser.y"
3305 > /* Line 1806 of yacc.c  */
3306 > #line 426 "ircd_parser.y"
3307      {
3308                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 * 60 * 24 * 7 + (yyvsp[(3) - (3)].number);
3309                  }
3310      break;
3311  
3312 <  case 34:
3312 >  case 35:
3313  
3314 < /* Line 1464 of yacc.c  */
3315 < #line 452 "ircd_parser.y"
3314 > /* Line 1806 of yacc.c  */
3315 > #line 431 "ircd_parser.y"
3316      { (yyval.number) = 0; }
3317      break;
3318  
3319 <  case 36:
3319 >  case 37:
3320  
3321 < /* Line 1464 of yacc.c  */
3322 < #line 453 "ircd_parser.y"
3321 > /* Line 1806 of yacc.c  */
3322 > #line 432 "ircd_parser.y"
3323      { (yyval.number) = (yyvsp[(1) - (2)].number) + (yyvsp[(2) - (2)].number); }
3324      break;
3325  
3326 <  case 37:
3326 >  case 38:
3327  
3328 < /* Line 1464 of yacc.c  */
3329 < #line 454 "ircd_parser.y"
3328 > /* Line 1806 of yacc.c  */
3329 > #line 433 "ircd_parser.y"
3330      { (yyval.number) = (yyvsp[(1) - (3)].number) + (yyvsp[(3) - (3)].number); }
3331      break;
3332  
3333 <  case 38:
3333 >  case 39:
3334  
3335 < /* Line 1464 of yacc.c  */
3336 < #line 455 "ircd_parser.y"
3335 > /* Line 1806 of yacc.c  */
3336 > #line 434 "ircd_parser.y"
3337      { (yyval.number) = (yyvsp[(1) - (3)].number) * 1024 + (yyvsp[(3) - (3)].number); }
3338      break;
3339  
3340 <  case 39:
3340 >  case 40:
3341  
3342 < /* Line 1464 of yacc.c  */
3343 < #line 456 "ircd_parser.y"
3342 > /* Line 1806 of yacc.c  */
3343 > #line 435 "ircd_parser.y"
3344      { (yyval.number) = (yyvsp[(1) - (3)].number) * 1024 * 1024 + (yyvsp[(3) - (3)].number); }
3345      break;
3346  
3347 <  case 46:
3347 >  case 47:
3348  
3349 < /* Line 1464 of yacc.c  */
3350 < #line 470 "ircd_parser.y"
3349 > /* Line 1806 of yacc.c  */
3350 > #line 449 "ircd_parser.y"
3351      {
3443 #ifndef STATIC_MODULES /* NOOP in the static case */
3352    if (conf_parser_ctx.pass == 2)
3353      add_conf_module(libio_basename(yylval.string));
3446 #endif
3354   }
3355      break;
3356  
3357 <  case 47:
3357 >  case 48:
3358  
3359 < /* Line 1464 of yacc.c  */
3360 < #line 478 "ircd_parser.y"
3359 > /* Line 1806 of yacc.c  */
3360 > #line 455 "ircd_parser.y"
3361      {
3455 #ifndef STATIC_MODULES
3362    if (conf_parser_ctx.pass == 2)
3363      mod_add_path(yylval.string);
3458 #endif
3364   }
3365      break;
3366  
3367 <  case 64:
3367 >  case 65:
3368  
3369 < /* Line 1464 of yacc.c  */
3370 < #line 500 "ircd_parser.y"
3369 > /* Line 1806 of yacc.c  */
3370 > #line 475 "ircd_parser.y"
3371      {
3372   #ifdef HAVE_LIBCRYPTO
3373    if (conf_parser_ctx.boot && conf_parser_ctx.pass == 2)
# Line 3471 | Line 3376 | yyreduce:
3376   }
3377      break;
3378  
3379 <  case 65:
3379 >  case 66:
3380  
3381 < /* Line 1464 of yacc.c  */
3382 < #line 506 "ircd_parser.y"
3381 > /* Line 1806 of yacc.c  */
3382 > #line 481 "ircd_parser.y"
3383      {
3384   #ifdef HAVE_LIBCRYPTO
3385    if (conf_parser_ctx.boot && conf_parser_ctx.pass == 2)
# Line 3488 | Line 3393 | yyreduce:
3393   }
3394      break;
3395  
3396 <  case 68:
3396 >  case 69:
3397  
3398 < /* Line 1464 of yacc.c  */
3399 < #line 520 "ircd_parser.y"
3398 > /* Line 1806 of yacc.c  */
3399 > #line 495 "ircd_parser.y"
3400      {
3401   #ifdef HAVE_LIBCRYPTO
3402    if (conf_parser_ctx.boot && conf_parser_ctx.pass == 2)
# Line 3500 | Line 3405 | yyreduce:
3405   }
3406      break;
3407  
3408 <  case 69:
3408 >  case 70:
3409  
3410 < /* Line 1464 of yacc.c  */
3411 < #line 526 "ircd_parser.y"
3410 > /* Line 1806 of yacc.c  */
3411 > #line 501 "ircd_parser.y"
3412      {
3413   #ifdef HAVE_LIBCRYPTO
3414    if (conf_parser_ctx.boot && conf_parser_ctx.pass == 2)
# Line 3512 | Line 3417 | yyreduce:
3417   }
3418      break;
3419  
3420 <  case 70:
3420 >  case 71:
3421  
3422 < /* Line 1464 of yacc.c  */
3423 < #line 534 "ircd_parser.y"
3422 > /* Line 1806 of yacc.c  */
3423 > #line 509 "ircd_parser.y"
3424      {
3425   #ifdef HAVE_LIBCRYPTO
3426    if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
# Line 3550 | Line 3455 | yyreduce:
3455   }
3456      break;
3457  
3458 <  case 71:
3458 >  case 72:
3459  
3460 < /* Line 1464 of yacc.c  */
3461 < #line 568 "ircd_parser.y"
3460 > /* Line 1806 of yacc.c  */
3461 > #line 543 "ircd_parser.y"
3462      {
3463   #ifdef HAVE_LIBCRYPTO
3464    if (conf_parser_ctx.pass == 1)
# Line 3614 | Line 3519 | yyreduce:
3519   }
3520      break;
3521  
3522 <  case 72:
3522 >  case 73:
3523  
3524 < /* Line 1464 of yacc.c  */
3525 < #line 628 "ircd_parser.y"
3524 > /* Line 1806 of yacc.c  */
3525 > #line 603 "ircd_parser.y"
3526      {
3527    /* this isn't rehashable */
3528 <  if (conf_parser_ctx.pass == 2)
3528 >  if (conf_parser_ctx.pass == 2 && !ServerInfo.name)
3529    {
3530 <    if (ServerInfo.name == NULL)
3530 >    if (valid_servname(yylval.string))
3531 >      DupString(ServerInfo.name, yylval.string);
3532 >    else
3533      {
3534 <      /* the ircd will exit() in main() if we dont set one */
3535 <      if (strlen(yylval.string) <= HOSTLEN)
3629 <        DupString(ServerInfo.name, yylval.string);
3534 >      ilog(LOG_TYPE_IRCD, "Ignoring serverinfo::name -- invalid name. Aborting.");
3535 >      exit(0);
3536      }
3537    }
3538   }
3539      break;
3540  
3541 <  case 73:
3541 >  case 74:
3542  
3543 < /* Line 1464 of yacc.c  */
3544 < #line 642 "ircd_parser.y"
3543 > /* Line 1806 of yacc.c  */
3544 > #line 618 "ircd_parser.y"
3545      {
3546    /* this isn't rehashable */
3547    if (conf_parser_ctx.pass == 2 && !ServerInfo.sid)
# Line 3644 | Line 3550 | yyreduce:
3550        DupString(ServerInfo.sid, yylval.string);
3551      else
3552      {
3553 <      ilog(L_ERROR, "Ignoring config file entry SID -- invalid SID. Aborting.");
3553 >      ilog(LOG_TYPE_IRCD, "Ignoring serverinfo::sid -- invalid SID. Aborting.");
3554        exit(0);
3555      }
3556    }
3557   }
3558      break;
3559  
3560 <  case 74:
3560 >  case 75:
3561  
3562 < /* Line 1464 of yacc.c  */
3563 < #line 657 "ircd_parser.y"
3562 > /* Line 1806 of yacc.c  */
3563 > #line 633 "ircd_parser.y"
3564      {
3565    if (conf_parser_ctx.pass == 2)
3566    {
# Line 3664 | Line 3570 | yyreduce:
3570   }
3571      break;
3572  
3573 <  case 75:
3573 >  case 76:
3574  
3575 < /* Line 1464 of yacc.c  */
3576 < #line 666 "ircd_parser.y"
3575 > /* Line 1806 of yacc.c  */
3576 > #line 642 "ircd_parser.y"
3577      {
3578    if (conf_parser_ctx.pass == 2)
3579    {
# Line 3682 | Line 3588 | yyreduce:
3588   }
3589      break;
3590  
3591 <  case 76:
3591 >  case 77:
3592  
3593 < /* Line 1464 of yacc.c  */
3594 < #line 680 "ircd_parser.y"
3593 > /* Line 1806 of yacc.c  */
3594 > #line 656 "ircd_parser.y"
3595      {
3596    if (conf_parser_ctx.pass == 2)
3597    {
# Line 3695 | Line 3601 | yyreduce:
3601   }
3602      break;
3603  
3604 <  case 77:
3604 >  case 78:
3605  
3606 < /* Line 1464 of yacc.c  */
3607 < #line 689 "ircd_parser.y"
3606 > /* Line 1806 of yacc.c  */
3607 > #line 665 "ircd_parser.y"
3608      {
3609    if (conf_parser_ctx.pass == 2 && *yylval.string != '*')
3610    {
# Line 3710 | Line 3616 | yyreduce:
3616      hints.ai_socktype = SOCK_STREAM;
3617      hints.ai_flags    = AI_PASSIVE | AI_NUMERICHOST;
3618  
3619 <    if (irc_getaddrinfo(yylval.string, NULL, &hints, &res))
3620 <      ilog(L_ERROR, "Invalid netmask for server vhost(%s)", yylval.string);
3619 >    if (getaddrinfo(yylval.string, NULL, &hints, &res))
3620 >      ilog(LOG_TYPE_IRCD, "Invalid netmask for server vhost(%s)", yylval.string);
3621      else
3622      {
3623        assert(res != NULL);
# Line 3719 | Line 3625 | yyreduce:
3625        memcpy(&ServerInfo.ip, res->ai_addr, res->ai_addrlen);
3626        ServerInfo.ip.ss.ss_family = res->ai_family;
3627        ServerInfo.ip.ss_len = res->ai_addrlen;
3628 <      irc_freeaddrinfo(res);
3628 >      freeaddrinfo(res);
3629  
3630        ServerInfo.specific_ipv4_vhost = 1;
3631      }
# Line 3727 | Line 3633 | yyreduce:
3633   }
3634      break;
3635  
3636 <  case 78:
3636 >  case 79:
3637  
3638 < /* Line 1464 of yacc.c  */
3639 < #line 717 "ircd_parser.y"
3638 > /* Line 1806 of yacc.c  */
3639 > #line 693 "ircd_parser.y"
3640      {
3641   #ifdef IPV6
3642    if (conf_parser_ctx.pass == 2 && *yylval.string != '*')
# Line 3743 | Line 3649 | yyreduce:
3649      hints.ai_socktype = SOCK_STREAM;
3650      hints.ai_flags    = AI_PASSIVE | AI_NUMERICHOST;
3651  
3652 <    if (irc_getaddrinfo(yylval.string, NULL, &hints, &res))
3653 <      ilog(L_ERROR, "Invalid netmask for server vhost6(%s)", yylval.string);
3652 >    if (getaddrinfo(yylval.string, NULL, &hints, &res))
3653 >      ilog(LOG_TYPE_IRCD, "Invalid netmask for server vhost6(%s)", yylval.string);
3654      else
3655      {
3656        assert(res != NULL);
# Line 3752 | Line 3658 | yyreduce:
3658        memcpy(&ServerInfo.ip6, res->ai_addr, res->ai_addrlen);
3659        ServerInfo.ip6.ss.ss_family = res->ai_family;
3660        ServerInfo.ip6.ss_len = res->ai_addrlen;
3661 <      irc_freeaddrinfo(res);
3661 >      freeaddrinfo(res);
3662  
3663        ServerInfo.specific_ipv6_vhost = 1;
3664      }
# Line 3761 | Line 3667 | yyreduce:
3667   }
3668      break;
3669  
3670 <  case 79:
3670 >  case 80:
3671  
3672 < /* Line 1464 of yacc.c  */
3673 < #line 747 "ircd_parser.y"
3672 > /* Line 1806 of yacc.c  */
3673 > #line 723 "ircd_parser.y"
3674      {
3675    if (conf_parser_ctx.pass == 2)
3676    {
# Line 3788 | Line 3694 | yyreduce:
3694   }
3695      break;
3696  
3697 <  case 80:
3697 >  case 81:
3698  
3699 < /* Line 1464 of yacc.c  */
3700 < #line 770 "ircd_parser.y"
3699 > /* Line 1806 of yacc.c  */
3700 > #line 746 "ircd_parser.y"
3701      {
3702    if (conf_parser_ctx.pass == 2)
3703 <  {
3798 <    if (yylval.number)
3799 <    {
3800 <      ServerInfo.hub = 1;
3801 <      delete_capability("HUB");
3802 <      add_capability("HUB", CAP_HUB, 1);
3803 <    }
3804 <    else if (ServerInfo.hub)
3805 <    {
3806 <
3807 <      ServerInfo.hub = 0;
3808 <      delete_capability("HUB");
3809 <    }
3810 <  }
3703 >    ServerInfo.hub = yylval.number;
3704   }
3705      break;
3706  
3707 <  case 88:
3707 >  case 89:
3708  
3709 < /* Line 1464 of yacc.c  */
3710 < #line 798 "ircd_parser.y"
3709 > /* Line 1806 of yacc.c  */
3710 > #line 761 "ircd_parser.y"
3711      {
3712    if (conf_parser_ctx.pass == 2)
3713    {
# Line 3824 | Line 3717 | yyreduce:
3717   }
3718      break;
3719  
3720 <  case 89:
3720 >  case 90:
3721  
3722 < /* Line 1464 of yacc.c  */
3723 < #line 807 "ircd_parser.y"
3722 > /* Line 1806 of yacc.c  */
3723 > #line 770 "ircd_parser.y"
3724      {
3725    if (conf_parser_ctx.pass == 2)
3726    {
# Line 3837 | Line 3730 | yyreduce:
3730   }
3731      break;
3732  
3733 <  case 90:
3733 >  case 91:
3734  
3735 < /* Line 1464 of yacc.c  */
3736 < #line 816 "ircd_parser.y"
3735 > /* Line 1806 of yacc.c  */
3736 > #line 779 "ircd_parser.y"
3737      {
3738    if (conf_parser_ctx.pass == 2)
3739    {
# Line 3850 | Line 3743 | yyreduce:
3743   }
3744      break;
3745  
3746 <  case 107:
3854 <
3855 < /* Line 1464 of yacc.c  */
3856 < #line 843 "ircd_parser.y"
3857 <    {
3858 <                        }
3859 <    break;
3860 <
3861 <  case 108:
3746 >  case 99:
3747  
3748 < /* Line 1464 of yacc.c  */
3749 < #line 847 "ircd_parser.y"
3748 > /* Line 1806 of yacc.c  */
3749 > #line 797 "ircd_parser.y"
3750      {
3751 <                        }
3751 >  if (conf_parser_ctx.pass == 2)
3752 >    ConfigLoggingEntry.use_logging = yylval.number;
3753 > }
3754      break;
3755  
3756 <  case 109:
3756 >  case 100:
3757  
3758 < /* Line 1464 of yacc.c  */
3759 < #line 851 "ircd_parser.y"
3758 > /* Line 1806 of yacc.c  */
3759 > #line 803 "ircd_parser.y"
3760      {
3761    if (conf_parser_ctx.pass == 2)
3762 <    strlcpy(ConfigLoggingEntry.userlog, yylval.string,
3876 <            sizeof(ConfigLoggingEntry.userlog));
3762 >    ConfigLoggingEntry.timestamp = yylval.number;
3763   }
3764      break;
3765  
3766 <  case 110:
3766 >  case 101:
3767  
3768 < /* Line 1464 of yacc.c  */
3769 < #line 858 "ircd_parser.y"
3768 > /* Line 1806 of yacc.c  */
3769 > #line 809 "ircd_parser.y"
3770      {
3771 <  if (conf_parser_ctx.pass == 2)
3772 <    strlcpy(ConfigLoggingEntry.failed_operlog, yylval.string,
3773 <            sizeof(ConfigLoggingEntry.failed_operlog));
3771 >  lfile[0] = '\0';
3772 >  ltype = 0;
3773 >  lsize = 0;
3774   }
3775      break;
3776  
3777 <  case 111:
3777 >  case 102:
3778  
3779 < /* Line 1464 of yacc.c  */
3780 < #line 865 "ircd_parser.y"
3779 > /* Line 1806 of yacc.c  */
3780 > #line 814 "ircd_parser.y"
3781      {
3782 <  if (conf_parser_ctx.pass == 2)
3783 <    strlcpy(ConfigLoggingEntry.operlog, yylval.string,
3898 <            sizeof(ConfigLoggingEntry.operlog));
3782 >  if (conf_parser_ctx.pass == 2 && ltype > 0)
3783 >    log_add_file(ltype, lsize, lfile);
3784   }
3785      break;
3786  
3787 <  case 112:
3787 >  case 109:
3788  
3789 < /* Line 1464 of yacc.c  */
3790 < #line 872 "ircd_parser.y"
3789 > /* Line 1806 of yacc.c  */
3790 > #line 826 "ircd_parser.y"
3791      {
3792 <  if (conf_parser_ctx.pass == 2)
3908 <    strlcpy(ConfigLoggingEntry.operspylog, yylval.string,
3909 <            sizeof(ConfigLoggingEntry.operspylog));
3792 >  strlcpy(lfile, yylval.string, sizeof(lfile));
3793   }
3794      break;
3795  
3796 <  case 113:
3796 >  case 110:
3797  
3798 < /* Line 1464 of yacc.c  */
3799 < #line 879 "ircd_parser.y"
3798 > /* Line 1806 of yacc.c  */
3799 > #line 831 "ircd_parser.y"
3800      {
3801 <  if (conf_parser_ctx.pass == 2)
3919 <    strlcpy(ConfigLoggingEntry.glinelog, yylval.string,
3920 <            sizeof(ConfigLoggingEntry.glinelog));
3801 >  lsize = (yyvsp[(3) - (4)].number);
3802   }
3803      break;
3804  
3805 <  case 114:
3805 >  case 111:
3806  
3807 < /* Line 1464 of yacc.c  */
3808 < #line 886 "ircd_parser.y"
3807 > /* Line 1806 of yacc.c  */
3808 > #line 834 "ircd_parser.y"
3809      {
3810 <  if (conf_parser_ctx.pass == 2)
3930 <    strlcpy(ConfigLoggingEntry.klinelog, yylval.string,
3931 <            sizeof(ConfigLoggingEntry.klinelog));
3810 >  lsize = 0;
3811   }
3812      break;
3813  
3814 <  case 115:
3814 >  case 112:
3815  
3816 < /* Line 1464 of yacc.c  */
3817 < #line 893 "ircd_parser.y"
3816 > /* Line 1806 of yacc.c  */
3817 > #line 839 "ircd_parser.y"
3818      {
3819    if (conf_parser_ctx.pass == 2)
3820 <    strlcpy(ConfigLoggingEntry.ioerrlog, yylval.string,
3942 <            sizeof(ConfigLoggingEntry.ioerrlog));
3820 >    ltype = 0;
3821   }
3822      break;
3823  
3824    case 116:
3825  
3826 < /* Line 1464 of yacc.c  */
3827 < #line 900 "ircd_parser.y"
3826 > /* Line 1806 of yacc.c  */
3827 > #line 846 "ircd_parser.y"
3828      {
3829    if (conf_parser_ctx.pass == 2)
3830 <    strlcpy(ConfigLoggingEntry.killlog, yylval.string,
3953 <            sizeof(ConfigLoggingEntry.killlog));
3830 >    ltype = LOG_TYPE_USER;
3831   }
3832      break;
3833  
3834    case 117:
3835  
3836 < /* Line 1464 of yacc.c  */
3837 < #line 907 "ircd_parser.y"
3838 <    {
3836 > /* Line 1806 of yacc.c  */
3837 > #line 850 "ircd_parser.y"
3838 >    {
3839    if (conf_parser_ctx.pass == 2)
3840 <    set_log_level(L_CRIT);
3840 >    ltype = LOG_TYPE_OPER;
3841   }
3842      break;
3843  
3844    case 118:
3845  
3846 < /* Line 1464 of yacc.c  */
3847 < #line 911 "ircd_parser.y"
3846 > /* Line 1806 of yacc.c  */
3847 > #line 854 "ircd_parser.y"
3848      {
3849    if (conf_parser_ctx.pass == 2)
3850 <    set_log_level(L_ERROR);
3850 >    ltype = LOG_TYPE_GLINE;
3851   }
3852      break;
3853  
3854    case 119:
3855  
3856 < /* Line 1464 of yacc.c  */
3857 < #line 915 "ircd_parser.y"
3856 > /* Line 1806 of yacc.c  */
3857 > #line 858 "ircd_parser.y"
3858      {
3859    if (conf_parser_ctx.pass == 2)
3860 <    set_log_level(L_WARN);
3860 >    ltype = LOG_TYPE_DLINE;
3861   }
3862      break;
3863  
3864    case 120:
3865  
3866 < /* Line 1464 of yacc.c  */
3867 < #line 919 "ircd_parser.y"
3866 > /* Line 1806 of yacc.c  */
3867 > #line 862 "ircd_parser.y"
3868      {
3869    if (conf_parser_ctx.pass == 2)
3870 <    set_log_level(L_NOTICE);
3870 >    ltype = LOG_TYPE_KLINE;
3871   }
3872      break;
3873  
3874    case 121:
3875  
3876 < /* Line 1464 of yacc.c  */
3877 < #line 923 "ircd_parser.y"
3876 > /* Line 1806 of yacc.c  */
3877 > #line 866 "ircd_parser.y"
3878      {
3879    if (conf_parser_ctx.pass == 2)
3880 <    set_log_level(L_TRACE);
3880 >    ltype = LOG_TYPE_KILL;
3881   }
3882      break;
3883  
3884    case 122:
3885  
3886 < /* Line 1464 of yacc.c  */
3887 < #line 927 "ircd_parser.y"
3886 > /* Line 1806 of yacc.c  */
3887 > #line 870 "ircd_parser.y"
3888      {
3889    if (conf_parser_ctx.pass == 2)
3890 <    set_log_level(L_INFO);
3890 >    ltype = LOG_TYPE_DEBUG;
3891   }
3892      break;
3893  
3894    case 123:
3895  
3896 < /* Line 1464 of yacc.c  */
3897 < #line 931 "ircd_parser.y"
4021 <    {
4022 <  if (conf_parser_ctx.pass == 2)
4023 <    set_log_level(L_DEBUG);
4024 < }
4025 <    break;
4026 <
4027 <  case 124:
4028 <
4029 < /* Line 1464 of yacc.c  */
4030 < #line 937 "ircd_parser.y"
4031 <    {
4032 <  if (conf_parser_ctx.pass == 2)
4033 <    ConfigLoggingEntry.use_logging = yylval.number;
4034 < }
4035 <    break;
4036 <
4037 <  case 125:
4038 <
4039 < /* Line 1464 of yacc.c  */
4040 < #line 946 "ircd_parser.y"
3896 > /* Line 1806 of yacc.c  */
3897 > #line 880 "ircd_parser.y"
3898      {
3899    if (conf_parser_ctx.pass == 2)
3900    {
# Line 4053 | Line 3910 | yyreduce:
3910   }
3911      break;
3912  
3913 <  case 126:
3913 >  case 124:
3914  
3915 < /* Line 1464 of yacc.c  */
3916 < #line 959 "ircd_parser.y"
3915 > /* Line 1806 of yacc.c  */
3916 > #line 893 "ircd_parser.y"
3917      {
3918    if (conf_parser_ctx.pass == 2)
3919    {
# Line 4091 | Line 3948 | yyreduce:
3948          DupString(new_aconf->host, yy_tmp->host);
3949        else
3950          DupString(new_aconf->host, "*");
3951 +
3952 +      new_aconf->type = parse_netmask(new_aconf->host, &new_aconf->ipnum,
3953 +                                     &new_aconf->bits);
3954 +
3955        conf_add_class_to_conf(new_conf, class_name);
3956        if (yy_aconf->passwd != NULL)
3957          DupString(new_aconf->passwd, yy_aconf->passwd);
# Line 4138 | Line 3999 | yyreduce:
3999   }
4000      break;
4001  
4002 <  case 140:
4002 >  case 136:
4003  
4004 < /* Line 1464 of yacc.c  */
4005 < #line 1046 "ircd_parser.y"
4004 > /* Line 1806 of yacc.c  */
4005 > #line 983 "ircd_parser.y"
4006      {
4007    if (conf_parser_ctx.pass == 2)
4008    {
# Line 4154 | Line 4015 | yyreduce:
4015   }
4016      break;
4017  
4018 <  case 141:
4018 >  case 137:
4019  
4020 < /* Line 1464 of yacc.c  */
4021 < #line 1058 "ircd_parser.y"
4161 <    {
4162 <  if (conf_parser_ctx.pass == 2)
4163 <  {
4164 <    if (strlen(yylval.string) > OPERNICKLEN)
4165 <      yylval.string[OPERNICKLEN] = '\0';
4166 <
4167 <    MyFree(yy_conf->name);
4168 <    DupString(yy_conf->name, yylval.string);
4169 <  }
4170 < }
4171 <    break;
4172 <
4173 <  case 142:
4174 <
4175 < /* Line 1464 of yacc.c  */
4176 < #line 1070 "ircd_parser.y"
4020 > /* Line 1806 of yacc.c  */
4021 > #line 995 "ircd_parser.y"
4022      {
4023    if (conf_parser_ctx.pass == 2)
4024    {
# Line 4194 | Line 4039 | yyreduce:
4039      {
4040        DupString(yy_aconf->user, userbuf);
4041        DupString(yy_aconf->host, hostbuf);
4042 +
4043 +      yy_aconf->type = parse_netmask(yy_aconf->host, &yy_aconf->ipnum,
4044 +                                    &yy_aconf->bits);
4045      }
4046      else
4047      {
# Line 4208 | Line 4056 | yyreduce:
4056   }
4057      break;
4058  
4059 <  case 143:
4059 >  case 138:
4060  
4061 < /* Line 1464 of yacc.c  */
4062 < #line 1104 "ircd_parser.y"
4061 > /* Line 1806 of yacc.c  */
4062 > #line 1032 "ircd_parser.y"
4063      {
4064    if (conf_parser_ctx.pass == 2)
4065    {
# Line 4224 | Line 4072 | yyreduce:
4072   }
4073      break;
4074  
4075 <  case 144:
4075 >  case 139:
4076  
4077 < /* Line 1464 of yacc.c  */
4078 < #line 1116 "ircd_parser.y"
4077 > /* Line 1806 of yacc.c  */
4078 > #line 1044 "ircd_parser.y"
4079      {
4080    if (conf_parser_ctx.pass == 2)
4081    {
# Line 4239 | Line 4087 | yyreduce:
4087   }
4088      break;
4089  
4090 <  case 145:
4090 >  case 140:
4091  
4092 < /* Line 1464 of yacc.c  */
4093 < #line 1127 "ircd_parser.y"
4092 > /* Line 1806 of yacc.c  */
4093 > #line 1055 "ircd_parser.y"
4094      {
4095   #ifdef HAVE_LIBCRYPTO
4096    if (conf_parser_ctx.pass == 2)
# Line 4285 | Line 4133 | yyreduce:
4133   }
4134      break;
4135  
4136 <  case 146:
4136 >  case 141:
4137  
4138 < /* Line 1464 of yacc.c  */
4139 < #line 1169 "ircd_parser.y"
4138 > /* Line 1806 of yacc.c  */
4139 > #line 1097 "ircd_parser.y"
4140      {
4141    if (conf_parser_ctx.pass == 2)
4142    {
# Line 4298 | Line 4146 | yyreduce:
4146   }
4147      break;
4148  
4149 <  case 147:
4149 >  case 142:
4150  
4151 < /* Line 1464 of yacc.c  */
4152 < #line 1178 "ircd_parser.y"
4151 > /* Line 1806 of yacc.c  */
4152 > #line 1106 "ircd_parser.y"
4153      {
4154    if (conf_parser_ctx.pass == 2)
4155      yy_aconf->modes = 0;
4156   }
4157      break;
4158  
4159 <  case 151:
4159 >  case 146:
4160  
4161 < /* Line 1464 of yacc.c  */
4162 < #line 1185 "ircd_parser.y"
4161 > /* Line 1806 of yacc.c  */
4162 > #line 1113 "ircd_parser.y"
4163      {
4164    if (conf_parser_ctx.pass == 2)
4165      yy_aconf->modes |= UMODE_BOTS;
4166   }
4167      break;
4168  
4169 <  case 152:
4169 >  case 147:
4170  
4171 < /* Line 1464 of yacc.c  */
4172 < #line 1189 "ircd_parser.y"
4171 > /* Line 1806 of yacc.c  */
4172 > #line 1117 "ircd_parser.y"
4173      {
4174    if (conf_parser_ctx.pass == 2)
4175      yy_aconf->modes |= UMODE_CCONN;
4176   }
4177      break;
4178  
4179 <  case 153:
4179 >  case 148:
4180  
4181 < /* Line 1464 of yacc.c  */
4182 < #line 1193 "ircd_parser.y"
4181 > /* Line 1806 of yacc.c  */
4182 > #line 1121 "ircd_parser.y"
4183      {
4184    if (conf_parser_ctx.pass == 2)
4185      yy_aconf->modes |= UMODE_CCONN_FULL;
4186   }
4187      break;
4188  
4189 <  case 154:
4189 >  case 149:
4190  
4191 < /* Line 1464 of yacc.c  */
4192 < #line 1197 "ircd_parser.y"
4191 > /* Line 1806 of yacc.c  */
4192 > #line 1125 "ircd_parser.y"
4193      {
4194    if (conf_parser_ctx.pass == 2)
4195      yy_aconf->modes |= UMODE_DEAF;
4196   }
4197      break;
4198  
4199 <  case 155:
4199 >  case 150:
4200  
4201 < /* Line 1464 of yacc.c  */
4202 < #line 1201 "ircd_parser.y"
4201 > /* Line 1806 of yacc.c  */
4202 > #line 1129 "ircd_parser.y"
4203      {
4204    if (conf_parser_ctx.pass == 2)
4205      yy_aconf->modes |= UMODE_DEBUG;
4206   }
4207      break;
4208  
4209 <  case 156:
4209 >  case 151:
4210  
4211 < /* Line 1464 of yacc.c  */
4212 < #line 1205 "ircd_parser.y"
4211 > /* Line 1806 of yacc.c  */
4212 > #line 1133 "ircd_parser.y"
4213      {
4214    if (conf_parser_ctx.pass == 2)
4215      yy_aconf->modes |= UMODE_FULL;
4216   }
4217      break;
4218  
4219 <  case 157:
4219 >  case 152:
4220 >
4221 > /* Line 1806 of yacc.c  */
4222 > #line 1137 "ircd_parser.y"
4223 >    {
4224 >  if (conf_parser_ctx.pass == 2)
4225 >    yy_aconf->modes |= UMODE_HIDDEN;
4226 > }
4227 >    break;
4228 >
4229 >  case 153:
4230  
4231 < /* Line 1464 of yacc.c  */
4232 < #line 1209 "ircd_parser.y"
4231 > /* Line 1806 of yacc.c  */
4232 > #line 1141 "ircd_parser.y"
4233      {
4234    if (conf_parser_ctx.pass == 2)
4235      yy_aconf->modes |= UMODE_SKILL;
4236   }
4237      break;
4238  
4239 <  case 158:
4239 >  case 154:
4240  
4241 < /* Line 1464 of yacc.c  */
4242 < #line 1213 "ircd_parser.y"
4241 > /* Line 1806 of yacc.c  */
4242 > #line 1145 "ircd_parser.y"
4243      {
4244    if (conf_parser_ctx.pass == 2)
4245      yy_aconf->modes |= UMODE_NCHANGE;
4246   }
4247      break;
4248  
4249 <  case 159:
4249 >  case 155:
4250  
4251 < /* Line 1464 of yacc.c  */
4252 < #line 1217 "ircd_parser.y"
4251 > /* Line 1806 of yacc.c  */
4252 > #line 1149 "ircd_parser.y"
4253      {
4254    if (conf_parser_ctx.pass == 2)
4255      yy_aconf->modes |= UMODE_REJ;
4256   }
4257      break;
4258  
4259 <  case 160:
4259 >  case 156:
4260  
4261 < /* Line 1464 of yacc.c  */
4262 < #line 1221 "ircd_parser.y"
4261 > /* Line 1806 of yacc.c  */
4262 > #line 1153 "ircd_parser.y"
4263      {
4264    if (conf_parser_ctx.pass == 2)
4265      yy_aconf->modes |= UMODE_UNAUTH;
4266   }
4267      break;
4268  
4269 <  case 161:
4269 >  case 157:
4270  
4271 < /* Line 1464 of yacc.c  */
4272 < #line 1225 "ircd_parser.y"
4271 > /* Line 1806 of yacc.c  */
4272 > #line 1157 "ircd_parser.y"
4273      {
4274    if (conf_parser_ctx.pass == 2)
4275      yy_aconf->modes |= UMODE_SPY;
4276   }
4277      break;
4278  
4279 <  case 162:
4279 >  case 158:
4280  
4281 < /* Line 1464 of yacc.c  */
4282 < #line 1229 "ircd_parser.y"
4281 > /* Line 1806 of yacc.c  */
4282 > #line 1161 "ircd_parser.y"
4283      {
4284    if (conf_parser_ctx.pass == 2)
4285      yy_aconf->modes |= UMODE_EXTERNAL;
4286   }
4287      break;
4288  
4289 <  case 163:
4289 >  case 159:
4290  
4291 < /* Line 1464 of yacc.c  */
4292 < #line 1233 "ircd_parser.y"
4291 > /* Line 1806 of yacc.c  */
4292 > #line 1165 "ircd_parser.y"
4293      {
4294    if (conf_parser_ctx.pass == 2)
4295      yy_aconf->modes |= UMODE_OPERWALL;
4296   }
4297      break;
4298  
4299 <  case 164:
4299 >  case 160:
4300  
4301 < /* Line 1464 of yacc.c  */
4302 < #line 1237 "ircd_parser.y"
4301 > /* Line 1806 of yacc.c  */
4302 > #line 1169 "ircd_parser.y"
4303      {
4304    if (conf_parser_ctx.pass == 2)
4305      yy_aconf->modes |= UMODE_SERVNOTICE;
4306   }
4307      break;
4308  
4309 <  case 165:
4309 >  case 161:
4310  
4311 < /* Line 1464 of yacc.c  */
4312 < #line 1241 "ircd_parser.y"
4311 > /* Line 1806 of yacc.c  */
4312 > #line 1173 "ircd_parser.y"
4313      {
4314    if (conf_parser_ctx.pass == 2)
4315      yy_aconf->modes |= UMODE_INVISIBLE;
4316   }
4317      break;
4318  
4319 <  case 166:
4319 >  case 162:
4320  
4321 < /* Line 1464 of yacc.c  */
4322 < #line 1245 "ircd_parser.y"
4321 > /* Line 1806 of yacc.c  */
4322 > #line 1177 "ircd_parser.y"
4323      {
4324    if (conf_parser_ctx.pass == 2)
4325      yy_aconf->modes |= UMODE_WALLOP;
4326   }
4327      break;
4328  
4329 <  case 167:
4329 >  case 163:
4330  
4331 < /* Line 1464 of yacc.c  */
4332 < #line 1249 "ircd_parser.y"
4331 > /* Line 1806 of yacc.c  */
4332 > #line 1181 "ircd_parser.y"
4333      {
4334    if (conf_parser_ctx.pass == 2)
4335      yy_aconf->modes |= UMODE_SOFTCALLERID;
4336   }
4337      break;
4338  
4339 <  case 168:
4339 >  case 164:
4340  
4341 < /* Line 1464 of yacc.c  */
4342 < #line 1253 "ircd_parser.y"
4341 > /* Line 1806 of yacc.c  */
4342 > #line 1185 "ircd_parser.y"
4343      {
4344    if (conf_parser_ctx.pass == 2)
4345      yy_aconf->modes |= UMODE_CALLERID;
4346   }
4347      break;
4348  
4349 <  case 169:
4349 >  case 165:
4350  
4351 < /* Line 1464 of yacc.c  */
4352 < #line 1257 "ircd_parser.y"
4351 > /* Line 1806 of yacc.c  */
4352 > #line 1189 "ircd_parser.y"
4353      {
4354    if (conf_parser_ctx.pass == 2)
4355      yy_aconf->modes |= UMODE_LOCOPS;
4356   }
4357      break;
4358  
4359 <  case 170:
4359 >  case 166:
4360  
4361 < /* Line 1464 of yacc.c  */
4362 < #line 1263 "ircd_parser.y"
4361 > /* Line 1806 of yacc.c  */
4362 > #line 1195 "ircd_parser.y"
4363      {
4364 +  if (conf_parser_ctx.pass == 2)
4365 +    yy_aconf->port = 0;
4366   }
4367      break;
4368  
4369 <  case 174:
4369 >  case 170:
4370  
4371 < /* Line 1464 of yacc.c  */
4372 < #line 1267 "ircd_parser.y"
4373 <    { not_atom = 1; }
4371 > /* Line 1806 of yacc.c  */
4372 > #line 1202 "ircd_parser.y"
4373 >    {
4374 >  if (conf_parser_ctx.pass == 2)
4375 >    yy_aconf->port |= OPER_FLAG_GLOBAL_KILL;
4376 > }
4377      break;
4378  
4379 <  case 176:
4379 >  case 171:
4380  
4381 < /* Line 1464 of yacc.c  */
4382 < #line 1268 "ircd_parser.y"
4383 <    { not_atom = 0; }
4381 > /* Line 1806 of yacc.c  */
4382 > #line 1206 "ircd_parser.y"
4383 >    {
4384 >  if (conf_parser_ctx.pass == 2)
4385 >    yy_aconf->port |= OPER_FLAG_REMOTE;
4386 > }
4387      break;
4388  
4389 <  case 178:
4389 >  case 172:
4390  
4391 < /* Line 1464 of yacc.c  */
4392 < #line 1271 "ircd_parser.y"
4391 > /* Line 1806 of yacc.c  */
4392 > #line 1210 "ircd_parser.y"
4393      {
4394    if (conf_parser_ctx.pass == 2)
4395 <  {
4530 <    if (not_atom)yy_aconf->port &= ~OPER_FLAG_GLOBAL_KILL;
4531 <    else yy_aconf->port |= OPER_FLAG_GLOBAL_KILL;
4532 <  }
4395 >    yy_aconf->port |= OPER_FLAG_K;
4396   }
4397      break;
4398  
4399 <  case 179:
4399 >  case 173:
4400  
4401 < /* Line 1464 of yacc.c  */
4402 < #line 1278 "ircd_parser.y"
4401 > /* Line 1806 of yacc.c  */
4402 > #line 1214 "ircd_parser.y"
4403      {
4404    if (conf_parser_ctx.pass == 2)
4405 <  {
4543 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_REMOTE;
4544 <    else yy_aconf->port |= OPER_FLAG_REMOTE;
4545 <  }
4405 >    yy_aconf->port |= OPER_FLAG_UNKLINE;
4406   }
4407      break;
4408  
4409 <  case 180:
4409 >  case 174:
4410  
4411 < /* Line 1464 of yacc.c  */
4412 < #line 1285 "ircd_parser.y"
4411 > /* Line 1806 of yacc.c  */
4412 > #line 1218 "ircd_parser.y"
4413      {
4414    if (conf_parser_ctx.pass == 2)
4415 <  {
4556 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_K;
4557 <    else yy_aconf->port |= OPER_FLAG_K;
4558 <  }
4415 >    yy_aconf->port |= OPER_FLAG_DLINE;
4416   }
4417      break;
4418  
4419 <  case 181:
4419 >  case 175:
4420  
4421 < /* Line 1464 of yacc.c  */
4422 < #line 1292 "ircd_parser.y"
4421 > /* Line 1806 of yacc.c  */
4422 > #line 1222 "ircd_parser.y"
4423      {
4424    if (conf_parser_ctx.pass == 2)
4425 <  {
4569 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_UNKLINE;
4570 <    else yy_aconf->port |= OPER_FLAG_UNKLINE;
4571 <  }
4425 >    yy_aconf->port |= OPER_FLAG_UNDLINE;
4426   }
4427      break;
4428  
4429 <  case 182:
4429 >  case 176:
4430  
4431 < /* Line 1464 of yacc.c  */
4432 < #line 1299 "ircd_parser.y"
4431 > /* Line 1806 of yacc.c  */
4432 > #line 1226 "ircd_parser.y"
4433      {
4434    if (conf_parser_ctx.pass == 2)
4435 <  {
4582 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_X;
4583 <    else yy_aconf->port |= OPER_FLAG_X;
4584 <  }
4435 >    yy_aconf->port |= OPER_FLAG_X;
4436   }
4437      break;
4438  
4439 <  case 183:
4439 >  case 177:
4440  
4441 < /* Line 1464 of yacc.c  */
4442 < #line 1306 "ircd_parser.y"
4441 > /* Line 1806 of yacc.c  */
4442 > #line 1230 "ircd_parser.y"
4443      {
4444    if (conf_parser_ctx.pass == 2)
4445 <  {
4595 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_GLINE;
4596 <    else yy_aconf->port |= OPER_FLAG_GLINE;
4597 <  }
4445 >    yy_aconf->port |= OPER_FLAG_GLINE;
4446   }
4447      break;
4448  
4449 <  case 184:
4449 >  case 178:
4450  
4451 < /* Line 1464 of yacc.c  */
4452 < #line 1313 "ircd_parser.y"
4451 > /* Line 1806 of yacc.c  */
4452 > #line 1234 "ircd_parser.y"
4453      {
4454    if (conf_parser_ctx.pass == 2)
4455 <  {
4608 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_DIE;
4609 <    else yy_aconf->port |= OPER_FLAG_DIE;
4610 <  }
4455 >    yy_aconf->port |= OPER_FLAG_DIE;
4456   }
4457      break;
4458  
4459 <  case 185:
4459 >  case 179:
4460  
4461 < /* Line 1464 of yacc.c  */
4462 < #line 1320 "ircd_parser.y"
4461 > /* Line 1806 of yacc.c  */
4462 > #line 1238 "ircd_parser.y"
4463      {
4464    if (conf_parser_ctx.pass == 2)
4465 <  {
4621 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_REHASH;
4622 <    else yy_aconf->port |= OPER_FLAG_REHASH;
4623 <  }
4465 >    yy_aconf->port |= OPER_FLAG_RESTART;
4466   }
4467      break;
4468  
4469 <  case 186:
4469 >  case 180:
4470  
4471 < /* Line 1464 of yacc.c  */
4472 < #line 1327 "ircd_parser.y"
4471 > /* Line 1806 of yacc.c  */
4472 > #line 1242 "ircd_parser.y"
4473      {
4474    if (conf_parser_ctx.pass == 2)
4475 <  {
4634 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_ADMIN;
4635 <    else yy_aconf->port |= OPER_FLAG_ADMIN;
4636 <  }
4475 >    yy_aconf->port |= OPER_FLAG_REHASH;
4476   }
4477      break;
4478  
4479 <  case 187:
4479 >  case 181:
4480  
4481 < /* Line 1464 of yacc.c  */
4482 < #line 1334 "ircd_parser.y"
4481 > /* Line 1806 of yacc.c  */
4482 > #line 1246 "ircd_parser.y"
4483      {
4484    if (conf_parser_ctx.pass == 2)
4485 <  {
4647 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_HIDDEN_ADMIN;
4648 <    else yy_aconf->port |= OPER_FLAG_HIDDEN_ADMIN;
4649 <  }
4485 >    yy_aconf->port |= OPER_FLAG_ADMIN;
4486   }
4487      break;
4488  
4489 <  case 188:
4489 >  case 182:
4490  
4491 < /* Line 1464 of yacc.c  */
4492 < #line 1341 "ircd_parser.y"
4491 > /* Line 1806 of yacc.c  */
4492 > #line 1250 "ircd_parser.y"
4493      {
4494    if (conf_parser_ctx.pass == 2)
4495 <  {
4660 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_N;
4661 <    else yy_aconf->port |= OPER_FLAG_N;
4662 <  }
4495 >    yy_aconf->port |= OPER_FLAG_N;
4496   }
4497      break;
4498  
4499 <  case 189:
4499 >  case 183:
4500  
4501 < /* Line 1464 of yacc.c  */
4502 < #line 1348 "ircd_parser.y"
4501 > /* Line 1806 of yacc.c  */
4502 > #line 1254 "ircd_parser.y"
4503      {
4504    if (conf_parser_ctx.pass == 2)
4505 <  {
4673 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_OPERWALL;
4674 <    else yy_aconf->port |= OPER_FLAG_OPERWALL;
4675 <  }
4505 >    yy_aconf->port |= OPER_FLAG_OPERWALL;
4506   }
4507      break;
4508  
4509 <  case 190:
4509 >  case 184:
4510  
4511 < /* Line 1464 of yacc.c  */
4512 < #line 1355 "ircd_parser.y"
4511 > /* Line 1806 of yacc.c  */
4512 > #line 1258 "ircd_parser.y"
4513      {
4514    if (conf_parser_ctx.pass == 2)
4515 <  {
4686 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_OPER_SPY;
4687 <    else yy_aconf->port |= OPER_FLAG_OPER_SPY;
4688 <  }
4515 >    yy_aconf->port |= OPER_FLAG_GLOBOPS;
4516   }
4517      break;
4518  
4519 <  case 191:
4519 >  case 185:
4520  
4521 < /* Line 1464 of yacc.c  */
4522 < #line 1362 "ircd_parser.y"
4521 > /* Line 1806 of yacc.c  */
4522 > #line 1262 "ircd_parser.y"
4523      {
4524    if (conf_parser_ctx.pass == 2)
4525 <  {
4699 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_HIDDEN_OPER;
4700 <    else yy_aconf->port |= OPER_FLAG_HIDDEN_OPER;
4701 <  }
4525 >    yy_aconf->port |= OPER_FLAG_OPER_SPY;
4526   }
4527      break;
4528  
4529 <  case 192:
4529 >  case 186:
4530  
4531 < /* Line 1464 of yacc.c  */
4532 < #line 1369 "ircd_parser.y"
4531 > /* Line 1806 of yacc.c  */
4532 > #line 1266 "ircd_parser.y"
4533      {
4534    if (conf_parser_ctx.pass == 2)
4535 <  {
4712 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_REMOTEBAN;
4713 <    else yy_aconf->port |= OPER_FLAG_REMOTEBAN;
4714 <  }
4535 >    yy_aconf->port |= OPER_FLAG_REMOTEBAN;
4536   }
4537      break;
4538  
4539 <  case 193:
4539 >  case 187:
4540  
4541 < /* Line 1464 of yacc.c  */
4542 < #line 1376 "ircd_parser.y"
4541 > /* Line 1806 of yacc.c  */
4542 > #line 1270 "ircd_parser.y"
4543      {
4544    if (conf_parser_ctx.pass == 2)
4545 <  {
4725 <    if (not_atom) ClearConfEncrypted(yy_aconf);
4726 <    else SetConfEncrypted(yy_aconf);
4727 <  }
4545 >    yy_aconf->port |= OPER_FLAG_MODULE;
4546   }
4547      break;
4548  
4549 <  case 194:
4549 >  case 188:
4550  
4551 < /* Line 1464 of yacc.c  */
4552 < #line 1389 "ircd_parser.y"
4551 > /* Line 1806 of yacc.c  */
4552 > #line 1280 "ircd_parser.y"
4553      {
4554    if (conf_parser_ctx.pass == 1)
4555    {
# Line 4741 | Line 4559 | yyreduce:
4559   }
4560      break;
4561  
4562 <  case 195:
4562 >  case 189:
4563  
4564 < /* Line 1464 of yacc.c  */
4565 < #line 1396 "ircd_parser.y"
4564 > /* Line 1806 of yacc.c  */
4565 > #line 1287 "ircd_parser.y"
4566      {
4567    if (conf_parser_ctx.pass == 1)
4568    {
# Line 4755 | Line 4573 | yyreduce:
4573        delete_conf_item(yy_conf);
4574      else
4575      {
4576 <      cconf = find_exact_name_conf(CLASS_TYPE, yy_class_name, NULL, NULL);
4576 >      cconf = find_exact_name_conf(CLASS_TYPE, NULL, yy_class_name, NULL, NULL);
4577  
4578        if (cconf != NULL)                /* The class existed already */
4579        {
# Line 4788 | Line 4606 | yyreduce:
4606   }
4607      break;
4608  
4609 <  case 214:
4792 <
4793 < /* Line 1464 of yacc.c  */
4794 < #line 1456 "ircd_parser.y"
4795 <    {
4796 <  if (conf_parser_ctx.pass == 1)
4797 <  {
4798 <    MyFree(yy_class_name);
4799 <    DupString(yy_class_name, yylval.string);
4800 <  }
4801 < }
4802 <    break;
4803 <
4804 <  case 215:
4609 >  case 206:
4610  
4611 < /* Line 1464 of yacc.c  */
4612 < #line 1465 "ircd_parser.y"
4611 > /* Line 1806 of yacc.c  */
4612 > #line 1345 "ircd_parser.y"
4613      {
4614    if (conf_parser_ctx.pass == 1)
4615    {
# Line 4814 | Line 4619 | yyreduce:
4619   }
4620      break;
4621  
4622 <  case 216:
4622 >  case 207:
4623  
4624 < /* Line 1464 of yacc.c  */
4625 < #line 1474 "ircd_parser.y"
4624 > /* Line 1806 of yacc.c  */
4625 > #line 1354 "ircd_parser.y"
4626      {
4627    if (conf_parser_ctx.pass == 1)
4628      PingFreq(yy_class) = (yyvsp[(3) - (4)].number);
4629   }
4630      break;
4631  
4632 <  case 217:
4632 >  case 208:
4633  
4634 < /* Line 1464 of yacc.c  */
4635 < #line 1480 "ircd_parser.y"
4634 > /* Line 1806 of yacc.c  */
4635 > #line 1360 "ircd_parser.y"
4636      {
4637    if (conf_parser_ctx.pass == 1)
4638      PingWarning(yy_class) = (yyvsp[(3) - (4)].number);
4639   }
4640      break;
4641  
4642 <  case 218:
4642 >  case 209:
4643  
4644 < /* Line 1464 of yacc.c  */
4645 < #line 1486 "ircd_parser.y"
4644 > /* Line 1806 of yacc.c  */
4645 > #line 1366 "ircd_parser.y"
4646      {
4647    if (conf_parser_ctx.pass == 1)
4648      MaxPerIp(yy_class) = (yyvsp[(3) - (4)].number);
4649   }
4650      break;
4651  
4652 <  case 219:
4652 >  case 210:
4653  
4654 < /* Line 1464 of yacc.c  */
4655 < #line 1492 "ircd_parser.y"
4654 > /* Line 1806 of yacc.c  */
4655 > #line 1372 "ircd_parser.y"
4656      {
4657    if (conf_parser_ctx.pass == 1)
4658      ConFreq(yy_class) = (yyvsp[(3) - (4)].number);
4659   }
4660      break;
4661  
4662 <  case 220:
4662 >  case 211:
4663  
4664 < /* Line 1464 of yacc.c  */
4665 < #line 1498 "ircd_parser.y"
4664 > /* Line 1806 of yacc.c  */
4665 > #line 1378 "ircd_parser.y"
4666      {
4667    if (conf_parser_ctx.pass == 1)
4668      MaxTotal(yy_class) = (yyvsp[(3) - (4)].number);
4669   }
4670      break;
4671  
4672 <  case 221:
4672 >  case 212:
4673  
4674 < /* Line 1464 of yacc.c  */
4675 < #line 1504 "ircd_parser.y"
4674 > /* Line 1806 of yacc.c  */
4675 > #line 1384 "ircd_parser.y"
4676      {
4677    if (conf_parser_ctx.pass == 1)
4678      MaxGlobal(yy_class) = (yyvsp[(3) - (4)].number);
4679   }
4680      break;
4681  
4682 <  case 222:
4682 >  case 213:
4683  
4684 < /* Line 1464 of yacc.c  */
4685 < #line 1510 "ircd_parser.y"
4684 > /* Line 1806 of yacc.c  */
4685 > #line 1390 "ircd_parser.y"
4686      {
4687    if (conf_parser_ctx.pass == 1)
4688      MaxLocal(yy_class) = (yyvsp[(3) - (4)].number);
4689   }
4690      break;
4691  
4692 <  case 223:
4692 >  case 214:
4693  
4694 < /* Line 1464 of yacc.c  */
4695 < #line 1516 "ircd_parser.y"
4694 > /* Line 1806 of yacc.c  */
4695 > #line 1396 "ircd_parser.y"
4696      {
4697    if (conf_parser_ctx.pass == 1)
4698      MaxIdent(yy_class) = (yyvsp[(3) - (4)].number);
4699   }
4700      break;
4701  
4702 <  case 224:
4702 >  case 215:
4703  
4704 < /* Line 1464 of yacc.c  */
4705 < #line 1522 "ircd_parser.y"
4704 > /* Line 1806 of yacc.c  */
4705 > #line 1402 "ircd_parser.y"
4706      {
4707    if (conf_parser_ctx.pass == 1)
4708      MaxSendq(yy_class) = (yyvsp[(3) - (4)].number);
4709   }
4710      break;
4711  
4712 <  case 225:
4712 >  case 216:
4713  
4714 < /* Line 1464 of yacc.c  */
4715 < #line 1528 "ircd_parser.y"
4714 > /* Line 1806 of yacc.c  */
4715 > #line 1408 "ircd_parser.y"
4716      {
4717    if (conf_parser_ctx.pass == 1)
4718      CidrBitlenIPV4(yy_class) = (yyvsp[(3) - (4)].number);
4719   }
4720      break;
4721  
4722 <  case 226:
4722 >  case 217:
4723  
4724 < /* Line 1464 of yacc.c  */
4725 < #line 1534 "ircd_parser.y"
4724 > /* Line 1806 of yacc.c  */
4725 > #line 1414 "ircd_parser.y"
4726      {
4727    if (conf_parser_ctx.pass == 1)
4728      CidrBitlenIPV6(yy_class) = (yyvsp[(3) - (4)].number);
4729   }
4730      break;
4731  
4732 <  case 227:
4732 >  case 218:
4733  
4734 < /* Line 1464 of yacc.c  */
4735 < #line 1540 "ircd_parser.y"
4734 > /* Line 1806 of yacc.c  */
4735 > #line 1420 "ircd_parser.y"
4736      {
4737    if (conf_parser_ctx.pass == 1)
4738      NumberPerCidr(yy_class) = (yyvsp[(3) - (4)].number);
4739   }
4740      break;
4741  
4742 <  case 228:
4742 >  case 219:
4743  
4744 < /* Line 1464 of yacc.c  */
4745 < #line 1549 "ircd_parser.y"
4744 > /* Line 1806 of yacc.c  */
4745 > #line 1429 "ircd_parser.y"
4746      {
4747    if (conf_parser_ctx.pass == 2)
4748    {
# Line 4947 | Line 4752 | yyreduce:
4752   }
4753      break;
4754  
4755 <  case 229:
4755 >  case 220:
4756  
4757 < /* Line 1464 of yacc.c  */
4758 < #line 1556 "ircd_parser.y"
4757 > /* Line 1806 of yacc.c  */
4758 > #line 1436 "ircd_parser.y"
4759      {
4760    if (conf_parser_ctx.pass == 2)
4761    {
# Line 4960 | Line 4765 | yyreduce:
4765   }
4766      break;
4767  
4768 <  case 230:
4768 >  case 221:
4769  
4770 < /* Line 1464 of yacc.c  */
4771 < #line 1565 "ircd_parser.y"
4770 > /* Line 1806 of yacc.c  */
4771 > #line 1445 "ircd_parser.y"
4772      {
4773    listener_flags = 0;
4774   }
4775      break;
4776  
4777 <  case 234:
4777 >  case 225:
4778  
4779 < /* Line 1464 of yacc.c  */
4780 < #line 1571 "ircd_parser.y"
4779 > /* Line 1806 of yacc.c  */
4780 > #line 1451 "ircd_parser.y"
4781      {
4782    if (conf_parser_ctx.pass == 2)
4783      listener_flags |= LISTENER_SSL;
4784   }
4785      break;
4786  
4787 <  case 235:
4787 >  case 226:
4788  
4789 < /* Line 1464 of yacc.c  */
4790 < #line 1575 "ircd_parser.y"
4789 > /* Line 1806 of yacc.c  */
4790 > #line 1455 "ircd_parser.y"
4791      {
4792    if (conf_parser_ctx.pass == 2)
4793      listener_flags |= LISTENER_HIDDEN;
4794   }
4795      break;
4796  
4797 <  case 236:
4797 >  case 227:
4798  
4799 < /* Line 1464 of yacc.c  */
4800 < #line 1579 "ircd_parser.y"
4799 > /* Line 1806 of yacc.c  */
4800 > #line 1459 "ircd_parser.y"
4801      {
4802    if (conf_parser_ctx.pass == 2)
4803      listener_flags |= LISTENER_SERVER;
4804   }
4805      break;
4806  
4807 <  case 244:
4807 >  case 235:
4808  
4809 < /* Line 1464 of yacc.c  */
4810 < #line 1589 "ircd_parser.y"
4809 > /* Line 1806 of yacc.c  */
4810 > #line 1469 "ircd_parser.y"
4811      { listener_flags = 0; }
4812      break;
4813  
4814 <  case 248:
4814 >  case 239:
4815  
4816 < /* Line 1464 of yacc.c  */
4817 < #line 1594 "ircd_parser.y"
4816 > /* Line 1806 of yacc.c  */
4817 > #line 1474 "ircd_parser.y"
4818      {
4819    if (conf_parser_ctx.pass == 2)
4820    {
# Line 5026 | Line 4831 | yyreduce:
4831   }
4832      break;
4833  
4834 <  case 249:
4834 >  case 240:
4835  
4836 < /* Line 1464 of yacc.c  */
4837 < #line 1608 "ircd_parser.y"
4836 > /* Line 1806 of yacc.c  */
4837 > #line 1488 "ircd_parser.y"
4838      {
4839    if (conf_parser_ctx.pass == 2)
4840    {
# Line 5050 | Line 4855 | yyreduce:
4855   }
4856      break;
4857  
4858 <  case 250:
4858 >  case 241:
4859  
4860 < /* Line 1464 of yacc.c  */
4861 < #line 1628 "ircd_parser.y"
4860 > /* Line 1806 of yacc.c  */
4861 > #line 1508 "ircd_parser.y"
4862      {
4863    if (conf_parser_ctx.pass == 2)
4864    {
# Line 5063 | Line 4868 | yyreduce:
4868   }
4869      break;
4870  
4871 <  case 251:
4871 >  case 242:
4872  
4873 < /* Line 1464 of yacc.c  */
4874 < #line 1637 "ircd_parser.y"
4873 > /* Line 1806 of yacc.c  */
4874 > #line 1517 "ircd_parser.y"
4875      {
4876    if (conf_parser_ctx.pass == 2)
4877    {
# Line 5076 | Line 4881 | yyreduce:
4881   }
4882      break;
4883  
4884 <  case 252:
4884 >  case 243:
4885  
4886 < /* Line 1464 of yacc.c  */
4887 < #line 1649 "ircd_parser.y"
4886 > /* Line 1806 of yacc.c  */
4887 > #line 1529 "ircd_parser.y"
4888      {
4889    if (conf_parser_ctx.pass == 2)
4890    {
# Line 5094 | Line 4899 | yyreduce:
4899   }
4900      break;
4901  
4902 <  case 253:
4902 >  case 244:
4903  
4904 < /* Line 1464 of yacc.c  */
4905 < #line 1661 "ircd_parser.y"
4904 > /* Line 1806 of yacc.c  */
4905 > #line 1541 "ircd_parser.y"
4906      {
4907    if (conf_parser_ctx.pass == 2)
4908    {
# Line 5155 | Line 4960 | yyreduce:
4960   }
4961      break;
4962  
4963 <  case 265:
4963 >  case 256:
4964  
4965 < /* Line 1464 of yacc.c  */
4966 < #line 1723 "ircd_parser.y"
4965 > /* Line 1806 of yacc.c  */
4966 > #line 1603 "ircd_parser.y"
4967      {
4968    if (conf_parser_ctx.pass == 2)
4969    {
# Line 5194 | Line 4999 | yyreduce:
4999   }
5000      break;
5001  
5002 <  case 266:
5002 >  case 257:
5003  
5004 < /* Line 1464 of yacc.c  */
5005 < #line 1760 "ircd_parser.y"
5004 > /* Line 1806 of yacc.c  */
5005 > #line 1640 "ircd_parser.y"
5006      {
5007    if (conf_parser_ctx.pass == 2)
5008    {
# Line 5211 | Line 5016 | yyreduce:
5016   }
5017      break;
5018  
5019 <  case 267:
5019 >  case 258:
5020  
5021 < /* Line 1464 of yacc.c  */
5022 < #line 1773 "ircd_parser.y"
5021 > /* Line 1806 of yacc.c  */
5022 > #line 1653 "ircd_parser.y"
5023      {
5024    if (conf_parser_ctx.pass == 2)
5025    {
# Line 5224 | Line 5029 | yyreduce:
5029   }
5030      break;
5031  
5032 <  case 268:
5032 >  case 259:
5033  
5034 < /* Line 1464 of yacc.c  */
5035 < #line 1782 "ircd_parser.y"
5034 > /* Line 1806 of yacc.c  */
5035 > #line 1662 "ircd_parser.y"
5036      {
5037    if (conf_parser_ctx.pass == 2)
5038    {
# Line 5239 | Line 5044 | yyreduce:
5044   }
5045      break;
5046  
5047 <  case 269:
5047 >  case 260:
5048  
5049 < /* Line 1464 of yacc.c  */
5050 < #line 1793 "ircd_parser.y"
5049 > /* Line 1806 of yacc.c  */
5050 > #line 1673 "ircd_parser.y"
5051      {
5052   }
5053      break;
5054  
5055 <  case 273:
5251 <
5252 < /* Line 1464 of yacc.c  */
5253 < #line 1797 "ircd_parser.y"
5254 <    { not_atom = 1; }
5255 <    break;
5055 >  case 264:
5056  
5057 <  case 275:
5058 <
5259 < /* Line 1464 of yacc.c  */
5260 < #line 1798 "ircd_parser.y"
5261 <    { not_atom = 0; }
5262 <    break;
5263 <
5264 <  case 277:
5265 <
5266 < /* Line 1464 of yacc.c  */
5267 < #line 1801 "ircd_parser.y"
5057 > /* Line 1806 of yacc.c  */
5058 > #line 1678 "ircd_parser.y"
5059      {
5060    if (conf_parser_ctx.pass == 2)
5061 <  {
5271 <    if (not_atom) yy_aconf->flags &= ~CONF_FLAGS_SPOOF_NOTICE;
5272 <    else yy_aconf->flags |= CONF_FLAGS_SPOOF_NOTICE;
5273 <  }
5061 >    yy_aconf->flags |= CONF_FLAGS_SPOOF_NOTICE;
5062   }
5063      break;
5064  
5065 <  case 278:
5065 >  case 265:
5066  
5067 < /* Line 1464 of yacc.c  */
5068 < #line 1808 "ircd_parser.y"
5067 > /* Line 1806 of yacc.c  */
5068 > #line 1682 "ircd_parser.y"
5069      {
5070    if (conf_parser_ctx.pass == 2)
5071 <  {
5284 <    if (not_atom) yy_aconf->flags &= ~CONF_FLAGS_NOLIMIT;
5285 <    else yy_aconf->flags |= CONF_FLAGS_NOLIMIT;
5286 <  }
5071 >    yy_aconf->flags |= CONF_FLAGS_NOLIMIT;
5072   }
5073      break;
5074  
5075 <  case 279:
5075 >  case 266:
5076  
5077 < /* Line 1464 of yacc.c  */
5078 < #line 1815 "ircd_parser.y"
5077 > /* Line 1806 of yacc.c  */
5078 > #line 1686 "ircd_parser.y"
5079      {
5080    if (conf_parser_ctx.pass == 2)
5081 <  {
5297 <    if (not_atom) yy_aconf->flags &= ~CONF_FLAGS_EXEMPTKLINE;
5298 <    else yy_aconf->flags |= CONF_FLAGS_EXEMPTKLINE;
5299 <  }
5081 >    yy_aconf->flags |= CONF_FLAGS_EXEMPTKLINE;
5082   }
5083      break;
5084  
5085 <  case 280:
5085 >  case 267:
5086  
5087 < /* Line 1464 of yacc.c  */
5088 < #line 1822 "ircd_parser.y"
5087 > /* Line 1806 of yacc.c  */
5088 > #line 1690 "ircd_parser.y"
5089      {
5090    if (conf_parser_ctx.pass == 2)
5091 <  {
5310 <    if (not_atom) yy_aconf->flags &= ~CONF_FLAGS_NEED_IDENTD;
5311 <    else yy_aconf->flags |= CONF_FLAGS_NEED_IDENTD;
5312 <  }
5091 >    yy_aconf->flags |= CONF_FLAGS_NEED_IDENTD;
5092   }
5093      break;
5094  
5095 <  case 281:
5317 <
5318 < /* Line 1464 of yacc.c  */
5319 < #line 1829 "ircd_parser.y"
5320 <    {
5321 <  if (conf_parser_ctx.pass == 2)
5322 <  {
5323 <    if (not_atom) yy_aconf->flags &= ~CONF_FLAGS_CAN_FLOOD;
5324 <    else yy_aconf->flags |= CONF_FLAGS_CAN_FLOOD;
5325 <  }
5326 < }
5327 <    break;
5328 <
5329 <  case 282:
5095 >  case 268:
5096  
5097 < /* Line 1464 of yacc.c  */
5098 < #line 1836 "ircd_parser.y"
5097 > /* Line 1806 of yacc.c  */
5098 > #line 1694 "ircd_parser.y"
5099      {
5100    if (conf_parser_ctx.pass == 2)
5101 <  {
5336 <    if (not_atom) yy_aconf->flags &= ~CONF_FLAGS_IDLE_LINED;
5337 <    else yy_aconf->flags |= CONF_FLAGS_IDLE_LINED;
5338 <  }
5101 >    yy_aconf->flags |= CONF_FLAGS_CAN_FLOOD;
5102   }
5103      break;
5104  
5105 <  case 283:
5105 >  case 269:
5106  
5107 < /* Line 1464 of yacc.c  */
5108 < #line 1843 "ircd_parser.y"
5107 > /* Line 1806 of yacc.c  */
5108 > #line 1698 "ircd_parser.y"
5109      {
5110    if (conf_parser_ctx.pass == 2)
5111 <  {
5349 <    if (not_atom) yy_aconf->flags &= ~CONF_FLAGS_NO_TILDE;
5350 <    else yy_aconf->flags |= CONF_FLAGS_NO_TILDE;
5351 <  }
5111 >    yy_aconf->flags |= CONF_FLAGS_NO_TILDE;
5112   }
5113      break;
5114  
5115 <  case 284:
5115 >  case 270:
5116  
5117 < /* Line 1464 of yacc.c  */
5118 < #line 1850 "ircd_parser.y"
5117 > /* Line 1806 of yacc.c  */
5118 > #line 1702 "ircd_parser.y"
5119      {
5120    if (conf_parser_ctx.pass == 2)
5121 <  {
5362 <    if (not_atom) yy_aconf->flags &= ~CONF_FLAGS_EXEMPTGLINE;
5363 <    else yy_aconf->flags |= CONF_FLAGS_EXEMPTGLINE;
5364 <  }
5121 >    yy_aconf->flags |= CONF_FLAGS_EXEMPTGLINE;
5122   }
5123      break;
5124  
5125 <  case 285:
5125 >  case 271:
5126  
5127 < /* Line 1464 of yacc.c  */
5128 < #line 1857 "ircd_parser.y"
5127 > /* Line 1806 of yacc.c  */
5128 > #line 1706 "ircd_parser.y"
5129      {
5130    if (conf_parser_ctx.pass == 2)
5131 <  {
5375 <    if (not_atom) yy_aconf->flags &= ~CONF_FLAGS_EXEMPTRESV;
5376 <    else yy_aconf->flags |= CONF_FLAGS_EXEMPTRESV;
5377 <  }
5131 >    yy_aconf->flags |= CONF_FLAGS_EXEMPTRESV;
5132   }
5133      break;
5134  
5135 <  case 286:
5135 >  case 272:
5136  
5137 < /* Line 1464 of yacc.c  */
5138 < #line 1864 "ircd_parser.y"
5137 > /* Line 1806 of yacc.c  */
5138 > #line 1710 "ircd_parser.y"
5139      {
5140    if (conf_parser_ctx.pass == 2)
5141 <  {
5388 <    if (not_atom) yy_aconf->flags &= ~CONF_FLAGS_NEED_PASSWORD;
5389 <    else yy_aconf->flags |= CONF_FLAGS_NEED_PASSWORD;
5390 <  }
5141 >    yy_aconf->flags |= CONF_FLAGS_NEED_PASSWORD;
5142   }
5143      break;
5144  
5145 <  case 287:
5145 >  case 273:
5146  
5147 < /* Line 1464 of yacc.c  */
5148 < #line 1874 "ircd_parser.y"
5147 > /* Line 1806 of yacc.c  */
5148 > #line 1717 "ircd_parser.y"
5149      {
5150    if (conf_parser_ctx.pass == 2)
5151    {
# Line 5407 | Line 5158 | yyreduce:
5158      }
5159      else
5160      {
5161 <      ilog(L_ERROR, "Spoofs must be less than %d..ignoring it", HOSTLEN);
5161 >      ilog(LOG_TYPE_IRCD, "Spoofs must be less than %d..ignoring it", HOSTLEN);
5162        yy_conf->name = NULL;
5163      }
5164    }
5165   }
5166      break;
5167  
5168 <  case 288:
5168 >  case 274:
5169  
5170 < /* Line 1464 of yacc.c  */
5171 < #line 1893 "ircd_parser.y"
5170 > /* Line 1806 of yacc.c  */
5171 > #line 1736 "ircd_parser.y"
5172      {
5173    if (conf_parser_ctx.pass == 2)
5174    {
# Line 5428 | Line 5179 | yyreduce:
5179   }
5180      break;
5181  
5182 <  case 289:
5182 >  case 275:
5183  
5184 < /* Line 1464 of yacc.c  */
5185 < #line 1903 "ircd_parser.y"
5184 > /* Line 1806 of yacc.c  */
5185 > #line 1746 "ircd_parser.y"
5186      {
5187    if (conf_parser_ctx.pass == 2)
5188    {
# Line 5441 | Line 5192 | yyreduce:
5192   }
5193      break;
5194  
5195 <  case 290:
5195 >  case 276:
5196  
5197 < /* Line 1464 of yacc.c  */
5198 < #line 1916 "ircd_parser.y"
5197 > /* Line 1806 of yacc.c  */
5198 > #line 1759 "ircd_parser.y"
5199      {
5200    if (conf_parser_ctx.pass == 2)
5201    {
# Line 5454 | Line 5205 | yyreduce:
5205   }
5206      break;
5207  
5208 <  case 291:
5208 >  case 277:
5209  
5210 < /* Line 1464 of yacc.c  */
5211 < #line 1923 "ircd_parser.y"
5210 > /* Line 1806 of yacc.c  */
5211 > #line 1766 "ircd_parser.y"
5212      {
5213    if (conf_parser_ctx.pass == 2)
5214    {
# Line 5467 | Line 5218 | yyreduce:
5218   }
5219      break;
5220  
5221 <  case 298:
5221 >  case 284:
5222  
5223 < /* Line 1464 of yacc.c  */
5224 < #line 1935 "ircd_parser.y"
5223 > /* Line 1806 of yacc.c  */
5224 > #line 1778 "ircd_parser.y"
5225      {
5226    if (conf_parser_ctx.pass == 2)
5227    {
# Line 5480 | Line 5231 | yyreduce:
5231   }
5232      break;
5233  
5234 <  case 299:
5234 >  case 285:
5235  
5236 < /* Line 1464 of yacc.c  */
5237 < #line 1944 "ircd_parser.y"
5236 > /* Line 1806 of yacc.c  */
5237 > #line 1787 "ircd_parser.y"
5238      {
5239    if (conf_parser_ctx.pass == 2)
5240    {
# Line 5499 | Line 5250 | yyreduce:
5250   }
5251      break;
5252  
5253 <  case 300:
5253 >  case 286:
5254  
5255 < /* Line 1464 of yacc.c  */
5256 < #line 1959 "ircd_parser.y"
5255 > /* Line 1806 of yacc.c  */
5256 > #line 1802 "ircd_parser.y"
5257      {
5258    if (conf_parser_ctx.pass == 2)
5259    {
# Line 5513 | Line 5264 | yyreduce:
5264   }
5265      break;
5266  
5267 <  case 301:
5267 >  case 292:
5268  
5269 < /* Line 1464 of yacc.c  */
5270 < #line 1972 "ircd_parser.y"
5269 > /* Line 1806 of yacc.c  */
5270 > #line 1820 "ircd_parser.y"
5271 >    {
5272 >  if (conf_parser_ctx.pass == 2)
5273 >  {
5274 >    if (valid_servname(yylval.string))
5275 >    {
5276 >      yy_conf = make_conf_item(SERVICE_TYPE);
5277 >      DupString(yy_conf->name, yylval.string);
5278 >    }
5279 >  }
5280 > }
5281 >    break;
5282 >
5283 >  case 293:
5284 >
5285 > /* Line 1806 of yacc.c  */
5286 > #line 1835 "ircd_parser.y"
5287      {
5288    if (conf_parser_ctx.pass == 2)
5289    {
# Line 5527 | Line 5294 | yyreduce:
5294   }
5295      break;
5296  
5297 <  case 302:
5297 >  case 294:
5298  
5299 < /* Line 1464 of yacc.c  */
5300 < #line 1980 "ircd_parser.y"
5299 > /* Line 1806 of yacc.c  */
5300 > #line 1843 "ircd_parser.y"
5301      {
5302    if (conf_parser_ctx.pass == 2)
5303    {
# Line 5539 | Line 5306 | yyreduce:
5306   }
5307      break;
5308  
5309 <  case 309:
5309 >  case 301:
5310  
5311 < /* Line 1464 of yacc.c  */
5312 < #line 1991 "ircd_parser.y"
5311 > /* Line 1806 of yacc.c  */
5312 > #line 1854 "ircd_parser.y"
5313      {
5314    if (conf_parser_ctx.pass == 2)
5315    {
# Line 5552 | Line 5319 | yyreduce:
5319   }
5320      break;
5321  
5322 <  case 310:
5322 >  case 302:
5323  
5324 < /* Line 1464 of yacc.c  */
5325 < #line 2000 "ircd_parser.y"
5324 > /* Line 1806 of yacc.c  */
5325 > #line 1863 "ircd_parser.y"
5326      {
5327    if (conf_parser_ctx.pass == 2)
5328    {
# Line 5578 | Line 5345 | yyreduce:
5345   }
5346      break;
5347  
5348 <  case 311:
5348 >  case 303:
5349  
5350 < /* Line 1464 of yacc.c  */
5351 < #line 2022 "ircd_parser.y"
5350 > /* Line 1806 of yacc.c  */
5351 > #line 1885 "ircd_parser.y"
5352      {
5353    if (conf_parser_ctx.pass == 2)
5354      yy_match_item->action = 0;
5355   }
5356      break;
5357  
5358 <  case 315:
5358 >  case 307:
5359  
5360 < /* Line 1464 of yacc.c  */
5361 < #line 2029 "ircd_parser.y"
5360 > /* Line 1806 of yacc.c  */
5361 > #line 1892 "ircd_parser.y"
5362      {
5363    if (conf_parser_ctx.pass == 2)
5364      yy_match_item->action |= SHARED_KLINE;
5365   }
5366      break;
5367  
5368 <  case 316:
5368 >  case 308:
5369  
5370 < /* Line 1464 of yacc.c  */
5371 < #line 2033 "ircd_parser.y"
5370 > /* Line 1806 of yacc.c  */
5371 > #line 1896 "ircd_parser.y"
5372      {
5373    if (conf_parser_ctx.pass == 2)
5374 <    yy_match_item->action |= SHARED_TKLINE;
5374 >    yy_match_item->action |= SHARED_UNKLINE;
5375   }
5376      break;
5377  
5378 <  case 317:
5378 >  case 309:
5379  
5380 < /* Line 1464 of yacc.c  */
5381 < #line 2037 "ircd_parser.y"
5380 > /* Line 1806 of yacc.c  */
5381 > #line 1900 "ircd_parser.y"
5382      {
5383    if (conf_parser_ctx.pass == 2)
5384 <    yy_match_item->action |= SHARED_UNKLINE;
5384 >    yy_match_item->action |= SHARED_DLINE;
5385   }
5386      break;
5387  
5388 <  case 318:
5388 >  case 310:
5389  
5390 < /* Line 1464 of yacc.c  */
5391 < #line 2041 "ircd_parser.y"
5390 > /* Line 1806 of yacc.c  */
5391 > #line 1904 "ircd_parser.y"
5392      {
5393    if (conf_parser_ctx.pass == 2)
5394 <    yy_match_item->action |= SHARED_XLINE;
5394 >    yy_match_item->action |= SHARED_UNDLINE;
5395   }
5396      break;
5397  
5398 <  case 319:
5398 >  case 311:
5399  
5400 < /* Line 1464 of yacc.c  */
5401 < #line 2045 "ircd_parser.y"
5400 > /* Line 1806 of yacc.c  */
5401 > #line 1908 "ircd_parser.y"
5402      {
5403    if (conf_parser_ctx.pass == 2)
5404 <    yy_match_item->action |= SHARED_TXLINE;
5404 >    yy_match_item->action |= SHARED_XLINE;
5405   }
5406      break;
5407  
5408 <  case 320:
5408 >  case 312:
5409  
5410 < /* Line 1464 of yacc.c  */
5411 < #line 2049 "ircd_parser.y"
5410 > /* Line 1806 of yacc.c  */
5411 > #line 1912 "ircd_parser.y"
5412      {
5413    if (conf_parser_ctx.pass == 2)
5414      yy_match_item->action |= SHARED_UNXLINE;
5415   }
5416      break;
5417  
5418 <  case 321:
5418 >  case 313:
5419  
5420 < /* Line 1464 of yacc.c  */
5421 < #line 2053 "ircd_parser.y"
5420 > /* Line 1806 of yacc.c  */
5421 > #line 1916 "ircd_parser.y"
5422      {
5423    if (conf_parser_ctx.pass == 2)
5424      yy_match_item->action |= SHARED_RESV;
5425   }
5426      break;
5427  
5428 <  case 322:
5428 >  case 314:
5429  
5430 < /* Line 1464 of yacc.c  */
5431 < #line 2057 "ircd_parser.y"
5665 <    {
5666 <  if (conf_parser_ctx.pass == 2)
5667 <    yy_match_item->action |= SHARED_TRESV;
5668 < }
5669 <    break;
5670 <
5671 <  case 323:
5672 <
5673 < /* Line 1464 of yacc.c  */
5674 < #line 2061 "ircd_parser.y"
5430 > /* Line 1806 of yacc.c  */
5431 > #line 1920 "ircd_parser.y"
5432      {
5433    if (conf_parser_ctx.pass == 2)
5434      yy_match_item->action |= SHARED_UNRESV;
5435   }
5436      break;
5437  
5438 <  case 324:
5438 >  case 315:
5439  
5440 < /* Line 1464 of yacc.c  */
5441 < #line 2065 "ircd_parser.y"
5440 > /* Line 1806 of yacc.c  */
5441 > #line 1924 "ircd_parser.y"
5442      {
5443    if (conf_parser_ctx.pass == 2)
5444      yy_match_item->action |= SHARED_LOCOPS;
5445   }
5446      break;
5447  
5448 <  case 325:
5448 >  case 316:
5449  
5450 < /* Line 1464 of yacc.c  */
5451 < #line 2069 "ircd_parser.y"
5450 > /* Line 1806 of yacc.c  */
5451 > #line 1928 "ircd_parser.y"
5452      {
5453    if (conf_parser_ctx.pass == 2)
5454      yy_match_item->action = SHARED_ALL;
5455   }
5456      break;
5457  
5458 <  case 326:
5458 >  case 317:
5459  
5460 < /* Line 1464 of yacc.c  */
5461 < #line 2078 "ircd_parser.y"
5460 > /* Line 1806 of yacc.c  */
5461 > #line 1937 "ircd_parser.y"
5462      {
5463    if (conf_parser_ctx.pass == 2)
5464    {
# Line 5711 | Line 5468 | yyreduce:
5468   }
5469      break;
5470  
5471 <  case 327:
5471 >  case 318:
5472  
5473 < /* Line 1464 of yacc.c  */
5474 < #line 2085 "ircd_parser.y"
5473 > /* Line 1806 of yacc.c  */
5474 > #line 1944 "ircd_parser.y"
5475      {
5476    if (conf_parser_ctx.pass == 2)
5477    {
# Line 5725 | Line 5482 | yyreduce:
5482   }
5483      break;
5484  
5485 <  case 333:
5485 >  case 324:
5486  
5487 < /* Line 1464 of yacc.c  */
5488 < #line 2098 "ircd_parser.y"
5487 > /* Line 1806 of yacc.c  */
5488 > #line 1957 "ircd_parser.y"
5489      {
5490    if (conf_parser_ctx.pass == 2)
5491      DupString(yy_conf->name, yylval.string);
5492   }
5493      break;
5494  
5495 <  case 334:
5495 >  case 325:
5496  
5497 < /* Line 1464 of yacc.c  */
5498 < #line 2104 "ircd_parser.y"
5497 > /* Line 1806 of yacc.c  */
5498 > #line 1963 "ircd_parser.y"
5499      {
5500    if (conf_parser_ctx.pass == 2)
5501      yy_conf->flags = 0;
5502   }
5503      break;
5504  
5505 <  case 338:
5505 >  case 329:
5506  
5507 < /* Line 1464 of yacc.c  */
5508 < #line 2111 "ircd_parser.y"
5507 > /* Line 1806 of yacc.c  */
5508 > #line 1970 "ircd_parser.y"
5509      {
5510    if (conf_parser_ctx.pass == 2)
5511      yy_conf->flags |= SHARED_KLINE;
5512   }
5513      break;
5514  
5515 <  case 339:
5515 >  case 330:
5516  
5517 < /* Line 1464 of yacc.c  */
5518 < #line 2115 "ircd_parser.y"
5517 > /* Line 1806 of yacc.c  */
5518 > #line 1974 "ircd_parser.y"
5519      {
5520    if (conf_parser_ctx.pass == 2)
5521 <    yy_conf->flags |= SHARED_TKLINE;
5521 >    yy_conf->flags |= SHARED_UNKLINE;
5522   }
5523      break;
5524  
5525 <  case 340:
5525 >  case 331:
5526  
5527 < /* Line 1464 of yacc.c  */
5528 < #line 2119 "ircd_parser.y"
5527 > /* Line 1806 of yacc.c  */
5528 > #line 1978 "ircd_parser.y"
5529      {
5530    if (conf_parser_ctx.pass == 2)
5531 <    yy_conf->flags |= SHARED_UNKLINE;
5531 >    yy_conf->flags |= SHARED_DLINE;
5532   }
5533      break;
5534  
5535 <  case 341:
5535 >  case 332:
5536  
5537 < /* Line 1464 of yacc.c  */
5538 < #line 2123 "ircd_parser.y"
5537 > /* Line 1806 of yacc.c  */
5538 > #line 1982 "ircd_parser.y"
5539      {
5540    if (conf_parser_ctx.pass == 2)
5541 <    yy_conf->flags |= SHARED_XLINE;
5541 >    yy_conf->flags |= SHARED_UNDLINE;
5542   }
5543      break;
5544  
5545 <  case 342:
5545 >  case 333:
5546  
5547 < /* Line 1464 of yacc.c  */
5548 < #line 2127 "ircd_parser.y"
5547 > /* Line 1806 of yacc.c  */
5548 > #line 1986 "ircd_parser.y"
5549      {
5550    if (conf_parser_ctx.pass == 2)
5551 <    yy_conf->flags |= SHARED_TXLINE;
5551 >    yy_conf->flags |= SHARED_XLINE;
5552   }
5553      break;
5554  
5555 <  case 343:
5555 >  case 334:
5556  
5557 < /* Line 1464 of yacc.c  */
5558 < #line 2131 "ircd_parser.y"
5557 > /* Line 1806 of yacc.c  */
5558 > #line 1990 "ircd_parser.y"
5559      {
5560    if (conf_parser_ctx.pass == 2)
5561      yy_conf->flags |= SHARED_UNXLINE;
5562   }
5563      break;
5564  
5565 <  case 344:
5565 >  case 335:
5566  
5567 < /* Line 1464 of yacc.c  */
5568 < #line 2135 "ircd_parser.y"
5567 > /* Line 1806 of yacc.c  */
5568 > #line 1994 "ircd_parser.y"
5569      {
5570    if (conf_parser_ctx.pass == 2)
5571      yy_conf->flags |= SHARED_RESV;
5572   }
5573      break;
5574  
5575 <  case 345:
5575 >  case 336:
5576  
5577 < /* Line 1464 of yacc.c  */
5578 < #line 2139 "ircd_parser.y"
5822 <    {
5823 <  if (conf_parser_ctx.pass == 2)
5824 <    yy_conf->flags |= SHARED_TRESV;
5825 < }
5826 <    break;
5827 <
5828 <  case 346:
5829 <
5830 < /* Line 1464 of yacc.c  */
5831 < #line 2143 "ircd_parser.y"
5577 > /* Line 1806 of yacc.c  */
5578 > #line 1998 "ircd_parser.y"
5579      {
5580    if (conf_parser_ctx.pass == 2)
5581      yy_conf->flags |= SHARED_UNRESV;
5582   }
5583      break;
5584  
5585 <  case 347:
5585 >  case 337:
5586  
5587 < /* Line 1464 of yacc.c  */
5588 < #line 2147 "ircd_parser.y"
5587 > /* Line 1806 of yacc.c  */
5588 > #line 2002 "ircd_parser.y"
5589      {
5590    if (conf_parser_ctx.pass == 2)
5591      yy_conf->flags |= SHARED_LOCOPS;
5592   }
5593      break;
5594  
5595 <  case 348:
5595 >  case 338:
5596  
5597 < /* Line 1464 of yacc.c  */
5598 < #line 2151 "ircd_parser.y"
5597 > /* Line 1806 of yacc.c  */
5598 > #line 2006 "ircd_parser.y"
5599      {
5600    if (conf_parser_ctx.pass == 2)
5601      yy_conf->flags = SHARED_ALL;
5602   }
5603      break;
5604  
5605 <  case 349:
5605 >  case 339:
5606  
5607 < /* Line 1464 of yacc.c  */
5608 < #line 2160 "ircd_parser.y"
5607 > /* Line 1806 of yacc.c  */
5608 > #line 2015 "ircd_parser.y"
5609      {
5610    if (conf_parser_ctx.pass == 2)
5611    {
5612      yy_conf = make_conf_item(SERVER_TYPE);
5613 <    yy_aconf = (struct AccessItem *)map_to_conf(yy_conf);
5614 <    yy_aconf->passwd = NULL;
5613 >    yy_aconf = map_to_conf(yy_conf);
5614 >
5615      /* defaults */
5616      yy_aconf->port = PORTNUM;
5870
5871    if (ConfigFileEntry.burst_away)
5872      yy_aconf->flags = CONF_FLAGS_BURST_AWAY;
5617    }
5618    else
5619    {
# Line 5879 | Line 5623 | yyreduce:
5623   }
5624      break;
5625  
5626 <  case 350:
5626 >  case 340:
5627  
5628 < /* Line 1464 of yacc.c  */
5629 < #line 2178 "ircd_parser.y"
5628 > /* Line 1806 of yacc.c  */
5629 > #line 2030 "ircd_parser.y"
5630      {
5631    if (conf_parser_ctx.pass == 2)
5632    {
5633      struct CollectItem *yy_hconf=NULL;
5634      struct CollectItem *yy_lconf=NULL;
5635 <    dlink_node *ptr;
5636 <    dlink_node *next_ptr;
5893 < #ifdef HAVE_LIBCRYPTO
5635 >    dlink_node *ptr = NULL, *next_ptr = NULL;
5636 >
5637      if (yy_aconf->host &&
5638 <        ((yy_aconf->passwd && yy_aconf->spasswd) ||
5639 <         (yy_aconf->rsa_public_key && IsConfCryptLink(yy_aconf))))
5640 < #else /* !HAVE_LIBCRYPTO */
5641 <      if (yy_aconf->host && !IsConfCryptLink(yy_aconf) &&
5642 <          yy_aconf->passwd && yy_aconf->spasswd)
5643 < #endif /* !HAVE_LIBCRYPTO */
5644 <        {
5645 <          if (conf_add_server(yy_conf, class_name) == -1)
5646 <          {
5647 <            delete_conf_item(yy_conf);
5648 <            yy_conf = NULL;
5649 <            yy_aconf = NULL;
5650 <          }
5651 <        }
5652 <        else
5910 <        {
5911 <          /* Even if yy_conf ->name is NULL
5912 <           * should still unhook any hub/leaf confs still pending
5913 <           */
5914 <          unhook_hub_leaf_confs();
5638 >        yy_aconf->passwd && yy_aconf->spasswd)
5639 >    {
5640 >      if (conf_add_server(yy_conf, class_name) == -1)
5641 >      {
5642 >        delete_conf_item(yy_conf);
5643 >        yy_conf = NULL;
5644 >        yy_aconf = NULL;
5645 >      }
5646 >    }
5647 >    else
5648 >    {
5649 >      /* Even if yy_conf ->name is NULL
5650 >       * should still unhook any hub/leaf confs still pending
5651 >       */
5652 >      unhook_hub_leaf_confs();
5653  
5654 <          if (yy_conf->name != NULL)
5655 <          {
5656 < #ifndef HAVE_LIBCRYPTO
5657 <            if (IsConfCryptLink(yy_aconf))
5658 <              yyerror("Ignoring connect block -- no OpenSSL support");
5659 < #else
5660 <            if (IsConfCryptLink(yy_aconf) && !yy_aconf->rsa_public_key)
5923 <              yyerror("Ignoring connect block -- missing key");
5924 < #endif
5925 <            if (yy_aconf->host == NULL)
5926 <              yyerror("Ignoring connect block -- missing host");
5927 <            else if (!IsConfCryptLink(yy_aconf) &&
5928 <                    (!yy_aconf->passwd || !yy_aconf->spasswd))
5929 <              yyerror("Ignoring connect block -- missing password");
5930 <          }
5654 >      if (yy_conf->name != NULL)
5655 >      {
5656 >        if (yy_aconf->host == NULL)
5657 >          yyerror("Ignoring connect block -- missing host");
5658 >        else if (!yy_aconf->passwd || !yy_aconf->spasswd)
5659 >          yyerror("Ignoring connect block -- missing password");
5660 >      }
5661  
5662  
5663 <          /* XXX
5664 <           * This fixes a try_connections() core (caused by invalid class_ptr
5665 <           * pointers) reported by metalrock. That's an ugly fix, but there
5666 <           * is currently no better way. The entire config subsystem needs an
5667 <           * rewrite ASAP. make_conf_item() shouldn't really add things onto
5668 <           * a doubly linked list immediately without any sanity checks!  -Michael
5669 <           */
5670 <          delete_conf_item(yy_conf);
5663 >      /* XXX
5664 >       * This fixes a try_connections() core (caused by invalid class_ptr
5665 >       * pointers) reported by metalrock. That's an ugly fix, but there
5666 >       * is currently no better way. The entire config subsystem needs an
5667 >       * rewrite ASAP. make_conf_item() shouldn't really add things onto
5668 >       * a doubly linked list immediately without any sanity checks!  -Michael
5669 >       */
5670 >      delete_conf_item(yy_conf);
5671  
5672 <          yy_aconf = NULL;
5673 <          yy_conf = NULL;
5674 <        }
5672 >      yy_aconf = NULL;
5673 >      yy_conf = NULL;
5674 >    }
5675  
5676        /*
5677         * yy_conf is still pointing at the server that is having
# Line 6011 | Line 5741 | yyreduce:
5741   }
5742      break;
5743  
5744 <  case 371:
6015 <
6016 < /* Line 1464 of yacc.c  */
6017 < #line 2316 "ircd_parser.y"
6018 <    {
6019 <  if (conf_parser_ctx.pass == 2)
6020 <  {
6021 <    if (yy_conf->name != NULL)
6022 <      yyerror("Multiple connect name entry");
6023 <
6024 <    MyFree(yy_conf->name);
6025 <    DupString(yy_conf->name, yylval.string);
6026 <  }
6027 < }
6028 <    break;
6029 <
6030 <  case 372:
5744 >  case 356:
5745  
5746 < /* Line 1464 of yacc.c  */
5747 < #line 2328 "ircd_parser.y"
5746 > /* Line 1806 of yacc.c  */
5747 > #line 2152 "ircd_parser.y"
5748      {
5749    if (conf_parser_ctx.pass == 2)
5750    {
# Line 6043 | Line 5757 | yyreduce:
5757   }
5758      break;
5759  
5760 <  case 373:
5760 >  case 357:
5761  
5762 < /* Line 1464 of yacc.c  */
5763 < #line 2340 "ircd_parser.y"
5762 > /* Line 1806 of yacc.c  */
5763 > #line 2164 "ircd_parser.y"
5764      {
5765    if (conf_parser_ctx.pass == 2)
5766    {
# Line 6056 | Line 5770 | yyreduce:
5770   }
5771      break;
5772  
5773 <  case 374:
5773 >  case 358:
5774  
5775 < /* Line 1464 of yacc.c  */
5776 < #line 2349 "ircd_parser.y"
5775 > /* Line 1806 of yacc.c  */
5776 > #line 2173 "ircd_parser.y"
5777      {
5778    if (conf_parser_ctx.pass == 2)
5779    {
# Line 6071 | Line 5785 | yyreduce:
5785      hints.ai_socktype = SOCK_STREAM;
5786      hints.ai_flags    = AI_PASSIVE | AI_NUMERICHOST;
5787  
5788 <    if (irc_getaddrinfo(yylval.string, NULL, &hints, &res))
5789 <      ilog(L_ERROR, "Invalid netmask for server vhost(%s)", yylval.string);
5788 >    if (getaddrinfo(yylval.string, NULL, &hints, &res))
5789 >      ilog(LOG_TYPE_IRCD, "Invalid netmask for server vhost(%s)", yylval.string);
5790      else
5791      {
5792        assert(res != NULL);
# Line 6080 | Line 5794 | yyreduce:
5794        memcpy(&yy_aconf->my_ipnum, res->ai_addr, res->ai_addrlen);
5795        yy_aconf->my_ipnum.ss.ss_family = res->ai_family;
5796        yy_aconf->my_ipnum.ss_len = res->ai_addrlen;
5797 <      irc_freeaddrinfo(res);
5797 >      freeaddrinfo(res);
5798      }
5799    }
5800   }
5801      break;
5802  
5803 <  case 375:
5803 >  case 359:
5804  
5805 < /* Line 1464 of yacc.c  */
5806 < #line 2375 "ircd_parser.y"
5805 > /* Line 1806 of yacc.c  */
5806 > #line 2199 "ircd_parser.y"
5807      {
5808    if (conf_parser_ctx.pass == 2)
5809    {
# Line 6108 | Line 5822 | yyreduce:
5822   }
5823      break;
5824  
5825 <  case 376:
5825 >  case 360:
5826  
5827 < /* Line 1464 of yacc.c  */
5828 < #line 2393 "ircd_parser.y"
5827 > /* Line 1806 of yacc.c  */
5828 > #line 2217 "ircd_parser.y"
5829      {
5830    if (conf_parser_ctx.pass == 2)
5831    {
# Line 6130 | Line 5844 | yyreduce:
5844   }
5845      break;
5846  
5847 <  case 377:
5847 >  case 361:
5848  
5849 < /* Line 1464 of yacc.c  */
5850 < #line 2411 "ircd_parser.y"
5849 > /* Line 1806 of yacc.c  */
5850 > #line 2235 "ircd_parser.y"
5851      {
5852    if (conf_parser_ctx.pass == 2)
5853      yy_aconf->port = (yyvsp[(3) - (4)].number);
5854   }
5855      break;
5856  
5857 <  case 378:
5857 >  case 362:
5858  
5859 < /* Line 1464 of yacc.c  */
5860 < #line 2417 "ircd_parser.y"
5859 > /* Line 1806 of yacc.c  */
5860 > #line 2241 "ircd_parser.y"
5861      {
5862    if (conf_parser_ctx.pass == 2)
5863      yy_aconf->aftype = AF_INET;
5864   }
5865      break;
5866  
5867 <  case 379:
5867 >  case 363:
5868  
5869 < /* Line 1464 of yacc.c  */
5870 < #line 2421 "ircd_parser.y"
5869 > /* Line 1806 of yacc.c  */
5870 > #line 2245 "ircd_parser.y"
5871      {
5872   #ifdef IPV6
5873    if (conf_parser_ctx.pass == 2)
# Line 6162 | Line 5876 | yyreduce:
5876   }
5877      break;
5878  
5879 <  case 380:
6166 <
6167 < /* Line 1464 of yacc.c  */
6168 < #line 2429 "ircd_parser.y"
6169 <    {
6170 <  if (conf_parser_ctx.pass == 2)
6171 <  {
6172 <    MyFree(yy_aconf->fakename);
6173 <    DupString(yy_aconf->fakename, yylval.string);
6174 <  }
6175 < }
6176 <    break;
6177 <
6178 <  case 381:
6179 <
6180 < /* Line 1464 of yacc.c  */
6181 < #line 2438 "ircd_parser.y"
6182 <    {
6183 < }
6184 <    break;
6185 <
6186 <  case 385:
6187 <
6188 < /* Line 1464 of yacc.c  */
6189 < #line 2442 "ircd_parser.y"
6190 <    { not_atom = 1; }
6191 <    break;
6192 <
6193 <  case 387:
6194 <
6195 < /* Line 1464 of yacc.c  */
6196 < #line 2443 "ircd_parser.y"
6197 <    { not_atom = 0; }
6198 <    break;
6199 <
6200 <  case 389:
6201 <
6202 < /* Line 1464 of yacc.c  */
6203 < #line 2446 "ircd_parser.y"
6204 <    {
6205 <  if (conf_parser_ctx.pass == 2)
6206 < #ifndef HAVE_LIBZ
6207 <    yyerror("Ignoring flags = compressed; -- no zlib support");
6208 < #else
6209 < {
6210 <   if (not_atom)ClearConfCompressed(yy_aconf);
6211 <   else SetConfCompressed(yy_aconf);
6212 < }
6213 < #endif
6214 < }
6215 <    break;
6216 <
6217 <  case 390:
6218 <
6219 < /* Line 1464 of yacc.c  */
6220 < #line 2457 "ircd_parser.y"
6221 <    {
6222 <  if (conf_parser_ctx.pass == 2)
6223 <  {
6224 <    if (not_atom)ClearConfCryptLink(yy_aconf);
6225 <    else SetConfCryptLink(yy_aconf);
6226 <  }
6227 < }
6228 <    break;
6229 <
6230 <  case 391:
5879 >  case 364:
5880  
5881 < /* Line 1464 of yacc.c  */
5882 < #line 2464 "ircd_parser.y"
5881 > /* Line 1806 of yacc.c  */
5882 > #line 2253 "ircd_parser.y"
5883      {
6235  if (conf_parser_ctx.pass == 2)
6236  {
6237    if (not_atom)ClearConfAllowAutoConn(yy_aconf);
6238    else SetConfAllowAutoConn(yy_aconf);
6239  }
5884   }
5885      break;
5886  
5887 <  case 392:
5887 >  case 368:
5888  
5889 < /* Line 1464 of yacc.c  */
5890 < #line 2471 "ircd_parser.y"
5889 > /* Line 1806 of yacc.c  */
5890 > #line 2258 "ircd_parser.y"
5891      {
5892    if (conf_parser_ctx.pass == 2)
5893 <  {
6250 <    if (not_atom)ClearConfAwayBurst(yy_aconf);
6251 <    else SetConfAwayBurst(yy_aconf);
6252 <  }
5893 >    SetConfAllowAutoConn(yy_aconf);
5894   }
5895      break;
5896  
5897 <  case 393:
5897 >  case 369:
5898  
5899 < /* Line 1464 of yacc.c  */
5900 < #line 2478 "ircd_parser.y"
5899 > /* Line 1806 of yacc.c  */
5900 > #line 2262 "ircd_parser.y"
5901      {
5902    if (conf_parser_ctx.pass == 2)
5903 <  {
6263 <    if (not_atom)ClearConfTopicBurst(yy_aconf);
6264 <    else SetConfTopicBurst(yy_aconf);
6265 <  }
5903 >    SetConfAwayBurst(yy_aconf);
5904   }
5905      break;
5906  
5907 <  case 394:
5907 >  case 370:
5908  
5909 < /* Line 1464 of yacc.c  */
5910 < #line 2488 "ircd_parser.y"
5909 > /* Line 1806 of yacc.c  */
5910 > #line 2266 "ircd_parser.y"
5911      {
6274 #ifdef HAVE_LIBCRYPTO
5912    if (conf_parser_ctx.pass == 2)
5913 <  {
6277 <    BIO *file;
6278 <
6279 <    if (yy_aconf->rsa_public_key != NULL)
6280 <    {
6281 <      RSA_free(yy_aconf->rsa_public_key);
6282 <      yy_aconf->rsa_public_key = NULL;
6283 <    }
6284 <
6285 <    if (yy_aconf->rsa_public_key_file != NULL)
6286 <    {
6287 <      MyFree(yy_aconf->rsa_public_key_file);
6288 <      yy_aconf->rsa_public_key_file = NULL;
6289 <    }
6290 <
6291 <    DupString(yy_aconf->rsa_public_key_file, yylval.string);
6292 <
6293 <    if ((file = BIO_new_file(yylval.string, "r")) == NULL)
6294 <    {
6295 <      yyerror("Ignoring rsa_public_key_file -- file doesn't exist");
6296 <      break;
6297 <    }
6298 <
6299 <    yy_aconf->rsa_public_key = (RSA *)PEM_read_bio_RSA_PUBKEY(file, NULL, 0, NULL);
6300 <
6301 <    if (yy_aconf->rsa_public_key == NULL)
6302 <    {
6303 <      yyerror("Ignoring rsa_public_key_file -- Key invalid; check key syntax.");
6304 <      break;
6305 <    }
6306 <      
6307 <    BIO_set_close(file, BIO_CLOSE);
6308 <    BIO_free(file);
6309 <  }
6310 < #endif /* HAVE_LIBCRYPTO */
5913 >    SetConfTopicBurst(yy_aconf);
5914   }
5915      break;
5916  
5917 <  case 395:
5917 >  case 371:
5918  
5919 < /* Line 1464 of yacc.c  */
5920 < #line 2529 "ircd_parser.y"
5919 > /* Line 1806 of yacc.c  */
5920 > #line 2272 "ircd_parser.y"
5921      {
5922    if (conf_parser_ctx.pass == 2)
5923    {
# Line 6326 | Line 5929 | yyreduce:
5929   }
5930      break;
5931  
5932 <  case 396:
5932 >  case 372:
5933  
5934 < /* Line 1464 of yacc.c  */
5935 < #line 2540 "ircd_parser.y"
5934 > /* Line 1806 of yacc.c  */
5935 > #line 2283 "ircd_parser.y"
5936      {
5937    if (conf_parser_ctx.pass == 2)
5938    {
# Line 6343 | Line 5946 | yyreduce:
5946   }
5947      break;
5948  
5949 <  case 397:
5949 >  case 373:
5950  
5951 < /* Line 1464 of yacc.c  */
5952 < #line 2553 "ircd_parser.y"
5951 > /* Line 1806 of yacc.c  */
5952 > #line 2296 "ircd_parser.y"
5953      {
5954    if (conf_parser_ctx.pass == 2)
5955    {
# Line 6360 | Line 5963 | yyreduce:
5963   }
5964      break;
5965  
5966 <  case 398:
5966 >  case 374:
5967  
5968 < /* Line 1464 of yacc.c  */
5969 < #line 2566 "ircd_parser.y"
5968 > /* Line 1806 of yacc.c  */
5969 > #line 2309 "ircd_parser.y"
5970      {
5971    if (conf_parser_ctx.pass == 2)
5972    {
# Line 6373 | Line 5976 | yyreduce:
5976   }
5977      break;
5978  
5979 <  case 399:
6377 <
6378 < /* Line 1464 of yacc.c  */
6379 < #line 2575 "ircd_parser.y"
6380 <    {
6381 < #ifdef HAVE_LIBCRYPTO
6382 <  if (conf_parser_ctx.pass == 2)
6383 <  {
6384 <    struct EncCapability *ecap;
6385 <    const char *cipher_name;
6386 <    int found = 0;
6387 <
6388 <    yy_aconf->cipher_preference = NULL;
6389 <    cipher_name = yylval.string;
6390 <
6391 <    for (ecap = CipherTable; ecap->name; ecap++)
6392 <    {
6393 <      if ((irccmp(ecap->name, cipher_name) == 0) &&
6394 <          (ecap->cap & CAP_ENC_MASK))
6395 <      {
6396 <        yy_aconf->cipher_preference = ecap;
6397 <        found = 1;
6398 <        break;
6399 <      }
6400 <    }
6401 <
6402 <    if (!found)
6403 <      yyerror("Invalid cipher");
6404 <  }
6405 < #else
6406 <  if (conf_parser_ctx.pass == 2)
6407 <    yyerror("Ignoring cipher_preference -- no OpenSSL support");
6408 < #endif
6409 < }
6410 <    break;
6411 <
6412 <  case 400:
5979 >  case 375:
5980  
5981 < /* Line 1464 of yacc.c  */
5982 < #line 2610 "ircd_parser.y"
5981 > /* Line 1806 of yacc.c  */
5982 > #line 2321 "ircd_parser.y"
5983      {
5984    if (conf_parser_ctx.pass == 2)
5985    {
# Line 6422 | Line 5989 | yyreduce:
5989   }
5990      break;
5991  
5992 <  case 401:
5992 >  case 376:
5993  
5994 < /* Line 1464 of yacc.c  */
5995 < #line 2617 "ircd_parser.y"
5994 > /* Line 1806 of yacc.c  */
5995 > #line 2328 "ircd_parser.y"
5996      {
5997    if (conf_parser_ctx.pass == 2)
5998    {
# Line 6441 | Line 6008 | yyreduce:
6008          if (!(exp_user = ircd_pcre_compile(userbuf, &errptr)) ||
6009              !(exp_host = ircd_pcre_compile(hostbuf, &errptr)))
6010          {
6011 <          ilog(L_ERROR, "Failed to add regular expression based K-Line: %s",
6011 >          ilog(LOG_TYPE_IRCD, "Failed to add regular expression based K-Line: %s",
6012                 errptr);
6013            break;
6014          }
# Line 6458 | Line 6025 | yyreduce:
6025          else
6026            DupString(yy_aconf->reason, "No reason");
6027   #else
6028 <        ilog(L_ERROR, "Failed to add regular expression based K-Line: no PCRE support");
6028 >        ilog(LOG_TYPE_IRCD, "Failed to add regular expression based K-Line: no PCRE support");
6029          break;
6030   #endif
6031        }
# Line 6482 | Line 6049 | yyreduce:
6049   }
6050      break;
6051  
6052 <  case 402:
6052 >  case 377:
6053  
6054 < /* Line 1464 of yacc.c  */
6055 < #line 2673 "ircd_parser.y"
6054 > /* Line 1806 of yacc.c  */
6055 > #line 2384 "ircd_parser.y"
6056      {
6057   }
6058      break;
6059  
6060 <  case 406:
6060 >  case 381:
6061  
6062 < /* Line 1464 of yacc.c  */
6063 < #line 2678 "ircd_parser.y"
6062 > /* Line 1806 of yacc.c  */
6063 > #line 2389 "ircd_parser.y"
6064      {
6065    if (conf_parser_ctx.pass == 2)
6066      regex_ban = 1;
6067   }
6068      break;
6069  
6070 <  case 413:
6070 >  case 388:
6071  
6072 < /* Line 1464 of yacc.c  */
6073 < #line 2687 "ircd_parser.y"
6072 > /* Line 1806 of yacc.c  */
6073 > #line 2398 "ircd_parser.y"
6074      {
6075    if (conf_parser_ctx.pass == 2)
6076    {
# Line 6523 | Line 6090 | yyreduce:
6090   }
6091      break;
6092  
6093 <  case 414:
6093 >  case 389:
6094  
6095 < /* Line 1464 of yacc.c  */
6096 < #line 2706 "ircd_parser.y"
6095 > /* Line 1806 of yacc.c  */
6096 > #line 2417 "ircd_parser.y"
6097      {
6098    if (conf_parser_ctx.pass == 2)
6099      strlcpy(reasonbuf, yylval.string, sizeof(reasonbuf));
6100   }
6101      break;
6102  
6103 <  case 415:
6103 >  case 390:
6104  
6105 < /* Line 1464 of yacc.c  */
6106 < #line 2715 "ircd_parser.y"
6105 > /* Line 1806 of yacc.c  */
6106 > #line 2426 "ircd_parser.y"
6107      {
6108    if (conf_parser_ctx.pass == 2)
6109      hostbuf[0] = reasonbuf[0] = '\0';
6110   }
6111      break;
6112  
6113 <  case 416:
6113 >  case 391:
6114  
6115 < /* Line 1464 of yacc.c  */
6116 < #line 2719 "ircd_parser.y"
6115 > /* Line 1806 of yacc.c  */
6116 > #line 2430 "ircd_parser.y"
6117      {
6118    if (conf_parser_ctx.pass == 2)
6119    {
# Line 6566 | Line 6133 | yyreduce:
6133   }
6134      break;
6135  
6136 <  case 422:
6136 >  case 397:
6137  
6138 < /* Line 1464 of yacc.c  */
6139 < #line 2741 "ircd_parser.y"
6138 > /* Line 1806 of yacc.c  */
6139 > #line 2452 "ircd_parser.y"
6140      {
6141    if (conf_parser_ctx.pass == 2)
6142      strlcpy(hostbuf, yylval.string, sizeof(hostbuf));
6143   }
6144      break;
6145  
6146 <  case 423:
6146 >  case 398:
6147  
6148 < /* Line 1464 of yacc.c  */
6149 < #line 2747 "ircd_parser.y"
6148 > /* Line 1806 of yacc.c  */
6149 > #line 2458 "ircd_parser.y"
6150      {
6151    if (conf_parser_ctx.pass == 2)
6152      strlcpy(reasonbuf, yylval.string, sizeof(reasonbuf));
6153   }
6154      break;
6155  
6156 <  case 429:
6156 >  case 404:
6157  
6158 < /* Line 1464 of yacc.c  */
6159 < #line 2761 "ircd_parser.y"
6158 > /* Line 1806 of yacc.c  */
6159 > #line 2472 "ircd_parser.y"
6160      {
6161    if (conf_parser_ctx.pass == 2)
6162    {
# Line 6605 | Line 6172 | yyreduce:
6172   }
6173      break;
6174  
6175 <  case 430:
6175 >  case 405:
6176  
6177 < /* Line 1464 of yacc.c  */
6178 < #line 2779 "ircd_parser.y"
6177 > /* Line 1806 of yacc.c  */
6178 > #line 2490 "ircd_parser.y"
6179      {
6180    if (conf_parser_ctx.pass == 2)
6181    {
# Line 6618 | Line 6185 | yyreduce:
6185   }
6186      break;
6187  
6188 <  case 431:
6188 >  case 406:
6189  
6190 < /* Line 1464 of yacc.c  */
6191 < #line 2786 "ircd_parser.y"
6190 > /* Line 1806 of yacc.c  */
6191 > #line 2497 "ircd_parser.y"
6192      {
6193    if (conf_parser_ctx.pass == 2)
6194    {
# Line 6635 | Line 6202 | yyreduce:
6202  
6203          if (!(exp_p = ircd_pcre_compile(gecos_name, &errptr)))
6204          {
6205 <          ilog(L_ERROR, "Failed to add regular expression based X-Line: %s",
6205 >          ilog(LOG_TYPE_IRCD, "Failed to add regular expression based X-Line: %s",
6206                 errptr);
6207            break;
6208          }
# Line 6643 | Line 6210 | yyreduce:
6210          yy_conf = make_conf_item(RXLINE_TYPE);
6211          yy_conf->regexpname = exp_p;
6212   #else
6213 <        ilog(L_ERROR, "Failed to add regular expression based X-Line: no PCRE support");
6213 >        ilog(LOG_TYPE_IRCD, "Failed to add regular expression based X-Line: no PCRE support");
6214          break;
6215   #endif
6216        }
# Line 6662 | Line 6229 | yyreduce:
6229   }
6230      break;
6231  
6232 <  case 432:
6232 >  case 407:
6233  
6234 < /* Line 1464 of yacc.c  */
6235 < #line 2826 "ircd_parser.y"
6234 > /* Line 1806 of yacc.c  */
6235 > #line 2537 "ircd_parser.y"
6236      {
6237   }
6238      break;
6239  
6240 <  case 436:
6240 >  case 411:
6241  
6242 < /* Line 1464 of yacc.c  */
6243 < #line 2831 "ircd_parser.y"
6242 > /* Line 1806 of yacc.c  */
6243 > #line 2542 "ircd_parser.y"
6244      {
6245    if (conf_parser_ctx.pass == 2)
6246      regex_ban = 1;
6247   }
6248      break;
6249  
6250 <  case 443:
6250 >  case 418:
6251  
6252 < /* Line 1464 of yacc.c  */
6253 < #line 2840 "ircd_parser.y"
6252 > /* Line 1806 of yacc.c  */
6253 > #line 2551 "ircd_parser.y"
6254      {
6255    if (conf_parser_ctx.pass == 2)
6256      strlcpy(gecos_name, yylval.string, sizeof(gecos_name));
6257   }
6258      break;
6259  
6260 <  case 444:
6260 >  case 419:
6261  
6262 < /* Line 1464 of yacc.c  */
6263 < #line 2846 "ircd_parser.y"
6262 > /* Line 1806 of yacc.c  */
6263 > #line 2557 "ircd_parser.y"
6264      {
6265    if (conf_parser_ctx.pass == 2)
6266      strlcpy(reasonbuf, yylval.string, sizeof(reasonbuf));
6267   }
6268      break;
6269  
6270 <  case 504:
6270 >  case 475:
6271  
6272 < /* Line 1464 of yacc.c  */
6273 < #line 2891 "ircd_parser.y"
6272 > /* Line 1806 of yacc.c  */
6273 > #line 2601 "ircd_parser.y"
6274      {
6275    ConfigFileEntry.max_watch = (yyvsp[(3) - (4)].number);
6276   }
6277      break;
6278  
6279 <  case 505:
6279 >  case 476:
6280  
6281 < /* Line 1464 of yacc.c  */
6282 < #line 2896 "ircd_parser.y"
6281 > /* Line 1806 of yacc.c  */
6282 > #line 2606 "ircd_parser.y"
6283      {
6284    ConfigFileEntry.gline_min_cidr = (yyvsp[(3) - (4)].number);
6285   }
6286      break;
6287  
6288 <  case 506:
6288 >  case 477:
6289  
6290 < /* Line 1464 of yacc.c  */
6291 < #line 2901 "ircd_parser.y"
6290 > /* Line 1806 of yacc.c  */
6291 > #line 2611 "ircd_parser.y"
6292      {
6293    ConfigFileEntry.gline_min_cidr6 = (yyvsp[(3) - (4)].number);
6294   }
6295      break;
6296  
6297 <  case 507:
6731 <
6732 < /* Line 1464 of yacc.c  */
6733 < #line 2906 "ircd_parser.y"
6734 <    {
6735 <  ConfigFileEntry.burst_away = yylval.number;
6736 < }
6737 <    break;
6738 <
6739 <  case 508:
6297 >  case 478:
6298  
6299 < /* Line 1464 of yacc.c  */
6300 < #line 2911 "ircd_parser.y"
6299 > /* Line 1806 of yacc.c  */
6300 > #line 2616 "ircd_parser.y"
6301      {
6302    ConfigFileEntry.use_whois_actually = yylval.number;
6303   }
6304      break;
6305  
6306 <  case 509:
6306 >  case 479:
6307  
6308 < /* Line 1464 of yacc.c  */
6309 < #line 2916 "ircd_parser.y"
6308 > /* Line 1806 of yacc.c  */
6309 > #line 2621 "ircd_parser.y"
6310      {
6311    GlobalSetOptions.rejecttime = yylval.number;
6312   }
6313      break;
6314  
6315 <  case 510:
6315 >  case 480:
6316  
6317 < /* Line 1464 of yacc.c  */
6318 < #line 2921 "ircd_parser.y"
6317 > /* Line 1806 of yacc.c  */
6318 > #line 2626 "ircd_parser.y"
6319      {
6320    ConfigFileEntry.tkline_expire_notices = yylval.number;
6321   }
6322      break;
6323  
6324 <  case 511:
6324 >  case 481:
6325  
6326 < /* Line 1464 of yacc.c  */
6327 < #line 2926 "ircd_parser.y"
6326 > /* Line 1806 of yacc.c  */
6327 > #line 2631 "ircd_parser.y"
6328      {
6329    ConfigFileEntry.kill_chase_time_limit = (yyvsp[(3) - (4)].number);
6330   }
6331      break;
6332  
6333 <  case 512:
6333 >  case 482:
6334  
6335 < /* Line 1464 of yacc.c  */
6336 < #line 2931 "ircd_parser.y"
6335 > /* Line 1806 of yacc.c  */
6336 > #line 2636 "ircd_parser.y"
6337      {
6338    ConfigFileEntry.hide_spoof_ips = yylval.number;
6339   }
6340      break;
6341  
6342 <  case 513:
6342 >  case 483:
6343  
6344 < /* Line 1464 of yacc.c  */
6345 < #line 2936 "ircd_parser.y"
6344 > /* Line 1806 of yacc.c  */
6345 > #line 2641 "ircd_parser.y"
6346      {
6347    ConfigFileEntry.ignore_bogus_ts = yylval.number;
6348   }
6349      break;
6350  
6351 <  case 514:
6351 >  case 484:
6352  
6353 < /* Line 1464 of yacc.c  */
6354 < #line 2941 "ircd_parser.y"
6353 > /* Line 1806 of yacc.c  */
6354 > #line 2646 "ircd_parser.y"
6355      {
6356    ConfigFileEntry.disable_remote = yylval.number;
6357   }
6358      break;
6359  
6360 <  case 515:
6360 >  case 485:
6361  
6362 < /* Line 1464 of yacc.c  */
6363 < #line 2946 "ircd_parser.y"
6362 > /* Line 1806 of yacc.c  */
6363 > #line 2651 "ircd_parser.y"
6364      {
6365    ConfigFileEntry.failed_oper_notice = yylval.number;
6366   }
6367      break;
6368  
6369 <  case 516:
6369 >  case 486:
6370  
6371 < /* Line 1464 of yacc.c  */
6372 < #line 2951 "ircd_parser.y"
6371 > /* Line 1806 of yacc.c  */
6372 > #line 2656 "ircd_parser.y"
6373      {
6374    ConfigFileEntry.anti_nick_flood = yylval.number;
6375   }
6376      break;
6377  
6378 <  case 517:
6378 >  case 487:
6379  
6380 < /* Line 1464 of yacc.c  */
6381 < #line 2956 "ircd_parser.y"
6380 > /* Line 1806 of yacc.c  */
6381 > #line 2661 "ircd_parser.y"
6382      {
6383    ConfigFileEntry.max_nick_time = (yyvsp[(3) - (4)].number);
6384   }
6385      break;
6386  
6387 <  case 518:
6387 >  case 488:
6388  
6389 < /* Line 1464 of yacc.c  */
6390 < #line 2961 "ircd_parser.y"
6389 > /* Line 1806 of yacc.c  */
6390 > #line 2666 "ircd_parser.y"
6391      {
6392    ConfigFileEntry.max_nick_changes = (yyvsp[(3) - (4)].number);
6393   }
6394      break;
6395  
6396 <  case 519:
6396 >  case 489:
6397  
6398 < /* Line 1464 of yacc.c  */
6399 < #line 2966 "ircd_parser.y"
6398 > /* Line 1806 of yacc.c  */
6399 > #line 2671 "ircd_parser.y"
6400      {
6401    ConfigFileEntry.max_accept = (yyvsp[(3) - (4)].number);
6402   }
6403      break;
6404  
6405 <  case 520:
6405 >  case 490:
6406  
6407 < /* Line 1464 of yacc.c  */
6408 < #line 2971 "ircd_parser.y"
6407 > /* Line 1806 of yacc.c  */
6408 > #line 2676 "ircd_parser.y"
6409      {
6410    ConfigFileEntry.anti_spam_exit_message_time = (yyvsp[(3) - (4)].number);
6411   }
6412      break;
6413  
6414 <  case 521:
6414 >  case 491:
6415  
6416 < /* Line 1464 of yacc.c  */
6417 < #line 2976 "ircd_parser.y"
6416 > /* Line 1806 of yacc.c  */
6417 > #line 2681 "ircd_parser.y"
6418      {
6419    ConfigFileEntry.ts_warn_delta = (yyvsp[(3) - (4)].number);
6420   }
6421      break;
6422  
6423 <  case 522:
6423 >  case 492:
6424  
6425 < /* Line 1464 of yacc.c  */
6426 < #line 2981 "ircd_parser.y"
6425 > /* Line 1806 of yacc.c  */
6426 > #line 2686 "ircd_parser.y"
6427      {
6428    if (conf_parser_ctx.pass == 2)
6429      ConfigFileEntry.ts_max_delta = (yyvsp[(3) - (4)].number);
6430   }
6431      break;
6432  
6433 <  case 523:
6433 >  case 493:
6434  
6435 < /* Line 1464 of yacc.c  */
6436 < #line 2987 "ircd_parser.y"
6435 > /* Line 1806 of yacc.c  */
6436 > #line 2692 "ircd_parser.y"
6437      {
6438    if (((yyvsp[(3) - (4)].number) > 0) && conf_parser_ctx.pass == 1)
6439    {
6440 <    ilog(L_CRIT, "You haven't read your config file properly.");
6441 <    ilog(L_CRIT, "There is a line in the example conf that will kill your server if not removed.");
6442 <    ilog(L_CRIT, "Consider actually reading/editing the conf file, and removing this line.");
6440 >    ilog(LOG_TYPE_IRCD, "You haven't read your config file properly.");
6441 >    ilog(LOG_TYPE_IRCD, "There is a line in the example conf that will kill your server if not removed.");
6442 >    ilog(LOG_TYPE_IRCD, "Consider actually reading/editing the conf file, and removing this line.");
6443      exit(0);
6444    }
6445   }
6446      break;
6447  
6448 <  case 524:
6448 >  case 494:
6449  
6450 < /* Line 1464 of yacc.c  */
6451 < #line 2998 "ircd_parser.y"
6450 > /* Line 1806 of yacc.c  */
6451 > #line 2703 "ircd_parser.y"
6452      {
6453    ConfigFileEntry.kline_with_reason = yylval.number;
6454   }
6455      break;
6456  
6457 <  case 525:
6457 >  case 495:
6458  
6459 < /* Line 1464 of yacc.c  */
6460 < #line 3003 "ircd_parser.y"
6459 > /* Line 1806 of yacc.c  */
6460 > #line 2708 "ircd_parser.y"
6461      {
6462    if (conf_parser_ctx.pass == 2)
6463    {
# Line 6909 | Line 6467 | yyreduce:
6467   }
6468      break;
6469  
6470 <  case 526:
6470 >  case 496:
6471  
6472 < /* Line 1464 of yacc.c  */
6473 < #line 3012 "ircd_parser.y"
6472 > /* Line 1806 of yacc.c  */
6473 > #line 2717 "ircd_parser.y"
6474      {
6475    ConfigFileEntry.invisible_on_connect = yylval.number;
6476   }
6477      break;
6478  
6479 <  case 527:
6479 >  case 497:
6480  
6481 < /* Line 1464 of yacc.c  */
6482 < #line 3017 "ircd_parser.y"
6481 > /* Line 1806 of yacc.c  */
6482 > #line 2722 "ircd_parser.y"
6483      {
6484    ConfigFileEntry.warn_no_nline = yylval.number;
6485   }
6486      break;
6487  
6488 <  case 528:
6488 >  case 498:
6489  
6490 < /* Line 1464 of yacc.c  */
6491 < #line 3022 "ircd_parser.y"
6490 > /* Line 1806 of yacc.c  */
6491 > #line 2727 "ircd_parser.y"
6492      {
6493    ConfigFileEntry.stats_e_disabled = yylval.number;
6494   }
6495      break;
6496  
6497 <  case 529:
6497 >  case 499:
6498  
6499 < /* Line 1464 of yacc.c  */
6500 < #line 3027 "ircd_parser.y"
6499 > /* Line 1806 of yacc.c  */
6500 > #line 2732 "ircd_parser.y"
6501      {
6502    ConfigFileEntry.stats_o_oper_only = yylval.number;
6503   }
6504      break;
6505  
6506 <  case 530:
6506 >  case 500:
6507  
6508 < /* Line 1464 of yacc.c  */
6509 < #line 3032 "ircd_parser.y"
6508 > /* Line 1806 of yacc.c  */
6509 > #line 2737 "ircd_parser.y"
6510      {
6511    ConfigFileEntry.stats_P_oper_only = yylval.number;
6512   }
6513      break;
6514  
6515 <  case 531:
6515 >  case 501:
6516  
6517 < /* Line 1464 of yacc.c  */
6518 < #line 3037 "ircd_parser.y"
6517 > /* Line 1806 of yacc.c  */
6518 > #line 2742 "ircd_parser.y"
6519      {
6520    ConfigFileEntry.stats_k_oper_only = 2 * yylval.number;
6521   }
6522      break;
6523  
6524 <  case 532:
6524 >  case 502:
6525  
6526 < /* Line 1464 of yacc.c  */
6527 < #line 3040 "ircd_parser.y"
6526 > /* Line 1806 of yacc.c  */
6527 > #line 2745 "ircd_parser.y"
6528      {
6529    ConfigFileEntry.stats_k_oper_only = 1;
6530   }
6531      break;
6532  
6533 <  case 533:
6533 >  case 503:
6534  
6535 < /* Line 1464 of yacc.c  */
6536 < #line 3045 "ircd_parser.y"
6535 > /* Line 1806 of yacc.c  */
6536 > #line 2750 "ircd_parser.y"
6537      {
6538    ConfigFileEntry.stats_i_oper_only = 2 * yylval.number;
6539   }
6540      break;
6541  
6542 <  case 534:
6542 >  case 504:
6543  
6544 < /* Line 1464 of yacc.c  */
6545 < #line 3048 "ircd_parser.y"
6544 > /* Line 1806 of yacc.c  */
6545 > #line 2753 "ircd_parser.y"
6546      {
6547    ConfigFileEntry.stats_i_oper_only = 1;
6548   }
6549      break;
6550  
6551 <  case 535:
6551 >  case 505:
6552  
6553 < /* Line 1464 of yacc.c  */
6554 < #line 3053 "ircd_parser.y"
6553 > /* Line 1806 of yacc.c  */
6554 > #line 2758 "ircd_parser.y"
6555      {
6556    ConfigFileEntry.pace_wait = (yyvsp[(3) - (4)].number);
6557   }
6558      break;
6559  
6560 <  case 536:
6560 >  case 506:
6561  
6562 < /* Line 1464 of yacc.c  */
6563 < #line 3058 "ircd_parser.y"
6562 > /* Line 1806 of yacc.c  */
6563 > #line 2763 "ircd_parser.y"
6564      {
6565    ConfigFileEntry.caller_id_wait = (yyvsp[(3) - (4)].number);
6566   }
6567      break;
6568  
6569 <  case 537:
6569 >  case 507:
6570  
6571 < /* Line 1464 of yacc.c  */
6572 < #line 3063 "ircd_parser.y"
6571 > /* Line 1806 of yacc.c  */
6572 > #line 2768 "ircd_parser.y"
6573      {
6574    ConfigFileEntry.opers_bypass_callerid = yylval.number;
6575   }
6576      break;
6577  
6578 <  case 538:
6578 >  case 508:
6579  
6580 < /* Line 1464 of yacc.c  */
6581 < #line 3068 "ircd_parser.y"
6580 > /* Line 1806 of yacc.c  */
6581 > #line 2773 "ircd_parser.y"
6582      {
6583    ConfigFileEntry.pace_wait_simple = (yyvsp[(3) - (4)].number);
6584   }
6585      break;
6586  
6587 <  case 539:
6587 >  case 509:
6588  
6589 < /* Line 1464 of yacc.c  */
6590 < #line 3073 "ircd_parser.y"
6589 > /* Line 1806 of yacc.c  */
6590 > #line 2778 "ircd_parser.y"
6591      {
6592    ConfigFileEntry.short_motd = yylval.number;
6593   }
6594      break;
6595  
6596 <  case 540:
6596 >  case 510:
6597  
6598 < /* Line 1464 of yacc.c  */
6599 < #line 3078 "ircd_parser.y"
6598 > /* Line 1806 of yacc.c  */
6599 > #line 2783 "ircd_parser.y"
6600      {
6601    ConfigFileEntry.no_oper_flood = yylval.number;
6602   }
6603      break;
6604  
6605 <  case 541:
6605 >  case 511:
6606  
6607 < /* Line 1464 of yacc.c  */
6608 < #line 3083 "ircd_parser.y"
6607 > /* Line 1806 of yacc.c  */
6608 > #line 2788 "ircd_parser.y"
6609      {
6610    ConfigFileEntry.true_no_oper_flood = yylval.number;
6611   }
6612      break;
6613  
6614 <  case 542:
6614 >  case 512:
6615  
6616 < /* Line 1464 of yacc.c  */
6617 < #line 3088 "ircd_parser.y"
6616 > /* Line 1806 of yacc.c  */
6617 > #line 2793 "ircd_parser.y"
6618      {
6619    ConfigFileEntry.oper_pass_resv = yylval.number;
6620   }
6621      break;
6622  
6623 <  case 543:
6623 >  case 513:
6624  
6625 < /* Line 1464 of yacc.c  */
6626 < #line 3093 "ircd_parser.y"
6625 > /* Line 1806 of yacc.c  */
6626 > #line 2798 "ircd_parser.y"
6627      {
6628    if (conf_parser_ctx.pass == 2)
6629    {
# Line 7077 | Line 6635 | yyreduce:
6635   }
6636      break;
6637  
6638 <  case 544:
7081 <
7082 < /* Line 1464 of yacc.c  */
7083 < #line 3104 "ircd_parser.y"
7084 <    {
7085 <  ConfigFileEntry.idletime = (yyvsp[(3) - (4)].number);
7086 < }
7087 <    break;
7088 <
7089 <  case 545:
6638 >  case 514:
6639  
6640 < /* Line 1464 of yacc.c  */
6641 < #line 3109 "ircd_parser.y"
6640 > /* Line 1806 of yacc.c  */
6641 > #line 2809 "ircd_parser.y"
6642      {
6643    ConfigFileEntry.dots_in_ident = (yyvsp[(3) - (4)].number);
6644   }
6645      break;
6646  
6647 <  case 546:
6647 >  case 515:
6648  
6649 < /* Line 1464 of yacc.c  */
6650 < #line 3114 "ircd_parser.y"
6649 > /* Line 1806 of yacc.c  */
6650 > #line 2814 "ircd_parser.y"
6651      {
6652    ConfigFileEntry.max_targets = (yyvsp[(3) - (4)].number);
6653   }
6654      break;
6655  
6656 <  case 547:
7108 <
7109 < /* Line 1464 of yacc.c  */
7110 < #line 3119 "ircd_parser.y"
7111 <    {
7112 <  if (conf_parser_ctx.pass == 2)
7113 <  {
7114 <    MyFree(ConfigFileEntry.servlink_path);
7115 <    DupString(ConfigFileEntry.servlink_path, yylval.string);
7116 <  }
7117 < }
7118 <    break;
7119 <
7120 <  case 548:
7121 <
7122 < /* Line 1464 of yacc.c  */
7123 < #line 3128 "ircd_parser.y"
7124 <    {
7125 < #ifdef HAVE_LIBCRYPTO
7126 <  if (conf_parser_ctx.pass == 2)
7127 <  {
7128 <    struct EncCapability *ecap;
7129 <    const char *cipher_name;
7130 <    int found = 0;
7131 <
7132 <    ConfigFileEntry.default_cipher_preference = NULL;
7133 <    cipher_name = yylval.string;
6656 >  case 516:
6657  
6658 <    for (ecap = CipherTable; ecap->name; ecap++)
6658 > /* Line 1806 of yacc.c  */
6659 > #line 2819 "ircd_parser.y"
6660      {
6661 <      if ((irccmp(ecap->name, cipher_name) == 0) &&
7138 <          (ecap->cap & CAP_ENC_MASK))
7139 <      {
7140 <        ConfigFileEntry.default_cipher_preference = ecap;
7141 <        found = 1;
7142 <        break;
7143 <      }
7144 <    }
7145 <
7146 <    if (!found)
7147 <      yyerror("Invalid cipher");
7148 <  }
7149 < #else
7150 <  if (conf_parser_ctx.pass == 2)
7151 <    yyerror("Ignoring default_cipher_preference -- no OpenSSL support");
7152 < #endif
6661 >  ConfigFileEntry.use_egd = yylval.number;
6662   }
6663      break;
6664  
6665 <  case 549:
6665 >  case 517:
6666  
6667 < /* Line 1464 of yacc.c  */
6668 < #line 3160 "ircd_parser.y"
6667 > /* Line 1806 of yacc.c  */
6668 > #line 2824 "ircd_parser.y"
6669      {
6670    if (conf_parser_ctx.pass == 2)
6671    {
6672 <    ConfigFileEntry.compression_level = (yyvsp[(3) - (4)].number);
6673 < #ifndef HAVE_LIBZ
7165 <    yyerror("Ignoring compression_level -- no zlib support");
7166 < #else
7167 <    if ((ConfigFileEntry.compression_level < 1) ||
7168 <        (ConfigFileEntry.compression_level > 9))
7169 <    {
7170 <      yyerror("Ignoring invalid compression_level, using default");
7171 <      ConfigFileEntry.compression_level = 0;
7172 <    }
7173 < #endif
6672 >    MyFree(ConfigFileEntry.egdpool_path);
6673 >    DupString(ConfigFileEntry.egdpool_path, yylval.string);
6674    }
6675   }
6676      break;
6677  
6678 <  case 550:
7179 <
7180 < /* Line 1464 of yacc.c  */
7181 < #line 3178 "ircd_parser.y"
7182 <    {
7183 <  ConfigFileEntry.use_egd = yylval.number;
7184 < }
7185 <    break;
7186 <
7187 <  case 551:
6678 >  case 518:
6679  
6680 < /* Line 1464 of yacc.c  */
6681 < #line 3183 "ircd_parser.y"
6680 > /* Line 1806 of yacc.c  */
6681 > #line 2833 "ircd_parser.y"
6682      {
6683 <  if (conf_parser_ctx.pass == 2)
6683 >  if (conf_parser_ctx.pass == 2 && valid_servname(yylval.string))
6684    {
6685 <    MyFree(ConfigFileEntry.egdpool_path);
6686 <    DupString(ConfigFileEntry.egdpool_path, yylval.string);
6685 >    MyFree(ConfigFileEntry.service_name);
6686 >    DupString(ConfigFileEntry.service_name, yylval.string);
6687    }
6688   }
6689      break;
6690  
6691 <  case 552:
6691 >  case 519:
6692  
6693 < /* Line 1464 of yacc.c  */
6694 < #line 3192 "ircd_parser.y"
6693 > /* Line 1806 of yacc.c  */
6694 > #line 2842 "ircd_parser.y"
6695      {
6696    ConfigFileEntry.ping_cookie = yylval.number;
6697   }
6698      break;
6699  
6700 <  case 553:
6700 >  case 520:
6701  
6702 < /* Line 1464 of yacc.c  */
6703 < #line 3197 "ircd_parser.y"
6702 > /* Line 1806 of yacc.c  */
6703 > #line 2847 "ircd_parser.y"
6704      {
6705    ConfigFileEntry.disable_auth = yylval.number;
6706   }
6707      break;
6708  
6709 <  case 554:
6709 >  case 521:
6710  
6711 < /* Line 1464 of yacc.c  */
6712 < #line 3202 "ircd_parser.y"
6711 > /* Line 1806 of yacc.c  */
6712 > #line 2852 "ircd_parser.y"
6713      {
6714    ConfigFileEntry.throttle_time = yylval.number;
6715   }
6716      break;
6717  
6718 <  case 555:
6718 >  case 522:
6719  
6720 < /* Line 1464 of yacc.c  */
6721 < #line 3207 "ircd_parser.y"
6720 > /* Line 1806 of yacc.c  */
6721 > #line 2857 "ircd_parser.y"
6722      {
6723    ConfigFileEntry.oper_umodes = 0;
6724   }
6725      break;
6726  
6727 <  case 559:
6727 >  case 526:
6728  
6729 < /* Line 1464 of yacc.c  */
6730 < #line 3213 "ircd_parser.y"
6729 > /* Line 1806 of yacc.c  */
6730 > #line 2863 "ircd_parser.y"
6731      {
6732    ConfigFileEntry.oper_umodes |= UMODE_BOTS;
6733   }
6734      break;
6735  
6736 <  case 560:
6736 >  case 527:
6737  
6738 < /* Line 1464 of yacc.c  */
6739 < #line 3216 "ircd_parser.y"
6738 > /* Line 1806 of yacc.c  */
6739 > #line 2866 "ircd_parser.y"
6740      {
6741    ConfigFileEntry.oper_umodes |= UMODE_CCONN;
6742   }
6743      break;
6744  
6745 <  case 561:
6745 >  case 528:
6746  
6747 < /* Line 1464 of yacc.c  */
6748 < #line 3219 "ircd_parser.y"
6747 > /* Line 1806 of yacc.c  */
6748 > #line 2869 "ircd_parser.y"
6749      {
6750    ConfigFileEntry.oper_umodes |= UMODE_CCONN_FULL;
6751   }
6752      break;
6753  
6754 <  case 562:
6754 >  case 529:
6755  
6756 < /* Line 1464 of yacc.c  */
6757 < #line 3222 "ircd_parser.y"
6756 > /* Line 1806 of yacc.c  */
6757 > #line 2872 "ircd_parser.y"
6758      {
6759    ConfigFileEntry.oper_umodes |= UMODE_DEAF;
6760   }
6761      break;
6762  
6763 <  case 563:
6763 >  case 530:
6764  
6765 < /* Line 1464 of yacc.c  */
6766 < #line 3225 "ircd_parser.y"
6765 > /* Line 1806 of yacc.c  */
6766 > #line 2875 "ircd_parser.y"
6767      {
6768    ConfigFileEntry.oper_umodes |= UMODE_DEBUG;
6769   }
6770      break;
6771  
6772 <  case 564:
6772 >  case 531:
6773  
6774 < /* Line 1464 of yacc.c  */
6775 < #line 3228 "ircd_parser.y"
6774 > /* Line 1806 of yacc.c  */
6775 > #line 2878 "ircd_parser.y"
6776      {
6777    ConfigFileEntry.oper_umodes |= UMODE_FULL;
6778   }
6779      break;
6780  
6781 <  case 565:
6781 >  case 532:
6782 >
6783 > /* Line 1806 of yacc.c  */
6784 > #line 2881 "ircd_parser.y"
6785 >    {
6786 >  ConfigFileEntry.oper_umodes |= UMODE_HIDDEN;
6787 > }
6788 >    break;
6789 >
6790 >  case 533:
6791  
6792 < /* Line 1464 of yacc.c  */
6793 < #line 3231 "ircd_parser.y"
6792 > /* Line 1806 of yacc.c  */
6793 > #line 2884 "ircd_parser.y"
6794      {
6795    ConfigFileEntry.oper_umodes |= UMODE_SKILL;
6796   }
6797      break;
6798  
6799 <  case 566:
6799 >  case 534:
6800  
6801 < /* Line 1464 of yacc.c  */
6802 < #line 3234 "ircd_parser.y"
6801 > /* Line 1806 of yacc.c  */
6802 > #line 2887 "ircd_parser.y"
6803      {
6804    ConfigFileEntry.oper_umodes |= UMODE_NCHANGE;
6805   }
6806      break;
6807  
6808 <  case 567:
6808 >  case 535:
6809  
6810 < /* Line 1464 of yacc.c  */
6811 < #line 3237 "ircd_parser.y"
6810 > /* Line 1806 of yacc.c  */
6811 > #line 2890 "ircd_parser.y"
6812      {
6813    ConfigFileEntry.oper_umodes |= UMODE_REJ;
6814   }
6815      break;
6816  
6817 <  case 568:
6817 >  case 536:
6818  
6819 < /* Line 1464 of yacc.c  */
6820 < #line 3240 "ircd_parser.y"
6819 > /* Line 1806 of yacc.c  */
6820 > #line 2893 "ircd_parser.y"
6821      {
6822    ConfigFileEntry.oper_umodes |= UMODE_UNAUTH;
6823   }
6824      break;
6825  
6826 <  case 569:
6826 >  case 537:
6827  
6828 < /* Line 1464 of yacc.c  */
6829 < #line 3243 "ircd_parser.y"
6828 > /* Line 1806 of yacc.c  */
6829 > #line 2896 "ircd_parser.y"
6830      {
6831    ConfigFileEntry.oper_umodes |= UMODE_SPY;
6832   }
6833      break;
6834  
6835 <  case 570:
6835 >  case 538:
6836  
6837 < /* Line 1464 of yacc.c  */
6838 < #line 3246 "ircd_parser.y"
6837 > /* Line 1806 of yacc.c  */
6838 > #line 2899 "ircd_parser.y"
6839      {
6840    ConfigFileEntry.oper_umodes |= UMODE_EXTERNAL;
6841   }
6842      break;
6843  
6844 <  case 571:
6844 >  case 539:
6845  
6846 < /* Line 1464 of yacc.c  */
6847 < #line 3249 "ircd_parser.y"
6846 > /* Line 1806 of yacc.c  */
6847 > #line 2902 "ircd_parser.y"
6848      {
6849    ConfigFileEntry.oper_umodes |= UMODE_OPERWALL;
6850   }
6851      break;
6852  
6853 <  case 572:
6853 >  case 540:
6854  
6855 < /* Line 1464 of yacc.c  */
6856 < #line 3252 "ircd_parser.y"
6855 > /* Line 1806 of yacc.c  */
6856 > #line 2905 "ircd_parser.y"
6857      {
6858    ConfigFileEntry.oper_umodes |= UMODE_SERVNOTICE;
6859   }
6860      break;
6861  
6862 <  case 573:
6862 >  case 541:
6863  
6864 < /* Line 1464 of yacc.c  */
6865 < #line 3255 "ircd_parser.y"
6864 > /* Line 1806 of yacc.c  */
6865 > #line 2908 "ircd_parser.y"
6866      {
6867    ConfigFileEntry.oper_umodes |= UMODE_INVISIBLE;
6868   }
6869      break;
6870  
6871 <  case 574:
6871 >  case 542:
6872  
6873 < /* Line 1464 of yacc.c  */
6874 < #line 3258 "ircd_parser.y"
6873 > /* Line 1806 of yacc.c  */
6874 > #line 2911 "ircd_parser.y"
6875      {
6876    ConfigFileEntry.oper_umodes |= UMODE_WALLOP;
6877   }
6878      break;
6879  
6880 <  case 575:
6880 >  case 543:
6881  
6882 < /* Line 1464 of yacc.c  */
6883 < #line 3261 "ircd_parser.y"
6882 > /* Line 1806 of yacc.c  */
6883 > #line 2914 "ircd_parser.y"
6884      {
6885    ConfigFileEntry.oper_umodes |= UMODE_SOFTCALLERID;
6886   }
6887      break;
6888  
6889 <  case 576:
6889 >  case 544:
6890  
6891 < /* Line 1464 of yacc.c  */
6892 < #line 3264 "ircd_parser.y"
6891 > /* Line 1806 of yacc.c  */
6892 > #line 2917 "ircd_parser.y"
6893      {
6894    ConfigFileEntry.oper_umodes |= UMODE_CALLERID;
6895   }
6896      break;
6897  
6898 <  case 577:
6898 >  case 545:
6899  
6900 < /* Line 1464 of yacc.c  */
6901 < #line 3267 "ircd_parser.y"
6900 > /* Line 1806 of yacc.c  */
6901 > #line 2920 "ircd_parser.y"
6902      {
6903    ConfigFileEntry.oper_umodes |= UMODE_LOCOPS;
6904   }
6905      break;
6906  
6907 <  case 578:
6907 >  case 546:
6908  
6909 < /* Line 1464 of yacc.c  */
6910 < #line 3272 "ircd_parser.y"
6909 > /* Line 1806 of yacc.c  */
6910 > #line 2925 "ircd_parser.y"
6911      {
6912    ConfigFileEntry.oper_only_umodes = 0;
6913   }
6914      break;
6915  
6916 <  case 582:
6916 >  case 550:
6917  
6918 < /* Line 1464 of yacc.c  */
6919 < #line 3278 "ircd_parser.y"
6918 > /* Line 1806 of yacc.c  */
6919 > #line 2931 "ircd_parser.y"
6920      {
6921    ConfigFileEntry.oper_only_umodes |= UMODE_BOTS;
6922   }
6923      break;
6924  
6925 <  case 583:
6925 >  case 551:
6926  
6927 < /* Line 1464 of yacc.c  */
6928 < #line 3281 "ircd_parser.y"
6927 > /* Line 1806 of yacc.c  */
6928 > #line 2934 "ircd_parser.y"
6929      {
6930    ConfigFileEntry.oper_only_umodes |= UMODE_CCONN;
6931   }
6932      break;
6933  
6934 <  case 584:
6934 >  case 552:
6935  
6936 < /* Line 1464 of yacc.c  */
6937 < #line 3284 "ircd_parser.y"
6936 > /* Line 1806 of yacc.c  */
6937 > #line 2937 "ircd_parser.y"
6938      {
6939    ConfigFileEntry.oper_only_umodes |= UMODE_CCONN_FULL;
6940   }
6941      break;
6942  
6943 <  case 585:
6943 >  case 553:
6944  
6945 < /* Line 1464 of yacc.c  */
6946 < #line 3287 "ircd_parser.y"
6945 > /* Line 1806 of yacc.c  */
6946 > #line 2940 "ircd_parser.y"
6947      {
6948    ConfigFileEntry.oper_only_umodes |= UMODE_DEAF;
6949   }
6950      break;
6951  
6952 <  case 586:
6952 >  case 554:
6953  
6954 < /* Line 1464 of yacc.c  */
6955 < #line 3290 "ircd_parser.y"
6954 > /* Line 1806 of yacc.c  */
6955 > #line 2943 "ircd_parser.y"
6956      {
6957    ConfigFileEntry.oper_only_umodes |= UMODE_DEBUG;
6958   }
6959      break;
6960  
6961 <  case 587:
6961 >  case 555:
6962  
6963 < /* Line 1464 of yacc.c  */
6964 < #line 3293 "ircd_parser.y"
6963 > /* Line 1806 of yacc.c  */
6964 > #line 2946 "ircd_parser.y"
6965      {
6966    ConfigFileEntry.oper_only_umodes |= UMODE_FULL;
6967   }
6968      break;
6969  
6970 <  case 588:
6970 >  case 556:
6971  
6972 < /* Line 1464 of yacc.c  */
6973 < #line 3296 "ircd_parser.y"
6972 > /* Line 1806 of yacc.c  */
6973 > #line 2949 "ircd_parser.y"
6974      {
6975    ConfigFileEntry.oper_only_umodes |= UMODE_SKILL;
6976   }
6977      break;
6978  
6979 <  case 589:
6979 >  case 557:
6980 >
6981 > /* Line 1806 of yacc.c  */
6982 > #line 2952 "ircd_parser.y"
6983 >    {
6984 >  ConfigFileEntry.oper_only_umodes |= UMODE_HIDDEN;
6985 > }
6986 >    break;
6987 >
6988 >  case 558:
6989  
6990 < /* Line 1464 of yacc.c  */
6991 < #line 3299 "ircd_parser.y"
6990 > /* Line 1806 of yacc.c  */
6991 > #line 2955 "ircd_parser.y"
6992      {
6993    ConfigFileEntry.oper_only_umodes |= UMODE_NCHANGE;
6994   }
6995      break;
6996  
6997 <  case 590:
6997 >  case 559:
6998  
6999 < /* Line 1464 of yacc.c  */
7000 < #line 3302 "ircd_parser.y"
6999 > /* Line 1806 of yacc.c  */
7000 > #line 2958 "ircd_parser.y"
7001      {
7002    ConfigFileEntry.oper_only_umodes |= UMODE_REJ;
7003   }
7004      break;
7005  
7006 <  case 591:
7006 >  case 560:
7007  
7008 < /* Line 1464 of yacc.c  */
7009 < #line 3305 "ircd_parser.y"
7008 > /* Line 1806 of yacc.c  */
7009 > #line 2961 "ircd_parser.y"
7010      {
7011    ConfigFileEntry.oper_only_umodes |= UMODE_UNAUTH;
7012   }
7013      break;
7014  
7015 <  case 592:
7015 >  case 561:
7016  
7017 < /* Line 1464 of yacc.c  */
7018 < #line 3308 "ircd_parser.y"
7017 > /* Line 1806 of yacc.c  */
7018 > #line 2964 "ircd_parser.y"
7019      {
7020    ConfigFileEntry.oper_only_umodes |= UMODE_SPY;
7021   }
7022      break;
7023  
7024 <  case 593:
7024 >  case 562:
7025  
7026 < /* Line 1464 of yacc.c  */
7027 < #line 3311 "ircd_parser.y"
7026 > /* Line 1806 of yacc.c  */
7027 > #line 2967 "ircd_parser.y"
7028      {
7029    ConfigFileEntry.oper_only_umodes |= UMODE_EXTERNAL;
7030   }
7031      break;
7032  
7033 <  case 594:
7033 >  case 563:
7034  
7035 < /* Line 1464 of yacc.c  */
7036 < #line 3314 "ircd_parser.y"
7035 > /* Line 1806 of yacc.c  */
7036 > #line 2970 "ircd_parser.y"
7037      {
7038    ConfigFileEntry.oper_only_umodes |= UMODE_OPERWALL;
7039   }
7040      break;
7041  
7042 <  case 595:
7042 >  case 564:
7043  
7044 < /* Line 1464 of yacc.c  */
7045 < #line 3317 "ircd_parser.y"
7044 > /* Line 1806 of yacc.c  */
7045 > #line 2973 "ircd_parser.y"
7046      {
7047    ConfigFileEntry.oper_only_umodes |= UMODE_SERVNOTICE;
7048   }
7049      break;
7050  
7051 <  case 596:
7051 >  case 565:
7052  
7053 < /* Line 1464 of yacc.c  */
7054 < #line 3320 "ircd_parser.y"
7053 > /* Line 1806 of yacc.c  */
7054 > #line 2976 "ircd_parser.y"
7055      {
7056    ConfigFileEntry.oper_only_umodes |= UMODE_INVISIBLE;
7057   }
7058      break;
7059  
7060 <  case 597:
7060 >  case 566:
7061  
7062 < /* Line 1464 of yacc.c  */
7063 < #line 3323 "ircd_parser.y"
7062 > /* Line 1806 of yacc.c  */
7063 > #line 2979 "ircd_parser.y"
7064      {
7065    ConfigFileEntry.oper_only_umodes |= UMODE_WALLOP;
7066   }
7067      break;
7068  
7069 <  case 598:
7069 >  case 567:
7070  
7071 < /* Line 1464 of yacc.c  */
7072 < #line 3326 "ircd_parser.y"
7071 > /* Line 1806 of yacc.c  */
7072 > #line 2982 "ircd_parser.y"
7073      {
7074    ConfigFileEntry.oper_only_umodes |= UMODE_SOFTCALLERID;
7075   }
7076      break;
7077  
7078 <  case 599:
7078 >  case 568:
7079  
7080 < /* Line 1464 of yacc.c  */
7081 < #line 3329 "ircd_parser.y"
7080 > /* Line 1806 of yacc.c  */
7081 > #line 2985 "ircd_parser.y"
7082      {
7083    ConfigFileEntry.oper_only_umodes |= UMODE_CALLERID;
7084   }
7085      break;
7086  
7087 <  case 600:
7087 >  case 569:
7088  
7089 < /* Line 1464 of yacc.c  */
7090 < #line 3332 "ircd_parser.y"
7089 > /* Line 1806 of yacc.c  */
7090 > #line 2988 "ircd_parser.y"
7091      {
7092    ConfigFileEntry.oper_only_umodes |= UMODE_LOCOPS;
7093   }
7094      break;
7095  
7096 <  case 601:
7096 >  case 570:
7097  
7098 < /* Line 1464 of yacc.c  */
7099 < #line 3337 "ircd_parser.y"
7098 > /* Line 1806 of yacc.c  */
7099 > #line 2993 "ircd_parser.y"
7100      {
7101    ConfigFileEntry.min_nonwildcard = (yyvsp[(3) - (4)].number);
7102   }
7103      break;
7104  
7105 <  case 602:
7105 >  case 571:
7106  
7107 < /* Line 1464 of yacc.c  */
7108 < #line 3342 "ircd_parser.y"
7107 > /* Line 1806 of yacc.c  */
7108 > #line 2998 "ircd_parser.y"
7109      {
7110    ConfigFileEntry.min_nonwildcard_simple = (yyvsp[(3) - (4)].number);
7111   }
7112      break;
7113  
7114 <  case 603:
7114 >  case 572:
7115  
7116 < /* Line 1464 of yacc.c  */
7117 < #line 3347 "ircd_parser.y"
7116 > /* Line 1806 of yacc.c  */
7117 > #line 3003 "ircd_parser.y"
7118      {
7119    ConfigFileEntry.default_floodcount = (yyvsp[(3) - (4)].number);
7120   }
7121      break;
7122  
7123 <  case 604:
7123 >  case 573:
7124  
7125 < /* Line 1464 of yacc.c  */
7126 < #line 3352 "ircd_parser.y"
7125 > /* Line 1806 of yacc.c  */
7126 > #line 3008 "ircd_parser.y"
7127      {
7128    ConfigFileEntry.client_flood = (yyvsp[(3) - (4)].number);
7129   }
7130      break;
7131  
7132 <  case 605:
7132 >  case 574:
7133  
7134 < /* Line 1464 of yacc.c  */
7135 < #line 3361 "ircd_parser.y"
7134 > /* Line 1806 of yacc.c  */
7135 > #line 3017 "ircd_parser.y"
7136      {
7137    if (conf_parser_ctx.pass == 2)
7138    {
# Line 7633 | Line 7142 | yyreduce:
7142   }
7143      break;
7144  
7145 <  case 606:
7145 >  case 575:
7146  
7147 < /* Line 1464 of yacc.c  */
7148 < #line 3368 "ircd_parser.y"
7147 > /* Line 1806 of yacc.c  */
7148 > #line 3024 "ircd_parser.y"
7149      {
7150    if (conf_parser_ctx.pass == 2)
7151    {
# Line 7654 | Line 7163 | yyreduce:
7163   }
7164      break;
7165  
7166 <  case 616:
7166 >  case 585:
7167  
7168 < /* Line 1464 of yacc.c  */
7169 < #line 3394 "ircd_parser.y"
7168 > /* Line 1806 of yacc.c  */
7169 > #line 3050 "ircd_parser.y"
7170      {
7171    if (conf_parser_ctx.pass == 2)
7172      ConfigFileEntry.glines = yylval.number;
7173   }
7174      break;
7175  
7176 <  case 617:
7176 >  case 586:
7177  
7178 < /* Line 1464 of yacc.c  */
7179 < #line 3400 "ircd_parser.y"
7178 > /* Line 1806 of yacc.c  */
7179 > #line 3056 "ircd_parser.y"
7180      {
7181    if (conf_parser_ctx.pass == 2)
7182      ConfigFileEntry.gline_time = (yyvsp[(3) - (4)].number);
7183   }
7184      break;
7185  
7186 <  case 618:
7186 >  case 587:
7187  
7188 < /* Line 1464 of yacc.c  */
7189 < #line 3406 "ircd_parser.y"
7188 > /* Line 1806 of yacc.c  */
7189 > #line 3062 "ircd_parser.y"
7190      {
7191    if (conf_parser_ctx.pass == 2)
7192      ConfigFileEntry.gline_logging = 0;
7193   }
7194      break;
7195  
7196 <  case 622:
7196 >  case 591:
7197  
7198 < /* Line 1464 of yacc.c  */
7199 < #line 3412 "ircd_parser.y"
7198 > /* Line 1806 of yacc.c  */
7199 > #line 3068 "ircd_parser.y"
7200      {
7201    if (conf_parser_ctx.pass == 2)
7202      ConfigFileEntry.gline_logging |= GDENY_REJECT;
7203   }
7204      break;
7205  
7206 <  case 623:
7206 >  case 592:
7207  
7208 < /* Line 1464 of yacc.c  */
7209 < #line 3416 "ircd_parser.y"
7208 > /* Line 1806 of yacc.c  */
7209 > #line 3072 "ircd_parser.y"
7210      {
7211    if (conf_parser_ctx.pass == 2)
7212      ConfigFileEntry.gline_logging |= GDENY_BLOCK;
7213   }
7214      break;
7215  
7216 <  case 624:
7216 >  case 593:
7217  
7218 < /* Line 1464 of yacc.c  */
7219 < #line 3422 "ircd_parser.y"
7218 > /* Line 1806 of yacc.c  */
7219 > #line 3078 "ircd_parser.y"
7220      {
7221    if (conf_parser_ctx.pass == 2)
7222    {
# Line 7742 | Line 7251 | yyreduce:
7251   }
7252      break;
7253  
7254 <  case 625:
7254 >  case 594:
7255  
7256 < /* Line 1464 of yacc.c  */
7257 < #line 3456 "ircd_parser.y"
7256 > /* Line 1806 of yacc.c  */
7257 > #line 3112 "ircd_parser.y"
7258      {
7259    if (conf_parser_ctx.pass == 2)  
7260    {
# Line 7755 | Line 7264 | yyreduce:
7264   }
7265      break;
7266  
7267 <  case 626:
7267 >  case 595:
7268  
7269 < /* Line 1464 of yacc.c  */
7270 < #line 3465 "ircd_parser.y"
7269 > /* Line 1806 of yacc.c  */
7270 > #line 3121 "ircd_parser.y"
7271      {
7272    if (conf_parser_ctx.pass == 2)
7273      yy_aconf->flags = 0;
7274   }
7275      break;
7276  
7277 <  case 627:
7277 >  case 596:
7278  
7279 < /* Line 1464 of yacc.c  */
7280 < #line 3469 "ircd_parser.y"
7279 > /* Line 1806 of yacc.c  */
7280 > #line 3125 "ircd_parser.y"
7281      {
7282    if (conf_parser_ctx.pass == 2)
7283    {
# Line 7815 | Line 7324 | yyreduce:
7324   }
7325      break;
7326  
7327 <  case 630:
7327 >  case 599:
7328  
7329 < /* Line 1464 of yacc.c  */
7330 < #line 3516 "ircd_parser.y"
7329 > /* Line 1806 of yacc.c  */
7330 > #line 3172 "ircd_parser.y"
7331      {
7332    if (conf_parser_ctx.pass == 2)
7333      yy_aconf->flags |= GDENY_REJECT;
7334   }
7335      break;
7336  
7337 <  case 631:
7337 >  case 600:
7338  
7339 < /* Line 1464 of yacc.c  */
7340 < #line 3520 "ircd_parser.y"
7339 > /* Line 1806 of yacc.c  */
7340 > #line 3176 "ircd_parser.y"
7341      {
7342    if (conf_parser_ctx.pass == 2)
7343      yy_aconf->flags |= GDENY_BLOCK;
7344   }
7345      break;
7346  
7347 <  case 654:
7347 >  case 623:
7348  
7349 < /* Line 1464 of yacc.c  */
7350 < #line 3544 "ircd_parser.y"
7349 > /* Line 1806 of yacc.c  */
7350 > #line 3200 "ircd_parser.y"
7351      {
7352    ConfigChannel.disable_fake_channels = yylval.number;
7353   }
7354      break;
7355  
7356 <  case 655:
7356 >  case 624:
7357  
7358 < /* Line 1464 of yacc.c  */
7359 < #line 3549 "ircd_parser.y"
7358 > /* Line 1806 of yacc.c  */
7359 > #line 3205 "ircd_parser.y"
7360      {
7361    ConfigChannel.restrict_channels = yylval.number;
7362   }
7363      break;
7364  
7365 <  case 656:
7365 >  case 625:
7366  
7367 < /* Line 1464 of yacc.c  */
7368 < #line 3554 "ircd_parser.y"
7367 > /* Line 1806 of yacc.c  */
7368 > #line 3210 "ircd_parser.y"
7369      {
7370    ConfigChannel.disable_local_channels = yylval.number;
7371   }
7372      break;
7373  
7374 <  case 657:
7374 >  case 626:
7375  
7376 < /* Line 1464 of yacc.c  */
7377 < #line 3559 "ircd_parser.y"
7376 > /* Line 1806 of yacc.c  */
7377 > #line 3215 "ircd_parser.y"
7378      {
7379    ConfigChannel.use_except = yylval.number;
7380   }
7381      break;
7382  
7383 <  case 658:
7383 >  case 627:
7384  
7385 < /* Line 1464 of yacc.c  */
7386 < #line 3564 "ircd_parser.y"
7385 > /* Line 1806 of yacc.c  */
7386 > #line 3220 "ircd_parser.y"
7387      {
7388    ConfigChannel.use_invex = yylval.number;
7389   }
7390      break;
7391  
7392 <  case 659:
7392 >  case 628:
7393  
7394 < /* Line 1464 of yacc.c  */
7395 < #line 3569 "ircd_parser.y"
7394 > /* Line 1806 of yacc.c  */
7395 > #line 3225 "ircd_parser.y"
7396      {
7397    ConfigChannel.use_knock = yylval.number;
7398   }
7399      break;
7400  
7401 <  case 660:
7401 >  case 629:
7402  
7403 < /* Line 1464 of yacc.c  */
7404 < #line 3574 "ircd_parser.y"
7403 > /* Line 1806 of yacc.c  */
7404 > #line 3230 "ircd_parser.y"
7405      {
7406    ConfigChannel.knock_delay = (yyvsp[(3) - (4)].number);
7407   }
7408      break;
7409  
7410 <  case 661:
7410 >  case 630:
7411  
7412 < /* Line 1464 of yacc.c  */
7413 < #line 3579 "ircd_parser.y"
7412 > /* Line 1806 of yacc.c  */
7413 > #line 3235 "ircd_parser.y"
7414      {
7415    ConfigChannel.knock_delay_channel = (yyvsp[(3) - (4)].number);
7416   }
7417      break;
7418  
7419 <  case 662:
7419 >  case 631:
7420  
7421 < /* Line 1464 of yacc.c  */
7422 < #line 3584 "ircd_parser.y"
7421 > /* Line 1806 of yacc.c  */
7422 > #line 3240 "ircd_parser.y"
7423      {
7424    ConfigChannel.max_chans_per_user = (yyvsp[(3) - (4)].number);
7425   }
7426      break;
7427  
7428 <  case 663:
7428 >  case 632:
7429  
7430 < /* Line 1464 of yacc.c  */
7431 < #line 3589 "ircd_parser.y"
7430 > /* Line 1806 of yacc.c  */
7431 > #line 3245 "ircd_parser.y"
7432      {
7433    ConfigChannel.quiet_on_ban = yylval.number;
7434   }
7435      break;
7436  
7437 <  case 664:
7437 >  case 633:
7438  
7439 < /* Line 1464 of yacc.c  */
7440 < #line 3594 "ircd_parser.y"
7439 > /* Line 1806 of yacc.c  */
7440 > #line 3250 "ircd_parser.y"
7441      {
7442    ConfigChannel.max_bans = (yyvsp[(3) - (4)].number);
7443   }
7444      break;
7445  
7446 <  case 665:
7446 >  case 634:
7447  
7448 < /* Line 1464 of yacc.c  */
7449 < #line 3599 "ircd_parser.y"
7448 > /* Line 1806 of yacc.c  */
7449 > #line 3255 "ircd_parser.y"
7450      {
7451    ConfigChannel.default_split_user_count = (yyvsp[(3) - (4)].number);
7452   }
7453      break;
7454  
7455 <  case 666:
7455 >  case 635:
7456  
7457 < /* Line 1464 of yacc.c  */
7458 < #line 3604 "ircd_parser.y"
7457 > /* Line 1806 of yacc.c  */
7458 > #line 3260 "ircd_parser.y"
7459      {
7460    ConfigChannel.default_split_server_count = (yyvsp[(3) - (4)].number);
7461   }
7462      break;
7463  
7464 <  case 667:
7464 >  case 636:
7465  
7466 < /* Line 1464 of yacc.c  */
7467 < #line 3609 "ircd_parser.y"
7466 > /* Line 1806 of yacc.c  */
7467 > #line 3265 "ircd_parser.y"
7468      {
7469    ConfigChannel.no_create_on_split = yylval.number;
7470   }
7471      break;
7472  
7473 <  case 668:
7473 >  case 637:
7474  
7475 < /* Line 1464 of yacc.c  */
7476 < #line 3614 "ircd_parser.y"
7475 > /* Line 1806 of yacc.c  */
7476 > #line 3270 "ircd_parser.y"
7477      {
7478    ConfigChannel.no_join_on_split = yylval.number;
7479   }
7480      break;
7481  
7482 <  case 669:
7482 >  case 638:
7483  
7484 < /* Line 1464 of yacc.c  */
7485 < #line 3619 "ircd_parser.y"
7484 > /* Line 1806 of yacc.c  */
7485 > #line 3275 "ircd_parser.y"
7486      {
7487    ConfigChannel.burst_topicwho = yylval.number;
7488   }
7489      break;
7490  
7491 <  case 670:
7491 >  case 639:
7492  
7493 < /* Line 1464 of yacc.c  */
7494 < #line 3624 "ircd_parser.y"
7493 > /* Line 1806 of yacc.c  */
7494 > #line 3280 "ircd_parser.y"
7495      {
7496    GlobalSetOptions.joinfloodcount = yylval.number;
7497   }
7498      break;
7499  
7500 <  case 671:
7500 >  case 640:
7501  
7502 < /* Line 1464 of yacc.c  */
7503 < #line 3629 "ircd_parser.y"
7502 > /* Line 1806 of yacc.c  */
7503 > #line 3285 "ircd_parser.y"
7504      {
7505    GlobalSetOptions.joinfloodtime = yylval.number;
7506   }
7507      break;
7508  
7509 <  case 683:
7509 >  case 652:
7510  
7511 < /* Line 1464 of yacc.c  */
7512 < #line 3648 "ircd_parser.y"
7511 > /* Line 1806 of yacc.c  */
7512 > #line 3304 "ircd_parser.y"
7513      {
7514    if (conf_parser_ctx.pass == 2)
7515      ConfigServerHide.flatten_links = yylval.number;
7516   }
7517      break;
7518  
7519 <  case 684:
7519 >  case 653:
7520  
7521 < /* Line 1464 of yacc.c  */
7522 < #line 3654 "ircd_parser.y"
7521 > /* Line 1806 of yacc.c  */
7522 > #line 3310 "ircd_parser.y"
7523      {
7524    if (conf_parser_ctx.pass == 2)
7525      ConfigServerHide.hide_servers = yylval.number;
7526   }
7527      break;
7528  
7529 <  case 685:
7529 >  case 654:
7530  
7531 < /* Line 1464 of yacc.c  */
7532 < #line 3660 "ircd_parser.y"
7531 > /* Line 1806 of yacc.c  */
7532 > #line 3316 "ircd_parser.y"
7533      {
7534    if (conf_parser_ctx.pass == 2)
7535    {
# Line 8030 | Line 7539 | yyreduce:
7539   }
7540      break;
7541  
7542 <  case 686:
7542 >  case 655:
7543  
7544 < /* Line 1464 of yacc.c  */
7545 < #line 3669 "ircd_parser.y"
7544 > /* Line 1806 of yacc.c  */
7545 > #line 3325 "ircd_parser.y"
7546      {
7547    if (conf_parser_ctx.pass == 2)
7548    {
# Line 8048 | Line 7557 | yyreduce:
7557   }
7558      break;
7559  
7560 <  case 687:
7560 >  case 656:
7561  
7562 < /* Line 1464 of yacc.c  */
7563 < #line 3683 "ircd_parser.y"
7562 > /* Line 1806 of yacc.c  */
7563 > #line 3339 "ircd_parser.y"
7564      {
7565    if (conf_parser_ctx.pass == 2)
7566      ConfigServerHide.hidden = yylval.number;
7567   }
7568      break;
7569  
7570 <  case 688:
7570 >  case 657:
7571  
7572 < /* Line 1464 of yacc.c  */
7573 < #line 3689 "ircd_parser.y"
7572 > /* Line 1806 of yacc.c  */
7573 > #line 3345 "ircd_parser.y"
7574      {
7575    if (conf_parser_ctx.pass == 2)
7576      ConfigServerHide.disable_hidden = yylval.number;
7577   }
7578      break;
7579  
7580 <  case 689:
7580 >  case 658:
7581  
7582 < /* Line 1464 of yacc.c  */
7583 < #line 3695 "ircd_parser.y"
7582 > /* Line 1806 of yacc.c  */
7583 > #line 3351 "ircd_parser.y"
7584      {
7585    if (conf_parser_ctx.pass == 2)
7586      ConfigServerHide.hide_server_ips = yylval.number;
# Line 8080 | Line 7589 | yyreduce:
7589  
7590  
7591  
7592 < /* Line 1464 of yacc.c  */
7593 < #line 8085 "ircd_parser.c"
7592 > /* Line 1806 of yacc.c  */
7593 > #line 7594 "ircd_parser.c"
7594        default: break;
7595      }
7596 +  /* User semantic actions sometimes alter yychar, and that requires
7597 +     that yytoken be updated with the new translation.  We take the
7598 +     approach of translating immediately before every use of yytoken.
7599 +     One alternative is translating here after every semantic action,
7600 +     but that translation would be missed if the semantic action invokes
7601 +     YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
7602 +     if it invokes YYBACKUP.  In the case of YYABORT or YYACCEPT, an
7603 +     incorrect destructor might then be invoked immediately.  In the
7604 +     case of YYERROR or YYBACKUP, subsequent parser actions might lead
7605 +     to an incorrect destructor call or verbose syntax error message
7606 +     before the lookahead is translated.  */
7607    YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
7608  
7609    YYPOPSTACK (yylen);
# Line 8111 | Line 7631 | yyreduce:
7631   | yyerrlab -- here on detecting error |
7632   `------------------------------------*/
7633   yyerrlab:
7634 +  /* Make sure we have latest lookahead translation.  See comments at
7635 +     user semantic actions for why this is necessary.  */
7636 +  yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar);
7637 +
7638    /* If not already recovering from an error, report this error.  */
7639    if (!yyerrstatus)
7640      {
# Line 8118 | Line 7642 | yyerrlab:
7642   #if ! YYERROR_VERBOSE
7643        yyerror (YY_("syntax error"));
7644   #else
7645 + # define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
7646 +                                        yyssp, yytoken)
7647        {
7648 <        YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
7649 <        if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
7650 <          {
7651 <            YYSIZE_T yyalloc = 2 * yysize;
7652 <            if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
7653 <              yyalloc = YYSTACK_ALLOC_MAXIMUM;
7654 <            if (yymsg != yymsgbuf)
7655 <              YYSTACK_FREE (yymsg);
7656 <            yymsg = (char *) YYSTACK_ALLOC (yyalloc);
7657 <            if (yymsg)
7658 <              yymsg_alloc = yyalloc;
7659 <            else
7660 <              {
7661 <                yymsg = yymsgbuf;
7662 <                yymsg_alloc = sizeof yymsgbuf;
7663 <              }
7664 <          }
7665 <
7666 <        if (0 < yysize && yysize <= yymsg_alloc)
7667 <          {
7668 <            (void) yysyntax_error (yymsg, yystate, yychar);
7669 <            yyerror (yymsg);
7670 <          }
7671 <        else
7672 <          {
8147 <            yyerror (YY_("syntax error"));
8148 <            if (yysize != 0)
8149 <              goto yyexhaustedlab;
8150 <          }
7648 >        char const *yymsgp = YY_("syntax error");
7649 >        int yysyntax_error_status;
7650 >        yysyntax_error_status = YYSYNTAX_ERROR;
7651 >        if (yysyntax_error_status == 0)
7652 >          yymsgp = yymsg;
7653 >        else if (yysyntax_error_status == 1)
7654 >          {
7655 >            if (yymsg != yymsgbuf)
7656 >              YYSTACK_FREE (yymsg);
7657 >            yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc);
7658 >            if (!yymsg)
7659 >              {
7660 >                yymsg = yymsgbuf;
7661 >                yymsg_alloc = sizeof yymsgbuf;
7662 >                yysyntax_error_status = 2;
7663 >              }
7664 >            else
7665 >              {
7666 >                yysyntax_error_status = YYSYNTAX_ERROR;
7667 >                yymsgp = yymsg;
7668 >              }
7669 >          }
7670 >        yyerror (yymsgp);
7671 >        if (yysyntax_error_status == 2)
7672 >          goto yyexhaustedlab;
7673        }
7674 + # undef YYSYNTAX_ERROR
7675   #endif
7676      }
7677  
# Line 8207 | Line 7730 | yyerrlab1:
7730    for (;;)
7731      {
7732        yyn = yypact[yystate];
7733 <      if (yyn != YYPACT_NINF)
7733 >      if (!yypact_value_is_default (yyn))
7734          {
7735            yyn += YYTERROR;
7736            if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
# Line 8266 | Line 7789 | yyexhaustedlab:
7789  
7790   yyreturn:
7791    if (yychar != YYEMPTY)
7792 <     yydestruct ("Cleanup: discarding lookahead",
7793 <                 yytoken, &yylval);
7792 >    {
7793 >      /* Make sure we have latest lookahead translation.  See comments at
7794 >         user semantic actions for why this is necessary.  */
7795 >      yytoken = YYTRANSLATE (yychar);
7796 >      yydestruct ("Cleanup: discarding lookahead",
7797 >                  yytoken, &yylval);
7798 >    }
7799    /* Do not reclaim the symbols of the rule which action triggered
7800       this YYABORT or YYACCEPT.  */
7801    YYPOPSTACK (yylen);

Diff Legend

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