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 1121 by michael, Sun Jan 9 11:03:03 2011 UTC vs.
ircd-hybrid-8/src/conf_parser.c (file contents), Revision 1309 by michael, Sun Mar 25 11:24:18 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 78 | Line 77
77   #include "stdinc.h"
78   #include "ircd.h"
79   #include "list.h"
80 < #include "s_conf.h"
80 > #include "conf.h"
81   #include "event.h"
82 < #include "s_log.h"
82 > #include "log.h"
83   #include "client.h"     /* for UMODE_ALL only */
84   #include "irc_string.h"
86 #include "irc_getaddrinfo.h"
85   #include "sprintf_irc.h"
86   #include "memory.h"
87   #include "modules.h"
# Line 99 | Line 97
97   #include <openssl/rsa.h>
98   #include <openssl/bio.h>
99   #include <openssl/pem.h>
100 + #include <openssl/dh.h>
101   #endif
102  
103   static char *class_name = NULL;
# Line 117 | Line 116 | static char userbuf[IRCD_BUFSIZE];
116   static char hostbuf[IRCD_BUFSIZE];
117   static char reasonbuf[REASONLEN + 1];
118   static char gecos_name[REALLEN * 4];
119 <
119 > static char lfile[IRCD_BUFSIZE];
120 > static unsigned int ltype = 0;
121 > static unsigned int lsize = 0;
122   static char *resv_reason = NULL;
123   static char *listener_address = NULL;
123 static int not_atom = 0;
124  
125   struct CollectItem
126   {
# Line 175 | Line 175 | unhook_hub_leaf_confs(void)
175  
176  
177  
178 < /* Line 189 of yacc.c  */
178 > /* Line 268 of yacc.c  */
179   #line 180 "ircd_parser.c"
180  
181   /* Enabling traces.  */
# Line 221 | Line 221 | unhook_hub_leaf_confs(void)
221       TBYTES = 273,
222       CALLER_ID_WAIT = 274,
223       CAN_FLOOD = 275,
224 <     CAN_IDLE = 276,
225 <     CHANNEL = 277,
226 <     CIDR_BITLEN_IPV4 = 278,
227 <     CIDR_BITLEN_IPV6 = 279,
228 <     CIPHER_PREFERENCE = 280,
229 <     CLASS = 281,
230 <     COMPRESSED = 282,
231 <     COMPRESSION_LEVEL = 283,
232 <     CONNECT = 284,
233 <     CONNECTFREQ = 285,
234 <     CRYPTLINK = 286,
235 <     DEFAULT_CIPHER_PREFERENCE = 287,
236 <     DEFAULT_FLOODCOUNT = 288,
237 <     DEFAULT_SPLIT_SERVER_COUNT = 289,
238 <     DEFAULT_SPLIT_USER_COUNT = 290,
239 <     DENY = 291,
240 <     DESCRIPTION = 292,
241 <     DIE = 293,
242 <     DISABLE_AUTH = 294,
243 <     DISABLE_FAKE_CHANNELS = 295,
244 <     DISABLE_HIDDEN = 296,
245 <     DISABLE_LOCAL_CHANNELS = 297,
246 <     DISABLE_REMOTE_COMMANDS = 298,
247 <     DOTS_IN_IDENT = 299,
248 <     DURATION = 300,
249 <     EGDPOOL_PATH = 301,
250 <     EMAIL = 302,
251 <     ENABLE = 303,
252 <     ENCRYPTED = 304,
253 <     EXCEED_LIMIT = 305,
254 <     EXEMPT = 306,
255 <     FAILED_OPER_NOTICE = 307,
256 <     IRCD_FLAGS = 308,
257 <     FLATTEN_LINKS = 309,
258 <     FFAILED_OPERLOG = 310,
259 <     FKILLLOG = 311,
260 <     FKLINELOG = 312,
261 <     FGLINELOG = 313,
262 <     FIOERRLOG = 314,
263 <     FOPERLOG = 315,
264 <     FOPERSPYLOG = 316,
265 <     FUSERLOG = 317,
266 <     GECOS = 318,
267 <     GENERAL = 319,
268 <     GLINE = 320,
269 <     GLINES = 321,
270 <     GLINE_EXEMPT = 322,
271 <     GLINE_LOG = 323,
272 <     GLINE_TIME = 324,
273 <     GLINE_MIN_CIDR = 325,
274 <     GLINE_MIN_CIDR6 = 326,
275 <     GLOBAL_KILL = 327,
276 <     IRCD_AUTH = 328,
277 <     NEED_IDENT = 329,
278 <     HAVENT_READ_CONF = 330,
279 <     HIDDEN = 331,
280 <     HIDDEN_ADMIN = 332,
281 <     HIDDEN_NAME = 333,
282 <     HIDDEN_OPER = 334,
283 <     HIDE_SERVER_IPS = 335,
284 <     HIDE_SERVERS = 336,
285 <     HIDE_SPOOF_IPS = 337,
286 <     HOST = 338,
287 <     HUB = 339,
288 <     HUB_MASK = 340,
289 <     IDLETIME = 341,
290 <     IGNORE_BOGUS_TS = 342,
291 <     INVISIBLE_ON_CONNECT = 343,
292 <     IP = 344,
293 <     KILL = 345,
294 <     KILL_CHASE_TIME_LIMIT = 346,
295 <     KLINE = 347,
296 <     KLINE_EXEMPT = 348,
297 <     KLINE_REASON = 349,
298 <     KLINE_WITH_REASON = 350,
299 <     KNOCK_DELAY = 351,
300 <     KNOCK_DELAY_CHANNEL = 352,
301 <     LEAF_MASK = 353,
302 <     LINKS_DELAY = 354,
303 <     LISTEN = 355,
304 <     T_LOG = 356,
305 <     LOGGING = 357,
306 <     LOG_LEVEL = 358,
307 <     MAX_ACCEPT = 359,
308 <     MAX_BANS = 360,
309 <     MAX_CHANS_PER_USER = 361,
310 <     MAX_GLOBAL = 362,
311 <     MAX_IDENT = 363,
312 <     MAX_LOCAL = 364,
313 <     MAX_NICK_CHANGES = 365,
314 <     MAX_NICK_TIME = 366,
315 <     MAX_NUMBER = 367,
316 <     MAX_TARGETS = 368,
317 <     MAX_WATCH = 369,
318 <     MESSAGE_LOCALE = 370,
319 <     MIN_NONWILDCARD = 371,
320 <     MIN_NONWILDCARD_SIMPLE = 372,
321 <     MODULE = 373,
322 <     MODULES = 374,
323 <     NAME = 375,
324 <     NEED_PASSWORD = 376,
325 <     NETWORK_DESC = 377,
326 <     NETWORK_NAME = 378,
327 <     NICK = 379,
328 <     NICK_CHANGES = 380,
329 <     NO_CREATE_ON_SPLIT = 381,
330 <     NO_JOIN_ON_SPLIT = 382,
331 <     NO_OPER_FLOOD = 383,
332 <     NO_TILDE = 384,
333 <     NOT = 385,
334 <     NUMBER = 386,
335 <     NUMBER_PER_IDENT = 387,
336 <     NUMBER_PER_CIDR = 388,
337 <     NUMBER_PER_IP = 389,
338 <     NUMBER_PER_IP_GLOBAL = 390,
339 <     OPERATOR = 391,
340 <     OPERS_BYPASS_CALLERID = 392,
341 <     OPER_LOG = 393,
342 <     OPER_ONLY_UMODES = 394,
343 <     OPER_PASS_RESV = 395,
344 <     OPER_SPY_T = 396,
345 <     OPER_UMODES = 397,
346 <     JOIN_FLOOD_COUNT = 398,
347 <     JOIN_FLOOD_TIME = 399,
348 <     PACE_WAIT = 400,
349 <     PACE_WAIT_SIMPLE = 401,
350 <     PASSWORD = 402,
351 <     PATH = 403,
352 <     PING_COOKIE = 404,
353 <     PING_TIME = 405,
354 <     PING_WARNING = 406,
355 <     PORT = 407,
356 <     QSTRING = 408,
357 <     QUIET_ON_BAN = 409,
358 <     REASON = 410,
359 <     REDIRPORT = 411,
360 <     REDIRSERV = 412,
361 <     REGEX_T = 413,
362 <     REHASH = 414,
363 <     TREJECT_HOLD_TIME = 415,
364 <     REMOTE = 416,
365 <     REMOTEBAN = 417,
366 <     RESTRICT_CHANNELS = 418,
367 <     RESTRICTED = 419,
368 <     RSA_PRIVATE_KEY_FILE = 420,
369 <     RSA_PUBLIC_KEY_FILE = 421,
370 <     SSL_CERTIFICATE_FILE = 422,
371 <     T_SSL_CONNECTION_METHOD = 423,
372 <     T_SSLV3 = 424,
373 <     T_TLSV1 = 425,
374 <     RESV = 426,
375 <     RESV_EXEMPT = 427,
376 <     SECONDS = 428,
377 <     MINUTES = 429,
378 <     HOURS = 430,
379 <     DAYS = 431,
380 <     WEEKS = 432,
381 <     SENDQ = 433,
382 <     SEND_PASSWORD = 434,
383 <     SERVERHIDE = 435,
384 <     SERVERINFO = 436,
385 <     SERVLINK_PATH = 437,
386 <     IRCD_SID = 438,
387 <     TKLINE_EXPIRE_NOTICES = 439,
388 <     T_SHARED = 440,
389 <     T_CLUSTER = 441,
390 <     TYPE = 442,
391 <     SHORT_MOTD = 443,
392 <     SILENT = 444,
393 <     SPOOF = 445,
394 <     SPOOF_NOTICE = 446,
395 <     STATS_E_DISABLED = 447,
396 <     STATS_I_OPER_ONLY = 448,
397 <     STATS_K_OPER_ONLY = 449,
398 <     STATS_O_OPER_ONLY = 450,
399 <     STATS_P_OPER_ONLY = 451,
400 <     TBOOL = 452,
401 <     TMASKED = 453,
402 <     T_REJECT = 454,
403 <     TS_MAX_DELTA = 455,
404 <     TS_WARN_DELTA = 456,
405 <     TWODOTS = 457,
406 <     T_ALL = 458,
407 <     T_BOTS = 459,
408 <     T_SOFTCALLERID = 460,
409 <     T_CALLERID = 461,
410 <     T_CCONN = 462,
411 <     T_CCONN_FULL = 463,
412 <     T_CLIENT_FLOOD = 464,
413 <     T_DEAF = 465,
414 <     T_DEBUG = 466,
415 <     T_DRONE = 467,
416 <     T_EXTERNAL = 468,
417 <     T_FULL = 469,
418 <     T_INVISIBLE = 470,
419 <     T_IPV4 = 471,
420 <     T_IPV6 = 472,
421 <     T_LOCOPS = 473,
422 <     T_LOGPATH = 474,
423 <     T_L_CRIT = 475,
424 <     T_L_DEBUG = 476,
425 <     T_L_ERROR = 477,
426 <     T_L_INFO = 478,
427 <     T_L_NOTICE = 479,
428 <     T_L_TRACE = 480,
429 <     T_L_WARN = 481,
430 <     T_MAX_CLIENTS = 482,
431 <     T_NCHANGE = 483,
432 <     T_OPERWALL = 484,
433 <     T_REJ = 485,
434 <     T_SERVER = 486,
435 <     T_SERVNOTICE = 487,
436 <     T_SKILL = 488,
437 <     T_SPY = 489,
438 <     T_SSL = 490,
439 <     T_UMODES = 491,
440 <     T_UNAUTH = 492,
441 <     T_UNRESV = 493,
442 <     T_UNXLINE = 494,
443 <     T_WALLOP = 495,
444 <     THROTTLE_TIME = 496,
445 <     TOPICBURST = 497,
446 <     TRUE_NO_OPER_FLOOD = 498,
447 <     TKLINE = 499,
448 <     TXLINE = 500,
449 <     TRESV = 501,
450 <     UNKLINE = 502,
451 <     USER = 503,
452 <     USE_EGD = 504,
453 <     USE_EXCEPT = 505,
454 <     USE_INVEX = 506,
455 <     USE_KNOCK = 507,
456 <     USE_LOGGING = 508,
457 <     USE_WHOIS_ACTUALLY = 509,
458 <     VHOST = 510,
459 <     VHOST6 = 511,
460 <     XLINE = 512,
461 <     WARN = 513,
462 <     WARN_NO_NLINE = 514
224 >     CHANNEL = 276,
225 >     CIDR_BITLEN_IPV4 = 277,
226 >     CIDR_BITLEN_IPV6 = 278,
227 >     CLASS = 279,
228 >     CONNECT = 280,
229 >     CONNECTFREQ = 281,
230 >     DEFAULT_FLOODCOUNT = 282,
231 >     DEFAULT_SPLIT_SERVER_COUNT = 283,
232 >     DEFAULT_SPLIT_USER_COUNT = 284,
233 >     DENY = 285,
234 >     DESCRIPTION = 286,
235 >     DIE = 287,
236 >     DISABLE_AUTH = 288,
237 >     DISABLE_FAKE_CHANNELS = 289,
238 >     DISABLE_HIDDEN = 290,
239 >     DISABLE_LOCAL_CHANNELS = 291,
240 >     DISABLE_REMOTE_COMMANDS = 292,
241 >     DOTS_IN_IDENT = 293,
242 >     DURATION = 294,
243 >     EGDPOOL_PATH = 295,
244 >     EMAIL = 296,
245 >     ENABLE = 297,
246 >     ENCRYPTED = 298,
247 >     EXCEED_LIMIT = 299,
248 >     EXEMPT = 300,
249 >     FAILED_OPER_NOTICE = 301,
250 >     IRCD_FLAGS = 302,
251 >     FLATTEN_LINKS = 303,
252 >     GECOS = 304,
253 >     GENERAL = 305,
254 >     GLINE = 306,
255 >     GLINES = 307,
256 >     GLINE_EXEMPT = 308,
257 >     GLINE_TIME = 309,
258 >     GLINE_MIN_CIDR = 310,
259 >     GLINE_MIN_CIDR6 = 311,
260 >     GLOBAL_KILL = 312,
261 >     IRCD_AUTH = 313,
262 >     NEED_IDENT = 314,
263 >     HAVENT_READ_CONF = 315,
264 >     HIDDEN = 316,
265 >     HIDDEN_NAME = 317,
266 >     HIDE_SERVER_IPS = 318,
267 >     HIDE_SERVERS = 319,
268 >     HIDE_SPOOF_IPS = 320,
269 >     HOST = 321,
270 >     HUB = 322,
271 >     HUB_MASK = 323,
272 >     IGNORE_BOGUS_TS = 324,
273 >     INVISIBLE_ON_CONNECT = 325,
274 >     IP = 326,
275 >     KILL = 327,
276 >     KILL_CHASE_TIME_LIMIT = 328,
277 >     KLINE = 329,
278 >     KLINE_EXEMPT = 330,
279 >     KLINE_REASON = 331,
280 >     KLINE_WITH_REASON = 332,
281 >     KNOCK_DELAY = 333,
282 >     KNOCK_DELAY_CHANNEL = 334,
283 >     LEAF_MASK = 335,
284 >     LINKS_DELAY = 336,
285 >     LISTEN = 337,
286 >     T_LOG = 338,
287 >     MAX_ACCEPT = 339,
288 >     MAX_BANS = 340,
289 >     MAX_CHANS_PER_USER = 341,
290 >     MAX_GLOBAL = 342,
291 >     MAX_IDENT = 343,
292 >     MAX_LOCAL = 344,
293 >     MAX_NICK_CHANGES = 345,
294 >     MAX_NICK_TIME = 346,
295 >     MAX_NUMBER = 347,
296 >     MAX_TARGETS = 348,
297 >     MAX_WATCH = 349,
298 >     MESSAGE_LOCALE = 350,
299 >     MIN_NONWILDCARD = 351,
300 >     MIN_NONWILDCARD_SIMPLE = 352,
301 >     MODULE = 353,
302 >     MODULES = 354,
303 >     NAME = 355,
304 >     NEED_PASSWORD = 356,
305 >     NETWORK_DESC = 357,
306 >     NETWORK_NAME = 358,
307 >     NICK = 359,
308 >     NICK_CHANGES = 360,
309 >     NO_CREATE_ON_SPLIT = 361,
310 >     NO_JOIN_ON_SPLIT = 362,
311 >     NO_OPER_FLOOD = 363,
312 >     NO_TILDE = 364,
313 >     NUMBER = 365,
314 >     NUMBER_PER_IDENT = 366,
315 >     NUMBER_PER_CIDR = 367,
316 >     NUMBER_PER_IP = 368,
317 >     NUMBER_PER_IP_GLOBAL = 369,
318 >     OPERATOR = 370,
319 >     OPERS_BYPASS_CALLERID = 371,
320 >     OPER_ONLY_UMODES = 372,
321 >     OPER_PASS_RESV = 373,
322 >     OPER_SPY_T = 374,
323 >     OPER_UMODES = 375,
324 >     JOIN_FLOOD_COUNT = 376,
325 >     JOIN_FLOOD_TIME = 377,
326 >     PACE_WAIT = 378,
327 >     PACE_WAIT_SIMPLE = 379,
328 >     PASSWORD = 380,
329 >     PATH = 381,
330 >     PING_COOKIE = 382,
331 >     PING_TIME = 383,
332 >     PING_WARNING = 384,
333 >     PORT = 385,
334 >     QSTRING = 386,
335 >     QUIET_ON_BAN = 387,
336 >     REASON = 388,
337 >     REDIRPORT = 389,
338 >     REDIRSERV = 390,
339 >     REGEX_T = 391,
340 >     REHASH = 392,
341 >     TREJECT_HOLD_TIME = 393,
342 >     REMOTE = 394,
343 >     REMOTEBAN = 395,
344 >     RESTRICT_CHANNELS = 396,
345 >     RESTRICTED = 397,
346 >     RSA_PRIVATE_KEY_FILE = 398,
347 >     RSA_PUBLIC_KEY_FILE = 399,
348 >     SSL_CERTIFICATE_FILE = 400,
349 >     SSL_DH_PARAM_FILE = 401,
350 >     T_SSL_CONNECTION_METHOD = 402,
351 >     T_SSLV3 = 403,
352 >     T_TLSV1 = 404,
353 >     RESV = 405,
354 >     RESV_EXEMPT = 406,
355 >     SECONDS = 407,
356 >     MINUTES = 408,
357 >     HOURS = 409,
358 >     DAYS = 410,
359 >     WEEKS = 411,
360 >     SENDQ = 412,
361 >     SEND_PASSWORD = 413,
362 >     SERVERHIDE = 414,
363 >     SERVERINFO = 415,
364 >     IRCD_SID = 416,
365 >     TKLINE_EXPIRE_NOTICES = 417,
366 >     T_SHARED = 418,
367 >     T_CLUSTER = 419,
368 >     TYPE = 420,
369 >     SHORT_MOTD = 421,
370 >     SILENT = 422,
371 >     SPOOF = 423,
372 >     SPOOF_NOTICE = 424,
373 >     STATS_E_DISABLED = 425,
374 >     STATS_I_OPER_ONLY = 426,
375 >     STATS_K_OPER_ONLY = 427,
376 >     STATS_O_OPER_ONLY = 428,
377 >     STATS_P_OPER_ONLY = 429,
378 >     TBOOL = 430,
379 >     TMASKED = 431,
380 >     T_REJECT = 432,
381 >     TS_MAX_DELTA = 433,
382 >     TS_WARN_DELTA = 434,
383 >     TWODOTS = 435,
384 >     T_ALL = 436,
385 >     T_BOTS = 437,
386 >     T_SOFTCALLERID = 438,
387 >     T_CALLERID = 439,
388 >     T_CCONN = 440,
389 >     T_CCONN_FULL = 441,
390 >     T_SSL_CIPHER_LIST = 442,
391 >     T_CLIENT_FLOOD = 443,
392 >     T_DEAF = 444,
393 >     T_DEBUG = 445,
394 >     T_DLINE = 446,
395 >     T_DRONE = 447,
396 >     T_EXTERNAL = 448,
397 >     T_FULL = 449,
398 >     T_INVISIBLE = 450,
399 >     T_IPV4 = 451,
400 >     T_IPV6 = 452,
401 >     T_LOCOPS = 453,
402 >     T_MAX_CLIENTS = 454,
403 >     T_NCHANGE = 455,
404 >     T_OPERWALL = 456,
405 >     T_REJ = 457,
406 >     T_SERVER = 458,
407 >     T_SERVNOTICE = 459,
408 >     T_SKILL = 460,
409 >     T_SPY = 461,
410 >     T_SSL = 462,
411 >     T_UMODES = 463,
412 >     T_UNAUTH = 464,
413 >     T_UNDLINE = 465,
414 >     T_UNLIMITED = 466,
415 >     T_UNRESV = 467,
416 >     T_UNXLINE = 468,
417 >     T_GLOBOPS = 469,
418 >     T_WALLOP = 470,
419 >     T_RESTART = 471,
420 >     T_SERVICE = 472,
421 >     T_SERVICES_NAME = 473,
422 >     T_TIMESTAMP = 474,
423 >     THROTTLE_TIME = 475,
424 >     TOPICBURST = 476,
425 >     TRUE_NO_OPER_FLOOD = 477,
426 >     TKLINE = 478,
427 >     TXLINE = 479,
428 >     TRESV = 480,
429 >     UNKLINE = 481,
430 >     USER = 482,
431 >     USE_EGD = 483,
432 >     USE_EXCEPT = 484,
433 >     USE_INVEX = 485,
434 >     USE_KNOCK = 486,
435 >     USE_LOGGING = 487,
436 >     USE_WHOIS_ACTUALLY = 488,
437 >     VHOST = 489,
438 >     VHOST6 = 490,
439 >     XLINE = 491,
440 >     WARN = 492,
441 >     WARN_NO_NLINE = 493,
442 >     T_SIZE = 494,
443 >     T_FILE = 495
444     };
445   #endif
446   /* Tokens.  */
# Line 481 | Line 462 | unhook_hub_leaf_confs(void)
462   #define TBYTES 273
463   #define CALLER_ID_WAIT 274
464   #define CAN_FLOOD 275
465 < #define CAN_IDLE 276
466 < #define CHANNEL 277
467 < #define CIDR_BITLEN_IPV4 278
468 < #define CIDR_BITLEN_IPV6 279
469 < #define CIPHER_PREFERENCE 280
470 < #define CLASS 281
471 < #define COMPRESSED 282
472 < #define COMPRESSION_LEVEL 283
473 < #define CONNECT 284
474 < #define CONNECTFREQ 285
475 < #define CRYPTLINK 286
476 < #define DEFAULT_CIPHER_PREFERENCE 287
477 < #define DEFAULT_FLOODCOUNT 288
478 < #define DEFAULT_SPLIT_SERVER_COUNT 289
479 < #define DEFAULT_SPLIT_USER_COUNT 290
480 < #define DENY 291
481 < #define DESCRIPTION 292
482 < #define DIE 293
483 < #define DISABLE_AUTH 294
484 < #define DISABLE_FAKE_CHANNELS 295
485 < #define DISABLE_HIDDEN 296
486 < #define DISABLE_LOCAL_CHANNELS 297
487 < #define DISABLE_REMOTE_COMMANDS 298
488 < #define DOTS_IN_IDENT 299
489 < #define DURATION 300
490 < #define EGDPOOL_PATH 301
491 < #define EMAIL 302
492 < #define ENABLE 303
493 < #define ENCRYPTED 304
494 < #define EXCEED_LIMIT 305
495 < #define EXEMPT 306
496 < #define FAILED_OPER_NOTICE 307
497 < #define IRCD_FLAGS 308
498 < #define FLATTEN_LINKS 309
499 < #define FFAILED_OPERLOG 310
500 < #define FKILLLOG 311
501 < #define FKLINELOG 312
502 < #define FGLINELOG 313
503 < #define FIOERRLOG 314
504 < #define FOPERLOG 315
505 < #define FOPERSPYLOG 316
506 < #define FUSERLOG 317
507 < #define GECOS 318
508 < #define GENERAL 319
509 < #define GLINE 320
510 < #define GLINES 321
511 < #define GLINE_EXEMPT 322
512 < #define GLINE_LOG 323
513 < #define GLINE_TIME 324
514 < #define GLINE_MIN_CIDR 325
515 < #define GLINE_MIN_CIDR6 326
516 < #define GLOBAL_KILL 327
517 < #define IRCD_AUTH 328
518 < #define NEED_IDENT 329
519 < #define HAVENT_READ_CONF 330
520 < #define HIDDEN 331
521 < #define HIDDEN_ADMIN 332
522 < #define HIDDEN_NAME 333
523 < #define HIDDEN_OPER 334
524 < #define HIDE_SERVER_IPS 335
525 < #define HIDE_SERVERS 336
526 < #define HIDE_SPOOF_IPS 337
527 < #define HOST 338
528 < #define HUB 339
529 < #define HUB_MASK 340
530 < #define IDLETIME 341
531 < #define IGNORE_BOGUS_TS 342
532 < #define INVISIBLE_ON_CONNECT 343
533 < #define IP 344
534 < #define KILL 345
535 < #define KILL_CHASE_TIME_LIMIT 346
536 < #define KLINE 347
537 < #define KLINE_EXEMPT 348
538 < #define KLINE_REASON 349
539 < #define KLINE_WITH_REASON 350
540 < #define KNOCK_DELAY 351
541 < #define KNOCK_DELAY_CHANNEL 352
542 < #define LEAF_MASK 353
543 < #define LINKS_DELAY 354
544 < #define LISTEN 355
545 < #define T_LOG 356
546 < #define LOGGING 357
547 < #define LOG_LEVEL 358
548 < #define MAX_ACCEPT 359
549 < #define MAX_BANS 360
550 < #define MAX_CHANS_PER_USER 361
551 < #define MAX_GLOBAL 362
552 < #define MAX_IDENT 363
553 < #define MAX_LOCAL 364
554 < #define MAX_NICK_CHANGES 365
555 < #define MAX_NICK_TIME 366
556 < #define MAX_NUMBER 367
557 < #define MAX_TARGETS 368
558 < #define MAX_WATCH 369
559 < #define MESSAGE_LOCALE 370
560 < #define MIN_NONWILDCARD 371
561 < #define MIN_NONWILDCARD_SIMPLE 372
562 < #define MODULE 373
563 < #define MODULES 374
564 < #define NAME 375
565 < #define NEED_PASSWORD 376
566 < #define NETWORK_DESC 377
567 < #define NETWORK_NAME 378
568 < #define NICK 379
569 < #define NICK_CHANGES 380
570 < #define NO_CREATE_ON_SPLIT 381
571 < #define NO_JOIN_ON_SPLIT 382
572 < #define NO_OPER_FLOOD 383
573 < #define NO_TILDE 384
574 < #define NOT 385
575 < #define NUMBER 386
576 < #define NUMBER_PER_IDENT 387
577 < #define NUMBER_PER_CIDR 388
578 < #define NUMBER_PER_IP 389
579 < #define NUMBER_PER_IP_GLOBAL 390
580 < #define OPERATOR 391
581 < #define OPERS_BYPASS_CALLERID 392
582 < #define OPER_LOG 393
583 < #define OPER_ONLY_UMODES 394
584 < #define OPER_PASS_RESV 395
585 < #define OPER_SPY_T 396
586 < #define OPER_UMODES 397
587 < #define JOIN_FLOOD_COUNT 398
588 < #define JOIN_FLOOD_TIME 399
589 < #define PACE_WAIT 400
590 < #define PACE_WAIT_SIMPLE 401
591 < #define PASSWORD 402
592 < #define PATH 403
593 < #define PING_COOKIE 404
594 < #define PING_TIME 405
595 < #define PING_WARNING 406
596 < #define PORT 407
597 < #define QSTRING 408
598 < #define QUIET_ON_BAN 409
599 < #define REASON 410
600 < #define REDIRPORT 411
601 < #define REDIRSERV 412
602 < #define REGEX_T 413
603 < #define REHASH 414
604 < #define TREJECT_HOLD_TIME 415
605 < #define REMOTE 416
606 < #define REMOTEBAN 417
607 < #define RESTRICT_CHANNELS 418
608 < #define RESTRICTED 419
609 < #define RSA_PRIVATE_KEY_FILE 420
610 < #define RSA_PUBLIC_KEY_FILE 421
611 < #define SSL_CERTIFICATE_FILE 422
612 < #define T_SSL_CONNECTION_METHOD 423
613 < #define T_SSLV3 424
614 < #define T_TLSV1 425
615 < #define RESV 426
616 < #define RESV_EXEMPT 427
617 < #define SECONDS 428
618 < #define MINUTES 429
619 < #define HOURS 430
620 < #define DAYS 431
621 < #define WEEKS 432
622 < #define SENDQ 433
623 < #define SEND_PASSWORD 434
624 < #define SERVERHIDE 435
625 < #define SERVERINFO 436
626 < #define SERVLINK_PATH 437
627 < #define IRCD_SID 438
628 < #define TKLINE_EXPIRE_NOTICES 439
629 < #define T_SHARED 440
630 < #define T_CLUSTER 441
631 < #define TYPE 442
632 < #define SHORT_MOTD 443
633 < #define SILENT 444
634 < #define SPOOF 445
635 < #define SPOOF_NOTICE 446
636 < #define STATS_E_DISABLED 447
637 < #define STATS_I_OPER_ONLY 448
638 < #define STATS_K_OPER_ONLY 449
639 < #define STATS_O_OPER_ONLY 450
640 < #define STATS_P_OPER_ONLY 451
641 < #define TBOOL 452
642 < #define TMASKED 453
643 < #define T_REJECT 454
644 < #define TS_MAX_DELTA 455
645 < #define TS_WARN_DELTA 456
646 < #define TWODOTS 457
647 < #define T_ALL 458
648 < #define T_BOTS 459
649 < #define T_SOFTCALLERID 460
650 < #define T_CALLERID 461
651 < #define T_CCONN 462
652 < #define T_CCONN_FULL 463
653 < #define T_CLIENT_FLOOD 464
654 < #define T_DEAF 465
655 < #define T_DEBUG 466
656 < #define T_DRONE 467
657 < #define T_EXTERNAL 468
658 < #define T_FULL 469
659 < #define T_INVISIBLE 470
660 < #define T_IPV4 471
661 < #define T_IPV6 472
662 < #define T_LOCOPS 473
663 < #define T_LOGPATH 474
664 < #define T_L_CRIT 475
665 < #define T_L_DEBUG 476
666 < #define T_L_ERROR 477
667 < #define T_L_INFO 478
668 < #define T_L_NOTICE 479
669 < #define T_L_TRACE 480
670 < #define T_L_WARN 481
671 < #define T_MAX_CLIENTS 482
672 < #define T_NCHANGE 483
673 < #define T_OPERWALL 484
674 < #define T_REJ 485
675 < #define T_SERVER 486
676 < #define T_SERVNOTICE 487
677 < #define T_SKILL 488
678 < #define T_SPY 489
679 < #define T_SSL 490
680 < #define T_UMODES 491
681 < #define T_UNAUTH 492
682 < #define T_UNRESV 493
683 < #define T_UNXLINE 494
684 < #define T_WALLOP 495
704 < #define THROTTLE_TIME 496
705 < #define TOPICBURST 497
706 < #define TRUE_NO_OPER_FLOOD 498
707 < #define TKLINE 499
708 < #define TXLINE 500
709 < #define TRESV 501
710 < #define UNKLINE 502
711 < #define USER 503
712 < #define USE_EGD 504
713 < #define USE_EXCEPT 505
714 < #define USE_INVEX 506
715 < #define USE_KNOCK 507
716 < #define USE_LOGGING 508
717 < #define USE_WHOIS_ACTUALLY 509
718 < #define VHOST 510
719 < #define VHOST6 511
720 < #define XLINE 512
721 < #define WARN 513
722 < #define WARN_NO_NLINE 514
465 > #define CHANNEL 276
466 > #define CIDR_BITLEN_IPV4 277
467 > #define CIDR_BITLEN_IPV6 278
468 > #define CLASS 279
469 > #define CONNECT 280
470 > #define CONNECTFREQ 281
471 > #define DEFAULT_FLOODCOUNT 282
472 > #define DEFAULT_SPLIT_SERVER_COUNT 283
473 > #define DEFAULT_SPLIT_USER_COUNT 284
474 > #define DENY 285
475 > #define DESCRIPTION 286
476 > #define DIE 287
477 > #define DISABLE_AUTH 288
478 > #define DISABLE_FAKE_CHANNELS 289
479 > #define DISABLE_HIDDEN 290
480 > #define DISABLE_LOCAL_CHANNELS 291
481 > #define DISABLE_REMOTE_COMMANDS 292
482 > #define DOTS_IN_IDENT 293
483 > #define DURATION 294
484 > #define EGDPOOL_PATH 295
485 > #define EMAIL 296
486 > #define ENABLE 297
487 > #define ENCRYPTED 298
488 > #define EXCEED_LIMIT 299
489 > #define EXEMPT 300
490 > #define FAILED_OPER_NOTICE 301
491 > #define IRCD_FLAGS 302
492 > #define FLATTEN_LINKS 303
493 > #define GECOS 304
494 > #define GENERAL 305
495 > #define GLINE 306
496 > #define GLINES 307
497 > #define GLINE_EXEMPT 308
498 > #define GLINE_TIME 309
499 > #define GLINE_MIN_CIDR 310
500 > #define GLINE_MIN_CIDR6 311
501 > #define GLOBAL_KILL 312
502 > #define IRCD_AUTH 313
503 > #define NEED_IDENT 314
504 > #define HAVENT_READ_CONF 315
505 > #define HIDDEN 316
506 > #define HIDDEN_NAME 317
507 > #define HIDE_SERVER_IPS 318
508 > #define HIDE_SERVERS 319
509 > #define HIDE_SPOOF_IPS 320
510 > #define HOST 321
511 > #define HUB 322
512 > #define HUB_MASK 323
513 > #define IGNORE_BOGUS_TS 324
514 > #define INVISIBLE_ON_CONNECT 325
515 > #define IP 326
516 > #define KILL 327
517 > #define KILL_CHASE_TIME_LIMIT 328
518 > #define KLINE 329
519 > #define KLINE_EXEMPT 330
520 > #define KLINE_REASON 331
521 > #define KLINE_WITH_REASON 332
522 > #define KNOCK_DELAY 333
523 > #define KNOCK_DELAY_CHANNEL 334
524 > #define LEAF_MASK 335
525 > #define LINKS_DELAY 336
526 > #define LISTEN 337
527 > #define T_LOG 338
528 > #define MAX_ACCEPT 339
529 > #define MAX_BANS 340
530 > #define MAX_CHANS_PER_USER 341
531 > #define MAX_GLOBAL 342
532 > #define MAX_IDENT 343
533 > #define MAX_LOCAL 344
534 > #define MAX_NICK_CHANGES 345
535 > #define MAX_NICK_TIME 346
536 > #define MAX_NUMBER 347
537 > #define MAX_TARGETS 348
538 > #define MAX_WATCH 349
539 > #define MESSAGE_LOCALE 350
540 > #define MIN_NONWILDCARD 351
541 > #define MIN_NONWILDCARD_SIMPLE 352
542 > #define MODULE 353
543 > #define MODULES 354
544 > #define NAME 355
545 > #define NEED_PASSWORD 356
546 > #define NETWORK_DESC 357
547 > #define NETWORK_NAME 358
548 > #define NICK 359
549 > #define NICK_CHANGES 360
550 > #define NO_CREATE_ON_SPLIT 361
551 > #define NO_JOIN_ON_SPLIT 362
552 > #define NO_OPER_FLOOD 363
553 > #define NO_TILDE 364
554 > #define NUMBER 365
555 > #define NUMBER_PER_IDENT 366
556 > #define NUMBER_PER_CIDR 367
557 > #define NUMBER_PER_IP 368
558 > #define NUMBER_PER_IP_GLOBAL 369
559 > #define OPERATOR 370
560 > #define OPERS_BYPASS_CALLERID 371
561 > #define OPER_ONLY_UMODES 372
562 > #define OPER_PASS_RESV 373
563 > #define OPER_SPY_T 374
564 > #define OPER_UMODES 375
565 > #define JOIN_FLOOD_COUNT 376
566 > #define JOIN_FLOOD_TIME 377
567 > #define PACE_WAIT 378
568 > #define PACE_WAIT_SIMPLE 379
569 > #define PASSWORD 380
570 > #define PATH 381
571 > #define PING_COOKIE 382
572 > #define PING_TIME 383
573 > #define PING_WARNING 384
574 > #define PORT 385
575 > #define QSTRING 386
576 > #define QUIET_ON_BAN 387
577 > #define REASON 388
578 > #define REDIRPORT 389
579 > #define REDIRSERV 390
580 > #define REGEX_T 391
581 > #define REHASH 392
582 > #define TREJECT_HOLD_TIME 393
583 > #define REMOTE 394
584 > #define REMOTEBAN 395
585 > #define RESTRICT_CHANNELS 396
586 > #define RESTRICTED 397
587 > #define RSA_PRIVATE_KEY_FILE 398
588 > #define RSA_PUBLIC_KEY_FILE 399
589 > #define SSL_CERTIFICATE_FILE 400
590 > #define SSL_DH_PARAM_FILE 401
591 > #define T_SSL_CONNECTION_METHOD 402
592 > #define T_SSLV3 403
593 > #define T_TLSV1 404
594 > #define RESV 405
595 > #define RESV_EXEMPT 406
596 > #define SECONDS 407
597 > #define MINUTES 408
598 > #define HOURS 409
599 > #define DAYS 410
600 > #define WEEKS 411
601 > #define SENDQ 412
602 > #define SEND_PASSWORD 413
603 > #define SERVERHIDE 414
604 > #define SERVERINFO 415
605 > #define IRCD_SID 416
606 > #define TKLINE_EXPIRE_NOTICES 417
607 > #define T_SHARED 418
608 > #define T_CLUSTER 419
609 > #define TYPE 420
610 > #define SHORT_MOTD 421
611 > #define SILENT 422
612 > #define SPOOF 423
613 > #define SPOOF_NOTICE 424
614 > #define STATS_E_DISABLED 425
615 > #define STATS_I_OPER_ONLY 426
616 > #define STATS_K_OPER_ONLY 427
617 > #define STATS_O_OPER_ONLY 428
618 > #define STATS_P_OPER_ONLY 429
619 > #define TBOOL 430
620 > #define TMASKED 431
621 > #define T_REJECT 432
622 > #define TS_MAX_DELTA 433
623 > #define TS_WARN_DELTA 434
624 > #define TWODOTS 435
625 > #define T_ALL 436
626 > #define T_BOTS 437
627 > #define T_SOFTCALLERID 438
628 > #define T_CALLERID 439
629 > #define T_CCONN 440
630 > #define T_CCONN_FULL 441
631 > #define T_SSL_CIPHER_LIST 442
632 > #define T_CLIENT_FLOOD 443
633 > #define T_DEAF 444
634 > #define T_DEBUG 445
635 > #define T_DLINE 446
636 > #define T_DRONE 447
637 > #define T_EXTERNAL 448
638 > #define T_FULL 449
639 > #define T_INVISIBLE 450
640 > #define T_IPV4 451
641 > #define T_IPV6 452
642 > #define T_LOCOPS 453
643 > #define T_MAX_CLIENTS 454
644 > #define T_NCHANGE 455
645 > #define T_OPERWALL 456
646 > #define T_REJ 457
647 > #define T_SERVER 458
648 > #define T_SERVNOTICE 459
649 > #define T_SKILL 460
650 > #define T_SPY 461
651 > #define T_SSL 462
652 > #define T_UMODES 463
653 > #define T_UNAUTH 464
654 > #define T_UNDLINE 465
655 > #define T_UNLIMITED 466
656 > #define T_UNRESV 467
657 > #define T_UNXLINE 468
658 > #define T_GLOBOPS 469
659 > #define T_WALLOP 470
660 > #define T_RESTART 471
661 > #define T_SERVICE 472
662 > #define T_SERVICES_NAME 473
663 > #define T_TIMESTAMP 474
664 > #define THROTTLE_TIME 475
665 > #define TOPICBURST 476
666 > #define TRUE_NO_OPER_FLOOD 477
667 > #define TKLINE 478
668 > #define TXLINE 479
669 > #define TRESV 480
670 > #define UNKLINE 481
671 > #define USER 482
672 > #define USE_EGD 483
673 > #define USE_EXCEPT 484
674 > #define USE_INVEX 485
675 > #define USE_KNOCK 486
676 > #define USE_LOGGING 487
677 > #define USE_WHOIS_ACTUALLY 488
678 > #define VHOST 489
679 > #define VHOST6 490
680 > #define XLINE 491
681 > #define WARN 492
682 > #define WARN_NO_NLINE 493
683 > #define T_SIZE 494
684 > #define T_FILE 495
685  
686  
687  
# Line 728 | Line 690 | unhook_hub_leaf_confs(void)
690   typedef union YYSTYPE
691   {
692  
693 < /* Line 214 of yacc.c  */
694 < #line 132 "ircd_parser.y"
693 > /* Line 293 of yacc.c  */
694 > #line 133 "ircd_parser.y"
695  
696    int number;
697    char *string;
698  
699  
700  
701 < /* Line 214 of yacc.c  */
702 < #line 741 "ircd_parser.c"
701 > /* Line 293 of yacc.c  */
702 > #line 703 "ircd_parser.c"
703   } YYSTYPE;
704   # define YYSTYPE_IS_TRIVIAL 1
705   # define yystype YYSTYPE /* obsolescent; will be withdrawn */
# Line 748 | Line 710 | typedef union YYSTYPE
710   /* Copy the second part of user declarations.  */
711  
712  
713 < /* Line 264 of yacc.c  */
714 < #line 753 "ircd_parser.c"
713 > /* Line 343 of yacc.c  */
714 > #line 715 "ircd_parser.c"
715  
716   #ifdef short
717   # undef short
# Line 852 | Line 814 | YYID (yyi)
814   #    define alloca _alloca
815   #   else
816   #    define YYSTACK_ALLOC alloca
817 < #    if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
817 > #    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
818       || defined __cplusplus || defined _MSC_VER)
819   #     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
820 < #     ifndef _STDLIB_H
821 < #      define _STDLIB_H 1
820 > #     ifndef EXIT_SUCCESS
821 > #      define EXIT_SUCCESS 0
822   #     endif
823   #    endif
824   #   endif
# Line 879 | Line 841 | YYID (yyi)
841   #  ifndef YYSTACK_ALLOC_MAXIMUM
842   #   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
843   #  endif
844 < #  if (defined __cplusplus && ! defined _STDLIB_H \
844 > #  if (defined __cplusplus && ! defined EXIT_SUCCESS \
845         && ! ((defined YYMALLOC || defined malloc) \
846               && (defined YYFREE || defined free)))
847   #   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
848 < #   ifndef _STDLIB_H
849 < #    define _STDLIB_H 1
848 > #   ifndef EXIT_SUCCESS
849 > #    define EXIT_SUCCESS 0
850   #   endif
851   #  endif
852   #  ifndef YYMALLOC
853   #   define YYMALLOC malloc
854 < #   if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
854 > #   if ! defined malloc && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
855       || defined __cplusplus || defined _MSC_VER)
856   void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
857   #   endif
858   #  endif
859   #  ifndef YYFREE
860   #   define YYFREE free
861 < #   if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
861 > #   if ! defined free && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
862       || defined __cplusplus || defined _MSC_VER)
863   void free (void *); /* INFRINGES ON USER NAME SPACE */
864   #   endif
# Line 925 | Line 887 | union yyalloc
887       ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
888        + YYSTACK_GAP_MAXIMUM)
889  
890 < /* Copy COUNT objects from FROM to TO.  The source and destination do
929 <   not overlap.  */
930 < # ifndef YYCOPY
931 < #  if defined __GNUC__ && 1 < __GNUC__
932 < #   define YYCOPY(To, From, Count) \
933 <      __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
934 < #  else
935 < #   define YYCOPY(To, From, Count)              \
936 <      do                                        \
937 <        {                                       \
938 <          YYSIZE_T yyi;                         \
939 <          for (yyi = 0; yyi < (Count); yyi++)   \
940 <            (To)[yyi] = (From)[yyi];            \
941 <        }                                       \
942 <      while (YYID (0))
943 < #  endif
944 < # endif
890 > # define YYCOPY_NEEDED 1
891  
892   /* Relocate STACK from its old location to the new one.  The
893     local variables YYSIZE and YYSTACKSIZE give the old and new number of
# Line 961 | Line 907 | union yyalloc
907  
908   #endif
909  
910 + #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
911 + /* Copy COUNT objects from FROM to TO.  The source and destination do
912 +   not overlap.  */
913 + # ifndef YYCOPY
914 + #  if defined __GNUC__ && 1 < __GNUC__
915 + #   define YYCOPY(To, From, Count) \
916 +      __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
917 + #  else
918 + #   define YYCOPY(To, From, Count)              \
919 +      do                                        \
920 +        {                                       \
921 +          YYSIZE_T yyi;                         \
922 +          for (yyi = 0; yyi < (Count); yyi++)   \
923 +            (To)[yyi] = (From)[yyi];            \
924 +        }                                       \
925 +      while (YYID (0))
926 + #  endif
927 + # endif
928 + #endif /* !YYCOPY_NEEDED */
929 +
930   /* YYFINAL -- State number of the termination state.  */
931   #define YYFINAL  2
932   /* YYLAST -- Last index in YYTABLE.  */
933 < #define YYLAST   1258
933 > #define YYLAST   1228
934  
935   /* YYNTOKENS -- Number of terminals.  */
936 < #define YYNTOKENS  265
936 > #define YYNTOKENS  246
937   /* YYNNTS -- Number of nonterminals.  */
938 < #define YYNNTS  318
938 > #define YYNNTS  304
939   /* YYNRULES -- Number of rules.  */
940 < #define YYNRULES  687
940 > #define YYNRULES  665
941   /* YYNRULES -- Number of states.  */
942 < #define YYNSTATES  1354
942 > #define YYNSTATES  1307
943  
944   /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
945   #define YYUNDEFTOK  2
946 < #define YYMAXUTOK   514
946 > #define YYMAXUTOK   495
947  
948   #define YYTRANSLATE(YYX)                                                \
949    ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
950  
951   /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */
952 < static const yytype_uint16 yytranslate[] =
952 > static const yytype_uint8 yytranslate[] =
953   {
954         0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
955         2,     2,     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,   264,     2,     2,     2,     2,     2,
959 <       2,     2,     2,     2,     2,     2,     2,     2,     2,   260,
960 <       2,   263,     2,     2,     2,     2,     2,     2,     2,     2,
958 >       2,     2,     2,     2,   245,     2,     2,     2,     2,     2,
959 >       2,     2,     2,     2,     2,     2,     2,     2,     2,   241,
960 >       2,   244,     2,     2,     2,     2,     2,     2,     2,     2,
961         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
962         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
963         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
964         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
965         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
966 <       2,     2,     2,   262,     2,   261,     2,     2,     2,     2,
966 >       2,     2,     2,   243,     2,   242,     2,     2,     2,     2,
967         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
968         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
969         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
# Line 1034 | Line 1000 | static const yytype_uint16 yytranslate[]
1000       205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
1001       215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
1002       225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
1003 <     235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
1038 <     245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
1039 <     255,   256,   257,   258,   259
1003 >     235,   236,   237,   238,   239,   240
1004   };
1005  
1006   #if YYDEBUG
# Line 1046 | Line 1010 | static const yytype_uint16 yyprhs[] =
1010   {
1011         0,     0,     3,     4,     7,     9,    11,    13,    15,    17,
1012        19,    21,    23,    25,    27,    29,    31,    33,    35,    37,
1013 <      39,    41,    43,    45,    47,    50,    53,    54,    56,    59,
1014 <      63,    67,    71,    75,    79,    80,    82,    85,    89,    93,
1015 <      97,   103,   106,   108,   110,   112,   115,   120,   125,   131,
1016 <     134,   136,   138,   140,   142,   144,   146,   148,   150,   152,
1017 <     154,   156,   158,   160,   163,   164,   170,   174,   176,   178,
1018 <     180,   185,   190,   195,   200,   205,   210,   215,   220,   225,
1019 <     230,   235,   241,   244,   246,   248,   250,   252,   255,   260,
1020 <     265,   270,   276,   279,   281,   283,   285,   287,   289,   291,
1021 <     293,   295,   297,   299,   301,   303,   305,   308,   313,   318,
1022 <     323,   328,   333,   338,   343,   348,   353,   358,   363,   368,
1023 <     373,   378,   383,   388,   393,   398,   399,   407,   408,   410,
1024 <     413,   415,   417,   419,   421,   423,   425,   427,   429,   431,
1025 <     434,   439,   441,   446,   451,   456,   461,   466,   467,   473,
1026 <     477,   479,   481,   483,   485,   487,   489,   491,   493,   495,
1027 <     497,   499,   501,   503,   505,   507,   509,   511,   513,   515,
1028 <     517,   518,   524,   528,   530,   531,   535,   536,   539,   541,
1029 <     543,   545,   547,   549,   551,   553,   555,   557,   559,   561,
1030 <     563,   565,   567,   569,   571,   572,   580,   581,   583,   586,
1031 <     588,   590,   592,   594,   596,   598,   600,   602,   604,   606,
1032 <     608,   610,   612,   614,   617,   622,   624,   629,   634,   639,
1033 <     644,   649,   654,   659,   664,   669,   674,   679,   684,   685,
1034 <     692,   693,   699,   703,   705,   707,   709,   711,   714,   716,
1035 <     718,   720,   722,   724,   727,   728,   734,   738,   740,   742,
1036 <     746,   751,   756,   757,   764,   767,   769,   771,   773,   775,
1037 <     777,   779,   781,   783,   785,   788,   793,   798,   803,   808,
1038 <     809,   815,   819,   821,   822,   826,   827,   830,   832,   834,
1039 <     836,   838,   840,   842,   844,   846,   848,   850,   855,   860,
1040 <     865,   866,   873,   876,   878,   880,   882,   884,   887,   892,
1041 <     897,   902,   903,   910,   913,   915,   917,   919,   921,   924,
1042 <     929,   934,   935,   941,   945,   947,   949,   951,   953,   955,
1043 <     957,   959,   961,   963,   965,   967,   969,   970,   977,   980,
1044 <     982,   984,   986,   989,   994,   995,  1001,  1005,  1007,  1009,
1045 <    1011,  1013,  1015,  1017,  1019,  1021,  1023,  1025,  1027,  1029,
1046 <    1030,  1038,  1039,  1041,  1044,  1046,  1048,  1050,  1052,  1054,
1047 <    1056,  1058,  1060,  1062,  1064,  1066,  1068,  1070,  1072,  1074,
1048 <    1077,  1082,  1084,  1089,  1094,  1099,  1104,  1109,  1114,  1119,
1049 <    1120,  1126,  1130,  1132,  1133,  1137,  1138,  1141,  1143,  1145,
1050 <    1147,  1149,  1151,  1156,  1161,  1166,  1171,  1176,  1181,  1182,
1051 <    1189,  1190,  1196,  1200,  1202,  1204,  1207,  1209,  1211,  1213,
1052 <    1215,  1217,  1222,  1227,  1228,  1235,  1238,  1240,  1242,  1244,
1053 <    1246,  1251,  1256,  1262,  1265,  1267,  1269,  1271,  1276,  1277,
1054 <    1284,  1285,  1291,  1295,  1297,  1299,  1302,  1304,  1306,  1308,
1055 <    1310,  1312,  1317,  1322,  1328,  1331,  1333,  1335,  1337,  1339,
1013 >      39,    41,    43,    45,    47,    49,    52,    55,    56,    58,
1014 >      61,    65,    69,    73,    77,    81,    82,    84,    87,    91,
1015 >      95,    99,   105,   108,   110,   112,   114,   117,   122,   127,
1016 >     133,   136,   138,   140,   142,   144,   146,   148,   150,   152,
1017 >     154,   156,   158,   160,   162,   164,   166,   169,   170,   176,
1018 >     180,   182,   184,   186,   191,   196,   201,   206,   211,   216,
1019 >     221,   226,   231,   236,   241,   246,   251,   257,   260,   262,
1020 >     264,   266,   268,   271,   276,   281,   286,   292,   295,   297,
1021 >     299,   301,   303,   306,   311,   316,   317,   324,   327,   329,
1022 >     331,   333,   335,   338,   343,   348,   353,   354,   360,   364,
1023 >     366,   368,   370,   372,   374,   376,   378,   380,   381,   388,
1024 >     391,   393,   395,   397,   399,   401,   403,   405,   407,   409,
1025 >     412,   417,   422,   427,   432,   437,   442,   443,   449,   453,
1026 >     455,   457,   459,   461,   463,   465,   467,   469,   471,   473,
1027 >     475,   477,   479,   481,   483,   485,   487,   489,   491,   493,
1028 >     495,   496,   502,   506,   508,   510,   512,   514,   516,   518,
1029 >     520,   522,   524,   526,   528,   530,   532,   534,   536,   538,
1030 >     540,   542,   544,   545,   552,   555,   557,   559,   561,   563,
1031 >     565,   567,   569,   571,   573,   575,   577,   579,   581,   583,
1032 >     586,   591,   596,   601,   606,   611,   616,   621,   626,   631,
1033 >     636,   641,   646,   651,   652,   659,   660,   666,   670,   672,
1034 >     674,   676,   678,   681,   683,   685,   687,   689,   691,   694,
1035 >     695,   701,   705,   707,   709,   713,   718,   723,   724,   731,
1036 >     734,   736,   738,   740,   742,   744,   746,   748,   750,   752,
1037 >     755,   760,   765,   770,   775,   776,   782,   786,   788,   790,
1038 >     792,   794,   796,   798,   800,   802,   804,   806,   811,   816,
1039 >     821,   822,   829,   832,   834,   836,   838,   840,   843,   848,
1040 >     853,   858,   864,   867,   869,   871,   873,   878,   879,   886,
1041 >     889,   891,   893,   895,   897,   900,   905,   910,   911,   917,
1042 >     921,   923,   925,   927,   929,   931,   933,   935,   937,   939,
1043 >     941,   943,   944,   951,   954,   956,   958,   960,   963,   968,
1044 >     969,   975,   979,   981,   983,   985,   987,   989,   991,   993,
1045 >     995,   997,   999,  1001,  1002,  1009,  1012,  1014,  1016,  1018,
1046 >    1020,  1022,  1024,  1026,  1028,  1030,  1032,  1034,  1036,  1038,
1047 >    1040,  1043,  1048,  1053,  1058,  1063,  1068,  1073,  1078,  1083,
1048 >    1084,  1090,  1094,  1096,  1098,  1100,  1102,  1104,  1109,  1114,
1049 >    1119,  1124,  1129,  1130,  1137,  1138,  1144,  1148,  1150,  1152,
1050 >    1155,  1157,  1159,  1161,  1163,  1165,  1170,  1175,  1176,  1183,
1051 >    1186,  1188,  1190,  1192,  1194,  1199,  1204,  1210,  1213,  1215,
1052 >    1217,  1219,  1224,  1225,  1232,  1233,  1239,  1243,  1245,  1247,
1053 >    1250,  1252,  1254,  1256,  1258,  1260,  1265,  1270,  1276,  1279,
1054 >    1281,  1283,  1285,  1287,  1289,  1291,  1293,  1295,  1297,  1299,
1055 >    1301,  1303,  1305,  1307,  1309,  1311,  1313,  1315,  1317,  1319,
1056 >    1321,  1323,  1325,  1327,  1329,  1331,  1333,  1335,  1337,  1339,
1057      1341,  1343,  1345,  1347,  1349,  1351,  1353,  1355,  1357,  1359,
1058      1361,  1363,  1365,  1367,  1369,  1371,  1373,  1375,  1377,  1379,
1059 <    1381,  1383,  1385,  1387,  1389,  1391,  1393,  1395,  1397,  1399,
1060 <    1401,  1403,  1405,  1407,  1409,  1411,  1413,  1415,  1417,  1419,
1061 <    1421,  1423,  1425,  1427,  1429,  1431,  1433,  1435,  1437,  1439,
1062 <    1441,  1443,  1445,  1450,  1455,  1460,  1465,  1470,  1475,  1480,
1063 <    1485,  1490,  1495,  1500,  1505,  1510,  1515,  1520,  1525,  1530,
1064 <    1535,  1540,  1545,  1550,  1555,  1560,  1565,  1570,  1575,  1580,
1065 <    1585,  1590,  1595,  1600,  1605,  1610,  1615,  1620,  1625,  1630,
1066 <    1635,  1640,  1645,  1650,  1655,  1660,  1665,  1670,  1675,  1680,
1067 <    1685,  1690,  1695,  1700,  1701,  1707,  1711,  1713,  1715,  1717,
1068 <    1719,  1721,  1723,  1725,  1727,  1729,  1731,  1733,  1735,  1737,
1069 <    1739,  1741,  1743,  1745,  1747,  1749,  1751,  1752,  1758,  1762,
1070 <    1764,  1766,  1768,  1770,  1772,  1774,  1776,  1778,  1780,  1782,
1071 <    1784,  1786,  1788,  1790,  1792,  1794,  1796,  1798,  1800,  1802,
1072 <    1807,  1812,  1817,  1822,  1823,  1830,  1833,  1835,  1837,  1839,
1073 <    1841,  1843,  1845,  1847,  1849,  1854,  1859,  1860,  1866,  1870,
1074 <    1872,  1874,  1876,  1881,  1886,  1887,  1893,  1897,  1899,  1901,
1075 <    1903,  1909,  1912,  1914,  1916,  1918,  1920,  1922,  1924,  1926,
1076 <    1928,  1930,  1932,  1934,  1936,  1938,  1940,  1942,  1944,  1946,
1077 <    1948,  1950,  1952,  1957,  1962,  1967,  1972,  1977,  1982,  1987,
1113 <    1992,  1997,  2002,  2007,  2012,  2017,  2022,  2027,  2032,  2037,
1114 <    2042,  2048,  2051,  2053,  2055,  2057,  2059,  2061,  2063,  2065,
1115 <    2067,  2069,  2074,  2079,  2084,  2089,  2094,  2099
1059 >    1381,  1383,  1385,  1390,  1395,  1400,  1405,  1410,  1415,  1420,
1060 >    1425,  1430,  1435,  1440,  1445,  1450,  1455,  1460,  1465,  1470,
1061 >    1475,  1480,  1485,  1490,  1495,  1500,  1505,  1510,  1515,  1520,
1062 >    1525,  1530,  1535,  1540,  1545,  1550,  1555,  1560,  1565,  1570,
1063 >    1575,  1580,  1585,  1590,  1595,  1600,  1605,  1610,  1615,  1620,
1064 >    1621,  1627,  1631,  1633,  1635,  1637,  1639,  1641,  1643,  1645,
1065 >    1647,  1649,  1651,  1653,  1655,  1657,  1659,  1661,  1663,  1665,
1066 >    1667,  1669,  1671,  1673,  1674,  1680,  1684,  1686,  1688,  1690,
1067 >    1692,  1694,  1696,  1698,  1700,  1702,  1704,  1706,  1708,  1710,
1068 >    1712,  1714,  1716,  1718,  1720,  1722,  1724,  1726,  1731,  1736,
1069 >    1741,  1746,  1747,  1754,  1757,  1759,  1761,  1763,  1765,  1767,
1070 >    1769,  1771,  1773,  1778,  1783,  1784,  1790,  1794,  1796,  1798,
1071 >    1800,  1805,  1810,  1811,  1817,  1821,  1823,  1825,  1827,  1833,
1072 >    1836,  1838,  1840,  1842,  1844,  1846,  1848,  1850,  1852,  1854,
1073 >    1856,  1858,  1860,  1862,  1864,  1866,  1868,  1870,  1872,  1874,
1074 >    1876,  1881,  1886,  1891,  1896,  1901,  1906,  1911,  1916,  1921,
1075 >    1926,  1931,  1936,  1941,  1946,  1951,  1956,  1961,  1966,  1972,
1076 >    1975,  1977,  1979,  1981,  1983,  1985,  1987,  1989,  1991,  1993,
1077 >    1998,  2003,  2008,  2013,  2018,  2023
1078   };
1079  
1080   /* YYRHS -- A `-1'-separated list of the rules' RHS.  */
1081   static const yytype_int16 yyrhs[] =
1082   {
1083 <     266,     0,    -1,    -1,   266,   267,    -1,   295,    -1,   301,
1084 <      -1,   316,    -1,   552,    -1,   339,    -1,   358,    -1,   372,
1085 <      -1,   277,    -1,   573,    -1,   390,    -1,   397,    -1,   407,
1086 <      -1,   416,    -1,   442,    -1,   452,    -1,   458,    -1,   472,
1087 <      -1,   536,    -1,   462,    -1,   272,    -1,     1,   260,    -1,
1088 <       1,   261,    -1,    -1,   269,    -1,   131,   268,    -1,   131,
1089 <     173,   268,    -1,   131,   174,   268,    -1,   131,   175,   268,
1090 <      -1,   131,   176,   268,    -1,   131,   177,   268,    -1,    -1,
1091 <     271,    -1,   131,   270,    -1,   131,    14,   270,    -1,   131,
1092 <      15,   270,    -1,   131,    16,   270,    -1,   119,   262,   273,
1093 <     261,   260,    -1,   273,   274,    -1,   274,    -1,   275,    -1,
1094 <     276,    -1,     1,   260,    -1,   118,   263,   153,   260,    -1,
1095 <     148,   263,   153,   260,    -1,   181,   262,   278,   261,   260,
1096 <      -1,   278,   279,    -1,   279,    -1,   286,    -1,   291,    -1,
1097 <     294,    -1,   288,    -1,   289,    -1,   290,    -1,   293,    -1,
1098 <     285,    -1,   292,    -1,   287,    -1,   284,    -1,   280,    -1,
1099 <       1,   260,    -1,    -1,   168,   281,   263,   282,   260,    -1,
1100 <     282,   264,   283,    -1,   283,    -1,   169,    -1,   170,    -1,
1101 <     167,   263,   153,   260,    -1,   165,   263,   153,   260,    -1,
1102 <     120,   263,   153,   260,    -1,   183,   263,   153,   260,    -1,
1103 <      37,   263,   153,   260,    -1,   123,   263,   153,   260,    -1,
1104 <     122,   263,   153,   260,    -1,   255,   263,   153,   260,    -1,
1105 <     256,   263,   153,   260,    -1,   227,   263,   131,   260,    -1,
1106 <      84,   263,   197,   260,    -1,     5,   262,   296,   261,   260,
1107 <      -1,   296,   297,    -1,   297,    -1,   298,    -1,   300,    -1,
1108 <     299,    -1,     1,   260,    -1,   120,   263,   153,   260,    -1,
1109 <      47,   263,   153,   260,    -1,    37,   263,   153,   260,    -1,
1110 <     102,   262,   302,   261,   260,    -1,   302,   303,    -1,   303,
1111 <      -1,   304,    -1,   305,    -1,   314,    -1,   315,    -1,   306,
1112 <      -1,   308,    -1,   310,    -1,   311,    -1,   313,    -1,   309,
1113 <      -1,   312,    -1,   307,    -1,     1,   260,    -1,   219,   263,
1114 <     153,   260,    -1,   138,   263,   153,   260,    -1,    62,   263,
1115 <     153,   260,    -1,    55,   263,   153,   260,    -1,    60,   263,
1116 <     153,   260,    -1,    61,   263,   153,   260,    -1,    58,   263,
1117 <     153,   260,    -1,    57,   263,   153,   260,    -1,    59,   263,
1118 <     153,   260,    -1,    56,   263,   153,   260,    -1,   103,   263,
1119 <     220,   260,    -1,   103,   263,   222,   260,    -1,   103,   263,
1120 <     226,   260,    -1,   103,   263,   224,   260,    -1,   103,   263,
1121 <     225,   260,    -1,   103,   263,   223,   260,    -1,   103,   263,
1122 <     221,   260,    -1,   253,   263,   197,   260,    -1,    -1,   136,
1123 <     317,   318,   262,   319,   261,   260,    -1,    -1,   322,    -1,
1124 <     319,   320,    -1,   320,    -1,   321,    -1,   323,    -1,   324,
1125 <      -1,   328,    -1,   327,    -1,   325,    -1,   326,    -1,   332,
1126 <      -1,     1,   260,    -1,   120,   263,   153,   260,    -1,   153,
1127 <      -1,   248,   263,   153,   260,    -1,   147,   263,   153,   260,
1128 <      -1,    49,   263,   197,   260,    -1,   166,   263,   153,   260,
1129 <      -1,    26,   263,   153,   260,    -1,    -1,   236,   329,   263,
1130 <     330,   260,    -1,   330,   264,   331,    -1,   331,    -1,   204,
1131 <      -1,   207,    -1,   208,    -1,   210,    -1,   211,    -1,   214,
1132 <      -1,   233,    -1,   228,    -1,   230,    -1,   237,    -1,   234,
1133 <      -1,   213,    -1,   229,    -1,   232,    -1,   215,    -1,   240,
1134 <      -1,   205,    -1,   206,    -1,   218,    -1,    -1,    53,   333,
1135 <     263,   334,   260,    -1,   334,   264,   335,    -1,   335,    -1,
1136 <      -1,   130,   336,   338,    -1,    -1,   337,   338,    -1,    72,
1137 <      -1,   161,    -1,    92,    -1,   247,    -1,   257,    -1,    65,
1138 <      -1,    38,    -1,   159,    -1,     5,    -1,    77,    -1,   125,
1139 <      -1,   229,    -1,   141,    -1,    79,    -1,   162,    -1,    49,
1140 <      -1,    -1,    26,   340,   341,   262,   342,   261,   260,    -1,
1141 <      -1,   345,    -1,   342,   343,    -1,   343,    -1,   344,    -1,
1142 <     355,    -1,   356,    -1,   346,    -1,   347,    -1,   357,    -1,
1143 <     348,    -1,   349,    -1,   350,    -1,   351,    -1,   352,    -1,
1144 <     353,    -1,   354,    -1,     1,   260,    -1,   120,   263,   153,
1145 <     260,    -1,   153,    -1,   150,   263,   269,   260,    -1,   151,
1146 <     263,   269,   260,    -1,   134,   263,   131,   260,    -1,    30,
1147 <     263,   269,   260,    -1,   112,   263,   131,   260,    -1,   107,
1148 <     263,   131,   260,    -1,   109,   263,   131,   260,    -1,   108,
1149 <     263,   131,   260,    -1,   178,   263,   271,   260,    -1,    23,
1150 <     263,   131,   260,    -1,    24,   263,   131,   260,    -1,   133,
1151 <     263,   131,   260,    -1,    -1,   100,   359,   262,   364,   261,
1152 <     260,    -1,    -1,    53,   361,   263,   362,   260,    -1,   362,
1153 <     264,   363,    -1,   363,    -1,   235,    -1,    76,    -1,   231,
1154 <      -1,   364,   365,    -1,   365,    -1,   366,    -1,   360,    -1,
1155 <     370,    -1,   371,    -1,     1,   260,    -1,    -1,   152,   263,
1156 <     368,   367,   260,    -1,   368,   264,   369,    -1,   369,    -1,
1157 <     131,    -1,   131,   202,   131,    -1,    89,   263,   153,   260,
1158 <      -1,    83,   263,   153,   260,    -1,    -1,    73,   373,   262,
1159 <     374,   261,   260,    -1,   374,   375,    -1,   375,    -1,   376,
1160 <      -1,   377,    -1,   378,    -1,   380,    -1,   387,    -1,   388,
1161 <      -1,   389,    -1,   379,    -1,     1,   260,    -1,   248,   263,
1162 <     153,   260,    -1,   147,   263,   153,   260,    -1,    26,   263,
1163 <     153,   260,    -1,    49,   263,   197,   260,    -1,    -1,    53,
1164 <     381,   263,   382,   260,    -1,   382,   264,   383,    -1,   383,
1165 <      -1,    -1,   130,   384,   386,    -1,    -1,   385,   386,    -1,
1166 <     191,    -1,    50,    -1,    93,    -1,    74,    -1,    20,    -1,
1167 <      21,    -1,   129,    -1,    67,    -1,   172,    -1,   121,    -1,
1168 <     190,   263,   153,   260,    -1,   157,   263,   153,   260,    -1,
1169 <     156,   263,   131,   260,    -1,    -1,   171,   391,   262,   392,
1170 <     261,   260,    -1,   392,   393,    -1,   393,    -1,   394,    -1,
1171 <     395,    -1,   396,    -1,     1,   260,    -1,   155,   263,   153,
1172 <     260,    -1,    22,   263,   153,   260,    -1,   124,   263,   153,
1173 <     260,    -1,    -1,   185,   398,   262,   399,   261,   260,    -1,
1174 <     399,   400,    -1,   400,    -1,   401,    -1,   402,    -1,   403,
1175 <      -1,     1,   260,    -1,   120,   263,   153,   260,    -1,   248,
1176 <     263,   153,   260,    -1,    -1,   187,   404,   263,   405,   260,
1177 <      -1,   405,   264,   406,    -1,   406,    -1,    92,    -1,   244,
1178 <      -1,   247,    -1,   257,    -1,   245,    -1,   239,    -1,   171,
1179 <      -1,   246,    -1,   238,    -1,   218,    -1,   203,    -1,    -1,
1180 <     186,   408,   262,   409,   261,   260,    -1,   409,   410,    -1,
1181 <     410,    -1,   411,    -1,   412,    -1,     1,   260,    -1,   120,
1182 <     263,   153,   260,    -1,    -1,   187,   413,   263,   414,   260,
1183 <      -1,   414,   264,   415,    -1,   415,    -1,    92,    -1,   244,
1184 <      -1,   247,    -1,   257,    -1,   245,    -1,   239,    -1,   171,
1185 <      -1,   246,    -1,   238,    -1,   218,    -1,   203,    -1,    -1,
1186 <      29,   417,   418,   262,   419,   261,   260,    -1,    -1,   422,
1187 <      -1,   419,   420,    -1,   420,    -1,   421,    -1,   423,    -1,
1188 <     424,    -1,   425,    -1,   426,    -1,   428,    -1,   427,    -1,
1189 <     429,    -1,   438,    -1,   439,    -1,   440,    -1,   437,    -1,
1190 <     436,    -1,   441,    -1,     1,   260,    -1,   120,   263,   153,
1191 <     260,    -1,   153,    -1,    83,   263,   153,   260,    -1,   255,
1192 <     263,   153,   260,    -1,   179,   263,   153,   260,    -1,     3,
1193 <     263,   153,   260,    -1,   152,   263,   131,   260,    -1,     6,
1194 <     263,   216,   260,    -1,     6,   263,   217,   260,    -1,    -1,
1195 <      53,   430,   263,   431,   260,    -1,   431,   264,   432,    -1,
1196 <     432,    -1,    -1,   130,   433,   435,    -1,    -1,   434,   435,
1197 <      -1,    27,    -1,    31,    -1,    10,    -1,    12,    -1,   242,
1198 <      -1,   166,   263,   153,   260,    -1,    49,   263,   197,   260,
1199 <      -1,    85,   263,   153,   260,    -1,    98,   263,   153,   260,
1200 <      -1,    26,   263,   153,   260,    -1,    25,   263,   153,   260,
1201 <      -1,    -1,    90,   443,   262,   448,   261,   260,    -1,    -1,
1202 <     187,   445,   263,   446,   260,    -1,   446,   264,   447,    -1,
1203 <     447,    -1,   158,    -1,   448,   449,    -1,   449,    -1,   450,
1204 <      -1,   451,    -1,   444,    -1,     1,    -1,   248,   263,   153,
1205 <     260,    -1,   155,   263,   153,   260,    -1,    -1,    36,   453,
1206 <     262,   454,   261,   260,    -1,   454,   455,    -1,   455,    -1,
1207 <     456,    -1,   457,    -1,     1,    -1,    89,   263,   153,   260,
1208 <      -1,   155,   263,   153,   260,    -1,    51,   262,   459,   261,
1209 <     260,    -1,   459,   460,    -1,   460,    -1,   461,    -1,     1,
1210 <      -1,    89,   263,   153,   260,    -1,    -1,    63,   463,   262,
1211 <     468,   261,   260,    -1,    -1,   187,   465,   263,   466,   260,
1212 <      -1,   466,   264,   467,    -1,   467,    -1,   158,    -1,   468,
1213 <     469,    -1,   469,    -1,   470,    -1,   471,    -1,   464,    -1,
1214 <       1,    -1,   120,   263,   153,   260,    -1,   155,   263,   153,
1215 <     260,    -1,    64,   262,   473,   261,   260,    -1,   473,   474,
1216 <      -1,   474,    -1,   483,    -1,   484,    -1,   486,    -1,   487,
1217 <      -1,   488,    -1,   489,    -1,   490,    -1,   491,    -1,   492,
1218 <      -1,   493,    -1,   482,    -1,   495,    -1,   496,    -1,   497,
1219 <      -1,   498,    -1,   514,    -1,   500,    -1,   502,    -1,   504,
1220 <      -1,   503,    -1,   507,    -1,   501,    -1,   508,    -1,   509,
1221 <      -1,   510,    -1,   511,    -1,   513,    -1,   512,    -1,   528,
1222 <      -1,   515,    -1,   519,    -1,   520,    -1,   524,    -1,   505,
1223 <      -1,   506,    -1,   534,    -1,   532,    -1,   533,    -1,   516,
1224 <      -1,   485,    -1,   517,    -1,   518,    -1,   535,    -1,   523,
1225 <      -1,   494,    -1,   521,    -1,   522,    -1,   478,    -1,   481,
1226 <      -1,   476,    -1,   477,    -1,   479,    -1,   480,    -1,   499,
1227 <      -1,   475,    -1,     1,    -1,   114,   263,   131,   260,    -1,
1228 <      70,   263,   131,   260,    -1,    71,   263,   131,   260,    -1,
1229 <      12,   263,   197,   260,    -1,   254,   263,   197,   260,    -1,
1230 <     160,   263,   269,   260,    -1,   184,   263,   197,   260,    -1,
1231 <      91,   263,   269,   260,    -1,    82,   263,   197,   260,    -1,
1232 <      87,   263,   197,   260,    -1,    43,   263,   197,   260,    -1,
1233 <      52,   263,   197,   260,    -1,     8,   263,   197,   260,    -1,
1234 <     111,   263,   269,   260,    -1,   110,   263,   131,   260,    -1,
1235 <     104,   263,   131,   260,    -1,     9,   263,   269,   260,    -1,
1236 <     201,   263,   269,   260,    -1,   200,   263,   269,   260,    -1,
1237 <      75,   263,   131,   260,    -1,    95,   263,   197,   260,    -1,
1238 <      94,   263,   153,   260,    -1,    88,   263,   197,   260,    -1,
1239 <     259,   263,   197,   260,    -1,   192,   263,   197,   260,    -1,
1240 <     195,   263,   197,   260,    -1,   196,   263,   197,   260,    -1,
1241 <     194,   263,   197,   260,    -1,   194,   263,   198,   260,    -1,
1242 <     193,   263,   197,   260,    -1,   193,   263,   198,   260,    -1,
1243 <     145,   263,   269,   260,    -1,    19,   263,   269,   260,    -1,
1244 <     137,   263,   197,   260,    -1,   146,   263,   269,   260,    -1,
1245 <     188,   263,   197,   260,    -1,   128,   263,   197,   260,    -1,
1246 <     243,   263,   197,   260,    -1,   140,   263,   197,   260,    -1,
1247 <     115,   263,   153,   260,    -1,    86,   263,   269,   260,    -1,
1248 <      44,   263,   131,   260,    -1,   113,   263,   131,   260,    -1,
1249 <     182,   263,   153,   260,    -1,    32,   263,   153,   260,    -1,
1250 <      28,   263,   131,   260,    -1,   249,   263,   197,   260,    -1,
1251 <      46,   263,   153,   260,    -1,   149,   263,   197,   260,    -1,
1252 <      39,   263,   197,   260,    -1,   241,   263,   269,   260,    -1,
1253 <      -1,   142,   525,   263,   526,   260,    -1,   526,   264,   527,
1254 <      -1,   527,    -1,   204,    -1,   207,    -1,   208,    -1,   210,
1255 <      -1,   211,    -1,   214,    -1,   233,    -1,   228,    -1,   230,
1256 <      -1,   237,    -1,   234,    -1,   213,    -1,   229,    -1,   232,
1257 <      -1,   215,    -1,   240,    -1,   205,    -1,   206,    -1,   218,
1258 <      -1,    -1,   139,   529,   263,   530,   260,    -1,   530,   264,
1259 <     531,    -1,   531,    -1,   204,    -1,   207,    -1,   208,    -1,
1260 <     210,    -1,   211,    -1,   214,    -1,   233,    -1,   228,    -1,
1261 <     230,    -1,   237,    -1,   234,    -1,   213,    -1,   229,    -1,
1262 <     232,    -1,   215,    -1,   240,    -1,   205,    -1,   206,    -1,
1263 <     218,    -1,   116,   263,   131,   260,    -1,   117,   263,   131,
1264 <     260,    -1,    33,   263,   131,   260,    -1,   209,   263,   271,
1265 <     260,    -1,    -1,    66,   537,   262,   538,   261,   260,    -1,
1266 <     538,   539,    -1,   539,    -1,   540,    -1,   541,    -1,   542,
1267 <      -1,   546,    -1,   547,    -1,   548,    -1,     1,    -1,    48,
1268 <     263,   197,   260,    -1,    45,   263,   269,   260,    -1,    -1,
1269 <     102,   543,   263,   544,   260,    -1,   544,   264,   545,    -1,
1270 <     545,    -1,   199,    -1,    11,    -1,   248,   263,   153,   260,
1271 <      -1,   120,   263,   153,   260,    -1,    -1,     4,   549,   263,
1272 <     550,   260,    -1,   550,   264,   551,    -1,   551,    -1,   199,
1273 <      -1,    11,    -1,    22,   262,   553,   261,   260,    -1,   553,
1274 <     554,    -1,   554,    -1,   557,    -1,   558,    -1,   559,    -1,
1275 <     560,    -1,   565,    -1,   561,    -1,   562,    -1,   563,    -1,
1276 <     564,    -1,   566,    -1,   567,    -1,   568,    -1,   556,    -1,
1277 <     569,    -1,   570,    -1,   571,    -1,   572,    -1,   555,    -1,
1278 <       1,    -1,    40,   263,   197,   260,    -1,   163,   263,   197,
1279 <     260,    -1,    42,   263,   197,   260,    -1,   250,   263,   197,
1280 <     260,    -1,   251,   263,   197,   260,    -1,   252,   263,   197,
1281 <     260,    -1,    96,   263,   269,   260,    -1,    97,   263,   269,
1282 <     260,    -1,   106,   263,   131,   260,    -1,   154,   263,   197,
1283 <     260,    -1,   105,   263,   131,   260,    -1,    35,   263,   131,
1284 <     260,    -1,    34,   263,   131,   260,    -1,   126,   263,   197,
1285 <     260,    -1,   127,   263,   197,   260,    -1,    13,   263,   197,
1324 <     260,    -1,   143,   263,   131,   260,    -1,   144,   263,   269,
1325 <     260,    -1,   180,   262,   574,   261,   260,    -1,   574,   575,
1326 <      -1,   575,    -1,   576,    -1,   577,    -1,   579,    -1,   581,
1327 <      -1,   580,    -1,   578,    -1,   582,    -1,     1,    -1,    54,
1328 <     263,   197,   260,    -1,    81,   263,   197,   260,    -1,    78,
1329 <     263,   153,   260,    -1,    99,   263,   269,   260,    -1,    76,
1330 <     263,   197,   260,    -1,    41,   263,   197,   260,    -1,    80,
1331 <     263,   197,   260,    -1
1083 >     247,     0,    -1,    -1,   247,   248,    -1,   278,    -1,   284,
1084 >      -1,   299,    -1,   519,    -1,   317,    -1,   334,    -1,   348,
1085 >      -1,   258,    -1,   540,    -1,   363,    -1,   370,    -1,   374,
1086 >      -1,   384,    -1,   393,    -1,   413,    -1,   423,    -1,   429,
1087 >      -1,   443,    -1,   503,    -1,   433,    -1,   253,    -1,     1,
1088 >     241,    -1,     1,   242,    -1,    -1,   250,    -1,   110,   249,
1089 >      -1,   110,   152,   249,    -1,   110,   153,   249,    -1,   110,
1090 >     154,   249,    -1,   110,   155,   249,    -1,   110,   156,   249,
1091 >      -1,    -1,   252,    -1,   110,   251,    -1,   110,    14,   251,
1092 >      -1,   110,    15,   251,    -1,   110,    16,   251,    -1,    99,
1093 >     243,   254,   242,   241,    -1,   254,   255,    -1,   255,    -1,
1094 >     256,    -1,   257,    -1,     1,   241,    -1,    98,   244,   131,
1095 >     241,    -1,   126,   244,   131,   241,    -1,   160,   243,   259,
1096 >     242,   241,    -1,   259,   260,    -1,   260,    -1,   269,    -1,
1097 >     274,    -1,   277,    -1,   271,    -1,   272,    -1,   273,    -1,
1098 >     276,    -1,   267,    -1,   266,    -1,   275,    -1,   270,    -1,
1099 >     265,    -1,   261,    -1,   268,    -1,     1,   241,    -1,    -1,
1100 >     147,   262,   244,   263,   241,    -1,   263,   245,   264,    -1,
1101 >     264,    -1,   148,    -1,   149,    -1,   145,   244,   131,   241,
1102 >      -1,   143,   244,   131,   241,    -1,   146,   244,   131,   241,
1103 >      -1,   187,   244,   131,   241,    -1,   100,   244,   131,   241,
1104 >      -1,   161,   244,   131,   241,    -1,    31,   244,   131,   241,
1105 >      -1,   103,   244,   131,   241,    -1,   102,   244,   131,   241,
1106 >      -1,   234,   244,   131,   241,    -1,   235,   244,   131,   241,
1107 >      -1,   199,   244,   110,   241,    -1,    67,   244,   175,   241,
1108 >      -1,     5,   243,   279,   242,   241,    -1,   279,   280,    -1,
1109 >     280,    -1,   281,    -1,   283,    -1,   282,    -1,     1,   241,
1110 >      -1,   100,   244,   131,   241,    -1,    41,   244,   131,   241,
1111 >      -1,    31,   244,   131,   241,    -1,    83,   243,   285,   242,
1112 >     241,    -1,   285,   286,    -1,   286,    -1,   287,    -1,   288,
1113 >      -1,   289,    -1,     1,   241,    -1,   232,   244,   175,   241,
1114 >      -1,   219,   244,   175,   241,    -1,    -1,   290,   240,   243,
1115 >     291,   242,   241,    -1,   291,   292,    -1,   292,    -1,   293,
1116 >      -1,   295,    -1,   294,    -1,     1,   241,    -1,   100,   244,
1117 >     131,   241,    -1,   239,   244,   252,   241,    -1,   239,   244,
1118 >     211,   241,    -1,    -1,   165,   296,   244,   297,   241,    -1,
1119 >     297,   245,   298,    -1,   298,    -1,   227,    -1,   115,    -1,
1120 >      51,    -1,   191,    -1,    74,    -1,    72,    -1,   190,    -1,
1121 >      -1,   115,   300,   243,   301,   242,   241,    -1,   301,   302,
1122 >      -1,   302,    -1,   303,    -1,   304,    -1,   305,    -1,   309,
1123 >      -1,   308,    -1,   306,    -1,   307,    -1,   313,    -1,     1,
1124 >     241,    -1,   100,   244,   131,   241,    -1,   227,   244,   131,
1125 >     241,    -1,   125,   244,   131,   241,    -1,    43,   244,   175,
1126 >     241,    -1,   144,   244,   131,   241,    -1,    24,   244,   131,
1127 >     241,    -1,    -1,   208,   310,   244,   311,   241,    -1,   311,
1128 >     245,   312,    -1,   312,    -1,   182,    -1,   185,    -1,   186,
1129 >      -1,   189,    -1,   190,    -1,   194,    -1,    61,    -1,   205,
1130 >      -1,   200,    -1,   202,    -1,   209,    -1,   206,    -1,   193,
1131 >      -1,   201,    -1,   204,    -1,   195,    -1,   215,    -1,   183,
1132 >      -1,   184,    -1,   198,    -1,    -1,    47,   314,   244,   315,
1133 >     241,    -1,   315,   245,   316,    -1,   316,    -1,    57,    -1,
1134 >     139,    -1,    74,    -1,   226,    -1,   191,    -1,   210,    -1,
1135 >     236,    -1,    51,    -1,    32,    -1,   216,    -1,   137,    -1,
1136 >       5,    -1,   105,    -1,   201,    -1,   214,    -1,   119,    -1,
1137 >     140,    -1,    98,    -1,    -1,    24,   318,   243,   319,   242,
1138 >     241,    -1,   319,   320,    -1,   320,    -1,   321,    -1,   331,
1139 >      -1,   332,    -1,   322,    -1,   323,    -1,   333,    -1,   324,
1140 >      -1,   325,    -1,   326,    -1,   327,    -1,   328,    -1,   329,
1141 >      -1,   330,    -1,     1,   241,    -1,   100,   244,   131,   241,
1142 >      -1,   128,   244,   250,   241,    -1,   129,   244,   250,   241,
1143 >      -1,   113,   244,   110,   241,    -1,    26,   244,   250,   241,
1144 >      -1,    92,   244,   110,   241,    -1,    87,   244,   110,   241,
1145 >      -1,    89,   244,   110,   241,    -1,    88,   244,   110,   241,
1146 >      -1,   157,   244,   252,   241,    -1,    22,   244,   110,   241,
1147 >      -1,    23,   244,   110,   241,    -1,   112,   244,   110,   241,
1148 >      -1,    -1,    82,   335,   243,   340,   242,   241,    -1,    -1,
1149 >      47,   337,   244,   338,   241,    -1,   338,   245,   339,    -1,
1150 >     339,    -1,   207,    -1,    61,    -1,   203,    -1,   340,   341,
1151 >      -1,   341,    -1,   342,    -1,   336,    -1,   346,    -1,   347,
1152 >      -1,     1,   241,    -1,    -1,   130,   244,   344,   343,   241,
1153 >      -1,   344,   245,   345,    -1,   345,    -1,   110,    -1,   110,
1154 >     180,   110,    -1,    71,   244,   131,   241,    -1,    66,   244,
1155 >     131,   241,    -1,    -1,    58,   349,   243,   350,   242,   241,
1156 >      -1,   350,   351,    -1,   351,    -1,   352,    -1,   353,    -1,
1157 >     354,    -1,   356,    -1,   360,    -1,   361,    -1,   362,    -1,
1158 >     355,    -1,     1,   241,    -1,   227,   244,   131,   241,    -1,
1159 >     125,   244,   131,   241,    -1,    24,   244,   131,   241,    -1,
1160 >      43,   244,   175,   241,    -1,    -1,    47,   357,   244,   358,
1161 >     241,    -1,   358,   245,   359,    -1,   359,    -1,   169,    -1,
1162 >      44,    -1,    75,    -1,    59,    -1,    20,    -1,   109,    -1,
1163 >      53,    -1,   151,    -1,   101,    -1,   168,   244,   131,   241,
1164 >      -1,   135,   244,   131,   241,    -1,   134,   244,   110,   241,
1165 >      -1,    -1,   150,   364,   243,   365,   242,   241,    -1,   365,
1166 >     366,    -1,   366,    -1,   367,    -1,   368,    -1,   369,    -1,
1167 >       1,   241,    -1,   133,   244,   131,   241,    -1,    21,   244,
1168 >     131,   241,    -1,   104,   244,   131,   241,    -1,   217,   243,
1169 >     371,   242,   241,    -1,   371,   372,    -1,   372,    -1,   373,
1170 >      -1,     1,    -1,   100,   244,   131,   241,    -1,    -1,   163,
1171 >     375,   243,   376,   242,   241,    -1,   376,   377,    -1,   377,
1172 >      -1,   378,    -1,   379,    -1,   380,    -1,     1,   241,    -1,
1173 >     100,   244,   131,   241,    -1,   227,   244,   131,   241,    -1,
1174 >      -1,   165,   381,   244,   382,   241,    -1,   382,   245,   383,
1175 >      -1,   383,    -1,    74,    -1,   226,    -1,   191,    -1,   210,
1176 >      -1,   236,    -1,   213,    -1,   150,    -1,   212,    -1,   198,
1177 >      -1,   181,    -1,    -1,   164,   385,   243,   386,   242,   241,
1178 >      -1,   386,   387,    -1,   387,    -1,   388,    -1,   389,    -1,
1179 >       1,   241,    -1,   100,   244,   131,   241,    -1,    -1,   165,
1180 >     390,   244,   391,   241,    -1,   391,   245,   392,    -1,   392,
1181 >      -1,    74,    -1,   226,    -1,   191,    -1,   210,    -1,   236,
1182 >      -1,   213,    -1,   150,    -1,   212,    -1,   198,    -1,   181,
1183 >      -1,    -1,    25,   394,   243,   395,   242,   241,    -1,   395,
1184 >     396,    -1,   396,    -1,   397,    -1,   398,    -1,   399,    -1,
1185 >     400,    -1,   401,    -1,   403,    -1,   402,    -1,   412,    -1,
1186 >     404,    -1,   409,    -1,   410,    -1,   411,    -1,   408,    -1,
1187 >       1,   241,    -1,   100,   244,   131,   241,    -1,    66,   244,
1188 >     131,   241,    -1,   234,   244,   131,   241,    -1,   158,   244,
1189 >     131,   241,    -1,     3,   244,   131,   241,    -1,   130,   244,
1190 >     110,   241,    -1,     6,   244,   196,   241,    -1,     6,   244,
1191 >     197,   241,    -1,    -1,    47,   405,   244,   406,   241,    -1,
1192 >     406,   245,   407,    -1,   407,    -1,    10,    -1,    12,    -1,
1193 >     221,    -1,   207,    -1,    43,   244,   175,   241,    -1,    68,
1194 >     244,   131,   241,    -1,    80,   244,   131,   241,    -1,    24,
1195 >     244,   131,   241,    -1,   187,   244,   131,   241,    -1,    -1,
1196 >      72,   414,   243,   419,   242,   241,    -1,    -1,   165,   416,
1197 >     244,   417,   241,    -1,   417,   245,   418,    -1,   418,    -1,
1198 >     136,    -1,   419,   420,    -1,   420,    -1,   421,    -1,   422,
1199 >      -1,   415,    -1,     1,    -1,   227,   244,   131,   241,    -1,
1200 >     133,   244,   131,   241,    -1,    -1,    30,   424,   243,   425,
1201 >     242,   241,    -1,   425,   426,    -1,   426,    -1,   427,    -1,
1202 >     428,    -1,     1,    -1,    71,   244,   131,   241,    -1,   133,
1203 >     244,   131,   241,    -1,    45,   243,   430,   242,   241,    -1,
1204 >     430,   431,    -1,   431,    -1,   432,    -1,     1,    -1,    71,
1205 >     244,   131,   241,    -1,    -1,    49,   434,   243,   439,   242,
1206 >     241,    -1,    -1,   165,   436,   244,   437,   241,    -1,   437,
1207 >     245,   438,    -1,   438,    -1,   136,    -1,   439,   440,    -1,
1208 >     440,    -1,   441,    -1,   442,    -1,   435,    -1,     1,    -1,
1209 >     100,   244,   131,   241,    -1,   133,   244,   131,   241,    -1,
1210 >      50,   243,   444,   242,   241,    -1,   444,   445,    -1,   445,
1211 >      -1,   453,    -1,   454,    -1,   456,    -1,   457,    -1,   458,
1212 >      -1,   459,    -1,   460,    -1,   461,    -1,   462,    -1,   463,
1213 >      -1,   452,    -1,   465,    -1,   466,    -1,   467,    -1,   468,
1214 >      -1,   483,    -1,   470,    -1,   472,    -1,   474,    -1,   473,
1215 >      -1,   477,    -1,   471,    -1,   478,    -1,   479,    -1,   480,
1216 >      -1,   481,    -1,   482,    -1,   495,    -1,   484,    -1,   485,
1217 >      -1,   486,    -1,   491,    -1,   475,    -1,   476,    -1,   501,
1218 >      -1,   499,    -1,   500,    -1,   455,    -1,   502,    -1,   490,
1219 >      -1,   464,    -1,   488,    -1,   489,    -1,   451,    -1,   447,
1220 >      -1,   448,    -1,   449,    -1,   450,    -1,   469,    -1,   446,
1221 >      -1,   487,    -1,     1,    -1,    94,   244,   110,   241,    -1,
1222 >      55,   244,   110,   241,    -1,    56,   244,   110,   241,    -1,
1223 >     233,   244,   175,   241,    -1,   138,   244,   250,   241,    -1,
1224 >     162,   244,   175,   241,    -1,    73,   244,   250,   241,    -1,
1225 >      65,   244,   175,   241,    -1,    69,   244,   175,   241,    -1,
1226 >      37,   244,   175,   241,    -1,    46,   244,   175,   241,    -1,
1227 >       8,   244,   175,   241,    -1,    91,   244,   250,   241,    -1,
1228 >      90,   244,   110,   241,    -1,    84,   244,   110,   241,    -1,
1229 >       9,   244,   250,   241,    -1,   179,   244,   250,   241,    -1,
1230 >     178,   244,   250,   241,    -1,    60,   244,   110,   241,    -1,
1231 >      77,   244,   175,   241,    -1,    76,   244,   131,   241,    -1,
1232 >      70,   244,   175,   241,    -1,   238,   244,   175,   241,    -1,
1233 >     170,   244,   175,   241,    -1,   173,   244,   175,   241,    -1,
1234 >     174,   244,   175,   241,    -1,   172,   244,   175,   241,    -1,
1235 >     172,   244,   176,   241,    -1,   171,   244,   175,   241,    -1,
1236 >     171,   244,   176,   241,    -1,   123,   244,   250,   241,    -1,
1237 >      19,   244,   250,   241,    -1,   116,   244,   175,   241,    -1,
1238 >     124,   244,   250,   241,    -1,   166,   244,   175,   241,    -1,
1239 >     108,   244,   175,   241,    -1,   222,   244,   175,   241,    -1,
1240 >     118,   244,   175,   241,    -1,    95,   244,   131,   241,    -1,
1241 >      38,   244,   110,   241,    -1,    93,   244,   110,   241,    -1,
1242 >     228,   244,   175,   241,    -1,    40,   244,   131,   241,    -1,
1243 >     218,   244,   131,   241,    -1,   127,   244,   175,   241,    -1,
1244 >      33,   244,   175,   241,    -1,   220,   244,   250,   241,    -1,
1245 >      -1,   120,   492,   244,   493,   241,    -1,   493,   245,   494,
1246 >      -1,   494,    -1,   182,    -1,   185,    -1,   186,    -1,   189,
1247 >      -1,   190,    -1,   194,    -1,    61,    -1,   205,    -1,   200,
1248 >      -1,   202,    -1,   209,    -1,   206,    -1,   193,    -1,   201,
1249 >      -1,   204,    -1,   195,    -1,   215,    -1,   183,    -1,   184,
1250 >      -1,   198,    -1,    -1,   117,   496,   244,   497,   241,    -1,
1251 >     497,   245,   498,    -1,   498,    -1,   182,    -1,   185,    -1,
1252 >     186,    -1,   189,    -1,   190,    -1,   194,    -1,   205,    -1,
1253 >      61,    -1,   200,    -1,   202,    -1,   209,    -1,   206,    -1,
1254 >     193,    -1,   201,    -1,   204,    -1,   195,    -1,   215,    -1,
1255 >     183,    -1,   184,    -1,   198,    -1,    96,   244,   110,   241,
1256 >      -1,    97,   244,   110,   241,    -1,    27,   244,   110,   241,
1257 >      -1,   188,   244,   252,   241,    -1,    -1,    52,   504,   243,
1258 >     505,   242,   241,    -1,   505,   506,    -1,   506,    -1,   507,
1259 >      -1,   508,    -1,   509,    -1,   513,    -1,   514,    -1,   515,
1260 >      -1,     1,    -1,    42,   244,   175,   241,    -1,    39,   244,
1261 >     250,   241,    -1,    -1,    83,   510,   244,   511,   241,    -1,
1262 >     511,   245,   512,    -1,   512,    -1,   177,    -1,    11,    -1,
1263 >     227,   244,   131,   241,    -1,   100,   244,   131,   241,    -1,
1264 >      -1,     4,   516,   244,   517,   241,    -1,   517,   245,   518,
1265 >      -1,   518,    -1,   177,    -1,    11,    -1,    21,   243,   520,
1266 >     242,   241,    -1,   520,   521,    -1,   521,    -1,   524,    -1,
1267 >     525,    -1,   526,    -1,   527,    -1,   532,    -1,   528,    -1,
1268 >     529,    -1,   530,    -1,   531,    -1,   533,    -1,   534,    -1,
1269 >     535,    -1,   523,    -1,   536,    -1,   537,    -1,   538,    -1,
1270 >     539,    -1,   522,    -1,     1,    -1,    34,   244,   175,   241,
1271 >      -1,   141,   244,   175,   241,    -1,    36,   244,   175,   241,
1272 >      -1,   229,   244,   175,   241,    -1,   230,   244,   175,   241,
1273 >      -1,   231,   244,   175,   241,    -1,    78,   244,   250,   241,
1274 >      -1,    79,   244,   250,   241,    -1,    86,   244,   110,   241,
1275 >      -1,   132,   244,   175,   241,    -1,    85,   244,   110,   241,
1276 >      -1,    29,   244,   110,   241,    -1,    28,   244,   110,   241,
1277 >      -1,   106,   244,   175,   241,    -1,   107,   244,   175,   241,
1278 >      -1,    13,   244,   175,   241,    -1,   121,   244,   110,   241,
1279 >      -1,   122,   244,   250,   241,    -1,   159,   243,   541,   242,
1280 >     241,    -1,   541,   542,    -1,   542,    -1,   543,    -1,   544,
1281 >      -1,   546,    -1,   548,    -1,   547,    -1,   545,    -1,   549,
1282 >      -1,     1,    -1,    48,   244,   175,   241,    -1,    64,   244,
1283 >     175,   241,    -1,    62,   244,   131,   241,    -1,    81,   244,
1284 >     250,   241,    -1,    61,   244,   175,   241,    -1,    35,   244,
1285 >     175,   241,    -1,    63,   244,   175,   241,    -1
1286   };
1287  
1288   /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
1289   static const yytype_uint16 yyrline[] =
1290   {
1291 <       0,   395,   395,   396,   399,   400,   401,   402,   403,   404,
1292 <     405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
1293 <     415,   416,   417,   418,   419,   420,   424,   424,   425,   429,
1294 <     433,   437,   441,   445,   451,   451,   452,   453,   454,   455,
1295 <     462,   465,   465,   466,   466,   466,   468,   474,   481,   483,
1296 <     483,   484,   484,   485,   485,   486,   486,   487,   488,   488,
1297 <     489,   489,   490,   491,   495,   494,   513,   513,   514,   520,
1298 <     528,   562,   622,   637,   652,   661,   675,   684,   712,   742,
1299 <     765,   774,   776,   776,   777,   777,   778,   778,   780,   789,
1300 <     798,   811,   813,   814,   816,   816,   817,   818,   818,   819,
1301 <     819,   820,   820,   821,   821,   822,   823,   825,   829,   833,
1302 <     840,   847,   854,   861,   868,   875,   882,   889,   893,   897,
1303 <     901,   905,   909,   913,   919,   929,   928,  1022,  1022,  1023,
1304 <    1023,  1024,  1024,  1024,  1025,  1025,  1025,  1026,  1026,  1026,
1305 <    1028,  1040,  1052,  1086,  1098,  1109,  1151,  1161,  1160,  1166,
1306 <    1166,  1167,  1171,  1175,  1179,  1183,  1187,  1191,  1195,  1199,
1307 <    1203,  1207,  1211,  1215,  1219,  1223,  1227,  1231,  1235,  1239,
1308 <    1246,  1245,  1249,  1249,  1250,  1250,  1251,  1251,  1253,  1260,
1309 <    1267,  1274,  1281,  1288,  1295,  1302,  1309,  1316,  1323,  1330,
1310 <    1337,  1344,  1351,  1358,  1372,  1371,  1421,  1421,  1423,  1423,
1311 <    1424,  1425,  1425,  1426,  1427,  1428,  1429,  1430,  1431,  1432,
1312 <    1433,  1434,  1435,  1436,  1438,  1447,  1456,  1462,  1468,  1474,
1313 <    1480,  1486,  1492,  1498,  1504,  1510,  1516,  1522,  1532,  1531,
1314 <    1548,  1547,  1552,  1552,  1553,  1557,  1561,  1569,  1569,  1570,
1315 <    1570,  1570,  1570,  1570,  1572,  1572,  1574,  1574,  1576,  1590,
1316 <    1610,  1619,  1632,  1631,  1700,  1700,  1701,  1701,  1701,  1701,
1317 <    1702,  1702,  1702,  1703,  1703,  1705,  1742,  1755,  1764,  1776,
1318 <    1775,  1779,  1779,  1780,  1780,  1781,  1781,  1783,  1790,  1797,
1319 <    1804,  1811,  1818,  1825,  1832,  1839,  1846,  1856,  1875,  1885,
1320 <    1899,  1898,  1914,  1914,  1915,  1915,  1915,  1915,  1917,  1926,
1321 <    1941,  1955,  1954,  1970,  1970,  1971,  1971,  1971,  1971,  1973,
1322 <    1982,  2005,  2004,  2010,  2010,  2011,  2015,  2019,  2023,  2027,
1323 <    2031,  2035,  2039,  2043,  2047,  2051,  2061,  2060,  2077,  2077,
1324 <    2078,  2078,  2078,  2080,  2087,  2086,  2092,  2092,  2093,  2097,
1325 <    2101,  2105,  2109,  2113,  2117,  2121,  2125,  2129,  2133,  2143,
1326 <    2142,  2288,  2288,  2289,  2289,  2290,  2290,  2290,  2291,  2291,
1327 <    2292,  2292,  2293,  2293,  2293,  2294,  2294,  2295,  2295,  2296,
1328 <    2298,  2310,  2322,  2331,  2357,  2375,  2393,  2399,  2403,  2412,
1329 <    2411,  2415,  2415,  2416,  2416,  2417,  2417,  2419,  2430,  2437,
1330 <    2444,  2451,  2461,  2502,  2513,  2526,  2539,  2548,  2584,  2583,
1331 <    2647,  2646,  2650,  2650,  2651,  2657,  2657,  2658,  2658,  2658,
1332 <    2658,  2660,  2679,  2689,  2688,  2711,  2711,  2712,  2712,  2712,
1333 <    2714,  2720,  2729,  2731,  2731,  2732,  2732,  2734,  2753,  2752,
1334 <    2800,  2799,  2803,  2803,  2804,  2810,  2810,  2811,  2811,  2811,
1335 <    2811,  2813,  2819,  2828,  2831,  2831,  2832,  2832,  2833,  2833,
1336 <    2834,  2834,  2835,  2835,  2836,  2836,  2837,  2837,  2838,  2838,
1337 <    2839,  2839,  2840,  2840,  2841,  2841,  2842,  2842,  2843,  2843,
1338 <    2844,  2844,  2845,  2845,  2846,  2846,  2847,  2847,  2848,  2848,
1339 <    2849,  2849,  2850,  2850,  2851,  2851,  2852,  2853,  2853,  2854,
1340 <    2854,  2855,  2856,  2856,  2857,  2857,  2858,  2858,  2859,  2859,
1341 <    2860,  2861,  2864,  2869,  2874,  2879,  2884,  2889,  2894,  2899,
1342 <    2904,  2909,  2914,  2919,  2924,  2929,  2934,  2939,  2944,  2949,
1343 <    2954,  2960,  2971,  2976,  2985,  2990,  2995,  3000,  3005,  3010,
1344 <    3013,  3018,  3021,  3026,  3031,  3036,  3041,  3046,  3051,  3056,
1345 <    3061,  3066,  3077,  3082,  3087,  3092,  3101,  3133,  3151,  3156,
1346 <    3165,  3170,  3175,  3181,  3180,  3185,  3185,  3186,  3189,  3192,
1347 <    3195,  3198,  3201,  3204,  3207,  3210,  3213,  3216,  3219,  3222,
1348 <    3225,  3228,  3231,  3234,  3237,  3240,  3246,  3245,  3250,  3250,
1349 <    3251,  3254,  3257,  3260,  3263,  3266,  3269,  3272,  3275,  3278,
1350 <    3281,  3284,  3287,  3290,  3293,  3296,  3299,  3302,  3305,  3310,
1351 <    3315,  3320,  3325,  3335,  3334,  3358,  3358,  3359,  3360,  3361,
1352 <    3362,  3363,  3364,  3365,  3367,  3373,  3380,  3379,  3384,  3384,
1353 <    3385,  3389,  3395,  3429,  3439,  3438,  3488,  3488,  3489,  3493,
1354 <    3502,  3505,  3505,  3506,  3506,  3507,  3507,  3508,  3508,  3509,
1355 <    3509,  3510,  3510,  3511,  3512,  3512,  3513,  3513,  3514,  3514,
1356 <    3515,  3515,  3517,  3522,  3527,  3532,  3537,  3542,  3547,  3552,
1357 <    3557,  3562,  3567,  3572,  3577,  3582,  3587,  3592,  3597,  3602,
1404 <    3610,  3613,  3613,  3614,  3614,  3615,  3616,  3617,  3617,  3618,
1405 <    3619,  3621,  3627,  3633,  3642,  3656,  3662,  3668
1291 >       0,   377,   377,   378,   381,   382,   383,   384,   385,   386,
1292 >     387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
1293 >     397,   398,   399,   400,   401,   402,   403,   407,   407,   408,
1294 >     412,   416,   420,   424,   428,   434,   434,   435,   436,   437,
1295 >     438,   445,   448,   448,   449,   449,   449,   451,   457,   464,
1296 >     466,   466,   467,   467,   468,   468,   469,   469,   470,   470,
1297 >     471,   471,   472,   472,   473,   473,   474,   478,   477,   503,
1298 >     503,   504,   510,   518,   557,   616,   640,   650,   665,   680,
1299 >     689,   703,   712,   740,   770,   793,   802,   804,   804,   805,
1300 >     805,   806,   806,   808,   817,   826,   838,   839,   839,   841,
1301 >     841,   841,   842,   844,   850,   857,   857,   867,   868,   870,
1302 >     870,   871,   871,   873,   878,   881,   887,   886,   892,   892,
1303 >     893,   897,   901,   905,   909,   913,   917,   928,   927,  1025,
1304 >    1025,  1026,  1026,  1026,  1027,  1027,  1027,  1028,  1028,  1028,
1305 >    1030,  1042,  1079,  1091,  1102,  1144,  1154,  1153,  1159,  1159,
1306 >    1160,  1164,  1168,  1172,  1176,  1180,  1184,  1188,  1192,  1196,
1307 >    1200,  1204,  1208,  1212,  1216,  1220,  1224,  1228,  1232,  1236,
1308 >    1243,  1242,  1248,  1248,  1249,  1253,  1257,  1261,  1265,  1269,
1309 >    1273,  1277,  1281,  1285,  1289,  1293,  1297,  1301,  1305,  1309,
1310 >    1313,  1317,  1328,  1327,  1377,  1377,  1378,  1379,  1379,  1380,
1311 >    1381,  1382,  1383,  1384,  1385,  1386,  1387,  1388,  1389,  1390,
1312 >    1392,  1401,  1407,  1413,  1419,  1425,  1431,  1437,  1443,  1449,
1313 >    1455,  1461,  1467,  1477,  1476,  1493,  1492,  1497,  1497,  1498,
1314 >    1502,  1506,  1514,  1514,  1515,  1515,  1515,  1515,  1515,  1517,
1315 >    1517,  1519,  1519,  1521,  1535,  1555,  1564,  1577,  1576,  1645,
1316 >    1645,  1646,  1646,  1646,  1646,  1647,  1647,  1647,  1648,  1648,
1317 >    1650,  1687,  1700,  1709,  1721,  1720,  1724,  1724,  1725,  1729,
1318 >    1733,  1737,  1741,  1745,  1749,  1753,  1757,  1764,  1783,  1793,
1319 >    1807,  1806,  1822,  1822,  1823,  1823,  1823,  1823,  1825,  1834,
1320 >    1849,  1862,  1864,  1864,  1865,  1865,  1867,  1883,  1882,  1898,
1321 >    1898,  1899,  1899,  1899,  1899,  1901,  1910,  1933,  1932,  1938,
1322 >    1938,  1939,  1943,  1947,  1951,  1955,  1959,  1963,  1967,  1971,
1323 >    1975,  1985,  1984,  2001,  2001,  2002,  2002,  2002,  2004,  2011,
1324 >    2010,  2016,  2016,  2017,  2021,  2025,  2029,  2033,  2037,  2041,
1325 >    2045,  2049,  2053,  2063,  2062,  2191,  2191,  2192,  2192,  2192,
1326 >    2193,  2193,  2194,  2194,  2194,  2195,  2195,  2195,  2196,  2196,
1327 >    2197,  2199,  2211,  2220,  2246,  2264,  2282,  2288,  2292,  2301,
1328 >    2300,  2304,  2304,  2305,  2309,  2313,  2317,  2323,  2334,  2347,
1329 >    2360,  2369,  2388,  2387,  2451,  2450,  2454,  2454,  2455,  2461,
1330 >    2461,  2462,  2462,  2462,  2462,  2464,  2483,  2493,  2492,  2515,
1331 >    2515,  2516,  2516,  2516,  2518,  2524,  2533,  2535,  2535,  2536,
1332 >    2536,  2538,  2557,  2556,  2604,  2603,  2607,  2607,  2608,  2614,
1333 >    2614,  2615,  2615,  2615,  2615,  2617,  2623,  2632,  2635,  2635,
1334 >    2636,  2636,  2637,  2637,  2638,  2638,  2639,  2639,  2640,  2640,
1335 >    2641,  2641,  2642,  2642,  2643,  2643,  2644,  2644,  2645,  2645,
1336 >    2646,  2646,  2647,  2647,  2648,  2648,  2649,  2650,  2650,  2651,
1337 >    2651,  2652,  2652,  2653,  2653,  2654,  2654,  2655,  2656,  2657,
1338 >    2657,  2658,  2659,  2660,  2660,  2661,  2661,  2662,  2662,  2663,
1339 >    2663,  2664,  2667,  2672,  2677,  2682,  2687,  2692,  2697,  2702,
1340 >    2707,  2712,  2717,  2722,  2727,  2732,  2737,  2742,  2747,  2752,
1341 >    2758,  2769,  2774,  2783,  2788,  2793,  2798,  2803,  2808,  2811,
1342 >    2816,  2819,  2824,  2829,  2834,  2839,  2844,  2849,  2854,  2859,
1343 >    2864,  2875,  2880,  2885,  2890,  2899,  2908,  2913,  2918,  2924,
1344 >    2923,  2928,  2928,  2929,  2932,  2935,  2938,  2941,  2944,  2947,
1345 >    2950,  2953,  2956,  2959,  2962,  2965,  2968,  2971,  2974,  2977,
1346 >    2980,  2983,  2986,  2992,  2991,  2996,  2996,  2997,  3000,  3003,
1347 >    3006,  3009,  3012,  3015,  3018,  3021,  3024,  3027,  3030,  3033,
1348 >    3036,  3039,  3042,  3045,  3048,  3051,  3054,  3059,  3064,  3069,
1349 >    3074,  3084,  3083,  3107,  3107,  3108,  3109,  3110,  3111,  3112,
1350 >    3113,  3114,  3116,  3122,  3129,  3128,  3133,  3133,  3134,  3138,
1351 >    3144,  3178,  3188,  3187,  3237,  3237,  3238,  3242,  3251,  3254,
1352 >    3254,  3255,  3255,  3256,  3256,  3257,  3257,  3258,  3258,  3259,
1353 >    3259,  3260,  3261,  3261,  3262,  3262,  3263,  3263,  3264,  3264,
1354 >    3266,  3271,  3276,  3281,  3286,  3291,  3296,  3301,  3306,  3311,
1355 >    3316,  3321,  3326,  3331,  3336,  3341,  3346,  3351,  3359,  3362,
1356 >    3362,  3363,  3363,  3364,  3365,  3366,  3366,  3367,  3368,  3370,
1357 >    3376,  3382,  3391,  3405,  3411,  3417
1358   };
1359   #endif
1360  
# Line 1414 | Line 1366 | static const char *const yytname[] =
1366    "$end", "error", "$undefined", "ACCEPT_PASSWORD", "ACTION", "ADMIN",
1367    "AFTYPE", "T_ALLOW", "ANTI_NICK_FLOOD", "ANTI_SPAM_EXIT_MESSAGE_TIME",
1368    "AUTOCONN", "T_BLOCK", "BURST_AWAY", "BURST_TOPICWHO", "BYTES", "KBYTES",
1369 <  "MBYTES", "GBYTES", "TBYTES", "CALLER_ID_WAIT", "CAN_FLOOD", "CAN_IDLE",
1370 <  "CHANNEL", "CIDR_BITLEN_IPV4", "CIDR_BITLEN_IPV6", "CIPHER_PREFERENCE",
1371 <  "CLASS", "COMPRESSED", "COMPRESSION_LEVEL", "CONNECT", "CONNECTFREQ",
1372 <  "CRYPTLINK", "DEFAULT_CIPHER_PREFERENCE", "DEFAULT_FLOODCOUNT",
1373 <  "DEFAULT_SPLIT_SERVER_COUNT", "DEFAULT_SPLIT_USER_COUNT", "DENY",
1374 <  "DESCRIPTION", "DIE", "DISABLE_AUTH", "DISABLE_FAKE_CHANNELS",
1375 <  "DISABLE_HIDDEN", "DISABLE_LOCAL_CHANNELS", "DISABLE_REMOTE_COMMANDS",
1376 <  "DOTS_IN_IDENT", "DURATION", "EGDPOOL_PATH", "EMAIL", "ENABLE",
1377 <  "ENCRYPTED", "EXCEED_LIMIT", "EXEMPT", "FAILED_OPER_NOTICE",
1378 <  "IRCD_FLAGS", "FLATTEN_LINKS", "FFAILED_OPERLOG", "FKILLLOG",
1379 <  "FKLINELOG", "FGLINELOG", "FIOERRLOG", "FOPERLOG", "FOPERSPYLOG",
1380 <  "FUSERLOG", "GECOS", "GENERAL", "GLINE", "GLINES", "GLINE_EXEMPT",
1429 <  "GLINE_LOG", "GLINE_TIME", "GLINE_MIN_CIDR", "GLINE_MIN_CIDR6",
1430 <  "GLOBAL_KILL", "IRCD_AUTH", "NEED_IDENT", "HAVENT_READ_CONF", "HIDDEN",
1431 <  "HIDDEN_ADMIN", "HIDDEN_NAME", "HIDDEN_OPER", "HIDE_SERVER_IPS",
1432 <  "HIDE_SERVERS", "HIDE_SPOOF_IPS", "HOST", "HUB", "HUB_MASK", "IDLETIME",
1369 >  "MBYTES", "GBYTES", "TBYTES", "CALLER_ID_WAIT", "CAN_FLOOD", "CHANNEL",
1370 >  "CIDR_BITLEN_IPV4", "CIDR_BITLEN_IPV6", "CLASS", "CONNECT",
1371 >  "CONNECTFREQ", "DEFAULT_FLOODCOUNT", "DEFAULT_SPLIT_SERVER_COUNT",
1372 >  "DEFAULT_SPLIT_USER_COUNT", "DENY", "DESCRIPTION", "DIE", "DISABLE_AUTH",
1373 >  "DISABLE_FAKE_CHANNELS", "DISABLE_HIDDEN", "DISABLE_LOCAL_CHANNELS",
1374 >  "DISABLE_REMOTE_COMMANDS", "DOTS_IN_IDENT", "DURATION", "EGDPOOL_PATH",
1375 >  "EMAIL", "ENABLE", "ENCRYPTED", "EXCEED_LIMIT", "EXEMPT",
1376 >  "FAILED_OPER_NOTICE", "IRCD_FLAGS", "FLATTEN_LINKS", "GECOS", "GENERAL",
1377 >  "GLINE", "GLINES", "GLINE_EXEMPT", "GLINE_TIME", "GLINE_MIN_CIDR",
1378 >  "GLINE_MIN_CIDR6", "GLOBAL_KILL", "IRCD_AUTH", "NEED_IDENT",
1379 >  "HAVENT_READ_CONF", "HIDDEN", "HIDDEN_NAME", "HIDE_SERVER_IPS",
1380 >  "HIDE_SERVERS", "HIDE_SPOOF_IPS", "HOST", "HUB", "HUB_MASK",
1381    "IGNORE_BOGUS_TS", "INVISIBLE_ON_CONNECT", "IP", "KILL",
1382    "KILL_CHASE_TIME_LIMIT", "KLINE", "KLINE_EXEMPT", "KLINE_REASON",
1383    "KLINE_WITH_REASON", "KNOCK_DELAY", "KNOCK_DELAY_CHANNEL", "LEAF_MASK",
1384 <  "LINKS_DELAY", "LISTEN", "T_LOG", "LOGGING", "LOG_LEVEL", "MAX_ACCEPT",
1385 <  "MAX_BANS", "MAX_CHANS_PER_USER", "MAX_GLOBAL", "MAX_IDENT", "MAX_LOCAL",
1384 >  "LINKS_DELAY", "LISTEN", "T_LOG", "MAX_ACCEPT", "MAX_BANS",
1385 >  "MAX_CHANS_PER_USER", "MAX_GLOBAL", "MAX_IDENT", "MAX_LOCAL",
1386    "MAX_NICK_CHANGES", "MAX_NICK_TIME", "MAX_NUMBER", "MAX_TARGETS",
1387    "MAX_WATCH", "MESSAGE_LOCALE", "MIN_NONWILDCARD",
1388    "MIN_NONWILDCARD_SIMPLE", "MODULE", "MODULES", "NAME", "NEED_PASSWORD",
1389    "NETWORK_DESC", "NETWORK_NAME", "NICK", "NICK_CHANGES",
1390    "NO_CREATE_ON_SPLIT", "NO_JOIN_ON_SPLIT", "NO_OPER_FLOOD", "NO_TILDE",
1391 <  "NOT", "NUMBER", "NUMBER_PER_IDENT", "NUMBER_PER_CIDR", "NUMBER_PER_IP",
1392 <  "NUMBER_PER_IP_GLOBAL", "OPERATOR", "OPERS_BYPASS_CALLERID", "OPER_LOG",
1391 >  "NUMBER", "NUMBER_PER_IDENT", "NUMBER_PER_CIDR", "NUMBER_PER_IP",
1392 >  "NUMBER_PER_IP_GLOBAL", "OPERATOR", "OPERS_BYPASS_CALLERID",
1393    "OPER_ONLY_UMODES", "OPER_PASS_RESV", "OPER_SPY_T", "OPER_UMODES",
1394    "JOIN_FLOOD_COUNT", "JOIN_FLOOD_TIME", "PACE_WAIT", "PACE_WAIT_SIMPLE",
1395    "PASSWORD", "PATH", "PING_COOKIE", "PING_TIME", "PING_WARNING", "PORT",
1396    "QSTRING", "QUIET_ON_BAN", "REASON", "REDIRPORT", "REDIRSERV", "REGEX_T",
1397    "REHASH", "TREJECT_HOLD_TIME", "REMOTE", "REMOTEBAN",
1398    "RESTRICT_CHANNELS", "RESTRICTED", "RSA_PRIVATE_KEY_FILE",
1399 <  "RSA_PUBLIC_KEY_FILE", "SSL_CERTIFICATE_FILE", "T_SSL_CONNECTION_METHOD",
1400 <  "T_SSLV3", "T_TLSV1", "RESV", "RESV_EXEMPT", "SECONDS", "MINUTES",
1401 <  "HOURS", "DAYS", "WEEKS", "SENDQ", "SEND_PASSWORD", "SERVERHIDE",
1402 <  "SERVERINFO", "SERVLINK_PATH", "IRCD_SID", "TKLINE_EXPIRE_NOTICES",
1399 >  "RSA_PUBLIC_KEY_FILE", "SSL_CERTIFICATE_FILE", "SSL_DH_PARAM_FILE",
1400 >  "T_SSL_CONNECTION_METHOD", "T_SSLV3", "T_TLSV1", "RESV", "RESV_EXEMPT",
1401 >  "SECONDS", "MINUTES", "HOURS", "DAYS", "WEEKS", "SENDQ", "SEND_PASSWORD",
1402 >  "SERVERHIDE", "SERVERINFO", "IRCD_SID", "TKLINE_EXPIRE_NOTICES",
1403    "T_SHARED", "T_CLUSTER", "TYPE", "SHORT_MOTD", "SILENT", "SPOOF",
1404    "SPOOF_NOTICE", "STATS_E_DISABLED", "STATS_I_OPER_ONLY",
1405    "STATS_K_OPER_ONLY", "STATS_O_OPER_ONLY", "STATS_P_OPER_ONLY", "TBOOL",
1406    "TMASKED", "T_REJECT", "TS_MAX_DELTA", "TS_WARN_DELTA", "TWODOTS",
1407    "T_ALL", "T_BOTS", "T_SOFTCALLERID", "T_CALLERID", "T_CCONN",
1408 <  "T_CCONN_FULL", "T_CLIENT_FLOOD", "T_DEAF", "T_DEBUG", "T_DRONE",
1409 <  "T_EXTERNAL", "T_FULL", "T_INVISIBLE", "T_IPV4", "T_IPV6", "T_LOCOPS",
1410 <  "T_LOGPATH", "T_L_CRIT", "T_L_DEBUG", "T_L_ERROR", "T_L_INFO",
1463 <  "T_L_NOTICE", "T_L_TRACE", "T_L_WARN", "T_MAX_CLIENTS", "T_NCHANGE",
1408 >  "T_CCONN_FULL", "T_SSL_CIPHER_LIST", "T_CLIENT_FLOOD", "T_DEAF",
1409 >  "T_DEBUG", "T_DLINE", "T_DRONE", "T_EXTERNAL", "T_FULL", "T_INVISIBLE",
1410 >  "T_IPV4", "T_IPV6", "T_LOCOPS", "T_MAX_CLIENTS", "T_NCHANGE",
1411    "T_OPERWALL", "T_REJ", "T_SERVER", "T_SERVNOTICE", "T_SKILL", "T_SPY",
1412 <  "T_SSL", "T_UMODES", "T_UNAUTH", "T_UNRESV", "T_UNXLINE", "T_WALLOP",
1413 <  "THROTTLE_TIME", "TOPICBURST", "TRUE_NO_OPER_FLOOD", "TKLINE", "TXLINE",
1414 <  "TRESV", "UNKLINE", "USER", "USE_EGD", "USE_EXCEPT", "USE_INVEX",
1415 <  "USE_KNOCK", "USE_LOGGING", "USE_WHOIS_ACTUALLY", "VHOST", "VHOST6",
1416 <  "XLINE", "WARN", "WARN_NO_NLINE", "';'", "'}'", "'{'", "'='", "','",
1412 >  "T_SSL", "T_UMODES", "T_UNAUTH", "T_UNDLINE", "T_UNLIMITED", "T_UNRESV",
1413 >  "T_UNXLINE", "T_GLOBOPS", "T_WALLOP", "T_RESTART", "T_SERVICE",
1414 >  "T_SERVICES_NAME", "T_TIMESTAMP", "THROTTLE_TIME", "TOPICBURST",
1415 >  "TRUE_NO_OPER_FLOOD", "TKLINE", "TXLINE", "TRESV", "UNKLINE", "USER",
1416 >  "USE_EGD", "USE_EXCEPT", "USE_INVEX", "USE_KNOCK", "USE_LOGGING",
1417 >  "USE_WHOIS_ACTUALLY", "VHOST", "VHOST6", "XLINE", "WARN",
1418 >  "WARN_NO_NLINE", "T_SIZE", "T_FILE", "';'", "'}'", "'{'", "'='", "','",
1419    "$accept", "conf", "conf_item", "timespec_", "timespec", "sizespec_",
1420    "sizespec", "modules_entry", "modules_items", "modules_item",
1421    "modules_module", "modules_path", "serverinfo_entry", "serverinfo_items",
1422    "serverinfo_item", "serverinfo_ssl_connection_method", "$@1",
1423    "method_types", "method_type_item", "serverinfo_ssl_certificate_file",
1424 <  "serverinfo_rsa_private_key_file", "serverinfo_name", "serverinfo_sid",
1424 >  "serverinfo_rsa_private_key_file", "serverinfo_ssl_dh_param_file",
1425 >  "serverinfo_ssl_cipher_list", "serverinfo_name", "serverinfo_sid",
1426    "serverinfo_description", "serverinfo_network_name",
1427    "serverinfo_network_desc", "serverinfo_vhost", "serverinfo_vhost6",
1428    "serverinfo_max_clients", "serverinfo_hub", "admin_entry", "admin_items",
1429    "admin_item", "admin_name", "admin_email", "admin_description",
1430 <  "logging_entry", "logging_items", "logging_item", "logging_path",
1431 <  "logging_oper_log", "logging_fuserlog", "logging_ffailed_operlog",
1432 <  "logging_foperlog", "logging_foperspylog", "logging_fglinelog",
1433 <  "logging_fklinelog", "logging_ioerrlog", "logging_killlog",
1434 <  "logging_log_level", "logging_use_logging", "oper_entry", "$@2",
1435 <  "oper_name_b", "oper_items", "oper_item", "oper_name", "oper_name_t",
1436 <  "oper_user", "oper_password", "oper_encrypted",
1437 <  "oper_rsa_public_key_file", "oper_class", "oper_umodes", "$@3",
1438 <  "oper_umodes_items", "oper_umodes_item", "oper_flags", "$@4",
1439 <  "oper_flags_items", "oper_flags_item", "$@5", "$@6",
1440 <  "oper_flags_item_atom", "class_entry", "$@7", "class_name_b",
1441 <  "class_items", "class_item", "class_name", "class_name_t",
1442 <  "class_ping_time", "class_ping_warning", "class_number_per_ip",
1443 <  "class_connectfreq", "class_max_number", "class_max_global",
1444 <  "class_max_local", "class_max_ident", "class_sendq",
1445 <  "class_cidr_bitlen_ipv4", "class_cidr_bitlen_ipv6",
1446 <  "class_number_per_cidr", "listen_entry", "$@8", "listen_flags", "$@9",
1447 <  "listen_flags_items", "listen_flags_item", "listen_items", "listen_item",
1448 <  "listen_port", "$@10", "port_items", "port_item", "listen_address",
1449 <  "listen_host", "auth_entry", "$@11", "auth_items", "auth_item",
1450 <  "auth_user", "auth_passwd", "auth_class", "auth_encrypted", "auth_flags",
1451 <  "$@12", "auth_flags_items", "auth_flags_item", "$@13", "$@14",
1452 <  "auth_flags_item_atom", "auth_spoof", "auth_redir_serv",
1453 <  "auth_redir_port", "resv_entry", "$@15", "resv_items", "resv_item",
1454 <  "resv_creason", "resv_channel", "resv_nick", "shared_entry", "$@16",
1455 <  "shared_items", "shared_item", "shared_name", "shared_user",
1456 <  "shared_type", "$@17", "shared_types", "shared_type_item",
1457 <  "cluster_entry", "$@18", "cluster_items", "cluster_item", "cluster_name",
1508 <  "cluster_type", "$@19", "cluster_types", "cluster_type_item",
1509 <  "connect_entry", "$@20", "connect_name_b", "connect_items",
1510 <  "connect_item", "connect_name", "connect_name_t", "connect_host",
1430 >  "logging_entry", "logging_items", "logging_item", "logging_use_logging",
1431 >  "logging_timestamp", "logging_file_entry", "$@2", "logging_file_items",
1432 >  "logging_file_item", "logging_file_name", "logging_file_size",
1433 >  "logging_file_type", "$@3", "logging_file_type_items",
1434 >  "logging_file_type_item", "oper_entry", "$@4", "oper_items", "oper_item",
1435 >  "oper_name", "oper_user", "oper_password", "oper_encrypted",
1436 >  "oper_rsa_public_key_file", "oper_class", "oper_umodes", "$@5",
1437 >  "oper_umodes_items", "oper_umodes_item", "oper_flags", "$@6",
1438 >  "oper_flags_items", "oper_flags_item", "class_entry", "$@7",
1439 >  "class_items", "class_item", "class_name", "class_ping_time",
1440 >  "class_ping_warning", "class_number_per_ip", "class_connectfreq",
1441 >  "class_max_number", "class_max_global", "class_max_local",
1442 >  "class_max_ident", "class_sendq", "class_cidr_bitlen_ipv4",
1443 >  "class_cidr_bitlen_ipv6", "class_number_per_cidr", "listen_entry", "$@8",
1444 >  "listen_flags", "$@9", "listen_flags_items", "listen_flags_item",
1445 >  "listen_items", "listen_item", "listen_port", "$@10", "port_items",
1446 >  "port_item", "listen_address", "listen_host", "auth_entry", "$@11",
1447 >  "auth_items", "auth_item", "auth_user", "auth_passwd", "auth_class",
1448 >  "auth_encrypted", "auth_flags", "$@12", "auth_flags_items",
1449 >  "auth_flags_item", "auth_spoof", "auth_redir_serv", "auth_redir_port",
1450 >  "resv_entry", "$@13", "resv_items", "resv_item", "resv_creason",
1451 >  "resv_channel", "resv_nick", "service_entry", "service_items",
1452 >  "service_item", "service_name", "shared_entry", "$@14", "shared_items",
1453 >  "shared_item", "shared_name", "shared_user", "shared_type", "$@15",
1454 >  "shared_types", "shared_type_item", "cluster_entry", "$@16",
1455 >  "cluster_items", "cluster_item", "cluster_name", "cluster_type", "$@17",
1456 >  "cluster_types", "cluster_type_item", "connect_entry", "$@18",
1457 >  "connect_items", "connect_item", "connect_name", "connect_host",
1458    "connect_vhost", "connect_send_password", "connect_accept_password",
1459 <  "connect_port", "connect_aftype", "connect_flags", "$@21",
1460 <  "connect_flags_items", "connect_flags_item", "$@22", "$@23",
1461 <  "connect_flags_item_atom", "connect_rsa_public_key_file",
1462 <  "connect_encrypted", "connect_hub_mask", "connect_leaf_mask",
1463 <  "connect_class", "connect_cipher_preference", "kill_entry", "$@24",
1464 <  "kill_type", "$@25", "kill_type_items", "kill_type_item", "kill_items",
1465 <  "kill_item", "kill_user", "kill_reason", "deny_entry", "$@26",
1466 <  "deny_items", "deny_item", "deny_ip", "deny_reason", "exempt_entry",
1467 <  "exempt_items", "exempt_item", "exempt_ip", "gecos_entry", "$@27",
1468 <  "gecos_flags", "$@28", "gecos_flags_items", "gecos_flags_item",
1469 <  "gecos_items", "gecos_item", "gecos_name", "gecos_reason",
1470 <  "general_entry", "general_items", "general_item", "general_max_watch",
1524 <  "general_gline_min_cidr", "general_gline_min_cidr6",
1525 <  "general_burst_away", "general_use_whois_actually",
1459 >  "connect_port", "connect_aftype", "connect_flags", "$@19",
1460 >  "connect_flags_items", "connect_flags_item", "connect_encrypted",
1461 >  "connect_hub_mask", "connect_leaf_mask", "connect_class",
1462 >  "connect_ssl_cipher_list", "kill_entry", "$@20", "kill_type", "$@21",
1463 >  "kill_type_items", "kill_type_item", "kill_items", "kill_item",
1464 >  "kill_user", "kill_reason", "deny_entry", "$@22", "deny_items",
1465 >  "deny_item", "deny_ip", "deny_reason", "exempt_entry", "exempt_items",
1466 >  "exempt_item", "exempt_ip", "gecos_entry", "$@23", "gecos_flags", "$@24",
1467 >  "gecos_flags_items", "gecos_flags_item", "gecos_items", "gecos_item",
1468 >  "gecos_name", "gecos_reason", "general_entry", "general_items",
1469 >  "general_item", "general_max_watch", "general_gline_min_cidr",
1470 >  "general_gline_min_cidr6", "general_use_whois_actually",
1471    "general_reject_hold_time", "general_tkline_expire_notices",
1472    "general_kill_chase_time_limit", "general_hide_spoof_ips",
1473    "general_ignore_bogus_ts", "general_disable_remote_commands",
# Line 1539 | Line 1484 | static const char *const yytname[] =
1484    "general_opers_bypass_callerid", "general_pace_wait_simple",
1485    "general_short_motd", "general_no_oper_flood",
1486    "general_true_no_oper_flood", "general_oper_pass_resv",
1487 <  "general_message_locale", "general_idletime", "general_dots_in_ident",
1488 <  "general_max_targets", "general_servlink_path",
1489 <  "general_default_cipher_preference", "general_compression_level",
1490 <  "general_use_egd", "general_egdpool_path", "general_ping_cookie",
1491 <  "general_disable_auth", "general_throttle_time", "general_oper_umodes",
1492 <  "$@29", "umode_oitems", "umode_oitem", "general_oper_only_umodes",
1493 <  "$@30", "umode_items", "umode_item", "general_min_nonwildcard",
1494 <  "general_min_nonwildcard_simple", "general_default_floodcount",
1495 <  "general_client_flood", "gline_entry", "$@31", "gline_items",
1496 <  "gline_item", "gline_enable", "gline_duration", "gline_logging", "$@32",
1497 <  "gline_logging_types", "gline_logging_type_item", "gline_user",
1498 <  "gline_server", "gline_action", "$@33", "gdeny_types", "gdeny_type_item",
1499 <  "channel_entry", "channel_items", "channel_item",
1500 <  "channel_disable_fake_channels", "channel_restrict_channels",
1501 <  "channel_disable_local_channels", "channel_use_except",
1502 <  "channel_use_invex", "channel_use_knock", "channel_knock_delay",
1558 <  "channel_knock_delay_channel", "channel_max_chans_per_user",
1559 <  "channel_quiet_on_ban", "channel_max_bans",
1487 >  "general_message_locale", "general_dots_in_ident", "general_max_targets",
1488 >  "general_use_egd", "general_egdpool_path", "general_services_name",
1489 >  "general_ping_cookie", "general_disable_auth", "general_throttle_time",
1490 >  "general_oper_umodes", "$@25", "umode_oitems", "umode_oitem",
1491 >  "general_oper_only_umodes", "$@26", "umode_items", "umode_item",
1492 >  "general_min_nonwildcard", "general_min_nonwildcard_simple",
1493 >  "general_default_floodcount", "general_client_flood", "gline_entry",
1494 >  "$@27", "gline_items", "gline_item", "gline_enable", "gline_duration",
1495 >  "gline_logging", "$@28", "gline_logging_types",
1496 >  "gline_logging_type_item", "gline_user", "gline_server", "gline_action",
1497 >  "$@29", "gdeny_types", "gdeny_type_item", "channel_entry",
1498 >  "channel_items", "channel_item", "channel_disable_fake_channels",
1499 >  "channel_restrict_channels", "channel_disable_local_channels",
1500 >  "channel_use_except", "channel_use_invex", "channel_use_knock",
1501 >  "channel_knock_delay", "channel_knock_delay_channel",
1502 >  "channel_max_chans_per_user", "channel_quiet_on_ban", "channel_max_bans",
1503    "channel_default_split_user_count", "channel_default_split_server_count",
1504    "channel_no_create_on_split", "channel_no_join_on_split",
1505    "channel_burst_topicwho", "channel_jflood_count", "channel_jflood_time",
# Line 1596 | Line 1539 | static const yytype_uint16 yytoknum[] =
1539       465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
1540       475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
1541       485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
1542 <     495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
1600 <     505,   506,   507,   508,   509,   510,   511,   512,   513,   514,
1601 <      59,   125,   123,    61,    44
1542 >     495,    59,   125,   123,    61,    44
1543   };
1544   # endif
1545  
1546   /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
1547   static const yytype_uint16 yyr1[] =
1548   {
1549 <       0,   265,   266,   266,   267,   267,   267,   267,   267,   267,
1550 <     267,   267,   267,   267,   267,   267,   267,   267,   267,   267,
1551 <     267,   267,   267,   267,   267,   267,   268,   268,   269,   269,
1552 <     269,   269,   269,   269,   270,   270,   271,   271,   271,   271,
1553 <     272,   273,   273,   274,   274,   274,   275,   276,   277,   278,
1554 <     278,   279,   279,   279,   279,   279,   279,   279,   279,   279,
1555 <     279,   279,   279,   279,   281,   280,   282,   282,   283,   283,
1556 <     284,   285,   286,   287,   288,   289,   290,   291,   292,   293,
1557 <     294,   295,   296,   296,   297,   297,   297,   297,   298,   299,
1558 <     300,   301,   302,   302,   303,   303,   303,   303,   303,   303,
1559 <     303,   303,   303,   303,   303,   303,   303,   304,   305,   306,
1560 <     307,   308,   309,   310,   311,   312,   313,   314,   314,   314,
1561 <     314,   314,   314,   314,   315,   317,   316,   318,   318,   319,
1562 <     319,   320,   320,   320,   320,   320,   320,   320,   320,   320,
1563 <     321,   322,   323,   324,   325,   326,   327,   329,   328,   330,
1564 <     330,   331,   331,   331,   331,   331,   331,   331,   331,   331,
1565 <     331,   331,   331,   331,   331,   331,   331,   331,   331,   331,
1566 <     333,   332,   334,   334,   336,   335,   337,   335,   338,   338,
1567 <     338,   338,   338,   338,   338,   338,   338,   338,   338,   338,
1568 <     338,   338,   338,   338,   340,   339,   341,   341,   342,   342,
1569 <     343,   343,   343,   343,   343,   343,   343,   343,   343,   343,
1570 <     343,   343,   343,   343,   344,   345,   346,   347,   348,   349,
1571 <     350,   351,   352,   353,   354,   355,   356,   357,   359,   358,
1572 <     361,   360,   362,   362,   363,   363,   363,   364,   364,   365,
1573 <     365,   365,   365,   365,   367,   366,   368,   368,   369,   369,
1574 <     370,   371,   373,   372,   374,   374,   375,   375,   375,   375,
1575 <     375,   375,   375,   375,   375,   376,   377,   378,   379,   381,
1576 <     380,   382,   382,   384,   383,   385,   383,   386,   386,   386,
1577 <     386,   386,   386,   386,   386,   386,   386,   387,   388,   389,
1578 <     391,   390,   392,   392,   393,   393,   393,   393,   394,   395,
1579 <     396,   398,   397,   399,   399,   400,   400,   400,   400,   401,
1580 <     402,   404,   403,   405,   405,   406,   406,   406,   406,   406,
1581 <     406,   406,   406,   406,   406,   406,   408,   407,   409,   409,
1582 <     410,   410,   410,   411,   413,   412,   414,   414,   415,   415,
1583 <     415,   415,   415,   415,   415,   415,   415,   415,   415,   417,
1584 <     416,   418,   418,   419,   419,   420,   420,   420,   420,   420,
1585 <     420,   420,   420,   420,   420,   420,   420,   420,   420,   420,
1586 <     421,   422,   423,   424,   425,   426,   427,   428,   428,   430,
1587 <     429,   431,   431,   433,   432,   434,   432,   435,   435,   435,
1588 <     435,   435,   436,   437,   438,   439,   440,   441,   443,   442,
1589 <     445,   444,   446,   446,   447,   448,   448,   449,   449,   449,
1590 <     449,   450,   451,   453,   452,   454,   454,   455,   455,   455,
1591 <     456,   457,   458,   459,   459,   460,   460,   461,   463,   462,
1592 <     465,   464,   466,   466,   467,   468,   468,   469,   469,   469,
1593 <     469,   470,   471,   472,   473,   473,   474,   474,   474,   474,
1594 <     474,   474,   474,   474,   474,   474,   474,   474,   474,   474,
1595 <     474,   474,   474,   474,   474,   474,   474,   474,   474,   474,
1596 <     474,   474,   474,   474,   474,   474,   474,   474,   474,   474,
1597 <     474,   474,   474,   474,   474,   474,   474,   474,   474,   474,
1598 <     474,   474,   474,   474,   474,   474,   474,   474,   474,   474,
1599 <     474,   474,   475,   476,   477,   478,   479,   480,   481,   482,
1600 <     483,   484,   485,   486,   487,   488,   489,   490,   491,   492,
1601 <     493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
1602 <     502,   503,   503,   504,   505,   506,   507,   508,   509,   510,
1603 <     511,   512,   513,   514,   515,   516,   517,   518,   519,   520,
1604 <     521,   522,   523,   525,   524,   526,   526,   527,   527,   527,
1605 <     527,   527,   527,   527,   527,   527,   527,   527,   527,   527,
1606 <     527,   527,   527,   527,   527,   527,   529,   528,   530,   530,
1607 <     531,   531,   531,   531,   531,   531,   531,   531,   531,   531,
1608 <     531,   531,   531,   531,   531,   531,   531,   531,   531,   532,
1609 <     533,   534,   535,   537,   536,   538,   538,   539,   539,   539,
1610 <     539,   539,   539,   539,   540,   541,   543,   542,   544,   544,
1611 <     545,   545,   546,   547,   549,   548,   550,   550,   551,   551,
1612 <     552,   553,   553,   554,   554,   554,   554,   554,   554,   554,
1613 <     554,   554,   554,   554,   554,   554,   554,   554,   554,   554,
1614 <     554,   554,   555,   556,   557,   558,   559,   560,   561,   562,
1615 <     563,   564,   565,   566,   567,   568,   569,   570,   571,   572,
1675 <     573,   574,   574,   575,   575,   575,   575,   575,   575,   575,
1676 <     575,   576,   577,   578,   579,   580,   581,   582
1549 >       0,   246,   247,   247,   248,   248,   248,   248,   248,   248,
1550 >     248,   248,   248,   248,   248,   248,   248,   248,   248,   248,
1551 >     248,   248,   248,   248,   248,   248,   248,   249,   249,   250,
1552 >     250,   250,   250,   250,   250,   251,   251,   252,   252,   252,
1553 >     252,   253,   254,   254,   255,   255,   255,   256,   257,   258,
1554 >     259,   259,   260,   260,   260,   260,   260,   260,   260,   260,
1555 >     260,   260,   260,   260,   260,   260,   260,   262,   261,   263,
1556 >     263,   264,   264,   265,   266,   267,   268,   269,   270,   271,
1557 >     272,   273,   274,   275,   276,   277,   278,   279,   279,   280,
1558 >     280,   280,   280,   281,   282,   283,   284,   285,   285,   286,
1559 >     286,   286,   286,   287,   288,   290,   289,   291,   291,   292,
1560 >     292,   292,   292,   293,   294,   294,   296,   295,   297,   297,
1561 >     298,   298,   298,   298,   298,   298,   298,   300,   299,   301,
1562 >     301,   302,   302,   302,   302,   302,   302,   302,   302,   302,
1563 >     303,   304,   305,   306,   307,   308,   310,   309,   311,   311,
1564 >     312,   312,   312,   312,   312,   312,   312,   312,   312,   312,
1565 >     312,   312,   312,   312,   312,   312,   312,   312,   312,   312,
1566 >     314,   313,   315,   315,   316,   316,   316,   316,   316,   316,
1567 >     316,   316,   316,   316,   316,   316,   316,   316,   316,   316,
1568 >     316,   316,   318,   317,   319,   319,   320,   320,   320,   320,
1569 >     320,   320,   320,   320,   320,   320,   320,   320,   320,   320,
1570 >     321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
1571 >     331,   332,   333,   335,   334,   337,   336,   338,   338,   339,
1572 >     339,   339,   340,   340,   341,   341,   341,   341,   341,   343,
1573 >     342,   344,   344,   345,   345,   346,   347,   349,   348,   350,
1574 >     350,   351,   351,   351,   351,   351,   351,   351,   351,   351,
1575 >     352,   353,   354,   355,   357,   356,   358,   358,   359,   359,
1576 >     359,   359,   359,   359,   359,   359,   359,   360,   361,   362,
1577 >     364,   363,   365,   365,   366,   366,   366,   366,   367,   368,
1578 >     369,   370,   371,   371,   372,   372,   373,   375,   374,   376,
1579 >     376,   377,   377,   377,   377,   378,   379,   381,   380,   382,
1580 >     382,   383,   383,   383,   383,   383,   383,   383,   383,   383,
1581 >     383,   385,   384,   386,   386,   387,   387,   387,   388,   390,
1582 >     389,   391,   391,   392,   392,   392,   392,   392,   392,   392,
1583 >     392,   392,   392,   394,   393,   395,   395,   396,   396,   396,
1584 >     396,   396,   396,   396,   396,   396,   396,   396,   396,   396,
1585 >     396,   397,   398,   399,   400,   401,   402,   403,   403,   405,
1586 >     404,   406,   406,   407,   407,   407,   407,   408,   409,   410,
1587 >     411,   412,   414,   413,   416,   415,   417,   417,   418,   419,
1588 >     419,   420,   420,   420,   420,   421,   422,   424,   423,   425,
1589 >     425,   426,   426,   426,   427,   428,   429,   430,   430,   431,
1590 >     431,   432,   434,   433,   436,   435,   437,   437,   438,   439,
1591 >     439,   440,   440,   440,   440,   441,   442,   443,   444,   444,
1592 >     445,   445,   445,   445,   445,   445,   445,   445,   445,   445,
1593 >     445,   445,   445,   445,   445,   445,   445,   445,   445,   445,
1594 >     445,   445,   445,   445,   445,   445,   445,   445,   445,   445,
1595 >     445,   445,   445,   445,   445,   445,   445,   445,   445,   445,
1596 >     445,   445,   445,   445,   445,   445,   445,   445,   445,   445,
1597 >     445,   445,   446,   447,   448,   449,   450,   451,   452,   453,
1598 >     454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
1599 >     464,   465,   466,   467,   468,   469,   470,   471,   472,   472,
1600 >     473,   473,   474,   475,   476,   477,   478,   479,   480,   481,
1601 >     482,   483,   484,   485,   486,   487,   488,   489,   490,   492,
1602 >     491,   493,   493,   494,   494,   494,   494,   494,   494,   494,
1603 >     494,   494,   494,   494,   494,   494,   494,   494,   494,   494,
1604 >     494,   494,   494,   496,   495,   497,   497,   498,   498,   498,
1605 >     498,   498,   498,   498,   498,   498,   498,   498,   498,   498,
1606 >     498,   498,   498,   498,   498,   498,   498,   499,   500,   501,
1607 >     502,   504,   503,   505,   505,   506,   506,   506,   506,   506,
1608 >     506,   506,   507,   508,   510,   509,   511,   511,   512,   512,
1609 >     513,   514,   516,   515,   517,   517,   518,   518,   519,   520,
1610 >     520,   521,   521,   521,   521,   521,   521,   521,   521,   521,
1611 >     521,   521,   521,   521,   521,   521,   521,   521,   521,   521,
1612 >     522,   523,   524,   525,   526,   527,   528,   529,   530,   531,
1613 >     532,   533,   534,   535,   536,   537,   538,   539,   540,   541,
1614 >     541,   542,   542,   542,   542,   542,   542,   542,   542,   543,
1615 >     544,   545,   546,   547,   548,   549
1616   };
1617  
1618   /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
# Line 1681 | Line 1620 | static const yytype_uint8 yyr2[] =
1620   {
1621         0,     2,     0,     2,     1,     1,     1,     1,     1,     1,
1622         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1623 <       1,     1,     1,     1,     2,     2,     0,     1,     2,     3,
1624 <       3,     3,     3,     3,     0,     1,     2,     3,     3,     3,
1625 <       5,     2,     1,     1,     1,     2,     4,     4,     5,     2,
1626 <       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1627 <       1,     1,     1,     2,     0,     5,     3,     1,     1,     1,
1628 <       4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1629 <       4,     5,     2,     1,     1,     1,     1,     2,     4,     4,
1630 <       4,     5,     2,     1,     1,     1,     1,     1,     1,     1,
1631 <       1,     1,     1,     1,     1,     1,     2,     4,     4,     4,
1632 <       4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1633 <       4,     4,     4,     4,     4,     0,     7,     0,     1,     2,
1623 >       1,     1,     1,     1,     1,     2,     2,     0,     1,     2,
1624 >       3,     3,     3,     3,     3,     0,     1,     2,     3,     3,
1625 >       3,     5,     2,     1,     1,     1,     2,     4,     4,     5,
1626 >       2,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1627 >       1,     1,     1,     1,     1,     1,     2,     0,     5,     3,
1628 >       1,     1,     1,     4,     4,     4,     4,     4,     4,     4,
1629 >       4,     4,     4,     4,     4,     4,     5,     2,     1,     1,
1630 >       1,     1,     2,     4,     4,     4,     5,     2,     1,     1,
1631 >       1,     1,     2,     4,     4,     0,     6,     2,     1,     1,
1632 >       1,     1,     2,     4,     4,     4,     0,     5,     3,     1,
1633 >       1,     1,     1,     1,     1,     1,     1,     0,     6,     2,
1634         1,     1,     1,     1,     1,     1,     1,     1,     1,     2,
1635 <       4,     1,     4,     4,     4,     4,     4,     0,     5,     3,
1635 >       4,     4,     4,     4,     4,     4,     0,     5,     3,     1,
1636         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1637         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1638 <       0,     5,     3,     1,     0,     3,     0,     2,     1,     1,
1638 >       0,     5,     3,     1,     1,     1,     1,     1,     1,     1,
1639         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1640 <       1,     1,     1,     1,     0,     7,     0,     1,     2,     1,
1641 <       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1642 <       1,     1,     1,     2,     4,     1,     4,     4,     4,     4,
1643 <       4,     4,     4,     4,     4,     4,     4,     4,     0,     6,
1644 <       0,     5,     3,     1,     1,     1,     1,     2,     1,     1,
1645 <       1,     1,     1,     2,     0,     5,     3,     1,     1,     3,
1646 <       4,     4,     0,     6,     2,     1,     1,     1,     1,     1,
1647 <       1,     1,     1,     1,     2,     4,     4,     4,     4,     0,
1709 <       5,     3,     1,     0,     3,     0,     2,     1,     1,     1,
1640 >       1,     1,     0,     6,     2,     1,     1,     1,     1,     1,
1641 >       1,     1,     1,     1,     1,     1,     1,     1,     1,     2,
1642 >       4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1643 >       4,     4,     4,     0,     6,     0,     5,     3,     1,     1,
1644 >       1,     1,     2,     1,     1,     1,     1,     1,     2,     0,
1645 >       5,     3,     1,     1,     3,     4,     4,     0,     6,     2,
1646 >       1,     1,     1,     1,     1,     1,     1,     1,     1,     2,
1647 >       4,     4,     4,     4,     0,     5,     3,     1,     1,     1,
1648         1,     1,     1,     1,     1,     1,     1,     4,     4,     4,
1649         0,     6,     2,     1,     1,     1,     1,     2,     4,     4,
1650 <       4,     0,     6,     2,     1,     1,     1,     1,     2,     4,
1651 <       4,     0,     5,     3,     1,     1,     1,     1,     1,     1,
1652 <       1,     1,     1,     1,     1,     1,     0,     6,     2,     1,
1653 <       1,     1,     2,     4,     0,     5,     3,     1,     1,     1,
1654 <       1,     1,     1,     1,     1,     1,     1,     1,     1,     0,
1655 <       7,     0,     1,     2,     1,     1,     1,     1,     1,     1,
1656 <       1,     1,     1,     1,     1,     1,     1,     1,     1,     2,
1657 <       4,     1,     4,     4,     4,     4,     4,     4,     4,     0,
1658 <       5,     3,     1,     0,     3,     0,     2,     1,     1,     1,
1659 <       1,     1,     4,     4,     4,     4,     4,     4,     0,     6,
1660 <       0,     5,     3,     1,     1,     2,     1,     1,     1,     1,
1661 <       1,     4,     4,     0,     6,     2,     1,     1,     1,     1,
1662 <       4,     4,     5,     2,     1,     1,     1,     4,     0,     6,
1663 <       0,     5,     3,     1,     1,     2,     1,     1,     1,     1,
1726 <       1,     4,     4,     5,     2,     1,     1,     1,     1,     1,
1650 >       4,     5,     2,     1,     1,     1,     4,     0,     6,     2,
1651 >       1,     1,     1,     1,     2,     4,     4,     0,     5,     3,
1652 >       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1653 >       1,     0,     6,     2,     1,     1,     1,     2,     4,     0,
1654 >       5,     3,     1,     1,     1,     1,     1,     1,     1,     1,
1655 >       1,     1,     1,     0,     6,     2,     1,     1,     1,     1,
1656 >       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1657 >       2,     4,     4,     4,     4,     4,     4,     4,     4,     0,
1658 >       5,     3,     1,     1,     1,     1,     1,     4,     4,     4,
1659 >       4,     4,     0,     6,     0,     5,     3,     1,     1,     2,
1660 >       1,     1,     1,     1,     1,     4,     4,     0,     6,     2,
1661 >       1,     1,     1,     1,     4,     4,     5,     2,     1,     1,
1662 >       1,     4,     0,     6,     0,     5,     3,     1,     1,     2,
1663 >       1,     1,     1,     1,     1,     4,     4,     5,     2,     1,
1664         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1665         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1666         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
# Line 1733 | Line 1670 | static const yytype_uint8 yyr2[] =
1670         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1671         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1672         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1673 <       4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1674 <       4,     4,     4,     0,     5,     3,     1,     1,     1,     1,
1673 >       4,     4,     4,     4,     4,     4,     4,     4,     4,     0,
1674 >       5,     3,     1,     1,     1,     1,     1,     1,     1,     1,
1675         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1676 <       1,     1,     1,     1,     1,     1,     0,     5,     3,     1,
1676 >       1,     1,     1,     0,     5,     3,     1,     1,     1,     1,
1677         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1678 <       1,     1,     1,     1,     1,     1,     1,     1,     1,     4,
1679 <       4,     4,     4,     0,     6,     2,     1,     1,     1,     1,
1743 <       1,     1,     1,     1,     4,     4,     0,     5,     3,     1,
1678 >       1,     1,     1,     1,     1,     1,     1,     4,     4,     4,
1679 >       4,     0,     6,     2,     1,     1,     1,     1,     1,     1,
1680         1,     1,     4,     4,     0,     5,     3,     1,     1,     1,
1681 <       5,     2,     1,     1,     1,     1,     1,     1,     1,     1,
1681 >       4,     4,     0,     5,     3,     1,     1,     1,     5,     2,
1682 >       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1683         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
1747       1,     1,     4,     4,     4,     4,     4,     4,     4,     4,
1684         4,     4,     4,     4,     4,     4,     4,     4,     4,     4,
1685 <       5,     2,     1,     1,     1,     1,     1,     1,     1,     1,
1686 <       1,     4,     4,     4,     4,     4,     4,     4
1685 >       4,     4,     4,     4,     4,     4,     4,     4,     5,     2,
1686 >       1,     1,     1,     1,     1,     1,     1,     1,     1,     4,
1687 >       4,     4,     4,     4,     4,     4
1688   };
1689  
1690 < /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
1691 <   STATE-NUM when YYTABLE doesn't specify something else to do.  Zero
1690 > /* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM.
1691 >   Performed when YYTABLE doesn't specify something else to do.  Zero
1692     means the default is an error.  */
1693   static const yytype_uint16 yydefact[] =
1694   {
1695 <       2,     0,     1,     0,     0,     0,   194,   349,   413,     0,
1696 <     428,     0,   603,   252,   398,   228,     0,     0,   125,   290,
1697 <       0,     0,   301,   326,     3,    23,    11,     4,     5,     6,
1698 <       8,     9,    10,    13,    14,    15,    16,    17,    18,    19,
1699 <      22,    20,    21,     7,    12,    24,    25,     0,     0,   196,
1763 <     351,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1764 <       0,   127,     0,     0,     0,     0,     0,     0,     0,     0,
1765 <       0,     0,    83,    84,    86,    85,   651,     0,     0,     0,
1766 <       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1767 <       0,     0,     0,     0,     0,     0,   632,   650,   645,   633,
1768 <     634,   635,   636,   638,   639,   640,   641,   637,   642,   643,
1769 <     644,   646,   647,   648,   649,   215,     0,   197,   371,     0,
1770 <     352,     0,   426,     0,     0,   424,   425,     0,   501,     0,
1695 >       2,     0,     1,     0,     0,     0,   192,   343,   397,     0,
1696 >     412,     0,   581,   247,   382,   223,     0,     0,   127,   280,
1697 >       0,     0,   297,   321,     0,     3,    24,    11,     4,     5,
1698 >       6,     8,     9,    10,    13,    14,    15,    16,    17,    18,
1699 >      19,    20,    23,    21,    22,     7,    12,    25,    26,     0,
1700         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1701         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1702 +       0,     0,     0,     0,     0,    88,    89,    91,    90,   629,
1703         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1704 <       0,   576,     0,   553,     0,     0,     0,     0,     0,     0,
1704 >       0,     0,     0,     0,     0,     0,     0,     0,     0,   610,
1705 >     628,   623,   611,   612,   613,   614,   616,   617,   618,   619,
1706 >     615,   620,   621,   622,   624,   625,   626,   627,     0,     0,
1707 >       0,   410,     0,     0,   408,   409,     0,   481,     0,     0,
1708         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1776       0,     0,     0,     0,     0,   445,   500,   495,   496,   493,
1777     497,   498,   494,   456,   446,   447,   485,   448,   449,   450,
1778     451,   452,   453,   454,   455,   490,   457,   458,   459,   460,
1779     499,   462,   467,   463,   465,   464,   479,   480,   466,   468,
1780     469,   470,   471,   473,   472,   461,   475,   484,   486,   487,
1781     476,   477,   491,   492,   489,   478,   474,   482,   483,   481,
1782     488,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1783       0,     0,     0,     0,     0,     0,     0,     0,     0,    93,
1784      94,    95,    98,   105,    99,   103,   100,   101,   104,   102,
1785      96,    97,     0,     0,     0,     0,    42,    43,    44,   141,
1786       0,   128,     0,   680,     0,     0,     0,     0,     0,     0,
1787       0,     0,   672,   673,   674,   678,   675,   677,   676,   679,
1788       0,     0,     0,     0,     0,     0,     0,     0,    64,     0,
1789       0,     0,     0,     0,    50,    62,    61,    58,    51,    60,
1790      54,    55,    56,    52,    59,    57,    53,     0,     0,    87,
1791       0,     0,     0,     0,    82,     0,     0,     0,     0,     0,
1709         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1710 <       0,     0,     0,     0,   631,     0,     0,   419,     0,     0,
1794 <       0,   416,   417,   418,     0,     0,   423,   440,     0,     0,
1795 <     430,   439,     0,   436,   437,   438,     0,     0,     0,     0,
1710 >       0,     0,     0,     0,     0,     0,   553,     0,   529,     0,
1711         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1712         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1713 +     429,   479,   474,   475,   476,   477,   473,   440,   430,   431,
1714 +     467,   432,   433,   434,   435,   436,   437,   438,   439,   470,
1715 +     441,   442,   443,   444,   478,   446,   451,   447,   449,   448,
1716 +     462,   463,   450,   452,   453,   454,   455,   456,   445,   458,
1717 +     459,   460,   480,   471,   472,   469,   461,   457,   465,   466,
1718 +     464,   468,     0,     0,     0,     0,     0,     0,     0,     0,
1719 +      98,    99,   100,   101,     0,     0,     0,     0,     0,    43,
1720 +      44,    45,     0,     0,   658,     0,     0,     0,     0,     0,
1721 +       0,     0,     0,   650,   651,   652,   656,   653,   655,   654,
1722 +     657,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1723 +      67,     0,     0,     0,     0,     0,     0,    51,    64,    63,
1724 +      60,    59,    65,    52,    62,    55,    56,    57,    53,    61,
1725 +      58,    54,     0,     0,   295,     0,     0,   293,   294,    92,
1726 +       0,     0,     0,     0,    87,     0,     0,     0,     0,     0,
1727         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1728 +       0,     0,     0,     0,   609,     0,     0,     0,     0,     0,
1729         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1730 +     195,   196,   199,   200,   202,   203,   204,   205,   206,   207,
1731 +     208,   197,   198,   201,     0,     0,     0,     0,     0,   369,
1732 +       0,     0,     0,     0,     0,     0,     0,     0,     0,   346,
1733 +     347,   348,   349,   350,   351,   353,   352,   355,   359,   356,
1734 +     357,   358,   354,   403,     0,     0,     0,   400,   401,   402,
1735 +       0,     0,   407,   424,     0,     0,   414,   423,     0,   420,
1736 +     421,   422,     0,     0,     0,     0,     0,     0,     0,     0,
1737         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1801       0,     0,   444,   613,   624,     0,     0,   616,     0,     0,
1802       0,   606,   607,   608,   609,   610,   611,   612,     0,     0,
1803       0,   269,     0,     0,     0,     0,     0,     0,   255,   256,
1804     257,   258,   263,   259,   260,   261,   262,   410,     0,   400,
1805       0,   409,     0,   406,   407,   408,     0,   230,     0,     0,
1806       0,   240,     0,   238,   239,   241,   242,   106,     0,     0,
1738         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1808       0,    92,    45,     0,     0,     0,    41,     0,     0,     0,
1809       0,     0,     0,   293,   294,   295,   296,     0,     0,     0,
1810       0,     0,     0,     0,     0,   671,    63,     0,     0,     0,
1739         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1812      49,     0,     0,   311,     0,     0,   304,   305,   306,   307,
1813       0,     0,   334,     0,   329,   330,   331,     0,     0,     0,
1814      81,     0,     0,     0,     0,     0,    26,     0,     0,     0,
1740         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1741 <     630,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1742 <       0,     0,     0,     0,     0,     0,   199,   200,   203,   204,
1743 <     206,   207,   208,   209,   210,   211,   212,   201,   202,   205,
1744 <       0,     0,     0,     0,     0,     0,   379,     0,     0,     0,
1745 <       0,     0,     0,     0,     0,     0,   354,   355,   356,   357,
1746 <     358,   359,   361,   360,   362,   367,   366,   363,   364,   365,
1747 <     368,     0,     0,     0,   415,     0,   422,     0,     0,     0,
1748 <       0,   435,     0,     0,     0,     0,     0,     0,     0,     0,
1741 >       0,     0,     0,     0,   428,   591,   602,     0,     0,   594,
1742 >       0,     0,     0,   584,   585,   586,   587,   588,   589,   590,
1743 >       0,     0,     0,   264,     0,     0,     0,     0,     0,     0,
1744 >     250,   251,   252,   253,   258,   254,   255,   256,   257,   394,
1745 >       0,   384,     0,   393,     0,   390,   391,   392,     0,   225,
1746 >       0,     0,     0,   235,     0,   233,   234,   236,   237,   102,
1747 >       0,     0,     0,    97,     0,    46,     0,     0,     0,    42,
1748 >       0,     0,     0,   170,     0,     0,     0,   146,     0,     0,
1749 >     130,   131,   132,   133,   136,   137,   135,   134,   138,     0,
1750 >       0,     0,     0,     0,   283,   284,   285,   286,     0,     0,
1751 >       0,     0,     0,     0,     0,     0,   649,    66,     0,     0,
1752         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1753 +       0,     0,     0,    50,     0,     0,   307,     0,     0,   300,
1754 +     301,   302,   303,     0,     0,   329,     0,   324,   325,   326,
1755 +       0,     0,   292,     0,     0,     0,    86,     0,     0,     0,
1756 +       0,     0,    27,     0,     0,     0,     0,     0,     0,     0,
1757 +       0,     0,     0,     0,     0,     0,   608,   209,     0,     0,
1758         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1759 +       0,     0,   194,   360,     0,     0,     0,     0,     0,     0,
1760 +       0,     0,     0,     0,     0,     0,     0,     0,   345,     0,
1761 +       0,     0,   399,     0,   406,     0,     0,     0,     0,   419,
1762         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1763         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1828       0,     0,     0,    34,     0,     0,     0,     0,     0,     0,
1829     443,     0,     0,     0,     0,     0,     0,     0,   605,   264,
1830       0,     0,     0,     0,     0,     0,     0,     0,     0,   254,
1831       0,     0,     0,     0,   405,   243,     0,     0,     0,     0,
1832       0,   237,     0,     0,     0,     0,     0,     0,     0,     0,
1764         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1834      91,     0,     0,    40,     0,     0,     0,   170,     0,     0,
1835       0,   147,     0,     0,   130,   131,   132,   133,   136,   137,
1836     135,   134,   138,   297,     0,     0,     0,     0,   292,     0,
1837       0,     0,     0,     0,     0,     0,   670,     0,     0,     0,
1838       0,     0,     0,     0,     0,     0,     0,     0,     0,    48,
1839     308,     0,     0,     0,     0,   303,   332,     0,     0,     0,
1840     328,    90,    89,    88,   667,   664,   663,   652,   654,    26,
1841      26,    26,    26,    26,    28,    27,   658,   659,   662,   660,
1842     665,   666,   668,   669,   661,   653,   655,   656,   657,   213,
1765         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1766 <       0,     0,     0,     0,   198,   369,     0,     0,     0,     0,
1766 >       0,     0,     0,     0,     0,     0,    35,     0,     0,     0,
1767 >       0,     0,     0,     0,   427,     0,     0,     0,     0,     0,
1768 >       0,     0,   583,   259,     0,     0,     0,     0,     0,     0,
1769 >       0,     0,     0,   249,     0,     0,     0,     0,   389,   238,
1770 >       0,     0,     0,     0,     0,   232,     0,     0,    96,     0,
1771 >       0,     0,    41,   139,     0,     0,     0,     0,     0,     0,
1772 >       0,     0,     0,   129,   287,     0,     0,     0,     0,   282,
1773 >       0,     0,     0,     0,     0,     0,     0,   648,     0,     0,
1774         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1775 <       0,   353,     0,     0,   414,   427,     0,     0,     0,   429,
1776 <     514,   518,   505,   534,   547,   546,   601,   551,   512,   543,
1777 <     549,   513,   503,   504,   521,   510,   542,   511,   524,   509,
1778 <     523,   522,   517,   516,   515,   544,   502,   541,   599,   600,
1779 <     538,   535,   580,   596,   597,   581,   582,   583,   584,   591,
1780 <     585,   594,   598,   587,   592,   588,   593,   586,   590,   589,
1852 <     595,     0,   579,   540,   557,   573,   574,   558,   559,   560,
1853 <     561,   568,   562,   571,   575,   564,   569,   565,   570,   563,
1854 <     567,   566,   572,     0,   556,   533,   536,   550,   507,   545,
1855 <     508,   537,   526,   531,   532,   529,   530,   527,   528,   520,
1856 <     519,    34,    34,    34,    36,    35,   602,   552,   539,   548,
1857 <     506,   525,     0,     0,     0,     0,     0,     0,   604,     0,
1858 <       0,   275,     0,     0,     0,     0,     0,   253,     0,     0,
1859 <       0,   399,     0,     0,     0,   248,   244,   247,   229,   110,
1860 <     116,   114,   113,   115,   111,   112,   109,   117,   123,   118,
1861 <     122,   120,   121,   119,   108,   107,   124,    46,    47,   139,
1862 <       0,     0,     0,     0,     0,     0,     0,     0,     0,   129,
1863 <       0,     0,     0,   291,   686,   681,   685,   683,   687,   682,
1864 <     684,    74,    80,    72,    76,    75,    71,    70,    68,    69,
1865 <       0,    67,    73,    79,    77,    78,     0,     0,     0,   302,
1866 <       0,     0,   327,    29,    30,    31,    32,    33,     0,     0,
1775 >       0,     0,    49,   304,     0,     0,     0,     0,   299,   327,
1776 >       0,     0,     0,   323,     0,   291,    95,    94,    93,   645,
1777 >     642,   641,   630,   632,    27,    27,    27,    27,    27,    29,
1778 >      28,   636,   637,   640,   638,   643,   644,   646,   647,   639,
1779 >     631,   633,   634,   635,     0,     0,     0,     0,     0,     0,
1780 >       0,     0,     0,     0,     0,     0,     0,   193,     0,     0,
1781         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1782 <       0,   195,     0,     0,     0,     0,     0,     0,   385,     0,
1783 <       0,     0,     0,     0,     0,     0,     0,   350,   420,   421,
1784 <     441,   442,   434,     0,   433,   577,     0,   554,     0,    37,
1785 <      38,    39,   629,   628,     0,   627,   615,   614,   621,   620,
1786 <       0,   619,   623,   622,   267,   268,   273,     0,   272,     0,
1787 <     266,   289,   288,   287,   265,   412,   404,     0,   403,   411,
1788 <     235,   236,   234,     0,   233,   251,   250,     0,     0,     0,
1789 <       0,     0,   176,     0,     0,     0,     0,     0,   126,   299,
1790 <     300,   298,    65,     0,   309,   315,   321,   325,   324,   323,
1791 <     320,   316,   319,   322,   317,   318,     0,   314,   310,   333,
1792 <     338,   344,   348,   347,   346,   343,   339,   342,   345,   340,
1793 <     341,     0,   337,   225,   226,   219,   221,   223,   222,   220,
1794 <     214,   227,   218,   216,   217,   224,   375,   377,   378,   397,
1795 <     396,   393,   383,     0,   382,     0,   372,   394,   395,   370,
1796 <     376,   392,   374,   373,   431,     0,   578,   555,   625,     0,
1797 <     617,     0,     0,   270,   275,   281,   282,   278,   284,   280,
1798 <     279,   286,   283,   285,   277,   276,   401,     0,   231,     0,
1799 <     249,   246,   245,   146,   144,   174,     0,   173,     0,   140,
1800 <     143,   145,   151,   167,   168,   152,   153,   154,   155,   162,
1801 <     156,   165,   169,   158,   163,   159,   164,   157,   161,   160,
1802 <     166,     0,   150,   142,    66,   312,     0,   335,     0,     0,
1803 <     380,   385,   389,   390,   387,   388,   391,   386,   432,   626,
1804 <     618,   274,   271,   402,   232,     0,   171,   176,   186,   184,
1805 <     193,   183,   178,   187,   191,   180,   188,   190,   185,   179,
1806 <     192,   189,   181,   182,   177,   148,     0,   313,   336,   384,
1807 <     381,   175,   172,   149
1782 >       0,     0,   344,     0,     0,   398,   411,     0,     0,     0,
1783 >     413,   493,   497,   513,   579,   527,   491,   521,   524,   492,
1784 >     483,   484,   500,   489,   490,   503,   488,   502,   501,   496,
1785 >     495,   494,   522,   482,   520,   577,   578,   517,   514,   564,
1786 >     557,   574,   575,   558,   559,   560,   561,   569,   562,   572,
1787 >     576,   565,   570,   566,   571,   563,   568,   567,   573,     0,
1788 >     556,   519,   539,   533,   550,   551,   534,   535,   536,   537,
1789 >     545,   538,   548,   552,   541,   546,   542,   547,   540,   544,
1790 >     543,   549,     0,   532,   512,   515,   526,   486,   487,   516,
1791 >     505,   510,   511,   508,   509,   506,   507,   499,   498,    35,
1792 >      35,    35,    37,    36,   580,   525,   528,   518,   523,   485,
1793 >     504,     0,     0,     0,     0,     0,     0,   582,     0,     0,
1794 >       0,     0,     0,     0,     0,     0,   248,     0,     0,     0,
1795 >     383,     0,     0,     0,   243,   239,   242,   224,   104,   103,
1796 >       0,     0,   116,     0,     0,   108,   109,   111,   110,    47,
1797 >      48,     0,     0,     0,     0,     0,     0,     0,     0,   128,
1798 >       0,     0,     0,   281,   664,   659,   663,   661,   665,   660,
1799 >     662,    79,    85,    77,    81,    80,    74,    73,    75,    71,
1800 >      72,     0,    70,    78,    76,    84,    82,    83,     0,     0,
1801 >       0,   298,     0,     0,   322,   296,    30,    31,    32,    33,
1802 >      34,   220,   221,   214,   216,   218,   217,   215,   210,   222,
1803 >     213,   211,   212,   219,   365,   367,   368,   380,   377,   373,
1804 >     374,   376,   375,     0,   372,   362,   378,   379,   361,   366,
1805 >     364,   381,   363,   404,   405,   425,   426,   418,     0,   417,
1806 >     554,     0,   530,     0,    38,    39,    40,   607,   606,     0,
1807 >     605,   593,   592,   599,   598,     0,   597,   601,   600,   262,
1808 >     263,   272,   269,   274,   271,   270,   276,   273,   275,   268,
1809 >       0,   267,   261,   279,   278,   277,   260,   396,   388,     0,
1810 >     387,   395,   230,   231,   229,     0,   228,   246,   245,     0,
1811 >       0,     0,   112,     0,     0,     0,     0,   107,   145,   143,
1812 >     185,   182,   181,   174,   176,   191,   186,   189,   184,   175,
1813 >     190,   178,   187,   179,   188,   183,   177,   180,     0,   173,
1814 >     140,   142,   144,   156,   150,   167,   168,   151,   152,   153,
1815 >     154,   162,   155,   165,   169,   158,   163,   159,   164,   157,
1816 >     161,   160,   166,     0,   149,   141,   289,   290,   288,    68,
1817 >       0,   305,   311,   317,   320,   313,   319,   314,   318,   316,
1818 >     312,   315,     0,   310,   306,   328,   333,   339,   342,   335,
1819 >     341,   336,   340,   338,   334,   337,     0,   332,   370,     0,
1820 >     415,     0,   555,   531,   603,     0,   595,     0,   265,     0,
1821 >     385,     0,   226,     0,   244,   241,   240,     0,     0,     0,
1822 >       0,   106,   171,     0,   147,     0,    69,   308,     0,   330,
1823 >       0,   371,   416,   604,   596,   266,   386,   227,   113,   122,
1824 >     125,   124,   121,   126,   123,   120,     0,   119,   115,   114,
1825 >     172,   148,   309,   331,   117,     0,   118
1826   };
1827  
1828   /* YYDEFGOTO[NTERM-NUM].  */
1829   static const yytype_int16 yydefgoto[] =
1830   {
1831 <      -1,     1,    24,   834,   835,   984,   985,    25,   275,   276,
1832 <     277,   278,    26,   313,   314,   315,   534,  1070,  1071,   316,
1833 <     317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
1834 <      27,    71,    72,    73,    74,    75,    28,   258,   259,   260,
1835 <     261,   262,   263,   264,   265,   266,   267,   268,   269,   270,
1836 <     271,    29,    61,   280,   773,   774,   775,   281,   776,   777,
1837 <     778,   779,   780,   781,  1046,  1301,  1302,   782,  1042,  1276,
1838 <    1277,  1325,  1278,  1344,    30,    49,   116,   595,   596,   597,
1839 <     117,   598,   599,   600,   601,   602,   603,   604,   605,   606,
1840 <     607,   608,   609,    31,    58,   481,   736,  1163,  1164,   482,
1841 <     483,   484,  1169,  1016,  1017,   485,   486,    32,    56,   457,
1842 <     458,   459,   460,   461,   462,   463,   722,  1147,  1148,  1252,
1843 <    1149,  1265,   464,   465,   466,    33,    62,   512,   513,   514,
1844 <     515,   516,    34,    65,   545,   546,   547,   548,   549,   812,
1845 <    1196,  1197,    35,    66,   553,   554,   555,   556,   818,  1211,
1846 <    1212,    36,    50,   119,   625,   626,   627,   120,   628,   629,
1847 <     630,   631,   632,   633,   634,   871,  1233,  1234,  1309,  1235,
1848 <    1317,   635,   636,   637,   638,   639,   640,    37,    57,   471,
1849 <     731,  1157,  1158,   472,   473,   474,   475,    38,    51,   360,
1850 <     361,   362,   363,    39,   124,   125,   126,    40,    53,   371,
1851 <     649,  1123,  1124,   372,   373,   374,   375,    41,   184,   185,
1852 <     186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
1853 <     196,   197,   198,   199,   200,   201,   202,   203,   204,   205,
1854 <     206,   207,   208,   209,   210,   211,   212,   213,   214,   215,
1855 <     216,   217,   218,   219,   220,   221,   222,   223,   224,   225,
1856 <     226,   227,   228,   229,   230,   231,   232,   233,   234,   235,
1857 <     410,   963,   964,   236,   408,   941,   942,   237,   238,   239,
1858 <     240,    42,    55,   440,   441,   442,   443,   444,   714,  1140,
1859 <    1141,   445,   446,   447,   711,  1134,  1135,    43,    95,    96,
1860 <      97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
1861 <     107,   108,   109,   110,   111,   112,   113,   114,    44,   291,
1930 <     292,   293,   294,   295,   296,   297,   298,   299
1831 >      -1,     1,    25,   829,   830,   972,   973,    26,   248,   249,
1832 >     250,   251,    27,   286,   287,   288,   576,  1051,  1052,   289,
1833 >     290,   291,   292,   293,   294,   295,   296,   297,   298,   299,
1834 >     300,   301,    28,    74,    75,    76,    77,    78,    29,   239,
1835 >     240,   241,   242,   243,   244,  1014,  1015,  1016,  1017,  1018,
1836 >    1164,  1296,  1297,    30,    63,   539,   540,   541,   542,   543,
1837 >     544,   545,   546,   547,   770,  1213,  1214,   548,   766,  1188,
1838 >    1189,    31,    51,   349,   350,   351,   352,   353,   354,   355,
1839 >     356,   357,   358,   359,   360,   361,   362,   363,    32,    60,
1840 >     513,   750,  1155,  1156,   514,   515,   516,  1161,  1005,  1006,
1841 >     517,   518,    33,    58,   489,   490,   491,   492,   493,   494,
1842 >     495,   736,  1140,  1141,   496,   497,   498,    34,    64,   553,
1843 >     554,   555,   556,   557,    35,   306,   307,   308,    36,    67,
1844 >     588,   589,   590,   591,   592,   805,  1232,  1233,    37,    68,
1845 >     596,   597,   598,   599,   811,  1246,  1247,    38,    52,   378,
1846 >     379,   380,   381,   382,   383,   384,   385,   386,   387,   648,
1847 >    1093,  1094,   388,   389,   390,   391,   392,    39,    59,   503,
1848 >     745,  1149,  1150,   504,   505,   506,   507,    40,    53,   396,
1849 >     397,   398,   399,    41,   123,   124,   125,    42,    55,   407,
1850 >     667,  1108,  1109,   408,   409,   410,   411,    43,   179,   180,
1851 >     181,   182,   183,   184,   185,   186,   187,   188,   189,   190,
1852 >     191,   192,   193,   194,   195,   196,   197,   198,   199,   200,
1853 >     201,   202,   203,   204,   205,   206,   207,   208,   209,   210,
1854 >     211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
1855 >     221,   222,   223,   224,   225,   226,   442,   952,   953,   227,
1856 >     440,   929,   930,   228,   229,   230,   231,    44,    57,   472,
1857 >     473,   474,   475,   476,   728,  1125,  1126,   477,   478,   479,
1858 >     725,  1119,  1120,    45,    98,    99,   100,   101,   102,   103,
1859 >     104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
1860 >     114,   115,   116,   117,    46,   262,   263,   264,   265,   266,
1861 >     267,   268,   269,   270
1862   };
1863  
1864   /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1865     STATE-NUM.  */
1866 < #define YYPACT_NINF -949
1866 > #define YYPACT_NINF -925
1867   static const yytype_int16 yypact[] =
1868   {
1869 <    -949,   670,  -949,  -256,  -248,  -245,  -949,  -949,  -949,  -212,
1870 <    -949,  -205,  -949,  -949,  -949,  -949,  -189,  -183,  -949,  -949,
1871 <    -154,  -152,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1872 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1873 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,    22,   642,  -127,
1874 <     -31,  -132,     5,  -125,   415,  -119,   -98,   -89,   -86,   578,
1875 <      14,    -8,   -75,   664,   313,   -74,   -61,   -45,   -46,   -37,
1876 <     -23,    31,  -949,  -949,  -949,  -949,  -949,   -22,    15,    30,
1877 <      33,    41,    42,    47,    48,    50,    61,    62,    70,    78,
1878 <      79,    80,    86,    90,    93,    94,  -949,  -949,  -949,  -949,
1879 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1880 <    -949,  -949,  -949,  -949,  -949,  -949,   -44,  -949,  -949,    89,
1881 <    -949,    20,  -949,    99,     2,  -949,  -949,   140,  -949,   100,
1882 <     104,   106,   111,   113,   115,   122,   123,   126,   127,   128,
1883 <     129,   131,   133,   135,   136,   137,   145,   147,   148,   151,
1884 <     155,   156,   157,   159,   163,   165,   167,   169,   174,   175,
1885 <     177,  -949,   178,  -949,   186,   187,   188,   193,   194,   197,
1886 <     199,   200,   205,   206,   209,   210,   211,   212,   213,   214,
1887 <     219,   220,   225,   228,    10,  -949,  -949,  -949,  -949,  -949,
1888 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1889 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1890 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1891 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1892 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1893 <    -949,   364,   308,    92,   318,    17,   229,   230,   231,   232,
1894 <     236,   237,   241,   242,   244,   245,   248,   250,   226,  -949,
1895 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1896 <    -949,  -949,    63,   251,   252,    60,  -949,  -949,  -949,  -949,
1897 <     182,  -949,    24,  -949,   253,   254,   255,   260,   270,   271,
1898 <     272,   192,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1899 <      72,   273,   274,   275,   276,   279,   281,   282,  -949,   285,
1900 <     286,   287,   288,   132,  -949,  -949,  -949,  -949,  -949,  -949,
1901 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,   183,   102,  -949,
1902 <     222,   293,   336,   299,  -949,   198,   431,   432,   368,   369,
1903 <     436,   436,   440,   441,   376,   379,   446,   436,   381,   390,
1904 <     391,   392,   393,   332,  -949,   726,   521,  -949,   330,   331,
1905 <      76,  -949,  -949,  -949,   442,   338,  -949,  -949,   333,   337,
1906 <    -949,  -949,    57,  -949,  -949,  -949,   404,   436,   408,   436,
1907 <     482,   461,   486,   423,   424,   491,   470,   429,   496,   497,
1908 <     498,   434,   436,   445,   447,   436,   493,   450,   517,   518,
1909 <     436,   522,   523,   499,   526,   528,   463,   464,   400,   469,
1910 <     405,   436,   436,   475,   436,   514,   488,   489,   492,  -131,
1911 <    -110,   494,   501,   436,   436,   548,   436,   504,   505,   506,
1912 <     510,   428,  -949,  -949,  -949,   420,   427,  -949,   430,   448,
1913 <     112,  -949,  -949,  -949,  -949,  -949,  -949,  -949,   435,   454,
1914 <     457,  -949,   459,   462,   465,   466,   467,   118,  -949,  -949,
1915 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,   468,  -949,
1916 <     472,  -949,    74,  -949,  -949,  -949,   449,  -949,   474,   483,
1917 <     490,  -949,    29,  -949,  -949,  -949,  -949,  -949,   555,   557,
1918 <     560,   571,   573,   579,   599,   601,   360,   602,   604,   561,
1919 <     502,  -949,  -949,   608,   611,   507,  -949,   305,   511,   503,
1920 <     512,   515,   152,  -949,  -949,  -949,  -949,   568,   577,   580,
1921 <     626,   583,   584,   436,   524,  -949,  -949,   634,   586,   637,
1922 <     638,   639,   640,   641,   532,   646,   672,   648,   651,   547,
1923 <    -949,   551,   549,  -949,   550,    69,  -949,  -949,  -949,  -949,
1924 <     558,   556,  -949,    75,  -949,  -949,  -949,   562,   563,   564,
1925 <    -949,   565,   566,   569,   572,   576,   207,   582,   587,   588,
1926 <     589,   592,   593,   594,   597,   598,   603,   607,   609,   610,
1927 <    -949,   615,   574,   581,   605,   616,   617,   618,   619,   620,
1928 <     622,   623,   624,   625,   628,   116,  -949,  -949,  -949,  -949,
1929 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1930 <     629,   632,   645,   649,   650,   652,  -949,   653,   654,   655,
1931 <     656,   660,   665,   667,   668,   160,  -949,  -949,  -949,  -949,
1932 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1933 <    -949,   675,   686,   678,  -949,   681,  -949,   687,   690,   682,
1934 <     688,  -949,   689,   691,   693,   694,   695,   696,   700,   704,
1935 <     705,   707,   708,   715,   718,   722,   723,   725,   727,   728,
1936 <     730,   731,   732,   733,   737,   741,   742,   744,   745,   747,
1937 <     748,   749,   750,   751,   692,   752,   729,   753,   754,   755,
1938 <     756,   757,   758,   759,   760,   761,   762,   763,   764,   765,
1939 <     767,   768,   769,    49,   770,   771,   772,   773,   774,   775,
1940 <    -949,   683,   436,   712,   776,   709,   711,   777,  -949,  -949,
1941 <     797,   714,   778,   799,   783,   833,   836,   873,   780,  -949,
1942 <     883,   779,   885,   784,  -949,  -949,   782,   890,   893,   796,
1943 <     787,  -949,   788,   789,   790,   791,   792,   793,   794,   795,
1944 <     798,   800,   801,   802,   803,   804,   805,   806,   807,   808,
1945 <    -949,   809,   810,  -949,   811,   812,   813,  -949,   814,   815,
1946 <     816,  -949,   817,   181,  -949,  -949,  -949,  -949,  -949,  -949,
1947 <    -949,  -949,  -949,  -949,   903,   904,   906,   821,  -949,   822,
1948 <     823,   824,   825,   826,   827,   828,  -949,   829,   830,   831,
1949 <     832,   834,   835,   837,   -80,   838,   839,   840,   841,  -949,
1950 <    -949,   919,   842,   920,   843,  -949,  -949,   921,   844,   846,
1951 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,   436,
1952 <     436,   436,   436,   436,  -949,  -949,  -949,  -949,  -949,  -949,
1953 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1954 <     962,   965,   436,   971,   973,   977,   978,   957,   980,   981,
1955 <     436,   436,   548,   853,  -949,  -949,   961,  -117,   963,   964,
1956 <     918,   855,   966,   967,   968,   969,   992,   972,   974,   975,
1957 <     864,  -949,   866,   869,  -949,  -949,   870,   871,   662,  -949,
1958 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1959 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1960 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1961 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1962 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1963 <    -949,  -244,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1964 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1965 <    -949,  -949,  -949,  -236,  -949,  -949,  -949,  -949,  -949,  -949,
1966 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1967 <    -949,   548,   548,   548,  -949,  -949,  -949,  -949,  -949,  -949,
1968 <    -949,  -949,    -3,   872,   874,    -2,   875,   876,  -949,   877,
1969 <     878,  1003,   879,   880,   881,   882,   884,  -949,   886,   703,
1970 <     887,  -949,   -63,   888,   889,   676,   891,  -949,  -949,  -949,
1971 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1972 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1973 <     990,   948,   894,   997,   998,   999,   895,  1000,   896,  -949,
1974 <     899,   900,   901,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1975 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1976 <    -224,  -949,  -949,  -949,  -949,  -949,   902,   570,   905,  -949,
1977 <     907,   627,  -949,  -949,  -949,  -949,  -949,  -949,   908,   909,
1978 <     910,   911,   912,   913,   914,   915,   916,   917,   922,   923,
1979 <     924,  -949,   925,   926,   927,   928,   929,   930,  1024,   931,
1980 <     932,   933,   934,   935,   936,   937,   938,  -949,  -949,  -949,
1981 <    -949,  -949,  -949,  -219,  -949,  -949,   692,  -949,   729,  -949,
1982 <    -949,  -949,  -949,  -949,  -216,  -949,  -949,  -949,  -949,  -949,
1983 <    -213,  -949,  -949,  -949,  -949,  -949,  -949,  -158,  -949,   630,
1984 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -149,  -949,  -949,
1985 <    -949,  -949,  -949,  -129,  -949,  -949,  -949,  1032,   796,   939,
1986 <     940,   941,  1034,   942,   943,   944,   766,   945,  -949,  -949,
1987 <    -949,  -949,  -949,   -80,  -949,  -949,  -949,  -949,  -949,  -949,
1988 <    -949,  -949,  -949,  -949,  -949,  -949,  -106,  -949,  -949,  -949,
1989 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1990 <    -949,   -25,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1991 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1992 <    -949,  -949,  -949,    38,  -949,     0,  -949,  -949,  -949,  -949,
1993 <    -949,  -949,  -949,  -949,  -949,   662,  -949,  -949,  -949,    -3,
1994 <    -949,    -2,   630,  -949,  1003,  -949,  -949,  -949,  -949,  -949,
1995 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,   703,  -949,   -63,
1996 <    -949,  -949,  -949,  -949,  -949,  -949,    56,  -949,   553,  -949,
1997 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1998 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
1999 <    -949,    88,  -949,  -949,  -949,  -949,   570,  -949,   627,     0,
2069 <    -949,  1024,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
2070 <    -949,  -949,  -949,  -949,  -949,   553,  -949,  1034,  -949,  -949,
2071 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
2072 <    -949,  -949,  -949,  -949,  -949,  -949,   766,  -949,  -949,  -949,
2073 <    -949,  -949,  -949,  -949
1869 >    -925,   650,  -925,  -171,  -239,  -236,  -925,  -925,  -925,  -233,
1870 >    -925,  -225,  -925,  -925,  -925,  -925,  -218,  -204,  -925,  -925,
1871 >    -170,  -165,  -925,  -925,  -159,  -925,  -925,  -925,  -925,  -925,
1872 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1873 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,   298,
1874 >     486,  -139,  -122,   -83,    27,   -76,   368,   -66,   -33,   -31,
1875 >     -28,    76,   115,   -21,   -12,   549,   332,    50,    57,    74,
1876 >    -208,     7,    30,    59,    20,  -925,  -925,  -925,  -925,  -925,
1877 >      63,    65,    80,    87,    90,    92,   106,   117,   118,   120,
1878 >     121,   122,   123,   129,   130,   131,   134,   138,   180,  -925,
1879 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1880 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,   736,   502,
1881 >      16,  -925,   140,    21,  -925,  -925,   218,  -925,   141,   142,
1882 >     144,   146,   147,   148,   156,   158,   169,   172,   174,   175,
1883 >     176,   182,   183,   185,   186,   187,   195,   198,   199,   203,
1884 >     204,   207,   211,   212,   213,   222,  -925,   223,  -925,   225,
1885 >     226,   228,   236,   238,   245,   252,   253,   256,   257,   258,
1886 >     260,   265,   272,   273,   277,   279,   281,   292,   293,   110,
1887 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1888 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1889 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1890 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1891 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1892 >    -925,  -925,   411,   393,   152,   402,    85,   299,   300,    73,
1893 >    -925,  -925,  -925,  -925,    17,   105,   304,   307,     8,  -925,
1894 >    -925,  -925,   346,    28,  -925,   308,   309,   313,   314,   315,
1895 >     316,   325,    19,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1896 >    -925,   271,   330,   336,   339,   341,   347,   350,   351,   354,
1897 >    -925,   359,   365,   370,   371,   372,    12,  -925,  -925,  -925,
1898 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1899 >    -925,  -925,   177,    23,  -925,   373,    10,  -925,  -925,  -925,
1900 >     241,   290,   323,   378,  -925,   446,   512,   514,   450,   451,
1901 >     519,   519,   523,   524,   462,   464,   531,   519,   465,   467,
1902 >     468,   469,   470,   405,  -925,   406,   404,   408,   410,   412,
1903 >     413,   414,   415,   417,   418,   419,   420,   422,   424,   268,
1904 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1905 >    -925,  -925,  -925,  -925,   431,   429,   432,   433,   434,  -925,
1906 >     435,   437,   438,   439,   440,   441,   442,   443,    62,  -925,
1907 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1908 >    -925,  -925,  -925,  -925,   444,   447,    36,  -925,  -925,  -925,
1909 >     522,   449,  -925,  -925,   448,   453,  -925,  -925,   102,  -925,
1910 >    -925,  -925,   518,   519,   519,   584,   526,   528,   588,   573,
1911 >     535,   595,   601,   602,   539,   544,   545,   519,   592,   551,
1912 >     614,   619,   519,   620,   624,   604,   629,   632,   568,   570,
1913 >     503,   575,   508,   519,   519,   578,   519,   579,   585,   586,
1914 >      14,    49,   589,   593,   519,   519,   653,   640,   519,   597,
1915 >     598,   599,   600,   536,  -925,  -925,  -925,   532,   534,  -925,
1916 >     537,   538,     2,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1917 >     543,   542,   546,  -925,   547,   548,   550,   552,   553,    29,
1918 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1919 >     554,  -925,   555,  -925,    11,  -925,  -925,  -925,   560,  -925,
1920 >     558,   559,   561,  -925,    22,  -925,  -925,  -925,  -925,  -925,
1921 >     605,   612,   563,  -925,   564,  -925,   648,   658,   565,  -925,
1922 >     567,   571,   572,  -925,   574,   576,   577,  -925,   582,    98,
1923 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,   581,
1924 >     583,   587,   590,    13,  -925,  -925,  -925,  -925,   613,   636,
1925 >     637,   664,   642,   644,   519,   591,  -925,  -925,   698,   655,
1926 >     702,   704,   706,   707,   713,   714,   609,   723,   725,   750,
1927 >     737,   738,   630,  -925,   633,   626,  -925,   631,    95,  -925,
1928 >    -925,  -925,  -925,   635,   639,  -925,    26,  -925,  -925,  -925,
1929 >     742,   643,  -925,   646,   647,   651,  -925,   654,   662,   663,
1930 >     671,   674,   423,   675,   679,   680,   682,   686,   690,   691,
1931 >     693,   694,   695,   697,   699,   700,  -925,  -925,   767,   789,
1932 >     519,   827,   832,   833,   834,   814,   836,   837,   519,   519,
1933 >     653,   708,  -925,  -925,   817,   157,   819,   776,   709,   821,
1934 >     823,   824,   825,   847,   828,   829,   830,   717,  -925,   831,
1935 >     835,   722,  -925,   726,  -925,   838,   839,   720,   727,  -925,
1936 >     730,   731,   732,   733,   734,   735,   739,   740,   741,   743,
1937 >     744,   745,   746,   747,   748,   749,   751,   752,   753,   754,
1938 >     755,   756,   757,   758,   759,   760,   761,   762,   657,   763,
1939 >     696,   764,   765,   766,   768,   769,   770,   771,   772,   773,
1940 >     774,   775,   777,   778,   779,   780,    75,   781,   782,   783,
1941 >     784,   785,   786,   787,  -925,   721,   519,   802,   788,   848,
1942 >     852,   790,  -925,  -925,   860,   803,   791,   877,   907,   898,
1943 >     899,   902,   793,  -925,   905,   794,   906,   798,  -925,  -925,
1944 >     796,   910,   911,   933,   804,  -925,   805,   806,  -925,   132,
1945 >     807,   808,  -925,  -925,   913,   875,   809,   920,   921,   923,
1946 >     811,   925,   816,  -925,  -925,   927,   928,   929,   820,  -925,
1947 >     822,   826,   840,   841,   842,   843,   844,  -925,   845,   846,
1948 >     849,   850,   851,   853,   854,   855,   210,   856,   857,   858,
1949 >     859,   861,  -925,  -925,   931,   862,   934,   863,  -925,  -925,
1950 >     935,   864,   866,  -925,   868,  -925,  -925,  -925,  -925,  -925,
1951 >    -925,  -925,  -925,  -925,   519,   519,   519,   519,   519,  -925,
1952 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1953 >    -925,  -925,  -925,  -925,   869,   870,   871,   872,   873,   874,
1954 >     876,   878,   879,   880,   881,   882,   883,  -925,   884,   885,
1955 >     886,   887,   888,   128,   889,   890,   891,   892,   893,   894,
1956 >     895,   896,  -925,   897,   900,  -925,  -925,   901,   903,   932,
1957 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1958 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1959 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1960 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1961 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -226,
1962 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1963 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1964 >    -925,  -925,  -210,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1965 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,   653,
1966 >     653,   653,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1967 >    -925,    -6,   904,   908,     5,   909,   912,  -925,   914,   915,
1968 >     454,   916,   917,   918,   919,   922,  -925,   924,   936,   926,
1969 >    -925,   -35,   930,   937,   938,   939,  -925,  -925,  -925,  -925,
1970 >     940,   941,  -925,   942,    31,  -925,  -925,  -925,  -925,  -925,
1971 >    -925,   946,   947,   530,   948,   949,   950,   724,   951,  -925,
1972 >     952,   953,   954,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1973 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1974 >    -925,  -205,  -925,  -925,  -925,  -925,  -925,  -925,   955,   515,
1975 >     956,  -925,   957,   557,  -925,  -925,  -925,  -925,  -925,  -925,
1976 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1977 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1978 >    -925,  -925,  -925,  -203,  -925,  -925,  -925,  -925,  -925,  -925,
1979 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -193,  -925,
1980 >    -925,   657,  -925,   696,  -925,  -925,  -925,  -925,  -925,  -181,
1981 >    -925,  -925,  -925,  -925,  -925,  -179,  -925,  -925,  -925,  -925,
1982 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1983 >    -144,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,   -24,
1984 >    -925,  -925,  -925,  -925,  -925,    -5,  -925,  -925,  -925,   959,
1985 >     933,   958,  -925,   943,   960,   -60,   961,  -925,  -925,  -925,
1986 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1987 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,    -2,  -925,
1988 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1989 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1990 >    -925,  -925,  -925,    34,  -925,  -925,  -925,  -925,  -925,  -925,
1991 >     210,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1992 >    -925,  -925,    69,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1993 >    -925,  -925,  -925,  -925,  -925,  -925,    82,  -925,  -925,   128,
1994 >    -925,   932,  -925,  -925,  -925,    -6,  -925,     5,  -925,   454,
1995 >    -925,   936,  -925,   -35,  -925,  -925,  -925,   962,   409,   964,
1996 >     965,  -925,  -925,   530,  -925,   724,  -925,  -925,   515,  -925,
1997 >     557,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
1998 >    -925,  -925,  -925,  -925,  -925,  -925,   100,  -925,  -925,  -925,
1999 >    -925,  -925,  -925,  -925,  -925,   409,  -925
2000   };
2001  
2002   /* YYPGOTO[NTERM-NUM].  */
2003   static const yytype_int16 yypgoto[] =
2004   {
2005 <    -949,  -949,  -949,  -427,  -340,  -948,  -423,  -949,  -949,   946,
2006 <    -949,  -949,  -949,  -949,   865,  -949,  -949,  -949,  -293,  -949,
2007 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
2008 <    -949,  -949,  1095,  -949,  -949,  -949,  -949,  -949,   643,  -949,
2009 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
2010 <    -949,  -949,  -949,  -949,  -949,   406,  -949,  -949,  -949,  -949,
2011 <    -949,  -949,  -949,  -949,  -949,  -949,  -166,  -949,  -949,  -949,
2012 <    -146,  -949,  -949,  -118,  -949,  -949,  -949,  -949,   613,  -949,
2013 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
2014 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,   -60,  -949,
2015 <     724,  -949,  -949,  -949,    43,  -949,  -949,  -949,  -949,  -949,
2016 <     781,  -949,  -949,  -949,  -949,  -949,  -949,  -949,   -42,  -949,
2017 <    -949,   -39,  -949,  -949,  -949,  -949,  -949,  -949,   698,  -949,
2018 <    -949,  -949,  -949,  -949,  -949,   669,  -949,  -949,  -949,  -949,
2019 <    -949,   -91,  -949,  -949,  -949,   663,  -949,  -949,  -949,  -949,
2020 <     -90,  -949,  -949,  -949,  -949,   595,  -949,  -949,  -949,  -949,
2021 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,   -94,  -949,  -949,
2022 <     -87,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
2023 <    -949,  -949,   -48,  -949,   785,  -949,  -949,  -949,  -949,  -949,
2024 <     863,  -949,  -949,  -949,  -949,  1100,  -949,  -949,  -949,  -949,
2025 <    -949,  -949,   -20,  -949,   854,  -949,  -949,  -949,  -949,  1043,
2026 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
2027 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
2028 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
2029 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
2030 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
2031 <    -949,  -949,   101,  -949,  -949,  -949,   105,  -949,  -949,  -949,
2032 <    -949,  -949,  -949,  -949,   818,  -949,  -949,  -949,  -949,  -949,
2033 <     -21,  -949,  -949,  -949,  -949,  -949,   -17,  -949,  -949,  1133,
2034 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
2035 <    -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,  -949,
2110 <     949,  -949,  -949,  -949,  -949,  -949,  -949,  -949
2005 >    -925,  -925,  -925,  -769,  -319,  -924,  -456,  -925,  -925,   963,
2006 >    -925,  -925,  -925,  -925,   792,  -925,  -925,  -925,  -156,  -925,
2007 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
2008 >    -925,  -925,  -925,  -925,   996,  -925,  -925,  -925,  -925,  -925,
2009 >     944,  -925,  -925,  -925,  -925,  -925,    61,  -925,  -925,  -925,
2010 >    -925,  -925,  -234,  -925,  -925,  -925,   540,  -925,  -925,  -925,
2011 >    -925,  -925,  -925,  -925,  -925,  -925,  -202,  -925,  -925,  -925,
2012 >    -197,  -925,  -925,  -925,   728,  -925,  -925,  -925,  -925,  -925,
2013 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
2014 >    -925,  -925,  -925,  -183,  -925,   625,  -925,  -925,  -925,   -72,
2015 >    -925,  -925,  -925,  -925,  -925,   616,  -925,  -925,  -925,  -925,
2016 >    -925,  -925,  -925,  -166,  -925,  -925,  -925,  -925,  -925,  -925,
2017 >     594,  -925,  -925,  -925,  -925,  -925,   795,  -925,  -925,  -925,
2018 >    -925,   501,  -925,  -925,  -925,  -925,  -925,  -175,  -925,  -925,
2019 >    -925,   520,  -925,  -925,  -925,  -925,  -140,  -925,  -925,  -925,
2020 >     797,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
2021 >    -925,  -106,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
2022 >    -925,  -925,  -115,  -925,   660,  -925,  -925,  -925,  -925,  -925,
2023 >     812,  -925,  -925,  -925,  -925,  1025,  -925,  -925,  -925,  -925,
2024 >    -925,  -925,  -100,  -925,   799,  -925,  -925,  -925,  -925,   973,
2025 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
2026 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
2027 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
2028 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
2029 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,    41,  -925,
2030 >    -925,  -925,    51,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
2031 >     689,  -925,  -925,  -925,  -925,  -925,   -91,  -925,  -925,  -925,
2032 >    -925,  -925,   -87,  -925,  -925,  1071,  -925,  -925,  -925,  -925,
2033 >    -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,  -925,
2034 >    -925,  -925,  -925,  -925,  -925,  -925,   966,  -925,  -925,  -925,
2035 >    -925,  -925,  -925,  -925
2036   };
2037  
2038   /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
2039     positive, shift that token.  If negative, reduce the rule which
2040 <   number is the opposite.  If zero, do what YYDEFACT says.
2041 <   If YYTABLE_NINF, syntax error.  */
2042 < #define YYTABLE_NINF -1
2118 < static const yytype_uint16 yytable[] =
2040 >   number is the opposite.  If YYTABLE_NINF, syntax error.  */
2041 > #define YYTABLE_NINF -106
2042 > static const yytype_int16 yytable[] =
2043   {
2044 <     567,   568,   704,   122,    45,    46,   122,   574,  1132,  1138,
2045 <    1312,   128,  1313,  1160,    47,   272,  1125,    48,   129,   130,
2046 <    1126,   357,   131,    67,  1127,   508,   115,  1314,  1128,   132,
2047 <     476,  1315,    67,  1129,  1130,  1131,  1182,   653,   133,   655,
2048 <    1183,  1244,   134,   135,  1248,  1245,   509,  1250,  1249,   136,
2049 <      52,  1251,   668,   137,   138,   671,   139,    54,   367,    68,
2050 <     676,   272,   140,   981,   982,   983,   695,   696,    68,    69,
2051 <     541,   687,   688,    59,   690,   467,   550,   357,    69,    60,
2052 <     141,   142,   477,   701,   702,   143,   705,   697,   698,  1068,
2053 <    1069,   123,   144,   467,   123,    76,   145,   146,   147,  1103,
2054 <    1104,   148,  1253,   550,   149,   150,  1254,    77,    63,   358,
2055 <      64,  1266,   478,   433,   151,  1267,   434,   581,   479,   448,
2056 <     152,   153,   118,   154,   155,   156,   157,   158,    78,    79,
2057 <     121,  1268,   273,   300,    80,  1269,    81,   127,   159,   582,
2058 <     583,   367,    70,   241,   449,   279,   584,   160,   510,   161,
2059 <     162,    70,   163,   508,  1305,   164,   165,   435,  1306,   166,
2060 <     436,   610,   274,   611,   242,   358,   612,   450,  1161,   301,
2061 <     167,   451,  1162,   243,   509,   359,   244,   368,   273,   511,
2062 <     703,   480,   764,   795,   541,   613,   614,   282,   327,   542,
2063 <      82,    83,   168,   283,   169,   551,  1133,  1139,   170,    84,
2064 <      85,   328,   171,   172,   173,   174,   175,   765,   274,   615,
2065 <     176,   177,   369,   616,   437,   329,   302,   330,   355,   178,
2066 <      86,    87,   551,   585,   586,   587,   331,   245,   588,   468,
2067 <     766,   359,   438,   284,   767,  1307,   589,    88,    89,  1308,
2068 <     332,   335,  1316,   617,   370,   618,   285,   468,    90,   590,
2069 <     591,   179,   303,   180,   304,   305,   543,    91,   619,   181,
2070 <     368,   469,   552,   365,   182,   452,   592,   593,   286,   183,
2071 <     287,   431,   288,   289,   453,   454,   510,   487,   336,   469,
2072 <     620,   246,   247,   248,   249,   250,   251,   252,   253,   552,
2073 <     740,   290,   333,   337,   594,   369,   338,   306,  1310,   307,
2074 <     308,   768,  1311,   542,   339,   340,   764,   511,   455,   448,
2075 <     341,   342,   621,   343,   300,   309,  1326,   544,   650,   476,
2076 <    1327,   505,   470,   502,   344,   345,   622,   370,   769,   254,
2077 <     814,   765,   526,   346,   449,   733,   819,   643,   566,   623,
2078 <     470,   347,   348,   349,    92,    93,    94,   770,  1345,   350,
2079 <     301,   356,  1346,   351,   766,   353,   352,   450,   767,   310,
2080 <     439,   451,   364,   376,   255,   433,   456,   377,   434,   378,
2081 <     543,   477,   993,   717,   379,   557,   380,   863,   381,   728,
2082 <     829,   830,   831,   832,   833,   382,   383,   311,   312,   384,
2083 <     385,   386,   387,   539,   388,   561,   389,   302,   390,   391,
2084 <     392,   478,  1083,  1084,  1085,  1086,  1087,   479,   393,   435,
2085 <     394,   395,   436,   787,   396,   624,   128,   771,   397,   398,
2086 <     399,   880,   400,   129,   130,   768,   401,   131,   402,   772,
2087 <     403,   544,   404,   303,   132,   304,   305,   405,   406,  1100,
2088 <     407,   409,  1048,   133,   507,   256,   558,   134,   135,   411,
2089 <     412,   413,   769,   524,   136,   452,   414,   415,   137,   138,
2090 <     416,   139,   417,   418,   453,   454,   437,   140,   419,   420,
2091 <     480,   770,   421,   422,   423,   424,   425,   426,   306,   257,
2092 <     307,   308,   427,   428,   438,   141,   142,   500,   429,   559,
2093 <     143,   430,   488,   489,   490,   491,   309,   144,   455,   492,
2094 <     493,   145,   146,   147,   494,   495,   148,   496,   497,   149,
2095 <     150,   498,  1090,   499,   503,   504,   517,   518,   519,   151,
2096 <    1098,  1099,   610,   520,   611,   152,   153,   612,   154,   155,
2097 <     156,   157,   158,   521,   522,   523,   527,   528,   529,   530,
2098 <     310,   771,   531,   159,   532,   533,   613,   614,   535,   536,
2099 <     537,   538,   160,   772,   161,   162,   456,   163,  1328,   560,
2100 <     164,   165,   562,   563,   166,   564,   565,   566,   311,   312,
2101 <     615,   569,   570,   571,   616,   167,   572,   573,   575,   245,
2102 <     750,   751,   752,   753,   754,   755,   756,   576,   577,   578,
2103 <     579,  1329,   580,   641,   642,   645,   647,   168,   646,   169,
2104 <     648,   652,  1330,   170,   617,   654,   618,   171,   172,   173,
2105 <     174,   175,   439,   656,   657,   176,   177,   658,  1331,   619,
2106 <     659,   660,   661,   662,   178,  1332,   663,   664,   665,   666,
2107 <    1333,   667,  1334,   246,   247,   248,   249,   250,   251,   252,
2108 <     253,   620,   669,    76,   670,  1335,   672,   673,   674,   675,
2109 <    1255,  1256,   679,   677,   678,    77,   179,   680,   180,   681,
2110 <     682,   683,  1185,   684,   181,   283,   685,   691,   686,   182,
2111 <       2,     3,   689,   621,   183,     4,    78,    79,  1336,   703,
2112 <    1257,   254,    80,   712,    81,   692,   693,   622,   710,   694,
2113 <     713,   699,     5,   715,  1337,   719,     6,  1258,   700,     7,
2114 <     623,   706,   707,   708,  1259,   284,     8,   709,   742,   735,
2115 <     743,   716,  1338,   744,  1339,  1340,   255,   720,   285,  1200,
2116 <     721,     9,   723,  1260,   745,   724,   746,   581,   725,   726,
2117 <     727,   730,   747,    10,    11,   732,    12,   737,    82,    83,
2118 <     286,  1186,   287,    13,   288,   289,   738,    84,    85,   582,
2119 <     583,  1261,   748,   739,   749,   757,   584,   758,   759,  1262,
2120 <      14,   761,   760,   290,   762,   789,   784,   763,    86,    87,
2121 <      15,   783,    16,  1187,   790,   785,   624,   791,   786,   792,
2122 <     793,   794,  1341,   798,   796,    88,    89,   797,  1188,    17,
2123 <     799,   800,   801,   802,   803,   804,    90,   256,  1201,   805,
2124 <    1342,   807,  1263,   806,   808,    91,    18,   809,  1189,  1190,
2125 <    1343,   810,   811,   813,  1191,  1192,  1193,  1194,   816,   817,
2126 <    1122,  1264,   821,   822,   823,   824,   825,  1195,   882,   826,
2127 <    1202,   257,   827,   585,   586,   587,   828,   850,   588,   883,
2128 <     886,    19,   836,   887,   851,  1203,   589,   837,   838,   839,
2129 <      20,    21,   840,   841,   842,    22,    23,   843,   844,   590,
2130 <     591,  1156,   996,   845,   997,  1204,  1205,   846,   852,   847,
2131 <     848,  1206,  1207,  1208,  1209,   849,   592,   593,  1167,   853,
2132 <     854,   855,   856,   857,  1210,   858,   859,   860,   861,   865,
2133 <    1304,   862,    92,    93,    94,   866,   922,   923,   924,   925,
2134 <     926,   501,   927,   928,   594,   929,   930,   931,   867,   994,
2135 <     932,  1000,   868,   869,  1003,   870,   872,   873,   874,   875,
2136 <     933,   934,   935,   876,   936,   937,   938,  1015,   877,   939,
2137 <     878,   879,   940,   944,   945,   946,   947,   948,   884,   949,
2138 <     950,   885,   951,   952,   953,   888,   992,   954,   889,   890,
2139 <     999,   891,  1002,   892,   893,   894,   895,   955,   956,   957,
2140 <     896,   958,   959,   960,   897,   898,   961,   899,   900,   962,
2141 <    1282,  1283,  1284,  1285,  1286,   901,  1287,  1288,   902,  1289,
2142 <    1290,  1291,   903,   904,  1292,   905,  1004,   906,   907,  1005,
2143 <     908,   909,   910,   911,  1293,  1294,  1295,   912,  1296,  1297,
2144 <    1298,   913,   914,  1299,   915,   916,  1300,   917,   918,   919,
2145 <     920,   921,   943,   965,   966,   967,   968,   969,   970,   971,
2146 <     972,   973,   974,   975,   976,   977,  1006,   978,   979,   980,
2147 <     986,   987,   988,   989,   990,   991,  1008,   998,  1010,   995,
2148 <    1007,  1001,  1009,  1013,  1011,  1012,  1014,  1018,  1019,  1020,
2149 <    1021,  1022,  1023,  1024,  1025,  1026,  1050,  1051,  1027,  1052,
2150 <    1028,  1029,  1030,  1031,  1032,  1033,  1034,  1035,  1036,  1037,
2151 <    1038,  1039,  1076,  1078,  1080,  1040,  1041,  1043,  1044,  1045,
2152 <    1047,  1053,  1054,  1055,  1056,  1057,  1058,  1059,  1060,  1061,
2153 <    1062,  1063,  1064,  1088,  1065,  1066,  1089,  1067,  1072,  1073,
2154 <    1074,  1075,  1091,  1079,  1092,  1077,  1082,  1081,  1093,  1094,
2155 <    1095,  1096,  1097,  1101,  1102,  1107,  1105,  1106,  1108,  1109,
2156 <    1110,  1111,  1112,  1113,  1117,  1114,  1118,  1115,  1116,  1119,
2157 <    1120,  1121,  1136,  1146,  1137,  1142,  1143,  1144,  1145,  1150,
2158 <    1151,  1152,  1153,  1170,  1154,  1171,  1155,  1159,  1165,  1166,
2159 <    1173,  1174,  1175,  1177,  1232,  1168,  1178,  1172,  1176,  1179,
2160 <    1180,  1181,  1184,  1270,  1275,  1198,   334,  1199,  1213,  1214,
2161 <    1215,  1216,  1217,  1218,  1219,  1220,  1221,  1222,   540,  1049,
2162 <    1353,  1352,  1223,  1224,  1225,  1226,  1227,  1228,  1229,  1230,
2163 <    1231,  1236,  1237,  1238,  1239,  1240,  1241,  1242,  1243,  1272,
2164 <    1273,  1274,  1279,  1280,  1281,  1303,   741,  1351,   864,  1324,
2165 <     788,  1271,  1322,  1321,   815,  1347,   820,  1350,  1348,  1323,
2166 <     881,   506,  1349,   644,   366,  1318,   651,   432,   354,  1247,
2243 <    1320,  1246,  1319,     0,     0,     0,     0,     0,   729,     0,
2244 <     525,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2245 <       0,     0,     0,     0,     0,     0,     0,   734,   718
2044 >     717,   613,   614,   465,    49,  1117,   466,    50,   620,   245,
2045 >      54,   304,   499,   271,   549,  1110,  1123,   393,    56,  1111,
2046 >     254,    70,   121,   508,   593,    61,  1152,   593,   121,   549,
2047 >     480,  1112,  1010,   309,   550,  1113,  1219,   393,  1248,    62,
2048 >    1220,   467,  1249,   272,   468,  1114,  1115,  1116,  1250,   550,
2049 >     716,    71,  1251,   481,   255,  1066,  1067,  1068,  1069,  1070,
2050 >    1254,    72,  1256,   364,  1255,   365,  1257,   256,   366,   509,
2051 >      47,    48,   482,    65,   236,   304,   483,   236,    66,   273,
2052 >     257,   258,   259,   260,    69,   469,   367,   394,   510,   969,
2053 >     970,   971,   122,   511,   671,   672,   584,  1258,   122,   530,
2054 >     261,  1259,   470,   403,   118,   368,   246,   394,   685,   369,
2055 >     305,   127,   274,   690,   275,   276,   245,   551,   128,   129,
2056 >      73,   119,   531,   594,   701,   702,   594,   704,   370,   130,
2057 >     371,  1011,   551,  1010,   247,   714,   715,   131,  1089,   719,
2058 >    1090,   532,   372,   132,   500,   533,   552,   133,   134,   395,
2059 >     135,  1269,   512,   499,   484,   277,   136,   278,   279,   280,
2060 >     120,   552,   373,   485,   486,   137,   138,   126,  1153,   395,
2061 >     139,  1118,  1154,   281,   305,   140,   501,   232,   584,   141,
2062 >     142,    79,  1124,   143,   856,   716,   144,   145,   595,   708,
2063 >     709,   595,   374,    80,   146,   585,  1012,   487,   534,   282,
2064 >     147,   148,   404,   149,   150,   151,   152,   153,    81,    82,
2065 >     233,   283,   234,   246,    83,   235,    84,  1260,   154,   403,
2066 >     375,  1261,   252,   535,   710,   711,   155,   156,   157,   471,
2067 >     158,   253,  1011,   159,   160,   405,  1262,   161,   502,  1272,
2068 >    1263,   247,   536,  1273,   731,   786,   284,   285,   162,   376,
2069 >     528,   310,   601,   747,   582,   778,   488,   524,    85,    86,
2070 >     586,   565,   313,   401,   754,    87,    88,   406,   812,   335,
2071 >    1013,   742,   163,  1166,   311,  1274,   164,   585,   661,  1275,
2072 >     165,   166,   167,   168,   169,   500,    89,    90,   170,   171,
2073 >     336,   337,   237,   302,   338,   237,   377,  1012,   172,    70,
2074 >     303,    91,    92,   312,   657,   238,   537,   315,   238,   316,
2075 >    1277,   846,    93,  -105,  1278,   522,  -105,   501,   404,   854,
2076 >     855,    94,   587,  1279,   317,   538,   519,  1280,   173,    71,
2077 >     174,   318,   175,   271,   319,  1091,   320,   807,   176,    72,
2078 >     772,  1304,   586,   177,   668,  1305,   525,   530,   178,  1092,
2079 >     321,   405,   463,   859,   860,   339,   340,   341,  1049,  1050,
2080 >     342,   322,   323,   272,   324,   325,   326,   327,   343,   127,
2081 >     531,  1013,   603,   328,   329,   330,   128,   129,   331,   502,
2082 >     344,   345,   332,   406,   400,   412,   413,   130,   414,   532,
2083 >     415,   416,   417,   533,   480,   131,   346,   347,    73,   273,
2084 >     418,   132,   419,   508,   587,   133,   134,   982,   135,    95,
2085 >      96,    97,   465,   420,   136,   466,   421,   481,   422,   423,
2086 >     424,   604,   333,   137,   138,   348,   425,   426,   139,   427,
2087 >     428,   429,   274,   140,   275,   276,   482,   141,   142,   430,
2088 >     483,   143,   431,   432,   144,   145,   534,   433,   434,   509,
2089 >     467,   435,   146,   468,   605,   436,   437,   438,   147,   148,
2090 >    1289,   149,   150,   151,   152,   153,   439,   441,   510,   443,
2091 >     444,   535,   445,   511,  1131,   277,   154,   278,   279,   280,
2092 >     446,  1290,   447,  1291,   155,   156,   157,    79,   158,   448,
2093 >     536,   159,   160,   281,   469,   161,   449,   450,  1132,    80,
2094 >     451,   452,   453,   364,   454,   365,   162,  1133,   366,   455,
2095 >     641,   470,   567,  1134,    81,    82,   456,   457,   484,   282,
2096 >      83,   458,    84,   459,  1292,   460,   367,   485,   486,  1135,
2097 >     163,   283,   512,   612,   164,  1170,   461,   462,   165,   166,
2098 >     167,   168,   169,   520,   521,   368,   170,   171,   526,   369,
2099 >     254,   527,   558,   559,   537,  1136,   172,   560,   561,   562,
2100 >     563,   487,  1171,  1137,    85,    86,   284,   285,   370,   564,
2101 >     371,    87,    88,   538,   568,   824,   825,   826,   827,   828,
2102 >     569,  1172,   372,   570,   255,   571,   173,  1173,   174,  1222,
2103 >     175,   572,    89,    90,   573,   574,   176,   256,   575,  1293,
2104 >    1294,   177,   373,   577,  1174,  1138,   178,    91,    92,   578,
2105 >     257,   258,   259,   260,   579,   580,   581,   600,    93,   606,
2106 >     488,   607,   608,  1139,   609,   610,   611,    94,  1175,   612,
2107 >     261,  1236,   374,   615,   616,  1176,  1295,   617,   471,   618,
2108 >     621,   619,   622,   623,   624,   625,   626,   627,   628,  1177,
2109 >       2,     3,   629,   663,   630,     4,   631,   632,   633,   634,
2110 >     375,   635,   636,   637,   638,  1223,   639,  1178,   640,  1179,
2111 >    1180,     5,   643,   644,     6,     7,   645,   646,   647,   649,
2112 >       8,   650,   651,   652,   653,   654,   655,   656,   659,   376,
2113 >     664,   660,   665,   670,   673,     9,  1224,   666,   676,    10,
2114 >      11,   674,    12,   675,   677,   679,  1225,  1237,    13,  1270,
2115 >     678,   680,   681,  1226,   682,    95,    96,    97,   909,   683,
2116 >     684,  1181,    14,   686,   688,  1227,   687,  1228,  1229,   689,
2117 >     691,  1182,    15,    16,   692,   693,   377,   335,  1238,   694,
2118 >    1183,  1230,   695,   696,  1184,   697,  1185,   698,  1239,    17,
2119 >     699,  1231,   700,   703,   705,  1240,  1186,   932,   336,   337,
2120 >     706,   707,   338,   716,   712,    18,  1187,  1241,   713,  1242,
2121 >    1243,   718,   720,   721,   722,   723,   726,   724,   727,   760,
2122 >     756,   729,   730,  1244,   733,  1193,   734,   757,   780,   761,
2123 >     735,   737,   738,  1245,   739,   783,   740,   741,   744,   746,
2124 >      19,   749,   751,   752,   758,   753,   762,   759,   763,    20,
2125 >      21,   781,   782,    22,    23,   764,   765,   784,   767,   785,
2126 >     768,   769,   774,   339,   340,   341,   771,   775,   342,   788,
2127 >     789,   776,   787,   790,   777,   791,   343,   792,   793,   910,
2128 >     911,   912,   913,   914,   794,   795,   915,   916,   344,   345,
2129 >     917,   918,   919,   796,   797,   920,   798,   921,   922,   923,
2130 >     799,   924,   925,   926,   346,   347,   927,    24,   800,   801,
2131 >     804,   802,   928,   814,   803,   806,   809,   844,   933,   934,
2132 >     935,   936,   937,   810,   815,   938,   939,   816,   817,   940,
2133 >     941,   942,   818,   348,   943,   819,   944,   945,   946,   845,
2134 >     947,   948,   949,   820,   821,   950,  1194,  1195,  1196,  1197,
2135 >    1198,   951,   822,  1199,  1200,   823,   831,  1201,  1202,  1203,
2136 >     832,   833,  1204,   834,  1205,  1206,  1207,   835,  1208,  1209,
2137 >    1210,   836,   837,  1211,   838,   839,   840,   847,   841,  1212,
2138 >     842,   843,   848,   849,   850,   851,   852,   853,   858,   857,
2139 >     861,   862,   864,   863,   865,   866,   867,   868,   872,   869,
2140 >     870,   871,   873,   875,   879,   981,   874,   876,   880,   877,
2141 >     878,   881,   882,   883,   884,   885,   886,   983,   989,   985,
2142 >     887,   888,   889,   986,   890,   891,   892,   893,   894,   895,
2143 >     896,   988,   897,   898,   899,   900,   901,   902,   903,   904,
2144 >     905,   906,   907,   908,   931,   954,   955,   956,   991,   957,
2145 >     958,   959,   960,   961,   962,   963,   964,   992,   965,   966,
2146 >     967,   968,   974,   975,   976,   977,   978,   979,   980,   993,
2147 >     994,   987,   984,   995,   996,   990,   997,   999,   998,  1000,
2148 >    1001,  1002,  1003,  1004,  1021,  1007,  1008,  1009,  1019,  1020,
2149 >    1022,  1024,  1025,  1023,  1026,  1027,  1028,  1029,  1030,  1031,
2150 >    1032,  1033,  1058,  1034,  1276,  1060,  1062,  1035,  1107,  1264,
2151 >     314,  1306,  1148,  1301,  1267,  1167,  1300,   642,   583,   773,
2152 >    1287,  1036,  1037,  1038,  1039,  1040,  1041,  1042,  1265,   808,
2153 >    1043,  1044,  1045,  1285,  1046,  1047,  1048,  1053,  1054,  1055,
2154 >    1056,   602,  1057,  1302,  1061,   743,  1059,  1064,  1063,  1065,
2155 >    1071,  1072,  1073,  1074,  1075,  1076,   813,  1077,  1159,  1078,
2156 >    1079,  1080,  1081,  1082,  1083,  1084,  1085,  1086,  1087,  1088,
2157 >    1095,  1096,  1097,  1098,  1099,  1100,  1101,  1102,  1103,   755,
2158 >    1303,  1104,  1105,  1281,  1106,  1121,  1286,   779,   402,  1122,
2159 >    1127,  1282,   464,  1128,  1253,  1129,  1130,  1142,  1143,  1144,
2160 >    1145,   732,  1252,  1146,   748,  1147,  1284,  1151,  1283,   334,
2161 >       0,  1157,     0,     0,     0,   658,     0,     0,  1158,     0,
2162 >       0,  1162,     0,   523,  1160,  1163,  1165,  1168,  1169,  1190,
2163 >    1191,  1192,  1215,  1216,  1217,  1218,  1221,  1234,  1235,  1266,
2164 >       0,     0,  1271,  1288,  1268,  1298,  1299,   669,   662,     0,
2165 >       0,   529,     0,     0,     0,     0,     0,     0,     0,     0,
2166 >       0,     0,     0,     0,     0,     0,     0,     0,   566
2167   };
2168  
2169 + #define yypact_value_is_default(yystate) \
2170 +  ((yystate) == (-925))
2171 +
2172 + #define yytable_value_is_error(yytable_value) \
2173 +  YYID (0)
2174 +
2175   static const yytype_int16 yycheck[] =
2176   {
2177 <     340,   341,   425,     1,   260,   261,     1,   347,    11,    11,
2178 <      10,     1,    12,    76,   262,     1,   260,   262,     8,     9,
2179 <     264,     1,    12,     1,   260,     1,   153,    27,   264,    19,
2180 <       1,    31,     1,   981,   982,   983,   260,   377,    28,   379,
2181 <     264,   260,    32,    33,   260,   264,    22,   260,   264,    39,
2182 <     262,   264,   392,    43,    44,   395,    46,   262,     1,    37,
2183 <     400,     1,    52,    14,    15,    16,   197,   198,    37,    47,
2184 <       1,   411,   412,   262,   414,     1,     1,     1,    47,   262,
2185 <      70,    71,    53,   423,   424,    75,   426,   197,   198,   169,
2186 <     170,    89,    82,     1,    89,     1,    86,    87,    88,   216,
2187 <     217,    91,   260,     1,    94,    95,   264,    13,   262,    89,
2188 <     262,   260,    83,     1,   104,   264,     4,     1,    89,     1,
2189 <     110,   111,   153,   113,   114,   115,   116,   117,    34,    35,
2190 <     262,   260,   118,     1,    40,   264,    42,   262,   128,    23,
2191 <      24,     1,   120,   262,    26,   153,    30,   137,   124,   139,
2192 <     140,   120,   142,     1,   260,   145,   146,    45,   264,   149,
2193 <      48,     1,   148,     3,   262,    89,     6,    49,   231,    37,
2194 <     160,    53,   235,   262,    22,   155,   262,   120,   118,   155,
2195 <     131,   152,     1,   523,     1,    25,    26,   262,   262,   120,
2196 <      96,    97,   182,     1,   184,   120,   199,   199,   188,   105,
2197 <     106,   262,   192,   193,   194,   195,   196,    26,   148,    49,
2198 <     200,   201,   155,    53,   102,   260,    84,   263,   262,   209,
2199 <     126,   127,   120,   107,   108,   109,   263,     1,   112,   155,
2200 <      49,   155,   120,    41,    53,   260,   120,   143,   144,   264,
2201 <     263,   263,   242,    83,   187,    85,    54,   155,   154,   133,
2202 <     134,   241,   120,   243,   122,   123,   187,   163,    98,   249,
2203 <     120,   187,   187,   261,   254,   147,   150,   151,    76,   259,
2204 <      78,   261,    80,    81,   156,   157,   124,   260,   263,   187,
2205 <     120,    55,    56,    57,    58,    59,    60,    61,    62,   187,
2206 <     261,    99,   261,   263,   178,   155,   263,   165,   260,   167,
2207 <     168,   120,   264,   120,   263,   263,     1,   155,   190,     1,
2208 <     263,   263,   152,   263,     1,   183,   260,   248,   261,     1,
2209 <     264,   261,   248,   260,   263,   263,   166,   187,   147,   103,
2210 <     261,    26,   260,   263,    26,   261,   261,   261,   131,   179,
2211 <     248,   263,   263,   263,   250,   251,   252,   166,   260,   263,
2212 <      37,   262,   264,   263,    49,   261,   263,    49,    53,   227,
2213 <     248,    53,   263,   263,   138,     1,   248,   263,     4,   263,
2214 <     187,    53,   712,   261,   263,   153,   263,   261,   263,   261,
2215 <     173,   174,   175,   176,   177,   263,   263,   255,   256,   263,
2216 <     263,   263,   263,   261,   263,   197,   263,    84,   263,   263,
2217 <     263,    83,   829,   830,   831,   832,   833,    89,   263,    45,
2218 <     263,   263,    48,   261,   263,   255,     1,   236,   263,   263,
2219 <     263,   261,   263,     8,     9,   120,   263,    12,   263,   248,
2220 <     263,   248,   263,   120,    19,   122,   123,   263,   263,   862,
2221 <     263,   263,   261,    28,   262,   219,   153,    32,    33,   263,
2222 <     263,   263,   147,   261,    39,   147,   263,   263,    43,    44,
2223 <     263,    46,   263,   263,   156,   157,   102,    52,   263,   263,
2224 <     152,   166,   263,   263,   263,   263,   263,   263,   165,   253,
2225 <     167,   168,   263,   263,   120,    70,    71,   261,   263,   153,
2226 <      75,   263,   263,   263,   263,   263,   183,    82,   190,   263,
2227 <     263,    86,    87,    88,   263,   263,    91,   263,   263,    94,
2228 <      95,   263,   852,   263,   263,   263,   263,   263,   263,   104,
2229 <     860,   861,     1,   263,     3,   110,   111,     6,   113,   114,
2230 <     115,   116,   117,   263,   263,   263,   263,   263,   263,   263,
2231 <     227,   236,   263,   128,   263,   263,    25,    26,   263,   263,
2232 <     263,   263,   137,   248,   139,   140,   248,   142,     5,   260,
2233 <     145,   146,   131,   131,   149,   197,   197,   131,   255,   256,
2234 <      49,   131,   131,   197,    53,   160,   197,   131,   197,     1,
2235 <     220,   221,   222,   223,   224,   225,   226,   197,   197,   197,
2236 <     197,    38,   260,   263,   263,   153,   263,   182,   260,   184,
2237 <     263,   197,    49,   188,    83,   197,    85,   192,   193,   194,
2238 <     195,   196,   248,   131,   153,   200,   201,   131,    65,    98,
2239 <     197,   197,   131,   153,   209,    72,   197,   131,   131,   131,
2240 <      77,   197,    79,    55,    56,    57,    58,    59,    60,    61,
2241 <      62,   120,   197,     1,   197,    92,   153,   197,   131,   131,
2242 <      20,    21,   153,   131,   131,    13,   241,   131,   243,   131,
2243 <     197,   197,    92,   263,   249,     1,   197,   153,   263,   254,
2244 <       0,     1,   197,   152,   259,     5,    34,    35,   125,   131,
2245 <      50,   103,    40,   263,    42,   197,   197,   166,   260,   197,
2246 <     263,   197,    22,   263,   141,   260,    26,    67,   197,    29,
2247 <     179,   197,   197,   197,    74,    41,    36,   197,   153,   260,
2248 <     153,   263,   159,   153,   161,   162,   138,   263,    54,    92,
2249 <     263,    51,   263,    93,   153,   263,   153,     1,   263,   263,
2250 <     263,   263,   153,    63,    64,   263,    66,   263,    96,    97,
2251 <      76,   171,    78,    73,    80,    81,   263,   105,   106,    23,
2252 <      24,   121,   153,   263,   153,   153,    30,   153,   197,   129,
2253 <      90,   153,   260,    99,   153,   197,   263,   260,   126,   127,
2254 <     100,   260,   102,   203,   197,   263,   255,   197,   263,   153,
2255 <     197,   197,   229,   197,   260,   143,   144,   153,   218,   119,
2256 <     153,   153,   153,   153,   153,   263,   154,   219,   171,   153,
2257 <     247,   153,   172,   131,   153,   163,   136,   260,   238,   239,
2258 <     257,   260,   263,   263,   244,   245,   246,   247,   260,   263,
2259 <     158,   191,   260,   260,   260,   260,   260,   257,   153,   260,
2260 <     203,   253,   260,   107,   108,   109,   260,   263,   112,   153,
2261 <     153,   171,   260,   153,   263,   218,   120,   260,   260,   260,
2262 <     180,   181,   260,   260,   260,   185,   186,   260,   260,   133,
2263 <     134,   158,   153,   260,   153,   238,   239,   260,   263,   260,
2264 <     260,   244,   245,   246,   247,   260,   150,   151,   202,   263,
2265 <     263,   263,   263,   263,   257,   263,   263,   263,   263,   260,
2266 <    1183,   263,   250,   251,   252,   263,   204,   205,   206,   207,
2267 <     208,   258,   210,   211,   178,   213,   214,   215,   263,   197,
2268 <     218,   197,   263,   263,   131,   263,   263,   263,   263,   263,
2269 <     228,   229,   230,   263,   232,   233,   234,   131,   263,   237,
2270 <     263,   263,   240,   204,   205,   206,   207,   208,   260,   210,
2271 <     211,   260,   213,   214,   215,   263,   263,   218,   260,   260,
2272 <     153,   260,   153,   260,   260,   260,   260,   228,   229,   230,
2273 <     260,   232,   233,   234,   260,   260,   237,   260,   260,   240,
2274 <     204,   205,   206,   207,   208,   260,   210,   211,   260,   213,
2275 <     214,   215,   260,   260,   218,   260,   153,   260,   260,   153,
2276 <     260,   260,   260,   260,   228,   229,   230,   260,   232,   233,
2277 <     234,   260,   260,   237,   260,   260,   240,   260,   260,   260,
2278 <     260,   260,   260,   260,   260,   260,   260,   260,   260,   260,
2279 <     260,   260,   260,   260,   260,   260,   153,   260,   260,   260,
2280 <     260,   260,   260,   260,   260,   260,   153,   260,   153,   263,
2281 <     260,   263,   263,   153,   260,   263,   153,   260,   260,   260,
2282 <     260,   260,   260,   260,   260,   260,   153,   153,   260,   153,
2283 <     260,   260,   260,   260,   260,   260,   260,   260,   260,   260,
2284 <     260,   260,   153,   153,   153,   263,   263,   263,   263,   263,
2285 <     263,   260,   260,   260,   260,   260,   260,   260,   260,   260,
2286 <     260,   260,   260,   131,   260,   260,   131,   260,   260,   260,
2287 <     260,   260,   131,   260,   131,   263,   260,   263,   131,   131,
2288 <     153,   131,   131,   260,   153,   197,   153,   153,   263,   153,
2289 <     153,   153,   153,   131,   260,   153,   260,   153,   153,   260,
2290 <     260,   260,   260,   130,   260,   260,   260,   260,   260,   260,
2291 <     260,   260,   260,   153,   260,   197,   260,   260,   260,   260,
2292 <     153,   153,   153,   153,   130,   264,   260,   263,   263,   260,
2293 <     260,   260,   260,   131,   130,   260,    71,   260,   260,   260,
2294 <     260,   260,   260,   260,   260,   260,   260,   260,   313,   773,
2295 <    1346,  1327,   260,   260,   260,   260,   260,   260,   260,   260,
2296 <     260,   260,   260,   260,   260,   260,   260,   260,   260,   260,
2297 <     260,   260,   260,   260,   260,   260,   482,  1325,   595,  1269,
2298 <     512,  1168,  1254,  1252,   545,  1306,   553,  1311,  1308,  1267,
2299 <     625,   275,  1309,   360,   124,  1245,   372,   184,    95,  1128,
2373 <    1251,  1126,  1249,    -1,    -1,    -1,    -1,    -1,   457,    -1,
2374 <     291,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2375 <      -1,    -1,    -1,    -1,    -1,    -1,    -1,   472,   440
2177 >     456,   320,   321,     1,   243,    11,     4,   243,   327,     1,
2178 >     243,     1,     1,     1,     1,   241,    11,     1,   243,   245,
2179 >       1,     1,     1,     1,     1,   243,    61,     1,     1,     1,
2180 >       1,   241,     1,   241,    21,   245,   241,     1,   241,   243,
2181 >     245,    39,   245,    31,    42,   969,   970,   971,   241,    21,
2182 >     110,    31,   245,    24,    35,   824,   825,   826,   827,   828,
2183 >     241,    41,   241,     1,   245,     3,   245,    48,     6,    47,
2184 >     241,   242,    43,   243,     1,     1,    47,     1,   243,    67,
2185 >      61,    62,    63,    64,   243,    83,    24,    71,    66,    14,
2186 >      15,    16,    71,    71,   413,   414,     1,   241,    71,     1,
2187 >      81,   245,   100,     1,   243,    43,    98,    71,   427,    47,
2188 >     100,     1,   100,   432,   102,   103,     1,   104,     8,     9,
2189 >     100,   243,    24,   100,   443,   444,   100,   446,    66,    19,
2190 >      68,   100,   104,     1,   126,   454,   455,    27,    10,   458,
2191 >      12,    43,    80,    33,   133,    47,   133,    37,    38,   133,
2192 >      40,   211,   130,     1,   125,   143,    46,   145,   146,   147,
2193 >     243,   133,   100,   134,   135,    55,    56,   243,   203,   133,
2194 >      60,   177,   207,   161,   100,    65,   165,   243,     1,    69,
2195 >      70,     1,   177,    73,   640,   110,    76,    77,   165,   175,
2196 >     176,   165,   130,    13,    84,   100,   165,   168,   100,   187,
2197 >      90,    91,   100,    93,    94,    95,    96,    97,    28,    29,
2198 >     243,   199,   243,    98,    34,   243,    36,   241,   108,     1,
2199 >     158,   245,   243,   125,   175,   176,   116,   117,   118,   227,
2200 >     120,   243,   100,   123,   124,   133,   241,   127,   227,   241,
2201 >     245,   126,   144,   245,   242,   564,   234,   235,   138,   187,
2202 >     242,   244,   242,   242,   242,   242,   227,   240,    78,    79,
2203 >     165,   242,   242,   242,   242,    85,    86,   165,   242,     1,
2204 >     239,   242,   162,   242,   244,   241,   166,   100,   242,   245,
2205 >     170,   171,   172,   173,   174,   133,   106,   107,   178,   179,
2206 >      22,    23,   219,   243,    26,   219,   234,   165,   188,     1,
2207 >     243,   121,   122,   244,   242,   232,   208,   244,   232,   244,
2208 >     241,   630,   132,   240,   245,   242,   240,   165,   100,   638,
2209 >     639,   141,   227,   241,   244,   227,   241,   245,   218,    31,
2210 >     220,   244,   222,     1,   244,   207,   244,   242,   228,    41,
2211 >     242,   241,   165,   233,   242,   245,   241,     1,   238,   221,
2212 >     244,   133,   242,   196,   197,    87,    88,    89,   148,   149,
2213 >      92,   244,   244,    31,   244,   244,   244,   244,   100,     1,
2214 >      24,   239,   131,   244,   244,   244,     8,     9,   244,   227,
2215 >     112,   113,   244,   165,   244,   244,   244,    19,   244,    43,
2216 >     244,   244,   244,    47,     1,    27,   128,   129,   100,    67,
2217 >     244,    33,   244,     1,   227,    37,    38,   726,    40,   229,
2218 >     230,   231,     1,   244,    46,     4,   244,    24,   244,   244,
2219 >     244,   131,   242,    55,    56,   157,   244,   244,    60,   244,
2220 >     244,   244,   100,    65,   102,   103,    43,    69,    70,   244,
2221 >      47,    73,   244,   244,    76,    77,   100,   244,   244,    47,
2222 >      39,   244,    84,    42,   131,   244,   244,   244,    90,    91,
2223 >      51,    93,    94,    95,    96,    97,   244,   244,    66,   244,
2224 >     244,   125,   244,    71,    20,   143,   108,   145,   146,   147,
2225 >     244,    72,   244,    74,   116,   117,   118,     1,   120,   244,
2226 >     144,   123,   124,   161,    83,   127,   244,   244,    44,    13,
2227 >     244,   244,   244,     1,   244,     3,   138,    53,     6,   244,
2228 >     242,   100,   241,    59,    28,    29,   244,   244,   125,   187,
2229 >      34,   244,    36,   244,   115,   244,    24,   134,   135,    75,
2230 >     162,   199,   130,   110,   166,     5,   244,   244,   170,   171,
2231 >     172,   173,   174,   244,   244,    43,   178,   179,   244,    47,
2232 >       1,   244,   244,   244,   208,   101,   188,   244,   244,   244,
2233 >     244,   168,    32,   109,    78,    79,   234,   235,    66,   244,
2234 >      68,    85,    86,   227,   244,   152,   153,   154,   155,   156,
2235 >     244,    51,    80,   244,    35,   244,   218,    57,   220,    74,
2236 >     222,   244,   106,   107,   244,   244,   228,    48,   244,   190,
2237 >     191,   233,   100,   244,    74,   151,   238,   121,   122,   244,
2238 >      61,    62,    63,    64,   244,   244,   244,   244,   132,   241,
2239 >     227,   175,   110,   169,   110,   175,   175,   141,    98,   110,
2240 >      81,    74,   130,   110,   110,   105,   227,   175,   227,   175,
2241 >     175,   110,   175,   175,   175,   175,   241,   241,   244,   119,
2242 >       0,     1,   244,   131,   244,     5,   244,   244,   244,   244,
2243 >     158,   244,   244,   244,   244,   150,   244,   137,   244,   139,
2244 >     140,    21,   241,   244,    24,    25,   244,   244,   244,   244,
2245 >      30,   244,   244,   244,   244,   244,   244,   244,   244,   187,
2246 >     241,   244,   244,   175,   110,    45,   181,   244,   110,    49,
2247 >      50,   175,    52,   175,   131,   110,   191,   150,    58,  1165,
2248 >     175,   110,   110,   198,   175,   229,   230,   231,    61,   175,
2249 >     175,   191,    72,   131,   110,   210,   175,   212,   213,   110,
2250 >     110,   201,    82,    83,   110,   131,   234,     1,   181,   110,
2251 >     210,   226,   110,   175,   214,   175,   216,   244,   191,    99,
2252 >     175,   236,   244,   175,   175,   198,   226,    61,    22,    23,
2253 >     175,   175,    26,   110,   175,   115,   236,   210,   175,   212,
2254 >     213,   131,   175,   175,   175,   175,   244,   241,   244,   131,
2255 >     175,   244,   244,   226,   241,    61,   244,   175,   175,   131,
2256 >     244,   244,   244,   236,   244,   131,   244,   244,   244,   244,
2257 >     150,   241,   244,   244,   241,   244,   241,   243,   241,   159,
2258 >     160,   175,   175,   163,   164,   244,   244,   175,   244,   175,
2259 >     244,   244,   241,    87,    88,    89,   244,   244,    92,   131,
2260 >     175,   244,   241,   131,   244,   131,   100,   131,   131,   182,
2261 >     183,   184,   185,   186,   131,   131,   189,   190,   112,   113,
2262 >     193,   194,   195,   244,   131,   198,   131,   200,   201,   202,
2263 >     110,   204,   205,   206,   128,   129,   209,   217,   131,   131,
2264 >     244,   241,   215,   131,   241,   244,   241,   110,   182,   183,
2265 >     184,   185,   186,   244,   241,   189,   190,   241,   241,   193,
2266 >     194,   195,   241,   157,   198,   241,   200,   201,   202,   110,
2267 >     204,   205,   206,   241,   241,   209,   182,   183,   184,   185,
2268 >     186,   215,   241,   189,   190,   241,   241,   193,   194,   195,
2269 >     241,   241,   198,   241,   200,   201,   202,   241,   204,   205,
2270 >     206,   241,   241,   209,   241,   241,   241,   110,   241,   215,
2271 >     241,   241,   110,   110,   110,   131,   110,   110,   131,   241,
2272 >     131,   175,   131,   244,   131,   131,   131,   110,   241,   131,
2273 >     131,   131,   131,   241,   244,   244,   131,   241,   241,   131,
2274 >     131,   241,   241,   241,   241,   241,   241,   175,   175,   131,
2275 >     241,   241,   241,   131,   241,   241,   241,   241,   241,   241,
2276 >     241,   131,   241,   241,   241,   241,   241,   241,   241,   241,
2277 >     241,   241,   241,   241,   241,   241,   241,   241,   131,   241,
2278 >     241,   241,   241,   241,   241,   241,   241,   110,   241,   241,
2279 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   131,
2280 >     131,   241,   244,   131,   241,   244,   131,   131,   244,   241,
2281 >     244,   131,   131,   110,   131,   241,   241,   241,   241,   241,
2282 >     175,   131,   131,   244,   131,   244,   131,   241,   131,   131,
2283 >     131,   241,   131,   241,  1220,   131,   131,   241,   136,   110,
2284 >      74,  1305,   136,  1275,   131,  1014,  1273,   349,   286,   539,
2285 >    1263,   241,   241,   241,   241,   241,   241,   241,  1160,   588,
2286 >     241,   241,   241,  1259,   241,   241,   241,   241,   241,   241,
2287 >     241,   306,   241,  1278,   241,   489,   244,   241,   244,   241,
2288 >     241,   241,   241,   241,   241,   241,   596,   241,   180,   241,
2289 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2290 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   514,
2291 >    1280,   241,   241,  1249,   241,   241,  1261,   553,   123,   241,
2292 >     241,  1251,   179,   241,  1113,   241,   241,   241,   241,   241,
2293 >     241,   472,  1111,   241,   504,   241,  1257,   241,  1255,    98,
2294 >      -1,   241,    -1,    -1,    -1,   378,    -1,    -1,   241,    -1,
2295 >      -1,   241,    -1,   239,   245,   244,   244,   241,   241,   241,
2296 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2297 >      -1,    -1,   241,   241,   244,   241,   241,   408,   396,    -1,
2298 >      -1,   248,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
2299 >      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   262
2300   };
2301  
2302   /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
2303     symbol of state STATE-NUM.  */
2304   static const yytype_uint16 yystos[] =
2305   {
2306 <       0,   266,     0,     1,     5,    22,    26,    29,    36,    51,
2307 <      63,    64,    66,    73,    90,   100,   102,   119,   136,   171,
2308 <     180,   181,   185,   186,   267,   272,   277,   295,   301,   316,
2309 <     339,   358,   372,   390,   397,   407,   416,   442,   452,   458,
2310 <     462,   472,   536,   552,   573,   260,   261,   262,   262,   340,
2311 <     417,   453,   262,   463,   262,   537,   373,   443,   359,   262,
2312 <     262,   317,   391,   262,   262,   398,   408,     1,    37,    47,
2313 <     120,   296,   297,   298,   299,   300,     1,    13,    34,    35,
2314 <      40,    42,    96,    97,   105,   106,   126,   127,   143,   144,
2315 <     154,   163,   250,   251,   252,   553,   554,   555,   556,   557,
2316 <     558,   559,   560,   561,   562,   563,   564,   565,   566,   567,
2317 <     568,   569,   570,   571,   572,   153,   341,   345,   153,   418,
2318 <     422,   262,     1,    89,   459,   460,   461,   262,     1,     8,
2319 <       9,    12,    19,    28,    32,    33,    39,    43,    44,    46,
2320 <      52,    70,    71,    75,    82,    86,    87,    88,    91,    94,
2321 <      95,   104,   110,   111,   113,   114,   115,   116,   117,   128,
2322 <     137,   139,   140,   142,   145,   146,   149,   160,   182,   184,
2323 <     188,   192,   193,   194,   195,   196,   200,   201,   209,   241,
2324 <     243,   249,   254,   259,   473,   474,   475,   476,   477,   478,
2325 <     479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
2326 <     489,   490,   491,   492,   493,   494,   495,   496,   497,   498,
2327 <     499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
2328 <     509,   510,   511,   512,   513,   514,   515,   516,   517,   518,
2329 <     519,   520,   521,   522,   523,   524,   528,   532,   533,   534,
2330 <     535,   262,   262,   262,   262,     1,    55,    56,    57,    58,
2331 <      59,    60,    61,    62,   103,   138,   219,   253,   302,   303,
2332 <     304,   305,   306,   307,   308,   309,   310,   311,   312,   313,
2333 <     314,   315,     1,   118,   148,   273,   274,   275,   276,   153,
2334 <     318,   322,   262,     1,    41,    54,    76,    78,    80,    81,
2335 <      99,   574,   575,   576,   577,   578,   579,   580,   581,   582,
2336 <       1,    37,    84,   120,   122,   123,   165,   167,   168,   183,
2337 <     227,   255,   256,   278,   279,   280,   284,   285,   286,   287,
2338 <     288,   289,   290,   291,   292,   293,   294,   262,   262,   260,
2339 <     263,   263,   263,   261,   297,   263,   263,   263,   263,   263,
2340 <     263,   263,   263,   263,   263,   263,   263,   263,   263,   263,
2341 <     263,   263,   263,   261,   554,   262,   262,     1,    89,   155,
2342 <     454,   455,   456,   457,   263,   261,   460,     1,   120,   155,
2343 <     187,   464,   468,   469,   470,   471,   263,   263,   263,   263,
2344 <     263,   263,   263,   263,   263,   263,   263,   263,   263,   263,
2345 <     263,   263,   263,   263,   263,   263,   263,   263,   263,   263,
2346 <     263,   263,   263,   263,   263,   263,   263,   263,   529,   263,
2347 <     525,   263,   263,   263,   263,   263,   263,   263,   263,   263,
2348 <     263,   263,   263,   263,   263,   263,   263,   263,   263,   263,
2349 <     263,   261,   474,     1,     4,    45,    48,   102,   120,   248,
2350 <     538,   539,   540,   541,   542,   546,   547,   548,     1,    26,
2351 <      49,    53,   147,   156,   157,   190,   248,   374,   375,   376,
2352 <     377,   378,   379,   380,   387,   388,   389,     1,   155,   187,
2353 <     248,   444,   448,   449,   450,   451,     1,    53,    83,    89,
2354 <     152,   360,   364,   365,   366,   370,   371,   260,   263,   263,
2355 <     263,   263,   263,   263,   263,   263,   263,   263,   263,   263,
2356 <     261,   303,   260,   263,   263,   261,   274,   262,     1,    22,
2357 <     124,   155,   392,   393,   394,   395,   396,   263,   263,   263,
2358 <     263,   263,   263,   263,   261,   575,   260,   263,   263,   263,
2359 <     263,   263,   263,   263,   281,   263,   263,   263,   263,   261,
2360 <     279,     1,   120,   187,   248,   399,   400,   401,   402,   403,
2361 <       1,   120,   187,   409,   410,   411,   412,   153,   153,   153,
2362 <     260,   197,   131,   131,   197,   197,   131,   269,   269,   131,
2363 <     131,   197,   197,   131,   269,   197,   197,   197,   197,   197,
2364 <     260,     1,    23,    24,    30,   107,   108,   109,   112,   120,
2365 <     133,   134,   150,   151,   178,   342,   343,   344,   346,   347,
2366 <     348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
2367 <       1,     3,     6,    25,    26,    49,    53,    83,    85,    98,
2368 <     120,   152,   166,   179,   255,   419,   420,   421,   423,   424,
2369 <     425,   426,   427,   428,   429,   436,   437,   438,   439,   440,
2370 <     441,   263,   263,   261,   455,   153,   260,   263,   263,   465,
2371 <     261,   469,   197,   269,   197,   269,   131,   153,   131,   197,
2372 <     197,   131,   153,   197,   131,   131,   131,   197,   269,   197,
2373 <     197,   269,   153,   197,   131,   131,   269,   131,   131,   153,
2374 <     131,   131,   197,   197,   263,   197,   263,   269,   269,   197,
2375 <     269,   153,   197,   197,   197,   197,   198,   197,   198,   197,
2376 <     197,   269,   269,   131,   271,   269,   197,   197,   197,   197,
2377 <     260,   549,   263,   263,   543,   263,   263,   261,   539,   260,
2378 <     263,   263,   381,   263,   263,   263,   263,   263,   261,   375,
2379 <     263,   445,   263,   261,   449,   260,   361,   263,   263,   263,
2380 <     261,   365,   153,   153,   153,   153,   153,   153,   153,   153,
2381 <     220,   221,   222,   223,   224,   225,   226,   153,   153,   197,
2382 <     260,   153,   153,   260,     1,    26,    49,    53,   120,   147,
2383 <     166,   236,   248,   319,   320,   321,   323,   324,   325,   326,
2384 <     327,   328,   332,   260,   263,   263,   263,   261,   393,   197,
2385 <     197,   197,   153,   197,   197,   269,   260,   153,   197,   153,
2386 <     153,   153,   153,   153,   263,   153,   131,   153,   153,   260,
2387 <     260,   263,   404,   263,   261,   400,   260,   263,   413,   261,
2388 <     410,   260,   260,   260,   260,   260,   260,   260,   260,   173,
2389 <     174,   175,   176,   177,   268,   269,   260,   260,   260,   260,
2390 <     260,   260,   260,   260,   260,   260,   260,   260,   260,   260,
2391 <     263,   263,   263,   263,   263,   263,   263,   263,   263,   263,
2392 <     263,   263,   263,   261,   343,   260,   263,   263,   263,   263,
2393 <     263,   430,   263,   263,   263,   263,   263,   263,   263,   263,
2394 <     261,   420,   153,   153,   260,   260,   153,   153,   263,   260,
2395 <     260,   260,   260,   260,   260,   260,   260,   260,   260,   260,
2396 <     260,   260,   260,   260,   260,   260,   260,   260,   260,   260,
2397 <     260,   260,   260,   260,   260,   260,   260,   260,   260,   260,
2398 <     260,   260,   204,   205,   206,   207,   208,   210,   211,   213,
2399 <     214,   215,   218,   228,   229,   230,   232,   233,   234,   237,
2400 <     240,   530,   531,   260,   204,   205,   206,   207,   208,   210,
2401 <     211,   213,   214,   215,   218,   228,   229,   230,   232,   233,
2402 <     234,   237,   240,   526,   527,   260,   260,   260,   260,   260,
2403 <     260,   260,   260,   260,   260,   260,   260,   260,   260,   260,
2404 <     260,    14,    15,    16,   270,   271,   260,   260,   260,   260,
2405 <     260,   260,   263,   269,   197,   263,   153,   153,   260,   153,
2406 <     197,   263,   153,   131,   153,   153,   153,   260,   153,   263,
2407 <     153,   260,   263,   153,   153,   131,   368,   369,   260,   260,
2408 <     260,   260,   260,   260,   260,   260,   260,   260,   260,   260,
2409 <     260,   260,   260,   260,   260,   260,   260,   260,   260,   260,
2410 <     263,   263,   333,   263,   263,   263,   329,   263,   261,   320,
2411 <     153,   153,   153,   260,   260,   260,   260,   260,   260,   260,
2412 <     260,   260,   260,   260,   260,   260,   260,   260,   169,   170,
2413 <     282,   283,   260,   260,   260,   260,   153,   263,   153,   260,
2414 <     153,   263,   260,   268,   268,   268,   268,   268,   131,   131,
2415 <     269,   131,   131,   131,   131,   153,   131,   131,   269,   269,
2416 <     271,   260,   153,   216,   217,   153,   153,   197,   263,   153,
2417 <     153,   153,   153,   131,   153,   153,   153,   260,   260,   260,
2418 <     260,   260,   158,   466,   467,   260,   264,   260,   264,   270,
2419 <     270,   270,    11,   199,   550,   551,   260,   260,    11,   199,
2420 <     544,   545,   260,   260,   260,   260,   130,   382,   383,   385,
2421 <     260,   260,   260,   260,   260,   260,   158,   446,   447,   260,
2422 <      76,   231,   235,   362,   363,   260,   260,   202,   264,   367,
2423 <     153,   197,   263,   153,   153,   153,   263,   153,   260,   260,
2424 <     260,   260,   260,   264,   260,    92,   171,   203,   218,   238,
2425 <     239,   244,   245,   246,   247,   257,   405,   406,   260,   260,
2426 <      92,   171,   203,   218,   238,   239,   244,   245,   246,   247,
2427 <     257,   414,   415,   260,   260,   260,   260,   260,   260,   260,
2428 <     260,   260,   260,   260,   260,   260,   260,   260,   260,   260,
2429 <     260,   260,   130,   431,   432,   434,   260,   260,   260,   260,
2430 <     260,   260,   260,   260,   260,   264,   531,   527,   260,   264,
2431 <     260,   264,   384,   260,   264,    20,    21,    50,    67,    74,
2432 <      93,   121,   129,   172,   191,   386,   260,   264,   260,   264,
2433 <     131,   369,   260,   260,   260,   130,   334,   335,   337,   260,
2434 <     260,   260,   204,   205,   206,   207,   208,   210,   211,   213,
2435 <     214,   215,   218,   228,   229,   230,   232,   233,   234,   237,
2436 <     240,   330,   331,   260,   283,   260,   264,   260,   264,   433,
2513 <     260,   264,    10,    12,    27,    31,   242,   435,   467,   551,
2514 <     545,   386,   383,   447,   363,   336,   260,   264,     5,    38,
2515 <      49,    65,    72,    77,    79,    92,   125,   141,   159,   161,
2516 <     162,   229,   247,   257,   338,   260,   264,   406,   415,   435,
2517 <     432,   338,   335,   331
2306 >       0,   247,     0,     1,     5,    21,    24,    25,    30,    45,
2307 >      49,    50,    52,    58,    72,    82,    83,    99,   115,   150,
2308 >     159,   160,   163,   164,   217,   248,   253,   258,   278,   284,
2309 >     299,   317,   334,   348,   363,   370,   374,   384,   393,   413,
2310 >     423,   429,   433,   443,   503,   519,   540,   241,   242,   243,
2311 >     243,   318,   394,   424,   243,   434,   243,   504,   349,   414,
2312 >     335,   243,   243,   300,   364,   243,   243,   375,   385,   243,
2313 >       1,    31,    41,   100,   279,   280,   281,   282,   283,     1,
2314 >      13,    28,    29,    34,    36,    78,    79,    85,    86,   106,
2315 >     107,   121,   122,   132,   141,   229,   230,   231,   520,   521,
2316 >     522,   523,   524,   525,   526,   527,   528,   529,   530,   531,
2317 >     532,   533,   534,   535,   536,   537,   538,   539,   243,   243,
2318 >     243,     1,    71,   430,   431,   432,   243,     1,     8,     9,
2319 >      19,    27,    33,    37,    38,    40,    46,    55,    56,    60,
2320 >      65,    69,    70,    73,    76,    77,    84,    90,    91,    93,
2321 >      94,    95,    96,    97,   108,   116,   117,   118,   120,   123,
2322 >     124,   127,   138,   162,   166,   170,   171,   172,   173,   174,
2323 >     178,   179,   188,   218,   220,   222,   228,   233,   238,   444,
2324 >     445,   446,   447,   448,   449,   450,   451,   452,   453,   454,
2325 >     455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
2326 >     465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
2327 >     475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
2328 >     485,   486,   487,   488,   489,   490,   491,   495,   499,   500,
2329 >     501,   502,   243,   243,   243,   243,     1,   219,   232,   285,
2330 >     286,   287,   288,   289,   290,     1,    98,   126,   254,   255,
2331 >     256,   257,   243,   243,     1,    35,    48,    61,    62,    63,
2332 >      64,    81,   541,   542,   543,   544,   545,   546,   547,   548,
2333 >     549,     1,    31,    67,   100,   102,   103,   143,   145,   146,
2334 >     147,   161,   187,   199,   234,   235,   259,   260,   261,   265,
2335 >     266,   267,   268,   269,   270,   271,   272,   273,   274,   275,
2336 >     276,   277,   243,   243,     1,   100,   371,   372,   373,   241,
2337 >     244,   244,   244,   242,   280,   244,   244,   244,   244,   244,
2338 >     244,   244,   244,   244,   244,   244,   244,   244,   244,   244,
2339 >     244,   244,   244,   242,   521,     1,    22,    23,    26,    87,
2340 >      88,    89,    92,   100,   112,   113,   128,   129,   157,   319,
2341 >     320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
2342 >     330,   331,   332,   333,     1,     3,     6,    24,    43,    47,
2343 >      66,    68,    80,   100,   130,   158,   187,   234,   395,   396,
2344 >     397,   398,   399,   400,   401,   402,   403,   404,   408,   409,
2345 >     410,   411,   412,     1,    71,   133,   425,   426,   427,   428,
2346 >     244,   242,   431,     1,   100,   133,   165,   435,   439,   440,
2347 >     441,   442,   244,   244,   244,   244,   244,   244,   244,   244,
2348 >     244,   244,   244,   244,   244,   244,   244,   244,   244,   244,
2349 >     244,   244,   244,   244,   244,   244,   244,   244,   244,   244,
2350 >     496,   244,   492,   244,   244,   244,   244,   244,   244,   244,
2351 >     244,   244,   244,   244,   244,   244,   244,   244,   244,   244,
2352 >     244,   244,   244,   242,   445,     1,     4,    39,    42,    83,
2353 >     100,   227,   505,   506,   507,   508,   509,   513,   514,   515,
2354 >       1,    24,    43,    47,   125,   134,   135,   168,   227,   350,
2355 >     351,   352,   353,   354,   355,   356,   360,   361,   362,     1,
2356 >     133,   165,   227,   415,   419,   420,   421,   422,     1,    47,
2357 >      66,    71,   130,   336,   340,   341,   342,   346,   347,   241,
2358 >     244,   244,   242,   286,   240,   241,   244,   244,   242,   255,
2359 >       1,    24,    43,    47,   100,   125,   144,   208,   227,   301,
2360 >     302,   303,   304,   305,   306,   307,   308,   309,   313,     1,
2361 >      21,   104,   133,   365,   366,   367,   368,   369,   244,   244,
2362 >     244,   244,   244,   244,   244,   242,   542,   241,   244,   244,
2363 >     244,   244,   244,   244,   244,   244,   262,   244,   244,   244,
2364 >     244,   244,   242,   260,     1,   100,   165,   227,   376,   377,
2365 >     378,   379,   380,     1,   100,   165,   386,   387,   388,   389,
2366 >     244,   242,   372,   131,   131,   131,   241,   175,   110,   110,
2367 >     175,   175,   110,   250,   250,   110,   110,   175,   175,   110,
2368 >     250,   175,   175,   175,   175,   175,   241,   241,   244,   244,
2369 >     244,   244,   244,   244,   244,   244,   244,   244,   244,   244,
2370 >     244,   242,   320,   241,   244,   244,   244,   244,   405,   244,
2371 >     244,   244,   244,   244,   244,   244,   244,   242,   396,   244,
2372 >     244,   242,   426,   131,   241,   244,   244,   436,   242,   440,
2373 >     175,   250,   250,   110,   175,   175,   110,   131,   175,   110,
2374 >     110,   110,   175,   175,   175,   250,   131,   175,   110,   110,
2375 >     250,   110,   110,   131,   110,   110,   175,   175,   244,   175,
2376 >     244,   250,   250,   175,   250,   175,   175,   175,   175,   176,
2377 >     175,   176,   175,   175,   250,   250,   110,   252,   131,   250,
2378 >     175,   175,   175,   175,   241,   516,   244,   244,   510,   244,
2379 >     244,   242,   506,   241,   244,   244,   357,   244,   244,   244,
2380 >     244,   244,   242,   351,   244,   416,   244,   242,   420,   241,
2381 >     337,   244,   244,   244,   242,   341,   175,   175,   241,   243,
2382 >     131,   131,   241,   241,   244,   244,   314,   244,   244,   244,
2383 >     310,   244,   242,   302,   241,   244,   244,   244,   242,   366,
2384 >     175,   175,   175,   131,   175,   175,   250,   241,   131,   175,
2385 >     131,   131,   131,   131,   131,   131,   244,   131,   131,   110,
2386 >     131,   131,   241,   241,   244,   381,   244,   242,   377,   241,
2387 >     244,   390,   242,   387,   131,   241,   241,   241,   241,   241,
2388 >     241,   241,   241,   241,   152,   153,   154,   155,   156,   249,
2389 >     250,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2390 >     241,   241,   241,   241,   110,   110,   250,   110,   110,   110,
2391 >     110,   131,   110,   110,   250,   250,   252,   241,   131,   196,
2392 >     197,   131,   175,   244,   131,   131,   131,   131,   110,   131,
2393 >     131,   131,   241,   131,   131,   241,   241,   131,   131,   244,
2394 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2395 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2396 >     241,   241,   241,   241,   241,   241,   241,   241,   241,    61,
2397 >     182,   183,   184,   185,   186,   189,   190,   193,   194,   195,
2398 >     198,   200,   201,   202,   204,   205,   206,   209,   215,   497,
2399 >     498,   241,    61,   182,   183,   184,   185,   186,   189,   190,
2400 >     193,   194,   195,   198,   200,   201,   202,   204,   205,   206,
2401 >     209,   215,   493,   494,   241,   241,   241,   241,   241,   241,
2402 >     241,   241,   241,   241,   241,   241,   241,   241,   241,    14,
2403 >      15,    16,   251,   252,   241,   241,   241,   241,   241,   241,
2404 >     241,   244,   250,   175,   244,   131,   131,   241,   131,   175,
2405 >     244,   131,   110,   131,   131,   131,   241,   131,   244,   131,
2406 >     241,   244,   131,   131,   110,   344,   345,   241,   241,   241,
2407 >       1,   100,   165,   239,   291,   292,   293,   294,   295,   241,
2408 >     241,   131,   175,   244,   131,   131,   131,   244,   131,   241,
2409 >     131,   131,   131,   241,   241,   241,   241,   241,   241,   241,
2410 >     241,   241,   241,   241,   241,   241,   241,   241,   241,   148,
2411 >     149,   263,   264,   241,   241,   241,   241,   241,   131,   244,
2412 >     131,   241,   131,   244,   241,   241,   249,   249,   249,   249,
2413 >     249,   241,   241,   241,   241,   241,   241,   241,   241,   241,
2414 >     241,   241,   241,   241,   241,   241,   241,   241,   241,    10,
2415 >      12,   207,   221,   406,   407,   241,   241,   241,   241,   241,
2416 >     241,   241,   241,   241,   241,   241,   241,   136,   437,   438,
2417 >     241,   245,   241,   245,   251,   251,   251,    11,   177,   517,
2418 >     518,   241,   241,    11,   177,   511,   512,   241,   241,   241,
2419 >     241,    20,    44,    53,    59,    75,   101,   109,   151,   169,
2420 >     358,   359,   241,   241,   241,   241,   241,   241,   136,   417,
2421 >     418,   241,    61,   203,   207,   338,   339,   241,   241,   180,
2422 >     245,   343,   241,   244,   296,   244,   242,   292,   241,   241,
2423 >       5,    32,    51,    57,    74,    98,   105,   119,   137,   139,
2424 >     140,   191,   201,   210,   214,   216,   226,   236,   315,   316,
2425 >     241,   241,   241,    61,   182,   183,   184,   185,   186,   189,
2426 >     190,   193,   194,   195,   198,   200,   201,   202,   204,   205,
2427 >     206,   209,   215,   311,   312,   241,   241,   241,   241,   241,
2428 >     245,   241,    74,   150,   181,   191,   198,   210,   212,   213,
2429 >     226,   236,   382,   383,   241,   241,    74,   150,   181,   191,
2430 >     198,   210,   212,   213,   226,   236,   391,   392,   241,   245,
2431 >     241,   245,   498,   494,   241,   245,   241,   245,   241,   245,
2432 >     241,   245,   241,   245,   110,   345,   241,   131,   244,   211,
2433 >     252,   241,   241,   245,   241,   245,   264,   241,   245,   241,
2434 >     245,   407,   438,   518,   512,   359,   418,   339,   241,    51,
2435 >      72,    74,   115,   190,   191,   227,   297,   298,   241,   241,
2436 >     316,   312,   383,   392,   241,   245,   298
2437   };
2438  
2439   #define yyerrok         (yyerrstatus = 0)
# Line 2550 | Line 2469 | do                                                             \
2469      {                                                           \
2470        yychar = (Token);                                         \
2471        yylval = (Value);                                         \
2553      yytoken = YYTRANSLATE (yychar);                           \
2472        YYPOPSTACK (1);                                           \
2473        goto yybackup;                                            \
2474      }                                                           \
# Line 2592 | Line 2510 | while (YYID (0))
2510   #endif
2511  
2512  
2513 < /* YY_LOCATION_PRINT -- Print the location on the stream.
2596 <   This macro was not mandated originally: define only if we know
2597 <   we won't break user code: when these are the locations we know.  */
2513 > /* This macro is provided for backward compatibility. */
2514  
2515   #ifndef YY_LOCATION_PRINT
2516 < # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
2601 < #  define YY_LOCATION_PRINT(File, Loc)                  \
2602 <     fprintf (File, "%d.%d-%d.%d",                      \
2603 <              (Loc).first_line, (Loc).first_column,     \
2604 <              (Loc).last_line,  (Loc).last_column)
2605 < # else
2606 < #  define YY_LOCATION_PRINT(File, Loc) ((void) 0)
2607 < # endif
2516 > # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
2517   #endif
2518  
2519  
# Line 2796 | Line 2705 | int yydebug;
2705   # define YYMAXDEPTH 10000
2706   #endif
2707  
2799
2708  
2709   #if YYERROR_VERBOSE
2710  
# Line 2899 | Line 2807 | yytnamerr (char *yyres, const char *yyst
2807   }
2808   # endif
2809  
2810 < /* Copy into YYRESULT an error message about the unexpected token
2811 <   YYCHAR while in state YYSTATE.  Return the number of bytes copied,
2812 <   including the terminating null byte.  If YYRESULT is null, do not
2813 <   copy anything; just return the number of bytes that would be
2814 <   copied.  As a special case, return 0 if an ordinary "syntax error"
2815 <   message will do.  Return YYSIZE_MAXIMUM if overflow occurs during
2816 <   size calculation.  */
2817 < static YYSIZE_T
2818 < yysyntax_error (char *yyresult, int yystate, int yychar)
2810 > /* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message
2811 >   about the unexpected token YYTOKEN for the state stack whose top is
2812 >   YYSSP.
2813 >
2814 >   Return 0 if *YYMSG was successfully written.  Return 1 if *YYMSG is
2815 >   not large enough to hold the message.  In that case, also set
2816 >   *YYMSG_ALLOC to the required number of bytes.  Return 2 if the
2817 >   required number of bytes is too large to store.  */
2818 > static int
2819 > yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
2820 >                yytype_int16 *yyssp, int yytoken)
2821   {
2822 <  int yyn = yypact[yystate];
2822 >  YYSIZE_T yysize0 = yytnamerr (0, yytname[yytoken]);
2823 >  YYSIZE_T yysize = yysize0;
2824 >  YYSIZE_T yysize1;
2825 >  enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
2826 >  /* Internationalized format string. */
2827 >  const char *yyformat = 0;
2828 >  /* Arguments of yyformat. */
2829 >  char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
2830 >  /* Number of reported tokens (one for the "unexpected", one per
2831 >     "expected"). */
2832 >  int yycount = 0;
2833 >
2834 >  /* There are many possibilities here to consider:
2835 >     - Assume YYFAIL is not used.  It's too flawed to consider.  See
2836 >       <http://lists.gnu.org/archive/html/bison-patches/2009-12/msg00024.html>
2837 >       for details.  YYERROR is fine as it does not invoke this
2838 >       function.
2839 >     - If this state is a consistent state with a default action, then
2840 >       the only way this function was invoked is if the default action
2841 >       is an error action.  In that case, don't check for expected
2842 >       tokens because there are none.
2843 >     - The only way there can be no lookahead present (in yychar) is if
2844 >       this state is a consistent state with a default action.  Thus,
2845 >       detecting the absence of a lookahead is sufficient to determine
2846 >       that there is no unexpected or expected token to report.  In that
2847 >       case, just report a simple "syntax error".
2848 >     - Don't assume there isn't a lookahead just because this state is a
2849 >       consistent state with a default action.  There might have been a
2850 >       previous inconsistent state, consistent state with a non-default
2851 >       action, or user semantic action that manipulated yychar.
2852 >     - Of course, the expected token list depends on states to have
2853 >       correct lookahead information, and it depends on the parser not
2854 >       to perform extra reductions after fetching a lookahead from the
2855 >       scanner and before detecting a syntax error.  Thus, state merging
2856 >       (from LALR or IELR) and default reductions corrupt the expected
2857 >       token list.  However, the list is correct for canonical LR with
2858 >       one exception: it will still contain any token that will not be
2859 >       accepted due to an error action in a later state.
2860 >  */
2861 >  if (yytoken != YYEMPTY)
2862 >    {
2863 >      int yyn = yypact[*yyssp];
2864 >      yyarg[yycount++] = yytname[yytoken];
2865 >      if (!yypact_value_is_default (yyn))
2866 >        {
2867 >          /* Start YYX at -YYN if negative to avoid negative indexes in
2868 >             YYCHECK.  In other words, skip the first -YYN actions for
2869 >             this state because they are default actions.  */
2870 >          int yyxbegin = yyn < 0 ? -yyn : 0;
2871 >          /* Stay within bounds of both yycheck and yytname.  */
2872 >          int yychecklim = YYLAST - yyn + 1;
2873 >          int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
2874 >          int yyx;
2875 >
2876 >          for (yyx = yyxbegin; yyx < yyxend; ++yyx)
2877 >            if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR
2878 >                && !yytable_value_is_error (yytable[yyx + yyn]))
2879 >              {
2880 >                if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
2881 >                  {
2882 >                    yycount = 1;
2883 >                    yysize = yysize0;
2884 >                    break;
2885 >                  }
2886 >                yyarg[yycount++] = yytname[yyx];
2887 >                yysize1 = yysize + yytnamerr (0, yytname[yyx]);
2888 >                if (! (yysize <= yysize1
2889 >                       && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
2890 >                  return 2;
2891 >                yysize = yysize1;
2892 >              }
2893 >        }
2894 >    }
2895  
2896 <  if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
2915 <    return 0;
2916 <  else
2896 >  switch (yycount)
2897      {
2898 <      int yytype = YYTRANSLATE (yychar);
2899 <      YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
2900 <      YYSIZE_T yysize = yysize0;
2901 <      YYSIZE_T yysize1;
2902 <      int yysize_overflow = 0;
2903 <      enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
2904 <      char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
2905 <      int yyx;
2906 <
2907 < # if 0
2908 <      /* This is so xgettext sees the translatable formats that are
2909 <         constructed on the fly.  */
2910 <      YY_("syntax error, unexpected %s");
2911 <      YY_("syntax error, unexpected %s, expecting %s");
2912 <      YY_("syntax error, unexpected %s, expecting %s or %s");
2913 <      YY_("syntax error, unexpected %s, expecting %s or %s or %s");
2914 <      YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
2915 < # endif
2916 <      char *yyfmt;
2917 <      char const *yyf;
2918 <      static char const yyunexpected[] = "syntax error, unexpected %s";
2919 <      static char const yyexpecting[] = ", expecting %s";
2920 <      static char const yyor[] = " or %s";
2921 <      char yyformat[sizeof yyunexpected
2922 <                    + sizeof yyexpecting - 1
2923 <                    + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
2924 <                       * (sizeof yyor - 1))];
2925 <      char const *yyprefix = yyexpecting;
2926 <
2927 <      /* Start YYX at -YYN if negative to avoid negative indexes in
2928 <         YYCHECK.  */
2929 <      int yyxbegin = yyn < 0 ? -yyn : 0;
2930 <
2931 <      /* Stay within bounds of both yycheck and yytname.  */
2932 <      int yychecklim = YYLAST - yyn + 1;
2933 <      int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
2934 <      int yycount = 1;
2935 <
2936 <      yyarg[0] = yytname[yytype];
2937 <      yyfmt = yystpcpy (yyformat, yyunexpected);
2938 <
2939 <      for (yyx = yyxbegin; yyx < yyxend; ++yyx)
2940 <        if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
2941 <          {
2942 <            if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
2943 <              {
2964 <                yycount = 1;
2965 <                yysize = yysize0;
2966 <                yyformat[sizeof yyunexpected - 1] = '\0';
2967 <                break;
2968 <              }
2969 <            yyarg[yycount++] = yytname[yyx];
2970 <            yysize1 = yysize + yytnamerr (0, yytname[yyx]);
2971 <            yysize_overflow |= (yysize1 < yysize);
2972 <            yysize = yysize1;
2973 <            yyfmt = yystpcpy (yyfmt, yyprefix);
2974 <            yyprefix = yyor;
2975 <          }
2976 <
2977 <      yyf = YY_(yyformat);
2978 <      yysize1 = yysize + yystrlen (yyf);
2979 <      yysize_overflow |= (yysize1 < yysize);
2980 <      yysize = yysize1;
2981 <
2982 <      if (yysize_overflow)
2983 <        return YYSIZE_MAXIMUM;
2984 <
2985 <      if (yyresult)
2986 <        {
2987 <          /* Avoid sprintf, as that infringes on the user's name space.
2988 <             Don't have undefined behavior even if the translation
2989 <             produced a string with the wrong number of "%s"s.  */
2990 <          char *yyp = yyresult;
2991 <          int yyi = 0;
2992 <          while ((*yyp = *yyf) != '\0')
2993 <            {
2994 <              if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
2995 <                {
2996 <                  yyp += yytnamerr (yyp, yyarg[yyi++]);
2997 <                  yyf += 2;
2998 <                }
2999 <              else
3000 <                {
3001 <                  yyp++;
3002 <                  yyf++;
3003 <                }
3004 <            }
3005 <        }
3006 <      return yysize;
3007 <    }
2898 > # define YYCASE_(N, S)                      \
2899 >      case N:                               \
2900 >        yyformat = S;                       \
2901 >      break
2902 >      YYCASE_(0, YY_("syntax error"));
2903 >      YYCASE_(1, YY_("syntax error, unexpected %s"));
2904 >      YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
2905 >      YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
2906 >      YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
2907 >      YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
2908 > # undef YYCASE_
2909 >    }
2910 >
2911 >  yysize1 = yysize + yystrlen (yyformat);
2912 >  if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
2913 >    return 2;
2914 >  yysize = yysize1;
2915 >
2916 >  if (*yymsg_alloc < yysize)
2917 >    {
2918 >      *yymsg_alloc = 2 * yysize;
2919 >      if (! (yysize <= *yymsg_alloc
2920 >             && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM))
2921 >        *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM;
2922 >      return 1;
2923 >    }
2924 >
2925 >  /* Avoid sprintf, as that infringes on the user's name space.
2926 >     Don't have undefined behavior even if the translation
2927 >     produced a string with the wrong number of "%s"s.  */
2928 >  {
2929 >    char *yyp = *yymsg;
2930 >    int yyi = 0;
2931 >    while ((*yyp = *yyformat) != '\0')
2932 >      if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount)
2933 >        {
2934 >          yyp += yytnamerr (yyp, yyarg[yyi++]);
2935 >          yyformat += 2;
2936 >        }
2937 >      else
2938 >        {
2939 >          yyp++;
2940 >          yyformat++;
2941 >        }
2942 >  }
2943 >  return 0;
2944   }
2945   #endif /* YYERROR_VERBOSE */
3010
2946  
2947   /*-----------------------------------------------.
2948   | Release the memory associated to this symbol.  |
# Line 3040 | Line 2975 | yydestruct (yymsg, yytype, yyvaluep)
2975      }
2976   }
2977  
2978 +
2979   /* Prevent warnings from -Wmissing-prototypes.  */
2980   #ifdef YYPARSE_PARAM
2981   #if defined __STDC__ || defined __cplusplus
# Line 3066 | Line 3002 | YYSTYPE yylval;
3002   int yynerrs;
3003  
3004  
3005 <
3006 < /*-------------------------.
3007 < | yyparse or yypush_parse.  |
3072 < `-------------------------*/
3005 > /*----------.
3006 > | yyparse.  |
3007 > `----------*/
3008  
3009   #ifdef YYPARSE_PARAM
3010   #if (defined __STDC__ || defined __C99__FUNC__ \
# Line 3093 | Line 3028 | yyparse ()
3028   #endif
3029   #endif
3030   {
3096
3097
3031      int yystate;
3032      /* Number of tokens to shift before error messages enabled.  */
3033      int yyerrstatus;
# Line 3249 | Line 3182 | yybackup:
3182  
3183    /* First try to decide what to do without reference to lookahead token.  */
3184    yyn = yypact[yystate];
3185 <  if (yyn == YYPACT_NINF)
3185 >  if (yypact_value_is_default (yyn))
3186      goto yydefault;
3187  
3188    /* Not known => get a lookahead token if don't already have one.  */
# Line 3280 | Line 3213 | yybackup:
3213    yyn = yytable[yyn];
3214    if (yyn <= 0)
3215      {
3216 <      if (yyn == 0 || yyn == YYTABLE_NINF)
3217 <        goto yyerrlab;
3216 >      if (yytable_value_is_error (yyn))
3217 >        goto yyerrlab;
3218        yyn = -yyn;
3219        goto yyreduce;
3220      }
# Line 3334 | Line 3267 | yyreduce:
3267    YY_REDUCE_PRINT (yyn);
3268    switch (yyn)
3269      {
3270 <        case 26:
3270 >        case 27:
3271  
3272 < /* Line 1464 of yacc.c  */
3273 < #line 424 "ircd_parser.y"
3272 > /* Line 1806 of yacc.c  */
3273 > #line 407 "ircd_parser.y"
3274      { (yyval.number) = 0; }
3275      break;
3276  
3277 <  case 28:
3277 >  case 29:
3278  
3279 < /* Line 1464 of yacc.c  */
3280 < #line 426 "ircd_parser.y"
3279 > /* Line 1806 of yacc.c  */
3280 > #line 409 "ircd_parser.y"
3281      {
3282                          (yyval.number) = (yyvsp[(1) - (2)].number) + (yyvsp[(2) - (2)].number);
3283                  }
3284      break;
3285  
3286 <  case 29:
3286 >  case 30:
3287  
3288 < /* Line 1464 of yacc.c  */
3289 < #line 430 "ircd_parser.y"
3288 > /* Line 1806 of yacc.c  */
3289 > #line 413 "ircd_parser.y"
3290      {
3291                          (yyval.number) = (yyvsp[(1) - (3)].number) + (yyvsp[(3) - (3)].number);
3292                  }
3293      break;
3294  
3295 <  case 30:
3295 >  case 31:
3296  
3297 < /* Line 1464 of yacc.c  */
3298 < #line 434 "ircd_parser.y"
3297 > /* Line 1806 of yacc.c  */
3298 > #line 417 "ircd_parser.y"
3299      {
3300                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 + (yyvsp[(3) - (3)].number);
3301                  }
3302      break;
3303  
3304 <  case 31:
3304 >  case 32:
3305  
3306 < /* Line 1464 of yacc.c  */
3307 < #line 438 "ircd_parser.y"
3306 > /* Line 1806 of yacc.c  */
3307 > #line 421 "ircd_parser.y"
3308      {
3309                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 * 60 + (yyvsp[(3) - (3)].number);
3310                  }
3311      break;
3312  
3313 <  case 32:
3313 >  case 33:
3314  
3315 < /* Line 1464 of yacc.c  */
3316 < #line 442 "ircd_parser.y"
3315 > /* Line 1806 of yacc.c  */
3316 > #line 425 "ircd_parser.y"
3317      {
3318                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 * 60 * 24 + (yyvsp[(3) - (3)].number);
3319                  }
3320      break;
3321  
3322 <  case 33:
3322 >  case 34:
3323  
3324 < /* Line 1464 of yacc.c  */
3325 < #line 446 "ircd_parser.y"
3324 > /* Line 1806 of yacc.c  */
3325 > #line 429 "ircd_parser.y"
3326      {
3327                          (yyval.number) = (yyvsp[(1) - (3)].number) * 60 * 60 * 24 * 7 + (yyvsp[(3) - (3)].number);
3328                  }
3329      break;
3330  
3331 <  case 34:
3331 >  case 35:
3332  
3333 < /* Line 1464 of yacc.c  */
3334 < #line 451 "ircd_parser.y"
3333 > /* Line 1806 of yacc.c  */
3334 > #line 434 "ircd_parser.y"
3335      { (yyval.number) = 0; }
3336      break;
3337  
3338 <  case 36:
3338 >  case 37:
3339  
3340 < /* Line 1464 of yacc.c  */
3341 < #line 452 "ircd_parser.y"
3340 > /* Line 1806 of yacc.c  */
3341 > #line 435 "ircd_parser.y"
3342      { (yyval.number) = (yyvsp[(1) - (2)].number) + (yyvsp[(2) - (2)].number); }
3343      break;
3344  
3345 <  case 37:
3345 >  case 38:
3346  
3347 < /* Line 1464 of yacc.c  */
3348 < #line 453 "ircd_parser.y"
3347 > /* Line 1806 of yacc.c  */
3348 > #line 436 "ircd_parser.y"
3349      { (yyval.number) = (yyvsp[(1) - (3)].number) + (yyvsp[(3) - (3)].number); }
3350      break;
3351  
3352 <  case 38:
3352 >  case 39:
3353  
3354 < /* Line 1464 of yacc.c  */
3355 < #line 454 "ircd_parser.y"
3354 > /* Line 1806 of yacc.c  */
3355 > #line 437 "ircd_parser.y"
3356      { (yyval.number) = (yyvsp[(1) - (3)].number) * 1024 + (yyvsp[(3) - (3)].number); }
3357      break;
3358  
3359 <  case 39:
3359 >  case 40:
3360  
3361 < /* Line 1464 of yacc.c  */
3362 < #line 455 "ircd_parser.y"
3361 > /* Line 1806 of yacc.c  */
3362 > #line 438 "ircd_parser.y"
3363      { (yyval.number) = (yyvsp[(1) - (3)].number) * 1024 * 1024 + (yyvsp[(3) - (3)].number); }
3364      break;
3365  
3366 <  case 46:
3366 >  case 47:
3367  
3368 < /* Line 1464 of yacc.c  */
3369 < #line 469 "ircd_parser.y"
3368 > /* Line 1806 of yacc.c  */
3369 > #line 452 "ircd_parser.y"
3370      {
3371    if (conf_parser_ctx.pass == 2)
3372      add_conf_module(libio_basename(yylval.string));
3373   }
3374      break;
3375  
3376 <  case 47:
3376 >  case 48:
3377  
3378 < /* Line 1464 of yacc.c  */
3379 < #line 475 "ircd_parser.y"
3378 > /* Line 1806 of yacc.c  */
3379 > #line 458 "ircd_parser.y"
3380      {
3381    if (conf_parser_ctx.pass == 2)
3382      mod_add_path(yylval.string);
3383   }
3384      break;
3385  
3386 <  case 64:
3386 >  case 67:
3387  
3388 < /* Line 1464 of yacc.c  */
3389 < #line 495 "ircd_parser.y"
3388 > /* Line 1806 of yacc.c  */
3389 > #line 478 "ircd_parser.y"
3390      {
3391   #ifdef HAVE_LIBCRYPTO
3392    if (conf_parser_ctx.boot && conf_parser_ctx.pass == 2)
# Line 3462 | Line 3395 | yyreduce:
3395   }
3396      break;
3397  
3398 <  case 65:
3398 >  case 68:
3399  
3400 < /* Line 1464 of yacc.c  */
3401 < #line 501 "ircd_parser.y"
3400 > /* Line 1806 of yacc.c  */
3401 > #line 484 "ircd_parser.y"
3402      {
3403   #ifdef HAVE_LIBCRYPTO
3404    if (conf_parser_ctx.boot && conf_parser_ctx.pass == 2)
3405    {
3406      if (!(ServerInfo.tls_version & CONF_SERVER_INFO_TLS_VERSION_SSLV3))
3407 +    {
3408        SSL_CTX_set_options(ServerInfo.server_ctx, SSL_OP_NO_SSLv3);
3409 +      SSL_CTX_set_options(ServerInfo.client_ctx, SSL_OP_NO_SSLv3);
3410 +    }
3411 +
3412      if (!(ServerInfo.tls_version & CONF_SERVER_INFO_TLS_VERSION_TLSV1))
3413 +    {
3414        SSL_CTX_set_options(ServerInfo.server_ctx, SSL_OP_NO_TLSv1);
3415 +      SSL_CTX_set_options(ServerInfo.client_ctx, SSL_OP_NO_TLSv1);
3416 +    }
3417    }
3418   #endif
3419   }
3420      break;
3421  
3422 <  case 68:
3422 >  case 71:
3423  
3424 < /* Line 1464 of yacc.c  */
3425 < #line 515 "ircd_parser.y"
3424 > /* Line 1806 of yacc.c  */
3425 > #line 505 "ircd_parser.y"
3426      {
3427   #ifdef HAVE_LIBCRYPTO
3428    if (conf_parser_ctx.boot && conf_parser_ctx.pass == 2)
# Line 3491 | Line 3431 | yyreduce:
3431   }
3432      break;
3433  
3434 <  case 69:
3434 >  case 72:
3435  
3436 < /* Line 1464 of yacc.c  */
3437 < #line 521 "ircd_parser.y"
3436 > /* Line 1806 of yacc.c  */
3437 > #line 511 "ircd_parser.y"
3438      {
3439   #ifdef HAVE_LIBCRYPTO
3440    if (conf_parser_ctx.boot && conf_parser_ctx.pass == 2)
# Line 3503 | Line 3443 | yyreduce:
3443   }
3444      break;
3445  
3446 <  case 70:
3446 >  case 73:
3447  
3448 < /* Line 1464 of yacc.c  */
3449 < #line 529 "ircd_parser.y"
3448 > /* Line 1806 of yacc.c  */
3449 > #line 519 "ircd_parser.y"
3450      {
3451   #ifdef HAVE_LIBCRYPTO
3452    if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
# Line 3518 | Line 3458 | yyreduce:
3458      }
3459  
3460      if (SSL_CTX_use_certificate_file(ServerInfo.server_ctx, yylval.string,
3461 +                                     SSL_FILETYPE_PEM) <= 0 ||
3462 +        SSL_CTX_use_certificate_file(ServerInfo.client_ctx, yylval.string,
3463                                       SSL_FILETYPE_PEM) <= 0)
3464      {
3465        yyerror(ERR_lib_error_string(ERR_get_error()));
# Line 3525 | Line 3467 | yyreduce:
3467      }
3468  
3469      if (SSL_CTX_use_PrivateKey_file(ServerInfo.server_ctx, ServerInfo.rsa_private_key_file,
3470 +                                    SSL_FILETYPE_PEM) <= 0 ||
3471 +        SSL_CTX_use_PrivateKey_file(ServerInfo.client_ctx, ServerInfo.rsa_private_key_file,
3472                                      SSL_FILETYPE_PEM) <= 0)
3473      {
3474        yyerror(ERR_lib_error_string(ERR_get_error()));
3475        break;
3476      }
3477  
3478 <    if (!SSL_CTX_check_private_key(ServerInfo.server_ctx))
3478 >    if (!SSL_CTX_check_private_key(ServerInfo.server_ctx) ||
3479 >        !SSL_CTX_check_private_key(ServerInfo.client_ctx))
3480      {
3481        yyerror(ERR_lib_error_string(ERR_get_error()));
3482        break;
# Line 3541 | Line 3486 | yyreduce:
3486   }
3487      break;
3488  
3489 <  case 71:
3489 >  case 74:
3490  
3491 < /* Line 1464 of yacc.c  */
3492 < #line 563 "ircd_parser.y"
3491 > /* Line 1806 of yacc.c  */
3492 > #line 558 "ircd_parser.y"
3493      {
3494   #ifdef HAVE_LIBCRYPTO
3495    if (conf_parser_ctx.pass == 1)
# Line 3571 | Line 3516 | yyreduce:
3516        break;
3517      }
3518  
3519 <    ServerInfo.rsa_private_key = (RSA *)PEM_read_bio_RSAPrivateKey(file, NULL,
3575 <      0, NULL);
3519 >    ServerInfo.rsa_private_key = PEM_read_bio_RSAPrivateKey(file, NULL, 0, NULL);
3520  
3521      BIO_set_close(file, BIO_CLOSE);
3522      BIO_free(file);
# Line 3605 | Line 3549 | yyreduce:
3549   }
3550      break;
3551  
3552 <  case 72:
3552 >  case 75:
3553 >
3554 > /* Line 1806 of yacc.c  */
3555 > #line 617 "ircd_parser.y"
3556 >    {
3557 > /* TBD - XXX: error reporting */
3558 > #ifdef HAVE_LIBCRYPTO
3559 >  if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
3560 >  {
3561 >    BIO *file = BIO_new_file(yylval.string, "r");
3562  
3563 < /* Line 1464 of yacc.c  */
3564 < #line 623 "ircd_parser.y"
3563 >    if (file)
3564 >    {
3565 >      DH *dh = PEM_read_bio_DHparams(file, NULL, NULL, NULL);
3566 >
3567 >      BIO_free(file);
3568 >
3569 >      if (dh)
3570 >      {
3571 >        SSL_CTX_set_tmp_dh(ServerInfo.server_ctx, dh);
3572 >        DH_free(dh);
3573 >      }
3574 >    }
3575 >  }
3576 > #endif
3577 > }
3578 >    break;
3579 >
3580 >  case 76:
3581 >
3582 > /* Line 1806 of yacc.c  */
3583 > #line 641 "ircd_parser.y"
3584 >    {
3585 > #ifdef HAVE_LIBCRYPTO
3586 >  if (conf_parser_ctx.pass == 2 && ServerInfo.server_ctx)
3587 >  {
3588 >    SSL_CTX_set_cipher_list(ServerInfo.server_ctx, yylval.string);
3589 >  }
3590 > #endif
3591 > }
3592 >    break;
3593 >
3594 >  case 77:
3595 >
3596 > /* Line 1806 of yacc.c  */
3597 > #line 651 "ircd_parser.y"
3598      {
3599    /* this isn't rehashable */
3600    if (conf_parser_ctx.pass == 2 && !ServerInfo.name)
# Line 3617 | Line 3603 | yyreduce:
3603        DupString(ServerInfo.name, yylval.string);
3604      else
3605      {
3606 <      ilog(L_ERROR, "Ignoring serverinfo::name -- invalid name. Aborting.");
3606 >      ilog(LOG_TYPE_IRCD, "Ignoring serverinfo::name -- invalid name. Aborting.");
3607        exit(0);
3608      }
3609    }
3610   }
3611      break;
3612  
3613 <  case 73:
3613 >  case 78:
3614  
3615 < /* Line 1464 of yacc.c  */
3616 < #line 638 "ircd_parser.y"
3615 > /* Line 1806 of yacc.c  */
3616 > #line 666 "ircd_parser.y"
3617      {
3618    /* this isn't rehashable */
3619    if (conf_parser_ctx.pass == 2 && !ServerInfo.sid)
# Line 3636 | Line 3622 | yyreduce:
3622        DupString(ServerInfo.sid, yylval.string);
3623      else
3624      {
3625 <      ilog(L_ERROR, "Ignoring serverinfo::sid -- invalid SID. Aborting.");
3625 >      ilog(LOG_TYPE_IRCD, "Ignoring serverinfo::sid -- invalid SID. Aborting.");
3626        exit(0);
3627      }
3628    }
3629   }
3630      break;
3631  
3632 <  case 74:
3632 >  case 79:
3633  
3634 < /* Line 1464 of yacc.c  */
3635 < #line 653 "ircd_parser.y"
3634 > /* Line 1806 of yacc.c  */
3635 > #line 681 "ircd_parser.y"
3636      {
3637    if (conf_parser_ctx.pass == 2)
3638    {
# Line 3656 | Line 3642 | yyreduce:
3642   }
3643      break;
3644  
3645 <  case 75:
3645 >  case 80:
3646  
3647 < /* Line 1464 of yacc.c  */
3648 < #line 662 "ircd_parser.y"
3647 > /* Line 1806 of yacc.c  */
3648 > #line 690 "ircd_parser.y"
3649      {
3650    if (conf_parser_ctx.pass == 2)
3651    {
# Line 3674 | Line 3660 | yyreduce:
3660   }
3661      break;
3662  
3663 <  case 76:
3663 >  case 81:
3664  
3665 < /* Line 1464 of yacc.c  */
3666 < #line 676 "ircd_parser.y"
3665 > /* Line 1806 of yacc.c  */
3666 > #line 704 "ircd_parser.y"
3667      {
3668    if (conf_parser_ctx.pass == 2)
3669    {
# Line 3687 | Line 3673 | yyreduce:
3673   }
3674      break;
3675  
3676 <  case 77:
3676 >  case 82:
3677  
3678 < /* Line 1464 of yacc.c  */
3679 < #line 685 "ircd_parser.y"
3678 > /* Line 1806 of yacc.c  */
3679 > #line 713 "ircd_parser.y"
3680      {
3681    if (conf_parser_ctx.pass == 2 && *yylval.string != '*')
3682    {
# Line 3702 | Line 3688 | yyreduce:
3688      hints.ai_socktype = SOCK_STREAM;
3689      hints.ai_flags    = AI_PASSIVE | AI_NUMERICHOST;
3690  
3691 <    if (irc_getaddrinfo(yylval.string, NULL, &hints, &res))
3692 <      ilog(L_ERROR, "Invalid netmask for server vhost(%s)", yylval.string);
3691 >    if (getaddrinfo(yylval.string, NULL, &hints, &res))
3692 >      ilog(LOG_TYPE_IRCD, "Invalid netmask for server vhost(%s)", yylval.string);
3693      else
3694      {
3695        assert(res != NULL);
# Line 3711 | Line 3697 | yyreduce:
3697        memcpy(&ServerInfo.ip, res->ai_addr, res->ai_addrlen);
3698        ServerInfo.ip.ss.ss_family = res->ai_family;
3699        ServerInfo.ip.ss_len = res->ai_addrlen;
3700 <      irc_freeaddrinfo(res);
3700 >      freeaddrinfo(res);
3701  
3702        ServerInfo.specific_ipv4_vhost = 1;
3703      }
# Line 3719 | Line 3705 | yyreduce:
3705   }
3706      break;
3707  
3708 <  case 78:
3708 >  case 83:
3709  
3710 < /* Line 1464 of yacc.c  */
3711 < #line 713 "ircd_parser.y"
3710 > /* Line 1806 of yacc.c  */
3711 > #line 741 "ircd_parser.y"
3712      {
3713   #ifdef IPV6
3714    if (conf_parser_ctx.pass == 2 && *yylval.string != '*')
# Line 3735 | Line 3721 | yyreduce:
3721      hints.ai_socktype = SOCK_STREAM;
3722      hints.ai_flags    = AI_PASSIVE | AI_NUMERICHOST;
3723  
3724 <    if (irc_getaddrinfo(yylval.string, NULL, &hints, &res))
3725 <      ilog(L_ERROR, "Invalid netmask for server vhost6(%s)", yylval.string);
3724 >    if (getaddrinfo(yylval.string, NULL, &hints, &res))
3725 >      ilog(LOG_TYPE_IRCD, "Invalid netmask for server vhost6(%s)", yylval.string);
3726      else
3727      {
3728        assert(res != NULL);
# Line 3744 | Line 3730 | yyreduce:
3730        memcpy(&ServerInfo.ip6, res->ai_addr, res->ai_addrlen);
3731        ServerInfo.ip6.ss.ss_family = res->ai_family;
3732        ServerInfo.ip6.ss_len = res->ai_addrlen;
3733 <      irc_freeaddrinfo(res);
3733 >      freeaddrinfo(res);
3734  
3735        ServerInfo.specific_ipv6_vhost = 1;
3736      }
# Line 3753 | Line 3739 | yyreduce:
3739   }
3740      break;
3741  
3742 <  case 79:
3742 >  case 84:
3743  
3744 < /* Line 1464 of yacc.c  */
3745 < #line 743 "ircd_parser.y"
3744 > /* Line 1806 of yacc.c  */
3745 > #line 771 "ircd_parser.y"
3746      {
3747    if (conf_parser_ctx.pass == 2)
3748    {
# Line 3780 | Line 3766 | yyreduce:
3766   }
3767      break;
3768  
3769 <  case 80:
3769 >  case 85:
3770  
3771 < /* Line 1464 of yacc.c  */
3772 < #line 766 "ircd_parser.y"
3771 > /* Line 1806 of yacc.c  */
3772 > #line 794 "ircd_parser.y"
3773      {
3774    if (conf_parser_ctx.pass == 2)
3775      ServerInfo.hub = yylval.number;
3776   }
3777      break;
3778  
3779 <  case 88:
3779 >  case 93:
3780  
3781 < /* Line 1464 of yacc.c  */
3782 < #line 781 "ircd_parser.y"
3781 > /* Line 1806 of yacc.c  */
3782 > #line 809 "ircd_parser.y"
3783      {
3784    if (conf_parser_ctx.pass == 2)
3785    {
# Line 3803 | Line 3789 | yyreduce:
3789   }
3790      break;
3791  
3792 <  case 89:
3792 >  case 94:
3793  
3794 < /* Line 1464 of yacc.c  */
3795 < #line 790 "ircd_parser.y"
3794 > /* Line 1806 of yacc.c  */
3795 > #line 818 "ircd_parser.y"
3796      {
3797    if (conf_parser_ctx.pass == 2)
3798    {
# Line 3816 | Line 3802 | yyreduce:
3802   }
3803      break;
3804  
3805 <  case 90:
3805 >  case 95:
3806  
3807 < /* Line 1464 of yacc.c  */
3808 < #line 799 "ircd_parser.y"
3807 > /* Line 1806 of yacc.c  */
3808 > #line 827 "ircd_parser.y"
3809      {
3810    if (conf_parser_ctx.pass == 2)
3811    {
# Line 3829 | Line 3815 | yyreduce:
3815   }
3816      break;
3817  
3818 <  case 107:
3818 >  case 103:
3819  
3820 < /* Line 1464 of yacc.c  */
3821 < #line 826 "ircd_parser.y"
3836 <    {
3837 <                        }
3838 <    break;
3839 <
3840 <  case 108:
3841 <
3842 < /* Line 1464 of yacc.c  */
3843 < #line 830 "ircd_parser.y"
3844 <    {
3845 <                        }
3846 <    break;
3847 <
3848 <  case 109:
3849 <
3850 < /* Line 1464 of yacc.c  */
3851 < #line 834 "ircd_parser.y"
3820 > /* Line 1806 of yacc.c  */
3821 > #line 845 "ircd_parser.y"
3822      {
3823    if (conf_parser_ctx.pass == 2)
3824 <    strlcpy(ConfigLoggingEntry.userlog, yylval.string,
3855 <            sizeof(ConfigLoggingEntry.userlog));
3824 >    ConfigLoggingEntry.use_logging = yylval.number;
3825   }
3826      break;
3827  
3828 <  case 110:
3828 >  case 104:
3829  
3830 < /* Line 1464 of yacc.c  */
3831 < #line 841 "ircd_parser.y"
3830 > /* Line 1806 of yacc.c  */
3831 > #line 851 "ircd_parser.y"
3832      {
3833    if (conf_parser_ctx.pass == 2)
3834 <    strlcpy(ConfigLoggingEntry.failed_operlog, yylval.string,
3866 <            sizeof(ConfigLoggingEntry.failed_operlog));
3834 >    ConfigLoggingEntry.timestamp = yylval.number;
3835   }
3836      break;
3837  
3838 <  case 111:
3838 >  case 105:
3839  
3840 < /* Line 1464 of yacc.c  */
3841 < #line 848 "ircd_parser.y"
3840 > /* Line 1806 of yacc.c  */
3841 > #line 857 "ircd_parser.y"
3842      {
3843 <  if (conf_parser_ctx.pass == 2)
3844 <    strlcpy(ConfigLoggingEntry.operlog, yylval.string,
3845 <            sizeof(ConfigLoggingEntry.operlog));
3843 >  lfile[0] = '\0';
3844 >  ltype = 0;
3845 >  lsize = 0;
3846   }
3847      break;
3848  
3849 <  case 112:
3849 >  case 106:
3850  
3851 < /* Line 1464 of yacc.c  */
3852 < #line 855 "ircd_parser.y"
3851 > /* Line 1806 of yacc.c  */
3852 > #line 862 "ircd_parser.y"
3853      {
3854 <  if (conf_parser_ctx.pass == 2)
3855 <    strlcpy(ConfigLoggingEntry.operspylog, yylval.string,
3888 <            sizeof(ConfigLoggingEntry.operspylog));
3854 >  if (conf_parser_ctx.pass == 2 && ltype > 0)
3855 >    log_add_file(ltype, lsize, lfile);
3856   }
3857      break;
3858  
3859    case 113:
3860  
3861 < /* Line 1464 of yacc.c  */
3862 < #line 862 "ircd_parser.y"
3861 > /* Line 1806 of yacc.c  */
3862 > #line 874 "ircd_parser.y"
3863      {
3864 <  if (conf_parser_ctx.pass == 2)
3898 <    strlcpy(ConfigLoggingEntry.glinelog, yylval.string,
3899 <            sizeof(ConfigLoggingEntry.glinelog));
3864 >  strlcpy(lfile, yylval.string, sizeof(lfile));
3865   }
3866      break;
3867  
3868    case 114:
3869  
3870 < /* Line 1464 of yacc.c  */
3871 < #line 869 "ircd_parser.y"
3870 > /* Line 1806 of yacc.c  */
3871 > #line 879 "ircd_parser.y"
3872      {
3873 <  if (conf_parser_ctx.pass == 2)
3909 <    strlcpy(ConfigLoggingEntry.klinelog, yylval.string,
3910 <            sizeof(ConfigLoggingEntry.klinelog));
3873 >  lsize = (yyvsp[(3) - (4)].number);
3874   }
3875      break;
3876  
3877    case 115:
3878  
3879 < /* Line 1464 of yacc.c  */
3880 < #line 876 "ircd_parser.y"
3879 > /* Line 1806 of yacc.c  */
3880 > #line 882 "ircd_parser.y"
3881      {
3882 <  if (conf_parser_ctx.pass == 2)
3920 <    strlcpy(ConfigLoggingEntry.ioerrlog, yylval.string,
3921 <            sizeof(ConfigLoggingEntry.ioerrlog));
3882 >  lsize = 0;
3883   }
3884      break;
3885  
3886    case 116:
3887  
3888 < /* Line 1464 of yacc.c  */
3889 < #line 883 "ircd_parser.y"
3888 > /* Line 1806 of yacc.c  */
3889 > #line 887 "ircd_parser.y"
3890      {
3891    if (conf_parser_ctx.pass == 2)
3892 <    strlcpy(ConfigLoggingEntry.killlog, yylval.string,
3932 <            sizeof(ConfigLoggingEntry.killlog));
3892 >    ltype = 0;
3893   }
3894      break;
3895  
3896 <  case 117:
3937 <
3938 < /* Line 1464 of yacc.c  */
3939 < #line 890 "ircd_parser.y"
3940 <    {
3941 <  if (conf_parser_ctx.pass == 2)
3942 <    set_log_level(L_CRIT);
3943 < }
3944 <    break;
3945 <
3946 <  case 118:
3896 >  case 120:
3897  
3898 < /* Line 1464 of yacc.c  */
3898 > /* Line 1806 of yacc.c  */
3899   #line 894 "ircd_parser.y"
3900      {
3901    if (conf_parser_ctx.pass == 2)
3902 <    set_log_level(L_ERROR);
3902 >    ltype = LOG_TYPE_USER;
3903   }
3904      break;
3905  
3906 <  case 119:
3906 >  case 121:
3907  
3908 < /* Line 1464 of yacc.c  */
3908 > /* Line 1806 of yacc.c  */
3909   #line 898 "ircd_parser.y"
3910      {
3911    if (conf_parser_ctx.pass == 2)
3912 <    set_log_level(L_WARN);
3912 >    ltype = LOG_TYPE_OPER;
3913   }
3914      break;
3915  
3916 <  case 120:
3916 >  case 122:
3917  
3918 < /* Line 1464 of yacc.c  */
3918 > /* Line 1806 of yacc.c  */
3919   #line 902 "ircd_parser.y"
3920      {
3921    if (conf_parser_ctx.pass == 2)
3922 <    set_log_level(L_NOTICE);
3922 >    ltype = LOG_TYPE_GLINE;
3923   }
3924      break;
3925  
3926 <  case 121:
3926 >  case 123:
3927  
3928 < /* Line 1464 of yacc.c  */
3928 > /* Line 1806 of yacc.c  */
3929   #line 906 "ircd_parser.y"
3930      {
3931    if (conf_parser_ctx.pass == 2)
3932 <    set_log_level(L_TRACE);
3932 >    ltype = LOG_TYPE_DLINE;
3933   }
3934      break;
3935  
3936 <  case 122:
3936 >  case 124:
3937  
3938 < /* Line 1464 of yacc.c  */
3938 > /* Line 1806 of yacc.c  */
3939   #line 910 "ircd_parser.y"
3940      {
3941    if (conf_parser_ctx.pass == 2)
3942 <    set_log_level(L_INFO);
3942 >    ltype = LOG_TYPE_KLINE;
3943   }
3944      break;
3945  
3946 <  case 123:
3946 >  case 125:
3947  
3948 < /* Line 1464 of yacc.c  */
3948 > /* Line 1806 of yacc.c  */
3949   #line 914 "ircd_parser.y"
3950      {
3951    if (conf_parser_ctx.pass == 2)
3952 <    set_log_level(L_DEBUG);
3952 >    ltype = LOG_TYPE_KILL;
3953   }
3954      break;
3955  
3956 <  case 124:
3956 >  case 126:
3957  
3958 < /* Line 1464 of yacc.c  */
3959 < #line 920 "ircd_parser.y"
3958 > /* Line 1806 of yacc.c  */
3959 > #line 918 "ircd_parser.y"
3960      {
3961    if (conf_parser_ctx.pass == 2)
3962 <    ConfigLoggingEntry.use_logging = yylval.number;
3962 >    ltype = LOG_TYPE_DEBUG;
3963   }
3964      break;
3965  
3966 <  case 125:
3966 >  case 127:
3967  
3968 < /* Line 1464 of yacc.c  */
3969 < #line 929 "ircd_parser.y"
3968 > /* Line 1806 of yacc.c  */
3969 > #line 928 "ircd_parser.y"
3970      {
3971    if (conf_parser_ctx.pass == 2)
3972    {
# Line 4032 | Line 3982 | yyreduce:
3982   }
3983      break;
3984  
3985 <  case 126:
3985 >  case 128:
3986  
3987 < /* Line 1464 of yacc.c  */
3988 < #line 942 "ircd_parser.y"
3987 > /* Line 1806 of yacc.c  */
3988 > #line 941 "ircd_parser.y"
3989      {
3990    if (conf_parser_ctx.pass == 2)
3991    {
# Line 4070 | Line 4020 | yyreduce:
4020          DupString(new_aconf->host, yy_tmp->host);
4021        else
4022          DupString(new_aconf->host, "*");
4023 +
4024 +      new_aconf->type = parse_netmask(new_aconf->host, &new_aconf->ipnum,
4025 +                                     &new_aconf->bits);
4026 +
4027        conf_add_class_to_conf(new_conf, class_name);
4028        if (yy_aconf->passwd != NULL)
4029          DupString(new_aconf->passwd, yy_aconf->passwd);
# Line 4119 | Line 4073 | yyreduce:
4073  
4074    case 140:
4075  
4076 < /* Line 1464 of yacc.c  */
4077 < #line 1029 "ircd_parser.y"
4076 > /* Line 1806 of yacc.c  */
4077 > #line 1031 "ircd_parser.y"
4078      {
4079    if (conf_parser_ctx.pass == 2)
4080    {
# Line 4135 | Line 4089 | yyreduce:
4089  
4090    case 141:
4091  
4092 < /* Line 1464 of yacc.c  */
4093 < #line 1041 "ircd_parser.y"
4140 <    {
4141 <  if (conf_parser_ctx.pass == 2)
4142 <  {
4143 <    if (strlen(yylval.string) > OPERNICKLEN)
4144 <      yylval.string[OPERNICKLEN] = '\0';
4145 <
4146 <    MyFree(yy_conf->name);
4147 <    DupString(yy_conf->name, yylval.string);
4148 <  }
4149 < }
4150 <    break;
4151 <
4152 <  case 142:
4153 <
4154 < /* Line 1464 of yacc.c  */
4155 < #line 1053 "ircd_parser.y"
4092 > /* Line 1806 of yacc.c  */
4093 > #line 1043 "ircd_parser.y"
4094      {
4095    if (conf_parser_ctx.pass == 2)
4096    {
# Line 4173 | Line 4111 | yyreduce:
4111      {
4112        DupString(yy_aconf->user, userbuf);
4113        DupString(yy_aconf->host, hostbuf);
4114 +
4115 +      yy_aconf->type = parse_netmask(yy_aconf->host, &yy_aconf->ipnum,
4116 +                                    &yy_aconf->bits);
4117      }
4118      else
4119      {
# Line 4187 | Line 4128 | yyreduce:
4128   }
4129      break;
4130  
4131 <  case 143:
4131 >  case 142:
4132  
4133 < /* Line 1464 of yacc.c  */
4134 < #line 1087 "ircd_parser.y"
4133 > /* Line 1806 of yacc.c  */
4134 > #line 1080 "ircd_parser.y"
4135      {
4136    if (conf_parser_ctx.pass == 2)
4137    {
# Line 4203 | Line 4144 | yyreduce:
4144   }
4145      break;
4146  
4147 <  case 144:
4147 >  case 143:
4148  
4149 < /* Line 1464 of yacc.c  */
4150 < #line 1099 "ircd_parser.y"
4149 > /* Line 1806 of yacc.c  */
4150 > #line 1092 "ircd_parser.y"
4151      {
4152    if (conf_parser_ctx.pass == 2)
4153    {
# Line 4218 | Line 4159 | yyreduce:
4159   }
4160      break;
4161  
4162 <  case 145:
4162 >  case 144:
4163  
4164 < /* Line 1464 of yacc.c  */
4165 < #line 1110 "ircd_parser.y"
4164 > /* Line 1806 of yacc.c  */
4165 > #line 1103 "ircd_parser.y"
4166      {
4167   #ifdef HAVE_LIBCRYPTO
4168    if (conf_parser_ctx.pass == 2)
# Line 4264 | Line 4205 | yyreduce:
4205   }
4206      break;
4207  
4208 <  case 146:
4208 >  case 145:
4209  
4210 < /* Line 1464 of yacc.c  */
4211 < #line 1152 "ircd_parser.y"
4210 > /* Line 1806 of yacc.c  */
4211 > #line 1145 "ircd_parser.y"
4212      {
4213    if (conf_parser_ctx.pass == 2)
4214    {
# Line 4277 | Line 4218 | yyreduce:
4218   }
4219      break;
4220  
4221 <  case 147:
4221 >  case 146:
4222  
4223 < /* Line 1464 of yacc.c  */
4224 < #line 1161 "ircd_parser.y"
4223 > /* Line 1806 of yacc.c  */
4224 > #line 1154 "ircd_parser.y"
4225      {
4226    if (conf_parser_ctx.pass == 2)
4227      yy_aconf->modes = 0;
4228   }
4229      break;
4230  
4231 <  case 151:
4231 >  case 150:
4232  
4233 < /* Line 1464 of yacc.c  */
4234 < #line 1168 "ircd_parser.y"
4233 > /* Line 1806 of yacc.c  */
4234 > #line 1161 "ircd_parser.y"
4235      {
4236    if (conf_parser_ctx.pass == 2)
4237      yy_aconf->modes |= UMODE_BOTS;
4238   }
4239      break;
4240  
4241 <  case 152:
4241 >  case 151:
4242  
4243 < /* Line 1464 of yacc.c  */
4244 < #line 1172 "ircd_parser.y"
4243 > /* Line 1806 of yacc.c  */
4244 > #line 1165 "ircd_parser.y"
4245      {
4246    if (conf_parser_ctx.pass == 2)
4247      yy_aconf->modes |= UMODE_CCONN;
4248   }
4249      break;
4250  
4251 <  case 153:
4251 >  case 152:
4252  
4253 < /* Line 1464 of yacc.c  */
4254 < #line 1176 "ircd_parser.y"
4253 > /* Line 1806 of yacc.c  */
4254 > #line 1169 "ircd_parser.y"
4255      {
4256    if (conf_parser_ctx.pass == 2)
4257      yy_aconf->modes |= UMODE_CCONN_FULL;
4258   }
4259      break;
4260  
4261 <  case 154:
4261 >  case 153:
4262  
4263 < /* Line 1464 of yacc.c  */
4264 < #line 1180 "ircd_parser.y"
4263 > /* Line 1806 of yacc.c  */
4264 > #line 1173 "ircd_parser.y"
4265      {
4266    if (conf_parser_ctx.pass == 2)
4267      yy_aconf->modes |= UMODE_DEAF;
4268   }
4269      break;
4270  
4271 <  case 155:
4271 >  case 154:
4272  
4273 < /* Line 1464 of yacc.c  */
4274 < #line 1184 "ircd_parser.y"
4273 > /* Line 1806 of yacc.c  */
4274 > #line 1177 "ircd_parser.y"
4275      {
4276    if (conf_parser_ctx.pass == 2)
4277      yy_aconf->modes |= UMODE_DEBUG;
4278   }
4279      break;
4280  
4281 <  case 156:
4281 >  case 155:
4282  
4283 < /* Line 1464 of yacc.c  */
4284 < #line 1188 "ircd_parser.y"
4283 > /* Line 1806 of yacc.c  */
4284 > #line 1181 "ircd_parser.y"
4285      {
4286    if (conf_parser_ctx.pass == 2)
4287      yy_aconf->modes |= UMODE_FULL;
4288   }
4289      break;
4290  
4291 +  case 156:
4292 +
4293 + /* Line 1806 of yacc.c  */
4294 + #line 1185 "ircd_parser.y"
4295 +    {
4296 +  if (conf_parser_ctx.pass == 2)
4297 +    yy_aconf->modes |= UMODE_HIDDEN;
4298 + }
4299 +    break;
4300 +
4301    case 157:
4302  
4303 < /* Line 1464 of yacc.c  */
4304 < #line 1192 "ircd_parser.y"
4303 > /* Line 1806 of yacc.c  */
4304 > #line 1189 "ircd_parser.y"
4305      {
4306    if (conf_parser_ctx.pass == 2)
4307      yy_aconf->modes |= UMODE_SKILL;
# Line 4359 | Line 4310 | yyreduce:
4310  
4311    case 158:
4312  
4313 < /* Line 1464 of yacc.c  */
4314 < #line 1196 "ircd_parser.y"
4313 > /* Line 1806 of yacc.c  */
4314 > #line 1193 "ircd_parser.y"
4315      {
4316    if (conf_parser_ctx.pass == 2)
4317      yy_aconf->modes |= UMODE_NCHANGE;
# Line 4369 | Line 4320 | yyreduce:
4320  
4321    case 159:
4322  
4323 < /* Line 1464 of yacc.c  */
4324 < #line 1200 "ircd_parser.y"
4323 > /* Line 1806 of yacc.c  */
4324 > #line 1197 "ircd_parser.y"
4325      {
4326    if (conf_parser_ctx.pass == 2)
4327      yy_aconf->modes |= UMODE_REJ;
# Line 4379 | Line 4330 | yyreduce:
4330  
4331    case 160:
4332  
4333 < /* Line 1464 of yacc.c  */
4334 < #line 1204 "ircd_parser.y"
4333 > /* Line 1806 of yacc.c  */
4334 > #line 1201 "ircd_parser.y"
4335      {
4336    if (conf_parser_ctx.pass == 2)
4337      yy_aconf->modes |= UMODE_UNAUTH;
# Line 4389 | Line 4340 | yyreduce:
4340  
4341    case 161:
4342  
4343 < /* Line 1464 of yacc.c  */
4344 < #line 1208 "ircd_parser.y"
4343 > /* Line 1806 of yacc.c  */
4344 > #line 1205 "ircd_parser.y"
4345      {
4346    if (conf_parser_ctx.pass == 2)
4347      yy_aconf->modes |= UMODE_SPY;
# Line 4399 | Line 4350 | yyreduce:
4350  
4351    case 162:
4352  
4353 < /* Line 1464 of yacc.c  */
4354 < #line 1212 "ircd_parser.y"
4353 > /* Line 1806 of yacc.c  */
4354 > #line 1209 "ircd_parser.y"
4355      {
4356    if (conf_parser_ctx.pass == 2)
4357      yy_aconf->modes |= UMODE_EXTERNAL;
# Line 4409 | Line 4360 | yyreduce:
4360  
4361    case 163:
4362  
4363 < /* Line 1464 of yacc.c  */
4364 < #line 1216 "ircd_parser.y"
4363 > /* Line 1806 of yacc.c  */
4364 > #line 1213 "ircd_parser.y"
4365      {
4366    if (conf_parser_ctx.pass == 2)
4367      yy_aconf->modes |= UMODE_OPERWALL;
# Line 4419 | Line 4370 | yyreduce:
4370  
4371    case 164:
4372  
4373 < /* Line 1464 of yacc.c  */
4374 < #line 1220 "ircd_parser.y"
4373 > /* Line 1806 of yacc.c  */
4374 > #line 1217 "ircd_parser.y"
4375      {
4376    if (conf_parser_ctx.pass == 2)
4377      yy_aconf->modes |= UMODE_SERVNOTICE;
# Line 4429 | Line 4380 | yyreduce:
4380  
4381    case 165:
4382  
4383 < /* Line 1464 of yacc.c  */
4384 < #line 1224 "ircd_parser.y"
4383 > /* Line 1806 of yacc.c  */
4384 > #line 1221 "ircd_parser.y"
4385      {
4386    if (conf_parser_ctx.pass == 2)
4387      yy_aconf->modes |= UMODE_INVISIBLE;
# Line 4439 | Line 4390 | yyreduce:
4390  
4391    case 166:
4392  
4393 < /* Line 1464 of yacc.c  */
4394 < #line 1228 "ircd_parser.y"
4393 > /* Line 1806 of yacc.c  */
4394 > #line 1225 "ircd_parser.y"
4395      {
4396    if (conf_parser_ctx.pass == 2)
4397      yy_aconf->modes |= UMODE_WALLOP;
# Line 4449 | Line 4400 | yyreduce:
4400  
4401    case 167:
4402  
4403 < /* Line 1464 of yacc.c  */
4404 < #line 1232 "ircd_parser.y"
4403 > /* Line 1806 of yacc.c  */
4404 > #line 1229 "ircd_parser.y"
4405      {
4406    if (conf_parser_ctx.pass == 2)
4407      yy_aconf->modes |= UMODE_SOFTCALLERID;
# Line 4459 | Line 4410 | yyreduce:
4410  
4411    case 168:
4412  
4413 < /* Line 1464 of yacc.c  */
4414 < #line 1236 "ircd_parser.y"
4413 > /* Line 1806 of yacc.c  */
4414 > #line 1233 "ircd_parser.y"
4415      {
4416    if (conf_parser_ctx.pass == 2)
4417      yy_aconf->modes |= UMODE_CALLERID;
# Line 4469 | Line 4420 | yyreduce:
4420  
4421    case 169:
4422  
4423 < /* Line 1464 of yacc.c  */
4424 < #line 1240 "ircd_parser.y"
4423 > /* Line 1806 of yacc.c  */
4424 > #line 1237 "ircd_parser.y"
4425      {
4426    if (conf_parser_ctx.pass == 2)
4427      yy_aconf->modes |= UMODE_LOCOPS;
# Line 4479 | Line 4430 | yyreduce:
4430  
4431    case 170:
4432  
4433 < /* Line 1464 of yacc.c  */
4434 < #line 1246 "ircd_parser.y"
4433 > /* Line 1806 of yacc.c  */
4434 > #line 1243 "ircd_parser.y"
4435      {
4436 +  if (conf_parser_ctx.pass == 2)
4437 +    yy_aconf->port = 0;
4438   }
4439      break;
4440  
4441    case 174:
4442  
4443 < /* Line 1464 of yacc.c  */
4443 > /* Line 1806 of yacc.c  */
4444   #line 1250 "ircd_parser.y"
4445 <    { not_atom = 1; }
4445 >    {
4446 >  if (conf_parser_ctx.pass == 2)
4447 >    yy_aconf->port |= OPER_FLAG_GLOBAL_KILL;
4448 > }
4449 >    break;
4450 >
4451 >  case 175:
4452 >
4453 > /* Line 1806 of yacc.c  */
4454 > #line 1254 "ircd_parser.y"
4455 >    {
4456 >  if (conf_parser_ctx.pass == 2)
4457 >    yy_aconf->port |= OPER_FLAG_REMOTE;
4458 > }
4459      break;
4460  
4461    case 176:
4462  
4463 < /* Line 1464 of yacc.c  */
4464 < #line 1251 "ircd_parser.y"
4465 <    { not_atom = 0; }
4463 > /* Line 1806 of yacc.c  */
4464 > #line 1258 "ircd_parser.y"
4465 >    {
4466 >  if (conf_parser_ctx.pass == 2)
4467 >    yy_aconf->port |= OPER_FLAG_K;
4468 > }
4469 >    break;
4470 >
4471 >  case 177:
4472 >
4473 > /* Line 1806 of yacc.c  */
4474 > #line 1262 "ircd_parser.y"
4475 >    {
4476 >  if (conf_parser_ctx.pass == 2)
4477 >    yy_aconf->port |= OPER_FLAG_UNKLINE;
4478 > }
4479      break;
4480  
4481    case 178:
4482  
4483 < /* Line 1464 of yacc.c  */
4484 < #line 1254 "ircd_parser.y"
4483 > /* Line 1806 of yacc.c  */
4484 > #line 1266 "ircd_parser.y"
4485      {
4486    if (conf_parser_ctx.pass == 2)
4487 <  {
4509 <    if (not_atom)yy_aconf->port &= ~OPER_FLAG_GLOBAL_KILL;
4510 <    else yy_aconf->port |= OPER_FLAG_GLOBAL_KILL;
4511 <  }
4487 >    yy_aconf->port |= OPER_FLAG_DLINE;
4488   }
4489      break;
4490  
4491    case 179:
4492  
4493 < /* Line 1464 of yacc.c  */
4494 < #line 1261 "ircd_parser.y"
4493 > /* Line 1806 of yacc.c  */
4494 > #line 1270 "ircd_parser.y"
4495      {
4496    if (conf_parser_ctx.pass == 2)
4497 <  {
4522 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_REMOTE;
4523 <    else yy_aconf->port |= OPER_FLAG_REMOTE;
4524 <  }
4497 >    yy_aconf->port |= OPER_FLAG_UNDLINE;
4498   }
4499      break;
4500  
4501    case 180:
4502  
4503 < /* Line 1464 of yacc.c  */
4504 < #line 1268 "ircd_parser.y"
4503 > /* Line 1806 of yacc.c  */
4504 > #line 1274 "ircd_parser.y"
4505      {
4506    if (conf_parser_ctx.pass == 2)
4507 <  {
4535 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_K;
4536 <    else yy_aconf->port |= OPER_FLAG_K;
4537 <  }
4507 >    yy_aconf->port |= OPER_FLAG_X;
4508   }
4509      break;
4510  
4511    case 181:
4512  
4513 < /* Line 1464 of yacc.c  */
4514 < #line 1275 "ircd_parser.y"
4513 > /* Line 1806 of yacc.c  */
4514 > #line 1278 "ircd_parser.y"
4515      {
4516    if (conf_parser_ctx.pass == 2)
4517 <  {
4548 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_UNKLINE;
4549 <    else yy_aconf->port |= OPER_FLAG_UNKLINE;
4550 <  }
4517 >    yy_aconf->port |= OPER_FLAG_GLINE;
4518   }
4519      break;
4520  
4521    case 182:
4522  
4523 < /* Line 1464 of yacc.c  */
4523 > /* Line 1806 of yacc.c  */
4524   #line 1282 "ircd_parser.y"
4525      {
4526    if (conf_parser_ctx.pass == 2)
4527 <  {
4561 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_X;
4562 <    else yy_aconf->port |= OPER_FLAG_X;
4563 <  }
4527 >    yy_aconf->port |= OPER_FLAG_DIE;
4528   }
4529      break;
4530  
4531    case 183:
4532  
4533 < /* Line 1464 of yacc.c  */
4534 < #line 1289 "ircd_parser.y"
4533 > /* Line 1806 of yacc.c  */
4534 > #line 1286 "ircd_parser.y"
4535      {
4536    if (conf_parser_ctx.pass == 2)
4537 <  {
4574 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_GLINE;
4575 <    else yy_aconf->port |= OPER_FLAG_GLINE;
4576 <  }
4537 >    yy_aconf->port |= OPER_FLAG_RESTART;
4538   }
4539      break;
4540  
4541    case 184:
4542  
4543 < /* Line 1464 of yacc.c  */
4544 < #line 1296 "ircd_parser.y"
4543 > /* Line 1806 of yacc.c  */
4544 > #line 1290 "ircd_parser.y"
4545      {
4546    if (conf_parser_ctx.pass == 2)
4547 <  {
4587 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_DIE;
4588 <    else yy_aconf->port |= OPER_FLAG_DIE;
4589 <  }
4547 >    yy_aconf->port |= OPER_FLAG_REHASH;
4548   }
4549      break;
4550  
4551    case 185:
4552  
4553 < /* Line 1464 of yacc.c  */
4554 < #line 1303 "ircd_parser.y"
4553 > /* Line 1806 of yacc.c  */
4554 > #line 1294 "ircd_parser.y"
4555      {
4556    if (conf_parser_ctx.pass == 2)
4557 <  {
4600 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_REHASH;
4601 <    else yy_aconf->port |= OPER_FLAG_REHASH;
4602 <  }
4557 >    yy_aconf->port |= OPER_FLAG_ADMIN;
4558   }
4559      break;
4560  
4561    case 186:
4562  
4563 < /* Line 1464 of yacc.c  */
4564 < #line 1310 "ircd_parser.y"
4563 > /* Line 1806 of yacc.c  */
4564 > #line 1298 "ircd_parser.y"
4565      {
4566    if (conf_parser_ctx.pass == 2)
4567 <  {
4613 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_ADMIN;
4614 <    else yy_aconf->port |= OPER_FLAG_ADMIN;
4615 <  }
4567 >    yy_aconf->port |= OPER_FLAG_N;
4568   }
4569      break;
4570  
4571    case 187:
4572  
4573 < /* Line 1464 of yacc.c  */
4574 < #line 1317 "ircd_parser.y"
4573 > /* Line 1806 of yacc.c  */
4574 > #line 1302 "ircd_parser.y"
4575      {
4576    if (conf_parser_ctx.pass == 2)
4577 <  {
4626 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_HIDDEN_ADMIN;
4627 <    else yy_aconf->port |= OPER_FLAG_HIDDEN_ADMIN;
4628 <  }
4577 >    yy_aconf->port |= OPER_FLAG_OPERWALL;
4578   }
4579      break;
4580  
4581    case 188:
4582  
4583 < /* Line 1464 of yacc.c  */
4584 < #line 1324 "ircd_parser.y"
4583 > /* Line 1806 of yacc.c  */
4584 > #line 1306 "ircd_parser.y"
4585      {
4586    if (conf_parser_ctx.pass == 2)
4587 <  {
4639 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_N;
4640 <    else yy_aconf->port |= OPER_FLAG_N;
4641 <  }
4587 >    yy_aconf->port |= OPER_FLAG_GLOBOPS;
4588   }
4589      break;
4590  
4591    case 189:
4592  
4593 < /* Line 1464 of yacc.c  */
4594 < #line 1331 "ircd_parser.y"
4593 > /* Line 1806 of yacc.c  */
4594 > #line 1310 "ircd_parser.y"
4595      {
4596    if (conf_parser_ctx.pass == 2)
4597 <  {
4652 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_OPERWALL;
4653 <    else yy_aconf->port |= OPER_FLAG_OPERWALL;
4654 <  }
4597 >    yy_aconf->port |= OPER_FLAG_OPER_SPY;
4598   }
4599      break;
4600  
4601    case 190:
4602  
4603 < /* Line 1464 of yacc.c  */
4604 < #line 1338 "ircd_parser.y"
4603 > /* Line 1806 of yacc.c  */
4604 > #line 1314 "ircd_parser.y"
4605      {
4606    if (conf_parser_ctx.pass == 2)
4607 <  {
4665 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_OPER_SPY;
4666 <    else yy_aconf->port |= OPER_FLAG_OPER_SPY;
4667 <  }
4607 >    yy_aconf->port |= OPER_FLAG_REMOTEBAN;
4608   }
4609      break;
4610  
4611    case 191:
4612  
4613 < /* Line 1464 of yacc.c  */
4614 < #line 1345 "ircd_parser.y"
4613 > /* Line 1806 of yacc.c  */
4614 > #line 1318 "ircd_parser.y"
4615      {
4616    if (conf_parser_ctx.pass == 2)
4617 <  {
4678 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_HIDDEN_OPER;
4679 <    else yy_aconf->port |= OPER_FLAG_HIDDEN_OPER;
4680 <  }
4617 >    yy_aconf->port |= OPER_FLAG_MODULE;
4618   }
4619      break;
4620  
4621    case 192:
4622  
4623 < /* Line 1464 of yacc.c  */
4624 < #line 1352 "ircd_parser.y"
4688 <    {
4689 <  if (conf_parser_ctx.pass == 2)
4690 <  {
4691 <    if (not_atom) yy_aconf->port &= ~OPER_FLAG_REMOTEBAN;
4692 <    else yy_aconf->port |= OPER_FLAG_REMOTEBAN;
4693 <  }
4694 < }
4695 <    break;
4696 <
4697 <  case 193:
4698 <
4699 < /* Line 1464 of yacc.c  */
4700 < #line 1359 "ircd_parser.y"
4701 <    {
4702 <  if (conf_parser_ctx.pass == 2)
4703 <  {
4704 <    if (not_atom) ClearConfEncrypted(yy_aconf);
4705 <    else SetConfEncrypted(yy_aconf);
4706 <  }
4707 < }
4708 <    break;
4709 <
4710 <  case 194:
4711 <
4712 < /* Line 1464 of yacc.c  */
4713 < #line 1372 "ircd_parser.y"
4623 > /* Line 1806 of yacc.c  */
4624 > #line 1328 "ircd_parser.y"
4625      {
4626    if (conf_parser_ctx.pass == 1)
4627    {
# Line 4720 | Line 4631 | yyreduce:
4631   }
4632      break;
4633  
4634 <  case 195:
4634 >  case 193:
4635  
4636 < /* Line 1464 of yacc.c  */
4637 < #line 1379 "ircd_parser.y"
4636 > /* Line 1806 of yacc.c  */
4637 > #line 1335 "ircd_parser.y"
4638      {
4639    if (conf_parser_ctx.pass == 1)
4640    {
# Line 4734 | Line 4645 | yyreduce:
4645        delete_conf_item(yy_conf);
4646      else
4647      {
4648 <      cconf = find_exact_name_conf(CLASS_TYPE, yy_class_name, NULL, NULL);
4648 >      cconf = find_exact_name_conf(CLASS_TYPE, NULL, yy_class_name, NULL, NULL);
4649  
4650        if (cconf != NULL)                /* The class existed already */
4651        {
# Line 4767 | Line 4678 | yyreduce:
4678   }
4679      break;
4680  
4681 <  case 214:
4681 >  case 210:
4682  
4683 < /* Line 1464 of yacc.c  */
4684 < #line 1439 "ircd_parser.y"
4683 > /* Line 1806 of yacc.c  */
4684 > #line 1393 "ircd_parser.y"
4685      {
4686    if (conf_parser_ctx.pass == 1)
4687    {
# Line 4780 | Line 4691 | yyreduce:
4691   }
4692      break;
4693  
4694 <  case 215:
4784 <
4785 < /* Line 1464 of yacc.c  */
4786 < #line 1448 "ircd_parser.y"
4787 <    {
4788 <  if (conf_parser_ctx.pass == 1)
4789 <  {
4790 <    MyFree(yy_class_name);
4791 <    DupString(yy_class_name, yylval.string);
4792 <  }
4793 < }
4794 <    break;
4795 <
4796 <  case 216:
4694 >  case 211:
4695  
4696 < /* Line 1464 of yacc.c  */
4697 < #line 1457 "ircd_parser.y"
4696 > /* Line 1806 of yacc.c  */
4697 > #line 1402 "ircd_parser.y"
4698      {
4699    if (conf_parser_ctx.pass == 1)
4700      PingFreq(yy_class) = (yyvsp[(3) - (4)].number);
4701   }
4702      break;
4703  
4704 <  case 217:
4704 >  case 212:
4705  
4706 < /* Line 1464 of yacc.c  */
4707 < #line 1463 "ircd_parser.y"
4706 > /* Line 1806 of yacc.c  */
4707 > #line 1408 "ircd_parser.y"
4708      {
4709    if (conf_parser_ctx.pass == 1)
4710      PingWarning(yy_class) = (yyvsp[(3) - (4)].number);
4711   }
4712      break;
4713  
4714 <  case 218:
4714 >  case 213:
4715  
4716 < /* Line 1464 of yacc.c  */
4717 < #line 1469 "ircd_parser.y"
4716 > /* Line 1806 of yacc.c  */
4717 > #line 1414 "ircd_parser.y"
4718      {
4719    if (conf_parser_ctx.pass == 1)
4720      MaxPerIp(yy_class) = (yyvsp[(3) - (4)].number);
4721   }
4722      break;
4723  
4724 <  case 219:
4724 >  case 214:
4725  
4726 < /* Line 1464 of yacc.c  */
4727 < #line 1475 "ircd_parser.y"
4726 > /* Line 1806 of yacc.c  */
4727 > #line 1420 "ircd_parser.y"
4728      {
4729    if (conf_parser_ctx.pass == 1)
4730      ConFreq(yy_class) = (yyvsp[(3) - (4)].number);
4731   }
4732      break;
4733  
4734 <  case 220:
4734 >  case 215:
4735  
4736 < /* Line 1464 of yacc.c  */
4737 < #line 1481 "ircd_parser.y"
4736 > /* Line 1806 of yacc.c  */
4737 > #line 1426 "ircd_parser.y"
4738      {
4739    if (conf_parser_ctx.pass == 1)
4740      MaxTotal(yy_class) = (yyvsp[(3) - (4)].number);
4741   }
4742      break;
4743  
4744 <  case 221:
4744 >  case 216:
4745  
4746 < /* Line 1464 of yacc.c  */
4747 < #line 1487 "ircd_parser.y"
4746 > /* Line 1806 of yacc.c  */
4747 > #line 1432 "ircd_parser.y"
4748      {
4749    if (conf_parser_ctx.pass == 1)
4750      MaxGlobal(yy_class) = (yyvsp[(3) - (4)].number);
4751   }
4752      break;
4753  
4754 <  case 222:
4754 >  case 217:
4755  
4756 < /* Line 1464 of yacc.c  */
4757 < #line 1493 "ircd_parser.y"
4756 > /* Line 1806 of yacc.c  */
4757 > #line 1438 "ircd_parser.y"
4758      {
4759    if (conf_parser_ctx.pass == 1)
4760      MaxLocal(yy_class) = (yyvsp[(3) - (4)].number);
4761   }
4762      break;
4763  
4764 <  case 223:
4764 >  case 218:
4765  
4766 < /* Line 1464 of yacc.c  */
4767 < #line 1499 "ircd_parser.y"
4766 > /* Line 1806 of yacc.c  */
4767 > #line 1444 "ircd_parser.y"
4768      {
4769    if (conf_parser_ctx.pass == 1)
4770      MaxIdent(yy_class) = (yyvsp[(3) - (4)].number);
4771   }
4772      break;
4773  
4774 <  case 224:
4774 >  case 219:
4775  
4776 < /* Line 1464 of yacc.c  */
4777 < #line 1505 "ircd_parser.y"
4776 > /* Line 1806 of yacc.c  */
4777 > #line 1450 "ircd_parser.y"
4778      {
4779    if (conf_parser_ctx.pass == 1)
4780      MaxSendq(yy_class) = (yyvsp[(3) - (4)].number);
4781   }
4782      break;
4783  
4784 <  case 225:
4784 >  case 220:
4785  
4786 < /* Line 1464 of yacc.c  */
4787 < #line 1511 "ircd_parser.y"
4786 > /* Line 1806 of yacc.c  */
4787 > #line 1456 "ircd_parser.y"
4788      {
4789    if (conf_parser_ctx.pass == 1)
4790      CidrBitlenIPV4(yy_class) = (yyvsp[(3) - (4)].number);
4791   }
4792      break;
4793  
4794 <  case 226:
4794 >  case 221:
4795  
4796 < /* Line 1464 of yacc.c  */
4797 < #line 1517 "ircd_parser.y"
4796 > /* Line 1806 of yacc.c  */
4797 > #line 1462 "ircd_parser.y"
4798      {
4799    if (conf_parser_ctx.pass == 1)
4800      CidrBitlenIPV6(yy_class) = (yyvsp[(3) - (4)].number);
4801   }
4802      break;
4803  
4804 <  case 227:
4804 >  case 222:
4805  
4806 < /* Line 1464 of yacc.c  */
4807 < #line 1523 "ircd_parser.y"
4806 > /* Line 1806 of yacc.c  */
4807 > #line 1468 "ircd_parser.y"
4808      {
4809    if (conf_parser_ctx.pass == 1)
4810      NumberPerCidr(yy_class) = (yyvsp[(3) - (4)].number);
4811   }
4812      break;
4813  
4814 <  case 228:
4814 >  case 223:
4815  
4816 < /* Line 1464 of yacc.c  */
4817 < #line 1532 "ircd_parser.y"
4816 > /* Line 1806 of yacc.c  */
4817 > #line 1477 "ircd_parser.y"
4818      {
4819    if (conf_parser_ctx.pass == 2)
4820    {
# Line 4926 | Line 4824 | yyreduce:
4824   }
4825      break;
4826  
4827 <  case 229:
4827 >  case 224:
4828  
4829 < /* Line 1464 of yacc.c  */
4830 < #line 1539 "ircd_parser.y"
4829 > /* Line 1806 of yacc.c  */
4830 > #line 1484 "ircd_parser.y"
4831      {
4832    if (conf_parser_ctx.pass == 2)
4833    {
# Line 4939 | Line 4837 | yyreduce:
4837   }
4838      break;
4839  
4840 <  case 230:
4840 >  case 225:
4841  
4842 < /* Line 1464 of yacc.c  */
4843 < #line 1548 "ircd_parser.y"
4842 > /* Line 1806 of yacc.c  */
4843 > #line 1493 "ircd_parser.y"
4844      {
4845    listener_flags = 0;
4846   }
4847      break;
4848  
4849 <  case 234:
4849 >  case 229:
4850  
4851 < /* Line 1464 of yacc.c  */
4852 < #line 1554 "ircd_parser.y"
4851 > /* Line 1806 of yacc.c  */
4852 > #line 1499 "ircd_parser.y"
4853      {
4854    if (conf_parser_ctx.pass == 2)
4855      listener_flags |= LISTENER_SSL;
4856   }
4857      break;
4858  
4859 <  case 235:
4859 >  case 230:
4860  
4861 < /* Line 1464 of yacc.c  */
4862 < #line 1558 "ircd_parser.y"
4861 > /* Line 1806 of yacc.c  */
4862 > #line 1503 "ircd_parser.y"
4863      {
4864    if (conf_parser_ctx.pass == 2)
4865      listener_flags |= LISTENER_HIDDEN;
4866   }
4867      break;
4868  
4869 <  case 236:
4869 >  case 231:
4870  
4871 < /* Line 1464 of yacc.c  */
4872 < #line 1562 "ircd_parser.y"
4871 > /* Line 1806 of yacc.c  */
4872 > #line 1507 "ircd_parser.y"
4873      {
4874    if (conf_parser_ctx.pass == 2)
4875      listener_flags |= LISTENER_SERVER;
4876   }
4877      break;
4878  
4879 <  case 244:
4879 >  case 239:
4880  
4881 < /* Line 1464 of yacc.c  */
4882 < #line 1572 "ircd_parser.y"
4881 > /* Line 1806 of yacc.c  */
4882 > #line 1517 "ircd_parser.y"
4883      { listener_flags = 0; }
4884      break;
4885  
4886 <  case 248:
4886 >  case 243:
4887  
4888 < /* Line 1464 of yacc.c  */
4889 < #line 1577 "ircd_parser.y"
4888 > /* Line 1806 of yacc.c  */
4889 > #line 1522 "ircd_parser.y"
4890      {
4891    if (conf_parser_ctx.pass == 2)
4892    {
# Line 5005 | Line 4903 | yyreduce:
4903   }
4904      break;
4905  
4906 <  case 249:
4906 >  case 244:
4907  
4908 < /* Line 1464 of yacc.c  */
4909 < #line 1591 "ircd_parser.y"
4908 > /* Line 1806 of yacc.c  */
4909 > #line 1536 "ircd_parser.y"
4910      {
4911    if (conf_parser_ctx.pass == 2)
4912    {
# Line 5029 | Line 4927 | yyreduce:
4927   }
4928      break;
4929  
4930 <  case 250:
4930 >  case 245:
4931  
4932 < /* Line 1464 of yacc.c  */
4933 < #line 1611 "ircd_parser.y"
4932 > /* Line 1806 of yacc.c  */
4933 > #line 1556 "ircd_parser.y"
4934      {
4935    if (conf_parser_ctx.pass == 2)
4936    {
# Line 5042 | Line 4940 | yyreduce:
4940   }
4941      break;
4942  
4943 <  case 251:
4943 >  case 246:
4944  
4945 < /* Line 1464 of yacc.c  */
4946 < #line 1620 "ircd_parser.y"
4945 > /* Line 1806 of yacc.c  */
4946 > #line 1565 "ircd_parser.y"
4947      {
4948    if (conf_parser_ctx.pass == 2)
4949    {
# Line 5055 | Line 4953 | yyreduce:
4953   }
4954      break;
4955  
4956 <  case 252:
4956 >  case 247:
4957  
4958 < /* Line 1464 of yacc.c  */
4959 < #line 1632 "ircd_parser.y"
4958 > /* Line 1806 of yacc.c  */
4959 > #line 1577 "ircd_parser.y"
4960      {
4961    if (conf_parser_ctx.pass == 2)
4962    {
# Line 5073 | Line 4971 | yyreduce:
4971   }
4972      break;
4973  
4974 <  case 253:
4974 >  case 248:
4975  
4976 < /* Line 1464 of yacc.c  */
4977 < #line 1644 "ircd_parser.y"
4976 > /* Line 1806 of yacc.c  */
4977 > #line 1589 "ircd_parser.y"
4978      {
4979    if (conf_parser_ctx.pass == 2)
4980    {
# Line 5134 | Line 5032 | yyreduce:
5032   }
5033      break;
5034  
5035 <  case 265:
5035 >  case 260:
5036  
5037 < /* Line 1464 of yacc.c  */
5038 < #line 1706 "ircd_parser.y"
5037 > /* Line 1806 of yacc.c  */
5038 > #line 1651 "ircd_parser.y"
5039      {
5040    if (conf_parser_ctx.pass == 2)
5041    {
# Line 5173 | Line 5071 | yyreduce:
5071   }
5072      break;
5073  
5074 <  case 266:
5074 >  case 261:
5075  
5076 < /* Line 1464 of yacc.c  */
5077 < #line 1743 "ircd_parser.y"
5076 > /* Line 1806 of yacc.c  */
5077 > #line 1688 "ircd_parser.y"
5078      {
5079    if (conf_parser_ctx.pass == 2)
5080    {
# Line 5190 | Line 5088 | yyreduce:
5088   }
5089      break;
5090  
5091 <  case 267:
5091 >  case 262:
5092  
5093 < /* Line 1464 of yacc.c  */
5094 < #line 1756 "ircd_parser.y"
5093 > /* Line 1806 of yacc.c  */
5094 > #line 1701 "ircd_parser.y"
5095      {
5096    if (conf_parser_ctx.pass == 2)
5097    {
# Line 5203 | Line 5101 | yyreduce:
5101   }
5102      break;
5103  
5104 <  case 268:
5104 >  case 263:
5105  
5106 < /* Line 1464 of yacc.c  */
5107 < #line 1765 "ircd_parser.y"
5106 > /* Line 1806 of yacc.c  */
5107 > #line 1710 "ircd_parser.y"
5108      {
5109    if (conf_parser_ctx.pass == 2)
5110    {
# Line 5218 | Line 5116 | yyreduce:
5116   }
5117      break;
5118  
5119 <  case 269:
5119 >  case 264:
5120  
5121 < /* Line 1464 of yacc.c  */
5122 < #line 1776 "ircd_parser.y"
5121 > /* Line 1806 of yacc.c  */
5122 > #line 1721 "ircd_parser.y"
5123      {
5124   }
5125      break;
5126  
5127 <  case 273:
5230 <
5231 < /* Line 1464 of yacc.c  */
5232 < #line 1780 "ircd_parser.y"
5233 <    { not_atom = 1; }
5234 <    break;
5235 <
5236 <  case 275:
5237 <
5238 < /* Line 1464 of yacc.c  */
5239 < #line 1781 "ircd_parser.y"
5240 <    { not_atom = 0; }
5241 <    break;
5242 <
5243 <  case 277:
5244 <
5245 < /* Line 1464 of yacc.c  */
5246 < #line 1784 "ircd_parser.y"
5247 <    {
5248 <  if (conf_parser_ctx.pass == 2)
5249 <  {
5250 <    if (not_atom) yy_aconf->flags &= ~CONF_FLAGS_SPOOF_NOTICE;
5251 <    else yy_aconf->flags |= CONF_FLAGS_SPOOF_NOTICE;
5252 <  }
5253 < }
5254 <    break;
5255 <
5256 <  case 278:
5127 >  case 268:
5128  
5129 < /* Line 1464 of yacc.c  */
5130 < #line 1791 "ircd_parser.y"
5129 > /* Line 1806 of yacc.c  */
5130 > #line 1726 "ircd_parser.y"
5131      {
5132    if (conf_parser_ctx.pass == 2)
5133 <  {
5263 <    if (not_atom) yy_aconf->flags &= ~CONF_FLAGS_NOLIMIT;
5264 <    else yy_aconf->flags |= CONF_FLAGS_NOLIMIT;
5265 <  }
5133 >    yy_aconf->flags |= CONF_FLAGS_SPOOF_NOTICE;
5134   }
5135      break;
5136  
5137 <  case 279:
5137 >  case 269:
5138  
5139 < /* Line 1464 of yacc.c  */
5140 < #line 1798 "ircd_parser.y"
5139 > /* Line 1806 of yacc.c  */
5140 > #line 1730 "ircd_parser.y"
5141      {
5142    if (conf_parser_ctx.pass == 2)
5143 <  {
5276 <    if (not_atom) yy_aconf->flags &= ~CONF_FLAGS_EXEMPTKLINE;
5277 <    else yy_aconf->flags |= CONF_FLAGS_EXEMPTKLINE;
5278 <  }
5143 >    yy_aconf->flags |= CONF_FLAGS_NOLIMIT;
5144   }
5145      break;
5146  
5147 <  case 280:
5147 >  case 270:
5148  
5149 < /* Line 1464 of yacc.c  */
5150 < #line 1805 "ircd_parser.y"
5149 > /* Line 1806 of yacc.c  */
5150 > #line 1734 "ircd_parser.y"
5151      {
5152    if (conf_parser_ctx.pass == 2)
5153 <  {
5289 <    if (not_atom) yy_aconf->flags &= ~CONF_FLAGS_NEED_IDENTD;
5290 <    else yy_aconf->flags |= CONF_FLAGS_NEED_IDENTD;
5291 <  }
5153 >    yy_aconf->flags |= CONF_FLAGS_EXEMPTKLINE;
5154   }
5155      break;
5156  
5157 <  case 281:
5157 >  case 271:
5158  
5159 < /* Line 1464 of yacc.c  */
5160 < #line 1812 "ircd_parser.y"
5159 > /* Line 1806 of yacc.c  */
5160 > #line 1738 "ircd_parser.y"
5161      {
5162    if (conf_parser_ctx.pass == 2)
5163 <  {
5302 <    if (not_atom) yy_aconf->flags &= ~CONF_FLAGS_CAN_FLOOD;
5303 <    else yy_aconf->flags |= CONF_FLAGS_CAN_FLOOD;
5304 <  }
5163 >    yy_aconf->flags |= CONF_FLAGS_NEED_IDENTD;
5164   }
5165      break;
5166  
5167 <  case 282:
5167 >  case 272:
5168  
5169 < /* Line 1464 of yacc.c  */
5170 < #line 1819 "ircd_parser.y"
5169 > /* Line 1806 of yacc.c  */
5170 > #line 1742 "ircd_parser.y"
5171      {
5172    if (conf_parser_ctx.pass == 2)
5173 <  {
5315 <    if (not_atom) yy_aconf->flags &= ~CONF_FLAGS_IDLE_LINED;
5316 <    else yy_aconf->flags |= CONF_FLAGS_IDLE_LINED;
5317 <  }
5173 >    yy_aconf->flags |= CONF_FLAGS_CAN_FLOOD;
5174   }
5175      break;
5176  
5177 <  case 283:
5177 >  case 273:
5178  
5179 < /* Line 1464 of yacc.c  */
5180 < #line 1826 "ircd_parser.y"
5179 > /* Line 1806 of yacc.c  */
5180 > #line 1746 "ircd_parser.y"
5181      {
5182    if (conf_parser_ctx.pass == 2)
5183 <  {
5328 <    if (not_atom) yy_aconf->flags &= ~CONF_FLAGS_NO_TILDE;
5329 <    else yy_aconf->flags |= CONF_FLAGS_NO_TILDE;
5330 <  }
5183 >    yy_aconf->flags |= CONF_FLAGS_NO_TILDE;
5184   }
5185      break;
5186  
5187 <  case 284:
5187 >  case 274:
5188  
5189 < /* Line 1464 of yacc.c  */
5190 < #line 1833 "ircd_parser.y"
5189 > /* Line 1806 of yacc.c  */
5190 > #line 1750 "ircd_parser.y"
5191      {
5192    if (conf_parser_ctx.pass == 2)
5193 <  {
5341 <    if (not_atom) yy_aconf->flags &= ~CONF_FLAGS_EXEMPTGLINE;
5342 <    else yy_aconf->flags |= CONF_FLAGS_EXEMPTGLINE;
5343 <  }
5193 >    yy_aconf->flags |= CONF_FLAGS_EXEMPTGLINE;
5194   }
5195      break;
5196  
5197 <  case 285:
5197 >  case 275:
5198  
5199 < /* Line 1464 of yacc.c  */
5200 < #line 1840 "ircd_parser.y"
5199 > /* Line 1806 of yacc.c  */
5200 > #line 1754 "ircd_parser.y"
5201      {
5202    if (conf_parser_ctx.pass == 2)
5203 <  {
5354 <    if (not_atom) yy_aconf->flags &= ~CONF_FLAGS_EXEMPTRESV;
5355 <    else yy_aconf->flags |= CONF_FLAGS_EXEMPTRESV;
5356 <  }
5203 >    yy_aconf->flags |= CONF_FLAGS_EXEMPTRESV;
5204   }
5205      break;
5206  
5207 <  case 286:
5207 >  case 276:
5208  
5209 < /* Line 1464 of yacc.c  */
5210 < #line 1847 "ircd_parser.y"
5209 > /* Line 1806 of yacc.c  */
5210 > #line 1758 "ircd_parser.y"
5211      {
5212    if (conf_parser_ctx.pass == 2)
5213 <  {
5367 <    if (not_atom) yy_aconf->flags &= ~CONF_FLAGS_NEED_PASSWORD;
5368 <    else yy_aconf->flags |= CONF_FLAGS_NEED_PASSWORD;
5369 <  }
5213 >    yy_aconf->flags |= CONF_FLAGS_NEED_PASSWORD;
5214   }
5215      break;
5216  
5217 <  case 287:
5217 >  case 277:
5218  
5219 < /* Line 1464 of yacc.c  */
5220 < #line 1857 "ircd_parser.y"
5219 > /* Line 1806 of yacc.c  */
5220 > #line 1765 "ircd_parser.y"
5221      {
5222    if (conf_parser_ctx.pass == 2)
5223    {
# Line 5386 | Line 5230 | yyreduce:
5230      }
5231      else
5232      {
5233 <      ilog(L_ERROR, "Spoofs must be less than %d..ignoring it", HOSTLEN);
5233 >      ilog(LOG_TYPE_IRCD, "Spoofs must be less than %d..ignoring it", HOSTLEN);
5234        yy_conf->name = NULL;
5235      }
5236    }
5237   }
5238      break;
5239  
5240 <  case 288:
5240 >  case 278:
5241  
5242 < /* Line 1464 of yacc.c  */
5243 < #line 1876 "ircd_parser.y"
5242 > /* Line 1806 of yacc.c  */
5243 > #line 1784 "ircd_parser.y"
5244      {
5245    if (conf_parser_ctx.pass == 2)
5246    {
# Line 5407 | Line 5251 | yyreduce:
5251   }
5252      break;
5253  
5254 <  case 289:
5254 >  case 279:
5255  
5256 < /* Line 1464 of yacc.c  */
5257 < #line 1886 "ircd_parser.y"
5256 > /* Line 1806 of yacc.c  */
5257 > #line 1794 "ircd_parser.y"
5258      {
5259    if (conf_parser_ctx.pass == 2)
5260    {
# Line 5420 | Line 5264 | yyreduce:
5264   }
5265      break;
5266  
5267 <  case 290:
5267 >  case 280:
5268  
5269 < /* Line 1464 of yacc.c  */
5270 < #line 1899 "ircd_parser.y"
5269 > /* Line 1806 of yacc.c  */
5270 > #line 1807 "ircd_parser.y"
5271      {
5272    if (conf_parser_ctx.pass == 2)
5273    {
# Line 5433 | Line 5277 | yyreduce:
5277   }
5278      break;
5279  
5280 <  case 291:
5280 >  case 281:
5281  
5282 < /* Line 1464 of yacc.c  */
5283 < #line 1906 "ircd_parser.y"
5282 > /* Line 1806 of yacc.c  */
5283 > #line 1814 "ircd_parser.y"
5284      {
5285    if (conf_parser_ctx.pass == 2)
5286    {
# Line 5446 | Line 5290 | yyreduce:
5290   }
5291      break;
5292  
5293 <  case 298:
5293 >  case 288:
5294  
5295 < /* Line 1464 of yacc.c  */
5296 < #line 1918 "ircd_parser.y"
5295 > /* Line 1806 of yacc.c  */
5296 > #line 1826 "ircd_parser.y"
5297      {
5298    if (conf_parser_ctx.pass == 2)
5299    {
# Line 5459 | Line 5303 | yyreduce:
5303   }
5304      break;
5305  
5306 <  case 299:
5306 >  case 289:
5307  
5308 < /* Line 1464 of yacc.c  */
5309 < #line 1927 "ircd_parser.y"
5308 > /* Line 1806 of yacc.c  */
5309 > #line 1835 "ircd_parser.y"
5310      {
5311    if (conf_parser_ctx.pass == 2)
5312    {
# Line 5478 | Line 5322 | yyreduce:
5322   }
5323      break;
5324  
5325 <  case 300:
5325 >  case 290:
5326  
5327 < /* Line 1464 of yacc.c  */
5328 < #line 1942 "ircd_parser.y"
5327 > /* Line 1806 of yacc.c  */
5328 > #line 1850 "ircd_parser.y"
5329      {
5330    if (conf_parser_ctx.pass == 2)
5331    {
# Line 5492 | Line 5336 | yyreduce:
5336   }
5337      break;
5338  
5339 <  case 301:
5339 >  case 296:
5340 >
5341 > /* Line 1806 of yacc.c  */
5342 > #line 1868 "ircd_parser.y"
5343 >    {
5344 >  if (conf_parser_ctx.pass == 2)
5345 >  {
5346 >    if (valid_servname(yylval.string))
5347 >    {
5348 >      yy_conf = make_conf_item(SERVICE_TYPE);
5349 >      DupString(yy_conf->name, yylval.string);
5350 >    }
5351 >  }
5352 > }
5353 >    break;
5354 >
5355 >  case 297:
5356  
5357 < /* Line 1464 of yacc.c  */
5358 < #line 1955 "ircd_parser.y"
5357 > /* Line 1806 of yacc.c  */
5358 > #line 1883 "ircd_parser.y"
5359      {
5360    if (conf_parser_ctx.pass == 2)
5361    {
# Line 5506 | Line 5366 | yyreduce:
5366   }
5367      break;
5368  
5369 <  case 302:
5369 >  case 298:
5370  
5371 < /* Line 1464 of yacc.c  */
5372 < #line 1963 "ircd_parser.y"
5371 > /* Line 1806 of yacc.c  */
5372 > #line 1891 "ircd_parser.y"
5373      {
5374    if (conf_parser_ctx.pass == 2)
5375    {
# Line 5518 | Line 5378 | yyreduce:
5378   }
5379      break;
5380  
5381 <  case 309:
5381 >  case 305:
5382  
5383 < /* Line 1464 of yacc.c  */
5384 < #line 1974 "ircd_parser.y"
5383 > /* Line 1806 of yacc.c  */
5384 > #line 1902 "ircd_parser.y"
5385      {
5386    if (conf_parser_ctx.pass == 2)
5387    {
# Line 5531 | Line 5391 | yyreduce:
5391   }
5392      break;
5393  
5394 <  case 310:
5394 >  case 306:
5395  
5396 < /* Line 1464 of yacc.c  */
5397 < #line 1983 "ircd_parser.y"
5396 > /* Line 1806 of yacc.c  */
5397 > #line 1911 "ircd_parser.y"
5398      {
5399    if (conf_parser_ctx.pass == 2)
5400    {
# Line 5557 | Line 5417 | yyreduce:
5417   }
5418      break;
5419  
5420 <  case 311:
5420 >  case 307:
5421  
5422 < /* Line 1464 of yacc.c  */
5423 < #line 2005 "ircd_parser.y"
5422 > /* Line 1806 of yacc.c  */
5423 > #line 1933 "ircd_parser.y"
5424      {
5425    if (conf_parser_ctx.pass == 2)
5426      yy_match_item->action = 0;
5427   }
5428      break;
5429  
5430 <  case 315:
5430 >  case 311:
5431  
5432 < /* Line 1464 of yacc.c  */
5433 < #line 2012 "ircd_parser.y"
5432 > /* Line 1806 of yacc.c  */
5433 > #line 1940 "ircd_parser.y"
5434      {
5435    if (conf_parser_ctx.pass == 2)
5436      yy_match_item->action |= SHARED_KLINE;
5437   }
5438      break;
5439  
5440 <  case 316:
5440 >  case 312:
5441  
5442 < /* Line 1464 of yacc.c  */
5443 < #line 2016 "ircd_parser.y"
5442 > /* Line 1806 of yacc.c  */
5443 > #line 1944 "ircd_parser.y"
5444      {
5445    if (conf_parser_ctx.pass == 2)
5446 <    yy_match_item->action |= SHARED_TKLINE;
5446 >    yy_match_item->action |= SHARED_UNKLINE;
5447   }
5448      break;
5449  
5450 <  case 317:
5450 >  case 313:
5451  
5452 < /* Line 1464 of yacc.c  */
5453 < #line 2020 "ircd_parser.y"
5452 > /* Line 1806 of yacc.c  */
5453 > #line 1948 "ircd_parser.y"
5454      {
5455    if (conf_parser_ctx.pass == 2)
5456 <    yy_match_item->action |= SHARED_UNKLINE;
5456 >    yy_match_item->action |= SHARED_DLINE;
5457   }
5458      break;
5459  
5460 <  case 318:
5460 >  case 314:
5461  
5462 < /* Line 1464 of yacc.c  */
5463 < #line 2024 "ircd_parser.y"
5462 > /* Line 1806 of yacc.c  */
5463 > #line 1952 "ircd_parser.y"
5464      {
5465    if (conf_parser_ctx.pass == 2)
5466 <    yy_match_item->action |= SHARED_XLINE;
5466 >    yy_match_item->action |= SHARED_UNDLINE;
5467   }
5468      break;
5469  
5470 <  case 319:
5470 >  case 315:
5471  
5472 < /* Line 1464 of yacc.c  */
5473 < #line 2028 "ircd_parser.y"
5472 > /* Line 1806 of yacc.c  */
5473 > #line 1956 "ircd_parser.y"
5474      {
5475    if (conf_parser_ctx.pass == 2)
5476 <    yy_match_item->action |= SHARED_TXLINE;
5476 >    yy_match_item->action |= SHARED_XLINE;
5477   }
5478      break;
5479  
5480 <  case 320:
5480 >  case 316:
5481  
5482 < /* Line 1464 of yacc.c  */
5483 < #line 2032 "ircd_parser.y"
5482 > /* Line 1806 of yacc.c  */
5483 > #line 1960 "ircd_parser.y"
5484      {
5485    if (conf_parser_ctx.pass == 2)
5486      yy_match_item->action |= SHARED_UNXLINE;
5487   }
5488      break;
5489  
5490 <  case 321:
5490 >  case 317:
5491  
5492 < /* Line 1464 of yacc.c  */
5493 < #line 2036 "ircd_parser.y"
5492 > /* Line 1806 of yacc.c  */
5493 > #line 1964 "ircd_parser.y"
5494      {
5495    if (conf_parser_ctx.pass == 2)
5496      yy_match_item->action |= SHARED_RESV;
5497   }
5498      break;
5499  
5500 <  case 322:
5641 <
5642 < /* Line 1464 of yacc.c  */
5643 < #line 2040 "ircd_parser.y"
5644 <    {
5645 <  if (conf_parser_ctx.pass == 2)
5646 <    yy_match_item->action |= SHARED_TRESV;
5647 < }
5648 <    break;
5649 <
5650 <  case 323:
5500 >  case 318:
5501  
5502 < /* Line 1464 of yacc.c  */
5503 < #line 2044 "ircd_parser.y"
5502 > /* Line 1806 of yacc.c  */
5503 > #line 1968 "ircd_parser.y"
5504      {
5505    if (conf_parser_ctx.pass == 2)
5506      yy_match_item->action |= SHARED_UNRESV;
5507   }
5508      break;
5509  
5510 <  case 324:
5510 >  case 319:
5511  
5512 < /* Line 1464 of yacc.c  */
5513 < #line 2048 "ircd_parser.y"
5512 > /* Line 1806 of yacc.c  */
5513 > #line 1972 "ircd_parser.y"
5514      {
5515    if (conf_parser_ctx.pass == 2)
5516      yy_match_item->action |= SHARED_LOCOPS;
5517   }
5518      break;
5519  
5520 <  case 325:
5520 >  case 320:
5521  
5522 < /* Line 1464 of yacc.c  */
5523 < #line 2052 "ircd_parser.y"
5522 > /* Line 1806 of yacc.c  */
5523 > #line 1976 "ircd_parser.y"
5524      {
5525    if (conf_parser_ctx.pass == 2)
5526      yy_match_item->action = SHARED_ALL;
5527   }
5528      break;
5529  
5530 <  case 326:
5530 >  case 321:
5531  
5532 < /* Line 1464 of yacc.c  */
5533 < #line 2061 "ircd_parser.y"
5532 > /* Line 1806 of yacc.c  */
5533 > #line 1985 "ircd_parser.y"
5534      {
5535    if (conf_parser_ctx.pass == 2)
5536    {
# Line 5690 | Line 5540 | yyreduce:
5540   }
5541      break;
5542  
5543 <  case 327:
5543 >  case 322:
5544  
5545 < /* Line 1464 of yacc.c  */
5546 < #line 2068 "ircd_parser.y"
5545 > /* Line 1806 of yacc.c  */
5546 > #line 1992 "ircd_parser.y"
5547      {
5548    if (conf_parser_ctx.pass == 2)
5549    {
# Line 5704 | Line 5554 | yyreduce:
5554   }
5555      break;
5556  
5557 <  case 333:
5557 >  case 328:
5558  
5559 < /* Line 1464 of yacc.c  */
5560 < #line 2081 "ircd_parser.y"
5559 > /* Line 1806 of yacc.c  */
5560 > #line 2005 "ircd_parser.y"
5561      {
5562    if (conf_parser_ctx.pass == 2)
5563      DupString(yy_conf->name, yylval.string);
5564   }
5565      break;
5566  
5567 <  case 334:
5567 >  case 329:
5568  
5569 < /* Line 1464 of yacc.c  */
5570 < #line 2087 "ircd_parser.y"
5569 > /* Line 1806 of yacc.c  */
5570 > #line 2011 "ircd_parser.y"
5571      {
5572    if (conf_parser_ctx.pass == 2)
5573      yy_conf->flags = 0;
5574   }
5575      break;
5576  
5577 <  case 338:
5577 >  case 333:
5578  
5579 < /* Line 1464 of yacc.c  */
5580 < #line 2094 "ircd_parser.y"
5579 > /* Line 1806 of yacc.c  */
5580 > #line 2018 "ircd_parser.y"
5581      {
5582    if (conf_parser_ctx.pass == 2)
5583      yy_conf->flags |= SHARED_KLINE;
5584   }
5585      break;
5586  
5587 <  case 339:
5587 >  case 334:
5588  
5589 < /* Line 1464 of yacc.c  */
5590 < #line 2098 "ircd_parser.y"
5589 > /* Line 1806 of yacc.c  */
5590 > #line 2022 "ircd_parser.y"
5591      {
5592    if (conf_parser_ctx.pass == 2)
5593 <    yy_conf->flags |= SHARED_TKLINE;
5593 >    yy_conf->flags |= SHARED_UNKLINE;
5594   }
5595      break;
5596  
5597 <  case 340:
5597 >  case 335:
5598  
5599 < /* Line 1464 of yacc.c  */
5600 < #line 2102 "ircd_parser.y"
5599 > /* Line 1806 of yacc.c  */
5600 > #line 2026 "ircd_parser.y"
5601      {
5602    if (conf_parser_ctx.pass == 2)
5603 <    yy_conf->flags |= SHARED_UNKLINE;
5603 >    yy_conf->flags |= SHARED_DLINE;
5604   }
5605      break;
5606  
5607 <  case 341:
5607 >  case 336:
5608  
5609 < /* Line 1464 of yacc.c  */
5610 < #line 2106 "ircd_parser.y"
5609 > /* Line 1806 of yacc.c  */
5610 > #line 2030 "ircd_parser.y"
5611      {
5612    if (conf_parser_ctx.pass == 2)
5613 <    yy_conf->flags |= SHARED_XLINE;
5613 >    yy_conf->flags |= SHARED_UNDLINE;
5614   }
5615      break;
5616  
5617 <  case 342:
5617 >  case 337:
5618  
5619 < /* Line 1464 of yacc.c  */
5620 < #line 2110 "ircd_parser.y"
5619 > /* Line 1806 of yacc.c  */
5620 > #line 2034 "ircd_parser.y"
5621      {
5622    if (conf_parser_ctx.pass == 2)
5623 <    yy_conf->flags |= SHARED_TXLINE;
5623 >    yy_conf->flags |= SHARED_XLINE;
5624   }
5625      break;
5626  
5627 <  case 343:
5627 >  case 338:
5628  
5629 < /* Line 1464 of yacc.c  */
5630 < #line 2114 "ircd_parser.y"
5629 > /* Line 1806 of yacc.c  */
5630 > #line 2038 "ircd_parser.y"
5631      {
5632    if (conf_parser_ctx.pass == 2)
5633      yy_conf->flags |= SHARED_UNXLINE;
5634   }
5635      break;
5636  
5637 <  case 344:
5637 >  case 339:
5638  
5639 < /* Line 1464 of yacc.c  */
5640 < #line 2118 "ircd_parser.y"
5639 > /* Line 1806 of yacc.c  */
5640 > #line 2042 "ircd_parser.y"
5641      {
5642    if (conf_parser_ctx.pass == 2)
5643      yy_conf->flags |= SHARED_RESV;
5644   }
5645      break;
5646  
5647 <  case 345:
5798 <
5799 < /* Line 1464 of yacc.c  */
5800 < #line 2122 "ircd_parser.y"
5801 <    {
5802 <  if (conf_parser_ctx.pass == 2)
5803 <    yy_conf->flags |= SHARED_TRESV;
5804 < }
5805 <    break;
5806 <
5807 <  case 346:
5647 >  case 340:
5648  
5649 < /* Line 1464 of yacc.c  */
5650 < #line 2126 "ircd_parser.y"
5649 > /* Line 1806 of yacc.c  */
5650 > #line 2046 "ircd_parser.y"
5651      {
5652    if (conf_parser_ctx.pass == 2)
5653      yy_conf->flags |= SHARED_UNRESV;
5654   }
5655      break;
5656  
5657 <  case 347:
5657 >  case 341:
5658  
5659 < /* Line 1464 of yacc.c  */
5660 < #line 2130 "ircd_parser.y"
5659 > /* Line 1806 of yacc.c  */
5660 > #line 2050 "ircd_parser.y"
5661      {
5662    if (conf_parser_ctx.pass == 2)
5663      yy_conf->flags |= SHARED_LOCOPS;
5664   }
5665      break;
5666  
5667 <  case 348:
5667 >  case 342:
5668  
5669 < /* Line 1464 of yacc.c  */
5670 < #line 2134 "ircd_parser.y"
5669 > /* Line 1806 of yacc.c  */
5670 > #line 2054 "ircd_parser.y"
5671      {
5672    if (conf_parser_ctx.pass == 2)
5673      yy_conf->flags = SHARED_ALL;
5674   }
5675      break;
5676  
5677 <  case 349:
5677 >  case 343:
5678  
5679 < /* Line 1464 of yacc.c  */
5680 < #line 2143 "ircd_parser.y"
5679 > /* Line 1806 of yacc.c  */
5680 > #line 2063 "ircd_parser.y"
5681      {
5682    if (conf_parser_ctx.pass == 2)
5683    {
5684      yy_conf = make_conf_item(SERVER_TYPE);
5685 <    yy_aconf = (struct AccessItem *)map_to_conf(yy_conf);
5686 <    yy_aconf->passwd = NULL;
5685 >    yy_aconf = map_to_conf(yy_conf);
5686 >
5687      /* defaults */
5688      yy_aconf->port = PORTNUM;
5849
5850    if (ConfigFileEntry.burst_away)
5851      yy_aconf->flags = CONF_FLAGS_BURST_AWAY;
5689    }
5690    else
5691    {
# Line 5858 | Line 5695 | yyreduce:
5695   }
5696      break;
5697  
5698 <  case 350:
5698 >  case 344:
5699  
5700 < /* Line 1464 of yacc.c  */
5701 < #line 2161 "ircd_parser.y"
5700 > /* Line 1806 of yacc.c  */
5701 > #line 2078 "ircd_parser.y"
5702      {
5703    if (conf_parser_ctx.pass == 2)
5704    {
5705      struct CollectItem *yy_hconf=NULL;
5706      struct CollectItem *yy_lconf=NULL;
5707 <    dlink_node *ptr;
5708 <    dlink_node *next_ptr;
5872 < #ifdef HAVE_LIBCRYPTO
5707 >    dlink_node *ptr = NULL, *next_ptr = NULL;
5708 >
5709      if (yy_aconf->host &&
5710 <        ((yy_aconf->passwd && yy_aconf->spasswd) ||
5711 <         (yy_aconf->rsa_public_key && IsConfCryptLink(yy_aconf))))
5712 < #else /* !HAVE_LIBCRYPTO */
5713 <      if (yy_aconf->host && !IsConfCryptLink(yy_aconf) &&
5714 <          yy_aconf->passwd && yy_aconf->spasswd)
5715 < #endif /* !HAVE_LIBCRYPTO */
5716 <        {
5717 <          if (conf_add_server(yy_conf, class_name) == -1)
5718 <          {
5719 <            delete_conf_item(yy_conf);
5720 <            yy_conf = NULL;
5721 <            yy_aconf = NULL;
5722 <          }
5723 <        }
5724 <        else
5889 <        {
5890 <          /* Even if yy_conf ->name is NULL
5891 <           * should still unhook any hub/leaf confs still pending
5892 <           */
5893 <          unhook_hub_leaf_confs();
5710 >        yy_aconf->passwd && yy_aconf->spasswd)
5711 >    {
5712 >      if (conf_add_server(yy_conf, class_name) == -1)
5713 >      {
5714 >        delete_conf_item(yy_conf);
5715 >        yy_conf = NULL;
5716 >        yy_aconf = NULL;
5717 >      }
5718 >    }
5719 >    else
5720 >    {
5721 >      /* Even if yy_conf ->name is NULL
5722 >       * should still unhook any hub/leaf confs still pending
5723 >       */
5724 >      unhook_hub_leaf_confs();
5725  
5726 <          if (yy_conf->name != NULL)
5727 <          {
5728 < #ifndef HAVE_LIBCRYPTO
5729 <            if (IsConfCryptLink(yy_aconf))
5730 <              yyerror("Ignoring connect block -- no OpenSSL support");
5731 < #else
5732 <            if (IsConfCryptLink(yy_aconf) && !yy_aconf->rsa_public_key)
5902 <              yyerror("Ignoring connect block -- missing key");
5903 < #endif
5904 <            if (yy_aconf->host == NULL)
5905 <              yyerror("Ignoring connect block -- missing host");
5906 <            else if (!IsConfCryptLink(yy_aconf) &&
5907 <                    (!yy_aconf->passwd || !yy_aconf->spasswd))
5908 <              yyerror("Ignoring connect block -- missing password");
5909 <          }
5726 >      if (yy_conf->name != NULL)
5727 >      {
5728 >        if (yy_aconf->host == NULL)
5729 >          yyerror("Ignoring connect block -- missing host");
5730 >        else if (!yy_aconf->passwd || !yy_aconf->spasswd)
5731 >          yyerror("Ignoring connect block -- missing password");
5732 >      }
5733  
5734  
5735 <          /* XXX
5736 <           * This fixes a try_connections() core (caused by invalid class_ptr
5737 <           * pointers) reported by metalrock. That's an ugly fix, but there
5738 <           * is currently no better way. The entire config subsystem needs an
5739 <           * rewrite ASAP. make_conf_item() shouldn't really add things onto
5740 <           * a doubly linked list immediately without any sanity checks!  -Michael
5741 <           */
5742 <          delete_conf_item(yy_conf);
5735 >      /* XXX
5736 >       * This fixes a try_connections() core (caused by invalid class_ptr
5737 >       * pointers) reported by metalrock. That's an ugly fix, but there
5738 >       * is currently no better way. The entire config subsystem needs an
5739 >       * rewrite ASAP. make_conf_item() shouldn't really add things onto
5740 >       * a doubly linked list immediately without any sanity checks!  -Michael
5741 >       */
5742 >      delete_conf_item(yy_conf);
5743  
5744 <          yy_aconf = NULL;
5745 <          yy_conf = NULL;
5746 <        }
5744 >      yy_aconf = NULL;
5745 >      yy_conf = NULL;
5746 >    }
5747  
5748        /*
5749         * yy_conf is still pointing at the server that is having
# Line 5990 | Line 5813 | yyreduce:
5813   }
5814      break;
5815  
5816 <  case 370:
5994 <
5995 < /* Line 1464 of yacc.c  */
5996 < #line 2299 "ircd_parser.y"
5997 <    {
5998 <  if (conf_parser_ctx.pass == 2)
5999 <  {
6000 <    if (yy_conf->name != NULL)
6001 <      yyerror("Multiple connect name entry");
6002 <
6003 <    MyFree(yy_conf->name);
6004 <    DupString(yy_conf->name, yylval.string);
6005 <  }
6006 < }
6007 <    break;
6008 <
6009 <  case 371:
5816 >  case 361:
5817  
5818 < /* Line 1464 of yacc.c  */
5819 < #line 2311 "ircd_parser.y"
5818 > /* Line 1806 of yacc.c  */
5819 > #line 2200 "ircd_parser.y"
5820      {
5821    if (conf_parser_ctx.pass == 2)
5822    {
# Line 6022 | Line 5829 | yyreduce:
5829   }
5830      break;
5831  
5832 <  case 372:
5832 >  case 362:
5833  
5834 < /* Line 1464 of yacc.c  */
5835 < #line 2323 "ircd_parser.y"
5834 > /* Line 1806 of yacc.c  */
5835 > #line 2212 "ircd_parser.y"
5836      {
5837    if (conf_parser_ctx.pass == 2)
5838    {
# Line 6035 | Line 5842 | yyreduce:
5842   }
5843      break;
5844  
5845 <  case 373:
5845 >  case 363:
5846  
5847 < /* Line 1464 of yacc.c  */
5848 < #line 2332 "ircd_parser.y"
5847 > /* Line 1806 of yacc.c  */
5848 > #line 2221 "ircd_parser.y"
5849      {
5850    if (conf_parser_ctx.pass == 2)
5851    {
# Line 6050 | Line 5857 | yyreduce:
5857      hints.ai_socktype = SOCK_STREAM;
5858      hints.ai_flags    = AI_PASSIVE | AI_NUMERICHOST;
5859  
5860 <    if (irc_getaddrinfo(yylval.string, NULL, &hints, &res))
5861 <      ilog(L_ERROR, "Invalid netmask for server vhost(%s)", yylval.string);
5860 >    if (getaddrinfo(yylval.string, NULL, &hints, &res))
5861 >      ilog(LOG_TYPE_IRCD, "Invalid netmask for server vhost(%s)", yylval.string);
5862      else
5863      {
5864        assert(res != NULL);
# Line 6059 | Line 5866 | yyreduce:
5866        memcpy(&yy_aconf->my_ipnum, res->ai_addr, res->ai_addrlen);
5867        yy_aconf->my_ipnum.ss.ss_family = res->ai_family;
5868        yy_aconf->my_ipnum.ss_len = res->ai_addrlen;
5869 <      irc_freeaddrinfo(res);
5869 >      freeaddrinfo(res);
5870      }
5871    }
5872   }
5873      break;
5874  
5875 <  case 374:
5875 >  case 364:
5876  
5877 < /* Line 1464 of yacc.c  */
5878 < #line 2358 "ircd_parser.y"
5877 > /* Line 1806 of yacc.c  */
5878 > #line 2247 "ircd_parser.y"
5879      {
5880    if (conf_parser_ctx.pass == 2)
5881    {
# Line 6087 | Line 5894 | yyreduce:
5894   }
5895      break;
5896  
5897 <  case 375:
5897 >  case 365:
5898  
5899 < /* Line 1464 of yacc.c  */
5900 < #line 2376 "ircd_parser.y"
5899 > /* Line 1806 of yacc.c  */
5900 > #line 2265 "ircd_parser.y"
5901      {
5902    if (conf_parser_ctx.pass == 2)
5903    {
# Line 6109 | Line 5916 | yyreduce:
5916   }
5917      break;
5918  
5919 <  case 376:
5919 >  case 366:
5920  
5921 < /* Line 1464 of yacc.c  */
5922 < #line 2394 "ircd_parser.y"
5921 > /* Line 1806 of yacc.c  */
5922 > #line 2283 "ircd_parser.y"
5923      {
5924    if (conf_parser_ctx.pass == 2)
5925      yy_aconf->port = (yyvsp[(3) - (4)].number);
5926   }
5927      break;
5928  
5929 <  case 377:
5929 >  case 367:
5930  
5931 < /* Line 1464 of yacc.c  */
5932 < #line 2400 "ircd_parser.y"
5931 > /* Line 1806 of yacc.c  */
5932 > #line 2289 "ircd_parser.y"
5933      {
5934    if (conf_parser_ctx.pass == 2)
5935      yy_aconf->aftype = AF_INET;
5936   }
5937      break;
5938  
5939 <  case 378:
5939 >  case 368:
5940  
5941 < /* Line 1464 of yacc.c  */
5942 < #line 2404 "ircd_parser.y"
5941 > /* Line 1806 of yacc.c  */
5942 > #line 2293 "ircd_parser.y"
5943      {
5944   #ifdef IPV6
5945    if (conf_parser_ctx.pass == 2)
# Line 6141 | Line 5948 | yyreduce:
5948   }
5949      break;
5950  
5951 <  case 379:
5951 >  case 369:
5952  
5953 < /* Line 1464 of yacc.c  */
5954 < #line 2412 "ircd_parser.y"
5953 > /* Line 1806 of yacc.c  */
5954 > #line 2301 "ircd_parser.y"
5955      {
5956   }
5957      break;
5958  
5959 <  case 383:
6153 <
6154 < /* Line 1464 of yacc.c  */
6155 < #line 2416 "ircd_parser.y"
6156 <    { not_atom = 1; }
6157 <    break;
6158 <
6159 <  case 385:
6160 <
6161 < /* Line 1464 of yacc.c  */
6162 < #line 2417 "ircd_parser.y"
6163 <    { not_atom = 0; }
6164 <    break;
6165 <
6166 <  case 387:
6167 <
6168 < /* Line 1464 of yacc.c  */
6169 < #line 2420 "ircd_parser.y"
6170 <    {
6171 <  if (conf_parser_ctx.pass == 2)
6172 < #ifndef HAVE_LIBZ
6173 <    yyerror("Ignoring flags = compressed; -- no zlib support");
6174 < #else
6175 < {
6176 <   if (not_atom)ClearConfCompressed(yy_aconf);
6177 <   else SetConfCompressed(yy_aconf);
6178 < }
6179 < #endif
6180 < }
6181 <    break;
6182 <
6183 <  case 388:
5959 >  case 373:
5960  
5961 < /* Line 1464 of yacc.c  */
5962 < #line 2431 "ircd_parser.y"
5961 > /* Line 1806 of yacc.c  */
5962 > #line 2306 "ircd_parser.y"
5963      {
5964    if (conf_parser_ctx.pass == 2)
5965 <  {
6190 <    if (not_atom)ClearConfCryptLink(yy_aconf);
6191 <    else SetConfCryptLink(yy_aconf);
6192 <  }
5965 >    SetConfAllowAutoConn(yy_aconf);
5966   }
5967      break;
5968  
5969 <  case 389:
5969 >  case 374:
5970  
5971 < /* Line 1464 of yacc.c  */
5972 < #line 2438 "ircd_parser.y"
5971 > /* Line 1806 of yacc.c  */
5972 > #line 2310 "ircd_parser.y"
5973      {
5974    if (conf_parser_ctx.pass == 2)
5975 <  {
6203 <    if (not_atom)ClearConfAllowAutoConn(yy_aconf);
6204 <    else SetConfAllowAutoConn(yy_aconf);
6205 <  }
5975 >    SetConfAwayBurst(yy_aconf);
5976   }
5977      break;
5978  
5979 <  case 390:
6210 <
6211 < /* Line 1464 of yacc.c  */
6212 < #line 2445 "ircd_parser.y"
6213 <    {
6214 <  if (conf_parser_ctx.pass == 2)
6215 <  {
6216 <    if (not_atom)ClearConfAwayBurst(yy_aconf);
6217 <    else SetConfAwayBurst(yy_aconf);
6218 <  }
6219 < }
6220 <    break;
6221 <
6222 <  case 391:
5979 >  case 375:
5980  
5981 < /* Line 1464 of yacc.c  */
5982 < #line 2452 "ircd_parser.y"
5981 > /* Line 1806 of yacc.c  */
5982 > #line 2314 "ircd_parser.y"
5983      {
5984    if (conf_parser_ctx.pass == 2)
5985 <  {
6229 <    if (not_atom)ClearConfTopicBurst(yy_aconf);
6230 <    else SetConfTopicBurst(yy_aconf);
6231 <  }
5985 >    SetConfTopicBurst(yy_aconf);
5986   }
5987      break;
5988  
5989 <  case 392:
5989 >  case 376:
5990  
5991 < /* Line 1464 of yacc.c  */
5992 < #line 2462 "ircd_parser.y"
5991 > /* Line 1806 of yacc.c  */
5992 > #line 2318 "ircd_parser.y"
5993      {
6240 #ifdef HAVE_LIBCRYPTO
5994    if (conf_parser_ctx.pass == 2)
5995 <  {
6243 <    BIO *file;
6244 <
6245 <    if (yy_aconf->rsa_public_key != NULL)
6246 <    {
6247 <      RSA_free(yy_aconf->rsa_public_key);
6248 <      yy_aconf->rsa_public_key = NULL;
6249 <    }
6250 <
6251 <    if (yy_aconf->rsa_public_key_file != NULL)
6252 <    {
6253 <      MyFree(yy_aconf->rsa_public_key_file);
6254 <      yy_aconf->rsa_public_key_file = NULL;
6255 <    }
6256 <
6257 <    DupString(yy_aconf->rsa_public_key_file, yylval.string);
6258 <
6259 <    if ((file = BIO_new_file(yylval.string, "r")) == NULL)
6260 <    {
6261 <      yyerror("Ignoring rsa_public_key_file -- file doesn't exist");
6262 <      break;
6263 <    }
6264 <
6265 <    yy_aconf->rsa_public_key = (RSA *)PEM_read_bio_RSA_PUBKEY(file, NULL, 0, NULL);
6266 <
6267 <    if (yy_aconf->rsa_public_key == NULL)
6268 <    {
6269 <      yyerror("Ignoring rsa_public_key_file -- Key invalid; check key syntax.");
6270 <      break;
6271 <    }
6272 <      
6273 <    BIO_set_close(file, BIO_CLOSE);
6274 <    BIO_free(file);
6275 <  }
6276 < #endif /* HAVE_LIBCRYPTO */
5995 >    SetConfSSL(yy_aconf);
5996   }
5997      break;
5998  
5999 <  case 393:
5999 >  case 377:
6000  
6001 < /* Line 1464 of yacc.c  */
6002 < #line 2503 "ircd_parser.y"
6001 > /* Line 1806 of yacc.c  */
6002 > #line 2324 "ircd_parser.y"
6003      {
6004    if (conf_parser_ctx.pass == 2)
6005    {
# Line 6292 | Line 6011 | yyreduce:
6011   }
6012      break;
6013  
6014 <  case 394:
6014 >  case 378:
6015  
6016 < /* Line 1464 of yacc.c  */
6017 < #line 2514 "ircd_parser.y"
6016 > /* Line 1806 of yacc.c  */
6017 > #line 2335 "ircd_parser.y"
6018      {
6019    if (conf_parser_ctx.pass == 2)
6020    {
# Line 6309 | Line 6028 | yyreduce:
6028   }
6029      break;
6030  
6031 <  case 395:
6031 >  case 379:
6032  
6033 < /* Line 1464 of yacc.c  */
6034 < #line 2527 "ircd_parser.y"
6033 > /* Line 1806 of yacc.c  */
6034 > #line 2348 "ircd_parser.y"
6035      {
6036    if (conf_parser_ctx.pass == 2)
6037    {
# Line 6326 | Line 6045 | yyreduce:
6045   }
6046      break;
6047  
6048 <  case 396:
6048 >  case 380:
6049  
6050 < /* Line 1464 of yacc.c  */
6051 < #line 2540 "ircd_parser.y"
6050 > /* Line 1806 of yacc.c  */
6051 > #line 2361 "ircd_parser.y"
6052      {
6053    if (conf_parser_ctx.pass == 2)
6054    {
# Line 6339 | Line 6058 | yyreduce:
6058   }
6059      break;
6060  
6061 <  case 397:
6061 >  case 381:
6062  
6063 < /* Line 1464 of yacc.c  */
6064 < #line 2549 "ircd_parser.y"
6063 > /* Line 1806 of yacc.c  */
6064 > #line 2370 "ircd_parser.y"
6065      {
6066   #ifdef HAVE_LIBCRYPTO
6067    if (conf_parser_ctx.pass == 2)
6068    {
6069 <    struct EncCapability *ecap;
6070 <    const char *cipher_name;
6352 <    int found = 0;
6353 <
6354 <    yy_aconf->cipher_preference = NULL;
6355 <    cipher_name = yylval.string;
6356 <
6357 <    for (ecap = CipherTable; ecap->name; ecap++)
6358 <    {
6359 <      if ((irccmp(ecap->name, cipher_name) == 0) &&
6360 <          (ecap->cap & CAP_ENC_MASK))
6361 <      {
6362 <        yy_aconf->cipher_preference = ecap;
6363 <        found = 1;
6364 <        break;
6365 <      }
6366 <    }
6367 <
6368 <    if (!found)
6369 <      yyerror("Invalid cipher");
6069 >    MyFree(yy_aconf->cipher_list);
6070 >    DupString(yy_aconf->cipher_list, yylval.string);
6071    }
6072   #else
6073    if (conf_parser_ctx.pass == 2)
6074 <    yyerror("Ignoring cipher_preference -- no OpenSSL support");
6074 >    yyerror("Ignoring connect::ciphers -- no OpenSSL support");
6075   #endif
6076   }
6077      break;
6078  
6079 <  case 398:
6079 >  case 382:
6080  
6081 < /* Line 1464 of yacc.c  */
6082 < #line 2584 "ircd_parser.y"
6081 > /* Line 1806 of yacc.c  */
6082 > #line 2388 "ircd_parser.y"
6083      {
6084    if (conf_parser_ctx.pass == 2)
6085    {
# Line 6388 | Line 6089 | yyreduce:
6089   }
6090      break;
6091  
6092 <  case 399:
6092 >  case 383:
6093  
6094 < /* Line 1464 of yacc.c  */
6095 < #line 2591 "ircd_parser.y"
6094 > /* Line 1806 of yacc.c  */
6095 > #line 2395 "ircd_parser.y"
6096      {
6097    if (conf_parser_ctx.pass == 2)
6098    {
# Line 6407 | Line 6108 | yyreduce:
6108          if (!(exp_user = ircd_pcre_compile(userbuf, &errptr)) ||
6109              !(exp_host = ircd_pcre_compile(hostbuf, &errptr)))
6110          {
6111 <          ilog(L_ERROR, "Failed to add regular expression based K-Line: %s",
6111 >          ilog(LOG_TYPE_IRCD, "Failed to add regular expression based K-Line: %s",
6112                 errptr);
6113            break;
6114          }
# Line 6424 | Line 6125 | yyreduce:
6125          else
6126            DupString(yy_aconf->reason, "No reason");
6127   #else
6128 <        ilog(L_ERROR, "Failed to add regular expression based K-Line: no PCRE support");
6128 >        ilog(LOG_TYPE_IRCD, "Failed to add regular expression based K-Line: no PCRE support");
6129          break;
6130   #endif
6131        }
# Line 6448 | Line 6149 | yyreduce:
6149   }
6150      break;
6151  
6152 <  case 400:
6152 >  case 384:
6153  
6154 < /* Line 1464 of yacc.c  */
6155 < #line 2647 "ircd_parser.y"
6154 > /* Line 1806 of yacc.c  */
6155 > #line 2451 "ircd_parser.y"
6156      {
6157   }
6158      break;
6159  
6160 <  case 404:
6160 >  case 388:
6161  
6162 < /* Line 1464 of yacc.c  */
6163 < #line 2652 "ircd_parser.y"
6162 > /* Line 1806 of yacc.c  */
6163 > #line 2456 "ircd_parser.y"
6164      {
6165    if (conf_parser_ctx.pass == 2)
6166      regex_ban = 1;
6167   }
6168      break;
6169  
6170 <  case 411:
6170 >  case 395:
6171  
6172 < /* Line 1464 of yacc.c  */
6173 < #line 2661 "ircd_parser.y"
6172 > /* Line 1806 of yacc.c  */
6173 > #line 2465 "ircd_parser.y"
6174      {
6175    if (conf_parser_ctx.pass == 2)
6176    {
# Line 6489 | Line 6190 | yyreduce:
6190   }
6191      break;
6192  
6193 <  case 412:
6193 >  case 396:
6194  
6195 < /* Line 1464 of yacc.c  */
6196 < #line 2680 "ircd_parser.y"
6195 > /* Line 1806 of yacc.c  */
6196 > #line 2484 "ircd_parser.y"
6197      {
6198    if (conf_parser_ctx.pass == 2)
6199      strlcpy(reasonbuf, yylval.string, sizeof(reasonbuf));
6200   }
6201      break;
6202  
6203 <  case 413:
6203 >  case 397:
6204  
6205 < /* Line 1464 of yacc.c  */
6206 < #line 2689 "ircd_parser.y"
6205 > /* Line 1806 of yacc.c  */
6206 > #line 2493 "ircd_parser.y"
6207      {
6208    if (conf_parser_ctx.pass == 2)
6209      hostbuf[0] = reasonbuf[0] = '\0';
6210   }
6211      break;
6212  
6213 <  case 414:
6213 >  case 398:
6214  
6215 < /* Line 1464 of yacc.c  */
6216 < #line 2693 "ircd_parser.y"
6215 > /* Line 1806 of yacc.c  */
6216 > #line 2497 "ircd_parser.y"
6217      {
6218    if (conf_parser_ctx.pass == 2)
6219    {
# Line 6532 | Line 6233 | yyreduce:
6233   }
6234      break;
6235  
6236 <  case 420:
6236 >  case 404:
6237  
6238 < /* Line 1464 of yacc.c  */
6239 < #line 2715 "ircd_parser.y"
6238 > /* Line 1806 of yacc.c  */
6239 > #line 2519 "ircd_parser.y"
6240      {
6241    if (conf_parser_ctx.pass == 2)
6242      strlcpy(hostbuf, yylval.string, sizeof(hostbuf));
6243   }
6244      break;
6245  
6246 <  case 421:
6246 >  case 405:
6247  
6248 < /* Line 1464 of yacc.c  */
6249 < #line 2721 "ircd_parser.y"
6248 > /* Line 1806 of yacc.c  */
6249 > #line 2525 "ircd_parser.y"
6250      {
6251    if (conf_parser_ctx.pass == 2)
6252      strlcpy(reasonbuf, yylval.string, sizeof(reasonbuf));
6253   }
6254      break;
6255  
6256 <  case 427:
6256 >  case 411:
6257  
6258 < /* Line 1464 of yacc.c  */
6259 < #line 2735 "ircd_parser.y"
6258 > /* Line 1806 of yacc.c  */
6259 > #line 2539 "ircd_parser.y"
6260      {
6261    if (conf_parser_ctx.pass == 2)
6262    {
# Line 6571 | Line 6272 | yyreduce:
6272   }
6273      break;
6274  
6275 <  case 428:
6275 >  case 412:
6276  
6277 < /* Line 1464 of yacc.c  */
6278 < #line 2753 "ircd_parser.y"
6277 > /* Line 1806 of yacc.c  */
6278 > #line 2557 "ircd_parser.y"
6279      {
6280    if (conf_parser_ctx.pass == 2)
6281    {
# Line 6584 | Line 6285 | yyreduce:
6285   }
6286      break;
6287  
6288 <  case 429:
6288 >  case 413:
6289  
6290 < /* Line 1464 of yacc.c  */
6291 < #line 2760 "ircd_parser.y"
6290 > /* Line 1806 of yacc.c  */
6291 > #line 2564 "ircd_parser.y"
6292      {
6293    if (conf_parser_ctx.pass == 2)
6294    {
# Line 6601 | Line 6302 | yyreduce:
6302  
6303          if (!(exp_p = ircd_pcre_compile(gecos_name, &errptr)))
6304          {
6305 <          ilog(L_ERROR, "Failed to add regular expression based X-Line: %s",
6305 >          ilog(LOG_TYPE_IRCD, "Failed to add regular expression based X-Line: %s",
6306                 errptr);
6307            break;
6308          }
# Line 6609 | Line 6310 | yyreduce:
6310          yy_conf = make_conf_item(RXLINE_TYPE);
6311          yy_conf->regexpname = exp_p;
6312   #else
6313 <        ilog(L_ERROR, "Failed to add regular expression based X-Line: no PCRE support");
6313 >        ilog(LOG_TYPE_IRCD, "Failed to add regular expression based X-Line: no PCRE support");
6314          break;
6315   #endif
6316        }
# Line 6628 | Line 6329 | yyreduce:
6329   }
6330      break;
6331  
6332 <  case 430:
6332 >  case 414:
6333  
6334 < /* Line 1464 of yacc.c  */
6335 < #line 2800 "ircd_parser.y"
6334 > /* Line 1806 of yacc.c  */
6335 > #line 2604 "ircd_parser.y"
6336      {
6337   }
6338      break;
6339  
6340 <  case 434:
6340 >  case 418:
6341  
6342 < /* Line 1464 of yacc.c  */
6343 < #line 2805 "ircd_parser.y"
6342 > /* Line 1806 of yacc.c  */
6343 > #line 2609 "ircd_parser.y"
6344      {
6345    if (conf_parser_ctx.pass == 2)
6346      regex_ban = 1;
6347   }
6348      break;
6349  
6350 <  case 441:
6350 >  case 425:
6351  
6352 < /* Line 1464 of yacc.c  */
6353 < #line 2814 "ircd_parser.y"
6352 > /* Line 1806 of yacc.c  */
6353 > #line 2618 "ircd_parser.y"
6354      {
6355    if (conf_parser_ctx.pass == 2)
6356      strlcpy(gecos_name, yylval.string, sizeof(gecos_name));
6357   }
6358      break;
6359  
6360 <  case 442:
6360 >  case 426:
6361  
6362 < /* Line 1464 of yacc.c  */
6363 < #line 2820 "ircd_parser.y"
6362 > /* Line 1806 of yacc.c  */
6363 > #line 2624 "ircd_parser.y"
6364      {
6365    if (conf_parser_ctx.pass == 2)
6366      strlcpy(reasonbuf, yylval.string, sizeof(reasonbuf));
6367   }
6368      break;
6369  
6370 <  case 502:
6370 >  case 482:
6371  
6372 < /* Line 1464 of yacc.c  */
6373 < #line 2865 "ircd_parser.y"
6372 > /* Line 1806 of yacc.c  */
6373 > #line 2668 "ircd_parser.y"
6374      {
6375    ConfigFileEntry.max_watch = (yyvsp[(3) - (4)].number);
6376   }
6377      break;
6378  
6379 <  case 503:
6379 >  case 483:
6380  
6381 < /* Line 1464 of yacc.c  */
6382 < #line 2870 "ircd_parser.y"
6381 > /* Line 1806 of yacc.c  */
6382 > #line 2673 "ircd_parser.y"
6383      {
6384    ConfigFileEntry.gline_min_cidr = (yyvsp[(3) - (4)].number);
6385   }
6386      break;
6387  
6388 <  case 504:
6388 >  case 484:
6389  
6390 < /* Line 1464 of yacc.c  */
6391 < #line 2875 "ircd_parser.y"
6390 > /* Line 1806 of yacc.c  */
6391 > #line 2678 "ircd_parser.y"
6392      {
6393    ConfigFileEntry.gline_min_cidr6 = (yyvsp[(3) - (4)].number);
6394   }
6395      break;
6396  
6397 <  case 505:
6697 <
6698 < /* Line 1464 of yacc.c  */
6699 < #line 2880 "ircd_parser.y"
6700 <    {
6701 <  ConfigFileEntry.burst_away = yylval.number;
6702 < }
6703 <    break;
6704 <
6705 <  case 506:
6397 >  case 485:
6398  
6399 < /* Line 1464 of yacc.c  */
6400 < #line 2885 "ircd_parser.y"
6399 > /* Line 1806 of yacc.c  */
6400 > #line 2683 "ircd_parser.y"
6401      {
6402    ConfigFileEntry.use_whois_actually = yylval.number;
6403   }
6404      break;
6405  
6406 <  case 507:
6406 >  case 486:
6407  
6408 < /* Line 1464 of yacc.c  */
6409 < #line 2890 "ircd_parser.y"
6408 > /* Line 1806 of yacc.c  */
6409 > #line 2688 "ircd_parser.y"
6410      {
6411    GlobalSetOptions.rejecttime = yylval.number;
6412   }
6413      break;
6414  
6415 <  case 508:
6415 >  case 487:
6416  
6417 < /* Line 1464 of yacc.c  */
6418 < #line 2895 "ircd_parser.y"
6417 > /* Line 1806 of yacc.c  */
6418 > #line 2693 "ircd_parser.y"
6419      {
6420    ConfigFileEntry.tkline_expire_notices = yylval.number;
6421   }
6422      break;
6423  
6424 <  case 509:
6424 >  case 488:
6425  
6426 < /* Line 1464 of yacc.c  */
6427 < #line 2900 "ircd_parser.y"
6426 > /* Line 1806 of yacc.c  */
6427 > #line 2698 "ircd_parser.y"
6428      {
6429    ConfigFileEntry.kill_chase_time_limit = (yyvsp[(3) - (4)].number);
6430   }
6431      break;
6432  
6433 <  case 510:
6433 >  case 489:
6434  
6435 < /* Line 1464 of yacc.c  */
6436 < #line 2905 "ircd_parser.y"
6435 > /* Line 1806 of yacc.c  */
6436 > #line 2703 "ircd_parser.y"
6437      {
6438    ConfigFileEntry.hide_spoof_ips = yylval.number;
6439   }
6440      break;
6441  
6442 <  case 511:
6442 >  case 490:
6443  
6444 < /* Line 1464 of yacc.c  */
6445 < #line 2910 "ircd_parser.y"
6444 > /* Line 1806 of yacc.c  */
6445 > #line 2708 "ircd_parser.y"
6446      {
6447    ConfigFileEntry.ignore_bogus_ts = yylval.number;
6448   }
6449      break;
6450  
6451 <  case 512:
6451 >  case 491:
6452  
6453 < /* Line 1464 of yacc.c  */
6454 < #line 2915 "ircd_parser.y"
6453 > /* Line 1806 of yacc.c  */
6454 > #line 2713 "ircd_parser.y"
6455      {
6456    ConfigFileEntry.disable_remote = yylval.number;
6457   }
6458      break;
6459  
6460 <  case 513:
6460 >  case 492:
6461  
6462 < /* Line 1464 of yacc.c  */
6463 < #line 2920 "ircd_parser.y"
6462 > /* Line 1806 of yacc.c  */
6463 > #line 2718 "ircd_parser.y"
6464      {
6465    ConfigFileEntry.failed_oper_notice = yylval.number;
6466   }
6467      break;
6468  
6469 <  case 514:
6469 >  case 493:
6470  
6471 < /* Line 1464 of yacc.c  */
6472 < #line 2925 "ircd_parser.y"
6471 > /* Line 1806 of yacc.c  */
6472 > #line 2723 "ircd_parser.y"
6473      {
6474    ConfigFileEntry.anti_nick_flood = yylval.number;
6475   }
6476      break;
6477  
6478 <  case 515:
6478 >  case 494:
6479  
6480 < /* Line 1464 of yacc.c  */
6481 < #line 2930 "ircd_parser.y"
6480 > /* Line 1806 of yacc.c  */
6481 > #line 2728 "ircd_parser.y"
6482      {
6483    ConfigFileEntry.max_nick_time = (yyvsp[(3) - (4)].number);
6484   }
6485      break;
6486  
6487 <  case 516:
6487 >  case 495:
6488  
6489 < /* Line 1464 of yacc.c  */
6490 < #line 2935 "ircd_parser.y"
6489 > /* Line 1806 of yacc.c  */
6490 > #line 2733 "ircd_parser.y"
6491      {
6492    ConfigFileEntry.max_nick_changes = (yyvsp[(3) - (4)].number);
6493   }
6494      break;
6495  
6496 <  case 517:
6496 >  case 496:
6497  
6498 < /* Line 1464 of yacc.c  */
6499 < #line 2940 "ircd_parser.y"
6498 > /* Line 1806 of yacc.c  */
6499 > #line 2738 "ircd_parser.y"
6500      {
6501    ConfigFileEntry.max_accept = (yyvsp[(3) - (4)].number);
6502   }
6503      break;
6504  
6505 <  case 518:
6505 >  case 497:
6506  
6507 < /* Line 1464 of yacc.c  */
6508 < #line 2945 "ircd_parser.y"
6507 > /* Line 1806 of yacc.c  */
6508 > #line 2743 "ircd_parser.y"
6509      {
6510    ConfigFileEntry.anti_spam_exit_message_time = (yyvsp[(3) - (4)].number);
6511   }
6512      break;
6513  
6514 <  case 519:
6514 >  case 498:
6515  
6516 < /* Line 1464 of yacc.c  */
6517 < #line 2950 "ircd_parser.y"
6516 > /* Line 1806 of yacc.c  */
6517 > #line 2748 "ircd_parser.y"
6518      {
6519    ConfigFileEntry.ts_warn_delta = (yyvsp[(3) - (4)].number);
6520   }
6521      break;
6522  
6523 <  case 520:
6523 >  case 499:
6524  
6525 < /* Line 1464 of yacc.c  */
6526 < #line 2955 "ircd_parser.y"
6525 > /* Line 1806 of yacc.c  */
6526 > #line 2753 "ircd_parser.y"
6527      {
6528    if (conf_parser_ctx.pass == 2)
6529      ConfigFileEntry.ts_max_delta = (yyvsp[(3) - (4)].number);
6530   }
6531      break;
6532  
6533 <  case 521:
6533 >  case 500:
6534  
6535 < /* Line 1464 of yacc.c  */
6536 < #line 2961 "ircd_parser.y"
6535 > /* Line 1806 of yacc.c  */
6536 > #line 2759 "ircd_parser.y"
6537      {
6538    if (((yyvsp[(3) - (4)].number) > 0) && conf_parser_ctx.pass == 1)
6539    {
6540 <    ilog(L_CRIT, "You haven't read your config file properly.");
6541 <    ilog(L_CRIT, "There is a line in the example conf that will kill your server if not removed.");
6542 <    ilog(L_CRIT, "Consider actually reading/editing the conf file, and removing this line.");
6540 >    ilog(LOG_TYPE_IRCD, "You haven't read your config file properly.");
6541 >    ilog(LOG_TYPE_IRCD, "There is a line in the example conf that will kill your server if not removed.");
6542 >    ilog(LOG_TYPE_IRCD, "Consider actually reading/editing the conf file, and removing this line.");
6543      exit(0);
6544    }
6545   }
6546      break;
6547  
6548 <  case 522:
6548 >  case 501:
6549  
6550 < /* Line 1464 of yacc.c  */
6551 < #line 2972 "ircd_parser.y"
6550 > /* Line 1806 of yacc.c  */
6551 > #line 2770 "ircd_parser.y"
6552      {
6553    ConfigFileEntry.kline_with_reason = yylval.number;
6554   }
6555      break;
6556  
6557 <  case 523:
6557 >  case 502:
6558  
6559 < /* Line 1464 of yacc.c  */
6560 < #line 2977 "ircd_parser.y"
6559 > /* Line 1806 of yacc.c  */
6560 > #line 2775 "ircd_parser.y"
6561      {
6562    if (conf_parser_ctx.pass == 2)
6563    {
# Line 6875 | Line 6567 | yyreduce:
6567   }
6568      break;
6569  
6570 <  case 524:
6570 >  case 503:
6571  
6572 < /* Line 1464 of yacc.c  */
6573 < #line 2986 "ircd_parser.y"
6572 > /* Line 1806 of yacc.c  */
6573 > #line 2784 "ircd_parser.y"
6574      {
6575    ConfigFileEntry.invisible_on_connect = yylval.number;
6576   }
6577      break;
6578  
6579 <  case 525:
6579 >  case 504:
6580  
6581 < /* Line 1464 of yacc.c  */
6582 < #line 2991 "ircd_parser.y"
6581 > /* Line 1806 of yacc.c  */
6582 > #line 2789 "ircd_parser.y"
6583      {
6584    ConfigFileEntry.warn_no_nline = yylval.number;
6585   }
6586      break;
6587  
6588 <  case 526:
6588 >  case 505:
6589  
6590 < /* Line 1464 of yacc.c  */
6591 < #line 2996 "ircd_parser.y"
6590 > /* Line 1806 of yacc.c  */
6591 > #line 2794 "ircd_parser.y"
6592      {
6593    ConfigFileEntry.stats_e_disabled = yylval.number;
6594   }
6595      break;
6596  
6597 <  case 527:
6597 >  case 506:
6598  
6599 < /* Line 1464 of yacc.c  */
6600 < #line 3001 "ircd_parser.y"
6599 > /* Line 1806 of yacc.c  */
6600 > #line 2799 "ircd_parser.y"
6601      {
6602    ConfigFileEntry.stats_o_oper_only = yylval.number;
6603   }
6604      break;
6605  
6606 <  case 528:
6606 >  case 507:
6607  
6608 < /* Line 1464 of yacc.c  */
6609 < #line 3006 "ircd_parser.y"
6608 > /* Line 1806 of yacc.c  */
6609 > #line 2804 "ircd_parser.y"
6610      {
6611    ConfigFileEntry.stats_P_oper_only = yylval.number;
6612   }
6613      break;
6614  
6615 <  case 529:
6615 >  case 508:
6616  
6617 < /* Line 1464 of yacc.c  */
6618 < #line 3011 "ircd_parser.y"
6617 > /* Line 1806 of yacc.c  */
6618 > #line 2809 "ircd_parser.y"
6619      {
6620    ConfigFileEntry.stats_k_oper_only = 2 * yylval.number;
6621   }
6622      break;
6623  
6624 <  case 530:
6624 >  case 509:
6625  
6626 < /* Line 1464 of yacc.c  */
6627 < #line 3014 "ircd_parser.y"
6626 > /* Line 1806 of yacc.c  */
6627 > #line 2812 "ircd_parser.y"
6628      {
6629    ConfigFileEntry.stats_k_oper_only = 1;
6630   }
6631      break;
6632  
6633 <  case 531:
6633 >  case 510:
6634  
6635 < /* Line 1464 of yacc.c  */
6636 < #line 3019 "ircd_parser.y"
6635 > /* Line 1806 of yacc.c  */
6636 > #line 2817 "ircd_parser.y"
6637      {
6638    ConfigFileEntry.stats_i_oper_only = 2 * yylval.number;
6639   }
6640      break;
6641  
6642 <  case 532:
6642 >  case 511:
6643  
6644 < /* Line 1464 of yacc.c  */
6645 < #line 3022 "ircd_parser.y"
6644 > /* Line 1806 of yacc.c  */
6645 > #line 2820 "ircd_parser.y"
6646      {
6647    ConfigFileEntry.stats_i_oper_only = 1;
6648   }
6649      break;
6650  
6651 <  case 533:
6651 >  case 512:
6652  
6653 < /* Line 1464 of yacc.c  */
6654 < #line 3027 "ircd_parser.y"
6653 > /* Line 1806 of yacc.c  */
6654 > #line 2825 "ircd_parser.y"
6655      {
6656    ConfigFileEntry.pace_wait = (yyvsp[(3) - (4)].number);
6657   }
6658      break;
6659  
6660 <  case 534:
6660 >  case 513:
6661  
6662 < /* Line 1464 of yacc.c  */
6663 < #line 3032 "ircd_parser.y"
6662 > /* Line 1806 of yacc.c  */
6663 > #line 2830 "ircd_parser.y"
6664      {
6665    ConfigFileEntry.caller_id_wait = (yyvsp[(3) - (4)].number);
6666   }
6667      break;
6668  
6669 <  case 535:
6669 >  case 514:
6670  
6671 < /* Line 1464 of yacc.c  */
6672 < #line 3037 "ircd_parser.y"
6671 > /* Line 1806 of yacc.c  */
6672 > #line 2835 "ircd_parser.y"
6673      {
6674    ConfigFileEntry.opers_bypass_callerid = yylval.number;
6675   }
6676      break;
6677  
6678 <  case 536:
6678 >  case 515:
6679  
6680 < /* Line 1464 of yacc.c  */
6681 < #line 3042 "ircd_parser.y"
6680 > /* Line 1806 of yacc.c  */
6681 > #line 2840 "ircd_parser.y"
6682      {
6683    ConfigFileEntry.pace_wait_simple = (yyvsp[(3) - (4)].number);
6684   }
6685      break;
6686  
6687 <  case 537:
6687 >  case 516:
6688  
6689 < /* Line 1464 of yacc.c  */
6690 < #line 3047 "ircd_parser.y"
6689 > /* Line 1806 of yacc.c  */
6690 > #line 2845 "ircd_parser.y"
6691      {
6692    ConfigFileEntry.short_motd = yylval.number;
6693   }
6694      break;
6695  
6696 <  case 538:
6696 >  case 517:
6697  
6698 < /* Line 1464 of yacc.c  */
6699 < #line 3052 "ircd_parser.y"
6698 > /* Line 1806 of yacc.c  */
6699 > #line 2850 "ircd_parser.y"
6700      {
6701    ConfigFileEntry.no_oper_flood = yylval.number;
6702   }
6703      break;
6704  
6705 <  case 539:
6705 >  case 518:
6706  
6707 < /* Line 1464 of yacc.c  */
6708 < #line 3057 "ircd_parser.y"
6707 > /* Line 1806 of yacc.c  */
6708 > #line 2855 "ircd_parser.y"
6709      {
6710    ConfigFileEntry.true_no_oper_flood = yylval.number;
6711   }
6712      break;
6713  
6714 <  case 540:
6714 >  case 519:
6715  
6716 < /* Line 1464 of yacc.c  */
6717 < #line 3062 "ircd_parser.y"
6716 > /* Line 1806 of yacc.c  */
6717 > #line 2860 "ircd_parser.y"
6718      {
6719    ConfigFileEntry.oper_pass_resv = yylval.number;
6720   }
6721      break;
6722  
6723 <  case 541:
6723 >  case 520:
6724  
6725 < /* Line 1464 of yacc.c  */
6726 < #line 3067 "ircd_parser.y"
6725 > /* Line 1806 of yacc.c  */
6726 > #line 2865 "ircd_parser.y"
6727      {
6728    if (conf_parser_ctx.pass == 2)
6729    {
# Line 7043 | Line 6735 | yyreduce:
6735   }
6736      break;
6737  
6738 <  case 542:
7047 <
7048 < /* Line 1464 of yacc.c  */
7049 < #line 3078 "ircd_parser.y"
7050 <    {
7051 <  ConfigFileEntry.idletime = (yyvsp[(3) - (4)].number);
7052 < }
7053 <    break;
7054 <
7055 <  case 543:
6738 >  case 521:
6739  
6740 < /* Line 1464 of yacc.c  */
6741 < #line 3083 "ircd_parser.y"
6740 > /* Line 1806 of yacc.c  */
6741 > #line 2876 "ircd_parser.y"
6742      {
6743    ConfigFileEntry.dots_in_ident = (yyvsp[(3) - (4)].number);
6744   }
6745      break;
6746  
6747 <  case 544:
6747 >  case 522:
6748  
6749 < /* Line 1464 of yacc.c  */
6750 < #line 3088 "ircd_parser.y"
6749 > /* Line 1806 of yacc.c  */
6750 > #line 2881 "ircd_parser.y"
6751      {
6752    ConfigFileEntry.max_targets = (yyvsp[(3) - (4)].number);
6753   }
6754      break;
6755  
6756 <  case 545:
7074 <
7075 < /* Line 1464 of yacc.c  */
7076 < #line 3093 "ircd_parser.y"
7077 <    {
7078 <  if (conf_parser_ctx.pass == 2)
7079 <  {
7080 <    MyFree(ConfigFileEntry.servlink_path);
7081 <    DupString(ConfigFileEntry.servlink_path, yylval.string);
7082 <  }
7083 < }
7084 <    break;
7085 <
7086 <  case 546:
7087 <
7088 < /* Line 1464 of yacc.c  */
7089 < #line 3102 "ircd_parser.y"
7090 <    {
7091 < #ifdef HAVE_LIBCRYPTO
7092 <  if (conf_parser_ctx.pass == 2)
7093 <  {
7094 <    struct EncCapability *ecap;
7095 <    const char *cipher_name;
7096 <    int found = 0;
7097 <
7098 <    ConfigFileEntry.default_cipher_preference = NULL;
7099 <    cipher_name = yylval.string;
6756 >  case 523:
6757  
6758 <    for (ecap = CipherTable; ecap->name; ecap++)
6758 > /* Line 1806 of yacc.c  */
6759 > #line 2886 "ircd_parser.y"
6760      {
6761 <      if ((irccmp(ecap->name, cipher_name) == 0) &&
7104 <          (ecap->cap & CAP_ENC_MASK))
7105 <      {
7106 <        ConfigFileEntry.default_cipher_preference = ecap;
7107 <        found = 1;
7108 <        break;
7109 <      }
7110 <    }
7111 <
7112 <    if (!found)
7113 <      yyerror("Invalid cipher");
7114 <  }
7115 < #else
7116 <  if (conf_parser_ctx.pass == 2)
7117 <    yyerror("Ignoring default_cipher_preference -- no OpenSSL support");
7118 < #endif
6761 >  ConfigFileEntry.use_egd = yylval.number;
6762   }
6763      break;
6764  
6765 <  case 547:
6765 >  case 524:
6766  
6767 < /* Line 1464 of yacc.c  */
6768 < #line 3134 "ircd_parser.y"
6767 > /* Line 1806 of yacc.c  */
6768 > #line 2891 "ircd_parser.y"
6769      {
6770    if (conf_parser_ctx.pass == 2)
6771    {
6772 <    ConfigFileEntry.compression_level = (yyvsp[(3) - (4)].number);
6773 < #ifndef HAVE_LIBZ
7131 <    yyerror("Ignoring compression_level -- no zlib support");
7132 < #else
7133 <    if ((ConfigFileEntry.compression_level < 1) ||
7134 <        (ConfigFileEntry.compression_level > 9))
7135 <    {
7136 <      yyerror("Ignoring invalid compression_level, using default");
7137 <      ConfigFileEntry.compression_level = 0;
7138 <    }
7139 < #endif
6772 >    MyFree(ConfigFileEntry.egdpool_path);
6773 >    DupString(ConfigFileEntry.egdpool_path, yylval.string);
6774    }
6775   }
6776      break;
6777  
6778 <  case 548:
7145 <
7146 < /* Line 1464 of yacc.c  */
7147 < #line 3152 "ircd_parser.y"
7148 <    {
7149 <  ConfigFileEntry.use_egd = yylval.number;
7150 < }
7151 <    break;
7152 <
7153 <  case 549:
6778 >  case 525:
6779  
6780 < /* Line 1464 of yacc.c  */
6781 < #line 3157 "ircd_parser.y"
6780 > /* Line 1806 of yacc.c  */
6781 > #line 2900 "ircd_parser.y"
6782      {
6783 <  if (conf_parser_ctx.pass == 2)
6783 >  if (conf_parser_ctx.pass == 2 && valid_servname(yylval.string))
6784    {
6785 <    MyFree(ConfigFileEntry.egdpool_path);
6786 <    DupString(ConfigFileEntry.egdpool_path, yylval.string);
6785 >    MyFree(ConfigFileEntry.service_name);
6786 >    DupString(ConfigFileEntry.service_name, yylval.string);
6787    }
6788   }
6789      break;
6790  
6791 <  case 550:
6791 >  case 526:
6792  
6793 < /* Line 1464 of yacc.c  */
6794 < #line 3166 "ircd_parser.y"
6793 > /* Line 1806 of yacc.c  */
6794 > #line 2909 "ircd_parser.y"
6795      {
6796    ConfigFileEntry.ping_cookie = yylval.number;
6797   }
6798      break;
6799  
6800 <  case 551:
6800 >  case 527:
6801  
6802 < /* Line 1464 of yacc.c  */
6803 < #line 3171 "ircd_parser.y"
6802 > /* Line 1806 of yacc.c  */
6803 > #line 2914 "ircd_parser.y"
6804      {
6805    ConfigFileEntry.disable_auth = yylval.number;
6806   }
6807      break;
6808  
6809 <  case 552:
6809 >  case 528:
6810  
6811 < /* Line 1464 of yacc.c  */
6812 < #line 3176 "ircd_parser.y"
6811 > /* Line 1806 of yacc.c  */
6812 > #line 2919 "ircd_parser.y"
6813      {
6814    ConfigFileEntry.throttle_time = yylval.number;
6815   }
6816      break;
6817  
6818 <  case 553:
6818 >  case 529:
6819  
6820 < /* Line 1464 of yacc.c  */
6821 < #line 3181 "ircd_parser.y"
6820 > /* Line 1806 of yacc.c  */
6821 > #line 2924 "ircd_parser.y"
6822      {
6823    ConfigFileEntry.oper_umodes = 0;
6824   }
6825      break;
6826  
6827 <  case 557:
6827 >  case 533:
6828  
6829 < /* Line 1464 of yacc.c  */
6830 < #line 3187 "ircd_parser.y"
6829 > /* Line 1806 of yacc.c  */
6830 > #line 2930 "ircd_parser.y"
6831      {
6832    ConfigFileEntry.oper_umodes |= UMODE_BOTS;
6833   }
6834      break;
6835  
6836 <  case 558:
6836 >  case 534:
6837  
6838 < /* Line 1464 of yacc.c  */
6839 < #line 3190 "ircd_parser.y"
6838 > /* Line 1806 of yacc.c  */
6839 > #line 2933 "ircd_parser.y"
6840      {
6841    ConfigFileEntry.oper_umodes |= UMODE_CCONN;
6842   }
6843      break;
6844  
6845 <  case 559:
6845 >  case 535:
6846  
6847 < /* Line 1464 of yacc.c  */
6848 < #line 3193 "ircd_parser.y"
6847 > /* Line 1806 of yacc.c  */
6848 > #line 2936 "ircd_parser.y"
6849      {
6850    ConfigFileEntry.oper_umodes |= UMODE_CCONN_FULL;
6851   }
6852      break;
6853  
6854 <  case 560:
6854 >  case 536:
6855  
6856 < /* Line 1464 of yacc.c  */
6857 < #line 3196 "ircd_parser.y"
6856 > /* Line 1806 of yacc.c  */
6857 > #line 2939 "ircd_parser.y"
6858      {
6859    ConfigFileEntry.oper_umodes |= UMODE_DEAF;
6860   }
6861      break;
6862  
6863 <  case 561:
6863 >  case 537:
6864  
6865 < /* Line 1464 of yacc.c  */
6866 < #line 3199 "ircd_parser.y"
6865 > /* Line 1806 of yacc.c  */
6866 > #line 2942 "ircd_parser.y"
6867      {
6868    ConfigFileEntry.oper_umodes |= UMODE_DEBUG;
6869   }
6870      break;
6871  
6872 <  case 562:
6872 >  case 538:
6873  
6874 < /* Line 1464 of yacc.c  */
6875 < #line 3202 "ircd_parser.y"
6874 > /* Line 1806 of yacc.c  */
6875 > #line 2945 "ircd_parser.y"
6876      {
6877    ConfigFileEntry.oper_umodes |= UMODE_FULL;
6878   }
6879      break;
6880  
6881 <  case 563:
6881 >  case 539:
6882 >
6883 > /* Line 1806 of yacc.c  */
6884 > #line 2948 "ircd_parser.y"
6885 >    {
6886 >  ConfigFileEntry.oper_umodes |= UMODE_HIDDEN;
6887 > }
6888 >    break;
6889 >
6890 >  case 540:
6891  
6892 < /* Line 1464 of yacc.c  */
6893 < #line 3205 "ircd_parser.y"
6892 > /* Line 1806 of yacc.c  */
6893 > #line 2951 "ircd_parser.y"
6894      {
6895    ConfigFileEntry.oper_umodes |= UMODE_SKILL;
6896   }
6897      break;
6898  
6899 <  case 564:
6899 >  case 541:
6900  
6901 < /* Line 1464 of yacc.c  */
6902 < #line 3208 "ircd_parser.y"
6901 > /* Line 1806 of yacc.c  */
6902 > #line 2954 "ircd_parser.y"
6903      {
6904    ConfigFileEntry.oper_umodes |= UMODE_NCHANGE;
6905   }
6906      break;
6907  
6908 <  case 565:
6908 >  case 542:
6909  
6910 < /* Line 1464 of yacc.c  */
6911 < #line 3211 "ircd_parser.y"
6910 > /* Line 1806 of yacc.c  */
6911 > #line 2957 "ircd_parser.y"
6912      {
6913    ConfigFileEntry.oper_umodes |= UMODE_REJ;
6914   }
6915      break;
6916  
6917 <  case 566:
6917 >  case 543:
6918  
6919 < /* Line 1464 of yacc.c  */
6920 < #line 3214 "ircd_parser.y"
6919 > /* Line 1806 of yacc.c  */
6920 > #line 2960 "ircd_parser.y"
6921      {
6922    ConfigFileEntry.oper_umodes |= UMODE_UNAUTH;
6923   }
6924      break;
6925  
6926 <  case 567:
6926 >  case 544:
6927  
6928 < /* Line 1464 of yacc.c  */
6929 < #line 3217 "ircd_parser.y"
6928 > /* Line 1806 of yacc.c  */
6929 > #line 2963 "ircd_parser.y"
6930      {
6931    ConfigFileEntry.oper_umodes |= UMODE_SPY;
6932   }
6933      break;
6934  
6935 <  case 568:
6935 >  case 545:
6936  
6937 < /* Line 1464 of yacc.c  */
6938 < #line 3220 "ircd_parser.y"
6937 > /* Line 1806 of yacc.c  */
6938 > #line 2966 "ircd_parser.y"
6939      {
6940    ConfigFileEntry.oper_umodes |= UMODE_EXTERNAL;
6941   }
6942      break;
6943  
6944 <  case 569:
6944 >  case 546:
6945  
6946 < /* Line 1464 of yacc.c  */
6947 < #line 3223 "ircd_parser.y"
6946 > /* Line 1806 of yacc.c  */
6947 > #line 2969 "ircd_parser.y"
6948      {
6949    ConfigFileEntry.oper_umodes |= UMODE_OPERWALL;
6950   }
6951      break;
6952  
6953 <  case 570:
6953 >  case 547:
6954  
6955 < /* Line 1464 of yacc.c  */
6956 < #line 3226 "ircd_parser.y"
6955 > /* Line 1806 of yacc.c  */
6956 > #line 2972 "ircd_parser.y"
6957      {
6958    ConfigFileEntry.oper_umodes |= UMODE_SERVNOTICE;
6959   }
6960      break;
6961  
6962 <  case 571:
6962 >  case 548:
6963  
6964 < /* Line 1464 of yacc.c  */
6965 < #line 3229 "ircd_parser.y"
6964 > /* Line 1806 of yacc.c  */
6965 > #line 2975 "ircd_parser.y"
6966      {
6967    ConfigFileEntry.oper_umodes |= UMODE_INVISIBLE;
6968   }
6969      break;
6970  
6971 <  case 572:
6971 >  case 549:
6972  
6973 < /* Line 1464 of yacc.c  */
6974 < #line 3232 "ircd_parser.y"
6973 > /* Line 1806 of yacc.c  */
6974 > #line 2978 "ircd_parser.y"
6975      {
6976    ConfigFileEntry.oper_umodes |= UMODE_WALLOP;
6977   }
6978      break;
6979  
6980 <  case 573:
6980 >  case 550:
6981  
6982 < /* Line 1464 of yacc.c  */
6983 < #line 3235 "ircd_parser.y"
6982 > /* Line 1806 of yacc.c  */
6983 > #line 2981 "ircd_parser.y"
6984      {
6985    ConfigFileEntry.oper_umodes |= UMODE_SOFTCALLERID;
6986   }
6987      break;
6988  
6989 <  case 574:
6989 >  case 551:
6990  
6991 < /* Line 1464 of yacc.c  */
6992 < #line 3238 "ircd_parser.y"
6991 > /* Line 1806 of yacc.c  */
6992 > #line 2984 "ircd_parser.y"
6993      {
6994    ConfigFileEntry.oper_umodes |= UMODE_CALLERID;
6995   }
6996      break;
6997  
6998 <  case 575:
6998 >  case 552:
6999  
7000 < /* Line 1464 of yacc.c  */
7001 < #line 3241 "ircd_parser.y"
7000 > /* Line 1806 of yacc.c  */
7001 > #line 2987 "ircd_parser.y"
7002      {
7003    ConfigFileEntry.oper_umodes |= UMODE_LOCOPS;
7004   }
7005      break;
7006  
7007 <  case 576:
7007 >  case 553:
7008  
7009 < /* Line 1464 of yacc.c  */
7010 < #line 3246 "ircd_parser.y"
7009 > /* Line 1806 of yacc.c  */
7010 > #line 2992 "ircd_parser.y"
7011      {
7012    ConfigFileEntry.oper_only_umodes = 0;
7013   }
7014      break;
7015  
7016 <  case 580:
7016 >  case 557:
7017  
7018 < /* Line 1464 of yacc.c  */
7019 < #line 3252 "ircd_parser.y"
7018 > /* Line 1806 of yacc.c  */
7019 > #line 2998 "ircd_parser.y"
7020      {
7021    ConfigFileEntry.oper_only_umodes |= UMODE_BOTS;
7022   }
7023      break;
7024  
7025 <  case 581:
7025 >  case 558:
7026  
7027 < /* Line 1464 of yacc.c  */
7028 < #line 3255 "ircd_parser.y"
7027 > /* Line 1806 of yacc.c  */
7028 > #line 3001 "ircd_parser.y"
7029      {
7030    ConfigFileEntry.oper_only_umodes |= UMODE_CCONN;
7031   }
7032      break;
7033  
7034 <  case 582:
7034 >  case 559:
7035  
7036 < /* Line 1464 of yacc.c  */
7037 < #line 3258 "ircd_parser.y"
7036 > /* Line 1806 of yacc.c  */
7037 > #line 3004 "ircd_parser.y"
7038      {
7039    ConfigFileEntry.oper_only_umodes |= UMODE_CCONN_FULL;
7040   }
7041      break;
7042  
7043 <  case 583:
7043 >  case 560:
7044  
7045 < /* Line 1464 of yacc.c  */
7046 < #line 3261 "ircd_parser.y"
7045 > /* Line 1806 of yacc.c  */
7046 > #line 3007 "ircd_parser.y"
7047      {
7048    ConfigFileEntry.oper_only_umodes |= UMODE_DEAF;
7049   }
7050      break;
7051  
7052 <  case 584:
7052 >  case 561:
7053  
7054 < /* Line 1464 of yacc.c  */
7055 < #line 3264 "ircd_parser.y"
7054 > /* Line 1806 of yacc.c  */
7055 > #line 3010 "ircd_parser.y"
7056      {
7057    ConfigFileEntry.oper_only_umodes |= UMODE_DEBUG;
7058   }
7059      break;
7060  
7061 <  case 585:
7061 >  case 562:
7062  
7063 < /* Line 1464 of yacc.c  */
7064 < #line 3267 "ircd_parser.y"
7063 > /* Line 1806 of yacc.c  */
7064 > #line 3013 "ircd_parser.y"
7065      {
7066    ConfigFileEntry.oper_only_umodes |= UMODE_FULL;
7067   }
7068      break;
7069  
7070 <  case 586:
7070 >  case 563:
7071  
7072 < /* Line 1464 of yacc.c  */
7073 < #line 3270 "ircd_parser.y"
7072 > /* Line 1806 of yacc.c  */
7073 > #line 3016 "ircd_parser.y"
7074      {
7075    ConfigFileEntry.oper_only_umodes |= UMODE_SKILL;
7076   }
7077      break;
7078  
7079 <  case 587:
7079 >  case 564:
7080  
7081 < /* Line 1464 of yacc.c  */
7082 < #line 3273 "ircd_parser.y"
7081 > /* Line 1806 of yacc.c  */
7082 > #line 3019 "ircd_parser.y"
7083 >    {
7084 >  ConfigFileEntry.oper_only_umodes |= UMODE_HIDDEN;
7085 > }
7086 >    break;
7087 >
7088 >  case 565:
7089 >
7090 > /* Line 1806 of yacc.c  */
7091 > #line 3022 "ircd_parser.y"
7092      {
7093    ConfigFileEntry.oper_only_umodes |= UMODE_NCHANGE;
7094   }
7095      break;
7096  
7097 <  case 588:
7097 >  case 566:
7098  
7099 < /* Line 1464 of yacc.c  */
7100 < #line 3276 "ircd_parser.y"
7099 > /* Line 1806 of yacc.c  */
7100 > #line 3025 "ircd_parser.y"
7101      {
7102    ConfigFileEntry.oper_only_umodes |= UMODE_REJ;
7103   }
7104      break;
7105  
7106 <  case 589:
7106 >  case 567:
7107  
7108 < /* Line 1464 of yacc.c  */
7109 < #line 3279 "ircd_parser.y"
7108 > /* Line 1806 of yacc.c  */
7109 > #line 3028 "ircd_parser.y"
7110      {
7111    ConfigFileEntry.oper_only_umodes |= UMODE_UNAUTH;
7112   }
7113      break;
7114  
7115 <  case 590:
7115 >  case 568:
7116  
7117 < /* Line 1464 of yacc.c  */
7118 < #line 3282 "ircd_parser.y"
7117 > /* Line 1806 of yacc.c  */
7118 > #line 3031 "ircd_parser.y"
7119      {
7120    ConfigFileEntry.oper_only_umodes |= UMODE_SPY;
7121   }
7122      break;
7123  
7124 <  case 591:
7124 >  case 569:
7125  
7126 < /* Line 1464 of yacc.c  */
7127 < #line 3285 "ircd_parser.y"
7126 > /* Line 1806 of yacc.c  */
7127 > #line 3034 "ircd_parser.y"
7128      {
7129    ConfigFileEntry.oper_only_umodes |= UMODE_EXTERNAL;
7130   }
7131      break;
7132  
7133 <  case 592:
7133 >  case 570:
7134  
7135 < /* Line 1464 of yacc.c  */
7136 < #line 3288 "ircd_parser.y"
7135 > /* Line 1806 of yacc.c  */
7136 > #line 3037 "ircd_parser.y"
7137      {
7138    ConfigFileEntry.oper_only_umodes |= UMODE_OPERWALL;
7139   }
7140      break;
7141  
7142 <  case 593:
7142 >  case 571:
7143  
7144 < /* Line 1464 of yacc.c  */
7145 < #line 3291 "ircd_parser.y"
7144 > /* Line 1806 of yacc.c  */
7145 > #line 3040 "ircd_parser.y"
7146      {
7147    ConfigFileEntry.oper_only_umodes |= UMODE_SERVNOTICE;
7148   }
7149      break;
7150  
7151 <  case 594:
7151 >  case 572:
7152  
7153 < /* Line 1464 of yacc.c  */
7154 < #line 3294 "ircd_parser.y"
7153 > /* Line 1806 of yacc.c  */
7154 > #line 3043 "ircd_parser.y"
7155      {
7156    ConfigFileEntry.oper_only_umodes |= UMODE_INVISIBLE;
7157   }
7158      break;
7159  
7160 <  case 595:
7160 >  case 573:
7161  
7162 < /* Line 1464 of yacc.c  */
7163 < #line 3297 "ircd_parser.y"
7162 > /* Line 1806 of yacc.c  */
7163 > #line 3046 "ircd_parser.y"
7164      {
7165    ConfigFileEntry.oper_only_umodes |= UMODE_WALLOP;
7166   }
7167      break;
7168  
7169 <  case 596:
7169 >  case 574:
7170  
7171 < /* Line 1464 of yacc.c  */
7172 < #line 3300 "ircd_parser.y"
7171 > /* Line 1806 of yacc.c  */
7172 > #line 3049 "ircd_parser.y"
7173      {
7174    ConfigFileEntry.oper_only_umodes |= UMODE_SOFTCALLERID;
7175   }
7176      break;
7177  
7178 <  case 597:
7178 >  case 575:
7179  
7180 < /* Line 1464 of yacc.c  */
7181 < #line 3303 "ircd_parser.y"
7180 > /* Line 1806 of yacc.c  */
7181 > #line 3052 "ircd_parser.y"
7182      {
7183    ConfigFileEntry.oper_only_umodes |= UMODE_CALLERID;
7184   }
7185      break;
7186  
7187 <  case 598:
7187 >  case 576:
7188  
7189 < /* Line 1464 of yacc.c  */
7190 < #line 3306 "ircd_parser.y"
7189 > /* Line 1806 of yacc.c  */
7190 > #line 3055 "ircd_parser.y"
7191      {
7192    ConfigFileEntry.oper_only_umodes |= UMODE_LOCOPS;
7193   }
7194      break;
7195  
7196 <  case 599:
7196 >  case 577:
7197  
7198 < /* Line 1464 of yacc.c  */
7199 < #line 3311 "ircd_parser.y"
7198 > /* Line 1806 of yacc.c  */
7199 > #line 3060 "ircd_parser.y"
7200      {
7201    ConfigFileEntry.min_nonwildcard = (yyvsp[(3) - (4)].number);
7202   }
7203      break;
7204  
7205 <  case 600:
7205 >  case 578:
7206  
7207 < /* Line 1464 of yacc.c  */
7208 < #line 3316 "ircd_parser.y"
7207 > /* Line 1806 of yacc.c  */
7208 > #line 3065 "ircd_parser.y"
7209      {
7210    ConfigFileEntry.min_nonwildcard_simple = (yyvsp[(3) - (4)].number);
7211   }
7212      break;
7213  
7214 <  case 601:
7214 >  case 579:
7215  
7216 < /* Line 1464 of yacc.c  */
7217 < #line 3321 "ircd_parser.y"
7216 > /* Line 1806 of yacc.c  */
7217 > #line 3070 "ircd_parser.y"
7218      {
7219    ConfigFileEntry.default_floodcount = (yyvsp[(3) - (4)].number);
7220   }
7221      break;
7222  
7223 <  case 602:
7223 >  case 580:
7224  
7225 < /* Line 1464 of yacc.c  */
7226 < #line 3326 "ircd_parser.y"
7225 > /* Line 1806 of yacc.c  */
7226 > #line 3075 "ircd_parser.y"
7227      {
7228    ConfigFileEntry.client_flood = (yyvsp[(3) - (4)].number);
7229   }
7230      break;
7231  
7232 <  case 603:
7232 >  case 581:
7233  
7234 < /* Line 1464 of yacc.c  */
7235 < #line 3335 "ircd_parser.y"
7234 > /* Line 1806 of yacc.c  */
7235 > #line 3084 "ircd_parser.y"
7236      {
7237    if (conf_parser_ctx.pass == 2)
7238    {
# Line 7599 | Line 7242 | yyreduce:
7242   }
7243      break;
7244  
7245 <  case 604:
7245 >  case 582:
7246  
7247 < /* Line 1464 of yacc.c  */
7248 < #line 3342 "ircd_parser.y"
7247 > /* Line 1806 of yacc.c  */
7248 > #line 3091 "ircd_parser.y"
7249      {
7250    if (conf_parser_ctx.pass == 2)
7251    {
# Line 7620 | Line 7263 | yyreduce:
7263   }
7264      break;
7265  
7266 <  case 614:
7266 >  case 592:
7267  
7268 < /* Line 1464 of yacc.c  */
7269 < #line 3368 "ircd_parser.y"
7268 > /* Line 1806 of yacc.c  */
7269 > #line 3117 "ircd_parser.y"
7270      {
7271    if (conf_parser_ctx.pass == 2)
7272      ConfigFileEntry.glines = yylval.number;
7273   }
7274      break;
7275  
7276 <  case 615:
7276 >  case 593:
7277  
7278 < /* Line 1464 of yacc.c  */
7279 < #line 3374 "ircd_parser.y"
7278 > /* Line 1806 of yacc.c  */
7279 > #line 3123 "ircd_parser.y"
7280      {
7281    if (conf_parser_ctx.pass == 2)
7282      ConfigFileEntry.gline_time = (yyvsp[(3) - (4)].number);
7283   }
7284      break;
7285  
7286 <  case 616:
7286 >  case 594:
7287  
7288 < /* Line 1464 of yacc.c  */
7289 < #line 3380 "ircd_parser.y"
7288 > /* Line 1806 of yacc.c  */
7289 > #line 3129 "ircd_parser.y"
7290      {
7291    if (conf_parser_ctx.pass == 2)
7292      ConfigFileEntry.gline_logging = 0;
7293   }
7294      break;
7295  
7296 <  case 620:
7296 >  case 598:
7297  
7298 < /* Line 1464 of yacc.c  */
7299 < #line 3386 "ircd_parser.y"
7298 > /* Line 1806 of yacc.c  */
7299 > #line 3135 "ircd_parser.y"
7300      {
7301    if (conf_parser_ctx.pass == 2)
7302      ConfigFileEntry.gline_logging |= GDENY_REJECT;
7303   }
7304      break;
7305  
7306 <  case 621:
7306 >  case 599:
7307  
7308 < /* Line 1464 of yacc.c  */
7309 < #line 3390 "ircd_parser.y"
7308 > /* Line 1806 of yacc.c  */
7309 > #line 3139 "ircd_parser.y"
7310      {
7311    if (conf_parser_ctx.pass == 2)
7312      ConfigFileEntry.gline_logging |= GDENY_BLOCK;
7313   }
7314      break;
7315  
7316 <  case 622:
7316 >  case 600:
7317  
7318 < /* Line 1464 of yacc.c  */
7319 < #line 3396 "ircd_parser.y"
7318 > /* Line 1806 of yacc.c  */
7319 > #line 3145 "ircd_parser.y"
7320      {
7321    if (conf_parser_ctx.pass == 2)
7322    {
# Line 7708 | Line 7351 | yyreduce:
7351   }
7352      break;
7353  
7354 <  case 623:
7354 >  case 601:
7355  
7356 < /* Line 1464 of yacc.c  */
7357 < #line 3430 "ircd_parser.y"
7356 > /* Line 1806 of yacc.c  */
7357 > #line 3179 "ircd_parser.y"
7358      {
7359    if (conf_parser_ctx.pass == 2)  
7360    {
# Line 7721 | Line 7364 | yyreduce:
7364   }
7365      break;
7366  
7367 <  case 624:
7367 >  case 602:
7368  
7369 < /* Line 1464 of yacc.c  */
7370 < #line 3439 "ircd_parser.y"
7369 > /* Line 1806 of yacc.c  */
7370 > #line 3188 "ircd_parser.y"
7371      {
7372    if (conf_parser_ctx.pass == 2)
7373      yy_aconf->flags = 0;
7374   }
7375      break;
7376  
7377 <  case 625:
7377 >  case 603:
7378  
7379 < /* Line 1464 of yacc.c  */
7380 < #line 3443 "ircd_parser.y"
7379 > /* Line 1806 of yacc.c  */
7380 > #line 3192 "ircd_parser.y"
7381      {
7382    if (conf_parser_ctx.pass == 2)
7383    {
# Line 7781 | Line 7424 | yyreduce:
7424   }
7425      break;
7426  
7427 <  case 628:
7427 >  case 606:
7428  
7429 < /* Line 1464 of yacc.c  */
7430 < #line 3490 "ircd_parser.y"
7429 > /* Line 1806 of yacc.c  */
7430 > #line 3239 "ircd_parser.y"
7431      {
7432    if (conf_parser_ctx.pass == 2)
7433      yy_aconf->flags |= GDENY_REJECT;
7434   }
7435      break;
7436  
7437 <  case 629:
7437 >  case 607:
7438  
7439 < /* Line 1464 of yacc.c  */
7440 < #line 3494 "ircd_parser.y"
7439 > /* Line 1806 of yacc.c  */
7440 > #line 3243 "ircd_parser.y"
7441      {
7442    if (conf_parser_ctx.pass == 2)
7443      yy_aconf->flags |= GDENY_BLOCK;
7444   }
7445      break;
7446  
7447 <  case 652:
7447 >  case 630:
7448  
7449 < /* Line 1464 of yacc.c  */
7450 < #line 3518 "ircd_parser.y"
7449 > /* Line 1806 of yacc.c  */
7450 > #line 3267 "ircd_parser.y"
7451      {
7452    ConfigChannel.disable_fake_channels = yylval.number;
7453   }
7454      break;
7455  
7456 <  case 653:
7456 >  case 631:
7457  
7458 < /* Line 1464 of yacc.c  */
7459 < #line 3523 "ircd_parser.y"
7458 > /* Line 1806 of yacc.c  */
7459 > #line 3272 "ircd_parser.y"
7460      {
7461    ConfigChannel.restrict_channels = yylval.number;
7462   }
7463      break;
7464  
7465 <  case 654:
7465 >  case 632:
7466  
7467 < /* Line 1464 of yacc.c  */
7468 < #line 3528 "ircd_parser.y"
7467 > /* Line 1806 of yacc.c  */
7468 > #line 3277 "ircd_parser.y"
7469      {
7470    ConfigChannel.disable_local_channels = yylval.number;
7471   }
7472      break;
7473  
7474 <  case 655:
7474 >  case 633:
7475  
7476 < /* Line 1464 of yacc.c  */
7477 < #line 3533 "ircd_parser.y"
7476 > /* Line 1806 of yacc.c  */
7477 > #line 3282 "ircd_parser.y"
7478      {
7479    ConfigChannel.use_except = yylval.number;
7480   }
7481      break;
7482  
7483 <  case 656:
7483 >  case 634:
7484  
7485 < /* Line 1464 of yacc.c  */
7486 < #line 3538 "ircd_parser.y"
7485 > /* Line 1806 of yacc.c  */
7486 > #line 3287 "ircd_parser.y"
7487      {
7488    ConfigChannel.use_invex = yylval.number;
7489   }
7490      break;
7491  
7492 <  case 657:
7492 >  case 635:
7493  
7494 < /* Line 1464 of yacc.c  */
7495 < #line 3543 "ircd_parser.y"
7494 > /* Line 1806 of yacc.c  */
7495 > #line 3292 "ircd_parser.y"
7496      {
7497    ConfigChannel.use_knock = yylval.number;
7498   }
7499      break;
7500  
7501 <  case 658:
7501 >  case 636:
7502  
7503 < /* Line 1464 of yacc.c  */
7504 < #line 3548 "ircd_parser.y"
7503 > /* Line 1806 of yacc.c  */
7504 > #line 3297 "ircd_parser.y"
7505      {
7506    ConfigChannel.knock_delay = (yyvsp[(3) - (4)].number);
7507   }
7508      break;
7509  
7510 <  case 659:
7510 >  case 637:
7511  
7512 < /* Line 1464 of yacc.c  */
7513 < #line 3553 "ircd_parser.y"
7512 > /* Line 1806 of yacc.c  */
7513 > #line 3302 "ircd_parser.y"
7514      {
7515    ConfigChannel.knock_delay_channel = (yyvsp[(3) - (4)].number);
7516   }
7517      break;
7518  
7519 <  case 660:
7519 >  case 638:
7520  
7521 < /* Line 1464 of yacc.c  */
7522 < #line 3558 "ircd_parser.y"
7521 > /* Line 1806 of yacc.c  */
7522 > #line 3307 "ircd_parser.y"
7523      {
7524    ConfigChannel.max_chans_per_user = (yyvsp[(3) - (4)].number);
7525   }
7526      break;
7527  
7528 <  case 661:
7528 >  case 639:
7529  
7530 < /* Line 1464 of yacc.c  */
7531 < #line 3563 "ircd_parser.y"
7530 > /* Line 1806 of yacc.c  */
7531 > #line 3312 "ircd_parser.y"
7532      {
7533    ConfigChannel.quiet_on_ban = yylval.number;
7534   }
7535      break;
7536  
7537 <  case 662:
7537 >  case 640:
7538  
7539 < /* Line 1464 of yacc.c  */
7540 < #line 3568 "ircd_parser.y"
7539 > /* Line 1806 of yacc.c  */
7540 > #line 3317 "ircd_parser.y"
7541      {
7542    ConfigChannel.max_bans = (yyvsp[(3) - (4)].number);
7543   }
7544      break;
7545  
7546 <  case 663:
7546 >  case 641:
7547  
7548 < /* Line 1464 of yacc.c  */
7549 < #line 3573 "ircd_parser.y"
7548 > /* Line 1806 of yacc.c  */
7549 > #line 3322 "ircd_parser.y"
7550      {
7551    ConfigChannel.default_split_user_count = (yyvsp[(3) - (4)].number);
7552   }
7553      break;
7554  
7555 <  case 664:
7555 >  case 642:
7556  
7557 < /* Line 1464 of yacc.c  */
7558 < #line 3578 "ircd_parser.y"
7557 > /* Line 1806 of yacc.c  */
7558 > #line 3327 "ircd_parser.y"
7559      {
7560    ConfigChannel.default_split_server_count = (yyvsp[(3) - (4)].number);
7561   }
7562      break;
7563  
7564 <  case 665:
7564 >  case 643:
7565  
7566 < /* Line 1464 of yacc.c  */
7567 < #line 3583 "ircd_parser.y"
7566 > /* Line 1806 of yacc.c  */
7567 > #line 3332 "ircd_parser.y"
7568      {
7569    ConfigChannel.no_create_on_split = yylval.number;
7570   }
7571      break;
7572  
7573 <  case 666:
7573 >  case 644:
7574  
7575 < /* Line 1464 of yacc.c  */
7576 < #line 3588 "ircd_parser.y"
7575 > /* Line 1806 of yacc.c  */
7576 > #line 3337 "ircd_parser.y"
7577      {
7578    ConfigChannel.no_join_on_split = yylval.number;
7579   }
7580      break;
7581  
7582 <  case 667:
7582 >  case 645:
7583  
7584 < /* Line 1464 of yacc.c  */
7585 < #line 3593 "ircd_parser.y"
7584 > /* Line 1806 of yacc.c  */
7585 > #line 3342 "ircd_parser.y"
7586      {
7587    ConfigChannel.burst_topicwho = yylval.number;
7588   }
7589      break;
7590  
7591 <  case 668:
7591 >  case 646:
7592  
7593 < /* Line 1464 of yacc.c  */
7594 < #line 3598 "ircd_parser.y"
7593 > /* Line 1806 of yacc.c  */
7594 > #line 3347 "ircd_parser.y"
7595      {
7596    GlobalSetOptions.joinfloodcount = yylval.number;
7597   }
7598      break;
7599  
7600 <  case 669:
7600 >  case 647:
7601  
7602 < /* Line 1464 of yacc.c  */
7603 < #line 3603 "ircd_parser.y"
7602 > /* Line 1806 of yacc.c  */
7603 > #line 3352 "ircd_parser.y"
7604      {
7605    GlobalSetOptions.joinfloodtime = yylval.number;
7606   }
7607      break;
7608  
7609 <  case 681:
7609 >  case 659:
7610  
7611 < /* Line 1464 of yacc.c  */
7612 < #line 3622 "ircd_parser.y"
7611 > /* Line 1806 of yacc.c  */
7612 > #line 3371 "ircd_parser.y"
7613      {
7614    if (conf_parser_ctx.pass == 2)
7615      ConfigServerHide.flatten_links = yylval.number;
7616   }
7617      break;
7618  
7619 <  case 682:
7619 >  case 660:
7620  
7621 < /* Line 1464 of yacc.c  */
7622 < #line 3628 "ircd_parser.y"
7621 > /* Line 1806 of yacc.c  */
7622 > #line 3377 "ircd_parser.y"
7623      {
7624    if (conf_parser_ctx.pass == 2)
7625      ConfigServerHide.hide_servers = yylval.number;
7626   }
7627      break;
7628  
7629 <  case 683:
7629 >  case 661:
7630  
7631 < /* Line 1464 of yacc.c  */
7632 < #line 3634 "ircd_parser.y"
7631 > /* Line 1806 of yacc.c  */
7632 > #line 3383 "ircd_parser.y"
7633      {
7634    if (conf_parser_ctx.pass == 2)
7635    {
# Line 7996 | Line 7639 | yyreduce:
7639   }
7640      break;
7641  
7642 <  case 684:
7642 >  case 662:
7643  
7644 < /* Line 1464 of yacc.c  */
7645 < #line 3643 "ircd_parser.y"
7644 > /* Line 1806 of yacc.c  */
7645 > #line 3392 "ircd_parser.y"
7646      {
7647    if (conf_parser_ctx.pass == 2)
7648    {
# Line 8014 | Line 7657 | yyreduce:
7657   }
7658      break;
7659  
7660 <  case 685:
7660 >  case 663:
7661  
7662 < /* Line 1464 of yacc.c  */
7663 < #line 3657 "ircd_parser.y"
7662 > /* Line 1806 of yacc.c  */
7663 > #line 3406 "ircd_parser.y"
7664      {
7665    if (conf_parser_ctx.pass == 2)
7666      ConfigServerHide.hidden = yylval.number;
7667   }
7668      break;
7669  
7670 <  case 686:
7670 >  case 664:
7671  
7672 < /* Line 1464 of yacc.c  */
7673 < #line 3663 "ircd_parser.y"
7672 > /* Line 1806 of yacc.c  */
7673 > #line 3412 "ircd_parser.y"
7674      {
7675    if (conf_parser_ctx.pass == 2)
7676      ConfigServerHide.disable_hidden = yylval.number;
7677   }
7678      break;
7679  
7680 <  case 687:
7680 >  case 665:
7681  
7682 < /* Line 1464 of yacc.c  */
7683 < #line 3669 "ircd_parser.y"
7682 > /* Line 1806 of yacc.c  */
7683 > #line 3418 "ircd_parser.y"
7684      {
7685    if (conf_parser_ctx.pass == 2)
7686      ConfigServerHide.hide_server_ips = yylval.number;
# Line 8046 | Line 7689 | yyreduce:
7689  
7690  
7691  
7692 < /* Line 1464 of yacc.c  */
7693 < #line 8051 "ircd_parser.c"
7692 > /* Line 1806 of yacc.c  */
7693 > #line 7694 "ircd_parser.c"
7694        default: break;
7695      }
7696 +  /* User semantic actions sometimes alter yychar, and that requires
7697 +     that yytoken be updated with the new translation.  We take the
7698 +     approach of translating immediately before every use of yytoken.
7699 +     One alternative is translating here after every semantic action,
7700 +     but that translation would be missed if the semantic action invokes
7701 +     YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
7702 +     if it invokes YYBACKUP.  In the case of YYABORT or YYACCEPT, an
7703 +     incorrect destructor might then be invoked immediately.  In the
7704 +     case of YYERROR or YYBACKUP, subsequent parser actions might lead
7705 +     to an incorrect destructor call or verbose syntax error message
7706 +     before the lookahead is translated.  */
7707    YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
7708  
7709    YYPOPSTACK (yylen);
# Line 8077 | Line 7731 | yyreduce:
7731   | yyerrlab -- here on detecting error |
7732   `------------------------------------*/
7733   yyerrlab:
7734 +  /* Make sure we have latest lookahead translation.  See comments at
7735 +     user semantic actions for why this is necessary.  */
7736 +  yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar);
7737 +
7738    /* If not already recovering from an error, report this error.  */
7739    if (!yyerrstatus)
7740      {
# Line 8084 | Line 7742 | yyerrlab:
7742   #if ! YYERROR_VERBOSE
7743        yyerror (YY_("syntax error"));
7744   #else
7745 + # define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
7746 +                                        yyssp, yytoken)
7747        {
7748 <        YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
7749 <        if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
7750 <          {
7751 <            YYSIZE_T yyalloc = 2 * yysize;
7752 <            if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
7753 <              yyalloc = YYSTACK_ALLOC_MAXIMUM;
7754 <            if (yymsg != yymsgbuf)
7755 <              YYSTACK_FREE (yymsg);
7756 <            yymsg = (char *) YYSTACK_ALLOC (yyalloc);
7757 <            if (yymsg)
7758 <              yymsg_alloc = yyalloc;
7759 <            else
7760 <              {
7761 <                yymsg = yymsgbuf;
7762 <                yymsg_alloc = sizeof yymsgbuf;
7763 <              }
7764 <          }
7765 <
7766 <        if (0 < yysize && yysize <= yymsg_alloc)
7767 <          {
7768 <            (void) yysyntax_error (yymsg, yystate, yychar);
7769 <            yyerror (yymsg);
7770 <          }
7771 <        else
7772 <          {
8113 <            yyerror (YY_("syntax error"));
8114 <            if (yysize != 0)
8115 <              goto yyexhaustedlab;
8116 <          }
7748 >        char const *yymsgp = YY_("syntax error");
7749 >        int yysyntax_error_status;
7750 >        yysyntax_error_status = YYSYNTAX_ERROR;
7751 >        if (yysyntax_error_status == 0)
7752 >          yymsgp = yymsg;
7753 >        else if (yysyntax_error_status == 1)
7754 >          {
7755 >            if (yymsg != yymsgbuf)
7756 >              YYSTACK_FREE (yymsg);
7757 >            yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc);
7758 >            if (!yymsg)
7759 >              {
7760 >                yymsg = yymsgbuf;
7761 >                yymsg_alloc = sizeof yymsgbuf;
7762 >                yysyntax_error_status = 2;
7763 >              }
7764 >            else
7765 >              {
7766 >                yysyntax_error_status = YYSYNTAX_ERROR;
7767 >                yymsgp = yymsg;
7768 >              }
7769 >          }
7770 >        yyerror (yymsgp);
7771 >        if (yysyntax_error_status == 2)
7772 >          goto yyexhaustedlab;
7773        }
7774 + # undef YYSYNTAX_ERROR
7775   #endif
7776      }
7777  
# Line 8173 | Line 7830 | yyerrlab1:
7830    for (;;)
7831      {
7832        yyn = yypact[yystate];
7833 <      if (yyn != YYPACT_NINF)
7833 >      if (!yypact_value_is_default (yyn))
7834          {
7835            yyn += YYTERROR;
7836            if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
# Line 8232 | Line 7889 | yyexhaustedlab:
7889  
7890   yyreturn:
7891    if (yychar != YYEMPTY)
7892 <     yydestruct ("Cleanup: discarding lookahead",
7893 <                 yytoken, &yylval);
7892 >    {
7893 >      /* Make sure we have latest lookahead translation.  See comments at
7894 >         user semantic actions for why this is necessary.  */
7895 >      yytoken = YYTRANSLATE (yychar);
7896 >      yydestruct ("Cleanup: discarding lookahead",
7897 >                  yytoken, &yylval);
7898 >    }
7899    /* Do not reclaim the symbols of the rule which action triggered
7900       this YYABORT or YYACCEPT.  */
7901    YYPOPSTACK (yylen);

Diff Legend

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